Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!mailrus!iuvax!bsu-cs!ibmbin From: bobmon@iuvax.cs.indiana.edu (RAMontante) Newsgroups: comp.binaries.ibm.pc Subject: ed, a clone of the UNIX V7 line editor, source Summary: edsource.arc, a clone of the UNIX line editor Message-ID: <3780@bsu-cs.UUCP> Date: 27 Aug 88 22:00:15 GMT Sender: ibmbin@bsu-cs.UUCP Followup-To: comp.binaries.ibm.pc.d Lines: 574 Approved: dhesi@bsu-cs.UUCP [ A line-oriented editor similar to the **IX V7 'ed', apparently originally written by Brian Beattie, and modified by others, was posted to comp.os.minix many months ago. This is a port of that to Turbo C with other changes, by RAMontante, dated 17 August 1988. It has a few surprises. Interrupting commands with control C not only interrupts the command but also aborts the editor. I couldn't make regular expressions work right. This article contains the C source. The next one contains the executable and other support files. ] Here's the second stab at this. As you see, its many NEW and IMPROVED features include: a man page; cleaned up source code; an executable compiled in Compact Memory Model -- probably unnecessary as there are so many signed-integer counters running around to limit things to 32,767; and, last but not least, I've sent it in a .ZOO archive! HaHA!! -bob montante [ Alas, I doubt that the net is ready for this. (Rick Salz says he never received zoo 2.00, but 2.01 is ready to submit, so perhaps we'll reconsider the issue when that is out.) I repackaged this submission to ARC format. checksum size (bytes) file 38373 33914 this uuencoded posting 41832 23702 edsource.arc Name Length Stowage SF Size now Date Time CRC ============ ======== ======== ==== ======== ========= ====== ==== ed.c 44224 Crunched 47% 23671 27 Aug 88 1:29p 8ae8 ==== ======== ==== ======== Total 1 44224 47% 23671 -- R.D. ] BEGIN--cut here--cut here begin 644 edsource.arc M&@AE9"YC`.7_?TL^``!`=UP``!L1L&OHBL"L```,+U0T4`!"!0@09C025.& M!8@E94!D!$'&+1V68DB6`7%& M#D0Z"4'4B4B4[E`09MZP8?/F3AHW9^S*[3M3+DJD,5*X`.'DC5TT$\\,;A,F MKYC58<@,%MJXI$LY,.?(#2.&S>`QJ.6HWAE9#@C<<.2\(5-G3&J&""#"[H8(,0*HB4=?")\<80(+2QW$Y`V>4;1'7` M`0(.+\1PPPLXX.!5$$W(]9`;B`5XD!'PR6?<9<6Q]AP(*,#QAD.79394;$3- M85,9=(SA0@H@Q(101'J9`5D:OLGX!0A79HGEEEIVR>677H8)YIABEHDE2"\, M--!Y"9Q5%'X@]`#"##LD$)!B>"P`6 ME*8"`XUPV1ALU"$;"#PXU-<;+J#A@YH*2&J&;%)^\04554@AQ!-#F!KII)5> MFBD=9+"1AAB=?AHJK)8.EBE8;H3!1JZO&AJKK_4%2>RNQO:*:5S+1DKJ964D M\`6E,+D1(@HI)+`#J".4$5$:4H)P)[FD8GEJJJNV>J6CH`X4$$@)C#"M&SI! MMM=V;K20W'E!@A#$%$,DD<1I$X7A7)%H2EN&&=225@43"<"`!PPPV&F0%T#` M&^J]@Q7QQ!057YSQG>(&)66RF'EL[\,13_$$$B7#$(/&('@1A,L@@S`%%5C4 M+`/.7@C!,\SX@E`$T#7/0#2&*CSZ,L1)BTQ%S3003<315(?L1!0UUT!T$5Q' M',002]1L`]%&E)VT$$50;#$,-Q!]A-N#"4'RW#@0C03>("!Q]=PY$'UPU`YW M#0(31M0`7BT'T$H`;T?C<8Q#-!.!#2%$S&40W M`;C,-5=[IQ=.O)Y$S680_03@1#!11,DQG+PQ%+P/<;/%,=P\>Q3%#XW\T+-+ M4;S3R#L]^Q3%9XU\UK-3(7D0:2,O]NQ5O)Z%$\"O/;L5@"\M!/!USWX%ZD&@ MCWS?LV/1?A/`%SY[%J^KPON0][C9::%]!`.>YV:WA=#M#0\Q*-WLN`"X(SPP M!JR;71<`)X4+RFYC7@!<%2Z8N]E="7$?0]I@I@"%DLE`>`V!@\(&@\*I18P( M<2O9#4IH$!PR`86@"D@"B("TB^!G)V^04AN0%(86`"=A"RL*GA)3'AG*A"AS MT1%P@D0OY9"$6G,8S>*20(4A("$(TC,!:88PA---9#9NX-,4%1*&G6!D#>(R MCVQ@1"Z:%.5;TDF`L-C@F-G8B$.X:1(;=`,""Y6$+F_`XUS2L,>90*PQ'5(8 M'>H@K(;DH0T68@.]P$/%N?P)-V>H`QLF@A`\)$JB).B:,+%765($_!_,$ M*7QA"EG@WPGXL%$0$(&,5'@",4U0TB=4$WTG0$%)VS@R:Z8@ET$T"!-2HY.H MP($M%T&,0N"BA\$HRB5E<"50$O/$AB+&..1\BQA1D`87E&$T?XJJ40:TA2;J M88.6F4PK90BE\YA&!C;P)"@E,X<=G-.K,&A!#L!*)4(FE:P*,>N<;+"DANDR M8FV3H(7?Q4`&.(C77Y-&!2E4P;"92YH1@L"$*?P.!I$-F114EX`6R""S M()@L%2B;@`2@H`B;;4%H0+M,)QRA"/(T+6JEX-D4@-:R5/C"9)-`L=.FECVW M%:!N@\!;V::6!K:%E'*!62TA5$%TJ!UL81/P0AK@SR#U@4D;6A`8,YBA,40M M0TKB)*<8@``-"J$4>)[J,=`FTPE&D$(1#(LS%7(&RHBADT!<[&":$`0LO/=W-3@LSEB#!^W4`92-22)# M=_)3XQR8AK14(0@HC`4HZ).Z-5"?03CL81`;1\1-)?%\R@"'57IGB3`"@16? M.I=VJIC%1G`"B\@F@QAO.`P=AIAOM!.&)38D#45MKW(#8A`0','!G;3#1%K2 MFWP5),)WLDXDQ87(P9!2(74Q"1L4,F0LTF4\/8Z)3D:#@CS!!H]6Y!:3M$R' M//R45`EH:@*$0$8*0P&0A3[TPQKRE^9$Y8YYW,-`$AV2&G9T%10 M,YH*CBZM"L1P$=;``=3UL30D)9D`%>`+#W0`9!^L\X0EP!.0H$WI$J9`6+*% M5\0H$#8\DPNJ6#LG`2<&@:85D``V0?L+#HE)G>K;!C@4VB8)7H/'$N#LJ)RX MUFSXPBOM`.M*.P<$YU9!NF^=ZTTK^MK=-<,68M`%74/:T`F9=+GA3:T$7!C8 MRF537\*0F?)N^TX+/\-V@#2&%KR!)'`@R0\@L\K,H%#1*I"AXQ-90`+5%@=%8?C;`YA6&C4PX*&1E[DZ3'G5QW'D(8T$-T@=UE, M5$3,KQ:,O>PC%D]LP$Z'!&AK,J7&6=J#S'95$C+'")F$I)X*9?!B:@9/1DV MWG2//XI-V[%\E](6WV5H)T@&U_`6ILH@(YB((\&',Y*&9LH&L%X1-T MT1M;L$%R,FT)(`+\1Q0BP`()8`+T%W14F`"-]5@LL&E0*!`99 M.%F5501=2&TB8"L.,895R`;UEX5;J(9>N!UN."A4:`)RB(6EA8:6M89/N'53 M=Q%C:`*$2(,7085U*(A?F(A4=XB0N(@)`(AV2&V8I0!]@'#RH@(M``E)$&&B MDBZF@BJJPBJF4EIIEAP]T1,`MQ,HL!CX$G"K-V@19@=O0$D0*`"(YLX=HX,&7-A M``'AS4`=B`)'&(9`,U8_!J)(M:1,M"8X@IT5H\)`OR6N^ M5CLJ>1X967>DP@;;2(P@B8X368+M6)(GV9)(Z8T-89)SH`?@*'RUMA3E&!,H M8(_@&"EEL$@?!`(A4(KL@HHG]"@#D51$%FIR4&OU,09,P2V`9)985&TQQXZ# M]`9CX)9EB6MQ*8[D:([@J([45&OM6`;ON)%XJ0!PR8MH66L5>9'@F)ANL)@J M0)(F>9B0*9DT^9`R:91AL`9(>9A227S>%FA9&2HI0RX'<2=@>8KNHF6=^`60 M@``'T00*HQP[@260@`.B2"Z,H410%BD'T3,JE%!R M<1P7-Q..%R#THA1,X110P2-CP"1!,!EYE`2C@02289(_(5;(*A;BD2=RS M-!"E*IB=29BM9IA7EF7)M1AP(7&)$5Z`Y(1"1)MXU"1>%Q6Y:AF/%"A85@:$ M0G5A=!#7851I4!1185]RP(*;5A`)\">YFATN(0(&.X]Y!2.$@AST85\!@[)0 ME@9M\&$E&Q)4)T8=JZLBRBG!VU[>RJGU]=K'_R9SL`0(KP".%FV5J-#+#X(GA,PAJ389?`RW^X MJ[BTFT3#Z[),D@+)I6JY*B<*"RH)@!M6.Q?)6:H%D0*N!HZ5JERO>A'`.P;@ MMI$V080@4+#RF+>)UK["(I*BYJ^O-A`,&Q)3@"2FZY]^\ABY6A=$*+4FFP12 MXI_,Z6HM$%YD6[3BT;T)<21<*140S+WP4;P&'&'5YKEV\9]RH@+1F[?AFZO= M['0B[?%>XQ7%ZS"/FQ0-/[)^/.\4I MH$ZZUHF0,+5/HC(JT6C4=*H'$:HP8+>=F`!O0),N,`9',2"TF21=)Q>#46=7 MNY7C85\XEXLPDAA.- M;,UB]`0V8AEY8A.CO'UBI`+MUX)%BQ2Q(6:&DAAU,0<\K!=N4DBZ:LU,MH M(;$Q\8%W)TH#PC)G8"063!MRX,\F#2BAY`:$,@7QI MG9:K=M9\3&VHY!>-P28M[1V`N]>#(2>JQ8-2`JCPW(),XH3D1K$?V",QT0(^ M<$>'C<5'MX#)5$9G)`4ZL&GJA)J$S=;D5,(&019YYM$\DMO:5]3C9MJH/7VK M/0!BT-IK\-J3/1C"5-L)<-O#3=PA$*"6DZ.:?=IDH-#>D=K+W=PP\=S:"]L+ MR$O4;=V=?8*?73F74]K>#=Y_'<.:S=S.#=VQG11MM-X#(,1O3'7`N]9C#=J. MS:K4V]W)/73W3=ZN?=[1O4;]?=^<'0(!_G7MW8)D'=H^@.#RO>"JW>#YC<7E MFP`ESMFH#:#;5\3$3<--\MT=37O:&]`H(*E^W<;*-1#9-A/^V9(T*=8W!]HV M4=3)!7('%GR]!D^U!M?=5X)%7=O(1X_)7D^^ZUZ(>JD7H$N\1J?;A`DVE3B!%6K)%6S M_BB%+N9R`NCT!KCJ5%"5,=$?6$>ZZ@9Y89<6:,CB(K:,Y^FV/0`7L>$);ML$(.R&;A`G M4-`#NAUW(&1,;4>=_ABV[E!3/>NZ>BG@`1DC/2P'41K[?@:F\:MUP8J*7D@$ M3Q]K)R5_PM-BM#.L6&9M<%Y$,1AN0?"U;M&-$1G):QF*#/"87M(@\.;`0?!I M-V?GE76#\1IY%,"_T?*X\>W4;A!&L!=)564]5KLZ#]I$!BA=U0)?Y8.$@@(P MCP8$3Y/Y`A%Y01DU)P=.M-]WD!$5DQ0RQ!-*R;Q`.KQ,_(;$_ MAF6=H#X(2F?1X-D75B0'-NT`,S5W/B MLMH$X/U89P?)X09MT`,Y]V'"3@!W3YWCCJ"--^C570"6$)"<_?F`;/N1G M3;UT7MT&,,HHX/\Z?"=@._$HM/^[9L6#P?T&D*%M;ML&4/XVUP/K'_YWX`:K M;0#Q__[KW_X[I]D%4.*F7>*F3>-DGGA8+=)P/GGW7>(FCA!AYOMLN MM6QT7NB<7?XV=ZB)&O]M`*`Y(-]FOMPBMQ3BL@7QWP9,V'CCC23F+WT,/NV^ M;N#8CVN@9N((P958S-F`GN>[O>=%H/_L'0+E;W/R;>;+K7*8WG+QWP:2RH2- M-]Y(8O[29]_3[NL&COVX!FHFCA!Y@S2TO3M\[H>X1S]1-&W]HQ3VT<\2L5:/+&0?7=VK$[VTK>X6U'!**#@1C= MYJ'Y7QNF M,9@2_1JH80=Q<6.^:0`(\ M@M6#U'CY1PX=*ZL40E$3"HX>]OO[,1 MG,$3C+5,71O_/A@IPWC1%O#L);1;251 M81,'=L8#4;XY=1!5!M;1/,TF.P5'QZDEX45A(=':;$IXYJ&#H?=QVC)'9>Q2 M'TCHW'AB5`0*TW7<#&07WW@0?!?=]D8*@BO>!E!VM#1QH<1!)4/=&E1%+!%7[3:)E MNQ.C3'H@*=$>^E1K:+(DFK7A?",P8AKJWB-,7;/__ALF[W^2@?6>C_>!1/5T MENV\^*@[,"AN70LXP:I6B02\B4-0B4&V+GK7A?",P8AIM>!F$$O7\ M?AX<=F#KAW MSR/QWP8\D`/Z#X$3L13BL@7QWP9,6,YR8.TM%_]MP(2`(@*@!H$3H7.2"FHE M'M!MKHF6&A(;V9'17&MVNY$=">2UVV"AGEQLVV"A7N:N_(NS!8X)\'QRD'UR6`VP6(7YJJT6#@6%J_N^-72N;W/9)FH!QM$*M^WY1B`']E<`?P5P8U%Q%% M7H)FH!QML.48L>5+61#X<@=;CB\U%Q%0#G)LN>5L*0.`6QS`J-L\>@=NQ>4F MZ95R(C+84Z!V(2+GB2\U%Q$[H/^:S.4F^=DG104II?W%`8QP(&!R8@;*L7-V M`0<"=IX8L0.'7=T$,)EP(*G:-YEP(`.2BOZ_RY8JC"\U%Q&E70`.;M[37N() M8,5X7^>4F^=G2-`345`3ZKTY(*:G+S=DG$`,#BO]<;I+KSN4FB2D!F@,Y M2N?530`MJ7+_7\YR8.TMQ^4F22`G$`,GX'G=K2C`"`<"9OTC)RY;P.4F22`G M$`,GT&]V`0<"=IXJ5X3Z#PD%,)EP(*G:-YEP(`.2NMK\/]ALJ<+X4G,14=H& MX.#F+>\EKDZ[9L5X+^^3"0>2JGU<;I*@9N((P97W/9EP(*G:Q^4F^=I(*:F@ M5KZ;-LK`"`>CC`)D M+M@\\I/;F*;7MZ9,>C[%M24)HKR@9BX.MZ,9I6"8Z:'*@H^-D(B;-%#*F2"FJ*@@(ZUP.J76,( M>GUKZE8Z)ZGZ#X%_H7U]^1-N8TZ!XZ%_KN9">0VT6!B8$5D2[UT7MWI M/]AC0*@G<`8Y*F1_(=HZZ"1,O#C_]01"L-R[9L6#P?WI/]AC0*@G8`D(@.@5N(TSB,%708QX`,%708"AJB+0RTQ@*!DGJ6S MM:25^\LYK@!"A)#17&MV>R=/D#2Y#_"#Y.]-2QR&)]4]M1-"&\$P3(1U8%1[ M@52&G!%(<;2<@1]B)`0D`9Z$A(TZ<3E1$=!6CQ"&O!=$6`>UVR$9?3EK)P9V M$!?@@11U865]ZB1$H1Q2U!9A\?;@B1C.P1N^\0+(D1$/X>T<:QIPX1LN3:)W M,!&WCQE(L41OP7"UFP0GL%#^(/=#".CD:$K,JK28;=G:@;* MT0:Q^@;)!7K*T0:Q^@90+HZ1[A!;GNM(:&MFN>5TT&U@[KEFH!P??YY.6EIF MH!P?[W";%NGA(2=]^1<]@AMVX*-FH!QM<,:;ENM51QA(8H[TYJ,8<<:;1F_: M%^D.(=I?$.QN[J=Q3F]>*2>Y'A4%RJ.XYI5R8@(%709D3N>>UFW:1V^B_07! MCL5F@!MQ+NB@9G=FJ7UTT&V@5N+X>!GZ&.D.81.YCH21[A`VD>M$26W7MZ8+ M(;QUP1!FH!QMD`*_!VK/)P?9]^NX80<^:@;*T0;@Z,+=BP)D_LLY_GE!AHV+ MM(TGEJ8G1AW5UWAED*8G)@-0[OW%UX=GT`-]:(9"!KA]*'0A3FVZS1?9""-` M7@9I>F+4`6I]*'3%UX?VMVD!W=;EFU,)H!-*(LW4[,@Z<70_U1!EX+K/GB]Z M)1\?BQ"NJU#"8E]J%4H;ZQ6NS*G27NT9\?M1,3`%F MD;4P@M"7]A@Z<72'QE"WWB2/_QA_`1%SX*$5#47LE1VCC!9^I1-WF;MQ76M< M#N5W[1!Y'7/^#^:XS>5>*2?2-`345`3ZO[WN&\)<#FJ[9L6#@=B`FKN2"FJ) M?1'`@0+Y66*$G;OZC]Z#8:,XZM_^KWW2-`345`1UXN#F7><1?@)3<`+^[?_: M-Z`G4"<.;MYU'N$GX`0GX-_^KWWP?0)UXN#F7><1?@)4<`+^[?_:5SEL7R<. M;MYU'N$G(`0GX-_^KWV5(P8G4"<.;MYU'N$G(`4GX-_^KWV5(PHL5#8C!"^ M`61T0"][@`>[MA=YXB:=Q,U`AJW`NP>\,0:D\A1IH`9KP`9ML!UP$`<@6P=V M<`=XD`=Z4+XFVR%[X%6[]D8(X;H*)2SV];YB5!H?.M42+1%(32_YY:N3M!-W MM51TM!-YXKHTVTE16!0!HH6LOD00`8MPX=*&_T9XXOG233`&PU"W3B^"PB13 MW20M<$!N?[0/H,7/TTF,'G_&?%$KFM`5\`5@L.JP@0L/]180##(*0;=M<.D= M7G4-(0=C`+CU7Q!S(`>ZK$9<+@?^F=W@:2L?K_^:7!!S(`?^F=T@H'OWG M&\'A6(6A!])@?^N;BA\=D( MB;/O>]_G&\>Z=P)S;!-L#&H)8,6#P?T#,`=R,`:2NMQ"S.5R<*`%T6=RX)\, M01WZ;]J1'AXA/`=R,`;HG^M55Q!])@?^R1#4L=R[9L6#P?T$$.GA$<)])@?^ MR1#4@?ZY7G4%,0=R,`;+7>+J5/^*NP*1'A[XG^M1(=_G&\>1[A!S;!.A`6HF MCL5S(`=C(*F@5N*C#+QS(`<1^LLYK@!"A(WM3P?17&MVZ_W8V/[;:`;*T0:Q M^@;)!7K*T0:Q^@90WI"`:P;*\?'":P;*\?'G&1I9.KF0H1P[MVEU(;QUP9S7 MMZ8+>GUKNJ08`>:>6Q?9O>)T7EK%057:9P;*L7/F@2ER@A$8+:G:W_YTX*.- M&90T"F]SR"-EF*5IL*1D#HZE]7QRD'UR@A&@5KZ;-LHH0.:_G.,*8(\$V(N_ M6!_M.X?Y']=JN8,/:`=SV'A0_KL'5L2=^[DE<`,*,84'!HX)4/]<_A?KSN5_ MX95R,CGZK\E<_A=7.J`#BJ@%41\J;#$[I/_J-`>*'=9<_A?ZKTX17CELO][I M[[EV4'^E70#+V(Q<_A>N2BO!"H[530!6C/>V70#+"*CUX:JT$JS@6-T$X.#F M3>CJ%.$^M-X$L(PRA4NN2BO!"H[530#+*%,_<`*N2BO!"H[530`.;MZ$KDZD M$@:J1`?K30#+V(Q<_A>N2BO!"H[530`.;M[37N(FCA!<>=_+"*CUX:JT$JS@ M6%KU(:F@=N*>:P?U5\3+&!PRY4O@"($DT50RM=TX#BKV*&0DP8QTD)#J>Z+: M5>2=-@:`)(V^HY9_H5U0OHPRA4NN^A?:!8X02!)W"8PF,`.A05)`<`*N^A?: MA>,YE0!0*Q;17&MV"[5BT6=_P0(.G%U55N0E6!_HE[T*((V^HY9_H5U0SB;J MJW@P`FH@QY:`6QS`J-)5MWTPJ=LGZE8LS)Q[EVOZGVC:1XYWF5U5!HZE];O^ MN=LB8P3ZKTZ3"0>2JGWP?0++/9FZK30CL]R_NW??V-TN^)`BL`5)8"C/7/0? MFNOF1BU=(`+@6.BC#(PJ391U7N*:[)^[/3GZKTZ3"0>2JGUCL-R3J=M*,S++ M/%_KLA,(G?J(H&@9IMN_X!DXA=1\@H5-T$ MX)]R,@8F<%@WD'C)(B);]TB$C$*%+G9S0'9I(*D#N'?Z%14H5%HEKLG+2N>% M/IEP(*G:-P:)U[8Y;1-XQ&/F$14H5.A[1P>2"FHFCA!<>=\YW522FGA[%Q4Y MO1,H9.*;5A](K-*AS6_:)S)3(-A0G-VDP03Z#X$D\9`B8'0)U3(G)@+@Z&F0 M=W@)(:F@E@#U#\5R0HYWF5U51KU>*2K!"4@1DRA[N@YLDO6WTB`(ZE M-3Y,GU#WKS*C0)$81QR`K5BT6=_P0(L=F$L8`9P0+U$RGSZ M+W/-Z^+UX1N_6!_@6%J_ZY!]]A=,]3A(/*0*F!Y+:&K*&G!$B`(Z% M3A21.JDB7MZ@9N)8?&)S(*F@5N*AA^EQ;@9P`(Z:3!3&<9YD+LJN_(M$(0?@ MV,$\$G'ZOXOGX;DBD+HGMA.I>[NR.H4G9B2W*ZO@6%J_*W9S0'9IH/V=^[GG M5`(*T79OEP9=,(5B-P=DEP;@6%J_F]--I?V=^[GG5`(*<7==,(4YW53@6%J_ M:W22I_V=^[GG5`(*<6*/9WB2UP53:'22!XZEM8S!(5/;#8XFOFFC#+Q$81SD MFYH&@8VM/7F*Y?W8>`0<7FUNY'UEUR@IQQM$*MOD,>U M)GM+A'X;*8#ZNVG2Z#NU9@9M+9=U=V!'8LB@YLDO6W`8_(`)A(`(Z(`)W(`*]3.V[[003PP3Z#X$D\9"$@8A(`+@6%JC#+RS];Z@5KZ;)BAV0*9FT*H2PP1,8!-? MD`1/8`1"8`0VX5S0Y5'$5EC@"&THJ'U]^1*X9`>3:9P;*L7.- MARER@A%N=6"2JO_D]A=LCH*B_07Y!FK0!D:2"FHRU[PN7A^^\8OUP22+J]I7 M]Q?."]\#BD*E];MFX((/61^)`@=,LMLB8P3ZKTXN^)`B8'HOSQ(?2A3*(0[NR*KLL<&)&`:$KG,]\'QR$'V@ M5AQ4U0/,9QX\<'UKBM&2JO_05AYRTIC;J'/@6%J_FYE`ON%D2[UT7NBCC`(Z M!XZE5>*!^_'"VQ?&L7'TYJ,ZQYX$V/P^JG-GO&DE3N-*LUGO^\LYK@!"1(Z6 M%\VU9K)YEL">:>&Z@H^-F3H_]VET27 M5P8]4(>@1FY_P99Y@`*FERB75P;@:.((4<&('7N75P8]8(F@]J8\3*=V6@9X M.D/0K=M3XAN@E@#U'Z@HN.Z!BH)>*2>3L^Z!BH)>*2>&6J"**JC&D=V!0P7: M/YEP(*G:%Z@H**F@5FMLJ7TV>@*O_;OUX1N_:'I,LMMD3N>]3A(/*0(/QJYP M3F5+)`+@6.BC#+Q.,#&G`XZE5>+EZ[N>6Q^^\8NFQR2[3>9T7EHN^)!?."53 M=GD8"XZE-1R67(G``,#6J"* M*JC&@?\GD`,GX%:2"JGZKTXZ1[@ZQQ'!PR2+"ZB02B`G``,Y"FHF+LJN/!$G\`,G0-WD)@?`X>MZ,9I6"8ZE M];N!BH*?O:SW':@H**F@YL+=BP)4XY%S(`?`844LX)^[?0(O<`(_$`,Z0.:E MB=Z#H7LG0-T1[GLG0-TNW+TH$.GAL7'/)P?9EQ*A`;@17CDG<`+4+9@(*>M^C?%I/8`3@6%H!?7N**JB1NK@,(:"T#+BD M$@:J1`?4[<+=RR-3(ND;)S)MDQ)LG'B+L0;Z/A?^01\[@4(F/A"[9B[$CR0Z MYYH*D&;DB,W13"]0,!$+2*)1:!PHL!=C5A)+Q.-C11_!SR1)!/B_\EI2@HL`,[H/_J!*=R2J=V6@9X.D/+_;N!BH)> M&:`K,*`%JJB":AS9#0*ZQ]WR[N#/75]X4,GT=QD7,1AZ+R(1-F`8X)\A#*F2 MNMR_2U7:1XXZAP).\`14((T=1`74>Z5DWMTT;A[ON]R_ZY^[[7O<+>\ZI[AR M8G;W;<5X+^\ZMQ!R8G8DOFDE3N,UY@/7MZ99.EM+JG/O:X3F0OQ(@LVNJ0#D MN$C;F%Q."'ORK[T%708"IMR;5APH$'^.IWW,QR,ZIWWDB,V"IL+,5[V(7=!E M8%YR4M!E(`.@EGYE(&!RHG.@9G2"FJ:'*@HZ)4!R@(#6J"**JC&D=T@ M<`([P-W3[N#F7>>_&Z@H^-X[P-W3_GQRD'URHG.@)IGUK>M@X@QUPNW]A M6"0MC(+:5]!E``,ND&[K!FKGNA6_"ZE;``-,*">3J!JF2"FHNW+UK_+Z@5N*C#+R5 M^\LYK@!"U)AT$,VU1GG/.(Y(8I';J'/)!7ORK[^;)HYMCN8/P>,,=;*XUEWA M9V$$V7F`J^YRTI=_@0(Z!X[D]A=LF00E6!]0KFC= M%7X61I"=M^5L"6KBB"]WL.7-ON5N@&N`RY;%70=F`&J*@@([L`/ZK\F`RI;: MQ^5_(:E,LMN3H_V3J=M*,S*@ILF3"0?ZKTYL*:G+?;3"6@9?'YKD7E@(K4!^^\8O=UBK8,QT0/<5UIKV9;X<@>B_07Y9IQU8`8Z?">!024*@2_['FTH M5%K-KGU]^1?+3)3T"WU!24B M%FT;AT*%/LIK_+[0K=N-5`=F`&KE6[XYE0!J`,[17&MVZ_UJ`,XH$.D.81.Y M_HW5-R4@:Q.Y7F\*X(3!V%WA9V$$V7F@UI)L2?YU8`9;7A]!&!4Z!^:#'>D. M@:!*BJA3`K(^D.M1@:CP9J0^<'UK6N:N_(NS!8X=S".1[A"$FNMSCMC/)P?1 MUP.1[A"@YL+=:]_45N**@@(ZUP.1[A!NI7,(FNNY5F.2JO_D-JB-N8TZ!XZE M=??#71_9/3GKSI8\T%TKP&(7]J7W/9EP(*G:Q^5_(:F@UL'*"@>$VETKP&(7 M]J5TWNLD\9!M&#$881J4@1DB`(Z%/LJ^)07@6%HE7N*3"0>2JGV3`VJ3J=M* M,S*@=J:1[A`VD>M$26W/)P?1UP.1[A"![;OY09UU8`;@>*ZBIQH*(2=U"&IF M_LLYK@!"M!@P&A/1C!1&@!MN)B(H*[_<\,B1DH/^)?1&+/21D@.>1I/_H/1C; M1-WH/1@`->'3;@:X$>=#0@8''K!P`([530!W(M)B51)>!+=U02IAH$I1@4*E M12IAH$ITX-_%]P5#HA!R,B1DL-Q#HA!R,B1DX-C!?M]F@!N#@0+%]P5#0@;@ M6.@.;MYU7N+ENVOF8A"+`:-.$F'-#*,Q$(T6T>:E3*\?$9 M_Q>7T3)9&\YP9AKDG!I\CQ%P@!1]FD<(B;-Z81PVBJ-Z81SP/:#9$1F+\;(@ M>@;R[,IS0:)9&\Y;^P9(\=39?K6(T6T>>E73S!$_J\VFA&<>ZF9YHA!#D4AO MU!#/7`9]ZB2\^UT8>&FIYQ@LAQ1O!I(2+0)]SX%W\$9JQE89^P:1Y%8>F,YK M-DF+7FXNGT1(@?89\?'"QR-^!DELU2G5(3!;/1='"Q<.@40L/4F5U$=$L88< M0:)9&\Y;.Z(G&B0_07!/U4D!SUZ9Q.]:R[00`=1(L>FKGAVYKE\[4;:`'_(0 MO!U-*09YXKKVM=70,F M0&_T93>E5UJ[V:N_(MD#KA$H1S&H=R;]A"I+R=#HA!RX@03PP2`>_?#G1KKK@*IX95R M@I`XN^XJD!I>J=V7L^XA0!3*(0?Z;W=Y+KS"5\)U>9?"1FR%!8ZE!2.1)-K! MJ-TW.@`G`&IV=T>.36_:=^:E-0>*'=8JX*)T7EH1/MWW#2.1A.>1I'W"--XC M3NCH+=NT3>&#/20*L=MDCC/R4?=.2],>*^ES\$FA=-P$`".1A.>1I'VVM-Q6 M/!C<3P`P$DEX'DG:5]G+)`7H#R.1)-K!*">VM-PESMKEK=_I/=O^S=DBG!J_ MQR2[C9`X>ZB)*L*I\7M,LMLVBJ.?;MJ(6A`R>@:_QR2[#=_W<3P`P$DEX M'DG:QTO+O6M6/!C<3P`P$DEX'DG:5]G+)`7H#R.1)-K!*">\M-PESMKEK=\+ MN.<8Y=^%[ MCE'K70`T3N;H3RIAH$ITL-X%`".1A.>1I'U[CE'H7^+J5.*L7=[ZO8#;Y-^_ M*\*IX;RA\=GWE$_[I/^F#2.1A.>1I'T`U4;HGQJ**R1I'W;A/ZI(:G+7;X4[L$P$DD''K"ZK:ON&+!P@`*!)5U%,+T*'J)R@HT2 M@=0H\$[Q]!/"`7]W=.`!2\?+;<6#P?T$8`:=VV>T0A1RP`(B4!HANQUU`+=+ MI"$CJR_&846R"X[530!$H1S&X7#W7>*L7=ZO32IAH$ITX-^@:_QR2[[5++1N?530`P$DEX'DG:YU*_IN#"(:G+O6M6C/?3SMDJ MD!J?+4U#0$UD4Z`%(:-G\'M,LMM[7@3Z;]HP$DEX'DG:M^=%@/ZI(:G+O6M6 M/!C<3P`P$DEX'DG:5]G+)`7H#R.1)-K!*"(F?MZ<313*81R( MJAUYOMMD3N>%OA@P:I5#0@;@6.@T3N:@9N((P958S-E#HA"[3>;2AC/7X;0[ M$0/AL1V7*2=[CE'Z/^P&D03Y011-';)0(F)YR",;R%X/025,@D*%_A!4 MXMCTIGTP$DG+#2.1Y-CTIGT/027+_1"I+R=]OAV7@K-+ MM'"((4?E80;*L=)TD?#2CT*%C@(/026.+>B.36_:!R.1M-PP$DF.36_:]Q!4 M`FHFCA`5S/WU3O!/$$?+GC3;<2E'_T2;#P))D!]$<6F/L><8Q?@-V"27]AA# M0LQ_DH^)D8?2CT*%#B.1Y-CTIGU#0@;+_1!4XMCTIGTP$DG+/20*(2*2<(B;/K'J@HZ)5R,CGKSL+GB91/"6H#1@#A):G5B]B_ M&Z@H^-XLI?_J-)EP(*G:=U)4D%++#:F2"FHFCA!ASH-AAG9\E!JB02KUT7N@1 M/CGK30"3"0>2^MG2-`345`3H[^#F/>T1?@)3<`+K30"3"0>2JGTLA/Z0*JGH M[^#F/>T1?@).<`+K30"3"0>2JGV3@_Z0*JGH[^#F/>T1?@)4<`+K30"3"0>2 MJGV"@_Z0*JGH[^#F/>T1?@)"<`+K30"3"0>2JGUZ@_Z0*JGH[^#F/>T1?@)2 M<`+K30"3"0>2JGVI@_Z0*JGH[^#F/>T1?@(P<`(IP?WI'V1IT`-TTMV3J=OV M+>_82.?[S]DJ(*F0R@,G``,#BJB**JC&X0,G<`/<;=L&X.#F;=L%,)FZ/=QL MBTE;N*;=N*>R\(JCI1/6>:N_(L2PP2G4YJUQI;: M)S)3`&JC#+Q(^;Z_G.,*($29&@C10JB_1VAAC=YJ&P<2GDS*+<(B/SG!^U;;(Q,!H[8\^F@9K;8>Q==P?( M'AF+`2#3;+(R,!H^#D>L5:/+&@74S,0=4DQDV:\WT,F#_+27<^P4I M$[0:/:_VS"G3;+(S,!H\W?U"7-@ M_9`GMN$`C21?D#)P4.0E>&)(GI-+KFT/R+U?D#)M[80@Y_];+@9`J+UB@(+D MCB^`6_^%70;ZW\&,Z__:5V5@#>2U:T5#CH+4.^;:?V*2"FH)8,6#P?W_[;G^ M3Z1B@(+K[O]$>F+R[?\96B<#1@!WDK5!5A>Y7H'/2/63=]_^KWW<^P4I(R(; MY_]+>F+C/>)U7N(E3N/^C^,Y=1`:6YCH0JL($7K;U"7-!E<,MRHG/KKG.8(B<% M708"5N:N_(M*LUGO"VH0/DQ&UNX%/!8X&9Z39UP)RPJ&JD7@E M)C`_D[;\[A")844?*`,O(`,HHB(HU,$\HG-$6M!EX*2EI7,+(2<KW-0[OUM008V<6#P]Q<0T5;:R]D%708Q@*!*BJB+0RTQX`,%70;4 M(&!GC,4PPJ%S(*F@5N(' M1L,PPJ%MM6D%708R0,,PPJ%MI;V*`KQNI>[X7]!E(`-NI>XN+F#Z+Y&!GC,4%708R(*F@5N*CC*8XGE/./)HQ$ M*2>3H_^:'*@H^-G2-`341#8%"I(HN&\;E-VDP03:/YEP(*G:%Z@H**F@5FML M*:G:%Z@H**F@5KZ;-IFZK30C(]B`6A^?+3)34.:N_(O%9T7@J,G%9T5%O!@P M:I7%9T7@Z,QSYNN$@22!5A_@Z,+=BP+%9T4XWFQ(PBWZ>X.BUO44L6\VX'ER M67=FI[V_*\*2"JE,DMT@L/8Y2N>E];N!BH)>*2>&6J"**JC&D=V!XST%JJB" M:AS931I,H/VC[%M2`(XFCA!!Z>^X11:!PEX--Y"`(E,`>R6_8#4(8_(`)/X`0BH`,B\`2B M,X7WW8=G\`,B\`1.(`(Z(`)/(#HB`(ZE-OP5IP(1*,S*@5APH4'5)6(1T@>%[H-XKFY_H7T]^CC`)D#FHFOFDE'M"X-5R\ M]BK6ZX80?:%P:@ ME@>B_07T5MR_G.,*8(\-@21?D!!?0*98J;^;AH^7H8\F4-!E``,V80(%708P M8!,F4-!E``,V80(%709D#FK/)P?9)R?7MZ;:QWWEFU/DYI1T$,VU9K=(Z1!R M[JK42AAS*&2MEUQOK6UQK98FB7YG,(="=G[ZZ[LQ=V`PB0:800;P!QR800:@ M!G(668Y_L>4666_49N1&V@9;W@9;CB]W,.1UH&\L-GY@[KD%70:W/'UE[LJ_ MZ#/"M5NG`XYV!QR8H1#*K8H&,;,5J-(7WWCY(GJJ,7F;5AQ`KGT%70:JW7B8 M(B<%708RX%8')JGZ?[*XIGT668Y_H7V-N8T'!HZEA2_[+B?=!6J4>9(668Y_`6ZN2JT\>@=#7@=FL`(L=F'@6-T$D.MT M\/%RLG/W7>*WC0(?O]M.,#&G@Z@9\MD668Y_H?^F;6ME<`>2JGT^B&LH**G+ MO6M6/!C<3P`668Y_H7T[=]\E;N)8_+O`@1EDH/^WC0+XLN\JWETKP&(7)M^C M#+Q\+@3#Q5OON]RV5@9W(*G:)S)3L-QG>F`L<&#@6.@.29UU8`;@6.B&@@:8 M00:2NMQAWGKRC8WMOXW/)P?19Q//)P?1!XZE5>(E3N/+"QR8H1"[K:0%ZI5G M4'_OFZ5\+@3#Q5M+:BAH@!ED@.,Y16YYX!#C$KZYDX*H/L4EMI;USH-A= MUR.4I'W%H8_42^?H/1BJ1=TNW+T+$>+4%N$P0-T)D%2DGI!3@`1QPP0V$2AH M,+LBX$2SJ[[*^HS5N.*@E@!)A;Y?"FJD$@:J1`?4G0!WSR-W,-+;:`([#AY, MDMU"1DG:#VHE'M`[#AZ_;)K8F9H&L9V3MIKM8BJNJ0!IAHUCT`8`(LV!M!9R MD",2?1110_06),S=!O0"_D#*D;[QR<-!EY M$*NL3C5D0-._\V6"AGEQLTF"A#N4[WAT, MM;TU&7XMID^>IX5)/GQ(R>1R67?JBQ"&;!,G1B>^JY$1:(9"UGHV<0;GY[MA M!QR8`6H@9P9`J+T1Z'1R8HF@!J=R2J=V6@9X.D.`ZY\A#*F2"FN*'=;+2N?H M/1B30]V:K!TGMA.[K:0%RB,%708")B?TYJ//)P?11[UC_K[W/#F3>@1?@(]<`+4O8OGX;DB4`)D(+LL4-!E M0!V@)G,C3N@1+J#4K*2>3;W/@)G,C3N@1?@)C<`+4K*2>3H_VC[%M24)JE];L_N8W/)P?19Q//)P?1QR3G2>;W/Z8%709I6M!E0!U72N;W/+W_7QRD'UR0F\^^GQR$'W@6%JAEWJJ MH1!R4H>@)G,C3N@1?@)H2]V:''^.1Z1D?M^C[%M2`(ZE];NAEWJJ00;:']"M M]5I$`&H:@X:G0P5((`5/4`5'@`0HA-Z#<0)%<`+4K>"XZE];LH0!3&(2?8V-H> M"0.)@H+4>Z5D?M^CC`)$(0>E65IKV9:RMT2)@H+@6%JAEWJJH1!R8HF@)G,C M3N@1?@)F<`+4KRFRB75P;@6%I6C/?3OI9M*7M+E"@H"(ZEY>#F M3>@1?@)I<`+4K*2>3*4">JB)&J@H2*0GH*#W'="S!6J)%L*0*JFO_;N!BH)>&:`@,*`% MJJB":AS9'3C>4Z"**JC&D=VDP03:/\J^)06E65JW5W$"RH2+0RTA7N<.;MZ$ M'N$GP`8G0-V:'*@HZ)5R,CG:/\J^)07@6%J_^Y/;^'QR$'TL\'QR$'U,#F3>@1?@)M M<`+4K;W/1ED+CG2>;W/@)G,C M3N@1?@)0<`+4'>$G``#F3>@1?@)Q<`+4K7\L:?S.OJ5-!E(&!RG^:''^.IWUD/K6FC4+5;0!W$O5)%TD[ M<0?*@1GRS"+)G,F:'*@HZ)4!"@(#6J"**JC&D=V!XST%JJB":AS931I,H/VC M[%M24)JE];LH8`8HJ'WD:'F"]ME.,#%,H/VC[%M24)JE];LH0!3&(2?8V-H> M6=!E\'Z0@8+4>Z5D?M^CC`)$(0?@6%JAEWJJH1!R4H>@)G,C3N@1GK8G0-V: M'*@H^-YHJ_VCW&=((FB@]J8\3*=V6@9X.D.@ILE]9I*^KA>C:974^]E.,#%, MH/VC[%M2`(ZE];LH<`;_)R?D*`Z5D?M^C[%M2`(ZE];N!BH+O M#0?T1R'"2"FJ:_)/;^'QR$'TV\7QR$'U,Z5D?M^C[%M2`(ZE];N&@@:8H?VAEWJJ MH1!R4H>@)G,C3N@1OO8G0-V:#.1E,`/:1X[8+&A72N;W/;W/@)G,C3N@1?@)7<`+4'>$G<`@)7 MD*.O_;N!BH)>&:`@,*`%JJB":AS9'3C>4Z"**JC&D=VDP03:/\J^)06E65J_ MBP)F@(+:1XZ6)VB?[003PP3:/\J^)06E65J_^Y/;F*;7MZ9,`;W/`;W M/M7X%70:A<:5D MWMVC[%M2`(Z%[N#F3>CH/1C%=`+^_;O8V/[;6-!E$`.JM7X%708Q\'MD?J5D MWMVC[%M2`(Z%[N#F3>CH/1B^=P+4C=Z#`=\GX-^_BXWMOXT%70;K5]!E$`,K M(`.A<:5DWMVC[%M2`(Z%[N#F7>GUKZE8')JGZ MKTXHJ'U]^1=`#HZ%SMDH*-HZZ"1JY%\`)M\.;MYU7N(=S*3EP9S7MZ;:[^#F M3>@0^!>BK8-.\L4@X`?^!6"@E@#/)P?9)R=M7N>0JGUCT`9D`&J:W&Z5D?M^CW&&1I,_9^F/EH?=P,"%._1A9&V1]&O(0>QR,2&J@2^&,;@9GT0T]T97)G%:WA"FH2A44"$7 M8BXK-@5$,#+FT=1BY6=ML%4<08!(4FC\?AZ^H>O2(36\(BN"H@;=MBQJT&U? MT%T)("[L!BKG(0?ADR>@;JFQIVD%QZ M+1QCD,>UI@*IP6[ZZ[LQM^/#:!/8"'3@@0:`*RA?D!!?0*;@:*9)5"E(W0-N M(=-Y@*:EV<$\DAICX`/F5:`@>@9VL&]=L`4PT`6$JGL#6J`@>@9VL&]=L&]= M0*AD3N>E%7':QWVEE1H5UP*@)DC"80>2"FHG[KFIH@ M3CAUZ(Q!$T8.BA,Z3A2\^$(%"!!4T)0!,>9-FS9A6+9@D\;-5CARO,*AH@A%EV/!,4!6F3)HV<7X!X?9HTJ5-GT:=2M@J M5JUNGC*XI;OIG(*%\=-N2/;H`<)) M%29,2)J4.``IG>@BG-1APT:O&_#":JZ&1Q=(3!%GECK'$&&V^(025)(5RIWF\$.&F6:<:CHH40%#U"$'$VXHF>>,!0`II!M$SDA`@!/U`4)@/`F:4)L# M<@DG>;>-T089*&!99:#K)52`FUU^25Z/OQEP&UI!HE#HH6[D=2NB^S7Z1I!# M%LDFI13!=4<:2J&!9ZMKSC9&&)G":(0.#WXQ!AL.01I409?B@6RIRB7P;*9& M!$%%$$Q0RYX9[L%7[KE,@%"$%%(\(047;HC@W7%ER-'7C`-8BVU8=6R;81G> M3MFCD>-N-00203AQ1!%$J*MBNRB(8$0:V(+`U!P@B%'&4%PQY<9S9.3G8W\/ M,0SM5E,40<47Y2:1[H,8BP`&3W2%@@B*`W"#JTD$(";9%V48`960I"86`=V)@"57T!"0)7 MF08";EV_8>@86W75TE6ZLW"[;%4=Q!@(0<@AY+5;Q9`##C'\_M+B<+CPQAPN MM%%6&GBH^[P1:;6A`PC0T@'$&.#;48<+VX$4!$MY8!764&*$44<;)GK>%+ZF MAC*,(6X@($(9Q%"',Z`,!';H5US*!CPKW.!20D-!0^#`AC`0#V1O8(/AS!)` MJS2A#'.80QB>TX(D5`P$/(@!#F@``R"(X0UT`)T<7``_%\B/?FSP@?.L0@0O ME6%],\B>$DB'`QR`(`8VT`$-=0`#&X#@"$V@PA!!\`0YG"$LA/,2V=RP/BM4 M`01)<$.$P#*],.0E"&VXD1S($(8V;)$)94'A^F0P`QO48(A;M(H@GS?(0A(2 MD`IX7O2FUS$9P"`&-=#>S[KWO?"-KWQ;1)]7UM>^]\5O?O5#P?W(D#\J[,\- M_?M?"9]&0`,B<&-X$-T;,,A#-'[F>Z`36N"&$J4\;/&$*5QA&5KXPAC.,`8V MQ*$.>?A)(`HQD40TXAY!8(0%@J")('"D#FH0`QWT\8I9W&(7O^B&,`KI5V4\ M8QK7*,9GO3&..J2C':$)`CR:90[KHP$BG^?(&=0@#/VTP19]`(($,*%]B`)! M"\ACSS+(H`4-C0&/(L)/&-#`!@"U*`X&6M"#&B>A*V!H'A\:T8GNTY`H):1* M57!2Z$DO#=3+)@QJ,`-)5P82"#&G9# MAS;P<@Z_1*$*6>C"]?$@!S.HX5"]5-2C)O69SRLBZ-87@PM64PS7=&)A=2`# M&6R3!N#4(CW'"48]B!&=(&@"7UV0P#*LQ05Y^5L:[,!9X#D!APU)8!W+T-($ M).$$$;R4&]3PACP<#02[V9KH,+/+(+$A?W#`Y6U%<#1]A0R'RBI;&/SFA"1@ M88LUNE$;V-5.9#I M#O>$*SV!QUX0W$%KH/O99H06(1!TT(M;08$/?!`#&$S$OWF<`TG,8#3P<=$S MI2G5D^RPTG8`MHH'J\TP0'9,7Q MB!SRT)TM,I`M]4U#2Y9KX5FNU<>[V2K&#)GN9I\]O<'&H*-2 M7J"UQ8[0Y\WX;"V9SF"&].V@,SSHP84O7182->O1.T'TH>70`A^PX0L,#`Z@"YH`$G4&A:N^B!CR M`#J0A;1K?,&6&[C4EXFF)FL@6(&"\.6SVX':2>RB&Z]9P"[QO.@)1OATH""NUSN5N+1=! M.4PP5]05&E,BB&2VR&&K]KFPZ-+RM8[9E@XNV*)3(YR7QUG.K8][@]#"8(Y4LB_'Z@,:,G`.WI`# MF`+E0Q$-2I2H;!%IB;*J5"=0UXT^SC.*O"SH2TG @:25Y6KYLI8ANS4OW4PO^K90Y+Q>M00T$2O7V3TX#&@"= ` end END--cut here--cut here