From: sos AT prospect DOT com DOT ru (Sergey Okhapkin) Subject: My patches 26 May 1997 09:52:27 -0700 Approved: cygnus DOT gnu-win32 AT cygnus DOT com Distribution: cygnus Message-ID: <01BC69E4.10E4EEB0.cygnus.gnu-win32@gater.krystalbank.msk.ru> Original-To: "'Gnu-Win32'" Original-Cc: "'Geoffrey Noer'" Encoding: 36 TEXT, 34 UUENCODE, 262 UUENCODE X-MS-Attachment: time.h 0 00-00-1980 00:00 X-MS-Attachment: winsup.diff.gz 0 00-00-1980 00:00 Original-Sender: owner-gnu-win32 AT cygnus DOT com Hi! Here is the changes I've made in winsup code after B18 release. - Fixed clear screen problem on Win95, fill color now set to default console color, - Added support for invisible screen attribute, - Changed AltGr-key behavior - left alt-key produces ESC-key sequence like in B18, but right alt (AltGr)-key should produce characters according to national keyboard layout (not tested). - Interprocess signals works on Win95 too, - Implemented timer stuff - alarm(), set(get)itimer() (ITIMER_REAL only, I have no ideas how to implement ITIMER_VIRTUAL and ITIMER_PROF on win32), - Fixed problem with environment variables uppercasing. "EXPORT foo=bar" in bash produces now "foo" environment variable but not "FOO", - Added mode parameter support for open() syscall, umask() syscall implemented (NT only). - Emulation of unix rwx and "symlink" attributes with EA on NT. - Symlinks are now marked with "system" file attribute, fstat() speed improved. - sleep()/usleep() syscalls are interruptable now, - fixed return code of cwait() call, and some bugs in spawn() code, - fixed stat() of directories (incorrect number of links). To compile modified winsup sources replace file sys/time.h in newlib and cygwin installation with this one: -- Sergey Okhapkin Moscow, Russia Looking for a job. begin 600 time.h M+RH AT 5&AI2 AT I('-Y6EN9RYD:B(L(&%V86EL86)L92!F2!O M9B B8V]P>6EN9RYD:B(@2!T:&ES(&9I;&4[(&EF M(&YO="P AT 82!C;W!Y"BHJ('-H;W5L9"!B92!A=F%I;&%B;&4 AT 9G)O;2!W:&5R M92!T:&ES(&9I;&4@=V%S(&]B=&%I;F5D+B @5&AI2!N M;W0 AT 8F4@9&ES=')I8G5T960@=VET:&]U="!A('9E2!O9B!-15)#2$%.5$%"24Q)5%D@;W(@1DE43D534R!& M3U(@02!005)424-53$%2(%!54E!/4T4N"BHO"@HC:69N9&5F(%]365-?5$E- M15](7PHC:69D968 AT 7U]C<&QUPH@(&QO;F<@ M='9?F]N92![ M"B @:6YT('1Z7VUI;G5T97-W97-T.PH@(&EN="!T>E]D2AS=')U8W0@=&EM979A;" J='8L('-TF]N92 J='HI.PII;G0@'0@=F%L=64@*B\*(" @('-T8'^XH.')>6'4^4JT6_K:^OYU5?.;LV$Y5]> '__D9N*3D?.6Z? M^*. ^+<><:Z'?A 1USD/[&!"(I]9=$ZL#IA$+X*/G^ M-\?KN:,^)?\()^%F-!D"H2_?I%[TL'2Z,(SZCH^%&^E"X/%4U5<"X\M77#XV MU\G!X9=O3,2]@+?=:V 7H#4D6WR M3=<(_"L9^/_'%D*[&C>[\9U^W #^4.H5WNT<[Q]UR*5&'!#1L<'_3L3?L2F> MQ=^Q)YX]E+-O"!;9.SGNGAQUK.[>::=S;.U^.CCHG%J'QP/(O^:=X8":!@&\$=. MT4?QAS%F<&E[?9<&EI"*=CO-JE^00: @+7\4#4>1Q9$K%'\6RS*GF-G2C*HN MIQA#K/P%NA][;[;U/^!/.VLD5NTK5)OP:I.I:E]Y-21;>>_2#LH[8<]Q\!.T M>4U>;S'"L=<[410XYZ.(AO#JX.2T\_;TY-/QOK5[]*E#OJLE;Y%[Z:+3SC[O MJLO0SF #GR-A@+]4TF@,!RA%(!@O?G"])H7PW XI68?>9\72'U*/%/ 1E!XB MM8YVB E>(G7=SMZGT\.SK];.V=GIX>ZGLTZ7A#8G3&B7O2/J7427@'0(%/.1 M=3; P296!11?U9 3ZV=SI4\']LB-`'_7#^;2.UODGX\#&KGV^]1Z-"CB1\[7*74JER-J3-,MB M;7&;<)4-Q2N>CRZL80"$&Q1>S1":(*%I'^VTX_T=.OJ]K^$##,^?_NV]TB3B MR0^"Z'AI"#/ 9FS/<;^;X.U48\W$&8F*W:6>Y%3!&;CVA54D&W&!*PNF@!+O M4^.K#=%N\0(FWS,-[> B5.M[O&"+BRRRK' ^&I#M[41O?^-N6JT*?IH>2\A+ M120I2(G.' 0S.=TT0'RN7-/KWG""`VDPN]F\ M+JYQ"+4I@$6+=%^2*QMYG:6PT[)Q%NW37>>0!;D(E<#+#4MOY/2)HDF[[3H> M^,/0&D$0X K5`*VR%8S9JFD574^(5]$K6L70%R#>#-T8`1Y(O#RZJ7T^G'C) M-,#J)8*K*0L^IFA58"3.I#"H^321<]1V%1;)U989*Y-9 MJ>]1_KR0:TJF?=,#1YKX$U81706[%]%@)Z\Y>!$:QA)65H362;DI9#WMCZ#E M2*H"-NF"-40D#Q9IRW(\CBGME_$SY6Q^GW8UOZ<=36U^CW.1G?,C*##G)R&+ M*F*E7!&+?(OZ+HI8"6W2?42L-"5+I4?)4ND1LE3*E:52_+PW"D(_^.B'#L:= MRE\R&Z4KI:O$!"TM*F<,3-9LN8)66DS0[J3$_7J:)<\]A; $0EA"&C AS-*M M/=:U%=*(\!6\6* OH/%80+#6TFJ&]"*>0X=O9#C2#UJARB7 YCIVND[V6*0, M AT V1"_P.H$1U'9!# V!OLU=@HC4UTT T531 AT F77L#*[TAT--TN2&7A=_$7V9J M>$1!P!V7L?"!+/O!_E(WI/D=F!D=F$D'RW(D@%0_UUU(>\#SZPN G]#D/Y&V MS?*@:ZVZ5M<;2: P7E3>.E'ODB]#_G3^*J91^3:-60\C.GH;/VZN"SU+N&H% M%35#TL'%]@/U[=3/^<6VGE7LN_WL%P&UK[8RH3=BZ+'QSX-::7QX?-8Y[AZ> M?EP2,S)1%?+: M?GEFD0I(327*\)$@F>ZLBG7>CZA()O^ M(%Z@,2D%UU4X;."4%M; 65N;%''EM$*FCBED.JVZ1B;Q3GK\?X'FZ8:\N[BY M&CHJ,,]S1>$%1]%,HY@@IO0 AT XYM;*729?ZIK^FS/DK,H90W#U!J@'N/334LD MKPI>8:P0,JX AT 0%H5`QKI`=E"_=P/<60^1H+XO8;DIR#&G.2/I:YZI&)Q2F<) M=L.H`N6GW!3N*A+A*^HI7S'M*$H>97 (0_:SOME4K')Z&F:H`4DE.<8#>I:\ MG>:LF^;LE!F2+"8JCU/;;>K\RUOE)G(W4:;?PMWH:C=2I.:03[)_:N?6![S/ M[;Y%PYX]I%S;-ZH5K5&;VN9>MC2LI"F;1]BTY"L4?*S,/&A\/37^ZKW&?PIQ MRX)JV9*0J2=JH*&;*3W!<'Q]]#K67SM'+$(=TB BYZ[M73&:ARJ:L0AA,$Q\ M_$-^:F/@:Y84LY18V&+BTX84WV20%(TX.A\D.ON(3I^Z-*(_&1$)^HP)OP.1 M_Y&('.XE?,$@^<]!)*4"QPI*<_#XF#!D+V'(3\1#!3U/&6?@T95X= \`#WZP M"IP`I#;#T MA4K',\R6?TER[-J]*Q+9YT &J>GOPC)E$K AT ST*QH32/E#+P0E?\K:O=?49'_ M AT CK[Q:KG%ZF)?SFE^P#]^K-5:98WW3),K96DO*S$6Z AT K?!.6'0Q>#X,>'L,$ MI55D8)S2&QK RT.O3\XL9H<8\O/@`>V5.S?4B\KOZ81_Z-_N^5X$ M)(62+L)"U AT C?^R\<=0[.K)VC,^OC::?;[>R3[^3T\.V[5%FQR '^%L/-3OQ$ MU\,_S;\D+OC(5$[DN_XM#?*AD4D1<3:&T:P"OBU==7B>#=_-]0R,US>?$.>< MA,C)!3R6^TF6;E(RFQ I7ZT;\6TPJ'K1-;0YDD>\@&J6%8($N^*! A\JSQ: MUL''O1[]#8\B`Y6LOAW9OVT0F$(.IMD&\/E"?LXF6[\71+J211H_SY L?L$( MMC,,,"54K[2KM79E-JE95O[@B_S1.C',-B8UF_GDJC1UK=)4]AIY@>+(HR_I M`3ZVZ_R'LK3?8>#W:!BBE0,S`40()F422_L0SXM8#K00856VBY?NY-+I]ZDG MF=K% M.X)9%X"I]T?(3O+JX\[9NU<8@@O]:\I35G&*PUAGETY(;!>JAU -I.95.>EF M=Q2A\L9N@#($C"FFN=K$L_&0'@@']6X(\$CT#_5>@Y>&<3S/9Z.4E?2.)*+7 M]3'Y>C0&')(=LHX(U&$*#POJH] 8P&$9!\4_GKRVH0%;! M0FV_)FMK6)L,>43]`)!^ M#<@!-D#^H1\Z8X+3--20&HRNX9#V0#Y$4C$"BI1!XB9D_!.Y,/2!]"A*[H3X MF' <_L5X22?DFB50GH/5]8!/[#3E`.U>!+S'@3#I0)PX-4%RIH+>_X\E)^GE M,R,WS"O?`_K%9!XX01A)C0#4`W[ )^P`=]Z',Y*',@$2%%)W4'HS=/KHWB3/ M4) (X3PAE?Z.*JBBV:*B>H>PWBFN+UI AT LP^7-+5ZI:(<+DF?M(GSNE(\6IWA M$8?RRG'=0NJ-1KJ';_?>'>V+E!^AU86O&M%XJZWG^B&UT*RB/@_E%ISL3+:0 MKT+@,NU;Z1?9%C8^`JD86:5HQLXJ[YBS@::VHN-E#15P-O094ZO6CZVM`4:V MT@:#6[W#.:D88%P-Q4D6Z4SGDXB&UFW AT 1!$F AT 0FA6D6!.L&DUG 21O0:)B], M=S&VO%.#[U,E-R_L,_Y[%/"PR?]BVNMK7$B/KD&4_A!F@ M8&&)WI\`Y+1W!83 .19.KEW'NPJ718 XI9C]>0 AT U,@7$K&J5BLR]YW(_"7N* M.ZHDY*J0_ AT X`Z>/?QT5,OB4<5LXH>2B!Y6Z9! MX =):J?2U#@\838K\/4;,Q+<&^#;KB4TZ'X'Y#2/K MW/5[5R%!.8V+4(;(!NE:NT?ONX?_ZL#(9#-YW$JU'X'C@#_;+,F?L=>_]="# MRF%M,=W^8K8]=RGO:+^JM$3L MW19W#+W7$;E /PYM(//).;8TZG&C+4$4ELP:6KD#6X<'1\?O.>8L4VGG;>L"R0%'=,>KO\%+5:R>?"%\WGNL!\//W9RA^V> M[+W/ZN-'KGG30?H&&$VR7^1_Q_.$IYGS\*Y,Y&D9V->?2'@7+BF9G .D%+- MD7NJ.K($=76H_:62_1%U&":Z'/5X1R5F =MK!:5[<4[>I3J<8X$R;C& MK)K,XUVB*N\'BE29>:!(M9G3WP\IZ2]=C6;N-C2JFJ%79#[(_-NJ^DYXQ;36 M4M?8V 29; V3E!8LP_D2EY5$V,H(&N'F+M&'Q">=ZZ%(,TF!0T$5Y MU^*P+BQY`BJ#^.D5E>QX=E7%]+N$<"ILJM[V(.^=$MJ5A4UBZJ*0L>WC-8X; M?. DF3INC*.Q;K9Q01+/>'6#?%J(?D%(W_ AT 2XF$W+E1Q"Q)("O,ML M-=E25T.U\>YVT!M.2$$*/>]R:EG)S$8651.)62.KG"P,X_QN4Y:(W,$)W/"7 MC!CXKNO?QIQ0>LUF`4K:>P20[Y'Y-$3K2L<.*!@PZBS,C"R R3:TPQ#FGEB1 M3^='(([\Y$')0!R9<11ADB)&@SO')QV8G=^_SR[N^6U AT Q:FCZ"] #E2 5+VX M.B,?TA;Q@+Y'<7/##B8:QN]O[,#Q1R$/R/,8/DOX"2D[LX&*D\UQW!2Y".QK MOC6Y.CT?F>@(+L;G!V)-P^:?E1AM1:"2(!@W`5,W8*F!-$5<% 4<8\^]*"%K MUI +ON(GP!L.#P_MM/"\@V[*C:_E&KH'QE+O8_6>V;[]7(7_>$T^J\7%S'WB M6:O.V&4K[$=HU:5HU&5HTQE-^HS\6,6PY&J&YGQZ;?FL"E()+3]$36:>BZOA M?>4U0X97OVW=0W/2&\L;N6Z6XIRZ3SA,%JWBTO(BV>_\T\*I;O$"ZY\[1Y\Z MZ:LFD2CB(%M-KP" N AT S:+P7 V>MV'P5H-F4;30"\65V4L@/7'PXG"ZV^,'G! MO;4G(;OY%H25]\'U`)-HH:D%U)G2I@@:S.__QA,\9D/#`&P:C479<&]L9EGR MM%AE\ZR%6+8:B_(LLH?T<1S#'G(Q>Q##T"&J)0= EXS*/=BU3)3F'*.XG#GY M<)E_B.(R=5RQVJZUVD8S_PS%I?P*%M/$`XN59AN_BR7W?"?,>KV:[%:-O-"Y MP-NH71_\IGA?#/?[P+9^B\DA]P*W4N;JHWK Y AT 9,,C^8>.,$T0A=M?AK2\JQ M49)OTDR>+YEGXOW> M=5_CWYBP7HQ==D8I&?'_-2B56 AT ILZ\]-N.P+WFN:T3!BF1N.SEVGUTZO4!)= M/'/#)/I*B5?R* GZ(7R3G AT O DOT 9H9>$;"E.Q=WTG,/LPE#+9U !/ MIM&:RR;L]CF8A&E8$;3'G#!TQ_D:`F.8R \![#Q^/"&P=W$C%_9,PC?KFI'< MI)V-2[P>>4K*I^XFS=+'W($ZGI;](()$)?FTF6_&&RNX5UB?B#F9EC*E;6]3V`77SQ^#?/X'7QL:'4!E'I%WDK.$; MD9:XQ+"0O)7L AT S5 DOT 1JFTNYSF#>44U(-HOI%]I;6"N%]UG3AA*_+8F' #"V"IV))(:\V_UX.G7U1AWJ$[[D1SM*&SX%_YH%G.N4X'A$/)\MNW)%P_L*T;T^?[)4^+]`I<"%;.I52JFH@]&3A\@G#[[))4* M(1?I"N)PDZRPRKY7DWJP`D>E;AUP8UENW2RWF DOT 4 AT 4LJT!_*W M+ <38B7!GK:2N? Y*5,W6IQ).W4P\?1!=XK&E+!0(NO \[9)42YZ!2<^4;D$ M"46W!V50,;QA@['JCH+)(EA6F#R\!UAN9K/Q[/;_9L_"55^8!:$>_O#UXL/' MGZW7>_4TZU*UU<*4E6;&E%?V#*>N>G?!Z:Y6,/45100^7W@*+:80=+3@'R'D M*&P(N:%P3:JV*>%FZZ GYHE^C,T3G9XP3^*Z-Y.W#:LBS1-?94N50JGB[U"\ M9?VLE\TZ-K--PH&]015^K4K>XEL7U4[]ZE(%/=A;@Y[I-[JH[>%F:T% 5E/Y MIMIHURQ81JD10O+:\\VRC]O(&6S9ZP"3R'#!8^@90A&A2NI62FB_J[8X&5W< MABG7K7JG)GWI\QWHRY=JU1.I5\W:9;?VO_5VIW[Y5KKQ]Z/?BL=,>(2DKLE* M?O^S7?,W[ -N2:/ZMHM^>=\WN^W:1?6R4S]K/]HYR9<`<-YV;:_YF-->0SNG M;=T3CW7BD-PZAVB W4PU69SI8"H2/Z!$G6'8/75=O\SGNNT.=.5%MWZN,NK0 MO+M&M.?^OACZ(ET#\- G;B_0W%SI1#:7=M2;]J:/^\8K3>KC+?XR4X>X0?.- M,\+_V2F4*^:@FQS7T9_337_C_OC"TRE?*GGYXUS4(?D3EX34[D:D8JU()0YK M2I.;B@]LON1[0&/4)_A7I^]IW;R%\.2=F*P*PIU8/\9V8IUN=U<_3V'?CRM^ MW)+8YM4QW[,8ZKU2S#VR$^.BXY=\=]#)-6L8YD_8D UQH>SR>0M=R_(YZPJZ M&?'\T/4&M(*__E&_K+9^$D:4\/5K)\!G*%3""0`.51\,OE8#D[IG5U<_U&L8 MG*BAJ9/LS&U M"&N.G)<,L^9SH>OP> 0G>MD\33@,H*#B?B!'2F AT T"GW5=H"/KIK I-F28`.K;'2UD$/R%X5'-C;XH-&1[GT)KIFI(M6-+EC% QV AT DLRXJM@U&+SR3)U+$ M%@WH",4CORW/V%?!,[XTLQJ39T>J/::^4-/-"F\![@+TIX(:='U*)( MF&"U?VIW:A(89B-X AT 0MLN79UK"7*PW:HN MJ>^\%>DHU%^%5B./5=<=V3M_15T-_ PO=) M;.LB*;:UBW?Q AT W8AOKW+_-)1")RT"Y5"=L<67RJ'D .^OX>$DY(;,5QW`G#[ MC\$2?>ZD,QAE\..)S_^Q&XT#&63RC<.2:K7>#(='QARG-QB0K8VR=.LXD53$ M;I4AB]2TV-E7.&#,#B9L1"$K1XG;"===O_; M1=B+!,H$82%16[@-MNS>1/*:28ASFGGC.,MC!S.E.)_9W-)7'G!9J9+;P66% M AT E?*"ETV+A70&\_.GGTC) SH.MC&>Y/>:W.E&A4.;[^EVB2>'VXJ+K MRX,YRT!_%:4:?GM_?9TV7O?&ZS?S97L\NYT$5S>_!/TU.].BX>_VELOQ73"P M7_VA3GA*'R3ZDRIXQ_8 AT LDEJ]>;Q9F\B=&P2QS9MDD$6+T*[U$O3OJUVHSL* MCK<0A[AX[)6L$/B5FO/48?S:[4W<> H(!R_&/%2)B:#5=:U AT DOT E\'G1'>J:9_ MO*J?@U VO AT W7A"02Y3<56$%OM44N_ AT Q/)/WUS64 AT QT&6&J]S MU3Z.U[IV/XPY33(0.=F#/V29,5!==%.F;H)^;Z.=WR'RGYR782[TH!;<3\8W MQHDD3V#^*KV AT FS3R;$93F)J(&W*^Y&6-XY9D.-J)E\N=Q/S(:#^Q?# DA84& M@(R:,(#HZTK?**ETLW5U5FNWN]5&HUL]PY]DOC,(5FOG*LH8;9#<-&HF&5]& MY-FHI=QAUC&42[(OX?Z0]#V',7S^D<8O1I('S3'UP(A;0;S^U47RDD;3[>[[0J)X AT K6C1^J*13SBFJUJRU+C AT SO#A#W< [[7C;=%W*&1\LYR'!4W1"5[S<%ZHP:VU] M#3V_6FVF/ =6.!*3>6^ 8M\2&P32C/&ZBS-CYI1A0HGCV&&_PKS27A^#U9&J MK[]#SVMK.'AL`G4_"MR/>XO%9-SO$4)8]98410']LI%U]PI]:\.@G#<:*_+D M9K]C)'%*7A*L\8;49C$SI[6V^EW)03Q$UNQ-OM)QI-&],J]=&>0&MHY;CP=1 MMMB#*I AT 98A-)[>8_0U;'3!4LR9F Y D,ESA\=1H+7IBX6T!.3]4OW]0OZYV: M+,[E(UG5 AT Q*+!-3ZA%5"N41J)M2NU"W['7*25<70LZ"#V3GBVRK)@(W4?+SJ MXO6I%8+81FT\L-L$G8<*\CRT8W6%(RVO3J/[V2!IW6#"F_/5^@(-UVX#D=]3 MUQ?=]^U:B_Q:7E8;B8L&=Z>:'BS>_5CK=6H_A2JHB/@A)BC5(UO: <@>2X8:@!+ MK=['M(CD1-)@K[D(; H]YUX"\VKGN:Z1OP,7^3#^^6C5LW+7'FV#76#[9-UA M"22 AT 4B$K/+!9X3UF;S AT DF- AT NH9<$ H-WA*I7D[V\]P AT S1A[NJ]3=!__A%-8)'Z M=$+CM,1 AT DOT H\&IEBBH,5"H?OE&_(B'![KHHN5=YRH7H"$Y+.(%'-F!530IL/7J/I#1%/,!R?"VVF36(WFF\D`O5*C3OOF MDR AT T=-!/%(N;#B>>#GF7 AT F7R\NJZ6N]4$M*NW$3.EMCH7![:*.YXCO-E[[C@ MS (-BR DOT AT EH3AV9:>?O-$1-^C>+XGH?DV,[3JZ"X+ERX5MFE/4'^R9"VMY M98C3OQL#.1\=';DW@V$Y"H0?:/O4(("N1; M2I GI[W%TCT>%K;HO\E!#Q&16[ MRS?5+H-)T+/W[&:W(_6M)E;:-GP&L4^DU=/R'^P:Q\?'N#7]OSOY,YD_V)9$ M+[['9>\D#+D;Y0P]U$ [+T!I:5V^EZ3FVU*"HA;8:G3B? M#'C9TWNF?DY8%_=D3 "S>-(_W)^GDGI;;%(;$GNMG//*OI#P7(XW*;/YO35F MB#BOZUGW=2AW7W9(/R+\U>U]GA=O"Q[OISWCTWE-_18.20^QEO7)6!HW*%BCFGE$O: @/ M4O6O5]LL#PM/X['^"32^+[?=PU4P\2_DY%/;TOT(_4/>M( MK6X@&;>$MJ]^.8(>!!8?3:<>:0EGF^D-,#?'9/^57/?TU&"\#/KK^?(3#'M_ MLAE '9B7^BC\``-#C0/2K^-;^Q$>\6?]0&$D!WS!3H'HXVA6M9 AT C8ZWGRI7- MC6?.&:$I#EZIG#K FKNF3MTS:(LD`S?JSP;!'71*(1=_,P8FB7N+MXZ"DAP9 M)_CB13C3>;V%OFX-FDG_OA:_M:M5!BV5$;14+KN8F__"@?@O'81D;!0`8C(>@4K0V%7H>DRN@:>#P=0AC$GQ)0[#+RYL.;XF/3; M?!:H_=^HF[0]LDU.BU0H\W[@6.-158_;0^))X=10IM&DI.ECZ7 ^'()LU85A M#W[E%RBZOOURG.,>:O[9UDQF9- MKCBSVH086]LW9++X/ST0P+-X7D75,Z+)CGW)U6%NH:C.^8@)*NXP5DO MY^L[DP/UK=XSU/>:I-%K)Q4FT4L<*D['&)S:/ B_&FT:NWWC8XZJS8:"-I7U[,!ZAK3 M[ZXOSQ5?QU#EFXO5K:>NF]56]4+=-WO+'FR2#7Z;$2YU_;L;FYDBE_8R*H45]FV3*P1NE ML!!#XKTEG:5$RLW73A66&EUD1)K;2LAT!L2E7$QHRBILXJ\>(B1UZA>2)KIQ MY^)!K):C+:58&HU AT TENLD E AT G(_&N'VO:=R/UG<@>??W4>6K:(#A!).0!S$J M+[,$5SPP%Y1<9L9<=OT>WGI%& ^DX AT ZFA#<9S"=93]-ES^X'(K*Q9CT^873& M_5_/YIN9- AT HU]WI,*-"X26B;S:COX\Q=7(38'\:322)Y3H>>;FV='ZTGP@# M'-5&ZT)RP$.FXBEB#?H/.R<*O[_M'J_6G M"?>S39HLAC.][J#>'RI&%$[&K$5AQO[-V63%;EV<`OHWD#4A?52'/:PW(U.T M#>IWYH.-N=VBU[#)&>O$\*,S\HT23[]98J!YM.L/K2!%&U:_702SS26[8DAX M2Z.A7]LQ$SU+^BW3MY0Y_>*^GXECO!GJ;J^3SWHS1($LS:C($>&[Y0CO:;,^ M`:8W(\NX"=>:VPZ@1CVQV_O< M9=Q73^MNT]MM7!1YONBM;#*?+R(39H3@<8R:8H 2+Z:X2D36-HHDC[M&I_6^ M%N>8\_$*1+C^2)8165F4Q&;#ZR->AT[MJH-_20IS3/KMGB^@0@?B;IF1/]98 M(LI";!>,;W3.5\Q4&HUF840P5XCCC^M*[:4YKR9JM^1582 M[^IOWX%0(SB%P+9I7Z0X6![=!DF%YB,Y( +&8$>E'H\^'Q.-7\ZPJ/]$I+CAJ_#M)-]"6*C!H-'5)KBGH5VB*Y M(A!;5_U)`3*SRT;L"29BCTB=+JT/R7R/:;>&\97D_"T\G\C7<(!E`?8O8>XO MSD/[":R:WML]A^B3P]=1_A*S(S'/)I8I*E,_N$SLCBM"6)QC+E7RV;R.91R^ M$HO4CO;!XTOGRRU-A.?G8;['6-$Q=3E(,@T*35WL.3S*H;/@?NWAE=V:*Z7_ M6>Y."U:$C12S92S/XJ='\<;J.D^3\[B#:5Y'#JN[,[A%K+;0R AT VSITYY DOT QFC M^A&#,:.8$1H@>DY2)-&+B-,!5)#&K1)CF7,%-"TK9BO97:"'LEV+% C M$&PLF))Q<[=M0,C3]:2P>U M#Q+=OKFEX=N696\\P5 AT OP"E'R:YCLCDOEQ6N8YBF5:#!7 AT RE1Z@5`NY-AP"[ M+7I+'5;&=3$Z6FKHWFDJY:8;T7A/@@+)D16L8)]6UF# TX<`?!X9'.!T?@>T M##84O0VM>07:RYK/G%I/XD2/.A.6_J MLK];"3]BF->J(D__4QV5R"FYLI?+B]F9R^#9;!:SY=;`(S%G.\5