🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sources.atari.st
Article #68

v03i028: bm -- Fast fixed-string searcher

#68
From: Steven Grimm
Date: Mon, 19 Feb 1990 17:54
390 lines
24546 bytes
Submitted-by: leo@ine.philips.nl (Leo de Wit)
Posting-number: Volume 3, Issue 28
Archive-name: bm

Here are the source files to 'bm', the fast fixed grep I sent a while ago.
I packed it using arc & uue, since shar files don't seem to be very
popular (for the ST community, that is).

Send any questions etc. regarding this submission to

    Leo de Wit
    Nachtegaallaan 7
    5731XP Mierlo
    Holland
    email: philmds.dts.ine.philips.nl!leo, will become tq.ine.philips.nl!leo

Uudecode, then un-arc.
8X------------8X------------8X------------8X------------8X------------
table
 !"#$%&'()*+,-./0123456789:;<=>?
@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
begin 644 bm_src.arc
M&@A"32Y#  3.H0    #_PP4  # 4G9%=%I()   ,(]*X&<.F#IDR('C,H4,Fz
MS1L7:'PT4!!P8,&#"<V,<4.'#42)% 42-(A0A)@V$$5,K#@2HX@B>.B4D>,Fy
MY<2) NF ^-+&39DR9$#T #$#!B0".VXJ:!-&((HP<LZ,80'UC)T4.#F"J#HFx
MJ8(Q:*""4%'5SI8N7O=,3/!"!8@S<LK  2$FS!R@(-ZX 2'D39Z9+9J\>1-Ww
M*YLSA-/00=-F[(NU8,4*27-&2!TS9K8T"8)%2!4C1E;(0+NV[5JW5Q"R*1/&v
M#D*]",O$E!,&1&3:8V3*V:IS,4(Q9<X(="/PS%8W0<L@SVL&A&^ZE\W,9'$:u
MNDXR>D_T+L.&#0B89<;4D;E5S)OQ(!2[ $$%39HYZ>'/>0/B#AKE(.:W*0,[t
M?O4Y8X3A!G%N&/><&-'-=%Q0  H('QQV]78?",H%A0)A= 4W7'%8*9" 6W<@s
M!!5""Z71G7/AH4%<@-WED=Y>!R:X&PIPI#'&&GFP8)US]Q46A!1%5,<46 *5r
M 9]]-J)1WWEL!#7&&VW P493;G3XX6,>Y@1"7#H-%8..;6U9!AUUT&3;&QB9q
M(0>4W^$1WG@(J8!E @DX\08=1IRWW% PL$!GF&[HU8(>,]&71G-FF(A0H#K%p
M%08988BQFF-KU6F$HG-0YV&=4(1!QQP[@ !H'6T M]L;S4%(AVYNP$<'?7=!o
M!18(9F H)V1A[::"$5.> 04=<FA*IPHJ/ $'';_*$6J8==P5U*OY!;C7DVTPn
MM1P;15*:I594R(:GHJ*ZE>BDT,8JQZQR>I7 0G+4D1L(G:Y*A)%CC#4O@%:$m
MIQEG4 1!Q12D*;!6"RUPI:ZQR (KU%91V0'""B#$H"Z2DZ+ L%0@F&#"6,4>l
MFZQ00YW0P@DI@*#6IKR&X:O"0W6<\&X02UPI=B:#L!8D \QQAV*SHK!KK\F6k
M?'("1P5X%P@GC'&"#K:E;)R7H8KAZ!KJ%FT70B>4L32%3B\LLX>0%!#F&6/Rj
MB)"JK,*G)IL^Q72QMD07X$2\\ W5Q!KWCI'O&"CDO3<+*JRP L)!5UT P0;?i
M7(#4K%%],P%&8VW&UF9T#;7-8(OMEJ//3HCV3*W2NF9CM8T;YYQAS^UIW2 <h
M,6:\EZ[FL^"$ \N"W^&E8#CB476E..-A. XVY%<CS<;6;%@><=135TW\T2>Xg
ML;4;RDM,5_./1X[T'%O/43WSC3NO_0EX;(W']]>'GWWQ)Z"Q-1KH R\\T00<f
M9$88=;!!APZ*FP&''#DQ PH6<A Y!$MQ)FD#TP1BAS!@*RAO.)9#W,"T%I2@e
M7EQP@PB$%;:?J:QPBH/">*HP!Y65 06Z4YQL%(,"&:00; /H0[CRLS,ZH MUd
M Q"<TY*EK@3(D&((\=D.@?5".M'.8\ *%>^DHBX9A@F(< M3[783J#N   YOc
MR(FKZ/,YFL#G5EEJ#@I"4+E>96QC(2B#TX16J4.!8(Q<82,,_0= C@B0@#,)b
M5@*9%J@K>HI5^8%#> Z5!J!D4 1%Q)D(Z4!"$Z*P:@-8(1U:6$0?4H@-=[G9a
M %3WJ87=#7=\ R7@IEC)([Y,B07K71-+XY8I@J"*5\PB1[9(JS3(82&UG!08z
M+86IA24NC&\,@1-B9R0K)8!+&1L*>,0CD[[1ZV^<S%2?)E.9Z*P@!D7DSM&@y
M^)3>$4R.='(C"E PS%[Z(&(EXP,?0)"\7I6,F$X(PWX6YC(>ME&,*.A63(BYx
ML @JQV=39,$3OB %(CS!"4S( A\&*H4@7"$%)>,!"&  3IS1,8 #9$@>6;!'w
MVPA(.WD1Y%Y*,(=#CA*)<DCD)N^4ISH@1W ][$.EM(F0H>$,F290IIN8>4)1v
M1I,%^OS6:EA 3<M@YIHJ%:?WS*@Q$(2 2U8ZBB110%%($N0-=\FGMXA922>Zu
MQ8V[3( I[>DAK];'/;J<DSC'L,8KUI$. A1!"<A@TB9X"BQ#T!,=LHD'%MH)t
M3WH*R@] ( ,0, VJ7C$K4P2B+1H(0DTN2  $SJ$     _]H!   P%+J1MV^Hs
M @  #"/(E#&3QDT9$$:22)E"90B2(%) G)#80$' @04/-@F"Q2%$$#!FW+A1r
M\2)!@R V8A%2Q8@1$#ABY)!14N!)C1RG)-%2!$0,&#!J8D2I$DH0*E-\ @7Qq
M0@6(-F'P@'!3IXV8,G) O#$# DX8.G2PNID#0L4+H3=!0-')DTB1ES]ET&#Jp
M=([7,0?-O,GJ%:Q8LFFXTD%3)@^(,6_:Y)63&$08$& -FRT9V(W-IP719L3Lo
M!@4>%GE2@$#A632/T:%!_!B-1[0.U"E2E"QC.3!E,Y8'/HVJ&254/)Y!BR;=n
M&H0/V*I9NX8MVR)M,K85S*$CI\X8.FJ_TB%29LX8$'LJ)J@S-LT9@V1 S$&Sm
M%[N**6O2P(G!HBQ\^3)VT.WZIF!8.631\89Z\<$!61ABL-%=66<ID, 8:(21l
ME0I0:"?6#N+YEQT=3-"F7U-=62B'&R HZ,89@S$H'H02VD>'A'1@Z""(T\%8k
MT!G\S9$&'6F\0>)6ZI4A(82C?07"56<4Y,:-6G'5UW]NB#:9@QI.81U><\SQj
MH5/4U7'0'821^*18(.A%7GI3]B&C29L5)!!P8; @AFC3R0&A'"C$.6=O!XUAi
MAAQEE)&G:'\&.FA%%96!!Y2'13AAG7>BD(*,&@A"32Y,3DL H0    #_J0  h
M # 4UY&#$! !   ,:=S J4,'!!<V:<1PF4,GC!PZ=>"X$!.P@8*  PN*:3.Qg
MXD6!!$$4P5-F#,$R'=U8Q!CR2!DZ4,+0,9(FY4J0!8^P>2,F#!N;'S.":!)Ff
M31DB9>:, <JR(%&C4]:DD4A19="01.F,06/D31VF.(>N0:K4"LJJ-X4V>6.Ge
MC)2D-=%>+3BEC,.M8(5"D1.0#I. >4-"(5AE3I@S9STB%"/'81Z#B[F,66P1d
M&@A"32Y-04X H0    #_=@8  # 4R)&QW?D+   ,#12 @*1#2!,4,5($7*@@c
MH),@38H$'%A 3!L0+4#,*1-&SA@T(,* ,).&39F1;^2$U$A'3AHW9QA.R>+Db
M"90I2:9,A%3QXA80;^#02?/&#8@N(%Q &@ "Q,\Y+5^>F7/4Z<B2)[LP)%)Da
MRA I2:!02?+$R<X"0BYN[/BQ#%4Z:$Z^A%.'SE635%% #>.&3$<R(.;6!4&Fz
MC)DP==C028%2SEDV+]V":!.&SD>I*Z&ZA.FBJ9.4E-FPR<,"!,>/(""[.6GFy
M39V^@>><'1,T31G =-Z @'MR;]^_0.O2I=,91!*[::B*44U&ZNB18: 63WM6x
MLU2J'5FGP7-;8YDX=<JX&2/YC1D0'SN&&4.GC)PY.G;'E7,R.P@W;\[>*4EFw
MS-\YI=$'1QE##544@$"I] 9O*IG!$1UUT$>5>2#0=T9B'9F&!QP2ME =46[,v
M,=U%R87$QARZ^;>1=R&F,90=911'15PHB?;&?C !)12(L@G$DWWTT7:&&VGHu
M<9L+#%'4 AX##8!"$7BLMQA0;CRGFF2461878"_)5T8:*HDW%'UTY!$2?3LIt
MP.%+[9&1)$\ML-'DC">Y$48;Y9U'$EX@[ ?79)5=EN.5V-&76G)MIHE"4>0Qs
MMA$<ZK4)@AAFKG8'H4@VY&,!+8S1Y!-5FBD2;:_912%O]]71AACN 75>EFU1r
M5>*:;B2JJ9*]1053FG2RM-D9L7EY7QEXV-71A7C6&I(9[:F$:@NLL1'&&9W-q
MF%R:8=AX!U76P:1<&6>\1&2.?H)T0@LG9'I6"R M]=E=XMTIF7VTMEE:&3 :p
ME<:KB0T%ATGP%EI&FFMYM*6ZF[9@U%)%K ?2E<%R6 9YA0%&J;!NJ,JJ@N>Eo
M)X>4[E%EAAQOM)$FJJR&Z\:XP)Y*XYXGY28LK&@@K"152TV!E;)MO%%8<9_!n
MA=FLFTF* K'D"66:'"2KA.<<'OJHP!S3NI6"C&B46&(=&YF16&/HQ37&&IBAm
MZE[3+%7&M<UPG@<I7+S2V"VPD$$5+!UAK"'>2"1?A.K;-8-@+564F<EJFE\Rl
MN!+,":Y$1YD@H,#U22V<EU%1P@:!MTL@3$'%U6\64$65;KU%([LZ&J@OMP..k
ML:]MN+V,U7WR!CL'&C?J:\99#,I%>$HQH\$7E7*Y,1R\Q0UAW^VNL6%QS'F+j
MIU]<1G%=-HT>@_P>""2 H()57H# 1^0@,,878%P$9A2J<_=($0IU2XHYJK2Ui
M01EL5YIO>AFB&IHMBI/A",N\)J?<\(Y&4XB+:(IS'-N%P4%VDYEXQL"&-ZS(h
M;+4"TTF();$YS %$9SF6JL2D/HTXYR3@69!D3@""=(4N+=YA2UQ$EI)#K<9Tg
ME4%/4?#6I:*<Q&4G08&EKA0UBCPJ4K=QE*ZF4AKKY0A50GA#'MS3@B:\ 7@Ff
M.D-*7(2&-C 0.>[CR6%4,H<Z#,@E->Q2L]HPH?/,84#=D1FJSB"@R(%+0*4Qe
M QW+  >%;.HP;2B)F2CTMF89A68A QM)N$.&%A32/48IF*#.4)KSG<5%K"M#d
M=UXR!OI$1S+E L$CY6 4D\ $+@B;0A&* ((@,&$*3SC+'N& $#\&A A)",(1c
M:N*Y) Q!)YN"DHO2!B%9404&@3D/7\R$2(&AY#5D*$T,DGD?'Y9&!HVI3AYJb
M%08FG2TE$U+)2]9#'@^F83G:P0O"@E %*B#A"5(X"Q0(U"HAA*%+*( #&<1Pa
M3S< 00QND$,+[ "I%)0FE#UK#DG\HSINU>$,9W"+I"AU%B6\ 0U&.4))>N8_z
MV 0AD"J! F3L4)DYK"$/F:(($\J@F\* X K#;$[L2J2YCJ2A<U0094J(PQ Ay
M5.$(P*0(J)X3 Q@@<Y0A.E-]M'6DT$&A,H8D7!@JM2 =<K-+0XR,B$*7!&7:x
M,(B%@4P@)UJI,EQ*JY6$#<K )2[,G,\T?3D+$.'%F!)5$":M@LOP< "#I82-w
M+<W*2XRH5<)1 >\L9%!5'TLSS/V(IIIV894.V_ O>CZG7DV]%4^Z.IE^I:&Rv
MHH0J))WYQHF][C:E055*"L,Q8;EF.(_1:K#P8Y?5E)-J+GD.^VH7'=?*@;6Nu
M$I9@Z!#;&[*M $'X:I]*(B?)8A8PC&)-#4\#$H4ZB#[*FAN5#IC#*QVW5]G2t
MHDO@<A'_K*RJI%(6ID+7*X6%!#:=ZE-*UD"8?5U73,\96<E&,LOOGLX.I6E!s
M&M(*F!:(0:F0#0E)2Q(&=&8*&@A%6$5#551%+D,   #_6@@  # 4H)'=4-@0r
M   ,(]*X&<.F#IDR('C,H4,FS1L7:'PT4!!P8,&#"=_,$2.0#$2)% 42-(A0q
MA)@V$$5,K#@2HX@B>.B4D>,FY<2)"\/023,&A)TW:<B 8 /431HZ*%+LP$E'p
M)T\0 ND,?2.G3!@R29<JF BSS)@Z,E$0*3-GC!6O+$ X@:)S3EHJ96(:2<.Fo
M3%HA=<R8F9E6H)B\<]+H23&QZIDT"V>"6"BGSABI;.G0&5L6A K*9KUNZ:+Un
MA0H0<(K*E#,'!)TWBYO2J5/:CM?3I$&8H6H:#<*&>F>6<4-G8H+/<'2.=N,6m
MJD6# L\L7I,&CNDP8NH6#QUXYQLWQD'\S2TG;1DZ8UQ8?E&XS.'$<HQ+7=MVl
M!PC/(-S4:2-&\1LSH(7/)#Z^_/G1((R!1ACIX<7=9N[!A\8;;)!1FDPQR2;'k
M&VW(1A="*I"G@&&( 1@5"'#)=6&"GYEQH6FHS6&5' +VI\ >OGWHA!16D9$6j
M?/+19Q]^ A)86E5724BAA76YF$ "3EP1!F]EV/C>9SG6E]Y] 0X8VQU+RB14i
MAKXA&80=8=!U(Y3S20D"E3W&%L9C=83!!AMY@ #DEAH>:: 94PAFUY/QE;ECh
ME3YFM]U>Z7&I@)UYF0&%1F.>J9>*4E%I(FE2I9G=G8H)!&)<=,Q5I*&(Z@53g
MHV:P$89RIQG7T!@Z(43'@%(-JMB I=6WVV(K"MBDD0G0.$>>>MC5)8Y^3LFCf
ME6N.5IJFKR)DZD)]#40A''7)-)1 &-:9@!%OU.&&D_"5>JJJ/+5:VAVV-9M>e
M<)+M)UNWWW;YV1C35EL&G" L*92;;(#0ADZZE@:''%'M"FH"5K@9%(D@8/F@d
M;?X"C 8((H#)1E B].5"&>*E@5\+>(# 6I,LR M"0T(UV_""15[L!D+_@H?&c
M#T9:JL*=17S+<&@%IY?JLY5:Z>A082P48+W?.8NMB[[!UP9B/=U!%7-N* <Fb
MP=!)9^2':6C5]&<"'96&PL&Z" (D"! 5-E)*^>8KL CU  (,6FT+KU!RT^W;a
MG8N6EG?=LZ6'0AH]T U50FI%-H=[::RP0@H@P'AH IB=-<86:70!0@L^@#"%z
M8V.0Y??<=5-.5F:79[YYYU,T)8=4<F,J1]U]\!FXD3B^<<?)J*FL(H$")F<Dy
M&:A)?F2X:5":UISY:I?H3&;4\6:^W^(J51W.J7SUV-&1Q6N26>XJ=Q-!8"%$x
M%488L3D(;^OIWHPU@O!WE\1'[ALD SCQ99C]]G#_ &<; %'FA((0=>I"+) =w
M"%; /K+ ;8%JH=%5T@(^)I&A;8?"G\= @ +]@8DN\I-;"V( .>-!@@!F&%A4v
MS(""A1Q$#MVY'P% 0+&3Z  $,YE0>N8D/#-,J$("@0-8B%0&+KA!!!A,P GCu
M<A04R"")^*L=?#8(*OS!+T@KD)L'^?<^)5EP<UK<'UU*5SMTG:B#8NR7"4R@t
M%B]J*8D)P%G(YC>Y.SU0;NTK&P.O2(;2X:QZL7M>>AAH1SVM+P:E@P]16&4Ms
ME>U&*%12&=".U@9J)>U:+^.5&8N$@ILE*F=""8'<3F#$$X!@C2#XHU!\$$CNr
M$":# VA!"U19N@VB0)6(D]TKE3@ 7+:24! L9-E:  )$=FF3"$%!".180CY)q
M30YKJ,V$ZG"&B5T'(;)*3_2F5\5>?G*.Q608I* BE8&]P0Z(<8@;^)6'M#0+p
M.P19T?_ )I4-W@$A)JJ>RK(9G^NTH R5I$.<NGF[P16.<3Q(7'N@XK@2RM"6o
M(:B<9C+'N<^-(71SF,,N3SA%_*B,7<.A(:WZ&:LRW&HVWJ+3_0H@T=1U@7.>n
M YWHY+?2*>0*#6(YG>4P]U(?1&8X)<L@2W4ZT9Y&A@F[N<LGOQ54)0ZU+#NEm
MJ ^FP!PXQ" M+>5I1:LJ@Z9"XJFHXRD4"6#+K$K5HAC5J D)T-'FQ:Q%;[AHl
M'6!HL#I]58[R(]U*$W8QO(&@"1+C5DIS"M6B)C!1??-J 62G5%%]"XH%$&SUk
M^" WOBYLI;9LH1%,I1P^\&$HFST5Y% IV0O>SP!560U-4 "#L4H1;/CIYFO?j
M52AMS1:9O/)8!R5X0?O!,H]Q^^LYR^"KH-2A#(1%'0O80P>W,/9_LEN!,,LPi
M0BAZ4R]]6^ O'TA,X)*13U2L4QG1<$8^)C&U<W6#,DN+P=EVY2O6,A13G-(3h
MFQ%E.VE1 5&HHY6<[*0G'[KOG-)"E#+<A\!B"(P>O*8 _S[E)T&9RMJ2,A')g
MG8VLO(E/&>Z@8 9?V);WS4L(.6BS%+36MV=+6X(%DU? OBFN**BN5E*,6Q2\f
MC,,LEAL;5JR'4W)PQPJNKD,5<#8& #G'&L;Q@B>2XCXP&6TAQH_<4%!B%R\2e
M!4<>S(S1!N(W;&?$5!::"E)0711#@@$I)!AO6.C"'++ )&VX81L 2I4X\2NNd
M3KF.;/C7)",B<<L,8")22+AE!#B9R"<\](7WJY&\1GG+!!!P_.BXZ#<86,IZc
M5<"AY_M?]4R%@&:P$7584!<WO/)#H2;U;K1B,_Y6^,D8ELIIFL(&YE'ZA!Q"b
M#Z *Y4,*Y?<TD,ZUAS(,FQIY^(1=OO204XQ>FJ"(UG."M*)/6- =[&#97,8/a
MEM] G1%'&8*2O@JV&=!E,3"O<S X)1O#+92$9AG;$"@PE>1F3$1#H-G8F;6;z
MHOUD!DS;R%ZVM9QJA()41YG4/,9@D<MMZ[S!6]Z8KO?9[OV=]#Y[W\;N][\9y
M/;I'/]G0'R]VD*8<Y16PF\P<+[3(_?HT]:Y<U:8NM"U7/N(36_C,^+YXK3..x
M:)#WO-1@1!&_>Z[OG6-1;BLO=$%[72$=<YM1*,HK?X5>(UF"0)2D \&X57 :w
MQ^55!4QW7*&GC8!N(_T-A>9X7IDN[8D<&AH(15A415).+D@     _X\!   Pv
M%+N1=&4 !   #"]4@#C#YHV8,&Q F&$3YLP<A6_D@!#3!H2*%PT4E,%#IXP<u
M-R#2N*&38(P1AF=8@ @(@HZ<.F5"F@%Q)^:=,"-!O''#)@^(,"#&O*F3\\W,t
M-F'HC$$C\@P(-B++/+R8,4&9DPU5LA1))LV8I%);HDD*PLU&.C_EG*G3IDS.s
M- _IH(D))VG'CQ8Q*DA@!FO*E0)=PI0IEJY=CVX>AI%3YD[+-T'?M%4H1_)/r
MA6G8Q*2ZEXU?K8%?QDPSLR9-G&B!0IV#UBAFS0^%C@PCLFEA$'7IW 7).8&;q
MSX!;BB9L^F9.N3&7+@XSYJY.,V;FE&D]$SGNPWA[SP'.4O#HTC91@YB3V2W:p
M-F_(;-:;  _WT(-)TPQ?E*=/J&8?WF&Z% 12I6B 8%X:C/645U5HO"=<?."=o
MEI,;D)E1GAMAM/602#K500<<&AZH0%5-)+74$$.-M$-P0A%%75ELB>'1<RVEn
M8>%ETBW6'VMRV';30V:42$95 F%H74<<>7@68D&-)9$*1I3G1(5E[)"1!I#\m
M0R4C&@A'1510051&22Y#  #_HP,  # 4H9$A-MT&   ,(]*X&<.F#IDR('C,l
MH4,FS1L7:'PT4!!P8,&#($2(:0-1Q$2!="8>*4,'2A@Z1M*P*8/")$J595B k
M(%)FSA@K9<:DF#@&31@Y(%2X3+ERQ\2%<NJ,H0/")1V:-H-"O9ES2Q>C"EZHj
M "&G3!@R(."<I%-&CILY(,S(>=,&1)BT,-VZ 3N')(@Z<-R&'5O6#8B#-N6Di
M@4/G#5 [.0L#5?%BXIZ)"<K@(6L61,^?0=N$8</FS1@4*; F,)*$29&@4(B6h
M$0VRZ<DI:?2L!J$5!!TT"-W4:2.F+(@W9BS[E(-6H%O.MG'OI4/Y;-#&"A)<g
M7NQ22!TS9G;0WHKF#1NPMQ&*9=X7+>.)(" AF!YT#M;T"%IW_;K2#5;(:8*Cf
M"($":?V6)ZF6 B0#@/!8= F8 8=@;M!A1G\,E24'"QJUH0,(;KRQ7'-PK03"e
M&6D@Y@87;H@0&F21X9$&'2C(<&)T?6P'0G[/X:=?"$B-T08< +ZT$H4MF)B"d
M@2BZ!)ML(/30U!1):%$$$448\1XD$*06EY(+-60?>NK%6 8;=1$9'7PT[M>2c
M:DFF]08<9;C1HVH4RF$B@6(FD !\"C+H((0'R3$AEQEM=.$88;AQ E-KMKEAb
M7QTB5,(<)(K PE PO6@G?)*MV.*+Z4'0!V1DZF=&766L<29,+,# ! LN)JEDa
M"S$,>>"EZN4)TH-92DBAH)85>FA:I*X!PJ.13AI@I:+=J5ZF++HH&GPQUD;Cz
M>0IT:F1L""EI!EF<G;H2IU1V=8= 9'A;AJ6A@K#?M;+)BB*>"][*IZX57C@>y
MAV;$E09:9>Q(1QZ16JHL LQN^FR7,DX+70+1;J6PC>KR5]UUP2FI&6>>]7ADx
M&2O$2N>L\.J):X1^[FKAC&=1G,88:;3)5!O]&I:';1HN9)AX?)D%:8D"%^PLw
M9 W/&!RU>!JF+EI*3HR==BC,1T9]:?9H'78@K. :'1L/V0((<PSI P@P<%F!v
M"2:D=09)<_3'@M/U32H@""$HB0)[*J0 PY04H+4"EG3(\5_7[E;;)62U:;8&u
M0G/4T55R.).GLUN+Z\99"Y2U(=!)99#A @A7($2HH4SYA!AD6TD.)LJ,+_HXt
MM0F4.<<6L';A*@@GD'C"3@B^'GN:M<-P@FA?UH7BZS#(KF3OOW,9GWY6>A@Ws
MUPP)%+BR!)A!T!MUF0LN EZ"B1#(D!! D%==^:G]E-Q#UA4=BKO9Q!I3X?19r
M_#D92\?49J3P8M CE72LA]0"&@A'3$]"04PN0P!#  #_E $  # 4HY%L)@ $q
M   ,+U2 .,/FC9@P;$"881/FS!R%;^2 $-,&A(H7#12D<4,GP1@C#,_T@,$"p
M1$ 0=.34*0,BC1D0=UC>"<,1Q!LW;/* " -BS)LZ-=^\;!.&SA@T&\^ 8+.Qo
MS,.+&1.4 =EP9,F3&\FD&5/4*4HT14&X*8.'SDXY9^JT*5,SS4,Z:%C"*4JGn
MC!PW%C$J2&"&JDB2)@6F7-GR)5RY=.VZ>1A&#DLZ;WJ^6:M0SN2="M.P80EUm
M+QN_5@.C5,G2)4R9-,WR9#K'K-#,FQ_ZY!AF8]*OB.G4O9LWJAO0@$\.+OTRl
M)LS4N'N"E1-FS&Z;9LS,*>/:<%P0<W4K[KUW#O"K@DD7/GV\YAS-;,VV>4.&k
ML]X$>+Z+'C[>^,R@.'4R'?OP#M*C(!!E%!H@I)>&8SEQEP :\@DGGFGV(>=&j
M9&:@YT88:SVTD4UUT %'A]Q%U4111PWQ$T<C[2":3T!5)Y9:8M@%'4II9(C9i
M=(T!V)H<M\WTD!DGDA&50!L>AA)99G5V5&,6&8&>$QBRU ,(,.R0D0:0_(-Eh
M(1H(34%+141%4T,N0P  _^,!   P%*>1I1X !   #"/2N!G#I@Z9,B!XS*%#g
M)LT;%VA\-% 0<&#!@R!$B&D#4<3$B@0-(A11! ^=,G+<=)Q8QB1*-R#&H DCf
M!X0*$&W"L&'S9@R*%#LFOKB9<TV9.2#"@( 3AL[)E" .SADC)PT<.F]JJG@Qe
M<:&<.F/H@(#2E Z1HV-L-@EC].Q4%&2=ODPQ429-FW&?N@FJ8,_$!%[!BLWKd
M-JV*PGP3% ;1 P2*P&''EEVL(@5.G3Q]SDFCI\P;,X_I?(U,&&T*H'_3F'$<c
M D7A%CZFK+$:@['C.FXVGW%3A@R(.6BRBA4HMO+?G#M[HOC-V3-HXI9OHF@2b
M!,L0)$&D@%@!(D8*2 3\*DB0P R<JF[H@%YX4(X<%AK;Z(@9QLT)L9A[-D4Xa
MA^F8,ERX(0)JXR704AITH" #@0GT <)0(*AF$U?C28A":Z_%-AL<,MB& FZZz
M\>8;<,)%F)Y-=(V'7&:/-?<9"M#9])MH;)3A!EQES06>>.29AYYZH;7W7GSSy
MC5'??4DE9^1)O_D'H( ,&H@'@@HRZ""$$F[U5X9YO=1#ERDEQF533-AHFU<Ux
MWCBF7"DQN)91LEGE&EJP@>D&"QG&"4<,+&Q)IX96R8#GGW&5Z0:#<I1!1QTIw
MS3D5@5<2%89 $TZD 23_7)H!&@A-04M%1DE,10!#  #_5@,  # 4Q9$*./H%v
M   ,(T  03$B19,P:\J82<.F3((8+F0T4$"DB)$$/28.,<(DR)$I&$&00%'1u
M2 H0+9Y,G$)%2A(H(5O,F<B$"$>/('N(1,'2)904$Y^ T"DFC9N53ZI(&5)Dt
MRE 0(,2T<8$FZM0Q((K@*3.F#ITR+K!J_2K'#54N$Q,<*4,'2A@Z1M*$!7&$s
MS1LQ8=C,/9B02)DY8_8B+#-E31HX<]$J2'"0SA@T1M[429RVR1J_@*V Q=KDr
MC9TR4O[*Q0I%CE$Z3(S.A>*URIPP9S:#F%(FC)S'88,*45)D"!6G1*>.?')2q
M*U>O8(>?5*R6K5NX<I73M8M7KW2^93 'OCZX\&$7TIDW?AQY<OC*E_^.T0P>p
M!7$0G3^'GA/=_4G:MG%++WTZM=G]K;T66WO$321$$%-8E 0333TUTA1)+=74o
M2=@MU! (4A01!!%-%&&5"S%,-%$03# 1DE0B*I 7&SKHD,!()#(!E (3C0$'n
M"&.T 4>+.\4X8P)FO"$'"&D0Z4:/)::P PADO"$2$"*14"0))$CQQ!-4O%#'m
M''*\8-<8>;U 91I+-NE&&2F.T5 8;K28P))RM(&2&2"$X8)D=. H9!D@J.#"l
M''T2>%(9<L@!*(Q)3A0;'6XNN>B*$]7AQJ*-@B#IHVRPD:)4.NSTQ&Z]_?8Ck
M&T:MX0(==-S8PAUIT%&55"C!(<<;9U@UT0@OHC#$$"?)A)*3L(ZTZTT?G30<j
MJ+Y-,>-$4@G::;-8-5O56(2:A49:8V#5 E;";M11L1^.,1%K=+@&6W+V=4JNi
MN0-&.U55V&K+K:[>XG32N@)N-A%VWB&F7*?\&H:8NU2!$"]*\P[[K;+P=2=Ph
M;@K@=QL:SLY6V\1S29L5'F19>_"V.RELK\7Y42RN L9U]57%*2.7\;L&+Y8Mg
MPB'7"V[+*Y\<'VBBD5$'NL0![!G/]/DLF\;4ED75QPG;S/#.\Z5A-,3C02:9f
M&V147'5Y6+]<<-(>RRQOS<0^_19Y5V=],G]NH&84T"FH:UK;_LD&]M)BT]QMe
MV??.[?:95*>7&5=:"[X>X01?FS?(>R],H>&:!7;R6FV]%5=#%5/^W.5'O\LTd
MV8[3Y9SE#.FK ';::3U8ZHE_WOC(J*L'<5UWY94Y=;:?G,#,C-/+]W2UZW7Rc
M1!H(34%+15-+25 N0P  _V(#  !-%)&.<UZ(!0  #"/2N!G#I@Z9,B!XS*%#b
M)LT;%VA\-% 0<&#!@R!$B&D#4<3$,GCHE)'C!L08-&'D@%#1)@P;-F_&H$BQa
M8^+$)F'6E)FR)@T<%%#"T!%)D@5/GS&,]H0C@T50.DS*N$DQ\61*$$^)NMG2z
MI::".F[FI#GCI@P9$'/0O)%#!X3 MD?AQ.#* D1<&5R]OL4J-*H;KR]4@#@Cy
M=:10A'30()RS% 2=,&+8E)D#PLQ:$$+>Y!G9HLF;M8OIR!%X!FV9E"=!N#RSx
M-DUBCA,%QXWAEG+BQ8T/PI':T$WI-R5OFT0I)\P8HB#NH$F3VDR8-)+/TGD#w
MHB6=D[$=*P8!1ZC6NF'<G+U;6SMNGR!T\R8- C@(M7<J7[V#D'7;MV^R"^\^v
M=*0;%WSU1U)YPLUQFARI\:>5:N(%Z%=Y"\DAF1M >>=?"BN],-$>$R6PEPI"u
M&+<&%<6-L<8.( 0&@A@BBB8B>X]%AI!E*K6EG%0KU@%=;Z4QYI,,&7:XUQ@Ht
MJDA86<6QP5T=<L#QAH$F ;=0>&VIH*$"'KK1EAHLK,$"'5_"4:1@ C4TQF1Ns
M:4E=7"=0%MY9(9I(HHA!*B"D&2"@$ (*<8Y8XAH@])#GAQBV]%),%4*%HV Hr
MB*5'&6_@B<);*4!2 (=8)F &'*-I:4:C#(TD!PL:M:&#2>&=T)9+,(UQ&%K=q
MG<F%&R+0U&$"(+F&@@RV8ME'BF3B:66'-.8Y1@\PH#@&#STT$0060R 1A!0Hp
MKK#"&%1E.ML68W01J(-2>:7I92BL@>P.:_#PE%_H6HLAI@DDL&U6_FVQ1A?>o
M"KHNCBV  &B_,8@K[U)XW?LMD(+M6U*__X(0<(>_JECLL%@6BX(:/2@, L!?n
M9MQ7N&J X(.@R6[< I<MM$#'N[?V.:>)6ZB1KV,"*P<=0BC0H>[')9E@0H!:m
MQ>QM"/I:2-(6='3!,I:0#' 7TC.W(1 *3R==E\;]A@QPKPDTW9:@+O\)M< 1l
M"V:S9'4F4'9EEU$\KDKEGIMN#W3L8.T:V<;[M,&"2DWAWETXQ?,*=+2 M[ATk
MP-%#V"*.W>'99>0,Q\Z*3@4"O E GC/E?BW=M=,$0_VMWU2';G7B*J^@,-=-j
M6UOWK6M#GG8"B7_+.,R)=P4QL,DMA[;;8Y@A1QF1WW[X1&OCI%-<=0(:"$U!i
M5$-(1D]5+D,  /_Q @  ,!2ID2][U 0   PCTK@9PZ8.F3(@>,RA0R;-&Q=Hh
M?#10$'!@P8,@1(AI U'$Q(H$#2(4400/G3)RW'2<V"0,G3%HC+RIXX8,"B)Eg
MYHQA 4)('3-FH+R9P],G4)1%?YHI4C/%Q(5RZHRA P**2SHX=8)0D77,#A Of
M5(!8Z!*A0#-O0(01,Y/JG#)AY, $@58.B#=N$$(5>&;KBXD"J1H-.O1KV+M e
MWU)]8X9N&CD+0<",BQB$&*4H001.2P<-0C-IV" 44X;O6+AR/9/Q.W&R716#d
MD8(5"^=-X,QT.'MV#)FJZS!3,PL$T7DTYM=_%22 K90I&<.T;;LY:3<W\=ULc
MPD3^'=SN\.*6C[-6L&=B M=;FS 16$9(F3,">:I0S][Y#O-=6_B8(G5,SCD@b
M]  "#/<I=]@4=,1%56V! 6@=:+U)AD9<P%&GEAD6AC%6?_^940<;(+3ATEPJa
M))< ?7FY!Y\; 8* 8AG.M9C??@G*054+(,108 )WH!%:&2B\J.)P/O00FUTFz
MF)#>>BF^-UP( I[ A1LGI !""RT(Z:0;.ZZP@I8K[MCCCRBXR"2,-24DX& Qy
M)KED?6E""8*45%KIY8OVF9=&8T&>&:,//377U)59^EG3CH>!AD<9J\E0@QHTx
MX5 #"'"0(488 KFP(1QPR/%?B!_2D08<HH4XHF< ,G:=7F&T489YM%V%$HMXw
MW947"&RP-UX",R*H8(MXIKE"CHB*!5,98ZRA66-EX%&AJ2^A\1453TP!PH0 v
M<N$=BR>9A"M[/'DV$$(MQ+#KGB"@@(<1V?7E9@AESF@5'4R4P6(/ J(PGZ&Ku
MR4GG"2#\D&Z?<*[6@GE@"F1GCE;JD&ZP!IO)WI!NI%!N"I ,8%X"GM)11THHt
MP) "='1A6I"GY_(Y![MAG&%EQQ^[@4(,(^O)YQ@LNPQ"><HE<.>I0\PTW8X<s
ME^$QR#3OV,=LR^X*A1R!G8G"8$+-L<)-.8VAGZ\VMG!D"BPD[$;8_-:L',Q(r
MF[WT82U%*Q--JY4X$1H(34M$15-#5D4N0P  _\0!   P%*J1]02J @  #"/2q
MN!G#I@Z9,B!$B&GC HV(!@I>J  Q9TP8-R#"@'!3Y@X;@65:S"D#)XR<,'3*p
MD*%(1X[ ,R#>F %1DDY*.6[F9'2S<B0=$'7@@*"#I@S$B7;*C*'S1D[,F0<Ko
MNH3#5,X<%C$YTD1Y$V/4,5.KTBSCM&97%R".@I!2ADX=G$.+;JS31@S9IUMMn
MDLT)0L4+B +I0&RRADB9BE:4HC",6"E6*"CGI( XIV6=I2 @VV0\IB_GQ&.Vm
M=-D!<0P:DWTUSR&M8 _$!(%!.%$-H@<(&*P3F$:MH@A/S;G+X.G*4L[EGYKIl
M<.[;),R:,IQ1I& MD>*;-@CGY*E<IHW..B,35I9C6HX($ *YAUDI,Z' @WC.k
M^WU]!TT:-@A1J*!MP@0(%+Z1H5EMZ/$D' JJL7 "%VZ<D$(*(/0G&VT\@-!$j
M$%A $0054T#HF@())-#;;R@1N" ,)^26P&=*;3%;9%T0V-QST:DVW6L)T&9;i
M@ .N $(,*JZPPHMTK/9:'R!45]]]",T'8AHSZ<>??T3J5.&%&6[8(0@?ALABh
M:%7&:-N,T!TV!H*1W0AB D)6F1N2U4'9UU\@RM'66VZ@4*6:<$Y$V)=S0@0:g
M"$U/5D5215-)+D,  /\? P  312;CF#!% 4   PCTK@9PZ8.F3(@1(AIXP*-f
MB 8*7J@ T>2-G3)S0-!!@Y!.&3QT0-Q!DV8,&A!HPF1T\R:DF#)EW( 8\Z8-e
M'#9E/++) V).F3!R3)8A R),R(T(8Q)]8P;B1*0@Q-0Q8Z:,'(UO-'*,6N:,d
M0#<"SX!@JA6A5*I6G19U0U1.SCIRW*RLT^;E5;)B\GC,V,;B4! J7D 4&++Bc
M12D8TY"I4P8%$8QCK)09PP*$$RA&Y[ 0,K6JG,J<J19AFP+B'#IRZHP)B9D.b
MG<=SQ@"&'7GREBX[!KL)>3ES;@4F@0(.[;FR"N*CR?S> S%!\*LJC*21<WH*a
M':!TC".>HYCQ[P020=3QJ35-QH,$@1I-\T9F&C,@\KRI X),^Q,AQR-42!-.z
M'A& ":9  FYY=9I5,Z4$G1G&T?$=82!L-T4:>I1161K?24<='=9A!T(/("#'y
MUG?AF2$045#]) <;:6 4$AQO0#A222>EM%)+7,74W$0TV8233CSY!)101 76x
MG!EO7(5"&CW L ,(:8# @V6MS?%D&BNLD ((S V8@(;572='2" V!\D ;0B$w
M I@<BID="+1)-L86:731@@\@=#@F""E\UP<()2898'/AL71'3V.$(1,=64'Uv
MDE=N@.6&6&1!Q:(;"-&T6Q@"A576CN+)I2*1&GT4DI$#(JGD=MTA!"*;>CH(u
M&*N+(10"B"=PX<8)()A@0G.T,@:"#R 29]63P9;10@M]-O<>""@D*V6(G5E5t
MFI?2OCI=F-A]5P8;Y&69['<24N@JM"(2U4*$B=4*P@H@Q-#L@(6^<6A?%Y4%s
M@EO<N<NHOH]^Y2E3H$)E(DZ#TCN1?N5E]*Q\]-FW:T@IY<O?&_X!B&H"9%*+r
MEAQ/P@?BN$<FN60/Y5:X X;+IG%M @FH0$>6'P)F1I8D+DS>1N9!"1_$]655q
M\7YB]/<?",T5C7$>T;;+&&C5?L;N'!-6.&_, H(WD:$@F(B'OJ<9-1X(%ZV6p
M9$8;JPHMDTY".6UO=%@)999;=@ESG+;5>6>L(+0 8M/]"KNNL5==_6>@T&7Mo
M%AUPN0%XU67,>_A$AI4A+:H:"%!/4E1?4U0      /]& P  310&E-HZ8@4 n
M  P-% 0$ :E DS=DTIA),R8,G31OW,P!0><-131E0+R1D^9,&C=AV( 0TP:$m
MF8T7,TZA @+.1CH@4-!!\V9.QB0@&KH!(:=,&Y]BRLA)X2+@0$@&8J0 $88,l
MF3)D0'QIXZ8,5(H60[)Y<\<DRJ8)'T8,.;(CB"9:WXQQ 6)*&3H/W9R12M4Jk
MF:,)/LZA(Z?.&#H39V9DXO#AF(Q[P\BA4P=.3H09*X(@DW5GDSEH.+I9@_6Bj
M0Q!STN@IL^-BFCEXT]Z9&&8GV#1B08H48Q8MFZUC0+!Q*%2CFZ(*"!J0L13Li
MU2=?I 2Y8G+W7,EOX)39V09R3.ER3LIIT_HPB#1MX,AY8\?G=#I$05#!"((Ph
M7(9E\/9LBJ*XFZAW.-(I4]]D'3=_02319!:!!P<;#,%&41EXP,17:W/L%MM$g
M"H& G'+,G8:7&V_ -(=T8RB4QE4H#"'%"TP8T5F*OGWG!AQUT,$"4_>UIZ)Df
M)J*H8D0:Q0@C>L 1E(!;[\EE87++,74;5Q-I-]);^\D!0A(O/-&24-IQ!V 9e
M02(UPU)4W&&1&?\%&-%$6WT$6W^M1;75?&3T=X=0&8TQWWY1S6'13)_M)L<9d
M&8F!VQJH!0=) CH]R5,9375I  U+59?00@U-V-D1;T'AD!%IL,'?4I+!"1H=c
M">V$ IS]F3%>27N5ZB)>[AF6T1"+,B;'@&&8$:5):<BQ%PA5W8%@58LV1=11b
M!M00*4(B5BI@9VC1,08:1KSQ7YQ+.<E@&'^!P)VT:.04ADUL3?&1=X(MV"!>a
MPR+VT&V/N4%'&'HQ!<()7,AQ@HL\A=&5I&7,^)&X-FED!HT@;-OMM].FEA-&z
M8W#61AV_!D4@L4[R"=.TBG$;I:,V+"7""$\M1.Q'3^&!0A@LB+'47G),*\?*y
M+:<@ HU1C5SR1W6J:M7*V?;$7Q@VXS5G3TPY!96C-RP[*4,."1B815!H1@<3x
M/'?&X($)TL%&'B!0/.L8$:W6GU[[-64P7N)]1(<9_:V\Y!T?S>5D3PGU9*8;w
MQQIJ  Y.-QOUF?QRMT89"WG:V1R-N;186RPEGA%(/\TQ8YLY]3I&'6V4)R]>v
M5#PQ!5-_<G[>J)K-A6 ;L TND5$"^<U$&6\ %Q :"%!224Y43$E.+D,  /\Xu
M @  ,!2PD?F0DP,   PCTK@9PZ8.F3(@>,RA0R;-&Q=H?#10$'!@P8,)W\P1t
M(Y ,1(D4!1(TB%!$$3QTRLAQ U'$1"AR!-)A(K ,BB=FS$PI0X<%33=EIM )s
M(Z?GSS)%W)!),5$F")PZ>>X \4(%B#<YY_"\:@;$4:%$Z8 P(^=-&Q!BRIP1r
MZ$;@&:YCT[!!J.+%Q#%HB()0\75H4183$_"MF93,CHE[ N/5"U6HG"TX8'0Yq
MK  $) 2+Y8"8$\9.&<J!TW1%P<8(FS!G4H!(K"!! M$@4"R4,]<-"B-RRS@)p
MTZ:,:A\@;MA0S3H!I %FX,1T0\>,;(8JY; 0(::-CKBU>2.D\^8-"#9OW)SAo
MXD9$"LK&!Y3!DX8."AGG R?H0]4J[+KR83^G7<8V[KF[]98"<8$=-\08X=TQn
MQVVY!>@;>@8BZ(:"*(C A1SDF8?>?/6!<)]=K24@!T]UK 0"#%-5!8(=812$m
M4!IGN/'&B&3L!2*'*GX8VFC_Z:8="":8 $((:)B&&H$AZC=;;0P"J-UOP0VWl
M6H'(*2>3<PL=)(=TU%F'77\_<N<=>.)E&%]KQZW7WGMGND9?CEWA%^*!"2[8k
MHX-M)D#GA N*H(.&@;UI7YPWZN>&D:E-&>(<5C+G7&-T<%D"&=>)P$)C/.6Yj
M)X60RM&FH!X2.I%E"'#F&0@]>$684EO$,-FHEQU56*M=H K""5S < )ZFR[8i
M5UAGDBHKJZ[::NIG.\8V&%"%#9DJKFZ<H%JO%5YH)F4@@ J33$?9.!$:"%!5h
M5%5304=%+D,  /_H 0  ,!2QD?#0  0   PCTK@9PZ8.F3(@>,RA0R;-&Q=Hg
M?#10 *4.G2ISPIPI@R+%Q#T3$YB!(T<@'3,H%AZ4(X=%2!%BVN@ ,:=,&#ECf
MT( P\T8.B# @SJ2Q4\8-33HEW9P!T?-HTC-S0 C\N3,-&X1-S5@M,X>+&Q$Ie
M=H0<F?1D2H9E6+I4D$#$G#QNWL"9DV;.S)@@MLBEX]!-%Q5Y%SY-F:)+7JU7d
M_WH%*Y8M69,H5:9M^7)O7[N+PXXE"?GL2LIL1;08 X*S&SI,W;#)0W7,FSJGc
MF9H!T28,G9P"E[(1R!5$YL8B39N5K/9E"X14PJQ!Z*8,'M0WS]1I4Q1Z5#IHb
M$,*Q32>MF]^;RT9&6SQTB]E0C&P%(<<FF=+<O4<U(^=-&ZJ($:;?"MZQ\/&?a
MK=56"SH1\08(<:$F7%57(1@&=5U]I9E_XGDVF8"BL5%:653MMI!L#/;FVFEAz
M")0;"-AI%Y\<;A#FFX3 /78:@!<:9]2"*8*0TTUAC-&=3V^8849-J 6)8G;Py
MT?%CBW.D\")CX75&'&@#1D775;&U\<9!+H @11ETU,%B:JO15,<88W 5%0HPx
M.)E5B06U!P(*,:307W 53HEA"WAL:!*9K.W67%1WH)%&3K39AFAU:;179G]]w
M@/"""A5=E-%&(*CPPD0:0&(.&@A214%$344 12Y#  #_J04  # 4QI& RZD(v
M   ,0MJ 2#,'1!@09L+,H0,"3A@Z=,K(<0.BS<,Q:-*X.0.B#ITT;-+0R<-Bu
MH)N(;LB4(0."SAL08LH89-/FS<(&"M*H/)EF3!@V)A'6<3/FXQLW/T7F:?G2t
MS!DY9>" 0%'G#)H0*6!ZK%@'(T*%$>6X )&$89TY9>;@I(-&II W>22V:/+Fs
M#=299^R*1-.FI$(0*N>,D9,F)DN-+=LV# -'8L&0"U?"+,/FS1T=.'$2<5%Dr
M[!(W'M&45.("R5BZ<@C/*6G%A92Q4.0\I,-"A!&P(*#,EDBQR<6,&X-.H4-Xq
MXQP1)7%.21*D"0C2((:\:0/'HXN2-E#(2#%ZJ$P0,7+<N%%RAHP9+6;4@)%<p
M 4XM8X\D9<,"IX@G%)-0E_/&CD:.;,ETA5T+1:>03%(,Y<9_(%"11ALRO6%&o
M8F[!)1===LDT7'%GX.0;'1@Q& 0;>1'&5AO(@8#3$$$,T41),LB 0@[<@3!%n
M5'2,%=X-.934XHLJNJ? :U.,]59<<HSF0I$@8 A5;4& <%N!&S)X8QARA!C<m
MB"7NA6))++H((PPHQ !#C3@]492.XI$'P@TVR-#">#*TA],18ZD$0FLVMB$2l
ME-%-YY!J1X$@88-H0*4A<0Q^J"5'7.IUXG'M32$A'7=@*5,+N<E65$\RA9$2k
M"$7@T1AA91!51DEVO,&&CG6" %X..,1:PPTMV&"#G0JH ,D (#CQ!!5%@. Kj
ML%2T=9>F((PA$1UA(#9''I$)I%)C*:4Z1AII!15@LV^HY ).4+!1QH'-MC7&i
M&B#<T5: <H"0QQMUQ#MMM1VA59 (&JF$APB&QBO"0EDF"K!+.)G1KT'I8AE&h
M41(%=1#!_^F0&$$&F6%&&445U,0:1*0UAA4<NS#&N J,.,=+&'',KKMEP"LOg
MO?92&Y% 9W7+ \7&N8"&#P&#L#.C&_GL \K)8AR&QAS349!%(*)A\@MBM&%Rf
M21^'+!C))X_AUZBQ:40'$QJ583+**K.L[LOO*CMSO2#<>S,(:/PE@AACO %'e
M'B*,E<2$*Y>$EDQTV5&&%&GI5(?98V2F0+(R*6QN0<QF+3+75W<J-MEN,%Y2d
MU9F+RA).I7+L$>,6HX6E5P=)'KE=%"X&$6]J*5!J6&[X;+%*8[#AL%%N%'1Hc
M&7C@7OL1,>M&AQ$@H0X"5&$<1I%#LT]4D!G\"=1Z\P:-BI994AUD>%&P2XA3b
M M3C#IC(A,'ADAS'5R;&3R9;?(;\/X%@!Y9IA"'&Y%/)&W7,!:&3,(54Q>.-a
MSU+@H3"LH0Q:ZYK%!G.NB# L?;Q9GV#:]SZ$E*]SLL-=2332NSJ0X3_GF\,:z
MTB 5:/TO+26)V<D:^, IK! .]:N( V7R+16RL"7^ Z 9/B@3#$Z$AF5PG<7Fy
M58=FB0HA:3A#O7B8$>&!D%X,&6*\F @_RIBA@5$S KU2DD-W/>2 9'@)S"C"x
M1(,4I0X_8<-2C) $)Q#A@KN9" @X!8?B,.1/YZL#',CPD,CY[@RK 8$,46:Yw
MK95L#!:SR ,9-KX.'LJ(% G,8%CXOD2>(0V&H\C$B-8A!23@4)V[0T@ZUP*Tv
M#*J0+,%D[0IWN,2187%E; L;Z04N"!WP6ZEBR:&^)88Z,"U)%>D/%<L0R."=u
MJV"2$0%4YJ"X,ASL)<0LPR?=L*#@B"YNT)(#0\)PAFBY@5Q^Y)SS^BBVV#&Ft
MCWHC3"'!:<P)+2TL4$P)@PX"-8R0RR-5F ,YG>>G!;7 (M,;*,JD4(0@$*$)s
M1; 86S#F.N4\$R,Y_)84G>:W 9:A@$X#@1#F@A=)\04$GPPE'JOG!L'=\'PNr
M%"+LOH7)K['D(,4\Y@%55S"<@ Z2.M3(*LV6S(7(T21AZ6/,&/0M 2*4)4/Mq
M'DL^0H8\H-"4@C0(0X!)1@.Q@0T%*=T83N?!>)W+*ZY#&>C0,,&C+$143O.Ip
MU> 0R2<ZY S,5  :"%-%05)#2"Y# $,  /_( @  ,!2RD46$:@4   PCTK@9o
MPZ8.F3(@1(AIXP*-B 8* @XL>#!A$3QTRLAQT_"A H%T0$PI$T;.&#0HH(2An
MDW$C"Y5TF)1QPZ*(&S)"ZI@QPT+DFC1P8O2<\A..C)Y$RLP9DP+BR9(@8+9Tm
MLZ7+#H@@HZZ4Z>:J@J=R0*BPB5.G&:]RRIQ),Z<EB#INYJ0YXZ8,&1!ST+R1l
M$S(K4: QJ@XM*J.JU[9RZHP)*37I4K&.QWC= S%!VK5M-8( *W9-SQ<J0 @\k
MB$<IB(P8Q;ZHG$"%FAT@0(N^6:;T'*TL-;I17?DR6[=PY=*UBU<O7Y] 8<N>j
M4Q0$F=]A!B)4L5I! LXJ8))E45E%SIUDE8>&\P:DQMMTWH!@$Z;M9C10!>*>i
M"B+ZW>]F-%/OK?:W9LZ2000") CXEEE8P<U5UUUY[1524F;\!8=7E>%'%@@]h
M@$ 6?EXEH-U-&,ZG&P@KX,85""V $ .%UJT18F0M^# %'271T:&$(<+$50LKg
M"DC@&"%FMU)X/B( (8X92EB8CC/Q:%5E=Z"1!AL(H8""BRLD650*(/"0H84Wf
M<4F9 @-"D(89(*"@@HL]9,@4"&,.6$ ""0R(@!HY#GE3AY ,0(9Z8R8 "0%Ge
MIHEGFR)N)&9ED!0@FQEOP'57&G2X(!*-Q]65VAPDF80&HP6$ID8=[H5AAEMTd
MH($0'"O1MY]UC4:&H@^7UA@BEB# Z .378&:%AUU;(1"#"GP24 ?L856Z*N"c
M#H!LE%-6J4(++1R:X;0MK%&LCQ@@B9Q16ZC1@E2Z/6E=G006B@*./'P;F HHb
M)#C<7=BEL$87BY))()UV>BOAN_'&I2!Q]=[KU8 8].$C!,B6P0:G<++6;W-:a
M K8%O/(N^!Y4*MAK+L+JLIMK&1%N&;&^"/!+H+='%G4P) DOK+!UR,H&+96\z
B6:?KC+9FN$8+*6W5)+$=_AJL&RC L*T"-8<V4DDGY0P:  DOy
 x
end
Technical Details
Message-ID: <14799@newstop.EBay.Sun.COM>
Path: arc1-ca.pugleaf.net!wuarchive!usc!apple!sun-barr!newstop!panarthea.ebay.sun.com

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!wuarchive!usc!apple!sun-barr!newstop!panarthea.ebay.sun.com
From: koreth@panarthea.ebay.sun.com (Steven Grimm)
Newsgroups: comp.sources.atari.st
Subject: v03i028: bm -- Fast fixed-string searcher
Keywords: arc, uue, C
Message-ID: <14799@newstop.EBay.Sun.COM>
Date: 19 Feb 90 17:54:07 GMT
Sender: news@newstop.EBay.Sun.COM
Reply-To: leo@ine.philips.nl (Leo de Wit)
Lines: 390
Approved: koreth@panarthea.ebay.sun.com