[alt.sources] Fast Printer driver

mike@cimcor.mn.org (Michael Grenier) (07/26/90)

Not to be out done by Peter Grandi's excellent enhancement of my
original printer driver for UNIX running on 386/486 boxes.... :-)

Here is an updated version which includes a monitor program to
montitor the throughput to the printers. It works under UNIX v.3.2 and
under Microport V.3 and has supported various printers including
Epsons, HP printers, and my obscure Integral Data Systems. It should
support any Centronics printer with a reasonable buffer.

This version has no trouble driving my HP deskjet in bit-mapped
graphics mode with little load on this box. The driver was developed
for certain TeX dvi drivers which are sold by Scandia Microsystems.
The driver is hereby placed in the public domain.

    -Mike Grenier 
     mike@cimcor.mn.org
     mike@sp.unisys.com

Sorry, about the tar file...my shar doesn't understand directories.

#!/bin/sh
# This is fast_lp, a shell archive (shar 3.32)
# made 07/26/1990 01:49 UTC by mike@cimcor
# Source directory /usr/src
#
# existing files WILL be overwritten
#
# This shar contains:
# length  mode       name
# ------ ---------- ------------------------------------------
#  66048 -rw-r--r-- lp.tar
#
if touch 2>&1 | fgrep 'amc' > /dev/null
 then TOUCH=touch
 else TOUCH=true
