kaldis@topaz.rutgers.edu (Theodore A. Kaldis) (02/15/89)
Posting-number: Volume 01 Issue 130 Originally-from: kaldis@topaz.rutgers.edu (Theodore A. Kaldis) Submitted-by: kaldis@topaz.rutgers.edu (Theodore A. Kaldis) Archive-name: quu/quu.uue Here is my latest enhanced UUDecoder, written in Assembler (compiled here under MASM), and a new UUEncoder. The decoder will take multipart files even as separate files, and extract the encoded file. Or it will handle concatenated files without the headers or .signature's removed. (Multipart files have to be named something like PART1.UUE, PART2.UUE, etc, and all you need do is specify the first file. The extension is not necessary, but the last character of the filename must be a number in ascending order.) These programs run extremely fast, with most of the execution time being consumed by disk read/writes. Run them on a hard disk, and they fly. The UUencoder is new, and supplies BEGIN--cut here--... and END--... lines for the encoded files it creates. Man pages are included, though they are rather sparse on information. Both programs allocate extra memory, but the encoder needs 2 buffers, whereas the decoder only needs one. It is thus possible that the encoder may not have enough memory on machines with a small amount of memory. Theodore A. Kaldis email: kaldis@topaz.rutgers.edu UUCP: {...}!rutgers!topaz.rutgers.edu!kaldis U.S. Snail: P.O. Box #1212, Woodbridge, NJ 07095 ex-Ma Bell: (201) 283-4855 (voice) [ These programs work well, and they are fast. The ability to ignore spurious lines in the middle of a uuencoded file is perhaps not perfect. The file resulting from concatenating the nine moria postings earlier in this newsgroup, when fed to the uudecode in this package, gave an invalid archive, while the comp.binaries.ibm.pc "combine" script worked correctly on the same file. I'm sure the author will locate and fix this minor bug. Meanwhile this package will still be very useful. It would be nice to have equivalent programs in generic C. Any takers? Checksums obtained with the 4.3BSD "sum" or System V "sum -r" command. checksum size (bytes) file (between BEGIN--cut and END--cut lines) 39930 9870 this uuencoded posting checksum size (bytes) file 2796 7146 quu.arc -- R.D. ] BEGIN--cut here--cut here begin 644 quu.arc M&@A1555$0T0N1$]#`"4E-@D``#$2QU[`DEH0```,5-"DF0,"1)0J58@,(<*B MX!V!8]`4'%@P3$$S8>;0`5&G#IDR8]Y\E`/BCIPT=.B4<0,B#<N,<\JT$<,F M#P@V8=R<J1/F3!D7#10$I`A'SILS<L*T*9F	N"=,*L*5/PC1NJ(-Z0!-$F MITV.=5:&_$CF8M,R6^9T:0@B9]F.'\>6"8IRRPLZ:&1V:>F&SANH>;.>/.,R MS%,08@K+L6GFK(N"`:FZ1)G&,%\X=38V9D.UJTTQ<Q6L5"FG3%FK(/!2#=FF MJYNR;%R6::@51!DV,5,'+GHTZ=([39_R;@-GHVJ.,4F:T4J7SN."0=S8)'/2 M#M;:<,+@Y1KF,]4Y<$"F:6P:Q'*2QUUBUGRVH9C,6=W43/TF*`X8("*&23J& M-$$0*#R41D0@S('&&W6P419H!;6A%55XY62;&PB>@48*SR71!!1/2$%%$$Y0 MH4-!29BA6QFET460@Z4!)J%56,&A%1UIH.878%2))5)YYK5WHDUMU*%16TXA M)AE+J@4UAU)4D9%&:?UIE4=#;OW8H)`;F?>&4V_<45%!V<E!XQ@)[E>0&TJY M=$9^5EG75XUNL!!4&7C`@9-L"][6Y7,@1%959NOUR!E313)H$DHJ(?G7<63* M45I?-QWE$QE!49>&=52^IAM%9I2A71TMCI$3A1LQ^(9UCJ9!QD=N/!=9B_MA M12&;K549VU5*`D='1&7,\5P52_K4TAPZ!!54004=E-!"(&QAJ75=;)$=7M%N MMA*3+M!)1Q?&*F!$;5PE2&.86>I(EEF<S<$67A2!P!M22CD47$$Q[4?@>2>" M<!4>=,SIAEQE6>ONC'"V-49(<CBI$WTGYB9'@KV.V&=@C<DQ)%CFEF=M4)Z! M@$88UE4D'0A$/#%%"YR=89F^3+:EJ6W\KC1'P2C45H:;^OZEK<QP8@A97DJ" M9-5;'5T%L*!4J=!$%5-0H4)!'X=L$0@GQ'!"6_\=A]/%^O%'6E8F)JF`M6BV M054++8#@Q!-4Y+NS&S-;]=P3<C0T7KY;;]1U&/VA"':^9#,9U!MA4_SDD`)? M$<04;>E;QTQ^HP!B%F<^#AI):#N4EVHD57VU8`6^83:[.LV)VVPX%I1W07OW MO17AJ1<H],N!FQWND*9>Y3CD<@0ED(4H/C=%'6+$%$=8D"+]7Y`71XU5[;T6 MM)+":_)5.>\$$1Y41F-,KZ9@(ST71)%O<(YTV:M][#6**V)I9+Y+FIUI68:Q M$92U[0_I//PMOQUWJ]UJPH-.A:)U">0_[_)-03+3E#3H(7J-`P&40#6SD*4& M)&AP0QJ.AY4;N60,I3%;7^YW%O3M[G+J$EE9*"*J[-"$*K`3@5&<\KW](.@U M(BA)7I`4F-4YB3#]4@!%+'*"')Q@?FTA@QJP5$.HI0%XKTN8WT#P0Y3P"01) MR%*[;K:2BKR0/D$1P=O(D,.I0:\A<Z@#@3)B'J,LI8@YR($+$%*$J]VH:C#( MXQRK4,<,;00X12*5G!1PH#MPL6XP2Q3]SM<RAG'E02YB"0APP#KU\<T_!4$! MG<;`!H]\3VS^Z]ESH&`4,82!)E-R6T;2T"OC"&1A-R+#7RAR(Q,&B0WCV@][ MTJ6D-!!G/F*PB1LL5\`"J5$B;/1<0TX@@R-2;0;.+,.N@**`H"`!152)5>AL M1R>EV"EZL(,>02+TQWG=02MK*%8U%8`L$!CA+"."A`&*@(?'Q"">":#G8V00 MSWG6$P0SD%A!]$D#@0[TGS509SO1EKF%0H*=#DU`.T'`T(8BJZ(1/1:R8J`1 M@[9%#&/XB!E<T!&L(,M:,2!I6"8:`QK$D9+RC&,.VFDQ.M1!CGC(J48+(H/7 M>/24(2U#2DLZ46O)0*4F+4A+9<K2/.('636-`0Q<D%,\[!2@"?LI2#]R5**V MTUHS0"I+:^#4IL(@!C352`Q26M6K2G,,CX$$`EQ`5Q!`@@%TC6L"\FK7`_`5 M$GZE:[>N"2M8L:D.W]2-=DIBE1/009U7?2=G/*I/$-S3K@JH+#^OBM&+/M2N M!FC!0Z_*T<>V$Z@B52E:Y6FM%H0!J5?M*1D,BMHRC+0C,@!M:\4`6X@69`99 M/>U6;:O2&>CV+"V`:TG=.LV^_K4!>>U64(9"D`3&:X@L$8%+5$)#G_0EA]9M M@Q^']=%!Q5)H'\'8OW9$J;&=)7LF<IE-.*.3[0#()4ET$HUL])=;CFM0^*-2 M]C)SJ_*<DH`I&&25N*BH`M'A)'#XTT;``ZH:"4EULB$(?O/5E0V+020V@9W; MUDN6H,A(3'#B4T"$9#<M5O<-<YC9%QD6DG]IYUHJN1(NTT"N@6E$3>/\2QAZ MJ1,`GP5`NCH0?$)XJN_E)0PC(4B57#"S,Z#)IJ690X)=5I9-5=<H\&I#4`#Y ME#0>K%=S,$."YD-%]$K&.=#!S1L:<IPG1YG+(*#R$Z\,JNA=I3RD"@J#3(.2 M\B!H([!SB9/LH"J>/,6_/-;EA(Z&/Q4'9M+L51['NN,QD%%E"%)@@A%N(IL) ME24[AZ,-298XI./,K,A4J8(3DH`%`-&A#2D`@:CS8TG747.Z!W07F!78:8*` MIHMMKO)5RG(C(5$%)W(0UGO,T"F+H5'(!"$5C</@[*#4X34K+8FGME*E"YHI M/@5QTAS6D.[J].J*6:R(G)%5OS>(2B7+DXF4*I6'L@VH?JDL-THD6(;C/0F" M%ND*'GSYN*J8:`ZQL1`=V,PB"'V,)3:@P1)TN))*H?=[T!96I4EDHCP@J-,A MBTT;"MUEL[$HE>"R2,BQ$I%OLUM["G"YE-)-Z'OSZ$8$GQFKLA0&.-CIW_N% M&UM,7@>N/!$-&]'V_E92(31P3-^+8=C#>$B482OEUT()-D50]3\0'#4$0 M@3ZHE1/?F"`Q095E?,D;ZXB0#G"OPQE\HI'R!#,H1`"9JD"PA,/QR@VF;#@* MUF!X-`!!#$G9NQW"4,\@2`$*0?`9",8WASGG*P8E^!NC=J38(,HR>G$,/>R. M<TXYL/MC_SDVD@PIE9_WM_83V0B#+Y(1THR2,QD)#:DLOM@3M6B((!C"&^"0 MA\%`'4!#R'4,<H`#'#1D^CB8J8UVX_6E!'-B91#)@X(2A,<LP3#J=A7W>Q.O MCC%(W0].PWM4$K#2W":523XTK_?C$[#+FM;D91$/!F4RL1\W9R)!0`4F0`5! MH0$:"%%5541#1"Y%6$4`)0`$!@``,1)U3$8?`@D```Q-M`@(4`!``@`@`#@` M\.]?'`#(`##(!*`B``\6`P#06%&%14$6GW"DPY$3QV(<PPFH&&```$C_7@;# MU0.`(VSH3@W0=09`KEDO`>Q:20M(LQ#H(@Q`]V:I"0"Z-`3(Q2&H#&!0:-K$ M-A1`T:.ZPDW=%O1K""RTF!R=\0^=EP`S[*%S(@!=$`!&%!'@`89./AY_[H3@ M`4)./!YEZC`P`HB'FSH&&/,@0\=#WKV!#1">4V\=-73-`&B]J<O&5!)!UV5" MQPO`L,9-ZDB0'&:.D$7>!@WC`>A'82GK;.CEJU@1D0"$Y>P%4Z?$[B9W0+!B M`4(&.2BS!MB;IX`<'0+^@%F?1<#>.-P#L&'I7?A!8T!R!*R[)+EPD'7Q&M=F MM^C:`&CK%-#?(,*TL`L((+1B"#@K#`,-.`]&`XZ$BJ"C"#&J*,C@:^3\\&"$ MZ$2#C@+E&$+,*HV!,`<U]<FASR+%K&!,#_H`8,<`Z4SQ3V-_W)B.#6T5`4`Z M1?PS&C:+*#.#-(MX0!00CGA0!@!'S:&`+FQ,14%0Z>3BSP+`U('!D;I0X540 M1\'B@"Z33,4`EYWXLT,P=5@S##J[_+-(,RLXP]8\I!R)3D%QL35,?[DPU&1% MM/P0Y91'R5$!F'04,,`QBZ`SC*`+S:'-.N_H`LA4$W#IA#^+V#`&`('X0P`` M=T!PF0+`?,>#"W74XT0BJ@*`C@X`+.J5#Y%>^2HN`/10I0@\"%`'!8^*UH`" MJ^3"AVB@@#+/*C,`D\\PHI+*Y3[]C%+1,*V^*L<(PW%!1P<\Z$!'!CSD<$<" M="S``PQR#.#J,,80$`/`!,#@!#K8_#/,#,E<%L2MW]%:!SV`Y).`'`&\Q@,` MWQEQWSU7&.#!`8OX<T0_@/)C3`$Q'/#%ILE6>>6HN90*R9"/E'MN8V+4`8)D MB6D@V1G/2I9&'0Y(]A@"]=FASSH6U#>'/CO4<P<)+3[=<(IWZ-.T/J,!\XN9 M*=K1`"GKX*.+%E-)P*4+_7Q-IID,(](`+3S(C*667#)0[DIL.6+`E-$.PP@V MC!3C2#>.`.,+(`#\\BH_C=D8=8ITZ-,8OO4TU@`=!I#"M3Z,`$/:JSOH<P<* MNGPB[LU=F84H%`#,L$VC1PV`SR#O"*`+ZOK0L<W*OOKCSS".%+/+1K0H$>D# MRT-`"Q*1&M#X*%."*\M4+W"9!S^TP'!4LQB#RXL`M"1PE'5'O03'JQ5-&T45 M51`Q!!$@6%&&'"Y4YT(,U!G"&^"0!SFDX0QHH`,(4#"$%(`@!CG``0ZH`T$< MY``$8L@#"*B`AC*\@0QOD$,90!"$_BTA#&P@0QKFX()I(8B#*P0!'.3PAC/( M(0QM`$$;PJ!!,8Q0A7.@@P%[1H<RD`$$9A!A&=B0!^K<(0UT0,,;ZJ#`,:`A M#'(X0QE:J``$$6&%0DP#$=/P!C<@,80RI*$9H`B"&`;1@&.@`Q/3^`8TB!&* M1N2B`HR0!C;\L`QC^*`1552',8RA#'.8@QGJP`8F<K$(;CBB&]Z@0#-,,9+] M^UD?1QB'.B"2#F1T0QC$X$<N"J$,9TB#&2=9R4N2@8M/H"(<J(C$38)@?S3D MW[22X(995M*6N`PA%[\XAS4@D9%LX.(N>TG+-?KQ!7`(0Q1U`((FE*$-(=0@ M"MGPAC%(,Y2WE$,N08!&5MYRDG5`H`ZOF4TN0L&/M1FA".$00@7V[`QS6&`8 M(GE&.=P!BT<,9!O:4`8WT&$.+YA#.K48Q%#.P8%T>(,.IJ6`!"2`@QX$H0A) M:$(4`G%:%H6""Y[0/R&\`0\@&$$,9+!2D";@"F_XH!@,2`8M4L<)2D`0#&X` M@QS4@*(@V(,+AMJ'$,B!BEJ4PQQ"$-%HZL$%1Z5#4EEHQ#J$8`T>C>$"Z3<$ M**0`I%A-X0J!T-0P/#6J4W5!51&$@B!(`0I!>$$2G$"%(DC!"46@PE<5(#_Z MV0]_^N.?_P`(`@$2T(`(5"`#'5C!"3XP@A?,X`8[^,$0CK"$(#BA6.<P+1CF M$PHTM"$.02"%,G0R#2+,)Q&>,(7\[6\.X)2!"V!`3CF`P(X(W!\720`:"%%5 M54Y#1"Y$3T,`)25@!0``,1+]7C/\M0@```Q4T*29`P)$E"I5G`PAPJ+@'8%C MT!0<6#!,03-AYM`!4:=.&3=CWI`I(P?$'3EIZ-#Y""*-&Q`9YY1I(X9-'A!L MPK@Y4R?,F3(N&B@(2!&.G#=GY(1I8S(-&S8@QL@I$V9EP3=NRH!X4Q)$&YTW M.WX,.9+,1:=EMLSI`@)%QH)?W=Q\FU(HG3!KRLQ)`<+,4:8P7W)-<\9E&*@@ MQ!B6<],,6A<%0034ZA).G8V.V6C]>E.,UH\KIYK%:A>-UI!MXIIEX[),0ZX@ MRK"1"8*.:1!&D2IE>L<IU-QMX&RTK96CS))F8+>D`QE$$+E"R:"THU4YG*H2 MO8:YF5CK'#AEQJ1Q7,9L7]C$)[JQO+$OVH:)+V]U8[,@G3<@<,`0&C&,TC&A M$83"0VE$!,(<:+Q1!QMF>>855UK9IE-L;BAX!AHI-)=$$U`\(04503A!A0X% M-8&7=W5,!4(>"@J%1AC446BA1'Z5H149`ZUQX'5CE!%"00B-)5)Y[FE&T%UY M<03'@RI^%T:/M;WX$G%"#5:8&X<5J5=W+IU!(5GE-2?9;5M=QIZ6#OG6G4,H MJ<32?5&6P5^*4[FQ$1M(_62>=&E0UY!.YME&D1E4T9'B:3I5N)&#;U`G!TID MC.1&<Y.IZ)^<"E08U1NI`8I3:P?V1D=$>C57Q1P^43:'#D()%9E!""E$!`A; M\$E=%UM<9QNNF7VT%%!EX$%'%ZTJD(09<:I($5;U631'EYJ52<>9O1:$0GI" MEG669BDTE%*:3X'P(G6E>??KMKZVH=5;<;:TGGR]-B2J1-@*^]&S6$4EI9ZU MX><"0D4(A0)L8<`!GAME>8LL<2K>D9$;)VP$5H8%'6N?:9:J>&`9CF:9+9&] MSF$7?MB"-.1H9E[64'J.R:'15@N;1EMOX8X;X6TYO=S??Z&U9(90*1'4*Y;J MZJL3OW!:=$(,)[15!WUZ$?2MPP19Y$8=-)$$`HZ%M>=2NRUK)!0<.?78;6!F MI9?S1CL_&2#,8*-%])9O(#M''6+(%(='=FI)$,UL".7@U5F[["Y,<_2(<)=; MR3&2')3B_-$9MA$$MTLXVI$&&3TA]K%9(5>)K$75?NXNG&TL2$<:9&MUG1QT M_*VF@P7GAD<:7ZU47QE[']90L#T*5UI5<;N,&5I-A4N[&`IN%(,+-2QQ8(*P MD^2M8(YKG?08J+4A4E7K"H4@5QL%2[9.5:6!55`*"$440;DEM51!+Q+D&4M; MZT585FGC5P=M.9'#3^)C!D*YK"%SP,];%-6OJ(3A?YAZ&N>*<P>J=,53M;'@ M55ZRM1P5Q%:E>E42VG.8!$;F,'@:`_@LIR[O,28Z>2!:@5"8AS\A;"(;F<K> MTC`5RUGD*[=+'6#J=B#67(@.]7'AS284@QC(0'H/^8A0LL6X``XP9!I"%HOJ M("X8:84U;4@)D;PR$Z[4L'$5P8E_!JBOI^FH;D)IH1D_6)X9KB10^`%!#S<' MFHH8C#4J7!U6Y@"?+7J%,&C8"`-M)J,Z7"B.961,`^7PM"@5Y2CR:P/[W"<0 MJ1'$4?AZR?-B("^(2,0E(9$#'+BRPHUU#"JXRPUUU&4G@MSM##_1")'$D`>A M$`%&FP/!$GB8.-.X00P/9`H*UD#,B`!!#$K!I1W"@`<7!$$*4`@"Q9PSFS>L M[#8Q*`'<T@.F*%4E.F_84@YR($XBIN<.7-%1_0IRORE5\$1XU$Z2EA,;ZG`0 M([J$7$&@H)F,8$I12VP/PU0%$Q`,X0UPR`-*CMB6(?`E!CG``0X:@E$<Y&`^ M[8K?;A)SD\F(!$)""0)DEG`8',TA<J[#Y$@YLR:7T@$E8K@,R*8BFS/.JWE& M$R!0A*(!&@A1555.0T0N15A%``!`V@8``$L26+_%*>X)```,3;2X"U``@``` M(``T`/#OWQ\`R`"@TP(`$@$/%0<$`+`1T@`K'?]5[(;K"`!'V-!!(:`K'8!< MLRH"V'60%I!F(=`E&X!N!T]C`@*Y2`.@68$9_]#="0#(1QP``.ZT6.3@%P!? M<@"L<#8H'8)YI'`U4+#J"J-OCHXM\E$.P*!W"%8E8@O@BR,#;R12$;#N0B`# M1(U2M8I5JS.PZ'P(0&<2W0F)R21>`R`#F"Y.`7)QD`F%)@";.'6U$)!KFTS0 M(;#08H+3D8<V`&9(FV%O%P@0L8"@0P%@4;%%T%8`':;*,8!AKF'+IFT;M^X% M$BDV?1K5W+!!PEKLJ&8GP#!8352U4L3.$+AHZ-!#0[?>O`)R=00H"*<`6'P% MP08,6Z6H'*MHYX&SWGJ`D/.#>_#)1Y]]\N6WWP[RR/&+6&2MXPHZ*4@$BT1Y M(7577H-=E=568`V#"Q@-K(*+`F6HZ`89*HZUBHDFH>3+,+TYT!:)I'@@VR+/ M+.)!34"XEA=.'\RA@"ZX9$:!3.D0\,\"]E5`BP^A4?%9$*%]DQD#4*[CSP[! MU)'-,#Y*0Q510D)%RP_)%17"!W)XX(\#3WW86T_!R''`=%#58<`B^,P`S"JJ M(#6,+LQD-@&4J/@C9#```/)'``W0@8&E`>101PW^'&#,$0'`(.0Y`(0Z:JGK MW`#(#YZJ<,P!,<`PJ@`-_&.`5:<",&NMM^9J0%OK4.`/J;T>&\`Z"(2:[`&+ MV%"&1"/T-N1G6(8@QP.Z:#E#,K3P@),<!(QRT*)-YO(D)`"D4X(_@?BCI1P; M`,)##G<H0`<#]L(@QP#^$#",,03$,#`!,#B!#CC_#!/*M$"TH&4/"`!`!PBZ MGL&0`=-&J_$BS@22CI:,8.,(,(OXXT0_8/%C3`$&ZXF+&"WB<D8:+H*@H@TP MJ`B#SM&.\1D(K-1'1P,\:'&'`3P$(8=\Q*BRCCL4SECRR1X#\(N63L1+@,4+ M*$(`#US0,;8.=;QC1"(V"$V+"ZRHH@,Q="1@;U3U*$+,.O(L\LT22P`:P-&O M^EO`JSG8,8`QM";BP;2X5%'%*K`4H<I<&G<;&[CBAJ`DDTY"24,_YA[G2#&[ M<$2+$N/:L5PR;0*`BP!"X%0`-P7$$8`04G1&C"'WS+.`-'0(X`\PHCRU"#98 M:!&\;+NT`$#PP],1`!!0W#/.*$1AL<L/TV^_AK5$Q4+`-.L,00L2XXXP"FQ" MCH_^(,-`L/ZX$8S2X6RP8R0[`+4+P:+\D9D70*D4_"@9(XKAB&Z<S!>`T-K7 M^'$W.UC`"/8"`1WT8:\$T*$>]LJ4`4B1P3OH@Q'`0(DNOK8#?=P!!;I8AZ-D MXAG4+.(:N8!";+;Q)IP,`!]O$<`*`=!".FSC90#`W/]Z@)//-2H7CV)7.F;` MCU%`91BT@`%.>"``.7A'%P@8`"T2@!,9D`,G%;%#%"3GA"$0`016*(,<7`"" M&+A`!BP`@1CR``(JH*$,;R##&^10!A`$@8Y+"`,;R)"&.;A@+$(HPA&2X(06 MM&`,=;C8'PEIR2%4@0H@0$(1I%`$2T(A#'*X6`S&H@!?S`0`17`"$2R)24W* ML0R=_&0H1UG*%IPRE75D)3D`$`Z%*&"-56CC&^,XQSK>,8]#>`,<\B"'-)P! M#1=#P1!24,<<X``'>8R!-W.@1S[Z$9"")*0A$:E(1CIR++?Q8R-!``<YO.$, M<@A#&T#0AC#PD68@<"<=JBF&3):!#"`P`R'+P(8\Y/$.::`#&MZ021",`0VH M/$,9'JF`VQ"AD0--0T'ID(8WN"&A@Z2G/<T041#,<PXA'0,=&JK2-Z!!I!$] M*$<58(0TL*&097##&`)Y4!#,H0YC&$,9YC`',]2!#0WEZ!,R"8>*LO2G()"C M/><XEB2XH:H7NRI0Y;!5CGYT#FM(Z%/9P-&N?M6J/BW#"^`0!HGJ``1-*$,; M!LE'1;+A#6.H:TE/JM64IM0-;[A84"EZ37[JE:\<A<)/PS"'0A(2#H.\6$'/ M,`<0H"`,+T*I'.Z`2H0.M0UM""H=YO""HYY!HS`=[!RX28<WZ("5"4C`.0,Y MR$(>$@2)7&0CQY);*+C@"704PAOP`((1Q$`&SR5N`J[PAD"*H9IDT&@>G:"$ MV\#@!C#(00U8"8(]N,`C?=!6)C4JASF$H+9TU8,+Y+!>.3KRH'4(P1K:.4_/ M2FX(4$@!<?<KW#D``;YAD"]]Z<#>^Y*A#K=!01!Z%X074)(*HW1"$:@@8`6, M!9G*A*,<Z6A'/((@FM.LYC6SN<UN?C.<XRQG'__(6W7^-KCN'(L\.PL%>^)3 DGR"00AGB4(<T$+*S1'C"%$3<WL&"0`8N^%E*;WK-$8^%!!H` ` end END--cut here--cut here