[comp.sources.atari.st] v03i096: nrchbar -- Generate change bars in n/troff documents

koreth@panarthea.ebay.sun.com (Steven Grimm) (09/18/90)

Submitted-by: rosenkra%c1yankee@convex.com (Bill Rosenkranz)
Posting-number: Volume 3, Issue 96
Archive-name: nrchbar

This is nrchbar, a program to insert changebars in nroff/troff files based
on differences between 2 versions of the file. It works with the nroff I
just posted, though you will need to change a single line in nroff (v1.10 at
patch level 2) and recompile. It will work with the current nroff p2 (it
needs the .mc command) as is, but only "|" bars will appear, i.e. not "+"
or "-". The diff at the end of this file fixes nroff to handle all single
char margin characters. it DOES NOT interpolate special characters like \(br!

You will need diff(1) to use this program. If you do not have diff, skip
this program. It will be useless. If you do have diff, and have nroff up
to v1.10 p2, then this could be a very handy program.

The version of nrchbar I used was a unix version and had a popen(3) call
to pipe the output of diff to a stream. I have simulated the popen call
in this version. See source file for more info. Note that diff command is
hardwired to c:\bin\diff.ttp so if your diff is not that, you need to
recompile nrchbar!

Here is the line to change in command.c of nroff v1.10, patch level 2. It is
also included in the postings (both bin and src) as nroff.dif:

*** old\command.c  Tue Jul 24 22:55:10 1990
--- new\command.c  Wed Jul 25 13:50:14 1990
***************
*** 855,862 ****
  		else
  		{
  			mc_ing   = TRUE;	/* turn on... */
! 			mc_space = 2;		/* force these for now... */
! 			mc_char  = '|';
  		}
  		break;
  	case NA:
--- 855,862 ----
  		else
  		{
  			mc_ing   = TRUE;	/* turn on... */
! 			mc_space = 2;		/* force this for now... */
! 			mc_char  = argtyp;	/* use SINGLE char input */
  		}
  		break;
  	case NA:


Enjoy...


-bill rosenkranz
rosenkra%c1yankee@convex.com

---------------- cut here --------------------- cut here -------------------
table
 !"#$%&'()*+,-./0123456789:;<=>?
@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
begin 644 nrchbars.arc
M&@A-04M%1DE,10    #_'P0  /D4X&H]#W '   ,(T"T";.FC)DT;,J ,/-&z
M#@@W<L:@$1-&3@,%(RX&)!.&3AD=(" 1N%*&# @E==B D%$#1 P9.FC4T!'#y
MALL<.6!H!&&GC)PY:=ZX 1G#!0V-%Z<4&4(E08(>+B]2"2+E2)&F3Q]&G%C1x
M!1TZ<"XV">($2A"K3J%"E$A1C@L2*)0R37%Q2! J9M%F7<O5[9B.8LE.D3(Dw
MK5:V70>ZN4AUB)$D3(H8YMO61<4Q29%0?1QY[];*<]!85%"E2A'.DCTC=ENGv
M3IF+2(H$(5)$RI2T20G?S@HW]NS:4U(<[NL"LX(G5&+;-BRG3!@R;10.+'@Pu
M(0BX8YT,'D)7 9$D4ZB@O@T5+G+EP:_'U=W]B1 EN]5^[OJFKA$F9^-?9$+Dt
M?G[#+<P!0@MNF+%?$D+HIX 023CQG12&C:$#%V*DL9@"V3T8X82*<:%8#!=)s
M44595#5AF$=ST%&48B"@2(<,+B@6XHA/5($55#ZXZ,(;==!QT8\8@4!&&LV-r
M04=0;LSA B0#(*7 D$4>*=0<.ESD%!!E2/1&BWG H9 (TRD4!AMLB-#BEF+4q
M@1 =ZDU5U57=79DE&EO2T>6788)@88ICEGDF"&FN^<*>=/39)E5641%G EAJp
MR:67((!)D$(NFDE'G66D>.B;BEK)Z)QUWAEIGF,D%(8;EF[97!MO] 3"&V*Ho
MD24=<WC:*)V/XCDI"*7"*H9/J8*P:JL*P2JKD0*>:A)<;B:ZZ*VA0BII02!<n
M%FR><_ 8D9A;I>$J7(VA]BRHN8ZZ:V@577NNMF,HA*Y#U2D$UQ2:22&NK>3:m
M*6V>K96A+K7]NC'&&V24M*FSZI5V&F1%= =D0 -9V&)%9Y1!QY)-8G11GSHXl
MQ2RB< +Y,:<I=&S>>\%Y"M<0W*G'GW]'I-?"EB,C?#)\PL'%!((I*_"P0*?"k
M$4;%(*!0QQP*!<H&'2U('..IQ74D;$IEI("QDXH)7;')*&275\,B=TW6UR4Gj
ML/)=9'M:AAN%BJ&>77B=U;!Z7LOML )GQVU5V=@)1MC=/U\ZM1MZ7LRDDRYVi
M;#8*S8:L@,>,@ZRH>B*2*$43.:-0>8V=^NQY0((3:F@:AF><D0*BD]EQZFQ\h
M42'AK'\AH^>QO\YUXYT[-08<!\.I'H,.)B%%"ES4[/A%L2O&==U[>[H[W6/;g
M#7WPPQ<O-HG->[[3&W2@X9.2AVNL0*G.#>6I'&VHYQ[.(/CTT]MHVPUDKV+\f
M*D?'Y)]Z?OK&3]XW]F#SW&6J]+C%-48X85!/N!B6N>^$9SSC<A09A"(=@ECHe
M# HDS+T\UR\"0DYA3AC"$VB3.=Q%$%<3=$,%UW#!A)EF@Q=YEP<71R^J-! \d
MXF%8>GPPKWIM4$X2I"#06.@&#/9P,PP$TDX*YB4W%$Q@:<C4U<1'&?ITK(I^c
M 0&0 !H(34%.249%4U0N4U)# +T   #Y%&IQY 17 0  #"WDW&D!Z0"(&"#Jb
M@(#4($8.&#1 **G#!H2,&@=GZ) Q T2;,&O*F$G#I@R(!@H"#BQX,.%"!S-Ha
M=)Q8\>)!&CIB(/SH)HV9,G/HN)@C9\S)E ()&D2H$!*#&#4>8J1I$6,,C31Dz
M@'!3%(V8,')<&$6I4FG+I@UDX+"AE:K-&#)TT(C(=8Q7L"YX'BW+DNE+&CENy
M2*18]69.&%OEO#%CQ@49GWN3]G7),,8-CH-K=H01EX8-$'+*A"'3QB1*&@A.x
M4D-(0D%2+D, 4D, /!T  /D41&T[,"$^   ,(^JX(5/&# @G3[Y 20*E2(($w
M+U2 (&B0SAL09=BD:9/&31@Z92:F,6,0A9PR8<B ,"/G31L0<^B0Z0BB8TR4v
M9%* 4/&B@8*  PN"J#*ER)<F09@P>3($HD2*("R":!.&#9LW8V#""3,FI)DWu
M<D22!#'&)=6!(#2Z"<G3YXB100TF'9+EB1.W$PMV##FWKI.'$5>"!0'G#9PRt
M;E#,T#EG8QTV'].\<0,B#-HW=-"4"1NSSMBV/Q'/-./39T2?.Q.XD3,&C9@Ps
M85O4=#-G,QT0J]^,;6WY3,C78<NV.4MFSFRI85:F85,&M0KGJC&7T0$";)HSr
M':N"$)@&#P@[FQM/WE[;>.'#E%&(&&W0S/(R,90SER&"!0@1<D2D@"[5]VWVq
MU=5!!QP"NE 3"'>T!%)EE$U!Q7?A24:9;H09AIAB.O57QFV9-:= :FJ\(<9$p
MDY5A8!WEP93'36U@R*!*,<WTA@O.0>>&=-1)1=4:(666QASVY?%&';B5489*o
M_AE&!X;VL8="#"G8-\>*(+6XF'WG7;@8=):I!,<85]7F(@J-M?'81T>"H-E)n
M@H7E8)0O;N>&?V,H-D4*!HX$@I!$HMBC9M!E21D<+=F1!D%DV$>$72<\. )%m
M>PU5U%%)+35$",[UI(!;'8%9!T$@\!"C9"Z@X4-I/XT$55]VX07I6B 0D801l
M1D AQ1-')"#"&#IPP848'?G*G@MT#"B"6QG5YJI>L,I*JZVXZOH"L&Z\P-ZQk
MH0TT$JITY'$810ET=)L8;[S!Q@ZHOF4&5%1(4441> G$KKOP9CL:I^L*9412j
M1<4;%PC[,M&OO=O^]&H9";3[[D,QN'5P @$7]1 ,Z3X<!!%$/'1"&"<XS"S"i
M0R 1A!-'.)3 "6-T;/#'"1!1!!-%4&'R"62H[%.WWQ:40$QRU#$&'3[MX5.Xh
M;M"1 !MN/,$&&4:TU :Z"A!M--)*DT'%&U!+G< 8;9"1M;A'N^%$&7<T[=+7g
M18<]]AU70]W'0^P1-,<8<D#M$V]R)  ") >H0.@;9WC41AE0J[LJ$W2UJ@#>f
M>O.MPA=_!Q[&X"#T<-]JK0$G0N&B%4RNN0^9 =D905B5@.41%P'UYVR$/KH0e
M)X6Q1A!F@!26Y0JK[A/KKH=Q!A$9;1@2ZOSJK@#O"1 D1AUG8#=GY0 7#S7Cd
M>_<-GASB46:Y")B[!AL(,;A  P@H4/'$G2#D ,,+,-SP@@PU@  ##3K4$$/]c
M.(#04FUNK"%'&)M#U6D^I(($?$4.=X -&9)7!C#!)C*3F4.F?&*$),"L<7W[b
M"GJ>((<BL*$VY$L!U.SPAD,]I'O 20 *1.@3$IIP9VM( QR8L)<Y<-"#M5$Aa
M"Q7@P@4FP$\=E$/>5CC"$OI0#&5PWA"\%Q8B[JY<K=O:#&GB1!X:\2%CF&+2z
M.OC!D%2QAP\1S1*!$T*H@2T!_B'"2$JR0^3]2 JZ,<,0NE;&%EXQ 521PQK4y
M.)8JJNM?"%$(0^I5P0M6SV\R+ ,?S6 </W:.-)N*Y!_!I1:@_:0F^9(+XOQRx
M-S1\#Q(#4 %K&J.2[9$ "3C9#'50"!L7C($%=@"?^,IW/IVHCWWN@Y_\Z&<_w
M_.GO#?SS7W**@ <X@( $ ;QDLCR$M[V%<I2'@IX(3IE*.:R2-4QT)2QE.0,0v
MX,!],)C!"V80GQC80 <SF($.S D"<HF!#2 @IC&163B,: N2(W@DJ@2H@A9 u
MP@.@B0@>P]"1!( RH/W\)VBH0D78G.&5E9'#&>RP'P6 S:%CF)XGPW)0A]IAt
M"UV FM"B5@8\V(XR8%-21[PVM)*>]#AHW)"2ZAA)K6TM:X5TR"'- (=%LF!Hs
M&%0!3]>6->HYS@Q)6]I/HQ94I!(U7:H2"JON$K7("6YX((!<2R0W.,YU<6A6r
MG1Q6/;H%&(046?=$50+N@(;WD \%6;%<DN!P&Q1@U#X>M8\(PB &,MA!/SH)q
M@>6*\ 0C5#0!(WW('.Z0!CJTAGQC."QB@3J&,(!P8R?0@4$'$)BJP),W<RJ#p
M<4"S6='YKG2MPQV]L@9*,<1N#79C:F4O*X;,;C8P-VKG:XT3AMIMABR>#.UHo
M-57:U[V6=K:#7NI8.P#7H@2V:MV:94-",]N",C!S0,,;[I 7YH $1@VD@X2&n
M.S10FO9WP5N0:M_%7.?*+K98G"X(3F"'S)9W (025TE$4((Y<,$-]8$0]B2Tm
MP\V6M+'D@\$.*2O?$_S ODRE2!@>0P<=W)>G<M"O"F.T&3GHM;_4$<@:;G0'l
MRIP7!%P000M*,(84_[<^Y25 6 =G'Q2(2R>192Z&-4PFF71XJ08E@ BJ, ??k
M30<$_07!%EH0ABXHN05B</*2R2!E<Y'!/<QQ\EKN@.4RO!C(D)#Q5J]:8% >j
MN*Y0:N]KLY: /@S-S9$<6F"&MA-G @\],WG>>#J$FSJT 8EAH5"7C;-GS9#%i
M+%U*RUYH%+6=$'>QC7VL726:%=FH=""'3>QL0W*_! "5IXN$WJC<P&:GD@T$h
MT"/KI<FP@A6<E:E#/37T-(B8&W:1?*:^@U[S4^ $N!>Z-=TT"&2@67Q!)9 +g
M:<BG\ULT,VS8QT($\P#X.P?JS $L<LB#?7(+AT3.X40@'+4+ODR8,8NUUV<Ff
M7YJ1]558)U4EJ9;H1U?=ZE>'3FRRMIRJZ;K2>I>ZIVN$7K</L\A&(K5J]LEUe
MKV/-W5E;:(LX]&*N=ZT?SJ65J;^&KX0I3)UE9[C9SR9(M.\[Y"+[ACI)7G*3d
MGSPB*;> RDJV<I>U3+8N?_F^,RX#NO& X"<5&,YRE@B=)0)*)VPW*H:.'3SOc
M )8UM#.)-F&TWDC+RB&">HT)A\/:%ARU 4[=F6!""67J8,Q$G]D%H!PZ<?6$b
M@JN/1; PD4E')/NE,$D<X"3A>@+2C0(%NVV?D8R(/P&J*8$B48E,? A"!P^:a
M'CX=\2F$*QJ: )LU5!1LK:&\'G=P6XET),0@]-$<MK91KB07-",US7,(Z&NHz
MNV&,WVN!; ATFR'=)@P)$&4<#SV<1$OE\#1)#FA]XVO83##P*@@!*,-5DO/"y
M[KG(W0S=/TZ'_;K M2_>(6F977WRB< %;<@*B\F=^<H7^"1TJ(,<2.T3H,=9x
M 8)7:.$+F$4:NF&SBY?_$\U%%BV2SPU,X ;;-@4Q! =99S9M<'EI X"DUGFSw
M01UE 0=Y@'0_,A66,8%J(5H@@'8#D'N: C9N0( RQ'G7Y7EN0!T<"!,%V&W/v
M(WH6Z 83B#>F%Q[E50#.]!%(%Q(Q 1M&0R$HT1H)4"(;N'R@D5/.)%1P@( Du
MR%DFB(*@M!).DP NV&51<1$Q8GN.%C3\!!WU1Q.R=V@26!D@@!W@01ENX&> t
M5AT&D8'&P1(N41VP0H52L8,#H4#087NT=WQ#@WEH@#9&DP8B" ?PQ59NA0(,s
M^(4^(#^9]FF#86.!"#TPP'F 6("AHAJ!N ,U$8BM)EF)!4IL1R>XEH1.HQ,]r
M,%B%=5AAAG[JEQZITVMP!C=O %2=. "/)5<;DA5M)XHN468#P':U:(J&%6.Jq
MN'[DTXK,17N,(WEZUV8(TE;,H4*/!7<G\%\G\'-J-8SID3L[Y'[\Q'CS)T7Vp
M9VLYY(&JYXUV%$U="'&W9H@!.( %>("CZ!,@&(!+&!B?!X83Z()G@8$U-(0=o
M"!H@>(D.>(\I. <KV!%G0('&L8_ ]4 _0X-1 PDV"$HXR&<[* <]:! _B 9!n
M""L<2(X*8(0'Q5-*.) GZ(]0Z!)2V%9MZ%9S*!-8B'I;R'KI*(XA\841.(')m
M08:(T6=_]EL4PH8I^1)"*(>QR'IT2 8*%" #(B"8F&YZ(A!\Q1QZ&#5L%P+Il
M^'_MB!N!"(^[*%E 5 1"I$(B(! E=1@/J1*$9005YQ08P7-T, <AD(51@XU_k
M]W[EJ'_P5T!BE'@@&7^$=XXJT9=DM$):B'S009BQ-WL"$H0"(H:ZMQN(AA92j
M(1IB.'R_ 1L[$UX24I5.,73.M",ZJ'Y_$A*$4@:&,B3&@9GM]#T5:"B-\4X>i
M,G5KUWS&!7V^)0?3IU_>=WURD'WPQ7W6%W[ >8T;LHIW"7B B5 &]' VJ7CSh
M9XXA:4%%L!.TIHX@U'9791\XHW.=]$FAA%1B58]-*!\A<5556!WH09?-=%#=g
M29X/B"!A,($T08B/)14/MQ+H*9.(R7K7:9,@\(7YF1Q4.!C+]):-M5:-A08,f
MLG="-!B#,P<FYR%T.30B&9Z""'@&9$R6<YVXMIU1X2TZ!U]LQU.58SDH8(0Je
MH!-.4 5*L8BP)IPA]V/W 6)D81DG4'OKF6+]E6)M,A5O "H\ZE\B<',1B5_Fd
M1F/Z*5;<*:([UW/K%C6OB(VAN(V EY>!N9<Q10>+A'_1J9<>XQYKD0"$%003c
M$Z9[D0 .$@120 5?$ 1#, 15T 0)T# K(Z8( Z=R2J<)( -H.J9%83Y,0 1&b
M<"MT.@-_BC"!^@2#:CX)0 .)JJ8Q,P1-D#$)4 .1&JA.4 174*A/0*<VD*DQa
MLZE7X*@W$*E-@ 5.\*9#0 5)8!<)@ .HPC,^<QM&, 5-<)A:LX,@450;=81Tz
MD&%GX(<[0P=H,C8F1:RF)R%;D*JK"J>N:A>OU@>Q1:L_ S"XNC<%(%1ST 9#y
MH'Y08ZVVBJL&U*U;8$Y.9CF'*5"\BC#!>AV-8P#MBJRW]S,24J%1LP<PP *Zx
M @,Q( ,S0 ,U8 ,W@ ,Y4!]URJ][L*9MRJI[:A]EV@<@T = M@<QP*\BX*\ w
M*[ $:[ (>[&(I:=S"K%/$ 022[%#8[$8RP((VZ<*NZB#ZJE-0+(F.[$5"[)[v
M-09DT+(T\+(QPZB$:JCV ;-$8#Y#.ZF52K,G6[$R@+'_&K #6[ 'RZ\S\+)4u
MP*9N*K(S&T\EN[0I6[7]^K0<*[4("[9[H+5*:[-?B[%<L;/\^J@^*ZA%^P1't
M2P642@1IB[+YVK-AN[%1Z['\6@-6B[4..[)<6[-ZBUB"V[=0V[%3>ZD*B[:'s
MZ[7YNKCUT;(V$+>D*K-Y6[&6^V4/T0(@N["CRJF<"P*:RJE&.[EJFZ^9JRMBr
M^[>/>P.#V["2&[&MBUBTR[AC"[@)L+MG&Z>&B[N)NP>[6Z0 ]K:BJ[FJ2[>Lq
M6[S+FP PP 3*.[K$"Q@2P3_BY1'P!!K4BBKB,H8;$FJYV"3%03<5E5--)8C8p
M&Y]46!9%0U!N@)#W<2U,27MT&3>B13=[8P J0 ;G6S?M>X_) 2"U8:_C(3=To
M(T,6$1;\J7K0D49KE !?Z!]BN!YK) (,-#<9QF_CD8$UPGH @H>/>15OL ;&n
MH1$\HI 61D#04:<R0!;@(P-!]C^A]<(\0#YK@A*YJ5>1:0;Z$3II@#VWT64Om
M[$\=&&:U<1C_T\ OG(@HL,.]93MZ]04M01)!O)GPJQ)&[,*L9\.^<:.4@42*l
MML(=4ALMO!,O3!GPY 9KS )LC!MKG!:X <<AG!ILM1GG61.\Y9. 9A_P5(')k
MX5W)95=-8A^1594M95*;01GM20 JL%(E15-[F#;%BB;?>COR0ZRD)VU<,09^j
M5CG22ZR'M*R3P<G,H3V;K%9D<)23Q51>]W6@9,'"MU%20HESL!5=(4%,19<Ei
MD[5?$#)LVL)8Q*"VZ%A5RF:^:,S B(H#0*4HL):]MLPG.E_6S =\ %S5/(UTh
M4(WW=0:8<1&__*;!+#)2$%M %<MU!DJU<1N@+$2(4<3=FI[N0<1P.)NT"52Ig
MW&JEUJV9##T]UC/7>JM-L!,Z80*,U 9E]6KIO'H/L<X#(*8JD1SMVHQZK,T5f
M2!/O>@8&TLIND*-C>!%;$1,Y:$]D %1T^1"$R!RXYL_JUP(^4-%P)[I 90(Fe
MT-+>^M(Q;:P+ G?MFLE A<VS01#>T78N+0<PO=$UAC<XA@:DB*+-M*('X:),d
MD *<>%]LISS,XSP)68H@H(TQMF/-1CX<-G(1*605;<)P0!T)G<DP7=&64P*)c
M$G>8K'[0(]?V(<E%S0?]Q0?VP==CP <I8*1!UM8ZW:Y2PM-ED,D)=]1)+:PUb
M=F/ I7?F==3\#%3NA[TH372]:!!W$!*QTQIIPF>BP9T[+)_&D5M4X5@,B@(=a
M!A:2E=+,A]-NO=-H4LVBZ\QA.9;JL1S,<0;:,27QZQTT03-K= +W*R 5%UWJz
MS-FM7-),IT<_NI&5@< H11DNV*Z;35S-V42FK,J&C=0^\-V8J +?#0)P5Z:8y
M^-V;*(M871):W3STZ]5@?=9BW7T])G(>5H,Y*UX?7"YK7=W^K<IR36[?3=D#x
M &FL33[F;=W./(O"QK!9*[Q-H%F!0<M^_%ND%6:?',H]0'H!.E\P< *L10 9w
MIU:@)&Q:JUEN";_;6P<A,1YG^),.3%P</@:@_!(?'@,P4&<=_A(K %D,*ALGv
M,.)E9N)KAN*T*%^!>K<LWEF\1QSD$P8L\$HYD=)A!L <#--<4TK 5>(G7E,Iu
MSN2EVZF&:N$2L67V <8Z:*P8B>4$H.5T ]-(LS8(F&HX[F=@GN1BON0@E+JEt
M^@1/GN9DL^:]$1*6N>%Q'L!TCF]L<Q'ZEN=/$V-A?E\1_K,Q>^9N:66&'EITs
M_>:*+N?B335+<^>1GN-[_ESP->9_CNES2QWMR^GZ<^@F#>>BWNA5<S5XCNJ4r
MSN>;]8IMQMP.+<L)OB%DH7XG431TO2!2L18FM>PAD6@NWA$PKC\X@9";[4Q\q
M!B"[,ID[N]U ]=-VW:&.;=L@0:_P);$KC3 ]5M=A,=-1.C30G,I6BI=[*9T"p
M]49Q-$<^E']9RCI\#$<DP>]52D'4>80\!9_W:)1O.3F1<D [<<4&(1Q2_L![o
M"1WZ/O!T](54FCN85!&&YNRWD8&/9Q,(LJ"0*?%<Z.V>R8<D6A*2=SKBB\RYn
M:-4G2J:G"%2[/41EZ>QH^5U<RY9Z)Q"@*'E9IW?0_(OSY0+5R'ENZ=$@/6)'m
MQU=8^'TX+@)1GFC>>Z7WKI<"E4=[-,%_F5!9ZGA@3[ZBGG4^M1):1S85I;\<l
MW+__&\!.;X\GJ< =W,!J6-+LL1GT>\ #3E[3:4A'A7=F4/?EN>T33(5%2)WKk
M2U0#?))\MF7F29>I=_&L=_8!]X4WLB"U?.C@9=U[CWM=AHE4.@)[SX8KWVUIj
MXH8OP7 MOX !^%16*?OO1JP,N#9#8!AY %^Y?VH2:3FW[@-U3C:Z+AO#7_QEi
MXS0@$.0QD#4,6#7:*OR,3OSO=OP34?VDSC3,[_S0/_MDL_MA:#F_?P?PI>"2h
M-OQ=#J/2!4(70P0=QU17>5ZH==5'NNY:Z>CB/X&)V.,V'?#[3D>YN'4/'F,Ug
MR479>;'RDW5;5^+EO_^RQUS #NQL5_[[#P+];_^;!7ROQT3D<P(KT/26KD4 f
MRH[ZS_OVL:]LOW7,I9A-Y(KA7H#V)UK/R8Z.KO9KU&MVJ5;")LPD4P3Q_Q#Se
M/SKU[][W[XQ>5/[[#P+]#P+_G_%R1$>YN'4/'F,UR479>;'RDW5;5^+EO_^Rd
MQUS #NQL5_[[#P+];_^;!7ROQT3D<P)\T/26KD4 RH[ZS_OVL:]LOW7,I9A-c
MY(KA7H#V)UK/R8Z.G@#.W_RX$8 (Q_:+5&8%T%E6<700KV*@A/4T 2"DE0!Vb
MJ5;"YC(P(S/Q_Q# ]WI,1#XGT )-#U0E.CK XUW>R52SB(P;I4(GL 5-CW,"a
MDHPGL 5-CW,"DHS3^-&\6)-<E)W1KU3#IO9K5&8%@%WO:DR[QV<BD,-8O^'Xz
M)2#)> )=T/0X)R#)> )=T/0X)R#).(T?[8I M4SW99 R9'^B]9SL^&YJOT;Hy
M-A"PUT2]9I=OUGY<OYS?6'5>BJ6-9T2X@4V%Z79FD'5;9_ P@_"&K_!W'W",x
MKRD7BH207X+Q:1W.4Q4&Y%86/T"I4744/'LM008^PQ82WY"A57QAT<7X:E/*w
M+\K/7\E&HQKV)UI9 _=TDSQTKU9>!]&QHQ+<3O%=,@?8DL]1@_\H(,%]Y'9Fv
MP*\F(.HID #IG?/YVM#9#DHD7Q8"4<3,3_%= NY,!8#]2/T<[ +*?^>RH?S*u
M#-\![$ITY-4N S,RX\P 6$.775.?V<N<G9,E+92N7R3<U<4/35K@V!$ RHXUt
M9!_[RO9;!U^?V<N<G1(3#8,-Z>G \6UIU\ND-5!Z1+XFD/9LO_8,UVO*+\JBs
M[@+*K^LK4*=9D]E>!]&00=(9R(%J-S3X#U?^]R3VL:]LOW62!5]VV7Y</TE"r
M@6R#U(U>7T #ITAK-'IC+YTJ.G"*M$:CIYT(9T".7E'M&9ZW;Y+4867FJ1IBq
MQ9Z_.I*.KO G2?E=IAIB9?DSF1H#ITAK9!P<?YS$F!P#%Q*,E1D)4, !US,3p
M@MV&AAEKLG<#X9D7ZC?Y646D!YXJ0!56@164'#7M&4I=CE,'/Y)P  6)5#APo
M 15$811(H11,,32,T^7+8P;G"@.@%%+MNQ9IT@9@H8.ZW",7$09P@&?WX0-=n
MAO6@D4\7%W2@"4JBN1W&I/B2V7L#P8%J9VQ"011&@11*P11#T^4 '=4Z0156m
M@15O)1"-$3AI(MD!G<KDXRRU<BM'H!/.W_QQ)P>I_*%5HQ,K4*?-'W=RD,H?l
MNG7-#SY6[57*$C5=#CTFT.7+8P8+;7'W$C6Y3'W.!E==\V'&D63]%6#.4BNWk
M<@0)]VX)Y^AZYW40_=P(QEB9(88#-YLIS5-0D$@"EY]PU3445V E"@=0D$C5j
MG*('+]4M^J(IZW$\5M8>5J/5)L8@G9\#YQ6#,:0NEKPQEG.(W#5/BF;66%->i
M!]%A9QG; 0<<J';&)A1$811(H11,,30L8220U34[E$\7%W2@"4I4BO<,/!@4h
M,G"SF=+0S%-0D$CU#GB&(U6;I#A8RIR"XJ58"AJ)"@+)9A3J*P)?\ 5.( 4Ag
M\P5?X +)ABT&#S,[(2B0U37VT09!ZIV+\ZL'U>4:!9XJT 9!2CB'"<%(Z1B0f
ML2 #IX&%%A(.,N5L, 9"X@9X0AB)E-RU-_%T)!5=QFBI0:54B/<,/!B"]G Te
M4_F65=(#%Q)XS\!@P6AJS'IU!TPZJ%V/H1)@ DREF1<<S,!@8=H]21#>59J$d
MD4CFR8$V@B.5(08W(@=4 4]G9AS-CDUD1!4Q.&&A9V@#YQ4N>1%JX1MRP&CXc
M"C$'/Y(96E->!]&3P083&#M>XFU%<B1ILL,<J'9[6!(JT 9!.CR6<P)RX,WYb
MVM#9#DH$X5VE>1\#5P;8\M"D]4-NH!9.AP+)9A0YM8S-#78X:!G)?1LG,1,Ga
M<:U2P6<4WR7@SE0\4UEUU>5Z!0(^L-Q,Q3.555==;A_)9A0YM8S-[4S/W5ASz
M^=F']A@J0<9M !8Z&#SV"AYJHL?4H2< @HV\_-"<O:\YR":?S2:YQ1[&<6TYy
MR";9-21+\W2X<1%K,=JN3.S/+7I2E\],-24L EE=LXS-[4PDIIX]R6<B,'!Ex
M@/66)894F&A4VEC&@?<,#!;9#DI0?QMK,=H7(=ICX'26-=5*P<=B: =5$4W8w
MR('@'J,.MYXHD&Q&D5,4MXS0S%/62%+M]LJA(YQD#6T>5J/5!A/8IFVX885Dv
M5QAO#O$)TEBFZ6TA0&XYUVO0G*('+]5^]V;MQ_7+^8UU!TP(<U!?FJ5U!TQWu
ME[X'/Y(9J@")Y740#2; 5)J$D4CDDY]=AB?=)3PE/7!>\1YJ-S1@ DQW5V "t
MH19.AP+)9A0Y5>]H-1H@$!%3!1IH-1H@$!$A@&R#!!K*2?;,:9 R9'^B]9QCs
M+YV.9Y R9'^B!:#L*(!LKX!&PX *?Y(&*4,*^8+\N!;&\9&-#S,(S[XE&)\Ir
MJ-$L:9X@>?D#E!H&*4/V)UK/^84&*4,)L)-I4(:J@89 N88U1#1B6/H(^H>0q
ME!JOC3VQ;S2M,8C.Z$6'*!O]S_[)X\JOO%EL%_/'C(L\9?.EB//!>-8[3Y9Fp
M64SAE29KN=PUQ8SK#HT,*HW4" +_'XV6,XURT/1O)N_'N7[)^7[+^8T[[Z58o
MVGA&1!Z;(99-U 9S< 85U9ZAU 9S,*R'"<&LM_,4+!N=CS"6@1$/&A:)5A@:n
M 1)L,($E]2D4"AI#<]_.EM\T2FTHYU_)6VZ  Z)M, =G4&!\%Z7N!QH(3E)#m
M2$)!4BY-04X  "T'  #Y%(1E51<N"P  #"ZXB !! DF9,&3*R-$!PHV<,6C$l
MA)'C(@8+.R!BN) ! L>-%S!FO)@1(Z,-'3-FZ(#!4<P;,6Q %,$#AV #!2ZHk
M( 'A1,H0)$*"2,D(0L1 HT6//G'")(F3(B)NNIBRTTF0)D5N.H0H40X(+BU j
MI'$S1R&=AB_HR'ECQDR+.73RL"D# F(8-V?H=ITCU@V(,"#,I)DKE2J(*5F<i
M/($R)<D4K0\C3@2Q!6R8+I3!BL%<N049SF_8D!$\%[.;,G=(ERF\<S&5)$L?h
MXTP"Y6N+,#>AU#EK%Z_>B7PGOJGCALQ?-C%[YS5>=@R=-&_(L@!1QDX9OVG,g
M@*"#IDR>NM'GI($+@JW6-]S'G@$A9C<(%6O;@F_3YBZ9.2ZDTK8MYB:1-PVAf
MUU=9<IPEAAP'K1&<&70H5!<:=RT'0G//A9??;+6!1<9-4Z#QQAT@)#17@\8Ue
MB(>!W\&!X!AED*&>6&?=D09W16VQQ4#V!18:&Q^^.",(,M(H0A==B'#A5#L1d
M4<040TA!VVM+W>1$9%W=-!:!=/ UQAOTV<?7''7,& 9,=)GQAAR0L64&"C&Dc
M<-.9-ZFE)IMN*H!"=PB&P:!"TXD GYHBI+ =@"J^048=+!:EW&]RS#%00FZ@b
MI]Y-+K:ET'4L\B5&&73<4<9UY8FFVE_%-82::A<F<599Q?'%'5T(@LG&670 a
M")=]$QDW'!UP['8D$U#<E(09;XHZV&H*C!=B&6:$4<>L+;( &5<3W13&'&"Vz
M48:K$)XUXY=TX"K'ALFZT6N,@R477;ACA9B=&9>ZD2E[G'IZ7;&C'6MM<5J=y
MJF^YE+Y+YTUFRE$?':D2JT!H^1*6+%]GI&&=&].]ZL:TDJ&I@(S(@2 '<0&Wx
M-?#"?KE$HVK!E5I'6=MU5]YNYX*0UVERA$'BK\$J(,1W"37[+!W3;96Q6&=$w
M&NN#$6X[Z(1E. <=6>"YP:X;+T::'EXWM7?6G_)MV66KT]V!1AH0P;A=&&LHv
M72N]I'['QEA*;QJQ&U3C!>2,:!3%A0M&WI3%<'7=59YU<LB11D(M*QMDWJ_:u
M!M@;<%3H!LY24CG9E6;QQ;5V1K8QQD!>U]?JTH7:<3A=C2^:-7 74C$V7QS't
M! <;820*F%TU.^?@VHTWZY7A9Z!Q%EO4U9[WHLPU+7GKKR.=>X->*0N8""L,s
M5/!?9"24O-/A33<]'];#J4 ;AF:71HM,<R\=J<9-WT+X7HG(*?H4/HV?5,#>r
MM/.R/L]:L<LF&IYVY$>B]$F.+V1X@]*L]A<XP.$@<IB.UEJ&+ V5)W)/NUO'q
MQN LEOUH;9L:D%FB-:$Z%&XXQ4&?&+XC AOAJ%1#*A+E%! $-LP!0"ODG[/\p
MUQ#+>>5<P6%/GM8  A08Z4"!FH_HVK<GKQP$(C=!G@&?QCQE*:MQT6'#=^X0o
MAN^L[0QUF,A=&H2Z;BUK1/9CWX3JLT$(^68.-\G+6<Q NS,LAWETT<P%)>>Nn
M%66)@B HU!EJUH8 T0I F"L0!5EVH 3=3P&J D%]TL8MU)7A1"#@T1N(2#X$m
M93(-:7M/?.!%KM.DYE@2=(^V[L(MFTV(2W19%'N  Z3HG. L87 @!(&$)V2]l
MZCMS\-"SR' D@2 )!%"0PE*JX(0A)"$(4'*"5 3R%)\@H055PHDQ#5,$*F2Ak
M"4]@PA..D(5IBJ G:@+!3Y(&@J!(@35%F4(1B@""(#!A"D^(B@(<,J<V56R4j
M(SNF$*IP!-D8:2#28P,7\Q <;-5!6R4"$*300Y?-*=%+%YH2M;RRADC=@2]6i
M&YO=QK0K0!II#)^[:'%FZ#JZG 9]UVN<'B$T!B+>83BB<=<<<OG RVGG59[Th
ME"<!L] X :A!';.H"*A@0K^D,W5NS,LLO8*[VD'O+W2P$GU:E :;E4&+?VDBg
M"/( N)B5-#U\B4X9^':A((# 0X;3P[K"$!,1[$UL(IC. ^4 (3C,X0?XRUE+f
MO^("SZG4. G<EAMN>9R%PNY,:YC.MAXXAJXB9XMX<Q?AQ&.AF[C.BL%Q3A@Oe
M^Q=1IK,]9TCE6<A:AY<%[Y @Z.B'_N(2]\QHAAH=6GV^HRUL@: .-0D7F>8Pd
MG;?!A;CEB=]X9M?%1QKA3*7-$VGA$)KQ=,<XLNQ*B-XPAH=>!VAC!=QN@33&c
MI7$UJ\GZXZYBMJF"T855+K+;!P&TN2,9)@A5T,D3WHD3-RBL"E3# P@VF\$5b
MZN F^GL)")B FO%X=EMGF0)#&]0&ODQ!+5Z-V+:FDP1Y70@',H!!#0YS!74Ba
MJ P*.ATRV7 A(1R$<+6B& CV"P(0Y. &,!#Q35!0@Y (R@8TF$$+<B #',3@z
M)EPP@0L@,8 0-&@-<@JPD[<EGA"X!";)9<]+V "$!F$K#2ZH0A6&D+.;!"%<y
MACL,%0:L$,Z6+ \'5H#^T@4"*;R!56NHF1OT<).UX+EF)1A##/)PE[25 0A;x
M<H-U\. "KTE%,%(I A9N AH(3E)/1D8N1$E& $X  %$!  #Y%$IQ21KQ 0  w
M#"H@#0#QA@T9+F/>M&D3Q@T9%V- @*!2IPP()778@)!!8Z,,'35JZ(@! T2,v
M'#E@-%#00B (-V7N(%3(T"%$B5?*D+F8<6,-DS- PAC9\63*E0$?('6)(R0+u
M'#9D@ A(8*7$! G*L)E3QBH(K'N\)A#89LR7-&[.@!#88Z*4*D5V)'BA @2=t
M.G+<$'3CPJ6*%RM#?"5K=@Z<,&,LMI4A=VY=,V_D)+:+I@Q7$)#EO'QSI^_ s
MOX$'#RC[90R:,)I!M#W!Y\0.L0GZP!8CITR8-:\57!T3YK*3(#I6MAS8M,;3r
MJ"!:5M7]->O6KLS!BB5\-NW: 6VIO(WKV"Y>O6_X^@6L0/#8T84/3U[<F"[Fq
MR)/IH$DSY[UF-YP]3R5OGKIIU!*UA=H9=.0!AUSNU7'9%$DX<00318#PGV9Hp
MP5$''?O!)EMT"=!F&VYB\>8;<"NM!!H(4D5!1$U% $E& $X  +<$  #W%-L5o
M-=*[!@  #%30E $APHV<,6C$A)$C @0<.6_.R G3!D09,V;*C*&3QDX9-GE n
MI'$SIXP<.G- N'E!!R+&%G/HY&$S$&$8-V<&*I0#8LR;-FUNDIG30,%(.F] m
MF$E#,^4=-&D0@E@X$,7#,G/J!!4#,H5*EB[-@)CSIL[!,BY @##RAF>;M@-'l
MFFD;E.,;-RR*^B19APT=$'0$@@CJQF&8G"Z*%J62=&3,,&S8$#2(<*<('8H5k
MQ$B1( E).!K_BF@29LU%IF4:SN7Y\ UHGF2P<G03QBY)$"C&F)53Q@T=D'D5j
M)!#QHLX<.2_8O!D#^868D:K; A;\G+:<D$()%C_^@G#WFVRB\PP\D'#1!' .i
METF1%L20MKPW3L<:5ZP;C5CG+,S3/HE8$62D@5%#=X&01UD\S9%'3&54E,8<h
M;IQ QWG$5?="@ .R8&!9)T0V%1MDJ51&&60 EM1;&(9$'D%$)&&$$5!(\<01g
M#8T0VU+WB>0&A90EM) +8XC07D$'^<C05'-DU096!.6$%!QT-/2@0[R5Y)N&f
M(1Y81X>2W4?B>4CU=!<=8<BG)4]FR)%&;V2 )&(:9R34%AIOO%&B3VW X0)9e
M9HV!E0MUN)$&'E,5V5%](DTHW(,1TI&8 D7)P)EG\XV%H)\@!!@?4M=A)EP"d
MYR50PF"EQ442F9%E-L.D8I7AT76!C70&"&>\P>0='[&!)4<>CE0IGV=EFL:Fc
M;>7A::BC!F5:3S3=E%D2S(:11D6!U3;=E*U)1!$(=X3AE)ITT-&;1;X-^U%(b
M8H2TI(:]<?2;K(-5=4<:@<U75!APM&8'9""\(58;ZMZDWI*^>14F;\V6E*B.a
M8:X(1QU<197I3]+BQ2U44D'KQAMW%$7&&^TAP;&K)FD(K;(#;<SM0A/Y-N(<z
M[-(K$$]EX'%5DOWR-"T<;*Q)AH8%$EG90B(4)1V]*7E+UAAIU$:B4J@E[4:)y
MT'ZLTAM_*:W50%7"<=<<:40LDU+2W102&12I1Y0"5?8UVZQI_I1H2HZARD9Mx
M:10HG7%H91;00&2904>WO(& AK?]NN&F&",6AB<<J)68G;@,EEA@&"!,$2@(w
M,[Q0 PP:BE''7U7?)6%1-8,FG]FDJB%=:UPUF)+>Y/%4A1-)8$$J0B-AI>%(v
M8[!11X X9;Z@N!59\6A1E,X!N;C]BK5B@',$+^V2/(4AQAL>F7Q"B3TO&Z9 u
M"TVU_>@@B'Z&U&2\(%U&M9E51E&\Q5&';',LKT 08ZRQ\1TT(4-."(:2J4QMt
M.C=90TK")(4W,.XD()#"B"PG%BJ480TMN<N@-/24I-P!(M CC]'4=(:1\&L.s
M O%0]=0$I1T8L$1A4L)%Q(*$,* !9A$L$!,"%1L-#>%P<NC90)K %!!I*#M"r
M**+'QB4$V0S$7R"@PA2F *W5D,LG9AE8NWX7&V\=\8"4>YO^$M "$ C!@2!@q
M0AGFM;8$J,6",3$>@]J0DBFTQ&DE]!T(/#.&1[D1!#B0 0QJD+DKN(<W%P1;p
M;$  !3;X42U-#,.KD&*Q)TA!+3FX 0P&>1ZUH.!SJP*!#6@P@Q;D0 8XB$%Fo
M_N@"2 P@!.+"($0$A0=8YB<-(=@>5T#@2NFX4I=L  +EP.:"*E1A"%#(#!H n
 m
end