fi
# ============= lp.tar ==============
echo "x - extracting lp.tar (Compressed)"
sed 's/^X//' << 'SHAR_EOF' | uudecode &&
Xbegin 600 shar3_cmp_.tmp
XM'YV,3-*,*>-F3AD`"!,J7,BPH<.'$"-*G(@0A$4;-&B``&`11(R,&SM:G!%2
XM9$<9*"W2L%%C1L8:+6-T;-F2(\6;.'/JW,FSI\^?0(,*'4JTJ$0%5-"DF0."
XMC)PT=LK(`;&4JAL0=-"4`0&GCA@V`IN^:1,FC1L7()"$B0K"3!TW(10HZ-BB
XM29HU6X_((9A&ZER+;>Z6`3(F39LQ;^2X:',V\9F_(*:,">.&3)HP(.R.D?-F
XM3IXY=,JT87HQAHP6*VFTL`&CA@W(%JF4P0)BSALS=.Z$V2O7J._?P(,+%_Y,
XM`P!0!!(&H()0`K]_?Q0F1XAF!!"$""#R>/X'#(;CTP%4OSY^87DJW#=0.`X!
XMRW5?1*Z'-P4#88"$>#P@A"]_R'6%E,0'``'^`<`(=UNX@!`;_4"GD!1%!$%$
XM$T4,9V%/'6&D$4<6?;2A221Q:!(-,92H$DLNT3`###?<T!$--]0@@TT7UFCC
XMC3CFJ.../R&E55MA@,;54VZ$-I534$E%%5,JM%''&&BH`"1H2F9%&59H=+;5
XM&6_<EH=51M8!!QT*P*&D08A5UM134<G!5!YOU`'";:%==489=(!P1QI9@5"%
XM$TG0!@=G=J1!1AED@`"GG)-=)48=9IBAI`)AY,E&&4'FB1EB8EX*`I2[A3&&
XMD4R9A>56@YIE)`B/1BJ5"W)1\895H(7!!ANG@F!$ID.JJB22;2H:)PANE($H
XM5K/J()='*63V!EM9;07LF5ZU8-E>HR;VI1EI7,K46X=.%2T(>,E1+*YIFM%4
XM&MC2H2UL01)K[*&)FI&8L'5,Y1F5;:"5E+1L*JD;4XFE<899MK*1!VQW/$5'
XMG2"`JZ1FG,&16)Z/YLDG"+;:!H(<;WU;F9)%3!$H6E6,+`=L%+]AL1QTL)`K
XM:)"J:^JXT^I;[;5E9"O'EW-D60<;B7()FZDOX#G&"Y6F^T(;;Y`Q=!ESO,`&
XM'&@I48>0<ZRU51BZ?7D'&I66$6Q5-VO%FTANO'$'6K!-D=C/,B<AEALGY+E7
XM&Z*)H626=R!;&YYB1@Q'KMQZ&['*?@)*FQ4NS.""#,O*T"QB<'QYM0MH6.0N
XM""]L+<<+9HW!1AV'OK#OLC-<GFC2="S=]!MNF/%TU%-7??5<<]'0+!5YF`D"
XM67@)_FBWB8Z[^:R)EX%6$NK:O7??2CYU!AHQ+QYNXX&"`+GDE+,]K^![N1$&
XMW[DN+S@1`2OVQK(U-`OR56VL\58:>,CE(\!)3E55VX';2QC(\*7/<>96<)N+
XM#9KE!+?I:2O%.M;GH&89,WQI45.Y6FTL]@:PN.$,M:G6OD+3+Q`D@0Y,P0P=
XMV'097$$&5!^$X+R.Y;?);&TKRCM<SJB"PC*P05UD>`/5B/6&/*V0,G-@0]E.
XM!9EBW<&#6P&5FP2'F2%(X05,,,+@XE`'@@Q$7HBBX9>@)J14%4DJ<WC>52`S
XMKN:!3G2JXR`;K`8'TIU1#F8051GH>*J]+"EB<ZA#PKZTJ4I]:BQDJ0QDQB:0
XMS@F0#$PQ`V?:D"NS="5/S4NAF@Q2F5(9<5:@"6(=Z("6*VQE+W!0XD#82+8\
XM(:8-B4S4GOID&[YEQ2P@9"24]-0M7`4Q5T<LB!+ID`;:M>5>6X-;1Y)PE2'P
XM4$]Q(AH(V-"E-4Q3,"#0@4508#>R105O1GR*!&?U2CAT"X=*F4,(4K`LDXR@
XM=*<[%`AX$,IB<LX'L`%,6:Z"`E5Q3`YG&(/,I`@"%:A@-V>P`SM-`H(]Y%,D
XM_DS#0.-4I!T\M"-&2`(3BE!0,UB4H1TA:*LD)8<MT``&.;!!%RQZ48O8:RK]
XM!$$//+(#JLSSGP&M:1I6L()F.12D(E'73.UE)C>@`*%VV$(:NB"S)WQ!"D1X
XM@A.8D(44U/0%*GC"$F1&NZT$+9J)&M0;Q!"&KWQ)*IR9"I1Z9LU;,ND%+>T(
XM(SV%`C/<"84H&*E49';2E,K,#"EH5EQ-8D8ZF`$%(BC!'+@@!Q'(3*]RL*I%
XML`H"(M2A#6+`BAR0.,QB7D4%<`5J1\Q@.BW5U:IQ[<-#56N2O[3@M:]M9VQ^
XM9"8YX&H.FTG#F$P(R*U41:R%HA?'J/E!7O:I#5_R%1[UV)9S6H6)(IF#''&Y
XMKG9I"U:RO<'O?D0[A<TI6N)22G$7-3R#84]/E/FD6/Y(/'1N18-0<P.?$@,9
XML9YALR74FI#&D"A5S2J^\YT*99(7O*VTMY1:N<JX"JNDI4!F?O+]H,Q6J#DX
XM?"&^(&A!&V(``]`=R@YTA(%<CM"E1#'A26M@@6PU+!C(!`8OA#$,8A3#&!<X
XM1G^P>:@"U*J5,;0UG04-K6CUI!2ZVA5/<\AKS?8*@K[:X*^!!<%@15+8PR9V
XML8U][)(C6U/02<FRF-4L9ROEV2!/F;34-,AI/PI4UIK$S1UQ+6Q;(%L0_(LK
XM4KEM;G=KMQO^$;B&.I:M:)=+/G4.N6"22AZ_Z,:TE0$VTNV2!T'(,Y_E`;N0
XMT:Z=N>L&[Q91;5BB+GD#<[T\Z:9(@OME5=J;OL,!V%TKZXA]\9NUK;FROT7Z
XM+^T"S#$UT:'`PPL#7A!,D%PQV']S>/!;(GR&"?]LFA;&\!2"T`0H;/0+3Z@"
XM%:"@;1[=*$,@$9&'2M(A&9#;)!CI<)-1E!'6I*0TIJ&1M^=-[WK;^][X5LB_
XM#((5PPSQ#E+YVEJ3E"@Q`(T@EBEN+;<B!CYI.`QP,%/1-@L'I8R!*7<JUF9#
XM0P8%&)QC=IY-4PJUIOX=,[Q;00(4FD*U-:@!3VC9-`[]'2<4?JP,@Z(:08RH
XM%06XX;)^F\IM^LTWIBR82*MRES3']:?N[?!SNME8#</@9SXE&[+HC>30V)!`
XM*"!=21:1(E,XF:>.$)-O-2<-ECA3A^M=4G4]@XVZAVR1N9O$[@R%@0M@P'?8
XMR$2T'\F!#'#`4!G`:,@S6)$,7,"2&L#&W'2O.U#Q?O>]]SW`]>7,?<]7Z_WB
XM>H*[AG6O"2R\`X/@"@DV]M>1K6PW,-O9%;ZP,7/V@B8(NPS-R[=OP/VA#H5;
XM)*8YMTA0HI%UMR0C,KA!#&S0D1O`0`8UD+?NIT_]ZEO_^@X9@A&8$(0C3*$'
XM"E"?-C<W!KD$;3?9A+8+QG#(VADL,[=WHW3UN/XWSF%T\$3='O=%1\XI(`'G
XM-Q4M@!GDUW[<`D*VAQ?R!P?TQWZA<W]V9#KZISJ?T7^=XP.;$X`*@'T<V($>
XM2!'WX1-T@`_0P0`-$8(`8``)@0@D^`<JB!#_$(-_8`<E<!U$H`_000X?<!S%
XM4`'7@04X^`<T$(3J0`+7$2#7<0S^`!U%>!U@8`((07OI8C`?Z!,98@/,)VZ_
XMUQ'!)R(FP6$N8GPIDGS+ER&N$0/25X5JN(9LV(9'(46B8B0HH%URD7/<@@<R
XM!6T*X!9N,"J>Q10S919\PE5%-5!I5@8RTS!\@HA4\0:CP@8*4(&;@P;_%X`9
XM1H!8PWY3B(#QYUSS-Q#U]X#XUX?QM'^2B#47F(%DLS)NV(JN.&\HR!,C6((G
XMF!`O"``L"!VW&(/008,V&(0ZR(,^"`!`"!U#R(1&"`!("`!*B(Q."(4`0'OD
XM]XHW<859R(5;6&["=Q&N01)BB'S*QWP7(0,P0`-I2(WHF([JN",*@%7_MRME
XMM'HEUR8)D`!#X#)Y8#W8@P)CT"PQD`,XD`.9T4AAX$,@H!=\X1>@I3_O1(KZ
XM!P(BP'\,2&MH(`(*T)`2*$\168&_9B9I5)$7F7\:R7_7PCD6B9&E")'\-P<&
XM8SY<!Y(H^9`;634WI!@P*9);,9-)(P?F\@8F&9(..9(<^6L_&9-"J3NH:)$7
XM>2C<4BP@P`10(`158`0FHP4<Q6%]-P),:19;T01!@`4H@`<LD`?-@@)AV2P^
XM``(H0)8@\`-JB0?-HDUK&5A+B7M<F1E)X`1A.99E>98W-9=M^99QJ99DR4[A
XM9V$3.1J]<D>`*&4_U1%[``(P@`<S(`8")9F4Z3<R,YF520:;^9D@L"(R$P,R
XM4P,=U@<RXV4@X'7*Y6%F$V(,M9`B$9F<>0,XL)F4>0-A@)LS<`.>*9F@*9H>
XM49JGF9J4Q9IWY)H@=C5_)Q*R"9F8F7RW&9VZB9O)]YLP$)S9.9P@8)H@T`<=
XM<9SR^`(?1D>0YYQPU0<L15!7\P6ML@5>B050V05;`)52295)8)4K)1?^=#6'
XM\BAG,%,PL`/U2%DR\3ETD"]784P+QW(`>C`?5(\)L)!UV90&9A:)<98)$)8@
XM8`*8&2F&B54),`5T4"E;PQ47PW(6.@<2*J$4JI5VZ91.\`14\`52.059L*$R
XMP0,\``)T"*,6"@(S6J-!,`1+4(\HL*,]ND`5>I=%X`1$@&U&\`50$`104`12
XMH*/SU*/QTZ1..05%L%%#0`5(JJ1-QDY`>I=#^@58*@5/D*5)NJ6A&:)28H^T
XMLT(=A*(PHZ)<R:(M.J%PY:5;D012$`5LZ@1!(`0;I:4\>J:"&AEA6@1C^@5Y
XMR:@]VCJ/NJ9YF01D&J>-:CF/&@3:YE195*9R&@-HNI5?2@5N*@1%4(\QH#]7
XM(XAT@`+LY%`)X$_W0P<6E0!5AEA&$`130`6+N2H[9!:U<BN(P@5N(`*HE0`O
XMI9:[FH<#NC@;TZ/Q"94UM:L\Q4X)@*L)4'-B@`+'-@=;L*M=L'XKQ`9?\#+9
XM`Z9B6J-Y"0)\(*0T2JF`0@7/FJOJ@@+^608`ZJWU^*LBP$Q\TD*U4:()2C#J
XM0IZO>34ET%],40)XP*R.)64MNJLR8Q;C6J[G*E]TD*ZULK#M>C&!U:NJI5IR
XM<34N0Q`H\&$R0T%EP$[^!+/#$S5E8%&XNA<'0R53,:TS%1AM(P<O:S:HU5)I
XMT*_6FB<^,%/9NG*"]:TME0!UX`)U\`5H=2\S501)\`1L%GD6L1<):BY?^V9R
XMP:]JV4]NT+&K9Z[HZ@(CNS4E"S/-XJ%KVJ9OVBP](*!1"ZY5>[59.Q5;V[4$
XM*J)%P)/W<BBA,2J"EB?'9F;UF+1J^:\!^W\#BW16AIRK$K@LM[@<-R=7X;#+
XM"0<1:[$RLZO[*K8*2J#_E[*R"@>EI68?1K.H]F$Z^W^4U4"W5%QE@`>%04S%
XMM9`J.ZN.2`=L4+1V,%!M\)L(%;,X2[MY8K-CL+S.>R@615`'!5"W&UVS!"7\
XMN+P^I6,B,1G\=@1%4*-02:5!(`5-,`7*PE"2RX_X6'/DVK8RT[RUD09Z4`:W
XM4;_*-0=1UJ,PX*VJ:RX@P+5>^U!B($!KP%+C&R1;`:;H"P7JR[[N^U#QBSEY
XM8!9'!5`R4ZXRPY+[V[_E&L"22<"$8\`(7+86L<"8TL!U1KY;`2$2_`5#D&U.
XM0`7O:Q*X&E&]&JTQU0/5F@8W];0ZU:T-]7\6X;%+Y0)GQ[^CU)@#JL3%BD9*
XME:YB]P7!-`>!\3#'(J`HNUH*S,`.W!%,275LD"?*D@`%?!5<ZP16$`1,4,86
XM`6<W-[97,<4J>YA?P$ED\!6.N`;^"@=:9@83]19TP$Z@`3*C`FU?L(D%=377
XMNXH%U2H6Y4^<4E$*$)FB15E3@'"AQA2`[&-S,DJ"<W2M:6:0X4^+/%9E\,B:
XM+%=%MA7RB\CAVU*4-5>H(H]5\2B>$<*7@G,<H\LN*F0,I<MJ"0(AH)8<.\@M
XMX`-Q.P=SF\@=:J\U>J-5%;[U"%17\\Q/G'8\Q<)TEP"'HD1YX,P8"`?E'`9D
XM&<:X*R5:%<*@/"YPR+A"-THMNI#UV%+BB@+0]LQD4"EA,,TRHP*MPE,@\*S]
XM_,\^,"JV1="0&J_X2J_6C*^<2M'#VJI%\*Q`G+"<X3>PG"<SU<WIW,I^4U,F
XM_<IC4%$>[<HA_5JH!50+3=(.S:[N*C/P*JGRZ@04K:GY&M,@1=.K*,U;W,4<
XM%\[_E\ET\%H_?"_^G-(AG8<D?351QZM2%GE0O=)Y8@(>&@)J.ZXD'<W37+<5
XMC<W-(LX,E=5%`M/BS%I[O+)PH(BA@;S0RW)V<+NYBFI*W:N+_"268F&0K`*2
XM_'__IT$S5:X@L`+E-;1T?552HD%90C1,,9'G$TGW8A"7PKAA)8\4F@"4Q01=
XM0L@@<%?`"T+U3"IM,4F]I2\,^$4#-CB505W10DDUAYYU)A+(C`)_^\@41<V1
XM>;9`I=1YV`1YZ<_V.955602G:[6\;<N]F@`:S,&[358&(3/M^9Y"FZ&SRU2'
XMY-R6.]T0G-@SM=??S=S"W0+CW=LL58_MZ<>C+,A78]T6AMT82K3;?<A%(ED8
XMZ[JHQM7*_-7H+-;N2M9K:M8@@-8FH=9+W0)`+1)NC6.'*==E0-<*4+-F@]>8
XMK-Z5N$)^[<B!333M$T<-N(X-88WD-FY>V(6BA1$G<GPT0(9A"`)8&`,S<(XD
XM?N,XGN-`X8X%!6TB#HJ7N1F8\KDX\`+)]P(!.5`REA@A\&*/ILHG-SB9_;F/
XMV]F?'=HR0]K4==IHE-ICL=H;Q%RO[<>RK16T;<H=0:%`E=N[K=0^)654S%#"
XM[;3%_911B=SYJ=P18]Z]O:_1;53@7=V.3-^,?=_=G=_/'>A;L0+IC<B)SN>(
XMG&&-KLF6V]X(]]Z#+-_N"2E;D-WV;;3<[>9=UKH*H%K]W=4`'M8**[<#7LT%
XM7@4X>M93UM(@K=5L+<;?">%4[3`3/KL57KL7OLG_E^&.ON&,_->\[7X@)-B3
XMJ.,2P7LGGHTCL8T>H7S>N!+'UYLMX8WK9@,UOA'.'N[B/NX/P>,=0:)D!AH"
XM42JUDQAD04S&%*UMQ"L:E#-U)M<0\W%V43P(*5]@5UXP5AB'D1B+T1@`I0`O
XMJJI=^950.1(*T->-W)Z0_)@6\55[&M`E.LUE:_&NM*X:#VE9LJ<"?C%E2URF
XM/=1:O%D%8=2(4O*$1G10C$)EVY]PD-(SCVK_:LXW_]=5;5'J*1<=&4;J`O'(
XM#LGMF9CF^K3[^:@UG+Y5:L$>,5E2@E"U(332Y#<@9S&M^3E'OQN*N9!IZI3F
XM.\$5W+X@`'F41?5?-30%]S4HNO6STO5R\/5P%?8S7#+G:\,X3*RA*?4X]4<M
XMF1C'`K9`1:'F#@)/(`:%$B=)E`<R,_9?X/3K:_:OW?04_/1FWRBLLA4WE#RS
XM0D#F$QB3<2L+,T!J8&O`9!C4%:V8LDN/*[D11"_^\B/E<BXJBL8H]/!6+TN)
XM84U!"CAF\RH60<-Y?\-_0JQ[81`V1\\H7]1\PG&4XFLT9\I*;=E3T?J=<VQH
XMD07#HOG1<A5^!OF2;\$*\#D&X5YK%R=N9\K&A,IWA!9!`/.U716%Q&]C$W!,
XM]/I,T39Z@RD$)#AWE2O%@@>NM(IQJ"1'I295$2T>5T3&2Q!LE0+8)9N8H?7)
XMR?6(Z?5O]:C$7Z/&G\/3KIJOEABUUXF7HN/0KH6]UQ$A`E0QH'PM[A*]*0,S
XM((X^2H[?3N[D3N[D/@3.U`-C4'[:QWW>!W[MB6'C%VVT8V-)S7XM$/?19DSM
XM&5\V9GZK.'[11COUEX!V>2F52,D#Z,CQ57\):)>>DLZR=Q8:^#6;A'!E+AJE
XM7'86H>8@Q>:0GM\-!><)$-R]/=QU?MSX:97+?;6B;KE_KMO,3=V,>-V<[NET
XM'>I]_NA72]V+/NF\6MY7>]Z3SJMGFP"67AF8'M^#SNF>3M>AWN>CG@#\O=6H
XMWLRJ;J+2W.IV>Z\&CH)`I1`??1`),8M_8((,@8*WF(LNF!"\.(,U"``WF(,[
XM"`H]^(-!>(Q_$`[)N(S3L(1_$`[)^(0(\6J)04>R=Q9CH./0KH6]UQ$A`E(W
XM@!+JANUCJ"(UT'PR$&_@3N[D3N[B;I1;04]T8!D^B0;X9)1;04^G>$]^?V==
XM%4(1!Q;',DN=XU;KLLAID#%E!O8X.4\2&2K]@@;X9)1;04\<66`?B4]&N17T
XMQ)'^]I'X9)1;P0.D520OB4\*0!8<C%"7B51UC5!C,,GH9U!(M;U@\BG.ZP9:
XM[&]L1E`?)A!EL`58N9\6T;M&<A78.R=C@E!LUKM&<A7^Y#+`2P9E'+\(Q7X]
XM:FZ")1);$P9WDJ1':Q&YS8]Y>%<N4ZM(=;\`E;P0V08Z,`<Z<`<ZX*S-$@(S
XMU0*H"FG=BP;\&+X/S&\GT`8GD'Z4]6H%$[S&W!'Q6QNX11F'Y3(EZL$0&;$7
XM:P+QI<7^UBPA,%.HFL30^JNAA%8L(`(@(`0#1"Q`IR1#AR:T`TF"\VKWXC+P
XM?A4M``**9;I737<N4Z(`]:R]NS$HT#IM?=4)OD)CD#G(*Q",B%1;X#+`2P9=
XMT.`=\6H9&E]:[&\R\V$",;/B[,+"1L<A%=XG,`<GD'Z>C">T/G-"N^S&W!'Q
XM6QNX11F'Y3(EZL$0&;$7:P+QI<7^UBPA,%.HFL30^JNAA%8L(`(@(`0#1"Q`
XMIR1#AR:T`TF"\VKWXC+P?A4M``**9;I737<N4Z(`]:R]NS$HT#IM?=4)OD)C
XMD#G(*Q",B%1;X#+`2P9=T.`=H?Q]C*=^@P+QI<7^)C,?)A`S*\XN+&QT'%+A
XM?0)W<`+IY\EX@EX;<W;4]9P0I;1S@%N4<5@N4Z(>#)$1>[$F$%]:[&_-$@(S
XMA:I)#*V_&DIHQ0(B``)",$#$`G1*,G1H0CN0)#BO=B\N`^]7T0(@H%BF>]5T
XMYS(E"E#/VKL;@P*MT]97G>`K-`:9@[P"P8A(M04N`[QDT`4-WA'*_P55C0+Q
XMI<7^)C,?)A`S*\XN+&QT?/M#H\8/M35A<"<HT#IEJ[(JNS5A<"<HT+M\\@67
XM$A5L4->]RR=?<"E1P0;;VQ:_&DIHQ0(B4`5=<R?IUYX8IF%X^&$"4086"]1F
XM\*NAA%8L(`*RC/]X6!7C\G.8I21#AR:T`TF"\VJ):S8"4086"]1F\*NAA%8L
XM(`(=T;OIUYX8IF'DJ)QT%`,6"]2]RR<HT+M\\@67$A5L@%HJ^VH9&E]:[&\R
XM\V$",;._GB?QI<7^-LGHIP(?)A`Y*^P6X4^)<RASL+%L9O()NQMTH,7^)C,(
XMI\7^QF8BQ>GD"`/[:1%RKYCE6L;Q6U?(,T0SU;)&]6$"P8A.!552154F/,!)
XM'%2_&DIHQ0(BT)X8IDU^8CY?@4.STK)7H5A17DR/:+IV+1`S6[:UE5;(*Q`S
XM6[:]RR<HX#MLIK(6$;_%](AUA3Q4(S/$7Z/&G\.;V2PAP+=)'%2_&DIHQ0(B
XMX"?F\Q4X-"O)CR>Y\FH%4UQ*W>6F4N_M8[$-#@*]RR<H$#]LIK(57Z(PH\7^
XMEH=/G&2M`M1)9"QP@`+QI<7^!M3Q6TR/6%?(0S6/G_?CW[X?W+;-$@)\F\1!
XM]:NAA%8L(`)^8CY?@4.S<E>Y\FH%4UQ*W>6F4N_M8[$-#@*]RR<H$#]LIK(6
XM@7!:[&]Y^,1)UBI'N\28BUB:^^]B!]MEYSG3;W.>@P9LM_YT`'=C8+%`#<1$
XM#,8VA:T,#P5'W%.P0;`E4`.)(A(EP&&)4@(XD"BB50*18P:F2Q4LP,18W/PJ
XMS\7/CR@J!E),G*[?',4R<U$O&R=?,;/^S,18W/PJS\7/?RQ2@@1:D`(O@`((
XMI\7^EF$)NQMTH,7^=K*E;GYXTL=XZC<H`-5V8"LR\V$",;._GB=0;0>V4E,*
XM@+T?)A`Y*^P6X4^)<RASL+%L)O>*6:YE'+]UA3Q#-%,M:U0?)A",Z%10)554
XM9<(#G,1!]:NAA%8L(`+MB6':Y"?F\Q4X-"LM>Q6*%>7%](BF:]<",;-E6UMI
XMA;P",;-EV[M\@@*^PV8J:Q'Q6TR/6%?(0S6/G_?CW[X?W+;-$@)\F\1!]:NA
XMA%8L(`)^8CY?@4.S<E>Y,@;Y4CZ.Z_7L#FWS*!46V^`@T+M\@@+QPV8JZU).
XM3<1@;%/8RO!0<,0]!1M,G*Y7D])Y"-5V8"ME'+_%](AUA3Q4@]-Y/_[M^\%M
XMVRPAP+=)'%2_&DIHQ0(BX"?F\Q4X!$IXDBMCD"_EX[A>S^[0-H]28;$-#@*]
XMRR<H$#]LIK(JJ_Q?4-4H4-5?8`>V(C,?)A`S^^NF5A9T\`5V8"N3C'XJ\&$"
XMD;/";A'^E#B',@<;RV9RKYCE6L;Q6U?(,T0SU;)&]6$"P8A.!552154F/,!)
XM'%2_&DIHQ0(BT)X8IDU^8CY?@4.STK)7H5A17DR/:+IV+1`S6[:UE5;(*Q`S
XM6[:]RR<HX#MLIK(6$;_%](AUA3Q4\_AY/_[M^\%MVRPAP+=)'%2_&DIHQ0(B
XMX"?F\Q4X-"MWE2MCD"_EX[A>S^[0-H]28;$-#@*]RR<H$#]LIK(NY=1$#,8V
XMA:T,#P5'W%.PP<3I>C4IG8=5_05V8"M=YLF[/US4%#AF81G!)4BWA2>E_5;M
XM%+_%](AUA3Q4@]-Y/_[M^\%MVRPAP+=)'%2_&DIHQ0(BX"?F\Q4X!$IXDBMC
XMD"_EX[A>S^[0-H]28;$-#@*]RR<H$#]LYKKZTRP"'+Y!]:NAA%8L(`+MB6':
XMY"?F\Q4X-"LM>Q6*%>7%](BF:]<",;-E6UMIA;P",;-EV[M\@@*^PV8J:Q'Q
XM6TR/6%?(0S6/G_?CW[X?W+;-$@)\F\1!]:NAA%8L(`)^8CY?@4.S<E>Y,@;Y
XM4CZ.Z_7L#FWS*!46V^`@T+M\@@+QPV8JZU).3<1@;%/8RO!0<,0]!1M,G*Y7
XMD])Y6-5?8`>VTF6>O/O#14V!8Q:6$5R"=%MX4MIOM2R1UD&X1$?DWGPP$>V]
XMIXU>R(4R`GG8/H9\UYPVD'PS`N[D3N[D+NXC`&V)MER,=B^/.TMHX*NAHJRX
XMHER+]F@C<)$)$`2W\BFK&(==OANH$B0&D3QHP';7(SB/^Q84E+1]00:P,@()
XMT$"L0AD:ET)^Q&!D`"LC<)$@(`4XITKH#T6;3TV!8_Z@?"6TVD+Z2V8,6@9<
XMY$4X-"ON;R0J-@(AM$OQ,BX&P45>A$Z&E/Q()C@6`W!RT`*%LXGY0F:T$W-5
XM8!`7"7*O%$O75#PH@`;!\VEX(A"#A*8)T#-9`I%<``.)IP=<,`8G*3A^/#-E
XMP$5>E),EXTQZ(`*G3%OR>`6<B@391JR%Q).7<2=WK*`7.2<9Q)62<BPHX%9_
XM-#:&-"Y<P'Y\@T3-(KDB4#+.I`<B\$>;@DBO;25D,@+#@RD%41MC@2?B!4*?
XM@T%5K!BSM16]NQ2E?4BP-.:&D4J$1`9V0!D#D6PC`+JH$@9WHI9^S!1>P`0I
XM`"LC<)$]DR40R04P\!%<,`8GJ0"8TQ=ST`,D0`.ZG[16'31):]5!D[16'31)
XM:]5!D[1DDDD](`(DH`(6F08]$*O(O`4)0`)$W`*>0@*8TQ=,T04*$$3_%ZV-
XM=A4DD$G_%T3?+5]X(`-!Q!0B0`+-(P)G[P,F$*OUV#-9`I%<``,?P05C8)'D
XMW%7#W@-@T+N#D@`D0,2*'0-@H`!!5"P5KBY;``(DX)8A(*`@T`7EGV#_9QE=
XM\Q5;T0*-)>$@$+@B``)@0-T$<3Y;00(P``;_U[L;$ZO<(A>]NS$B-A=^/#-E
XMP$5>E),EXTQZ(`*G3%OR>`6<B@391JR%Q).7<2=WK*`7.2<9Q)62<BPHX%9_
XM-#:&-"Y<P'Y\@T3-(KDB4#+.I`<B\$>;@DBO;25D,@+#@RD%41MC@2?B!4*?
XM@T%5K!@;)&FX%#KRA0<R$$1SD./-!Q/1WGO:Z(7#!P-_A^UC^'SBZ*,D,B/@
XM3N[D3N[B/@(A((HOT'!N\`*U!8D*8#:V`@(GT+L]8W^CTW!N\`*UA2LM,`4@
XM0`(=)@)&*`(G,.SJ0@(0ADM?(#%RT,=C\<I!XT-LP%*YS0,^$+XAE25P\+6%
XM!9$D\`6,9;$^KP`](`(DH`(6F08]$*O(O`4)0`)$W`*>0@*8TQ=,T04*$$3_
XM%ZV-=A4DD$G_%T3?+5]X(`-!Q!0B0`+-(P)G[P,F$*OUV#-9`I%<``,?P05C
XM8)'DW%7#W@-@T+N#D@`D0,2*'0-@H`!!5"P5KBY;``(DX)8A(*`@T`7EGV#_
XM9QE=\Q5;T0*-)>$@$+@B``)@0-T$<3Y;00(P``;_U[L;$ZO<(A>]NS$B-A=^
XM/#-EP$5>E),EXTQZ(`*G3%OR>`6<B@391JR%Q).7<2=WK*`7.2<9Q)62<BPH
XMX%9_-#:&-"Y<P'Y\@T3-(KDB4#+.I`<B\$>;@DBO;25D,@+#@RD%41MC@2?B
XM!4*?@T%5K!C@3N[D3N[D3N[D3N[D3N[D3N[D3N[D3N[D3NX]H1\(L1Y*,!TF
XMB!#K\033X0"V"`!4,!T68(L`D`73<0$)L1YC,!W?@1#K$0?388((L1YY,!TF
XMB!#K,0C3P0$)L1Z1,!TFB!#KD0G3X0"V"`">,!T68(L`,`K3<0$)L1ZN,!T=
XMD!#K80O3\1T(L1[%,!WZ@1#K`0W388((L1[5,!T.8(L`H`W380&V"`#?,!T7
XMD!#KD0[3\1T(L1[V,!TFB!#K40$%@!`FB!#K,0(%@!#Z@1#KX0(%@!`FB!#K
XM,0,%@!`.8(L`@`,%@!`68(L`T`,%@!`7D!#K<00%@!#?@1#K404%@!`FB!#K
XMX0*YQQ!+B!!G$`#M&5_K!Q%D818.<1\D```"$(O3$(L($1X(L35A<"<)00TA
XM>!\D```"$(M.T!"WB!"OEA@`0`("8!\`0`(`(`"QV`:QB!T/$1Z4,`#V`0`D
XM```"$(OAT!`;J!#*_P55C0?3<1\D```"$(OAT!`FJ!!.W+MT4(L(,0`!P`4%
XM@!".```%$!$N@/%AD!!<4``((0`),0#W,0`XX0)B,`=SH!!<D!T`,``),0"Q
XM2!'KAT@[QP79,2`),0`!P`@YX3(E"E`0(0``,`>X11EF`!$"``!?4$QB(!$"
XM``!F4&4/(0``T+M\(A$"```N`[QD`!$"``"+/`:9`Q$"``!WY3)T`!$"```M
XMZP82(0``4%MI!1$"``#%](@1(0``\,1S$!$"``!)9"QP$!$"``!5!A$"```/
XMD!#*W\=XZC<(00("8!\`0`(`(`"QV`:QB!T/$1Z4,`#V`0`D```"$(OAT!`;
XMJ!#*_P55C0?3<1\D```"$(OAT!`FJ!"OEAAT)'MN$.[-!Q/1WGO:Z(4>P2(S
XM8`-AB.UC2`,U4'P^RB(S`N[D3N[D+NY,$`#)P0)%X`HF$#L(<08"@!`<```#
XM$``+$((T@`0(`0D1@!"\D!T`0`T)`0T)00`)<!U.W+MTD!#0D!#0D!`T@`0(
XM`0W5F!`N@/%AD!`$D`#RD0#7`0D1@!`$D`04\1\`X`)B,`=S`"`:<(0:<!V\
XMD!TY`0@)L7Z(M',.`0[9H8Q:<!,"@!##``F0``F#P`X(L`CLL`A%@`"-0`6%
XM``&)4`&4H`'7@0[EP(M2T`A5P`!2``7H8!P(,0C$P`!0@`[I<`0(H08`@`LH
XMJ`D*<0``0`_#``GI,`PAB`L"D!`Y4`0(\`"-D!T(H08!@`ZZ$()9D`Z%$(*+
XM4`3\D`Y7$(*-4`3X``5HL``)<!W_4`,0P`#7@0Y<D``(,0C$P``]@((/0`C@
XM#@#_4`,0P`#DX0`)0![\@`'7@0Z1D!T`,`C$P`!J,`#H\`9'@!!9L`A%P`"+
XM4`$(P`#7\0\T``F-4`24``7H4`<=@!"#0`P(T`A%0`E0\`]U@`_H8`DA.`C$
XM@`#I\``AV`A%@`]0@`8]D`#7\0\U``$,<!WHX`[9`0"#0`P,T`,H^`"$`.X`
XM\`\U``$,0!Y`D`#DP0\8<!WH,`+9`0"#0`P,H`8#@`X!<`0(D06+4`0,L`@5
XM@``,<!W_0`.0T`A%0`E0@`X'T`$(,0C$@`"-4`24``7_4`?X@`Z8(``(,0C$
XM@`#I$`H)T0A%@`]0D"4)<!W_4`,0P`#7@0Z`D!T`,`C$P``]@((/0`C@#@#_
XM4`,0P`#D(0<)0![\@`'7@0ZU<``(,0C$P`!J,`#H,`E&@!!9L`A%P`"+4`$(
XMP`#7\0\T``F-4`24``7HD`D<@!"#0`P(T`A%0`E0\`]U@`_HX``#@!"#0`P(
XMD`XUCA!J,`#HL`4)D07I`(T`T`-MD!`/0`B>L(3_T`-SD!`/0`@!P(L]<`<)
XM\0"$0`:\F`[-P(MH0``)<!W_4`<,\`]UP`#H<`H#@!"#0`P,D`A%P`\]P(O_
XM\`"%H`5+^`_),`Q5L`CL,`CLP`;I(`-+^`^0D`Y!D!!H$`H)0![\@`'7@0X(
XM<``(,0C$@`!HP`L)0![\@`'7@0[V\(*#0`P(@`;SD`#DP0\8<!WH0`XO.`C$
XM@`#_4`<(@`[!4"$`D`7),`Q5L`CLD`ZWP(N0``GIH`4AJ`8`\`]UP`#HD`D;
XM@!"#0`P(4`C`D`A%P`\/T`C0"`#_4`<,@`81H`#DP0\8<!WHT`DO.`C$P`#_
XM4`<,@`Z:4``(D05J0`#H(`<5`@!9H`8`H`8#\`]UP`_HD`\_@!"#0`P,4`C`
XM\`"$8!S4@0,*0![\@`'7@0YC\(*#0`P(H`8%@`Y!4"$`D`6-4`@HP(M0@`X4
XML`$(D06)4`3T\`]U@`#H0`G?`0!9T`B%0`U+^`]0H`8"\`]UP`_HH`H_@!"#
XM0`P,4`C`\`"$8!S4\3[DP0\8<!WH0`$O.`C$@`!J4`#H(`]$@!!9T`B%@`*\
XM"`7H4`S&`0!9D`A%``]H0`H*<!WH\`<%@!!9<`Q%@`\*D0X'@1"+4`3PL`)%
XM0`^)4`C$L(3_L`V%0`Q+^`^-4`C4L(3_L`95@`\<L`9$``$(0`:)4`B\L(3_
XML`V%P`M+^`_>$`^#P`X(T`U<0`(`T`B%0`U+^`]K4`7XP`'_0`<0P`"-4`C4
XML(3_L`95@`\<\`]T``$(\`]U@`]H<`T*<!WH,`$%@!"#0`P8\`]%@`^X,``)
XMD0-%@`\/P`B-P(O),`Q5L`CL$`CL0`0AF`Z8L(3_``F0``GI$`T)H08`\`]U
XMP`#HD`+&`0"#0`P(4`C`D`A%P`\/T`C0"`#_4`<,@`;WH`#DP0\8<!WHT`(%
XM@!"#0`P,\`]UP`#HH`+3D05J0`#H(`!$@!!9T`A%0`I0H`8"\`]UP`_H<`@^
XM@!"#0`P,4`C`\`"$8!S4X0$+0![\@`'7@0[Q,!V#0`P(H`8%@`[/,`0(D07'
XM4`3XH!#I$`$)T0A%0`IK4`7XP`&+T`0(D`A,``$0\`]%@`^X,``)D0-%@`\/
XMP`CAP(N-4`2D``5J$`#_4`?\@`XIX`,(,0C$P`"%``P/0`C&01U-L`#DP0\8
XM<!WH,`G3,0C$@`!J4`#H$`=#@!!9D`S#4`6+P`Z#P`Y<D`XDP(N0``F0D`[1
XMD!!J``#_4`<,@`Y%D`$(,0C$@`"%``R)4`3\\`"-`(T`\`]UP`!HP`<+0![\
XM@`'7@0Y),!V#0`P,\`]UP`#H8`0#@!!9H`8$@`X>,`0(D06-4`2D``5J(`#_
XM4`?\@`ZCT`,(,0C$P`"%``P/0`C&01VCL`#DP0\8<!WHT`#3,0C$@`!J4`#H
XML`Y"@!!9<`Q%@`\*D0X1D!"-4`2DL`95@`\<L`A-@`")P`00``'_4`3X@`L#
XMD!`Y4`3X\`",$`Z\V`A%0`I0H`8!\`]UP`_H4`0]@!"#0`P,4`C`\`"$8!S4
XM(0T+0![\@`'7@0ZO,``(,0C$@`!J4`#HT`A"@!!9D`S#4`6+P`Z#P`Y<D`XD
XMP(N0``F04`6+P`Y0<`56@`LHF`,%``4,<!T/4`AYD!"+4`0(D`,%@``,<!T/
XMT`@KD!"+4`0,L`@5@``,<!V+P`"0\`"^$``]T`()\0"%$`$)L0A%P`"+P`"0
XMH`A!$`"$``P/4`@-D!"XP(O_L`AU0`^+T`?XD`S#@`94P`#7L0A%P`"+4`$(
XMP`#7\0\T``GHP`07@!"#0`P(4`C`\`"%$`$)\0\%@``,<!VXP(O_D`['P(N0
XML`A%P`"+4`$(P`#7L0@,``FA``4,<!T/X`L$$`"+@`^)T`,,P`#7,0C_H`,/
XM0`@6D!!7\`]U``'HD`H6@!"#0`P(4`C`L`CP\`"%@`D),0@]0``,\!\/0`A/
XMD!"+<`R(4`3^8`Q%\`\*L`A%P`#_``/HP`K_D050L`A%P`#_``-J(`#H8`O_
XM,0C$P`!H@`,,<!WH$`G_D050@`8XP`#7H08"@`Z;\!^#0`P,H`8"T`A%X`]0
XMH`8"@`Z+\!^#0`P,L`A%P`"+4`$(P`#7L0@,``FA``4,<!U`,`I0P`#7H0@4
XM$`"$(`T/4`@0D!#_4``(P`!)6`!0P`#7@8*X\`,)D0[RL(3_8`0/X`L&T`,Z
XMD!`/4`CED!"A``4,<!U`L`A5P`"+T``(P`#7,0`$H`B*``&$(`T/0`@=D!"A
XM``4,<!U`L`A5P`#_4``(P`#7,0`$H`BC``$,<!WIT`D)`0FA@``,<!U`,`H(
XMP`#7L0-%@``/P`APD!"#T`,$P`#_\0"$\`0)L0C'@`A%X`_&4`3_H`"+4`0,
XM\`\P@`ZX\`,(D050L`A%P`#_``-J(`#H(`P_@!"#0`P,@`84P`#7@0Z=\`,(
XMD050@`84P`#7H08"@`ZG\`,(,0C$P`!J(`"-4`3^``5J(`#H<`D_@!"#0`P,
XM<`P%``4,<!THB`L_D!#I8`)+^`^+4`0,L`@5@``,<!W_4``(P`#7L0@,``F)
XMT``0P`!)6`!0P`#7@8+IT`,)`0F+4`0,L`@5@``,<!V+P`"0$`I0P`#7`02C
XM``4,<!V*0`$!0`C2\`"%``$)<0P%``4,<!TH^`\%@``,D(0%``$,\!\)L0C'
XMD`Z[T"#_``E5L`CL<`56\`M8P`#7$0K,T`#7D0,%0`<:<!T/T`@FB!"A0`<:
XM<!V+P`.%P`8,<!W_4`<(@`[-X`,(D06+``^%8`\/0`@[B!!6\`]U@`!J(`#H
XM\`P^@!"#0`P,H`8"@`9FP`#7H08"@`Z^X`,(,0C$P`!7@`Z=X`,(D050<`5J
XM(`#HL`H^@!"#0`P,H`8!H!0,<!UJ(`#HH`D^@!"#0`P,L`AU@`^+T`?\D`S#
XM``F0``E5L`CL``57T`A%P`")4`3\\`"^4`#X@`'7D0H"D!`/4`@9D!`/X`L%
XM@`\8<!VI``@)\0"$H"`(`0@-@`\8<!T"@`;L@`'7\0]U\!QU@`#H(`@6@!"#
XM0`P,L`CX\`"^4`#X@`'7D0K@#@`/0`@;B!"XP(O_L`A]@`_),`R+<`SI0`^\
XM"`F04`6+P`Y0<`6-4`00D`A%P`^+4`0(\`"^``0,D`H"D!`/4`@9D!"+4`0(
XM\`"^``0,D`J`D!`/0`@LD!"+4`0(``A(P``"\`]U@`#_4`?/40<,@`X48`$(
XM,0C$P`"+@`^+4`0(\`"^``0,D`K@#@`/0`@;B!"XP(O_L`A]@`_),`R+<`SI
XM0`^\6`6+P`Y0T`A%P`")4`3\``7_4`<(@`;<@`'7@0YHD!"#0`P,D`S#``F0
XM``E5L`CL``6-4`00D`A%P`]0\`]UP`#_4`<(@`Y*D!"#0`P,D`S#``E5L`CL
XM,`CL0`%7L`A]@`"-4`00D`A%P`_&4`3X$`"+<`R)4`3TD`A%``]7@`XZT`,(
XMD06)4`3L8`Q%D`\4\`]U\!QUP`"-4`3L``7HL``),0C$P`"+T`?HD`S#``F0
XM``E5L`CL$`CL0`$A>`56,`6+T`<(L`AUP`#'4`C\L(3_H!#'4`!\0`'_D1#'
XM4`"`0`'_D1#IH`X"@!"0``F0\`\-P`<4<!U7\`^U0`]+^`_H(`#K`0"#0`P(
XMT`.\^`\/0`CX$(+I``T"@!"0``F0,`C[H`(/4`@7D!#'4`CPL(3_H!`/8`L&
XM8`2+@`WI8(((`0F0<`R%``]+^`\H>`R%@`]+^`\*D0X=D!"0``F0L`:%@`]+
XM^`\*,`##T`+U@1")4`CXL(3_\`"V8`!&L`C8\`"^,`@9<`'7D0KA\0"%0`V\
XM.`B]@`]+^`\`\`"%L($(<0R%@`]+R(O0L0C#D`B%P`Y+^`\]P`8)\0"$$`$)
XM@0MHD!`Y4`CLL(3_\`"%<(L/8`L&8`2+@`V%L`T/0`@CD!"#L`];\`"%4.,(
XMT0B%``"\"`56@`[!D``(,0C$@`"%``R+``\/4`@9D!"XP(O_L`B=``Y+^`^+
XM4`ODL(3_L`B]@`Y+^`_),`P/X`N#D`$7<!VI@((/0`@-D!#'4`CLL(3_P`8)
XM,0C#``*#L`]N\`"$P`<),0@]``@4\!\/4`AOD!"#L`]C\`"$8`8),0C[L`4/
XM0`A=D!#_4`!\0`'7\0\/\`"-X``)<07H0`8.@!!9D`X+D!"0``F+<`0$\`"V
XM``#_<`0$D`B%0`]+^`\/X`N`D`$7<!VID!T(\0"%,`R\^`\-P`<4<!U7\`^U
XM0`]+^`_HD`82@!"#0`P(T`.\^`\/0`A?D!"+,`P]L`4)\0"$P`()T0-CD!`/
XM0`@AD!`]D`8)\0"$P`P)T0-ND!`/0`A)D!`],`<)\0"%8`L)T0A%``%0<`6-
XM4`@`P(M0\`^U@`]+^`]3\`^U``]+^`_H``,'@!#I``L)`0F0``F#T`O\L(3_
XM```/4`C0D!"XP(O_D`[2L(3_``FX@`8)D0.%P`Y+^`\/4`@[B!"+4`004`#A
XMD0A%``&+``7\8`:AP`<4<!UFD`@"D`Z*D!"0``F0@`MLD!`Y4`CLL(3_\`"%
XML`$)L0A%``$%$!Z)4`00L`A0P`^AP`<4<!V)(`#IP`4)`0F+4`004`#AD0A%
XM``&+``7\$`I\0`'7D0@"D`Y!D!"0``F-4`00``57\`^UP`Y+&(.U@`]+^`]3
XM\`^U``]+^`_H<`$A.`C$@`&)4`CLL(3_,`B]P`Y+^`\`\`"$8!P(L0B%``]+
XM^`\!4`C\L(3_\`"V8`!&4`C`L`C8\`"%L``)L0B%P`]+^`_I$`!+^`\/X`N#
XMD`$7<!VID!T(\0"$H`<),0@]``@4\!\/4`C(P(O_4`!\0`'7\0\/\`"-\``)
XM<07H$`HF"`!9D`XFB!"0``F0L`A'0``/8`L`\`]'0`")4`CTL(3_\`"^``@9
XM<`'7D0K9@1`/4`C"P(O_T`!\0`'7<07_4`OTL(3_@`ZE``$(,0C$@``]P(O_
XM\`"%H`:\>`P%``@4<!THF`Y;P(N#L`\E\`"%\``)\0"V8`!&L`C8,`C[4`(/
XM4`B$\!PQ6`!\0`'7\0\/\`"-X``)<07HP`$F"`!9D`X+D!"0``F+<`0$\`"V
XM``#_<`0$D`B%0`]+^`\[,`P/4`@I\!S_D`X+P(M5L`CL,`CL@`978`53L`A]
XM@`&-4`3`L`CP<`Q%0`L*<0Q%``L*<0Q%P`H*<0Q%@`H*<0Q%0`H*<0Q%``H*
XML0A%P`#6DA`/P`A;D!`]L!X(\0"'``4)40C`\`",@`0)\0\D4`B$0`'7`0G_
XM4`2H<`Q%@`L;B!#IL!X(`0G'4`2XD!T(D0X'D!#'4`2X``$)\0\%P`<4<!W_
XM\``/T`@<D!!7@`Y=L``(D07ID`$)`0F0``DS``R+T`6,L`AU``F+T`>4D`S#
XML`A'0``/8`L`\`]'0`"+@`T]L`()\0"$`.X`T`,MD!`/0`@2D!!"G!`/0`A#
XMD!#I$`8#@!"0``G_4`2D\`]-``$/X`A3,``P6`!\0`'7\0\/\`"-X``)<07H
XM0`\;"`!9D`X+D!"0``F+<`0$\`"V``#_<`0$L`C8,`C[``,/4`@C,``(@0MI
XMD!`Y4`0,\`"%4`$#@!"X@((Y4`00\`".<``#`(,%P`<4<!W_\``/T`@.D!!7
XM@`ZHL($`D`7IL``)`0F0L`A'0``/8`L`\`]'0`"(4`2_P`-X\`"$\``)\0"^
XM4`2_T`-8D!`/4`@%$((/X`M'T``]L!X(\0"$D``),0@_```/0`AH"(,%P`<4
XM<!W_\``/T`@/D!!7@`Y1L($`D`7I8(((`0F0``F+<`0$\`"V``#_<`0$@`A%
XMX`OI$'T(`0F0``EJ$`!6\`"^<`0-``7H\`$.@!"#0`P,T`,H^`"%T``)H0@&
XM@`A%X`OI<``)`0F0``G&4`2^$(,%P`<4<!T/X`M%X`L/X`N`D`$7<!VI``@)
XM\0"$0`0)<0Q%@`L0D!"X(``)D0-%``$/\`@["(,-P`<4<!U7\`"^4`2^``7H
XM8``.@!"#0`P(\`]-``'I8``"@!"0``F0\`"^4`2^L`C8,`AM``$"D`[T$(*0
XM\`\-P`<4<!U7\`"^4`2^``7H<`T-@!"#0`P(\`\-P`<4<!U7\`"^4`2_``7H
XM,`P-@!"#0`P(D`[&$(*0``F0\`\-P`<4<!U7\`"^4`2_``7H<`H-@!"#0`P(
XM<`Q%@`O9@1#I,`HAV`A%X`\[``\/8`@1D!#'4`!TH`'7(0(),0/`D`[JT"#_
XM\`"^,`@9<`'7D0KA\0"%`.X`@`L0D!`Y4`2X\`"%P`@)\0"^,`@9<`'7D0J`
XMD!`/0`AZD!`/X`N#D`$7<!VI$!X/0`@FB!"X4!\(D0XCD!"0``D/X`N#D`$7
XM<!VI@((/0`@;B!"X<`,)D0X%D!"X<`4)L0C3L`+0D`A5P`F+4`2XD`-%P`D/
XMT`@,$(*#T`?9\0"$L!X(,0A]@`H`\`"%L($(\0"O4`2@,`!%P`F)4`2@\`]%
XM0`OI\`H)`0F0,`A]@`H`\`"$H`T),0C[X`(/4`@.D!"+4`2P\`]%``N%``P/
XM0`B,D!"#L`]E\`"$D``),0C[4`0/4`BQD!"#T`>T```/0`BGD!"+4`2L\`]%
XMP`J%``P/4`B9D!"+8`Q&L`C3@`@0\`\%P`<4<!W_\``/T`@FB!!7@`XJD!T`
XMD`7ID``)L0A'0``/8`L`\`]'0`"+@`T/X`N#D`$7<!VI$!X/4`@DD!"#L`\K
XM\`"$L`$),0C[T`(/0`@2D!`/X`N#D`$7<!VID!T(\0"$<`,)L0C&8`2+,`V(
XM``'_4`!\0`'7\0\/\`"-X``)<07H@`P'@!!9D`X+D!"0``F+<`0$\`"V``#_
XM<`0$L`C8\`]-``$/T`A4L(3_,`A]D!T/0`C&D!"#T`>T```/0`B\D!"#T`>H
XM```/0`ABD!#&H(*-4`3```7H8`8#@!!9T`U=@`F#T`>D```/0`C9@1#=4`28
XMD`W@T`U=@`FXP`8)D0-%0`$/4`C&@1"+4`0<L`@0,`C"0`")``&+(`3\T`U%
XM@`G=@`'IL`8)`0F0``F+4`0<L`@0,`C"0`")``&+(`3\T`U%@`G9@`'I$`4)
XM`0F#T`>D```/0`@6D!"XD!"`D`-%``H/0`C9@1"+4`2@<`_8D`A%``JXP`8)
XMD0-%0`$/0`A2D!"X@`8)D0-%0`$/4`A$D!"+4`0<L`@0,`C"0`")``&+(`3\
XM8`:+4`6@8`:)``'_T`!\0`'7<053@`X/L``(,0C$@``]P(O_\`"%L($(<0P%
XM``@4<!THN`A%0`OIT`7[$(.0``F0L`A%P`&+``&#(`P$D`@0L`A"P`^+4`6@
XMD`@0D`ZYP(N04`6+P`Z#P`X,<`56,`6+T`<(L`AUP`"+T`404`C_\`"$(`$)
XML0A%P`&+``&#(`P$D`@0L`A"P`_I(``),0/`D`A%@`^)4`3T,`C^,`8/4`AH
XMB!"!L`^\^`</4`@ED!"[@(+IL`$)`0F%\`\/0`C9@1"+4`3XH`A5P`^(``'_
XM4`3XL`0/X`ASD!#_4`!\0`'7L0A%@`'_@``/T`@1D!#_4`<8@`X-\()9D`X/
XMD!"0``F0L`A%@`&+``4$\`]`0``/8`L"D`A%P`\]P(O_\`"$<`,),0C^,`</
XM4`@5D!"+4`3\\`"^``@9<`'7D0K9@1`/4`@9D!"#X`];\`"%,`B\N`A%0`&+
XM4`7\``@\``$`\`"$,`>\B`N\^`\Y4`3\\`"%4`$)<0P%``@4<!TH^`\-P`<4
XM<!WI@(8(40C;\`".D`()\0\-P`<4<!W_4`<8\`]UP`_H<`L)@!"#0`P(T`.\
XM^`\/4`@;B!#'4`"`0`'7@8*+4`3TD`-%@`\/4`@-D!`S``R+T`7HL`AUP`Z+
XMT`?PD`S#4`C_\`"$\``),0C^,`8/0`BWN`A%@`_&@!"X@(+I0`V\"`E5L`CL
XM,`CLP`!78`53L`A]@`"+4`<,<`Q%0`\*\0"V<``]X`4)\0"%$![_4`3T<`1H
XM```A.`A]0`\`\`"%T``)@0LHF`X%D!"0``F0,`/```56@`[W4``(,0C$P``/
XM8`L'D`A%P`\]T`4)\0"$X``)@0LMD!`Y4`3\\`"%X`<)L0A%P`^*4`7T@`@4
XM8`!'D`YOD!"0``F#T`?\```/4`@-D!`S``R+T`7HL`AUP`Z+T`?PD`S#@`LM
XMD!`Y4`3\\`"%\`,)\0"V<`")4`3XT`-=D!`/0`@*@A`/8`M'X`^+@`T[T`7X
XM\`"-L(,(L0A%@`\K,`Q```7_4`?TL`C&,`##``7HL`8%@!"#0`P,<`3IL``)
XM`0F0L`A%P`^*4`7T@`@48``/8`L'<`2)4`3\T`-=D!`/4`B!P(N+<`SI8`B\
XM"`F04`6+P`Z#P`YL<`6+T`<(<`Q%P`_NP(O'4`3XH!#'4`3TH!#'4`3LH!#'
XM4`3H@(+'4`3DH!#'4`3@H!"-4`36D`A%P`QF<`Q%H`P"``"AP`T4<!V)4`3`
XM$`K80`'7D0A%P`O'4`2XH!#'4`30H!#I\``)`0F0T`A%8`V+4`708`P$``$`
XM\`]%``VXD``)D0-%``T/P`CEP(OI@()'\`"^<``/X`N`D`$7<!VID!T(\0"%
XMH`Z\^`"^<``]L`()\0"$8`$)T0,MD!`/4`@F"(-%0`_=4`2\D`W@T`U=P`M'
XM<`Q%``T*T0A%X`V)4`3,D`[-D!"0``F0\`"^<``]H"`(\0"$L`L)\0]%``Z#
XMT`?H```/0`@9D!`/X`L'(,0)\0"%L``)@0LHF`X#D!"0,`/`4`C`D`A%@`X/
XM4`A[D!"X(`$)D0-%``T/T`A9D!"+4`30\`]%``VI@((/0`@DD!"+4`3,\`"^
XM``&!(`[PD!`/X`L/$`CA\``)L0#1@`@0\`]-P`SIL!X(`0F0``F+4`3,\`"^
XM<`&!(`X/D!#!(`X$@`@0,`A]P`X`\`"%H`()\0]%P`_I(`()`0F#T`?L```/
XM4`@7D!#_4`3\D`X/D!"0``F#T`?L```/0`@#D!#_T`3\<`0/X`L'\`"^``@9
XM<`'7D0KA\0"%$`*\^`"^<``]H"`(\0"%X``)L0A%P`[_4`3L4`C`\`"$4`"\
XM>`Q%``\H.`A]``X`\`"$<!`(\0"^<``]<!`(\0"$X``)\0"^<``]4"$(\0"%
XMD`0)<00/X`L',%,)\0"$T`$)T0,KD!`/0`@2D!`]T`()\0"%D!T(<0Q%``^\
XM^`]'\`"^<``/X`N`D`$7<!VI$!X/4`A*$(+'4`3@H!"#T`>X```/0`C9@1#=
XM4`2PL`A]``G),`R#T`?H```/0`@+D!#=4`#H0`'7D0[FP(N+4`3X\`"O4`3P
XMD`A%@`^+4`3\$`!%@`^#T`?T```/0`@;B!"X``@)D0X"D!`S``R(4`3?T`A%
XM8`V)4`2H8`:+4`3X\`"_``R)4`2D\`"_4`3*D`A%``H/\`M%@`R)4`2<\`"_
XM4`3&D`A%@`D/\`M%0`R)4`24,`79T`><8`:+4`2<8`8E\`_P8`8-```'8`:)
XM4`288`8E\`_P8`8-```#8`:)4`24D`UM0`F+T`6H\`TC\`U%0`K9D`[>D`S9
XM``S9T`:8D`W\D`UM0`G9D`S8$`[?4`2@X`WYD`WPD`WHX`W!P`W(X`W*D`W)
XM8`:+4`2<8`8-\`,`8`:)4`24L`G;(`[9T`:4D`W]D`WNX`W!D`W`D`WTT`W8
XM\`U=0`IFL`A%0`IFT`/_,``/X`@6D!#;(`[=@`W=4`2\<`P%0`<:<!TBD!#I
XM0`(),0CL@`"+P`S=$`&+$``+$`0$,`C$@``]H!`/4`@;B!#'4`!TH`'7(0()
XMD0UMP`G9D`S=@`U;D`[-L(3_``F0``F#T`>X```/4`AFD!!K4`3XH``/X`L7
XM,`#"T`+U@1")4`3X\`"O4`3P,`!%P`^)4`2L@`LC$((Y4`2L\`"/X``)@0NK
XML(3_D`-%P`H/T`@OD!#'4`!TH`'7(0()@0LC$((Y4`2L\`".L``)T0U%P`OI
XMD``)`0F0``G=4`#@0`'7T0U=``O_4`2X<`0/X`L'\`"^``@9<`'7D0KA\0"%
XMH`>\F`XRL(3_``E5L`CL<`56L`A]@`"#\`?9\0"%<``)<07H``_0F`4/X`M'
XMP`"I@((/4`@3D!`/X`M'P`"I``@)\0"$T`$)`0A/P``!\`"^<`0,D`I$D!`/
XM0`@\D!"^P`T8<!WI`(T`@`N\^`^+4`?XL`A]P`_),`P/X`M&P`"I\!\`\`"$
XM<``)807HX`(C@!!9,`C&``$[4`,<H`'7\0""L`V\N`A'@`")<`0$\`"^<`0,
XMD`KA\0"$T``)@0LHF`X1D!"0``F0\`"^<`0-L`@$4`@@H`'7L0)'@`!0\`]W
XM@``/X`M'T`!0@`XT,``(,0C$P`")<`#_\``/P`@/D!"+<`0$\`]'0``/8`L`
XMD`YZP(N0@`N\^`\Y<``/0`@+D!"`\`0,``+ID`$)`0F0``A/P``0\`"^<`0,
XMD`J`D!`/0`CA`0AGP`#^<`P'H!"XP(O_D`XZP(N0<`6+P`<D@`"*0`0DP`"+
XMP`0D``&#D`\4\`".T`$)40+_D!"*``Z+``W!(`X0L`#"L`C1$`SI(`#SL`J+
XMH`R!$`X#D!#SH`J+0`0D@`!?,`R04`6+P`Z#P`X4,`A]D!T/4`CA,0/`D`S#
XMH`8`@`[YD!!9D`A%``]H0`4=@!!JX`#H$`LK@!"#0`P(D`A%@`_'4`3\H!#'
XM4`3LH!"#T`?P```/0`@]D!"+4`0(D`-%``\/8`@+D!`I4`3P\`]%P`_I`(T`
XML`A%@``K4`3PD`A%P`Z+4`3PD`A%@`#'4`3PH!#_T`3/40?XH`8.@`Y9L`((
XM,0C$@`!H``\4<!WH@`H)D06%``P/4`@.D!#_4`<(@`YSD!!9@`Y]D!!J``#H
XM8`8)D06)4`3T,`A]P`\`\`",T``)\0]U@`]JX`#H8`$K@!"#0`P(,`A]P`\`
XM\`"/L!X(,0A]P`\`\`"-<`$),0A]0`\`\`"$T``)L0A%``\#4`3T``7H$`()
XMD06+4`3L,`!%0`_I,`&\"`E5L`CLH`8!@`;P0`'7@0X5@A"#0`P(D`S#@`L;
XMD!":H!`'``##``F0``FXT`$)H0D*<0``\`""(`4K@!##``F+0`0D0`")@`4`
XMD`AP0`")@`<(D`AHP`!:D`A@``&)``44L`+`\`_B``F+0`4D0`"+0`0D@``[
XMH`8,\`"$\``)L0A:``"+(`<$L`AZ@`"+H`8,L`AB``&%``P/4`@H"`3_(`84
XM8`6+0`<D@`"*0`4DP`"LH`/"\`"$\`,)00C`\`"$4.,(P0HZ(`P/0`@*@A"$
XM``P/0`@BD!"LH`/"\`"$T`$)00C`\`"$$`$)P0HZ(`P/0`@FB!"$``P/4`B\
XMP(LS``Q>,`R+8`Q(X`7#``F0<`56L`AT0`(,L`A\0`(0L`/^\`"$``@)P0JN
XM\`"%T`<)00C`\`"$``<)P0JN\`"%T`8)00C`\`"$``8)P0JN\`"%T`4)00C`
XM\`"$``4)P0JN\`"%T`0)00C`\`"$\!\`P`JN\`"%T`,)00C`\`"$4!\(P0JN
XM\`"%T`()00C`\`"$`.X`P`JN\`"%T`$)00C`\`"$``$)P0JN\`"%T``)00C`
XM\`"%``B\.`/`X`5?,`R?@`E>\`7#@`LKD!":H!`'```/(`@"H`((,0R0@`L%
XMD!":H!`'```/(`CND`((,0R0@`L#D!":H!`'```/(`C:D`((,0R0<`6+8`V+
XMP`<DP``S``RYP(O_(`^N<`_1L`AT0`(,L`A\0`((L`C!$`SI(`#S4`J+@`R!
XM$`X#D!#S0`J+0`0D@`"+(`]?,`R04`6+P`Y7L`A]P`"XP(O_D`-%@``/0`A)
XMD!`/X`M'P`"I@((/0`@FB!"+<`0(D`-'0``/<`C?@1"+<`0(D`-'0``/4`@B
XMD!"#\`,`\`"%D`$)\0]'0`"+<`0$@`2)<`0$H`A5@`"(``'_<`"+4`0(L`A]
XMP`_),`RXP(O_D`[QP(M5L`CL,`CL@`"+4`0(L`@`4`(HF`A%P`^+4`0(L`@`
XM$`WX4`*\^`>)4`3XD`L%D!"9<`_YL`A5@`")(`"+4`3XD`GWD`^-0`!5H!`#
XM4`3\T`A```/),`Q5L`CL<`56,`6+T`<(L`AUP`"+T`40\`"^,`0-T`/K@1`/
XM0`@YD!"+4`04L`@`L`)#0``I,`"+4`04L`@0D`A30`!3@`["(`((D0538`5J
XM$`!7@`Z?L`$(,0C$``&+4`04L`A30`")``&+T`7TL`AU@`^+T`?\D`S#8`57
XML`A%0`'_``/H4`4G@!"#0`P,,`#&L`A50`&)(`#IH`V\"`F04`6+P`Z!P`[X
XM$()78`53L`A]@`"+4`<0<`Q%0`\*<0R%``)+^`\*<0R%P`%+^`\*<0R%0`%+
XM^`\*\0"^8`0-D`B%``%+^`^+8`0$D`A%P`^XL!X(D0.%``%+^`\/4`@0D!"+
XM4`3\T`"\^`?I``$)`0F0``F+4`@0L(3_L`@$4`@@H`'7D0A%@`\/X`L'4`C`
XMD`A%0`X/0`B)D!"X4`()D0-%0`X/0`A[D!"+\`U'\`"^<`"%``R)4`3D\`"$
XMX``)@0LED!`Y4`3D\`"%,`Z\N`C'L`+#D`B%``%+^`\!4`3TL`A%P`\#4`@0
XML(3_D`B%P`!+^`\[4`3X\`"&P`$)T0A%P`]08`7_4`L0L(3_,`7H,`I+^`^#
XM0`P0D`[Z@1"0``F0\`^U``%+^`]3\`]UP`_H$`30.`C$P`"+4`@,L(3_D`A%
XMP`^#T`?D```/4`BGD!"+4`3\L`)&0`")4`@,L(3_D`(&L`A%P`^)8`0$,``&
XML`-%@`\/8`@6D!`/X`M&T``]L!X(\0"$<``)807H<`,A@!!9\`"^8`0,D`I$
XMD!`/0`@S@A`/X`L``1`/0`@S@A`/X`M&&*0B`*#@@T(<"@+X5X>>&@6+BO!;
XM480>%'2G2A0<1(Q!(6`/"!U0:`6=+0\%LSSP%3`5"(4A,RC$]:_FOT6=^/6K
XMN:@6`'\\>Q$`^B_9L(CTTI&S">E8(29$%0*8`2Q1$6R)"B$AFA4*UR+LCJ3+
XM$*%@1`8%"!:TRF`1%'Z)JK`;U(<=@`>-_$$P"_8>5K"!ZF!3"R"=NKT`(`5J
XM@DV`PG3=$"\>_#B:9,8('A>[C`UQX5R<@2@\5@2=U'2F$$.Z=U6T04)_;)Y-
XMJY"M6[A5T-$UC;</8M*F'\=!S!H;$9B%1A:<_)(ON18P:A=B0#3=`M63`SSN
XM0?RJ=KYH"=M^FZ@2$:*-"L$AN@AK%WB#>IVO>;=1E-&%P!"E9T&T4Z\U?0<`
XM+@H!DD,A\_T3$@4*+8(@47YEE6`Z8B@$R1+I)7C1`_S4E`4B`Z3#A(60K':5
XM8Z]M@)]^-=G3'P#_$25@.B.06%QFKS%8D%,L_H//BS$&V."#-65%74VX)*#0
XM@4<J^(@!$VS42Y-W%=*`0L6Y5B4#"BWA8).-``$#B%G"1,@<2@(0$3PK')7;
XM"M"4UV1\5#[@B!5I?OD5.%EM5=-D`*"8S@YIEF@B-@+.)EX1;9%G'GKJL><>
XM//<0^4^!(?U@$X:67M2./AZ"F(X*3#E%`E'*P5@("D2A6-@%)#95R*DU/8`?
XMJS4-@*5W#3)*VUJ,WE9>@KA@L601Y!RTP$PX5"!:.@98B`L3S@*0%0S5\1*M
XMJA@0A4:U3F%;4[//CK*MH64:E-QHI6VKIJ\X6LMH"_%V`T`WG?#`7B%"$!4,
XM.@24\(]R/0RL[@+?.0@$40(K6*49"L6G+WT'93'D$/ZB<T`)`O8@X$$*X$>!
XMC/B!0')!N!1Q;+*%A(PR'=6F4\!,<%3;7B-##&`5/.F(HER)#F)<T[\;=_QQ
XM(3JJVB,`%_A7"(#_)%K(PC4U;&LPX+15R<3_!*,.!0L((R%13G%`U,P[SDJ4
XMK6GC^H^N**M<4`[(A@0+V85T6Q,8X!8B[C_4/CL%VH:F1P-14*2'`^(1H0-$
XM#V49U,BR?#F>3JHEXA(Y`%#\4PO5-=7"-3IU(,81!>VE<V5!ANI9$Q)6Z=;+
XMX103(E/:/0K0M*I0SYC$KHV9J2+N1!&P>Y!1/U8CZX?&N^"*1!EP_-,G`Y!>
XM&5_!H\@`A(!$")<&^3+`$.G$:R@NT9E5!3R("/!/$?#UP9N5P'L64IKOPF,,
XM`"Z\#T_C1JJ.-L!W*"T=)%7`<==LXL46>BG$7OCBFH/Z-32`"8Q@!JO2-X8$
XM.JM520D1ZP77JM2#BV6L:`KQ&')<IJJ1"2EM)GLA`'91,]'@3&?P$Q':@G9"
XMCJ7P:$GC$5$0,+W><9!AM0(`UK3&-:^!36R6*MO9\$,KA[6-*'!3U=\"QRVB
XM\.U9#8`;)`R'.,4A#A<\.!8Z\!*OQLEL)FDL2.<^1Q3/C:X,#M@(,5"'C?C0
XM[E(AV4&OT.&7`RVN5HY0`4S$UX/TW840"2%>3110Q.J)*%;%<55(AJ<THC"@
XMDC*DD8VNXCQ"!#$_1'$`*)-7D.MEST&'_$<`:^(4%D0EA'5R!">WU[V0;$YS
XM2RJ$+6O%"/`-R)'I,&:)_B',M8EO"(M87_O\]X]&-.D!CW"%38ICOY9%3'YW
XM<03^UK2__L$/C6IDXR#?B+(X6FLZ1*';&AWA`?`!*F&E60$\BU0$;O2I.@`@
XM8`&1PS88M>LQ23/4;JJ$P-(D"EZUF5>][I6O?5&P:Q;,8,&4<Q`I)&QJ2'38
XM0<H0PA$>Q%AF*830,(K"@JA072QTB@M9.:`CK$Q9,X'9L]P%"5S44$W8N.'.
XMG!)#FJ8#"2CB805;"H"75NF4/8+`*J76P20N<1%;\]?7PC8V6B)DBFFK8D&=
XMXK8LXL*F<ZL;(;"0#Z_J[1]?U")1N)B>]?!D4@Y*T"S_0:>H'(0*RDE7E0ZA
XM'-*`0T"X$-`__\280!4D'6GX&1EKDKA"Q!(*P$SK&AO1QM*P<T";FR/H[$@4
XM=&3#9:=K3S<*P35N=``1U?H&.#P!,OS$\J'HV"LWD0,"ETT!'4T87A:R`H%]
XM->E`Q:U5([21IT(D5Y;[_$<ZDE&H$BD"6>G((WA^)2\&*`((_$!$(;!7$U?>
XM%6<!V%DZ*F$A146T+5C@AV`/4@&%_/89&DC)(J8Q@#BM+QT08UXB.M$DU_U#
XM$1!@9I,((8W[*>0?3=AL.&037=CET)$M:,Y=&-&!%*+T+H>0@$(^\@!&L/`?
XM)"@$)*IEJ">,:AXU*5%\BOI(0X1PIH\T`?1J(H&IBNR6CQT1\PZE24)P4H@U
XMH8"/'[N\Q#3/3%`EB@66K"H:]XI-PR`N%JF7*ZULV6Q%:F9-Z,8.;&[.0<.,
XM6D72X8]8180=`:A(<30<DB``S[%5PH!"`(4B?:;9*N!(1T%;!Q8_RZ@(X'AS
XM5M*<CE2,DC+JTD2OV&'H,#<I'2@9<B,D`@4KJ($":$!`M=`Q#GC4A",0&$0K
XMFD0!7"2-26M[!#5D(Y$!1#<K""#*#HJ`CP<80L.;YD>G/=>D4(]Z$Z;F*S$@
XMD`X1Q(K8WA*U:!C"#W340,\`X$A;"I%K?O(C/E![Y(<CP@];0VVON^[UKQ42
XM[&'7`FJ>ZQ$Z;)!L5#>;1)Z#=RUZ1&UT0`-6V>Z(@:WR[5Z`&9"$J$*O^!&F
XM`J";U[[.;RLY[>D">.ZMZ,#&.TZ]['1$$@!JL'@MWMIO/`!<VP.7B!3I<V<4
XMA802O>)3=#$=JW9[&M0@&/4>-J[L5*^:**U^=72Q.6N>U/K6W-8UQ-<]<6%;
XM`=HU04/.18..&?#<WLX>,M3_(?5J];L9%M#CMKLM2XG$Y[GA?,+";?W<AZO[
XMXS;WW'-_.PUW<)S9F78R).1.E"GT.PYA#_BVFT3PXA#B.R%A!,^+`P#$$T(2
XMO?+GS#\^1HI_NNM4GX/=>ZYJ5KLZF->4-:W+C72RI]O7P*;XUC$/`'2L8/-8
XM?W8MBCWUA=2AVL6HK^`=1/;"7P409AKWT:%B::6K._5.]QSQ0\>%TAJC'7>_
XM-_.47\=:--\FMT<'W\2><OE>A3`AV</FT1Q/L-B)#>,OM)BA>VE.VOSRTF[]
XM%J#/^9\G^?-S&[KHC4YZPB>])J?'=-:C>K,7;:,V`?1G;_=`?X:R>O'7;ZV@
XM(RCW?V7'#^D`#?2W!M&E``.`+-`A'4UR!"MQ`%:1++X`"!FP.P.!'-*P3:UA
XM)F=V:YZE3$`C@V7F"P=P!"68#A<`*O]@*%[B-^Q1"4TR`I5018K``!"`"`M@
XM8-&`#PWS#W^P"(W@-M.`#WO55Q3S$2Z(#09$"#-P96T23:X7)T1(%%H(2(X0
XM>&HB@S+G)__`9P6Q6Z]Q"VW%5_+A5X2@"G<8$>30`Q\6$ER00F]@)AKA4GB`
XM'(9PATCV#_H`)%SV#ZZ2#FUPAX>"9P?Q!8R(:(BE6%[&6-B`9^D0!);8B/T`
XMB5`SB2=@B4`#/_ZC"`LP!(B``-4T)U/B5X[`0KP$$H6`#3:1AN'$ABDG>7!X
XM3ZTT7I*2'EO`%85P??^P/_?"6D3A6G@06[,5$ITP)+$$.]$%C'AQ'"G5)!$R
XM<S$P)$V2"RR4"?>0#XT@!3"P",*`5<ZH!.7AC.UC8.J8#WN5)*`7:[Y`8<[(
XMC<Z(56#BCHC`;)L#"0X2D%GAC/L#`^F1!?'4C&MS"-[PB[T02W?Q"+H7C:W5
XM`8!@C;0U'3.Q`H^!.3W5`@U2"?-8CT1QCW5S@BDH&JGP,81`.0,B-X7!4[A`
XM4F;!DD1!CT!9$^VCC$2A3\Z8%<L7`)\8AXP!?(]%!O=@$Y:U-KJD$+OH2S.Q
XM.0>29B6V.L?T&&#9@.NW$N,33>SC/JYH36O3"-I47LAX5S(SE3]8BT216/U(
XM3,)882M!``/02&8R#3:!"SLQ9E5)3`:0;(UC2+%V#SQG8/H42[&3#AL@#S%6
XM@_[W7.BH$/FX5TN@@4T"$97P7'#2CN\H#"#"C_D7>O]8$^G0#.P08^F@86I@
XM>QC`$!3`$`E6!PS`$`B`#M7P'1R!`>D@%491!8O`#NG@BY<)";.I$&H0``QQ
XMFW60FZ7#$+U9![]9"L))#,1IG,.`G,K)G#]8(ND0"-U)#U-P%MU0`"R``:+1
XM#1B0#7V`#V80$?8I,/!@!E=R`&9@%?9@!OK)GP`P`/]9$=G0!O2P"%V``-TP
XM`-E0#K(EH`!0!"'!0F900D1P$%%2$-E`#]F`#MP0#-Z0#A^:#<G@#<*0#C[Y
XM+@X*`*[%`_`)`+)%6X-PB"YJ+ZY%`S-:HP\@")N3#<"0H/:0#?S`H`S0#1.0
XMH/10HMG@#MB0#1.J$460H0``!`<AC$7@H`5`!#,JGV9`&ATB7:N@$">:#-G`
XM#MZ`ID/:!D7*#]]0!?S`I$Z:#FLJI$1JI$P:I_J@"$V@#WA9$-,`#B7*#4/:
XMIO;P#5V@#TQJ!G2A#X^$D]O0`APPH^G@*B&*HGCJIGJJH"7Z#06``C/J#?F0
XM#?`0HMY`HLEPH/KP#46@#VMZI^Z0H/B0JGM:`"8PHU'JHX>`/]Y0`[DZ;1+!
XMH`XZ`=T0I6U@G^3V`+\`#$"P!49QG,F9#G=`%.;I!DG5!Q3@"TPPHQ$!`8T`
XM"-TJ&NT1"J`PHP07"IR`KKP6$0[P+P&C41ET$)ZA!K\I@G*$#BG`-ASAH%OJ
XM6J30H]<X""P4J(6!-@,B%=&$`1^1"`(0$O6RI=D`#MW0H,90`.,Z<>B0.%MZ
XM$=A0F/V:"`?0#:61#>10H\<:$LC0("2(+,>0*H5A3$A!<&MB%?C0GJPPH]S0
XM!#>[/MS0!>C@HX;`#39!LB):!_A`G]QPG_U$H`QPH-Z0H-ZP#5U`#0G*#1%!
XM#8"V",9@!-$$#J9YD-N`:#N+#]S0!NA0L>@P,"1KMAU`"P)+6X>`L.FP.6W+
XM#37`"U_:!?B0#IM0M!)[LK.5LH3P`8]A3"2+`'CKG?'9H'[X/N1`8HQ@#K_8
XM!PD1$H2Q"`<P`-@0"/N0L3_Z#'NV#YHPH[Z&L+M0NO'YKQW`#'$;$L84"/[0
XM!:8K"/%B#`8``^E0`V;:!TL;$4M[)4]K%5';!MZ0N%1KM6V`M46@M<@2)F-B
XM`(FK#65`#MS0`-2PMPBP`_/PHZFR"/,`+0IA!.FP=[7B"P;0`[QK$(Q00LOA
XM#Z!;"+<#`!>;L3$P,'1QN8>G$.2#;?2;NTZ@"`9```&`"`:P$L#0`SD`$X\P
XM##9A#+HR+9:JL%V`#(M0!\RP"'T`#=(Z%^S``E=@!5.0#H10F(8BGH/`#@@0
XMPNNIK73!)2'!!M^T%W92(>%S!`Q0`B+F4II4""X0,7^0&2%!`@UR!`B0`T=`
XM``?QPQOQ`U6"HRN!PZD`CE7"AE>`#AB`-EE`8H6P.6-!(E1!8H0`EE3!H.QP
XMP?_3!_1@%%'<`(M``84``AH@&G&!#]_Z`*\0+/^3Q$B,`#]J8S<L$.!'DN\+
XM`&KQHVM`$K[9QA?1!Y2#<MBP`]X0$OX+"$_``"!0"-M08FTT#.F019!0QMBP
XM",,P`])P#[R9#GA@$U<,P2E1,#9Q$!*G)A#,*$A@RJC<%E4``7`"C^GP!$P!
XM-$E,LU6`#W!2"-*P"-I@)[]@$]S[`(/PO<9PJ0UR%-C@=]K9;VR`6@(W#"EP
XM``&0Q(/@Q'B!/U21#H0!-`>P$E?@QA10"7(L&BMP!02P`]"`%ZERQ7*@Q5S;
XM)A^Q"/!P$$NP2%),Q2$1AH&\@NK287P!`7C,*%#P$/]P![\Y#6FB;6*<S^@@
XM#BB2!=^:#H5@K:0<9PB0#OUSF>)Y!;_`#99*@U?,AEDP",<``3O0`QPPQW<A
XM".H@&WW`#T8!"2EM!1J,`*U9$X6@((00"`0M$(-@)D.PU`K]2.8,#.F`/R5R
XMQ5Z@$!X=T+YP!`UP$=F@%EL,$HU04$7]#\=0`'2`TYK4U0)12IXQT;\I#\J1
XM!<=@Q%)A##@,(S"["$:<"$G,M1=LQSW=P5<PU%$L$#T<1#!;QH4]#%=\#=^A
XM$FX=U0<!Q95=9&PX"$'\2#)KQ$BLQ(=0#+%<V71VDS-A$])U"DQQSI_`%.()
XM!8?=!PR0V"4@!2DD!,B!!`3MQ@00QS@=VM#<#T5,`/^0Q(I0!0APD`]@"\+0
XM`RQ4,0IQQ3$PV;!<*X3P`(AG"UNJP?C`QFY=`FS8`^YR$%1\7<M=!&@-L]&Y
XM:?\`!8R,#FR`(]KF5+5E$-Q=TK3`%):,R31A$^E0"L%LVSO<5#W,Q-G6V4-<
XMQ$><Q$L<,>1<")A=T,AAQ>A``I/-Q5UPN&`,#%PL9'=1V0:MR41QQ4V@U0J"
XM%TES!<W=L>B0"VA(#"6M3'YMW,BMW,QMVF92L*J=#NNP-OF=#N)@K242U"V,
XM`(M`T36^`L;0'HEP!THLXF:2*N>L72'NU8OPV_$,`"OPUP<PSO5!Y53M*IK+
XMSNX,SS@]S_5\SXV@T=:0X9OL""99$%-@!?$=`,JA;3N`#<]3$/T-`O_-$UVP
XMH$BKP3Y=RE2]>>4)U,DYVWX<W@7>`T6F2`DM""N4VCQ]Z+;-<__0`*Z""#C,
XMV4*\+@5QQ6>@U7[=X$I<"/>1T".NVS?LV\`MSUX.YGC!0N>,L*VSSK[0SF^,
XMYO),S_:,S].-#N:@U>=<!\$<U(C=U6[,U5(\R)D0,?[PL(T@`R-F#_<]()B`
XMTY^%"Z#@`71LQ.%JR.'3SHE``,!>&(Y4(J&F%NC@`AE>%48<$KSMYY?\Z%A^
XM!0C0")"G%HD`QUN>ZH!-`"6A"EHMQAUZY8*,'(31WT`PV(8.WE[="!10#U+A
XM[Z@@`G3,[^V(``$_ZX71"L',Z.P0PLV.Y5J>YDG\SP'="&S8QF\L\HE`SQ+_
XMV#MP`WB1;+)T`^F0#B6/"^XB:0HQ$C]J"FA#%<-PPLF9PA@0"FM-QZ6Q:>X`
XM!6@0`%10$+Z)#B$0,1U!8M8T2*,0]5,!#$9AL.E`#X-I`PI!]`5A](+@!&BS
XM]"C,#@S`PJ2!#U(Q"#V`"#A=)>Z$"XR`TPT@(*/@]Z*!"X@/`(6O$*,P^/Y1
XM`'R`TY`/(P6`!SB]^*$P^:(Q"H2`TQ'1[T!P`+E`&+@<#^VQ"#V`^?XA$:=!
XMZ0"P`S7`^542`-\1"/^P^`>!\7S!#T!`</8=8E@"SL@A`8*2#=^AD#WP^:)1
XMF^BP!G"SU9N/TV%2SP%-"/=N/8-P*061"XU7$*=/<,%0!OP`$<90^@IQ^L@<
XM$JU.RZ>/"X2Q`F+#:P/P/[P69Q9(`R0R_?)<`,P/`.A?$/FX7W`2%T<J#.7^
XM'=[_'>$O$>-?_ES;@?RP`\;PH[!/;E9!#P32(7]`-_S@:["/!@#0(7^`#K/0
XMT=>M(/0#_L#`H.APP6?<!_!@%('0!OP``!T2&]FW"!U]W0I2"`55$I[0T>?,
XM#$R1"#7P__QO+>]8R_1`$?C0`N)A`/QO/4!@_2'1D?RO)A5`^XL@`8&@#(H%
XM`8M@`*-`^[JP^(&@#(K%;%9`Y(U``-G8(-?07XE0`:P?^S7`^G=A")L3"JRO
XM)A"0"!4`"*!_`8D``:'`^HRO6`>0`\N/T]L>"JP/`)Y/_4G,@S:1"*L/^@8@
XMLCE0`_]_$.Z2",L/^C=P#P9@D]9@$XU``-G8(-?07SL@#S^Z\(U``-G8(-?0
XM7SMP#=",!;)Q#YI;`G6T"/BP`_[@:Z50F.F@#(7)['V`Y/<P".Y``(E0`ZRO
XM)@90`G64"`;`_P"0`P=<".Z2"#7P_S=_Z":?PBLLPA>,`/=@!/Q@D_BS]:SM
XM(8M@!!-Q_H31F;R&G>@@"V/JT?APU"'1U`6Q`WW@QX2@![W"`&$R`.@/_J<<
XM#S3+:W3##]"L0!)AL_C9"+\M%9VCG?KL]6T1R9,\".O[+@SWVPK+7]"P`];P
XMHX;;^XWPVU(Q`,/`Y.A?$/FX"!4`"#@=\(.P",=@QFBLP6N\]%>]"'Q``@B@
XM"$1``FW!!"0``?+@"@>!L(MP#$CP!8C^!4L/"2C/!R30%G1``A"P"$Q``JAS
XM#(L0#<%PJ?-0"HN@#($0#EDT#Z3@!5]P%%1``GY9`9"`TU*`#AW)$;_-B_@3
XM"I"0YD1``@0P#)D%`&X/`'!?#@U"!21``(E0`9"`TTI_V'Q``@A`%;F@VO+@
XM"D&P",%P#]#P!4N?.83A]@``]ZZ@$$N//@JA"Z=P[^F@!7O&!"1`$-^!/@JA
XM"Z=P[^GPU,O!!"1`$#B"/H]1CLO!!"1`$(B!/H]AN,O!!"1`$&J!/F*Y9TQ`
XM`@2!(NC3]E(!]VQ?$,/`$03@]G>A=[B`HVX/`'#/ADI_/DGC]@`P$DM?(F./
XMTX'^#TM/:FI_$U1``@1@L&X/`'"?#38Q#&V@`W.@`W>@`P!0`F0``"`@!&%`
XM!B#@!G70!F)0!G(``F]@!B`P!V4P!F_@!F0P!R!`!V\``FWP!FZ0!G3P!G(`
XM`F\`!W20!F_@!B"0824P!R%3`F0``"`@!&%`!B#@!G70!F)0!G(``F]@!B`P
XM!V4P!F_@!F0P!R!`!V\``FWP!FZ0!G3P!G(``F\`!W20!F_@!B"0824P!R%3
XM`F0``"`@!&%`!B#@!G70!F)0!G(``F]@!B`P!V4P!F_@!F0P!R!`!V\``FWP
XM!FZ0!G3P!G(``F\`!W20!F_@!B"0824P!R%3!7,0!F=0!B"@`R#`!G#P!6WP
XM!FX``BW0!G@``F10!G:0!F-0!B$#`B```G>`!F4@!V4``G@``FDP!R!`!VA0
XM!B#@!G70!F)0!G(``F]@!B`P!V4P!F_@!F0P!R!`!V\``FWP!FZ0!G3P!G(`
XM`F10!G:0!F-0!B$#`B```F6`!R"@`R#`!G#P!6WP!FX``BW0!C(``R#P`F10
XM!G;P`FP`!S$0,FP`!U_0!F_@!B"@`R```E7@!F$@!FQ0!B!`!V\``F\`!V7@
XM!B!0`G,``F;P!G(``FGP!F-`!]L,`"!0!6X0!F+`!F4``G3P!B`@!V4P!V5`
XM!R!`!VA0!B#0!F_@!FE`!V\@!VG@!F<``F/P!G7@!G10!G(P!R"0!FX``FP`
XM!R!`!G*0!G90!G(0,B!0!6X0!F+`!F4``G3P!B!P!F5`!R!`!VA0!B#0!F_@
XM!FE`!V\@!VG@!F<``F/P!G7@!G10!G(P!R"0!FX``FP`!R!`!G*0!G90!G(0
XM,E`@!VG@!G10!G(``B```F.`!F$@!W,``G-0!FY`!R```B```G20!FU0!F]0
XM!W0P!R```B!`!V@@!V]0!V>`!G!0!W3P`G-0!F,0,B50`V0``B```B```B40
XM`S!`!B!0`CA`!B```B```B```B```B```B7@`C-@!B'#!G#P!6WP!FX``CH`
XM`B!0!6X0!F+`!F4``G3P!B#P!G!0!FX``B4P!R!@!F\@!R"0!F\P!G2PS0``
XM`E7@!F$@!FQ0!B!`!V\``F=0!G0``G2`!F4``F-0!W(@!V7@!G0``G`0!G+0
XM!G,``FG@!B#`!G```F0@!VE@!V4@!R$#`E7@!F$@!FQ0!B!`!V\``G-0!G0`
XM`G2`!F4``F-0!W(@!V7@!G0``G`0!G+0!G,``FG@!B#`!G```F0@!VE@!V4@
XM!R'#!G#P!6WP!FX``CH``B!0!6X0!F+`!F4``G3P!B#P!G!0!FX``B4P!R!@
XM!F\@!R"0!F\P!G2PS0```E7@!F$@!FQ0!B!`!V\``F=0!G0``G2`!F4``F-0
XM!W(@!V7@!G0``G`0!G+0!G,``FG@!B#`!G```F0@!VE@!V4@!R$#`E7@!F$@
XM!FQ0!B!`!V\``G-0!G0``G2`!F4``F-0!W(@!V7@!G0``G`0!G+0!G,``FG@
XM!B#`!G```F0@!VE@!V4@!RST_04A(%(A%3H``F\`!W20!F_@!B`@!V40!W60
XM!G)0!G,``F'@!B`0!G)P!G70!F7@!G0``BV080JA`R"0!FS`!F5P!F'`!B#P
XM!G!`!VGP!FX``BV085(A("V@D@!0!6ZP!F[P!G?@!B!0!G(@!V\@!P"@`R_A
XM,M#0`**!#0T@&N+0`*+!#PT@&@S@`*)!`@X@&B[@`**!!`X@&EK@`*+!!@X@
XM&GS@`*+Q"`X@&J'@`*(A"PX@&L3@`*(!#0X@&N;@`*(A#PX@&O[@`*+AT*+Q
XM`0\@&B_P`*+A`P\@&D_P`*(Q!@\@&G?P`**!"`\@&I?P`*)A"@\@&K[P`**Q
XM#`\@&N'P`*(1T*+!#P\@&A,``:)!`A`@&C\``:(A!1`@&FX``:)Q"!`@&I8`
XM`:)!"A`@&KT``:*A#1`@&O4``:)!`!$@&B@0`:(A!!$@&DL0`:)!!1$@&ET0
XM`:)1!Q$@&HP0`:(!"A$@&K40`:)A#!$@&M,0`<\2`:+A#Q$@&@<@`:(!`1(@
XM&B0@`:)A`Q(@&D0@`:+!!1(@&GH@`:(!"1(@&J$@`:)Q"Q+@'Q(@&M4@`:(1
XM#Q+@&A,@&@DP`:(A`1,@&B4P`:+A`A,@&C<P`:*A!!,@&E,P`:+!!1,@&G<P
XM`:)!"1,@&JLP`:(A#1,@&O<P`:)Q`10@&E5``:+Q844@!W+P!G(``M'A!&]`
XM!R#P!G?@!F4@!P#@!&\``G-0!V,@=6:0!FQ0!B#P!G(``F20!G)0!F-`!V\@
XM!WD``$[P!B`P!W4P!E('!W+P!F-0!G,P!P"0!&Y`!V4@!W)0!W!`!V5`!B`P
XM!WDP!W10!FT``F,0!FP@PTGP`D\``F4@!W+P!G(``$[P!B`P!W4P!E)'!F5@
XM!VDP!F4``F\@!R`0!F1`!G)0!G,P!P`0!')P!B#`!FDP!W0``G3P!F\``FSP
XM!FYPZD6`!V4P!B!@!F\@!VT0!G0``F4@!W+P!G(``$(0!F0``F:0!FQ0!B#@
XM!G70!F)0!G(``$[P!B`P!FB0!FQ`!B``!W+P!F-0!G,P!V4P!P#@!&\``FWP
XM!G)0!B``!W+P!F-0!G,P!V4P!P#@!&]`!R!0!F[P!G5P!E(W!W`0!F-`4E!0
XM!G+0!FDP!W.0!F_@!B!`!F7@!FE0!F0``$(0!F0``F%`!F0@!V4P!W,``$+`
XM!F\P!FL``F10!G:0!F-0!B`@!V40!W60!G)0!F0``$10!G:0!F-0!B`@!G4P
XM!WD``$:0!FQ0!B!0!GB0!G-`!W,``$,@!V\P!W/0`F10!G:0!F-0!B#`!FG@
XM!HGL!&\``G-0!V,@=610!G:0!F-`4D[P!G0``F$``F20!G)0!F-`!V\@!WD`
XM`$DP!R`0!B!`!FD@!V4P!G3P!G*0!P"0!&Y@!V'`!FE`!B`0!G)P!G70!F7@
XM!G0``$:0!FQ0!B!`!V$@!FQ0!B#P!G90!G)@!FSP!G<``%3P!F\``FT0!FZ0
XM!R#P!G!0!FX``F:0!FQ0!G,``$[P!G0``F$``G20!W!0!G<@!VE`!V4@!P!`
XM!66`!W0``F:0!FQ0!B`@!G4P!WD``$:0!FQ0!B!`!V_P!B#`!F$@!V=`4D[P
XM!B`P!W`0!F-0!B#`!F5@!G0``F_@!B!`!F5@!VDP!B25!&S`!F5P!F'`!B`P
XM!V50!HDL!640!F30`F_@!FR0!R!@!FG`!F4``G.0!W-`!V70!@!`!6_P!B#0
XM!F'@!GD``FR0!FZP!G,``$(@!V^P!F7@!B``!VD`!R05!')P!G70!F7@!G0`
XM`F]0!W0``F]@!B!`!F_0!F&0!FX``%)0!G-0!VQ`!R!`!V_P!B#`!F$@!V=`
XM4D[P!B#0!F4P!W,0!F=0!B#P!F8``F10!G.0!G)0!F0``G20!W!`4DE`!F7@
XM!G20!F:0!F4@!R`@!V70!F]@!V5`!@`P!&@0!F[@!F7`!B#@!G70!F)0!G(`
XM`F]0!W0``F]@!B`@!V'@!F=`4DQ0!G90!FP``C(``F[P!G0``G.0!VXP!F@@
XM!V_@!FF@!V5`!@#`!&5@!V7`!B`P`R"`!F'`!G10!F0``$Q0!G90!FP``C,`
XM`G)0!G-0!G0``$R0!FZP!B#@!G70!F)0!G(``F]0!W0``F]@!B`@!V'@!F=`
XM4E`@!V]`!V\P!F_`!B!`!G*0!G90!G(``F[P!G0``F%`!W00!F.`!F5`!@#@
XM!&\``D,P!4D``G-`!W)0!V-`!W4@!V4``F%@!V&0!FP0!F+`!B3%!&5@!V7`
XM!B`@`R"`!F'`!G10!F0``$10!F%`!FSP!F.P!B`P!VE`!W40!G20!F_@!B!`
XM!F5`!V4P!G10!F3P`F%@!V^0!F10!F0``$[P!B`@!V4P!F\@!V0``FSP!F.P
XM!G,``F%@!V&0!FP0!F+`!B15!'(@!V\@!R!``S=0H7(@!V\@!R!``SA0H7(@
XM!V\@!R!``PLL!&%`!B!0!G@P!F@0!FYP!F4``F10!G,P!G*0!G!`!V\@!P`@
XM!&%`!B`@!V40!W50!G-`!R!`!F4P!V,@!VD`!W3P!G(``$U0!G,P!V%P!F4`
XM`G00!F+`!F4P!R!@!G7`!C(<!&[P!F10!B!`!V$@!FQ0!B#P!G90!G)@!FSP
XM!G<``$(0!F0``G)0!G%0!V4P!W0``F/P!F1`4DG@!G80!FR0!F0``G/`!F]`
XM!P!@!&G`!F4``FSP!F.P!FG@!F<``F10!F%`!FSP!F.0R$(0!F0``F;P!FY`
XM!R!@!FG`!F4``F;P!G+0!F%`!Q4J!W+P!G(``C6``Q4J!W+P!G(``C6PP$[P
XM!G0``F$``G-`!W)0!F'0!B!`!F5@!VDP!B3E!&\``F00!G00!B`0!G80!FG`
XM!F$@!FQ`4E20!FU0!G(``F6`!W"0!G)0!F0``$]0!W0``F]@!B`P!W0@!V40
XM!FT``G)0!G/P!G4@!V-0!G,``$T0!F.`!FG@!F4``FDP!R#@!F]`!R#P!FX`
XM`G2`!F4``FY0!G1P!V\@!XD,!6$P!FL0!F=0!B#@!F]`!R"0!FXP!W00!FS`
XM!F5`!@#P!&*@!F4P!G0``FDP!R`@!V70!F]`!R3%!&G@!FL``F@0!G,``F)0
XM!F7@!B`P!V5@!V4@!V5`!@`0!&1@!V4@!W20!G-0!B!0!G(@!V\@!P`P!7+0
XM!F]0!VY`!R!0!G(@!V\@!P`P!&_0!FU0!VZ0!F,0!G20!F_@!B!0!G(@!V\@
XM!R#P!FX``G-0!FY`!IPC!V]`!V\P!F_`!B!0!G(@!V\@!Q4J!W+P!G(``C>`
XM[44@!W+P!G(``C<0ADU0!VQ`!VF`!F\`!R`0!G1`!V70!G!`!V5`!A4J!W+P
XM!G(``C?`NT4@!W+P!G(``C?`]D[P!G0``F$``F00!G00!B#0!F4P!W,0!F=`
XM4D4@!W+P!G(``C>``Q4J!W+P!G(``C>PP$X0!FU0!B#@!F]`!R!0!VZ0!G%0
XM!V4``F_@!B#@!F5`!W?P!G*0R$:0!FQ0!B!`!F4P!V,@!VD`!W3P!G(``FG@
XM!B`@!F%`!B`P!W00!G1`4E)0!FWP!G10!B`0!F1`!G)0!G,P!R`P!F@0!FYP
XM!F5`!@`P!&'@!B#@!F]`!R`0!F,P!F4P!W,``F$``FY0!F5`!F5`!B`P!V@0
XM!G)0!F0``FR0!F(@!V$@!WD``$$P!F-0!G,P!VG@!F<``F$``F/P!G(@!W4`
XM!W10!F0``G.`!F$@!V5`!B#`!FD@!G(0!G*0!_S#!FD@!B`P!V4P!G20!F_@
XM!B"0!FX``F'@`F]0!W0``F/P!G(@!W4`!W10!F0``$%`!W10!FT`!W20!FYP
XM!B!`!V\``FR0!FZP!B"0!FX``FWP!G)0!B`P!V@0!G)0!F0``FR0!F(@!V$@
XM!VE0!G,``G2`!F'@!B`P!WDP!W10!FT``FR0!FV0!G0``$,0!FX``F[P!G0`
XM`F6`!V4P!B`0!B`P!V@0!G)0!F0``FR0!F(@!V$@!WD``F20!G)0!F-`!VR0
XM!U(A%0!P!FQ#!FQ#!FQ#!FQ#"FQS!FQ#"FQ#"FQ#"FQ#"FQ#"FQ#!VQ#"FQ#
XM"FQ#"FQ#"FQ#"FQS!FQ#"FQ#"FP#"`55$.!0$^^`5E(A%5(A%5(A%5(A%5)1
XM$"```B```B```B```B```B```B```B```B```B"@80```S```S```S```S``
XM`S```S```S```S```S```XX$`#`0`S(P`S10`S9P`SB0`T$@!$-`!$5@!%(!
XM`S$@`S-``S5@`S>``SD0!F(P!F10!@%6$&X0!FX``XE8$$X0!$X``Q^6!FX`
XM,4G@!$8@%5(A%5(A%5(!`(20=:"@D@``"BJ9&%D'"BH)`.3``@4!"BH)`*"@
XMD@``"BH)`*"@D@``"UG'!ED'"BH)`'B0=9R0=:"@D@!`#EF'#UF'#UF'#UF'
XM#UF'#UF'#UF'#UF'#UF'#UD'"BH)`*"@D@``"BH)`*"@D@``"BH)`*"@D@``
XM"BH)`*"@D@``"BH)`*"@D@``"BH)`$QPB*"@D@#`")0."BH)`*"@D@``"BH)
XM`*"@D@``"BH)`*"@D@``"BH)`*"@D@``"BH)`*"@D@``"BH)`*"@D@``"BH)
XM`*"@D@``"BH)`*"@D@"`#40,`*"@D@``"BH)`*"@D@``"BH)`*"@D@``"BH)
XM`*"@D@``"BH)`*"@D@``"BH)`!]<$!BP/$QPB+QP`@7!")0^`<N#`<L#"BH)
XM`*"@D@&U/*"@D@``"BH)`+Q`Q```"BH)`*"@D@``"BH)`!2@D@``"BH)`'!`
XMQ```"BH)`*"@D@"`#40,`"IIDB\!`XD(`\:BDBIIDB^ADBIIDB^ADBIIDLT!
XM`B```B```B```B```BB``BB``B@``B```B```B```B```B```B```B```B``
XM`B"`!!```1```1```1```1```1```1```1!`"(1`"(1`"(1`"(1`"(0``1``
XM`1```1```8$0"($0"(&`GK9O^[9O^[9O^[9O^[8?`!```1```1```8(@"((@
XM"((@"`(@``(@``(@``(@``(@``(@``(@``(@``(@``(@`!```1```1HF%5(A
XM%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(!
XM`&A`JC,P#P10"__P`R'C*E(A%5)1$/#@Q%)QI4\M%5(A%5(A%5(A%5(A%5(A
XM%5(A%5(A%5(A%5(A%5(A%5(A%0``#TXL%5(A%0!``EJB$/#@Q%(!`"2@)0I!
XM`EHB%5*A$"2@)5(A%=\O%5(A%04A``(R$QP_(!P/``;@*E(A%5(A%5(A%5(A
XM%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A
XM%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5*A
XM$#>M)5)1$,#`\5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A%5(A
XM%5+!.2,@&D"``B.0`B`P!G)`!S'@`F\``B!@!&G@!F'`!B`@!67`!F40!G/@
XMDS`@`RX``^4(!"@P`BDP!W1`!FGP!BZ`!@D0`R[`]D"``B.0`G`0!G(0!FW@
XM`FB0`#'@`C$``R"083AP`R\``S3P`C$0'4"``B.0`G-0`W`0!G(0!FW@`FB0
XM`#'@`F$(!"@P`BE`!WD`!V4P!RZ`!@D0`R[`NT"``B.0`G20!FU0!G/@`FB0
XM`#'@`F$(!"@P`BF`!F40!F2@`V8P!FY`!VS@`FB0`#'@`CAPI2@P`BE@!F/@
XM!G3`!BZ`!@D0`RZ`T`4!`S+@`C!0CD"``B.0`FR0!F(P!BT`!V\@!W2@`V=0
XM!F[P`F=0!G3P!G!`!RXP!@D0`RX0`V$(!"@P`BDP!VC`!FD@!BZ`!@D0`RZ@
XM_P4!`S+@`C!0CD"``B.0`FR0!F(P!BT`!V\@!W2@`V=0!F[P`G!0!G(@!V\@
XM!RXP!@D0`RYP`U(!`S+@`C!0CD"``B.0`FR0!F(P!BT`!V\@!W2@`V=0!F[P
XM`F4@!W+`!G-`!RXP!@D0`RX0`S/@`C'@`N58$#`@`RX``^4(!"@P`BG`!FD@
XM!F/0`G#P!G)`!SH`!W*0!FY`!R\`!W*0!FY`!V;@`F.0`#'@`C$0'4"``B.0
XM`G.`!FR0!F+@`FB0`#'@`OH/!"@P`BDP!W1`!FGP!BZ`!@D0`R[`]D"``B.0
XM`FA0!F%`!CI@!V$@!V$@!V<P!RZ`!@D0`RZ@_P```S+@`C!0CD"``B.0`FR0
XM!F(P!BT`!V\@!W2@`W`@!VG@!G3P`F8`!W*0!FY`!V;@`F.0`#'@`C$0'4"`
XM`B.0`G.`!FR0!F+@`FB0`#'@`OH/!"@P`BDP!W1`!FGP!BZ`!@D0`R[`]D"`
XM`B.0`FA0!F%`!CI@!V$@!V$@!V<P!RZ`!@D0`RZ@_S`@`RX``^4(!"@P`BG`
XM!FD@!F/0`G#P!G)`!SHP!W1`!FGP!B\P!V,0!FY@!BXP!@D0`RZ``U>*`B.0
XM`G-`!V20!F_@`FB0`#'@`FP/!"@P`BF`!F40!F2@`W80!G(0!G)P!G/@`FB0
XM`#'@`OJO$#`@`RX``^4(!"@P`BG`!FD@!F/0`G#P!G)`!SHP!W1`!FGP!B]`
XM!F\P!V,0!F[@`F.0`#+@`C%P`U>*`B.0`G-`!V20!F_@`FB0`#'@`FP/!"@P
XM`BF`!F40!F2@`V-`!WD`!V7@`FB0`#'@`FP/!"@P`BF`!F40!F2@`W80!G(0
XM!G)P!G/@`FB0`#'@`OH/!"@P`BE@!V'`!G50!G/@`FB0`#'@`FP/!"@P`BF`
XM!F40!F2@`V4@!W+@!F_@`FB0`#'@`OH/!"@P`BE0!G(@!V[P!BZ`!@D0`RZ`
XMT````S+@`C!0CD"``B.0`F%`!V]@!BXP!@D@`RX0`R"083AP`R\``S/P`C+`
XM]D"``B.0`FA0!F%`!CHP!G20!W!0!BZ`!@D0`R[`]D"``B.0`G80!FQ0!V4P
XM!RZ`!@D0`R[`]D"``B.0`FT0!G2`!BZ`!@D0`RZ@_T"``B.0`FA0!F%`!CI0
XM!G(@!V[P!BZ`!@D0`RZ@_T"``B.0`F4@!W+@!F_@`FB0`#'@`@@-`#`@`RX`
XM`^4(!"@P`BG`!FD@!F/0`G#P!G)`!SHP!W1`!FGP!B]@!FG`!F)0!V;@`F.0
XM`#+@`KP+!"@P`BDP!VC`!FD@!BZ`!@D0`RZ@_T"``B.0`G-`!V20!F_@`FB0
XM`#'@`FQ_I2@P`BG0!F70!G-0!G3@`F@2`R[`]@H!`S+@`C!0CD"``B.0`G/`
XM!F50!G#@`F.0`#'@`FP/!"@P`BF`!F40!F2@`W.0!F?@!F'`!BZ`!@D0`R[`
XMNT"``B.0`G.0!F?@!F'`!BZ`!@D0`RX0AD"``B.0`G-0!G2@!FT`!RZ`!@D0
XM`RZ@_P4!!"@P`BD0!FP0!G+0!BZ`)C'@`M@.!"@P`BD`!V%0!W-0!BZ`)C'@
XM`M@.!"@P`BDP!V5`!VK0!G#@`F@2`RZ@_PH!!"@P`BDP!W0@!V.`!G+@`F@2
XM`RYP`U(!!"@P`BDP!W0@!V/0!G#@`F@2`RZ``U(!!"@P`BE`!VG0!F4P!RZ`
XM)C'@`M@.!"@P`BGP!G!0!F[@`F@2`RZ`[5>*`B.0`G)0!F%`!BZ`)C'@`MA^
XMI2@P`BDP!W0@!V,`!WG@`F@2`R[`]@H!`S+@`C!0CD"``B.0`FR0!F(P!BT`
XM!V\@!W2@`W-`!V20!F_P`G7@!F=0!G0P!BXP!@D@`R[`]D"``B.0`G.`!FR0
XM!F+@`FB0`#'@`OH/!"@P`BDP!W1`!FGP!BZ`!@D0`R[`]@```S+@`C!0CD"`
XM`B.0`F3P!G`@!VY`!RXP!@D0`R[`NT"``B.0`G.`!FR0!F+@`FB0`#'@`OH/
XM!"@P`BDP!W1`!FGP!BZ`!@D0`R[`]D"``B.0`FA0!F%`!CHP!G20!W!0!BZ`
XM!@D0`R[`]D"``B.0`FA0!F%`!CI@!V$@!V$@!V<P!RZ`!@D0`RZ@_T"``B.0
XM`G80!FQ0!V4P!RZ`!@D0`R[`]D"``B.0`G`@!VG@!G3@`FB0`#'@`KP+!"@P
XM`BG@!F'@!BZ`!@D0`R[`]@4!`S+@`C!0CD"``B.0`FR0!F(P!BT`!V\@!W2@
XM`V=0!F[P`F-`!WD`!V7@`F.0`#'@`OH/!"@P`BF`!F40!F2@`V-`!WD`!V7@
XM`FB0`#'@`FRO$#`@`RX``^4(!"@P`BE0!F-@!W3@`F.0`#+@`C$``AF&`S?P
XM`C`P`R\@`VP/!"@P`BE@!V'`!G50!G/@`FB0`#'@`FP/!"@P`BG@!F'@!BZ`
XM!@D0`R[`]@```S+@`C!0CD"``B.0`FR0!F(P!BT`!V\@!W2@`W-`!V20!F_P
XM`F9P!W*0!G10!BXP!@DP`RX0`]$!!"@P`BDP!VC`!FD@!BZ`!@D0`RZ@_T"`
XM`B.0`G-`!V20!F_@`FB0`#'@`FP/!"@P`BG`!FD@!F/0`G#P!G)`!SHP!W1`
XM!FGP!B\P!W1`!FGP!FW@`FB0`#'@`F$(!"@P`BE`!WD`!V4P!RZ`!@D0`RZP
XMO@4!`S+@`C!0CD"``B.0`FR0!F(P!BT`!V\@!W2@`W-`!V20!F_P`F;`!G,@
XM!G5@!BXP!@D@`RX0`]@.!"@P`BDP!VC`!FD@!BZ`!@D0`RZ@_T"``B.0`G-`
XM!V20!F_@`FB0`#'@`FP/!"@P`BG`!FD@!F/0`G#P!G)`!SHP!W1`!FGP!B\P
XM!W1`!FGP!FW@`FB0`#'@`F$(!"@P`BE0!G(@!V[P!BZ`!@D0`RZ`T`4!!"@P
XM`BDP!FSP!G-0!BZ`)C'@`F$(`S+@`C!0CD"``B.0`F00!G00!BXP!@D0`RZ@
XM_T"``B.0`G-`!V20!F_@`FB0`#'@`FRO$#`@`RX``^4(!"@P`BG`!FD@!F/0
XM`G#P!G)`!SIP!F7@!B^0!G,0!G1`!WG@`F.0`#'@`C=PI2@P`BDP!VC`!FD@
XM!BZ`!@D0`RZ@_T"``B.0`G10!G+0!FGP!BZ`!@D0`RZPOE>*`B.0`FDP`SA@
XM`U]`!F%`!V'@`F@2`RYP`U>*`B.0`FGP!F-`!VS@`F@2`RZ`[3`@`RX``^4(
XM!"@P`BG0!F'`!FSP!F/@`F.0`#'@`C$0'4"``B.0`G.`!FR0!F+@`FB0`#'@
XM`OH/!"@P`BE@!V'`!G50!G/@`FB0`#'@`FP/!"@P`BF`!F40!F2@`V$P!W-0
XM!G)`!RZ`!@D0`R[`]E>*`B.0`FT0!FS`!E]`!F%`!V'@`F@2`RY0CD"``B.0
XM`FU0!FTP!F@@!RZ`)C'@`C'@2$"``B.0`FU0!FTP!G"0!RZ`)C'@`C@@%4"`
XM`B.0`G,@!G*P!BZ`)C'@`OI_I2@P`BDP!W0@!VQ0!F[@`F@2`RZ`T`4!!"@P
XM`BEP!W*0!G10!BZ`)C'@`M@.!"@P`BDP!VEP!FX0!FS@`F@B`RX0`R"083AP
XM`R\``S3P`C"``U>*`B.0`FN0!FS`!BZ`)C'@`@@-!"@P`BEP!F5`!W"0!F3@
XM`F@2`RZ`[0H!!"@P`BDP!F4@!W+P!G+@`F@2`RZ@_PH!!"@P`BDP!G50!GB0
XM!G3@`F@2`RZ`[0H!!"@P`BD``F,@!W3@!B[P!B```D:0!FX0!FP``E)0!FQ0
XM!F$P!S[I`F:0!FS0HF`)%`5Q!@$P!G)`!S'@`G,@%5(A%2Y`!V6`!W2@$-2@
XM$`(R``'@3H0A%5)1$"Y`!F%`!V&@$`20`*+A*@,@(%(A%5*A$"X@!G,P!U)!
XM"3B=10,0`(0A%5(A%07A`F/P!FW0!F7@!G0@%80Q``'P<5(A%5)1$"Z0!FZ0
XM!G2@$-"@$`(R``(B%5(A%0KQ!6DP!W00!G)`!P``#0HA(+KB`F:0!FS0HEU?
XM$$!1$&<0`&P`!U_0!F_@!BXP!E(A%071!F&0!FX@%1#P'=I!Q`(@(``P#0*B
XM$)M3$'4P!V%P!BU*#BBB'40L``("`$X@%0JQ\`71!F_@!FE`!V\@!P!``W"C
XM'40L``("`&T@(`K1D5)1$(1!"FJA'40L``("`.$@%0H!<`HQ!V5`!U]P!V&0
XM!G2`"&BC'40L``("`.$@%0HQOP7A`G10!GA`!PH!`=\A(`,0`%R`-HX```@K
XM%5+A`F00!G00!@I!``D@&JXR`-J115(A%5+!/V(P!W,@%=TN&EDT``(B%5(A
XM%0KA`F/P!FW0!F7@!G3P<80Q``'`"%(A%5(A%?QC!FG`!BWZ`@H!%`5Q!@%P
XM!F5`!V\`!W3@`F,@%5)1$&=0!G3P!G!`!P7!!MNB'40L``("`)S@*@J!HP7A
XM`G10!GA`!PK!!MLB(`,0`)R`(D;P_5(A%07A`F00!G00!@I!``P@&JXR`%@O
XM%5(A%5+!/V(P!W,@%=TN&EDT``(B%5(A%0KA`F/P!FW0!F7@!G2`"@I!&`,0
XM`#@@%5(A%5(!`&4@!W+P!G)0C@!``0P@&JZB*V4@!W+P!G*`[0"``PP@&JZB
XM*RY@!FG`!BTJ2`4!%`5Q!@$`!V4@!W+P!G+@`F,@%5)1$'!0!G(@!V\@!P6!
XM`&FB'2\A``("`(4@%>DO%?Q#!V6`!W2@$`B0)@(R``4,$]\O%5)1$"Y`!F%`
XM!V&@$%C``*+A*@,0`$DC%5(A%07A`F(P!W,@%=TN&EDT``(B%5(A%0KA`F/P
XM!FW0!F7@!G0`#@I!&`,0`"@@%5(A%5+!/V:0!FS0HCH)%`5Q!@%0!G(@!VPP
XM!W3@`F,@%5)1$"Y`!V6`!W1@(6DB(`,@(%(A%5*A$"Y`!F%`!V&@$&S``*+A
XM*@,0`!"`(Q\F%5)1$"X@!G,P!U+1[:*110,@(%(A%5*A$"XP!F_0!FU0!FY`
XM!PCP'80Q``'``E(A%5(A%?QC!FG`!BW:_D!1$&<0`'`@!VG@!G1@!BXP!E(A
XM%04!!W*0!FY`!P$&"6FB'40L``("`'`@%0KQ.U+A`G10!GA`!Q:2)@(R``$`
XM!PH1,@(B%5+A`F00!G00!@K!!Q0@&JXR``(B%5(A%0KA`F(P!W,@%=TN&EDT
XM``(B%5(A%0KA`F/P!FW0!F7@!G1``]]!&`,0`&`@%5(A%5+!/V:0!FS0HAM>
XM$$!1$&<0`&8`!W*0!FY`!V;@`F,@%5(!`&8`!W*0!FY`!P'F,MI!Q`(@(``@
XMPU)1$`HG%2Y`!V6`!W0@%2XC(`,0`#)<$#,C(%(A%2Y`!F%`!V&@$'Q``:+A
XM*@,@(%(A%5*A$"X@!G,P!U+1[:*110,@(%(A%5*A$"XP!F_0!FU0!FY`!Y3P
XM'80Q``$`!E(A%5(A%?QC!FG`!BW:!@H!%`5Q!@$P!V,0!FY@!BXP!E(A%0HQ
XM!V,0!FX08`"PS06A'40L``("``PM%0`0!E(!`&8P!V,0!FX08"96$-I!Q`(@
XM(`#`25(Q!E(!`',P!V,0!FX08*C@,MI!Q`(@(`!@9U)1$"U:$"Y`!V6`!W2@
XM$-M<$`(R``$`E0`P,UDD%5+A`F00!G00!@K!!Q0@&JXR``(B%5(A%0KA`F(P
XM!W,@%=TN&EDT``(B%5(A%0KA`F/P!FW0!F7@!G1`#]]!&`,0`%`@%5(A%5+!
XM/V:0!FS0HDI=$$!1$&<0`&3P!G,P!F'@!BXP!E(A%07Q!63P!G,P!F'@!@#`
XM#BZC'40L``("`!1`&`H1!U(!`&Y0!VT@!F4@!S!1$-I!Q`,@(`!`!@BK$',@
XM%0`P!W0@!VG@!J<.`&2@(]I!Q`,@(```!P*B$'4@%0`P!V5`!W4`!PI!#;JG
XM'3(\``("``@@(`IQ!U+!/W10!GA`!PK!#BXC(`,0`/!`.79!&%(A%2Y`!F%`
XM!V&@$'Q``:+A*@,0`(-8$!TI%5)1$"X@!G,P!U+1[:*110,@(%(A%5*A$"XP
XM!F_0!FU0!FY`!T2`(H0Q``'`"5(A%5(A%0`P!F@P!F]0!VY`!P#`!Q0@&JZB
XM*V;`!F%P!E]0!F]@!H!``:+A*KKB`F:0!FS0HHV@$$!1$&<0`&%`!V]@!BXP
XM!E(A%5(1!G3P!@%6$-P0>-IQ`H$B(`#``80Q8E+!/W10!GA`!PK!#8$G(`,0
XM`!R@%@LL(%(A%2Y`!F%`!V&@$-A``:+A*@,0`/XK%5(A%07A`F(P!W,@%=TN
XM&EDT``(B%5(A%0KA`F/P!FW0!F7@!G0`#BA"&`,0`'P@%5(A%5+!/V:0!FS0
XMHM->$$!1$&<0`&:0!FP@!G5@!BXP!E(A%07Q!6:0!FP@!G4`,?@@<=I!Q`(@
XM(````@*B$)$@%?Q#!V6`!W2@$/@@<0(R``$``M]17P(B%5+A`F00!G00!@H!
XM#Q0@&JXR``(B%5(A%0KA`F(P!W,@%=TN&EDT``(B%5(A%0KA`F/P!FW0!F7@
XM!G3`!7!#&`,0`-DO%5(A%07A`F:0!FS0HJ.@$$!1$&<0`&U0!FTP!V5`!RXP
XM!U(A%07A`G10!GA`!PJ!`9$D(`,0`.XD(%(A%07A`F00!G00!@H!#Q0@&JXR
XM``(B%5(A%0KA`F(P!W,@%=TN&EDT``(B%5(A%0KA`F/P!FW0!F7@!G1`"G!#
XM&`,0`$DC%5(A%07A`F:0!FS0HK*@$$!1$&<0`'/`!F50!G#@`F,@%5*A$'/`
XM!F50!G"@$%002=KQPP(@(`4A(`IQ"E(!`&%P!V&P!BU*!0RM'40\``("`$DC
XM%8XF%2Y`!V6`!W2@$%0020(R``%``=\!*ZXB%5+A`F00!G00!@H!#Q0@&JXR
XM``'@OU(A%5)1$"X@!G,P!U+1[:*110,@(%(A%5*A$"XP!F_0!FU0!FY`![@`
XM-X0Q``$`!5(!$+@`-X0Q``$`!0`""APHL(P;.P3A40`"0(#``0!<F$G#IHQ`
XM7@+]_0MX)D`8-F'DM'$QAZ!)%W3*X*$C$$V'@`$>!H!@LN9`%V3"T`DC$$$%
XMA@X##HAILZ@+,7-*"L2D@2%$H42+UG0QYDV;-@;I("`0D"M4FE)/3JPHT%C&
XMC0`ZP@E39TX9DF%1JF09$,]+`%&'4A`852I.G3P#^@0J,^Q4I$H#,G5:V#!!
XMJE:QNJ&#P:M7`$/!.@XHD:+%@-#.<@S@EHZ:-G#@&DVY4B"CNWD#(!$8-&[.
XMG3U_-FR\F3/B@8LQ\^X-^6I6%)9E[NT=<>QG`-I$IR5-1\X8-')4VY3;.B`U
XMV#*Q]'3\%[=@W;6',O>=%'A3X5#71ZQJ?#*/Y%"7$W<ND)STCG-4-P9JVDW%
XM&ET`L.`!3#)Q(E`$Y-T6&`"#[1;?>D>UM]1[3V'6UV;%248'%/AYJ!^(_`7D
XMSG\!T)$&5G,4:.!<`B&S(%[*\14A8+D1=B%S&28&0'`=JH<A?2*246)F&*8(
XM`#XLO@&'03+.V!T`W-P8FWX?;B=ACQ9Z*%^0[C'V(W%(9D7'DC,UZ1EM1&DT
XMFAQEA$%&E2<=*!`\6N;(H&'E35AA>ET"^MN&9HIY9&19$<*F9BB^&1`#<:(%
XMH(!PY(&G0-PA2,`'?WI(`X9?GN>CHD`>JAB'PX&8YF24L'DB>4YB4.EH=;AQ
XM1AETC$&55+GNVFM`.("*(PD-]85&31#TU:E`Q88ZU+(!&8"C7Z52B%ZKY*DZ
XM)*MGNLKH9*BP.1N03L)PZW1D2"G'9+\Z]H!`H!@;$[)&!D1$31ST]46[=\B1
XM1DKDV`L`OGTA.)`'_K8+Q[LL80$"@\@*T!<^%I@$@K-Z!E2OM`'`<D%`.030
XMH9<\FAIF9D%ET:V&JR::+YKCT@$/FY2L]X48(+FQ1DF#/@3`%WJ4(<<;990$
XMPK9"`5#'&/^F<49).#`M'!M0DR%U24Q8#1'67[@1AAL!@>&UTU"+338`:)P-
XM=AINF!$0'&<__07<<@-`Q]F=D160#NMV-`8=>4P9[VHT!@3%#2"/F2T&%YPZ
XM%`&%&N4MD=P"^BH=A!30E4P\N.DW`$T$'D`98]A!Q^%%H:[Z0(LS*$:R`[50
XMDP]]F9&ZPH`PCN/L%M=>$Q!]S25'&(,#`(OO]Z(*@"-="M'7[@0!D8/LS@=2
XMFT!$<)PX`+%?Z^&:B@-P&<KF`<`!!I('``R&EX/KO+CUT0&,Y^;+Q!!S8M21
XMMT!,8-_*FB,I`&3!=&8(V,#>,@:I)%!@*0D(,79`,=H)A`';"T@4O'>E"8(,
XM@P%!@?C0-R%N")!08XJ?S"KGE\T!P%KY@PH?1/><.2"0#7/HGQE89Y(OC*$B
XM8ZL#'*#1`P9-+'@"64%-NI"['[[!+0'A1Q&/94&/U>0+N3,#&]I"+4[XH()(
XM#`@@:A(&?VDQA_Y3WP_`V!=`=&D,_L+#&77(B?TU+XP`0$5-RN"O@/4*#6L`
XM`!&"P,:!8,0D'1G(%R;B!C+H$`!"**1`N%&3-/A+AW/(@QO&P(U(4A&/YR+(
XM&CB(("*"C`KX:R`";),R+)TP<W%1(7SF1Y[-\0&&EQG*#-%5P#Z8SHENV12G
XM.G:P(8`,`SH"5+9,V+X4PNQ;*QS3YO"!2YE`BE8%/(3I),1#*R&(!\84W\Q`
XMM,Q70@431#F?Y9Z)N7#5LF8(.,#GH")"7HYN$J9+PQQT0KAN#D2?_,Q#0,`I
XMR8#LCR"+(*5`""K.`!S4<RSD3+;H\!X4PH^=\AOG.^L'`WG&T$.AC-3H.I'/
XM&>#`!O\"#)Z>%1`^A#,VCFLE1=NG3D-A-)J+JA\>/)K+`,P*4$XZ13[?,#@V
XM"),SQ'0IR+BTH_3AH:*P](LLBQ31[6R.$3RU)@T%L@O3M>$C;""J/P7R53:$
XMM8$`@,1+`0"\OG`C@P!81>[H]!P`L,$(1JPB`'Q'D%;TA4Y@)2H`2('7W^FU
XM&C5YA4(#HE:0L>,I4)@E"07RU/9=TZ9":B<M-5<S3F05*I%E3F#'`(>Z0+5I
XMHZ4+'TXKG-'B08RLA<AH#4(&0L26@*,KAE?!FM*=K#2I1V@<J5J)B-@&8)6I
XMNNDL-<K9^K'CLR;::D">X=4RM.$ZV1%2GK['A^`V=&*APE8K(6%<9V8VHU6=
XMB@N1V].?QL5)V:CN=3-U5)8"@!/>C0VR@)0M\C;SHN?%*9`V1P'V^FD_!22'
XMZ7(HAS4<%:G?`T9^9;*O:C5U0OY=60`ND]Z(3#6J1MD<"@S\E?4TTB093@]N
XMG^..!5>G(FZH+S$)<*[8()._K:1$>0%<IN5V^#&;PP&)HVO/Y^##=`I,R8/M
XMRX$:'[C#@1*(CO^;W`#[6)HU8\*0F53DAP1%3M.9@]3$9E3M/H:8,'`R5`@Q
XM'F7F>,=5[C%5L5P_+FPY`!R0CT`R()!3J%DX?7M.`[YLJ0"L@2)E!A0Q:?'G
XMH=QXA$;)UI0U;%XY@]BJ-</#G2_[W@)>@-"C$18<TG`G,]^$F,QH=)MPG+Y)
XM6S3.B+IR3D6$B#N[UR]."@&HIS,&HQTMNWXA)C=4S8!DLK+5<";.A]W97!%Q
XMPM;2!<`*=BVX.JAD8#+^'CI4G>>`P'4JDDXVB):]V;AL#A;0[G)`:D#M`(Q!
XM#G2(L:G/_#T")$&XK)Z0JR]]&.7.&4-P&YA`0@.RFH;E"P$*"5VH86R'?.&Z
XM;\@52QQ`E*@XQ"!V2,/1R#;I#ET<#P(7R+9#Y1`I[40.9P@(!!AP*H>GX0VS
XMFZ0Y=V-RN)%!,"P/DT,"9)U,=<5@W@:`E`PRD"R1'``O+ZI`E"H^A[@(1C7J
XM4]!-[NNNY+PV)8<#'4P^J:O3!@`\'U!I$R3UW80=.]X!3]!Y#N.N_-DA27Y.
XMDX^>R3F$S=?,:$#+`>!K-[Q!(#/5.4'V:U>O!]V'A)M20""W=\#>?$]E=PA6
XMVE":Q7?;XD,#28!TR`'69A`&`@&!YP'PD9"TH25J-_N8/Q*0--.=5Z<9^VN.
XMOI:V/,<N1P^KKF*?Q]0[O-=R^#66W@Z`R9-6H/>=<-"-CW8`=/?HHB9U0%)]
XM]$.;=2",/CHPGT."M1Y>S(^$YBP=/@>8IQ$`H/!`HLC?AO"C0@3K']IH2U+<
XMO3,XD`*1\-'%T&""E$/YNT%;!`$%(\`0_X`6.R<U:/`&;'!SC$!\8G8&=()#
XM9:`'$"@UM><6:'"!4\,K`?$#Q#<0%!005D!\O%)O]P8`!QAT91!N!HB``%`$
XM`E$:"%<=,&<17Q!6=Z`U9R!P""<U=$('=?`N8)<'=N=K;*!/++$S_D-;.S$[
XM$3AF;T`G`>$2=+=Z;-!Z$`A[J!$0L]=T`)"!M^=[=O4&N]>%J$"&/N1K4SA\
XM1V=\/I=\;VA=V-52`.@0T?=XU`>&UI>%`I%]8+A]`M%]1_>#X:=9Y&=^>9-^
XM\8=P[7=^[]>(\P<`]2=X.30'</`&#`@W9_`";#!V>A:*HCB*!`$"IG@#-5`#
XM$V.*(!`#-$`#J\B*,2`#L<B*IA@#-2`#M`@"-&`#-3`#KR@#,``#,<"*-B`#
XM-R`#``!>I-B,SOB,T!B-TCB-U%B-UGB-AC$"(/")(``W*2$'9H`\90`"9C"%
XM(/`PWF@T('`'`X,&";`6QV-69<`&W3@91A..O:8`(Z"/"1`$9@4"UQ$2R/.-
XM<P`"(3&.:Y$4+0@"=(`=$7<&:,"0;W".`F./<@`"N=(&;Z`U$]&"+L"/3C"1
XM8C`V;F`T!7F0%)F.=Z*/^@@"4E`&<``2O<:0:#".25B2("`&\_@&=R"1(.`6
XMC620;E"/`Y,&'Y$&>J`3+S>4;A$'UK9)X[AU-(F0%?F-+-"2<_`T$1D&!=F0
XMX]B43SF3#:D3($`GI=&5$YF)=V`T+2!$`&F&$W$&0ZB49N@"IE@%;M&28?"6
XM5S$V9+"-:;`&XX@":%`X;^"5+C(&8)4'*<"/J+.`("`"7``#,S`#>L`%8R`"
XM+2F50/F77OF39>"4!C&3(E`$4S`$(*`'(N"3GXF.%@D"5Y`$5(`$3U`%5&"0
XM`!D2`A,&NU*6O#*$;M"2YGB396`&9;"0*-"0^M2-!7D':$"6GXF9((`58S,'
XM*="-9A"9IHF:JLF<N(DD?DF3.M&2U.D&!5E^6*&<NN*3>1!Q%^F:WVB7($`%
XM-0D"UQ8@G,B77Q648H8:;)`'!DD&=C`VO38'PHF3:]&;*-"9!>D%3)`"'[F/
XM(_"8$RF9Q$@#F*F9^U@5HY8T/4`"-*``<X`&:6`&=+`#/TFB)HJB(UJB)YJB
XM+LJB*DH'"N`<<]`#(D`"*J"9:=`#,:``SND9(+`%"4`":0`"+5`1($`"')H&
XM20,"7:``[:(`"5".%^D<];BD-DJE4YH`"9`K:8`',M`N!9FCSK&:,N`#)O"C
XM7DJAD3F9KIBA7&J&94"E/0H&*O$P17JD*]"*8""E=*H`)3JD2_H#(!`"/0`"
XM,`"E"N"5P9D`6K-//#..+2`'(A!W]AE\4[B:8#"20!D&6+&D,/"G"7!M=-"*
XM-9H&"J``IJJHJPJ:0?F98#F:XUB:IYF:JRF5K5F5ZAB;LUF;M[F7BAE\1MF;
XM00B<PGF1Q&F<R*F<!;F<S@F=]2F=Y6F=V*F=M]J=RRFLD1&>8TFCVEBM/VD5
XMO$*BZRF5[3F$*6F1=HF)FGB3G0BF8DJFV%BOAL&*J*B*RWB+KUB+K4B+^VJ+
XMIBB,Q<B+O@B,-"",,F`#^$H#L[B,]AJQ$CNQ%%NQ%GNQU3@"(?`";2$'+R`&
XM</,"4R(';+"J93"@]'@"*H$Z(,"Q<^"Q(.L&(FLT]-@"4R"JD4D"0"`")V"G
XMV4D"<I`K;L")7Y`K9&`T"$>N"%>39K4#JQJD2HH"/.`#U[D'"L"*UR$E3LN*
XM\)FS7\`%<L`%;B`"3ML'"H"C.LJC/@JD)*JD1&JD2*JD3"HE3EJ04=JE5DJ.
XM0@HW6NH9!@JI;T"E7SJT\_I$.7NF()"F:RJX;FJA<9J9<UJ2=MH#>(H'>@JW
XM?1H#?]HNDCNH6U"HAYJHBQJECLJE`#6I2&JIF,J&E@H"G<J5!@&JXT@"HTJE
XMK?JC$V&R('>J,/"JG3F5H"F:4(FMW)FK$[FKZ7B1ODJ;MOF=NEFLXWBL[Y*L
XM@%F2S/J7R4FBS]J<SWFJT3D&TUDGYGF=@VJKQ>N=W-J7L=J]Y"F^YTFNZGD&
XM[.F>ZQJ?S(BQ^)N_^KN__-N__ON_`!S``CS`!%S`!GS`")S`"KS`#-S`#OS`
X#$!RQ
X`
Xend
SHAR_EOF
echo "uncompressing file lp.tar" &&
compress -d < shar3_cmp_.tmp > lp.tar && rm -f shar3_cmp_.tmp &&
$TOUCH -am 0725204990 lp.tar &&
chmod 0644 lp.tar ||
echo "restore of lp.tar failed"
set `wc -c lp.tar`;Wc_c=$1
if test "$Wc_c" != "66048"; then
	echo original size 66048, current size $Wc_c
fi
exit 0

tneff@bfmny0.BFM.COM (Tom Neff) (07/27/90)

In article <1990Jul26.015350.1481@cimcor.mn.org> mike@cimcor.mn.org (Michael Grenier) writes:
>Sorry, about the tar file...my shar doesn't understand directories.

Fix it.

#! /bin/sh
# This is a shell archive, meaning:
# 1. Remove everything above the #! /bin/sh line.
# 2. Save the resulting text in a file.
# 3. Execute the file with /bin/sh (not csh) to create:
#	getopt.3
#	getopt.c
#	makefile
#	shar.1
#	shar.c
#	traverse.3
#	traverse.c
# This archive created: Fri Jul 27 11:13:30 1990
export PATH; PATH=/bin:/usr/bin:$PATH
if test -f 'getopt.3'
then
	echo shar: "will not over-write existing file 'getopt.3'"
else
sed 's/^X//' << \SHAR_EOF > 'getopt.3'
X.TH GETOPT 3 local
X.DA 25 March 1982
X.SH NAME
Xgetopt \- get option letter from argv
X.SH SYNOPSIS
X.ft B
Xint getopt(argc, argv, optstring)
X.br
Xint argc;
X.br
Xchar **argv;
X.br
Xchar *optstring;
X.sp
Xextern char *optarg;
X.br
Xextern int optind;
X.ft
X.SH DESCRIPTION
X.I Getopt
Xreturns the next option letter in
X.I argv
Xthat matches a letter in
X.IR optstring .
X.I Optstring
Xis a string of recognized option letters;
Xif a letter is followed by a colon, the option is expected to have
Xan argument that may or may not be separated from it by white space.
X.I Optarg
Xis set to point to the start of the option argument on return from
X.IR getopt .
X.PP
X.I Getopt
Xplaces in
X.I optind
Xthe
X.I argv
Xindex of the next argument to be processed.
XBecause
X.I optind
Xis external, it is normally initialized to zero automatically
Xbefore the first call to 
X.IR getopt .
X.PP
XWhen all options have been processed (i.e., up to the first
Xnon-option argument),
X.I getopt
Xreturns
X.BR EOF .
XThe special option
X.B \-\-
Xmay be used to delimit the end of the options;
X.B EOF
Xwill be returned, and
X.B \-\-
Xwill be skipped.
X.SH SEE ALSO
Xgetopt(1)
X.SH DIAGNOSTICS
X.I Getopt
Xprints an error message on
X.I stderr
Xand returns a question mark
X.RB ( ? )
Xwhen it encounters an option letter not included in
X.IR optstring .
X.SH EXAMPLE
XThe following code fragment shows how one might process the arguments
Xfor a command that can take the mutually exclusive options
X.B a
Xand
X.BR b ,
Xand the options
X.B f
Xand
X.BR o ,
Xboth of which require arguments:
X.PP
X.RS
X.nf
Xmain(argc, argv)
Xint argc;
Xchar **argv;
X{
X	int c;
X	extern int optind;
X	extern char *optarg;
X	\&.
X	\&.
X	\&.
X	while ((c = getopt(argc, argv, "abf:o:")) != EOF)
X		switch (c) {
X		case 'a':
X			if (bflg)
X				errflg++;
X			else
X				aflg++;
X			break;
X		case 'b':
X			if (aflg)
X				errflg++;
X			else
X				bproc();
X			break;
X		case 'f':
X			ifile = optarg;
X			break;
X		case 'o':
X			ofile = optarg;
X			break;
X		case '?':
X		default:
X			errflg++;
X			break;
X		}
X	if (errflg) {
X		fprintf(stderr, "Usage: ...");
X		exit(2);
X	}
X	for (; optind < argc; optind++) {
X		\&.
X		\&.
X		\&.
X	}
X	\&.
X	\&.
X	\&.
X}
X.RE
X.PP
XA template similar to this can be found in
X.IR /usr/pub/template.c .
X.SH HISTORY
XWritten by Henry Spencer, working from a Bell Labs manual page.
XBehavior believed identical to the Bell version.
X.SH BUGS
XIt is not obvious how
X`\-'
Xstanding alone should be treated;  this version treats it as
Xa non-option argument, which is not always right.
X.PP
XOption arguments are allowed to begin with `\-';
Xthis is reasonable but reduces the amount of error checking possible.
X.PP
X.I Getopt
Xis quite flexible but the obvious price must be paid:  there is much
Xit could do that it doesn't, like
Xchecking mutually exclusive options, checking type of
Xoption arguments, etc.
SHAR_EOF
fi
if test -f 'getopt.c'
then
	echo shar: "will not over-write existing file 'getopt.c'"
else
sed 's/^X//' << \SHAR_EOF > 'getopt.c'
X/* got this off net.sources */
X#include <stdio.h>
X
X/*
X * get option letter from argument vector
X */
Xint	opterr = 1,		/* useless, never set or used */
X	optind = 1,		/* index into parent argv vector */
X	optopt;			/* character checked for validity */
Xchar	*optarg;		/* argument associated with option */
X
X#define BADCH	(int)'?'
X#define EMSG	""
X#define tell(s)	fputs(*nargv,stderr);fputs(s,stderr); \
X		fputc(optopt,stderr);fputc('\n',stderr);return(BADCH);
X
Xgetopt(nargc,nargv,ostr)
Xint	nargc;
Xchar	**nargv,
X	*ostr;
X{
X	static char	*place = EMSG;	/* option letter processing */
X	register char	*oli;		/* option letter list index */
X	char	*index();
X
X	if(!*place) {			/* update scanning pointer */
X		if(optind >= nargc || *(place = nargv[optind]) != '-' || !*++place) return(EOF);
X		if (*place == '-') {	/* found "--" */
X			++optind;
X			return(EOF);
X		}
X	}				/* option letter okay? */
X	if ((optopt = (int)*place++) == (int)':' || !(oli = index(ostr,optopt))) {
X		if(!*place) ++optind;
X		tell(": illegal option -- ");
X	}
X	if (*++oli != ':') {		/* don't need argument */
X		optarg = NULL;
X		if (!*place) ++optind;
X	}
X	else {				/* need an argument */
X		if (*place) optarg = place;	/* no white space */
X		else if (nargc <= ++optind) {	/* no arg */
X			place = EMSG;
X			tell(": option requires an argument -- ");
X		}
X	 	else optarg = nargv[optind];	/* white space */
X		place = EMSG;
X		++optind;
X	}
X	return(optopt);			/* dump back option letter */
X}
SHAR_EOF
fi
if test -f 'makefile'
then
	echo shar: "will not over-write existing file 'makefile'"
else
sed 's/^X//' << \SHAR_EOF > 'makefile'
XCFLAGS=-O
Xshar: shar.o traverse.o getopt.o
X	cc $(CFLAGS) -o shar shar.o traverse.o getopt.o
X	cc -o traverse -DSTANDALONE traverse.c
SHAR_EOF
fi
if test -f 'shar.1'
then
	echo shar: "will not over-write existing file 'shar.1'"
else
sed 's/^X//' << \SHAR_EOF > 'shar.1'
X.TH SHAR 1net "June 3, 1985" "UNIX User's Manual" "Wang Institute"
X.SH NAME
Xshar \- create file storage archive for extraction by /bin/sh
X.SH SYNOPSIS
X.B shar
X[-abcsv] [-d delim] [-p prefix] files
X.SH DESCRIPTION
X.I shar
Xprints its input files with special command lines around them
Xto be used by the shell,
X.I /bin/sh ,
Xto extract them later.
XThe output can be filtered through the shell to
Xrecreate copies of the original files.
X.PP
X.I shar
Xallows directories to be named, and
X.I shar
Xprints the necessary commands
X.ul
X(mkdir & cd)
Xto create new directories and fill them.
X.I shar
Xwill emit commands to make executable plain files executable.
X.I shar will not allow existing files to be over-written;
Xsuch files must be removed by the file extractor.
X.SH OPTIONS
X.de OP
X.TP
X.B -\\$1
X..
X.OP a
XAll the options.
XThe options:
X.B "-v -c -b -p <tab>X"
Xare implied.
X.OP s
XSilent running.
XAll checking and extra output is inhibited.
X.OP v
XPrint verbose feedback messages about what
X.I shar
Xis doing to be printed during extraction.
XSizes of plain files are echoed to allow a simple validity check.
X.OP c
XCheck file size on extraction by counting characters.
XAn error message is reported to the person doing the
Xextraction if the sizes don't match.
XOne reason why the sizes may not match is that
X.I shar
Xwill append a newline to complete incomplete last lines;
X.I shar
Xprints a message that mentions added newlines.
XAnother reason why the sizes may not match is that some
Xnetwork mail programs remove non-whitespace control characters.
X.I shar
Xprints a message that mentions control characters to the extractor.
X.OP b
XExtract files into basenames so that files with absolute path names
Xare put into the current directory.
XThis option has strange effects when directories are archived.
X.OP d delim
XUse this as the ``end of file'' delimiter instead of the default.
XThe only reason to change it is if you suspect an file
Xcontains the default delimiter:
X.B SHAR_EOF.
X.OP p prefix
XUse this as the prefix to each line of the archived files.
XThis is to make sure that special characters at the start of lines are not
Xeaten up by programs like mailers.
XIf this option is used,
Xthe files will be extracted with the stream editor
X.B sed
Xrather than
X.B cat
Xso it is more efficient and portable to avoid setting the prefix,
Xthough perhaps less safe if you don't know what is in the files.
X.SH "SEE ALSO
Xtar(1), cpio(1), tp(1), sh(1)
X.SH AUTHOR
XGary Perlman
X(based on a shell version by James Gosling,
Xwith additions motivated by
XDerek Zahn,
XMichael Thompson,
XH. Morrow Long,
XFred Avolio,
XGran Uddeborg,
X&
XChuck Wegrzyn)
X.SH LIMITATIONS
X.I shar
Xdoes not know anything about
Xlinks between files
Xor binary files.
SHAR_EOF
fi
if test -f 'shar.c'
then
	echo shar: "will not over-write existing file 'shar.c'"
else
sed 's/^X//' << \SHAR_EOF > 'shar.c'
X#include <stdio.h>
X#include <sys/types.h>
X#include <sys/stat.h>
X#include <ctype.h>
X
X/*{
XShar puts readable text files together in a package
Xfrom which they are easy to extract.  The original version
Xwas a shell script posted to the net, shown below:
X	#Date: Mon Oct 18 11:08:34 1982
X	#From: decvax!microsof!uw-beave!jim (James Gosling at CMU)
X	AR=$1
X	shift
X	for i do
X		echo a - $i
X		echo "echo x - $i" >>$AR
X		echo "cat >$i <<'!Funky!Stuff!'" >>$AR
X		cat $i >>$AR
X		echo "!Funky!Stuff!" >>$AR
X	done
XI rewrote this version in C to provide better diagnostics
Xand to run faster.  The major difference is that my version
Xdoes not affect any files because it prints to the standard
Xoutput.  Mine also has several options.
X
XGary Perlman/Wang Institute/Tyngsboro, MA/01879/(617) 649-9731
X
XMany enhancements motivated by Michael Thompson.
X
XDirectory archiving motivated by Derek Zahn @ wisconsin
X	His version had some problems, so I wrote a general
X	routine for traversing a directory hierarchy.  It
X	allows marching through a directory on old and new
X	UNIX systems.
X}*/
X
X/* COMMANDS */
X#define	EXTRACT "#! /bin/sh"     /* magic exec string at shar file start */
X#define	PATH    "/bin:$PATH"     /* search path for programs */
X#define	CAT     "cat";           /* /bin/cat */
X#define	SED     "sed 's/^%s//'"  /* /bin/sed removes Prefix from lines */
X#define	MKDIR   "mkdir"          /* make a new dirctory */
X#define	CHMOD   "chmod +x"       /* change file protection (for executables) */
X#define	CHDIR   "cd"             /* change current directory */
X#define	TEST    "test"           /* /bin/test files */
X#define	WC_C    "wc -c <"        /* counts chars in file */
X#define	ECHO    "echo shar"      /* echo a message to extractor */
X
Xmain (argc, argv) char **argv;	
X	{
X	int 	shar ();
X	int 	optind;
X	if ((optind = initial (argc, argv)) < 0)
X		exit (1);
X	if (header (argc, argv, optind))
X		exit (2);
X	while (optind < argc)
X		traverse (argv[optind++], shar);
X	footer ();
X	exit (0);
X	}
X
X/*			OPTIONS			*/
Xtypedef	int	lgl;
X#define	true	((lgl) 1)
X#define	false	((lgl) 0)
Xint 	Lastchar;   /* the last character printed */
Xint 	Ctrlcount;  /* how many bad control characters are in file */
X
X#define	USAGE "[-abcsv] [-p prefix] [-d delim] files > archive"
X#define	OPTSTRING "abcsvp:d:"
X
Xlgl 	Verbose = false;       /* provide append/extract feedback */
Xlgl 	Basename = false;      /* extract into basenames */
Xlgl 	Count = false;         /* count characters to check transfer */
Xlgl 	Silent = false;        /* turn off all verbosity */
Xchar	*Delim = "SHAR_EOF";   /* put after each file */
Xchar	Filter[100] = CAT;     /* used to extract archived files */
Xchar	*Prefix = NULL;        /* line prefix to avoid funny chars */
X
Xint /* returns the index of the first operand file */
Xinitial (argc, argv) char **argv;
X	{
X	int 	errflg = 0;
X	extern	int 	optind;
X	extern	char	*optarg;
X	int 	C;
X	while ((C = getopt (argc, argv, OPTSTRING)) != EOF)
X		switch (C)
X			{
X			case 'v': Verbose = true; break;
X			case 'c': Count = true; break;
X			case 'b': Basename = true; break;
X			case 'd': Delim = optarg; break;
X			case 's': /* silent running */
X				Silent = true;
X				Verbose = false;
X				Count = false;
X				Prefix = NULL;
X				break;
X			case 'a': /* all the options */
X				Verbose = true;
X				Count = true;
X				Basename = true;
X				/* fall through to set prefix */
X				optarg = "	X";
X			case 'p': (void) sprintf (Filter, SED, Prefix = optarg); break;
X			default: errflg++;
X			}
X	if (errflg || optind == argc)
X		{
X		if (optind == argc)
X			fprintf (stderr, "shar: No input files\n");
X		fprintf (stderr, "USAGE: shar %s\n", USAGE);
X		return (-1);
X		}
X	return (optind);
X	}
X
Xheader (argc, argv, optind)
Xchar	**argv;
X	{
X	int 	i;
X	lgl 	problems = false;
X	long	clock;
X	char	*ctime ();
X	char	*getenv ();
X	char	*NAME = getenv ("NAME");
X	char	*ORG = getenv ("ORGANIZATION");
X	for (i = optind; i < argc; i++)
X		if (access (argv[i], 4)) /* check read permission */
X			{
X			fprintf (stderr, "shar: Can't read '%s'\n", argv[i]);
X			problems++;
X			}
X	if (problems) return (problems);
X	/*	I have given up on putting a cut line in the archive.
X		Too many people complained about having to remove it.
X		puts ("-----cut here-----cut here-----cut here-----cut here-----");
X	*/
X	puts (EXTRACT);
X	puts ("# This is a shell archive, meaning:");
X	printf ("# 1. Remove everything above the %s line.\n", EXTRACT);
X	puts ("# 2. Save the resulting text in a file.");
X	puts ("# 3. Execute the file with /bin/sh (not csh) to create the files:");
X	for (i = optind; i < argc; i++)
X		printf ("#\t%s\n", argv[i]);
X	(void) time (&clock);
X	printf ("# This archive created: %s", ctime (&clock));
X	if (NAME)
X		printf ("# By:\t%s (%s)\n", NAME, ORG ? ORG : "");
X	printf ("export PATH; PATH=%s\n", PATH);
X	return (0);
X	}
X
Xfooter ()
X	{
X	puts ("#\tEnd of shell archive");
X	puts ("exit 0");
X	}
X
Xarchive (input, output)
Xchar	*input, *output;
X	{
X	char	buf[BUFSIZ];
X	FILE	*ioptr;
X	if (ioptr = fopen (input, "r"))
X		{
X		if (Count == true)
X			{
X			Ctrlcount = 0;    /* no bad control characters so far */
X			Lastchar = '\n';  /* simulate line start */
X			}
X		printf ("%s << \\%s > '%s'\n", Filter, Delim, output);
X		if (Prefix)
X			{
X			while (fgets (buf, BUFSIZ, ioptr))
X				{
X				if (Prefix) outline (Prefix);
X				outline (buf);
X				}
X			}
X		else copyout (ioptr);
X		/* thanks to H. Morrow Long (ittvax!long) for the next fix */
X		if (Lastchar != '\n') /* incomplete last line */
X			putchar ('\n');   /* Delim MUST begin new line! */
X		puts (Delim);
X		if (Count == true && Lastchar != '\n')
X			printf ("%s: a missing newline was added to \"'%s'\"\n", ECHO, input);
X		if (Count == true && Ctrlcount)
X			printf ("%s: %d control character%s may be missing from \"'%s'\"\n",
X				ECHO, Ctrlcount, Ctrlcount > 1 ? "s" : "", input);
X		(void) fclose (ioptr);
X		return (0);
X		}
X	else
X		{
X		fprintf (stderr, "shar: Can't open '%s'\n", input);
X		return (1);
X		}
X	}
X
X/*
X	Copyout copies its ioptr almost as fast as possible
X	except that it has to keep track of the last character
X	printed.  If the last character is not a newline, then
X	shar has to add one so that the end of file delimiter
X	is recognized by the shell.  This checking costs about
X	a 10% difference in user time.  Otherwise, it is about
X	as fast as cat.  It also might count control characters.
X*/
X#define	badctrl(c) (iscntrl (c) && !isspace (c))
Xcopyout (ioptr)
Xregister	FILE	*ioptr;
X	{
X	register	int 	C;
X	register	int 	L;
X	register	count;
X	count = Count;
X	while ((C = getc (ioptr)) != EOF)
X		{
X		if (count == true && badctrl (C)) Ctrlcount++;
X		L = putchar (C);
X		}
X	Lastchar = L;
X	}
X
Xoutline (s)
Xregister	char	*s;
X	{
X	if (*s)
X		{
X		while (*s)
X			{
X			if (Count == true && badctrl (*s)) Ctrlcount++;
X			putchar (*s++);
X			}
X		Lastchar = *(s-1);
X		}
X	}
X
X#define	FSIZE     statbuf.st_size
Xshar (file, type, pos)
Xchar	*file;     /* file or directory to be processed */
Xint 	type;      /* either 'f' for file or 'd' for directory */
Xint 	pos;       /* 0 going in to a file or dir, 1 going out */
X	{
X	struct	stat	statbuf;
X	char	*basefile = file;
X	if (!strcmp (file, ".")) return;
X	if (stat (file, &statbuf)) FSIZE = 0;
X	if (Basename == true)
X		{
X		while (*basefile) basefile++; /* go to end of name */
X		while (basefile > file && *(basefile-1) != '/') basefile--;
X		}
X	if (pos == 0) /* before the file starts */
X		{
X		if (type == 'd')
X			{
X			printf ("if %s ! -d '%s'\n", TEST, basefile);
X			printf ("then\n");
X			if (Verbose == true)
X				printf ("	%s: creating directory \"'%s'\"\n", ECHO, basefile);
X			printf ("	%s '%s'\n", MKDIR, basefile);
X			printf ("fi\n");
X			if (Verbose == true)
X				printf ("%s: entering directory \"'%s'\"\n", ECHO, basefile);
X			printf ("%s '%s'\n", CHDIR, basefile);
X			}
X		else /* type == 'f' */
X			{
X			if (Verbose == true)
X				printf ("%s: extracting \"'%s'\" '(%d character%s)'\n",
X					ECHO, basefile, FSIZE, FSIZE > 1 ? "s" : "");
X			if (Silent == false) /* this solution by G|ran Uddeborg */
X				{
X				printf ("if %s -f '%s'\n", TEST, basefile);
X				puts ("then");
X				printf ("	%s: will not over-write existing file \"'%s'\"\n",
X					ECHO, basefile);
X				puts ("else");
X				}
X			if (archive (file, basefile)) exit (-1);
X			}
X		}
X	else /* pos == 1, after the file is archived */
X		{
X		if (type == 'd')
X			{
X			if (Verbose == true)
X				printf ("%s: done with directory \"'%s'\"\n", ECHO, basefile);
X			printf ("%s ..\n", CHDIR);
X			}
X		else /* type == 'f' (plain file) */
X			{
X			if (Count == true)
X				{
X				printf ("if %s %d -ne \"`%s '%s'`\"\n",
X					TEST, FSIZE, WC_C, basefile);
X				puts ("then");
X				printf ("	%s: error transmitting \"'%s'\" ", ECHO, basefile);
X				printf ("'(should have been %d character%s)'\n",
X					FSIZE, FSIZE > 1 ? "s" : "");
X				puts ("fi");
X				}
X			if (access (file, 1) == 0) /* executable -> chmod +x */
X				printf ("%s '%s'\n", CHMOD, basefile);
X			if (Silent == false)
X				{
X				puts ("fi # end of overwriting check");
X				}
X			}
X		}
X	}
SHAR_EOF
fi
if test -f 'traverse.3'
then
	echo shar: "will not over-write existing file 'traverse.3'"
else
sed 's/^X//' << \SHAR_EOF > 'traverse.3'
X.TH TRAVERSE 3WI "December 16, 1984"
X.SH NAME
Xtraverse \- recursively traverse a directory
X.SH SYNOPSIS
X.nf
Xtraverse (path, func)
Xchar	*path;
Xint 	(*func) ();
X
Xfunc (path, filetype, position)
Xchar	*path;
X.fi
X.SH DESCRIPTION
Xtraverse
Xapplies its argument function func to its argument file pathname path.
XIf path is a directory,
Xthen traverse applies func to all its entries.
XThis traversal is in depth first order
Xso that files are processed in the order
Xthat they are stored in the directory.
X.PP
XThe argument func should take three parameters:
Xa file name,
Xa file type,
Xand a position.
XThe call looks like this for directories:
X.ce
X(*func) (path, 'd', position);
Xand like this for other files:
X.ce
X(*func) (path, 'f', position);
XThe position
Xis 0 when path is first encountered
Xand 1 when traverse is done.
XThis is used to allow processing before and after
Xa directory is processed.
X.SH EXAMPLE
X.nf
Xlist (name, type, pos)
Xchar	*name;
X	{
X	if (type == 'd')
X		printf ("%s %s\en", pos ? "Leaving" : "Entering", name);
X	else /* type == 'f' */
X		printf ("	%s\en", name);
X	}
X.fi
X.SH AUTHOR
XGary Perlman
X.SH BUGS
XThere are no diagnostics when directories cannot be searched.
SHAR_EOF
fi
if test -f 'traverse.c'
then
	echo shar: "will not over-write existing file 'traverse.c'"
else
sed 's/^X//' << \SHAR_EOF > 'traverse.c'
X/*LINTLIBRARY*/
X#include <stdio.h>
X#include <sys/types.h>
X#include <sys/dir.h>
X
X#ifdef MAXNAMLEN
X
X#define	namedir(entry) (entry->d_name)
X#define	MAXNAME 256
X
X#else
X
X#define	DIR	FILE
X#define	MAXNAME (DIRSIZ+2)
X#define	opendir(path) fopen (path, "r")
X#define closedir(dirp) fclose (dirp)
Xstruct direct *
Xreaddir (dirp)
XDIR 	*dirp;
X	{
X	static	struct	direct	entry;
X	if (dirp == NULL) return (NULL);
X	for (;;)
X		{
X		if (fread (&entry, sizeof (struct direct), 1, dirp) == 0) return (NULL);
X		if (entry.d_ino) return (&entry);
X		}
X	}
Xchar	*strncpy ();
Xchar *
Xnamedir (entry)
Xstruct	direct	*entry;
X	{
X	static	char	name[MAXNAME];
X	return (strncpy (name, entry->d_name, DIRSIZ));
X	}
X
X#endif
X
X#include <sys/stat.h>
X#define	isdir(path) (stat(path, &buf) ? 0 : (buf.st_mode&S_IFMT)==S_IFDIR)
X
Xtraverse (path, func)
Xchar	*path;
Xint 	(*func) ();
X	{
X	DIR 	*dirp;
X	struct	direct	*entry;
X	struct	stat	buf;
X	int 	filetype = isdir (path) ? 'd' : 'f';
X	(*func) (path, filetype, 0);
X	if (filetype == 'd')
X		{
X		if (chdir (path) == 0)
X			{
X			if (dirp = opendir ("."))
X				{
X				while (entry = readdir (dirp))
X					{
X					char	name[MAXNAME];
X					(void) strcpy (name, namedir (entry));
X					if (strcmp(name, ".") && strcmp(name, ".."))
X						traverse (name, func);
X					}
X				(void) closedir(dirp);
X				}
X			(void) chdir ("..");
X			}
X		}
X	(*func) (path, filetype, 1);
X	}
X
X#ifdef STANDALONE
X
Xstatic	Indent = 0;
Xtryverse (file, type, pos)
Xchar	*file;
X	{
X	int 	in;
X	if (pos == 0)
X		{
X		for (in = 0; in < Indent; in++) putchar ('\t');
X		if (type == 'd')
X			{
X			printf ("%s/\n", file);
X			Indent++;
X			}
X		else puts (file);
X		}
X	else if (type == 'd') Indent--;
X	}
X
Xmain (argc, argv) char **argv;
X	{
X	int 	tryverse ();
X	char	*root = argc > 1 ? argv[1] : ".";
X	traverse (root, tryverse);
X	}
X#endif
SHAR_EOF
fi
exit 0
#	End of shell archive