Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sun-barr!newstop!grapevine!panarthea.ebay.sun.com From: koreth@panarthea.ebay.sun.com (Steven Grimm) Newsgroups: comp.sources.atari.st Subject: v04i001: mint06s -- UNIXlike multitasking system part01/11 Keywords: zoo, uue, C Message-ID: <347@grapevine.EBay.Sun.COM> Date: 21 Sep 90 16:42:20 GMT Sender: news@grapevine.EBay.Sun.COM Reply-To: ersmith@uwovax.uwo.ca (Eric R. Smith) Lines: 532 Approved: koreth@panarthea.ebay.sun.com Submitted-by: ersmith@uwovax.uwo.ca (Eric R. Smith) Posting-number: Volume 4, Issue 1 Archive-name: mint06s/part01 This is the source code for MiNT, a multitasking extension to TOS (the binaries are being posted to comp.binaries.atari.st). MiNT provides a number of facilities that are limited or lacking in other multitasking environments for the ST, including: pipes, named fifo's, pseudo-ttys, signals, job control, resource limits, terminal modes, process priorities, user and group id's, and a convenient means of accessing devices, processes, and pipes through the filesystem. Included is the complete source code for MiNT, its documentation, and the source code for a number of sample MiNT utilities including two (primitive) window managers, a print spooler, and a simple shell. I used the gcc to compile it, but it should be easily ported to other compilers. (Indeed, an earlier version compiled with sozobon, but I was unable to test it because I had the older, buggy sozobon assembler). The file "internal.doc" contains some helpful suggestions for those interested in porting to another compiler. Comments, suggestions, and bugfixes are welcome. My address is given below. -- Eric R. Smith email: Dept. of Mathematics ersmith@uwovax.uwo.ca University of Western Ontario ersmith@uwovax.bitnet London, Ont. Canada N6A 5B7 ph: (519) 661-3638 ========================= cut here =========================== table !"#$%&'()*+,-./0123456789:;<=>? @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ begin 644 mint06s.zoo M6D]/(#(N,# @07)C:&EV92X: #8ZY22:C39H@WI@Au MV_8@G:%BZF"\Z>+H48$$0>1M4F0*B"M)J""1*&3*$R95J!1ADB7AD\]!I$@)t M0C +"]=2/B=AP@1$$A!"BH!@DB2($";"C3S)33O+42)!F@0YTMFWDR%59!V81%&&G'D$4@.>5:&3&6X009)6R5!QU%JN800'6^ <,=.:X 01QT9 75'p M&6()Z14(;>0!@EITU '';9$Q]%@9)AG$T!U/CA&&9(>!0*"71[41AI09]H1&o MEW.! (<<;YQ14AL(_5:'6HR=85$8D:L:>6(X1L+F0J'l MDSY1-%!!830YUU$8M=$KAI*Y6:.F:O*:*JP\B1'&&&M8B9!B()0!8AX^O3AEk MD/JNF\9BZ(+%1!Z7^>N1M9K\-Z<8)#)VA(;IR-.J6j MJ$\L-MC$:MV6QQMUI+DK4&B]"BB&\]8+QX_8FMD""&32<(;E ;J@@>9<2T'$X7BQ;6<=T8*I!3"J7Eh M3SRNU%(;.X# =;!+-_TTA7'6%2)#5=L9*UG 8BBEB2B6*B9.&1X5-$]FA&''g M3DE.^9-86RG4TJ,,'?'G2^TZ>B%UX8DIUFU2>PG"X1B6\:M:H6XD=]=U@_UTf MHE(.##3+)XPM![#!HF1BL6:TQ!/HF[K.$J"@%BTA4'-[;3?FIT]MZ9-QSN&Ve M2Q6:JI89%J4NYJFF%X;6&'0(RJ.5<.Q$!T)PI#'2'%C6;"?+I58]1EIJP0]Ud MJ&J\(4;T2J,3&^(&K,!4*6LM$92O%)"1@QD)29>#%;TJAI.%_(1Q7*H26A""c M@C*XX Q; 1,;R" F.81J1G @E8C<0#3?F"%AYKJ)DE@V0A"P(0WN0EL:VE"Ub M3F7D-G"XRT: TJ8HN:H.GPH!A);'LS>,H0[F4II)RD0ABR'-(TOKV1A$ )8Ia M05%-YL[W LG9!A*I["01@6L<6=BL E";F2'-"!2y M;(NL55K2H,AB(:21CAI1)-/0*2M4\I)DNP.&-,DS?7G248%)6V'<0#HZ]$PRx MO;R1'.1P&S>>JIAI*,P"$P""9@XF@&\0B[^$E[1P%:YU6+/(6#AYRT#*R7V>w M*U76S!4J(R1!.0?SYLW*4(>><8@.>4BG)<]4&NZP) \/J\D9LL8&A,US9_W[v MWS,?$TUOJLD-4JI"L/#0@ANZRWHLP9[H^GG-?+GA36ZX7Q37UQ. X<$Q+U)Cu M,QORD-.%JY_>G /ZU'>6QHQO,A5B8&+J@*&]X0!K/EA$XO*0Q']G>4.4*5!@;!R7>:s MH+_2941R- S5I(HT(E)):0KK\0U#>N8HC;C+2L7*21C2((>CQ(I^#,&7N=P8r M1E%535YWE)(,8 "#)22&)U)K5>F"=H(F.91)4KH#J1ARH1C @ 95VB KK@5 3:J>T&L&46VA0UVKE1"N_PII: Z':Y0IT.>4BG3O4+n M(1!]VU:00))%CDUJYB+7A#[RH_XNU2*A:E.P[H>E=/FD2RC()7]-$C">H&4Cm M-VE5$BH[EL.&(;%'<4.V/,99.@$KOY5$00Q:==LA0.$%28#"4>7P7WQ!&"A2l MDP-#4.#BQ()@"4'(012BA^'4%8L,88!#48%TE)$6BR%"]% /DPF4*1 '"BD k MHL0L]"]Z?>R&8BA)8??D+W.B$V=='NE@VJ"B#9,8N&A2 IDT*JI45I2&%IR*)],R%P<]h M",*>>"0/*FI=J5S2/K3LNK]Y;F:G:WA93*,V)(Z]5'#M_ 0'YC+(0S@*"FC g M8V\ME(XIQ$@I49E@[*&@=+_KVYT0(U2&0MJL4A\S*)Q@8<@@^H&Z;=!NZ?;112BY$4> =*5\e M?7 K%_J=J0D%@B.XI&OJOD')B=VB/X+DNA+4KM*X.[PB-&$K$J(0QB'=I@L9d MFD1+I=0"O9PEX:9O)A@)EYS6I!@S6&AL=LK@5H2PD8H%%BV-+]"VD3PC!:$CKQAC2IC>9$$7Da M:ZY8\D ZC]ROX+P&):,P?2$RRG(C:FF#(AFG\ IWJ>%D0]48,'J&%X&%#+L\z M ]Q=LA,I5:TEY"L3V@8YA_Q=N(:M!Y0P.\R04W&/#<^/?L$[J6390XGZA45^y M^$V(>9;8A0WDSQ=;<$)8H)C?(CFR&$'31 7W0W(29E3S1FL#%(5A!E[W6$=5x M*G/Q$FAC+DID-$ST3(4!4Z?475KU&*1$)FWU8",A%JC",@QA,7FC<'(S&$SQw M(B*P Q)&(?KV-Q1B!FA1!J>6?V=%(2H@8W2P*#=U1Y[41&KB$0$(8!FG-.2Bv M7XX!&9(!%+\C;GFU9^8B!V.0!EI7-610!^2C9I8&% ,U+PRQ,&>R8FUP/H\Fu MAJ02=45R9/V"$BB8A .X9_ZW+52X0STD=!QE+*-5!R!1%WB 2VSW+6 X1+IBt M%^I"@4&R,,;R MV5/AXR@4I5!6K!=T4#!0C81(<"A(NR?*3B,<+E>"."*\*'s M>9!GB!#X@5!X.6[4@&G0%D?A@K%H>3:">7$R3E+X+:(R4:8C HUR!TE#!R)Pr M&]TE J0E/,4(@2/F7R2A>0J0,1I7@2_C16,S>4+R$S@Q$DOQ,!K!!D7R8B@Hq M-[]#BCB!!RZ0!\5(7_LB0P[TC3Y7+(;G889"=PL3AR"D6[Q((4 H.82R@_\"p M8+D#%/WH/S>$7TIUB:'BB @%)3)4.R^D ,(/JJ%!&^P)"!R&[8S@)=5:J5Ro M(UEX(U[B0)/2+1Z*D9:B2n M4Z>27PF7-1F%:]RC9!?DADTEC6()V]1(^JG )$1B&DPB!92m M*GI88'R($!02+J5S(1NF)&N2D*DG2XM3+' P)\>EA3#E5Q(8)).S+B=?AR!MBRD#Q'72@Ak M-8U&<[D4)W!54:WE,NX2E52;Q$VJ"$6. $+_I923A22XPi M![N)!D!0!T/B F)R% IUFJ(G;/AR!9]"$CCQ!%(T%$'23"1!G5YQG4."+.B8h M273 =T?!!(1Q$[=AGH@W!*1251?B!#8P$34@!#=P%'" !A&! C4@%:UB S80g M RTP S8P SAP% $!W*?$_0(!NQ( /L, O%>B;\)0]"0 P 4 $ f M !C;W!Y:6YG "@ 01, 0"DC* FZ1Q0@5$e MFCD@G+RA X+*DRDZ0 0!T:0.&SIIZ(29LR:-FS,@GL I(R<,QH\@IN290Z=,d M&Q!%\+1T,R?-&S<@S+R1 X(.FC(2-'0WB-%OSI1\>? Xz MFS!CV@IVP\(@\-QY/C?GZQ>P09QEO"J>\Z:.G.B"Y1P5XS&,G,(Z^\[9:F0Gy M"/9NW!<>/C=-W;O4@1"&6+\%!P(9;XQ11QMEN*$1@""4@4=T<-!QE @>M21'x M?FRX@. 8(M!6AV]B .71&&S4D9A;(-3'$WGFH13v M<_[46WW&DF<;0u M=B1U)]U@A47FDX$2CI860G<,]5>#>R5Z4$UXY6A<&':AL5-U$E)XJ&Z,Z?18t M9"B-L5%:FBD @FMA? :%IG-PBE-S/Z$E1F'*Y>;=H'<61,=L4@)JUZ(X4=8&s M@^>E,>!1LU9[GT5FGG3?&^Z1@5!N@87&AD= J26''6E$-T=U'D4HWHOEG0>4r M??CIUUA?+%!K+:%OH-MFF 92AMAE=!;8V6?NG5D&'38BEI-YN_&$G+]MZ6LMq MP+*!,,=(8T@[UAAHN'<&4"BDX4(96Y681V4&RM;7@" ([$898T!H1AEI::>7p MK/N:B:YT@R)XAQML<$LD2,7FR3,*8MB*JZYY@=!K&;^"$&R2@1$[D+'("B<7o MC

"4<=8HP[AL75(MA&&.U2)A;-$ ZWQAPB5#=''2 +^"U:&CL66-4CDG0"n M0LJ5!\>WB*$]:]7D,1CS&VW D5L::54W<1K_ALR0"C<:":.\CR@-NE"O!QXTMYO&N6UFS9B]KGIS9N:Z6&X@D!!#5>U6X<(46YEQF+=7+G2;k MYO>U]UX+C$:OFIP [KQO@<2W.R9"\7E)PF*SD.-HZE*!69]B_A>SYP1.:9R9j MP6>:\ ;+F$8ZE($#Y>H$'.*A*4J\,9-["$,;]ZQ!.LJ[&\BV,@6\H8$V%4S#i M!W)N8D#68Z4%K&0!?)!"QD'TE+"45W+(IL#8(*N$(0I."$)#CA"!&A AJVg M0YI@O01!8FP<4-CR'A 4[0Y^+ -;QC*FCR"DC"LSS^,BMRPY*(UX=]C)].Y0f M!@+AI0V%61O(R/4Z$"2A)W* $FWV8Y(P]&0V&=F*$.Q2G)\$Z)-K.R%JSF 1e M]]P'.FNHP^'L-AM!-L@Z I+:3NB2Q;J I%W$"]-1/ADRMKCA! S1R?I D(>%d M@7(C/T$()J76K0,-A2W5^60DG\F0HJE%1"L$01;*,862)5Z\YX%*>4HSXLF3((BD16BH@.C( 7A$*PQ:G&6ZP*"%b MEE^ZY1AR>3@W82="SJ0#&HDWA"( 5D;V-S w M 0"DC* G3RA4D2'01!TT*29 \),&C9E0"P$X>8-'1!AW( 0\<:,v MPS%IPK 1 0).&#D7.R)$$[%)&B=40)!92$=.&C%UZ*1YXX9% P49R5 L4T9Hu MQ8MB(J9Q,X9-'3)%0=Q)DQ!$&:HLY8"8\Z:.G#$1WV@5L_1D'A!VRLB9L],-t M0Y4N8;KXB2)+5Q!C,LI\LY5O&C,@\MQEDV9-&18@5([INK:,BQ0_(RN@HM#-s M&89T^)+ARY6G#LE+Z90Y(R>,Z*UISK@1R7!JU801Y] )>E)H&3Q@X>CDR1"%r MXS,N0* )DQ8C")P,U'DB50<<=1&DTDT=JE>$&'3_!H1Y[[L%7QAR(o MI>&"8\:=8:)::8S1T$,OYB';=U(I- 8:>.F55&)IR6$35!J%,<=/YH$UQQQFn MS84=4,=Y*)I6:[0A$AMOC/'"&F9P5X9D/:2IYIILMNGFFW#&*2>;DE'V($*:m M\55&6B?6\64>GUU9AWIRM+"4;%^&(09$.S(ZAX^BM?'DE6FT 0=$WIVXU1UAl MP %'@ QJ-:A:)2TGI7J3-E=&"R>59EE$1B3!1!%39#'%5C75,08=7D64V59Uk M>"K614X8<6M0J+7QT$D@5.%&&G@TVN./DOJD@&M$YL6&?:'B:AIBA+FQ!F(>j MCF'E3PY!M)I^-64T!QNFM85GE@6>N-RV48EQUF9>+K4#1O;Q!<=R=J2QX*-Mi MB/$&86/\%.X:#"$+IF72KOOBO)E1.(<+8R!67=D!DMU 9=7SK(D'9=L2'4&7XUN5$5.I#T7AIII7 NELJ>F"''*YE6ZAL%g M0Q7Q4'<@YBRT+4084;K31@H""A.?05$8WL%8I'K9I?;L1QG102X=YJ8@%5;2f M)G:'>6MAY(9088QQ:DEJ*3ME6ZDJP-VE?4=4L[;<_DK%$U,@AFS-H2D7[$7+e MY;34BXAQU?1%<<6TT$\@V^A&'9N#<#B\8&5ZD1D-/C[%3P$!W*?$_0(!LAD d M )86 Q%:%4G_UR! ' , $ !P6:PL=),.A"%0@PI[&0&>/&!( =Ht M._4D1AEF4#42AY#5Q%. ;\#D!H$VP5%&&1;5 0=;9>#14WQT[-43:&2(1B45s M0LI09!I'YI'DDLU=:89';< (&0@H/!EECGBZ@=-:<*5@94]WJ(@0=KW-R!=1r M(%3:) AG;"8&0G:!($02<@D!44E\H5"D'?FU%=T@0H6FF@]11));q M/ZGE%Z66/JDDF%RE"B9;;F%4T1MW#*4 %'ZQZ@9=88$ (*06#5DD8[[>-H>#p M1X;!D4>V,21I3W0B60=)9: :71TH$66L@,:N-8=K?;6!$ H^KC%2&VG25NF!2$DX)8]E=63NE89*M)^n M.,T5E4QIM$ '9VL!@ 0 j M &UI;G1B:6YD+F@ / !#JA@ %9&]C

D,>.&i M3!DS(+XT2>*$BA"&1+X@::!@A$$S:=R42;BPX4,G$224.9-F#ITR>/Ff M# BY=.R$@;FQ:)@Y;8JB$$$&AH@4.]B^33 'S1LY=!*& =$#!(K*E^FD0!$&e MC&!M9,L4$K%F?=GO(<(*CP G-P=2C"&2&ZD4)7(H"(a MPA>E\>CC%[4)&2)OLXV'(@@9N4@'C#'.B!J'&38F H]DQ'!EE3)L*4(8CO$8z MAI9B=JEDBB^](888>)5!QE]SP2CCE'#9IMUQ(PY61QG%;:A 'RD$55%3&H&@y MX%157<7&5EU]!4)M=RJ@UG(TQC5777?E%1N<@>E9&)#/?;&8E7;221EPF0'Ix M6VZBD59JI9NVYEMLPM76YUG'C4?I9,XE]D5TTU5W779^)L!=?N_%UQ]]Z 6(w M'USZA2???\TBB"R!_1E8K8#Y'::;;XIu MUQERSCC9J[C"U>Z>MW8,J* CE,'&'&603.A342%J%;YEG5%&&V34A"]3!SEEt M:,M46;4H5Z7%/'/-FC/5S$:= (RTVPS5UXM;5'3+$L%s M==1 LP!IU40;[6AM.&/D-,^)8J55V&&-1?705S?:%0JTA@7"6&GK_'3;/]O]r M*%EDU^W5W7EKO?+.7LO;_>*E/SH@T'\)n M"-_XDF<# Z(J?0DLW?1D1H; ?AN9@AO2, ;?&80-=)C:Z_['Q:@-T%'QB^$9k MTUC#Q4&!@[MC719-V,8)P@!M&BS4'2@()QG&B4W.O.?P"S@.EM%S%MJf M\PQBV,L8]MF&PZRAE[ [X3G)%X,*>J8.;FBG1MY$*QEZM)XZNZ@F.SH'CK[4e MH/\<:0QBP,*3IG2;;M(+^UQ:4Y@*L@YSD .)2/.^AT)-IS$X(MZ&ZC[9M+)Fd M'A=.4.G@4![2S9S_"QX;1?)D+(QIU_E;&YG6UR%$I(-:6C#%1O:%1(9]KA?@RH/z MXTA1QP[5NDN[)14&X[XV?*8,'w M #=1 0 &UI;G0N9&]C &@ / !"J@P %9&]C

B$F;,FC9LSu M()[ *2,G#,:/(*;DF4.G3!L01?"T=#,GS1LW(,R\D0."#IHR$C7*29.22@,%t M1X>\@9-GZ!DT#&/DR $#YM Q(*2X2-DF(YJM0=BP >$4*D(Y9>:0M%.&S-8Is M98#Z!&HF#1N@0YY R9+$R9&C.GF.N4DFHTV:(-Z8(=OV()VA8NI@O.GBZ-$Kr M0:0XZ7LD(A4T!T' D?/F3,F79-ZD!3'G31N@;.7D <'FS1W:9=B.]>GQ#$(Zq M;T#D>5-'L&LXDDE65B"0((@[.]<@O%-&;&*<;6:W"3,&M)LR+$"$<4,&1)*>p M2324>=AT88;+EQ D,ZU4&><&4P]-A&/R'4n MWHARE$?&4&SM]]Q-)]+VAEKLU='=5ED0=X)81XW(EGSNE3%&&F30M9-PQ,FAm M%AL2BD&=!91,918Y"DD4=LS(;68&V\MB* A)Hl M((((;3C>; ZZ0<=R1Y4)0EY-%#$%"%$T](P6@23#!A'@A"% $"$TD$(003KAI1JD1.9'$4$4$T$<01BIKGj MQ!!52"%%$42 8(043S31$!*N5C&%JT\889Z9($CK:A$$)7%LIA(5E,43Q89Ti MA1-9)3'%$B&T:YD"20A*&AE"3N;&NX:&-EZ#,CU8TTV)+8;">.4%2D<=88B5h MAXX4CA1>?&C!P09W+CV(XDXI-/30$>CW06+f MT,<%BA$G"$1?S%//(+30@GA(A\92&&> 5VB'!JV,D76QS>81G1*W")3-FA=%T>&^S44=A'QT%;!-@_?83UJH#-4<8*X7Gc M$W%/18UV:%EK/,6"\S$TQG@]8L[O2&.T5!YP1STNGG6FBT9:ZJLGQE.@UX]%b MG5@M8*YD6\9K7]II.C?T$UKBP4\'=&Q./(=:""EFD!MPFY2&&'8QS&H8YQ/Ca M121#"+&9&297G+34IPZ^B1]05)2:.HA!>G$ZRFC28K$=&(1GQ,F)1_SFAMG$z M;2-Y@\-.D.82)KUF*Y\AR=S@ES &M>8U@&$@6O*W&$-]B"';F!\\(;RB"P,X<'<$(%DJ.6)!2&F>]B*&*2D+V7Q.]3A26S^=2\%Z"][C+-.u M*17&FI&@CSV=YB@ RV*4. (<.&R.DW3TWA_3\)3,W21.&9N2&.2Dr M(C9+%B#X!,.V,$D_NP#OVK*0Z9DA<$D#H,^0PI*%^@NA =J83!#.J4F0I?6K2V'1.6*#!75NWTG-G4]"!I20"0C60>0;1R;'!BB302=o M;' FJ4X>/!@I4=9L30=G:X(+1G$$$&0O-QT+6-Z;2%)2B*8X*U9(X0R6,n MIRM!SQI_$QSKQ:>LF'5#[LHC H_0Q[-DS"I0QE SWAB!A+M9(FLl M^8E8PC,E%$0(!-HD'G7ST"(M8F1)SGV0) ORN#FDX"B;[:Pi M'UH>W#;MR9!4VNUB#,:#[5!S96HMVM([-XX\,SBC%9EXT$.Q)UJXN!:[&LFD24LLZ6;=@?I!GPQ-EQOXG+]ME*3?F5YP@NQ*G$3IT5^RIP(R@YQ'1#-8Y*QU(8^=24/D*Q/0943DR9V70P1'0Q#2*)%T=4!0%13\d M6+c M#M7>2KNA'6\'C071_,;XFE_S[[(=A>!A91z MZ)H'LV&*)FX*WDS,7'CBG]A*D3&#.8-+]8"^E0[X@VC]6).CFYHO)>$%G/+(y M440PF#?XAPQD]%R4=' 4+PQA@Q"#IBG5J3ILGA4=%=[O?4/_YM.U&*7TD^w M4K%^,VEY=( N?8Z2 (7$\8<@,'U/PN ?A)3!# N,GD'JU)C(7LW$/"E3> *\v M:!#@WWCDUU "MW[MUR#PYR0,@7+.QV1I<19/0P;YLU-#T1)XI@!>P 41H18Ku M$A]14 6.PAK(MGMM=%O/UX >1'RF-!M9M#NOT2!WDA8QXU"F=VU!@WQ(]70(t MLWTM<6;+QU;QD3U6MCD#R%?0$R$I4WOL0WY#4S04$E2U 447I:D('J,1(KDD7$)0?&55$,>#_O$D- 4G@(D1H@H )9HP+6MR1_8H#Qr MQQ (WD-&'"0Q6=G)0(E<0>AUTIFHP L UU_TQC+58'O @5J\3K!000S-@?Wq M5!!YMQHOEA/L!Q0B4!@<(6-'EQ8BX$'W!88W,1,BIS]0!!0W\HF2B$KP0T72p M$QYV," VH1Z 4Q?31T:'%U5WX :?Q$&W:!>@*$%80UW?T62T>$K+5$9I08/Lo MT5,1LT,6(WCODQABH 8(N#(MXU!S1EQ\>&?>4SUZI("W8U5(l MB%GJ43/*DI#U\R.K,6K5%QHD@4)ND1#XEH+A\8Y $06W9QW.XQ(LMC 8@FT-k MU6-)TF%/Y1+Y R$)^!,XT3,G #\2QI+MF!JWL1VZ539R$!XAUTRL=!==B5$9j ME@9=,3'J=EDO@7Y$A! (:2L1*!J-F!HM@$ZQ%1C=5"Q!L))!:VT8I<,X);U(#8h M!"114IFKX5VN<7O0E))-LQ5&,"4DHSIQLR D4C/%% 13, 1)-A;,Z4I$A1XJe M&!R[LR3/.0<;9$EWU5]M])LZ$)S#&0+FI57MQ(Y?,IHILW/R&&034X]' 0(8d M*IQ.$!',*0<7BJ$"A041$09U@ #M'^@9\\P)S\&MN$ +'QZ-40 59D(&YXU!#a M!C)E(*-&0 0PX(]2BB+":'WD<2'U-C;DD:0>851KBJ%W&@-ZNIC'-9!^2@87z M@FA>I1B.)(1F&:J=$( .+.H:].2)_"A0X-ZD$DZ2OAS$R"@5(\*:; P=Hy ML!)\.1;_V!IWD3%9-*9E>J9H\2 RV@3D,BT1D46>0T0RZ@15D"HCBC46,180x M"E8HH$3^D2TNA0=.!P(O,)HO4#EB<7P+JHEWB@=DY*B@"JD2.D%J49^FU76Pw M Q*7QREH41C*=1A,Z17+7@59THI7EH43?X4%Xv M^9IM$)N0US,G-Q[)*7NLL8TDN#Z8Y2<361T> 9'O IA (:(1 8N^A%H\"0*0u M!H_[$QC;82_BH278%H9C*&=X0&=\MF1-UHP3:XB(V2+5.!=Y,)7_T5*]$1ZEt M1 9$.24\91@4ADW)I3Y-=D4N<).5;-Y!CU(.W)+ 5PIB$,6YEV#XHL 2-$VW#TR<+^R,Ur M060[(#1[BQ+Y14YW5""N%"5A,(7J^$4824;*!TC_NAK0JHE]X2B"! ,Q$(KUq M&AJO,1ZVPTT+.'F5&UTBD+E40$8HL$$LLQU6,QNR1*) ;F H[HN()Q' %JD1FU."YII$+5;$1IS! )%XC/Y9%RY8[-YB! ?MAXBMK8_o M,7 R=)CAH6)E$'OH-XESZT[775:_A@18OC("Yh MZWC&:Q)J%!EQ!$ 8YT&>LQZ #(R'5SPA$[@7LKMHM5%KT%$/8S]Y)N 4! @0(DLT1DX(QP($7'16*Bd MU"-+>!O\)843#0,6G0!+@Z4;266,41-1(B@3+0,T8,Z(# Q=D!# E*Z(_.18:Z#>\=P27(@7.$M0B^)@6-K< 6K>QHP#>O'^)b MJ7PHR$P[%(-9Q4W>C#>^=*7.+#UG4H/ZY3& ^S\7TD91#\.]"[F)Q?VFB -29<\&8\PME_]=4?C,Q:Nz MESK]9(7P9![%%-*+E3)Y4F% 5)5(EL7BJ&(DM2Z<@ 4P-)F=y MU-2#"R]Q^" ]HD;H U(RP)I]>B4(N!,RTE/%X[K3F(J>B+(;$<x MX53(3 =Y U0+!t MT1\0N27/&*U%WN1PT*V ^55/N62048M$;&C:F206JGRA.RAFTH,*[3US64NL"6(0'J\H,>FE:JEW7H/Gm M'EIC3"$7HJMQX8OO?C"S]$h MI&QY^48N)<)X,S^G'\I,%$.>-B88Z]TC$5WL&UL;PL&R@9XKB1*WQ?K[4TF7g M)"$](90[@:*B&&)LP" DK9X^W(*#3G_S"@+H1JEM:*U,@*/>8(EB\06!8Z%Q=UZ R13 +6&]?61P3-#d M+AM[2&2,P9)4+2.6UJX>VH(<&2MMX(>_MI$2QT2H"2Q.$R&_,D!&@I!H@7DBc M0_=9C_F!9OX;84)G@B).Y)60=C\>U)@X)]1!P,R%EW#\5*#[T!UY "#A 1V(b M?(8@PAL#;8 ,(!HT2 8ZC0)P+GPMNI2!?36+[H*CPVI X=NE@3'(>=(@HN$#a M>"0-R@#$@9/.C[VZ+VP0T4P)-N@&J51 BA\!HG PL@*82$",Q&ID0[ (JB5_z M13-NXK 4P!M9y M#P\BC\"D-$>PU-U"6@@XZWXM+YRPXU3'-5,H+L@.? &6D 5C+(38 8D!QQ >-EA()T 3Z,:8 V#w M:T%_P]N!NX%%,,C/^>L:X3 X ,)R&#%\RD B2_Z'GH"$.:;]1M)L^(?(YQZ"v M0QB7\#Z,&U@#",L<^L,^Q0,<(D0D"R_!(KX+8C>DC%U02W;1X7DHD2=!!R .u M.#$4RH=J#)FK43R^0X:K4PJ@?)&$+ 4X,N'N(QC%2]<\H*86$"&>M-J#Q0CCt M 8S H$%8G\%B(BA ':6\TG?B3AZ=^"8%Q+6*\),$$QL. G"8(Y^s MARN9&JJL)A$9LU-]*A$YF7EFX"C8.]^"$AJ@.ND)T('PG97_I[&^0WU3 O?Nr M4"B]=C*)2%G,2E%_0W\,$WD% UR #<@8+(.GK1#KE1>IU-+[1>E'"W05Q]A.q M6H 6R!B%)]MP&[6@^UC&!(1JW@PRIK5'PN[RAI3Q&WMC0]R7&^1J6(AXX&FDp MP=9$%A"D>]C @EN*,#$(.;L)Y^1""U@$&4GPY&TXK'80+E,$"X,:80R&!O)3o M#A&>-VL!E>OD/+R:R-^@8^X(+NXGNXF^4&80KE_DX6^>[JFTHM-E; ["^^(On M!$ZC>"2F)K)0@GJ32 G&?\V *314ON/=>E@(H7CLM)ZF2QH$SULKUH')A*'Em M$$/@!PAC$/%A$U4'WM$6B%,7>A#EH?"$!R\@*JA>)G(_!TC^#"""$\>X(RS3l M= EPUXV?>]0$8&!K<%6.@2_UDZ.GI)8>)GH22H0":48'IW-\6D(I=M8NCL$/k MV?OPD"C@T (D'T;XD?L1?9BD,C ;/B0)U'4[$9AEi MD:U'$Y'6 F02(_(SJ(?PP#6BEUN)#[4!)<"-/I4E#YR[^V@R[;[TL_^(4;;(h M=9)IS,R[B26P$9)((:.[DUG/U^PJ_5!]E _86PH]K;Y! ;6$I4#"D"0([V(Bg MI#^R,GIB4[M!:RTD5]2!N[ V7 .P-_S"%-B, *,J84YK 2-NQV@X2F\ '9T_V2DU"2;W.DFZ#O>EZX,y M#H)C8DP=NNEA!H0S*A UX4=FA&H%*!U#P)B,K(1FRB*F23K$6W(I1_ R;3(Rx M'MA/' _CI#>4)4=%)_R !UDF3Q V6]+NC;,:$ 8*X^-9?F=G;(3);J(R&R?Yw MLR-5BQQAE,4 A!H.30D.0")V5D[>:(CW! PH+SDECB L;L6W%O25RP*/?B@)JP; /ZK_G8JP'4T5B"u M-*& ^0=MM*ZP6!)BUW488^"$:("@[/-^ZM <4%/+ 0JX)^]&!E! 2N$)*F&-t MN!,'2HQ622L9:)),9?01NE(\-.8G0FUJ(7[>0^4#<]@ T6H1Q8'VM 7M3D\s M0AV$$CE!142/PY 5G897Y&'K3@%P(DLRBP!2V3AYWL;+P(;@R<0T1RX1*F&A@0H8=G7= C^'Y>3UL0*M@RK2D%O=3[GAG#5!S.p MP2R"@%:CLLI1=!J-KH'WJ4AYA0*2 !18/1DH!)V_\% 7=,(4TROEH6Y(D?+@o M_-#>L).DUFPC@E)BI"][BO[(&A%"DT@_[GC>,ETLA(Q0@/FP@=8%)18$27EOn M[_/)6(?OQQDM)H2DC30QB_($$9![RIQ]G#Q6R)M=$=["0 FAXT,OI@1]B(!8m MVCC(B!^CHDVBO<0@#PHP-I@3L6KW\""PSNS'--J:3PR-Y@'[U4#!PD:" Q12l MFN!4IJ4&ZE4%EU9#R2?=[G8P(DG:<\X )96AB#&7NAPF,2"VSP]M(^<#,,A0k MEO5%9"@9<3EJL@#&4V)*4K CXBD#GZCQ+09OPS^B"PQ ;<6DT6C3BQ#WI(X#j M0F3OJH]P5*S O$ JRI.D/-%Y()M$YA;\V]U:#?DD)&V_H:# :D/%G!,8-?;Hi M#W"*$$+&'-.GN<=J,)DU0$'KH0+8I[ZA16P'CD!!@V75T:7G+W$8@0CQ(_[Hh M5K6DQ AR68FC@A/JPEB]5*##')47WE:LWP2-K7@U8$S5, P\>Eg M!$Q[D3 R1B6-<W0XCH)%:f M @JH7)1T8OB&@'I57+B.+_-7H,.5^OWTZN1c MCJ^:T/TA'>.@]-QABF0 <=<)Y%V! P1S<+8'_536;=FO=,*%(QKXBIE U.EQb M.XCI6B )A/ )#!ZYR#GRR!KI-W5OBD*\H]":O-!ES1WA0?1T3JO*5:47+6HH)C4#U(MB!E4!+Y)K82?CR =/5"GJQ<-*2+(RLK5@W,0@C9 N!W4$TS4N/S!"<5%M@5%1=KLD&v MA[VT5P_#[O$J.#:?V, B0V:]3_1Z0,u MX;&!0TNFS=I6Q*-XU*,+,MAT"O0>*.!(744\O2_$=L$:6ZKT@'K#+Y)1/"I*t MC-00,T,!AGW17L)<87_5B$S$ >\(U,0JE63%6'$HCBCFJV,="+V8QE:S/)s M&0VP42_.Q#K9VS*7WD!=XFZ7R9T6V>.2[J)=F_5!T0/<8JCH2AM:W=P@IS!-r M?$A6W8%C10!W\VX? 4)FV$-2+T-A]:\0]RX#MT/11X(9\,_#BEn M<>H?O;"4@7&^5_C1JH+U&04X'W'@&H\)X6^KP:B&W3$0!:E.AW4Y9+&@L*-0m M>H_09;W("3ZUD>P!\A-5%@MM^ (?MPSL '/V N!0[-4^WY^+_.M DZ ^!K?k M!# #[.%- EL8!GRD]F; &IOSG.]^B/UH@\ (:]4P.Y- /#R]=I!\FM^JX+&j M*YB:PU&Y7]9+(5QO^&6@]!<.(4/'PWR!!15@ DM ]QZ%/M#;*"SG+8G.#E&:i M@-0;'ICOM#C 2X#UG(P00WD;R79IMVO$1J*5W&MZHT<#(9!OII0!3RLAKRP.h MVAA ^*?-(834VY30BG,)=BW)5N05!I%Z74#XY2XRK0>'7SL8+N^&EB@@SL-Vg MUDAYHZ&A,'#."Z?B;T0-_B7$XP>6I:"*;$!A 3D[YUM69R+YV,+).0$Y/!,5GVSF2^DCYEc MN*;>(\H:!2-P>)C 2[4"?P$#C( UL*+LP$[7?@8L@=N)-S RIA[31MSX/J;#b M$)ZH=\R]-\B#)-$N7&20(1.^O6T$"FO?Q,$$"C$Q&D B@(<>A.L2BD[>0?!*a M3E"1S-179(Y;+IMD$Q1B%]HU_@18D0#0BPVHK;%>7 L:O\CG?* )Q ;],,&^8SQ74X%Z%<))I3 *)(LZ$R-Q5C2#y M,$G@"CB+JU0TM!+ 82\X3(>>(RCYS,K1#&LCD>2O*B(%0.PVJ3GR6GG@CPX!x M@A9H<4+739IH!0IT(Q1 UB "WC*B)%&S(T J;TPJKH1:2*GD^858^-.B;)Qw MP2.!&"EG$2A@!P(#4^6LG]>4; 4DD N+C,^2O$F/CZI( %I YD+3(FW3" 4@v M+7#R-*!+$LT8FC?H>,RQ,(N&PDIL;/?H5Q8$F4AQBF@;F1W_$JN27M6WE/GFu M1\4=K\'/IL&C^+W<0,B0.(6#]8#;*6"6A,SQO&U+^3(_91> -,&7^+(PIL1Nt MV1ZB5SSTF6E1L7^VH 6'@U8WMH(40*&!EYQ\A[VQ,?TC:3 .42(\9I'6]2,,s M ULX/FDM";@ (K 5I&9NUL64>6:- 13 -YLRO6$"L02%A+2R$1Y@0*RS1\V6r M-)^E <$DE+)V9LKA837KUO,Kq MG00*J 'Q&2I#1HC*$V@S=;'-> D,$67YP.GLRE?("L 9FF$-O>$_ED2=ZR;)p M6:3,+^HCG:ESKQEH@#;K+N5[=IDQ:R"$5!NK,W_FFQ":T3./"@+1LH 4Z.W\o M4>6S3-O1W-E_.66HO$A2F8H@)U9F+?_C@^+UZC)J*S,JZDET8B)D6M BK*_T8+5+YMQR^S0@LUF_P.+Y6'Sm M-Q;TA_'JI-'%N\0%$@+58HPE";34Y_V!%:W($!P+7LH(2:\PT1Y2E'WDY.T8l M(7.YRHQI1O'P_@:0[M%0^<)-UXDE!O+;21@NIB0\ &D6/:19Y%=/4'A+<4OI;#BE"R&5g MAFD?<@CI0+5Z @DXL1"0&H9YSX*Z+$9W8 I)[&!]/20FG2?XQ$!.UL7(031NYDXU&/8 C"@"U@\K0)Id MF:O:RJ%%"\JY 3EC5ZOU$)1Z9SL&J.TOS/_<]HF>M7*;;NOB^K@HCS.M#D-Kc MJ#C8&>I760]#M+NL''IC9HP//1BRCSB%Q!D:?9SDGWQ=5*>0\MJS 6P_!HMZb M%^2*_^$?H*IL8.=HS!!X,03&V3DA/,1?:^@\E4<:[-G%&C(?:SS0G8=VRBU;a M[7!I-AQ;Y*BF]4U\-9_5#%A4OOVH+D0K30Q>J/O)7L#!!BVJH1527*F9S#YWz MB_.*]UZLTRQ&7AV;=T59E(P"2,=,LDEX(2\&,/H@Z-D<^RJ.* ;O.CF1M"3#y ME@1UGZ0'$WQX%\.+63@KY+[R"XUYO/7M/*I0%Z(PSX8HL;ZC3HB5"TY8?SBJx M+W("#T+BB+];%6;2@9L]R19#SS9GN9N01>:@#0-J@.]NMK_Y$Z,58?K%2&[Tw M.);H1Y$@OCCY79CW#0ZA"B#2HB[EO5L?F7Q"# IY.D;D@79;7[C71-WV++^W2D<9J]PR]$U-<=*D9+V2H:/,?JJ!9=-;\(<@6'"OL$)9+>0s MJ;142FUDE5C,NQ"^MH*Q1%?; 4XA2^>!@?46S r M9;MJP-&YTE495VH'80U\KQ(!>31*,,_3R^J"?U]EX9YLJQP FBBB=K_ */'!q M!?D(Y]TP (H=&DT;=#U0XGA)U#$#W4[]V*;O+M*%H,p M90VE+5$D,#0L"# ![NR!@8 >L':"-C9YX"LV/EQN-NIY&B3K< $<4_W8C!%Ko MO)UYR1VLAQ2Y K$/TE7L.3ZW9QF#GR^T?RZPOGF5=C_=037HOD9#FCKE=,/9$ZXEMMWBC$ SIQ%-31P!V[RI-^%/# @#?:1P][Q:m M;;4V![S,&%>\.&OQ[(.4B&O>2*Y:6,&^#VX<[1RZ$<^W7!RJWR23-^J@DCBRl M)%\BG#O-8!?MSM2^J-SJ*[60592W%1Q>YF- FMMS86W-"3D,L'_;G$==i M@07HS8MX&&N=CNJ&EW-R=-T$O;B&1S1 ?W9]7Q2[)@8SDXM+B4*4+-@9/K/:SKUW);]&5Ng M@TP?<1L>>D'Z+F:"C;Y6DD.>\0b M+W7H>M0!VK-7IX3>5P9*.T.X:RSV@^_WOM[?XT-LQU!PP35"03)TLQ ":(U0a MW^%^$,*)P.>YXY0'E$ /Y=J:]\+=M@*N)L[ZB,]'>J-F<'T1I6%.U.C MZ I/W$)]JF?7IC.VR8/#*P W;I?I.S^ICS*:?y M0"D*M=KOZF_C=E@L30J5L(%5,H'0P$M($QL&QD2HQ#')%&B+8*#X7;^Wv M=J"-S?'=(:_X"Q3C"_I!+\)=.U;X^,?%XCLYTP ',CX@W_C]O3P<>OQ"H%*Pu MI_)FHXS&(TKCA9<%Q8S'Q+74E?-\3)S@X, )Y9$;EB!*8t ML/QJSM]).%"8^8G>'::UHG^BUZF3!@KI*^["4&@,6GLERR>$ZBBMW4(O"LJ/s M;@M*-]TQ/#:4M8\W.B21M\Y[*I3U$0:ZS_MYM-OZ^2W+&9-JW>YI? ]+W7=Tr MZ3,$E0^'@W5^?_E5'YLOAIDOX('X[8#[,/2T)B8PE/<-O^P!.A2?Z:-0*.'Gq MNR,($/0P/VCS30"/Z%N$.RS\_&V487[=UUM SU:P E*<(UT->WP49G]T6?17p MXS)OXX.PP[P]0B@"06 (# $B@"X&QF>B/J:X+>1YUGW;9&GI9Z#2//><_L=/o M\@II]NY(]>_W "A3)PZ8=B H/,&!)PT9%R 2&)&(4,0/7J @,$"1!HZm M&N> F%/>$( H:A"/GS9@R4.>PT'D'39HQk M,MO4F3.2IIPR9M[,!=$FS)J:/.U43?/&3=&$2>FP[?HQS1DW!5.XT"FE#)TZj M<@1?!!'X8YTQ93,6,9*$B1,C&B.2]0E"Q$(R(CJ"11&8HL5!$)^M?&'7%W(:;<4&6N%04<9RM'WGD,Bf M>+C?<:U5U95.89!!QEQ1O1%1AF;0-@8=@+DQ$XH@P 06"&)X99**1])$I'8Le M;6=*&1W::TETY1Lc MZ)0?'&JZH6)&+!T9(B,@F66(C)>9RH"1TJ'4LZ59&7TR]H"-"^@>RE'FY &:0519LC-(=1Q?HTJ!YX**(S8:5$)C71)<=4D)$[+(::I0U,0G>*_7['A45YYw MZ+2D0L>)B)-R8H +LJJ!3G44%':(N 8**924&Q2$&_X1VV6X?6%&E_*'7AEGv M%)21W*_%YAT9FY%]U%;MS:6YAM W61>$DFSQ*1+&;$\AYICI,&AU^UU!ZJ*@RE9DW2@t M.@111E[>40:9&&=:I1AMP,![P&&ML>[+9L =^T,>XM"S'TLY_A\J06C[P-r M!&9( QZX(A3$[*4R96##"3P"ES#H#W$<YK"&8-5+=DBAS%Q$P@9PT68Kq MLMM?+8J$8' "T/ R]! D)XW["\L>YE)572@$]5)Z$T3p M*0Q;OA D.;!A#"BXDQC;A$7U:&@';]S#&]LTA)NYX0YS0($(N" '+KA!>? Ro M&AP6MAB[J B0@A1!"NC()CA*:(% D0SO# =)24JH@_=#"!R^P*,O\.2 &8G!n M(]_8AS J0#X@$-SB_ .@6 J(0 9"D((8-(,'O7$(AHH%!W#)3#M6DL,/m M.6(]AP2A=K'2CL&(D)K!V:5P*1 !ER*XG22A0#\@H T7:U(%-YCPA:EYI2.5l M]#^DJ"5,-!34,3^2G[L0ATNHNE&.4!,]&9:!B0DI%YR4HT7K60"+9H2!U4)E'8(!38J[3-NW4JD?)N9JL[JE/(:&#>9Y05"(=h M)R7G*\EK+*=$;:W5=U/-BE5G9DD6*H>;+ .J9(27_BEK3MI(EX8Q4LYSE4M7D<#7??;8,f M/O7*5E.:I+H%=K X]2Q+$9<'H1'M-KE!TJ84,":R$<8D()C":5$ R8$)"L'$.T2:[GZ2!J&*MB:*4a M=*@<.\0(OFO?36K%6O[56"7[FZ<"II"$(R2A5[?"7,L20LDMWS@&3 !#WA0z include mint06s.uab