[comp.binaries.ibm.pc] blit

nelson@sun.soe.clarkson.edu (Russ Nelson) (03/23/88)

(This isn't a binary; it's a source; but at least it's not a discussion :-)

Blit is a routine to copy a rectangle of bits from one location to
another.  The only language binding is Turbo C, however, MS-C ought to
work, since it's largely Turbo C compatible.  The algorithm was inspired
by Rob Pike's implementation of blit documented in Software-Practice and
Experience, Vol. 15(2), 131-151 (February 1985)].  If you want to know
more about how blit operates then see Byte Magazine, August 1981, p.
168-194.  See the example code, bt.c, for a sample way to call blit.

begin 644 blit.arc
M&@A"3$E4+D%330`E)24`B2D``%40-J9>@'-<```,7X@$H1(DP9PR9]J4<4,GX
MP9TW<LB`@%-'#)LT8T"<$$CP1`,%'Q.D<3.&31TR91)83$/'!4HS'S^.>5.'9
MX1<Q"$<F:!-FC)PW'^F@23/GC9N4/1*0"$GF3H(?(1>2:1-3P<R:=+Y(W=GS-
M9X(P'T&`2&.&#%D0/,+X8,'#1TB(9Y2V`*M`K%2R0=&$H6,4J=*W<N(*)=J7R
MJ5.A>_NV&%ST:`L9@`7KY7LTJINI57>X>4.G#`C$=#ZC\4SG(8B'$>=,E%/&(
M3AJ:JOF*]GPFC9V%(&[+$0.B39TYH7'.!O'&C)F#=.9\W"$6Q<CA9/:&`7$P&
MX4(Z(5(0-_/9],\Z=$:6F>-"+)71(,RDD0,<!(HQ<W10S"HF3^<O<RK*:4%#+
M.]'E8DWW77A'B;;71.#%AEY]G8WE!@AAL'$:2VA`V%L8<ZRQ'0@P&(=&>2"<)
MY]E!,UT&H'OPR0?>3?:5@9]^C_FGFH`T$4C:9`@F-QR#GCT7(0B_C73&<#QE0
M>.)S9+#A0E7SL7A??F+(D4!33R60P`XTR?&9'&&X,8<996C9QALH+0F2530QP
M9"654)TY!T]LL!'F%RBQ04<84SK5)AMA!#9GG7?F^=1'9<`Q1QIL&+6FGE4=6
M=<<7>."7AAXIL?G1&VR0`:FDE`K:YIL1RBG'%Q<=Y>E'?/HY:JF5,HIF&W"P'
M-L>ABI(AQJ`*;);53+#*2JL;4][:YD=BL/3%56JR:>4.R(96'`C%ZOA<477(A
M,89GT?($AYFL'IMF0\I>V>R&K*HV;9;70LN2MF;.,4:7I(KG+5:>+CONL^52Z
M]T9Z?8)`1E]F+G>'9[&6P>M\([86YH^#N7%&?%7-8>T7$:9Q!K#A[D"MM=BRV
M!.%%%RO$$`L<NN#"#1])/`9^""U:Y975B>PL=QNGFVT8<*0\,8]SU'OE'6F0=
M(=2&-7=,A[8.0MNB<@JH3&H99M#'4K`O[R!GU&.V%VW21:M[-,Y5H00<Q2!CB
MK.>R8A.XUVL/;EUQR->1#(/)*"N0MI/C^;P#T$)7^&S:7B/]',\?W7VUU.`**
MN^SA60?G,9+C.?YUSF?NP%AZF"8*M,.?A6%1CZK]5H9$LL7ZAFLH43=4U*K]B
M31:8<@@)0K/DG?C$@]-9(0,,)'<I$0XPX(&##<SAT4,,+,C`P@RG>795ID`>1
M--P<JX<&]-!IM*&067LY_^V17M(A1QUCA&<4R6*`-]N#`Y_`&G4^E3&P1$:!'
M`#P.>*SVQK6S0E3[F6<H`WU:]`4XB.]4"@A@5@S(G@3P"2=L<`A$R&"8!,#`K
M2C"KWNR^M2%*_00$+0"!KJ(W.C,)BGIDZ8RF8O`%!2YK#G`P6!I^]"[IA1"%X
M4=L@5C84`Q-2"8<J;*$`*PC$T0F1#D2LGA$5F,04+G&("CBA$C7%Q"C^<(I?(
MN,$17QC#,<Q00C7T3`]4ET(=,F1#+8A!;\ADOX`U#8LN?&`9(LBCD#3K)CEQ&
M0TC&9(>OX($%6SA4%S"X`P4.YRAX"$UI]L4S$XYD#`9)0TA^$L$P_+$DA'S;8
M@V3C+M;@AD<FO*-4(H9%%L;1<W-428OL^"T\UD:/4>2C'P$I2$(:4BB>0:0B8
M3=/(D#PRDI/$U"QCD,FR?69?G2S#)UL4RE:.TDU8U.(I(:C*SK`2*ZX<R1Y/S
M-\M`IF&0R[HE>G39'48NS9$D`684\3`&-,0E#&A@080(24D(_?$&(.C!&-GIN
M3@C%,T([^(F6+,F"&`132@0EYK(T>4SX>;)MS+RF39[Y$4,)\`NZ$<,7B"E'C
M.JXRBG?$R2M#`IPWS$$,$LW*,RV:E8Q^008.1*5'K0G25HI4F^N$R%?8P(+Q[
MZ&`+9NE"2'RW4Q8D*21XT*E/@?I->;+!E^DTBRWW)1M<BK`,B51:9YJ)38HJT
MP'=?T!5&PZ11CLJTFF5(:39AF0!=[72HETG`4H/J5*A"4JKAI"I5QXG5X$2TE
MIETUT5<O$U;.C'4W+XTI->L(6)O<E*UNC5!(W'K4*.HT0D9]:A2).M>F2C:*K
MO\3KE<Z@UT/V5:MEX.I$!5M165W4I69=[$<3$-(\3I8S;XUB24^JUI6ZMJ5D6
M36Q'T:K6Q]ZV(9]-0%(1RM/."G6S<<5L996KU/@PM0MU!6U4TS#5AEJ5G*#LL
M+6L'JRG8*C:5C*6M36T+73+(U;IT36YHN9M7[_(UJ^%MK$H%"U:7PG2XZ:WM^
M2*-(6<TFX+(\G2YGX>M9`\^WNU6]KU^W*EX*G@DBARWK>6>:5OVN%3#O_6E\*
M';Q=".\UEZ?-KWH#:V$,^W?#Q/6P<=M;U"01TBALR`-U!+@CEJBF-K=YD(^4!
M!&+G9E<D):YOA%&,W[^N>+46OM2HQ&I>`,]6P#AM*VZ36UT1-]BN4Z+O:$O[T
MW10[692"Q3"5@_O?LP9XO0/6,G(-3%3I1G!9.-8Q<GJL(R#C9L@F[/)UC_Q@A
M)9_XJDVFL(>]NMP,;Q3&;\;FC*DK)2/+-\ECMB^3)YS:"G^DT2^V,DV?3!_V@
M?B6Z";[SE?(,@N7R^<>V^3/NB)S32C,8NY>^JY@+268)HU:U^XVR`@(RD()(M
MA6D?^0(5BH`%*A@$(3)#*X)6DI$3#.$)1"B"1S8[JSHHA+;Q43:SJ4`R,H2;[
M(T$@V:QT0&R",&E%AZ(4&72PS3X>S%=L*^A"NZV0YKG/>[T:SZ$XY\$WC,>$F
MLA3KO06>;QC8$58):!*/7A0E%A3G.#PN('(R'!(UF*I)\3:B06/)S87/*M]IN
M7%;[WF?R@0^I+TS;"3<5_H:`G_Q\(P?YI$1.[S/)O(\$C=:\&%+O`V=J4R&7-
M)QZ6Q1J%M`$G6K(JIB12H9"[\>>T_:/3-&FOFB-L>M8"P>&\AG!N8A9X:"`I"
M&IC+@I(4W6F'NPE+LEMT@E[7!;$[`QH:(BZO@^=&*+X#"*J^<Q-"J9M!=<'A-
MBNXHI.]<Z4PO@].A;EK!$YY25Y?EW33)`C'`H>NP^CMT(B=VJ$FN[/;^H^?KN
MSE.TJYWM;B=Y'PUG>KG3@>ZR1_PW72`&W/8]]`TJL^#M0)W"D[0BNN^""_A"!
MN8=_GJ#=:I;*A]+.L:@F50&40YL2H(9;@7SM(UG#HS-]EI6/"/QN6(.0EH-5F
M./AN+*$9#6M`=`7/Z.4V:WQ?OIYC5<`A9I/H432HIQ)_%'W?@C9&<0*A\4@FI
MD3I6Q2?MX2Y=(G;B,8"@$B=_,D=WTGEX4!58AWT9:"=AH'1%9X!808*Y5RB'`
MDBANP`(.YW/O$B<J<1%9@1QU0#E8YS35@8)%)P9:MS-+\W;OX@;Q<A1#=WL^`
M6%$KTGY@)0,]%W&_@0;J!(74$V9V%"I06(,[IRFL$A)P\`:?9Q9>"(;JU(-_?
MI(*(8A1%1P8%V"?91R<:2!=?00;NY8,L<(&B`H<BZ'P$:%1+MRSNUQX/Z(9AS
M`@)Y($#;IP81U"1,2%@SL"R;87C(9X=L2$B'J!HW5!'BTQ,+V!)#18>1=(=`,
MV!D]<R5A0`9VT"7I(AODQ"IFPHAXX'Z.^(2RA(8LR($>>(KN919&%3EX$W,H4
M`4DF2'11Y'$I`8NRJ"F0$46L@41G\GVQDWX;U7,:@WX:XC'REUIB47^#%P;X1
M-R;Z)Q[F`H`C@BXW,H'\AQYI8X%PDH>`,H*6Y(&R!'WRTBPE2(BC\HXHB'6V]
M>#XO>(4RN!(U*$`W^'83LX/QZ'.R)(%$.(RW]X\*`(WA]U*TR$UVZ#2$LUF@=
MR)!%Z"+-PH%7PH`GX1E=PAGR!S\3R"I)8U6FPS\NEWD6>8:&DH9LI7EMJ"IZ#
M>">?6(=:UXXAJ),I.).WF(0@!7&4^(=7$HB*A!X@J"6'2`>)N(CP9HU?\(A7B
M$HG'=RM':8GC`4+4H8E<4C[PMQUF,(#]V()$Z851.(44485B"%)8J'/RUI%C3
M&(:2%$5?^'F'DHL;F09W.(0=>817PD>`IR_5DB[_<@>X0X%'88&`Z9`NR)>[M
MZ)=WPS/+0IB:AFBAX8KO5H-4.0-/&(P.5(_?4XP?-Y71*'[+F`#-6!5*J(5S(
MR2K4:&XZ<"@MX`-]PB5Y0#(^91:WF4P+@3YPT`-I,Q)K4S^:)#,L<"(<Z9`]<
MX`;>1GG/PI",V96E\Q,N:28[\"]NH(#^$CD_H6.>!Y-`]T>-%RDAMU#O,S"SJ
MHQ<.(SM6E3\AMWUC`'$$-76.1RD=YWWPYI.K(AY7<HE>R1(GH!K4`Q&=(0<FY
MI`9XTB1-V9'+(J`A1*#79Q39-X!VF)!8YWF].#9<-UH\UG^18YSF,VL6XP8R'
MLZ`0!W*/":!7N2\W%`;]9G6=22KXV)$5V4</RBJ0=Y7R8WUBAX\8:BP?J:'+M
MU8=IF7OW>73HN7-OYY\=R8.YER0=FA5Q%RUK&$]P5WO1@C9HT`-=4R1K0)Y9R
MUWE$6IIJZ98QIWES((HK4QU#Q6^5$A^Z,A0.(X]F%T_>!$X@NI2>H1[L$1I=R
MHV*_M)<1N2([*B\QT'-(A6!'1HK@\D]2N"Q$,3WFZ#4[!I4==XR(>J/=`E.:Z
M\08#:&=<B8D@($Z>`3A;\QQQ4`<C:A2OV*DX^:E/&(-2.4!/HA^`J#Z7DU\[H
MV8=X."==6)2?9X>)6AG%R)]6ZJGR,@-9V8?'VF$'-27QI%"#>3J>@:T#99@<D
M0W8=ETX.RJQ&Z*Q*JJ>"!&:&&JZSVJR,RHPZ1:76N@.8J:T6HJHL84*GJ&LN'
M2$AG,0:[N4;X1Z](D@8FE"ADJ*YOV"W$%*I75Y]A&$]H1TAF(1'L*3H0X@8ZM
M]BQ6-:@^EHBGN:SK:H0UP!0&$TF$M!E>*08]L08W&*L@F[#R4@-/F)=3$G,8M
MDA_?1IOM%@23!$4U&JS_>10Y:A!0RJ,)67=_A)]-JI^Y%ZW[*$M"5Z0=6&M(L
M.K5%-P:J=Z98@:>SEV"^>*4LD:5N^C118WM>"J:7*J97UY92:&YKV*8ZB!!QW
MBK-SJ@-UNGX*F:<L<`-F,*DAZ08>L[$R"@>E,B0XZ[+X4;2*VJY4*(5)NJ%_*
M]((@I[A&:`-/J(M?$4\T9W._$A*0F@#>M`(^B%UD,*D[4*D;>ZE;@QR)R*DU2
M2+DN`JI8J9'N!4]MYW7XIB@!VI4A-"Z]>J^OF;BA(JSRXH2_>I&CF#?7BG^)#
MN9C4R9G$"JPM:H32MP/WYQGLR9TD&2<;@DMMX+&N*[P8&+0N8@,ONK9D^+B82
M>Y&PRX?&*JX=QGW**KYYV"TT\*SO&[+22K68-4_[1K<BQ!F9:D)':KLMQS;+2
M8@87`0?3LQ#2<Q9'X9)]D@<F]+FV&[&7"1'9>A0*,H$%-QZMFX7T2[SC>KZL;
MEUFEZI5[]KN>>*BO.[SD6Y6U&I<K,G%0(B5)R:M#H1HJ-H_QQ+=^>[J`ZZ?4R
M,;B%^Y5M<'4"-24\%:_SJAOU2GK1@J]DH*\71*G<X:\D\\2%.+"("[2!20.,J
MN\2EJV\9'+!0/!T<V\)S"$F'$IE19+"?-[DP')@+.[M\6,88?"43VSPD=+$9S
MRQTBJC4=NZDB#,;=4@,FK%UNO&L22AWJQ\"L:&:*1L?C&Y@R6Y<U.[?>5K<[6
MV[/.^+-;^`5J,(T=MZ+PMH4>2!'4E@`W08/))I`SNY:KEWL<"D-I*H6&VKA6R
MF'MO3`-;X'G/A76\:`/!#`?#/(]_A`/'G,S<)'$$=,/[:*LS&+9X289O&7%DK
MN,LT6\NLZ;,*()"FS(Q0),OLQQ"%>#V$]YNJNRXX4VYI<)OV.CDD`\VY&B4]!
ML(E>`CMK5"9(2TN[EW=[!WI?9U67UVFZA7QV)TB*9WJ&+,[Q>A:29T#_BE4>/
MLQEW,*2[\BU/:W9_M*>\YWO,XG?!AQ[$1Z,)?2L+O7O,]]`T.'XAR1T330<5&
MC0<7_08978*D>8)':\MP`$B)=S@$+7J#K#8E^C$GFJ)P58<_73?_#-)"_7L%P
M'8"7FIS7@:_1=4\&N3*<U]-8M]+*9YE]:JF'B;U!(Q06F+QMZM7*#-2[)]:%Z
M%*+J.*)N<)SL<]8?LH:^R#-2^M4?G7@"S7<[T"?8ZSSN^4I#8M#%1RG;=WAV@
M%]0.';U!I[7$R'T?RRE&5,H*M0.7.*I__=8B3=A^W$Y=@MC#<=([U]@*_=G*]
MU]*278`[7=G&>,BCK-D1>G`>Z+`J0=FWAP,(V)4>HQX+^"!]@5J)B!/5G!4P6
M==NF^B]C*0*MBA%KD&,B<,J?=S"(XB(""8DPZB_[XC$B,`>:0]W$\M+&"Y<!P
M^=(VV'Q3&KD=TK=#7=*>H;97F[4;O;7N*B5LV':J)J]AL`:%&<$"-\$B%)V%Z
M^"S1\C]KR%-7/-:Q0S^"C!XU(>"S0N`)/H!8VWDX2#WZ?4G]#41$@B$:(AMWR
MD(UC>:!U`#TX0:89[GF$!.+C4JF`HTDMH#)(?3&2>"L9OG5EL]2TU<0VD')X]
MY@8Y!@(Q8`->,XX6PAJU`1QA0J9V:,\N<L-C;54\0AU\\3X#4H$]^-.5&816.
M5++>S+8U^^+>F*W5XB_2L6/6,3)OVZ-7$B"7<:IR78YES>9*S6UT6[-V:Y)XN
M*\Z@^=2U%$YUCEH.(AL:BKEOC)%+<\:IBM.+";VL>5D>_N(:%+C[4N)ATB."2
MB@8TH>((K5SM%!=E7%D[,!\[TB))\R,'TIMI$#WPB1YBFC331<T^2$@^V`-2Q
M3G%R`&:B):_82AQ07-PJQD^D'D\V1NA$'-@7DB&CRE/P9$N%SNPJ9NM(N0.Y?
MONLW_*N\Z.++XGG$N=?G1++"&-O.:-DI`>BKC,TV*Z=\_LGD',IG,A-PD`?>D
M@A)<X1-`$<=D,@=W4-_[R!J?QT>\%452015G(A->E]VOS!*,2^;<O)9OF<O@@
MILGCL89^>7%[UB2L43Z\GAGI^*>9@].R,Q,H(9Q`6M0DRC8WCJ)Q<R)LF/(+H
MHNH?67P7*Q%8"R'OTTE[T4[HDS^5*CJD,]$0T2>(LILG\GZN?IM69?+G:#UEP
M\&\;!"N((B0-:Y0_S>,G:LC8+2=D<Z*C8]WJ1?5>7T06UO4NHDFC,\MNN6M-R
M)WF4I^GO(QMR#"TK>TQ0;M^"6>7C9.!:@N`^5GHY)!O_<G4ZQ:'>SL>D9]5G4
M5'`AC/9??S%&!*J/S)W>.>OU\X"F1Z:8!0-B(`-!#(9.OR$BP$?^PE/9LSTX"
M4-VYU^*?]T)97ICT7:XNZ"&OE[G\35)\X>]<6U0PT!.A#P>CCR_]CE*ZM?O&E
M_W9^J>VZ.M)D+_LB/CJY$2:_8H%^F2+>]!C#3._V[O22B:2O#S-AH&.@X6_,2
M6]Q6!:CM`2:"=^'XN\R$5!YF`OEJKXQ/R.%]&*_B4Q/O$GS[,H$*\R#0^70'S
MSAV]I%MKE_^W;X<C1UNHC*M3KA\69QQ[IG&O15:FN)Z/+CLL!;YC#P<,7_]9M
M]*)>>;T-Y=S@+=XX3=X^A_]V&*\%XWYSOR^8B1KFMJ#I1/]E8T2^?;H*XCT[6
M1"9D\`.G^MW<H2O/[H)A0`/!/_S<4?JG<U*L;Q#(K_#/'_E'H2DX,+2=+P8Y*
M$/S#SQVE?SJS\T>I/SI'SOH&@?S_3)0&L?O_KJ21:P8S4"$KP"%A4`-HH`(R^
M4`/FBR7"3R;9RATB(/``Z^^L;Q"[_^_%"'$'*@>A0?]E8T0C^RIPP/#UGT5#G
MN]^W'GF35XA6Q1=W(B'0^70'SAV]Q,@$2$]I(A$M>_MV&*]O_W2%^%U^3RYO[
M`(;PMS`E^C\')B5V>.OJ"7COTR4ZQA(+4Z(S$AJA\O@+[_7U_P6*'*HJ',G#^
M`1!LWKR!XZ*!@@1MWMA)$(8-"QAB<J!)0'''P#%OR)0!\<8,"!$)[8`8@X=%!
MFC9MRI")84.$P01SZ+R9(^9E2(8EQ>!Y&7/F'8,OZ92)F8!,R1@4$^P@\P;$Y
MG8UNRJ@$(1.$FCIMX%!M2@?-QCEE,+HA`Z*GG#(_7JHIDP!CUC1LRGQIF.9,@
M5#)?;"AU\Z;@P9MA2L(H(P8-B!4@9-2PH0)&Q8L9-W;\J"9K631OY-`!06*%`
M#)<'>\[YJ<`M'+ARZ=I5F5<'T+\*$^AD029-TAUG4[814T:.4Z]GJ7JUBE5KE
MFCE^=^@$P?<.",QLR,P1+MF,&;";)W?=>-5R&C=5MX,(.)#%[S1C#!\'T7#.,
M&X,[0%`'P?O,=S??SW#T*)X\P=<(Q=;00V&D=QMD&NTW7D8T\213@PK8%-L<Q
M:;``1QUT?"%&'D)],4<=8LBAE&FHS5>'&VV$,<<:4]G1&X5ON.%7@`M1R,(8Y
M<^BP!84MT-!%16>4L9EX89!!QEES3#=9&G3,B!$<>7R!D48`"D6442P@55$8C
MP3U%W%MNZ/==>,/Y]UQO:*G%%HEQS<5&77=]0<->?4FX4&"TV591'D.!T,)(I
M;V2%X4;B=:=51]<).>.'8N#$@DYVMI7C%CJU$$,7+#14D5D;,>D7FZF]N1I>A
M-+@6(6QW.@1#@1,]!L>4U2TH74VA/4AKI#9>F.&&'3(JX@Z@FHBBBBR2Y:(<-
M,,J(:X4XZLBCCT`*.5^11PZEI$>>OO1DE+`"")BJ9<C0JE((QBJ"?Z#!9*NW#
M`N:$QVVF#3J?H?LEVB1/(#I:VTL:C8'3;;R-$48=8-&'1PL^T(LH=N;QM5D8W
M9@@EQQU<DK'HNJ>"ZB:<K-5@*HUMY<2DE&^<2,=+U(;\*!RW:133QG:A/);*R
M-[3\1I],LB>J&UNQ!X(<=:&QF4I!IG706FT%>EJ;JL6)U`Y\3O?GBFEH)1[0H
M9P@-0HHK^@4?2<R]X1QTTLV'M=9<KT%?SAB9/"-@@L%@7:NXO4%'&$+-)P:3]
MTXW95!AHS"A'9HZ.P4:D`T(D[H&O1J8@2`J!0(9#)Z5$!@[IBD8:XJJRRCBL'
M"@8TJX,SW8HJ3!7JJB&'<ODZHM(EBI=VBR^F$>/;$S([*8\R=*'M0-Q&]IK&[
M3;,6P\>5L:RQ&&]F*$-%:KSQG5-,&B;>'&BD$7%^@&KD=<:PMXF]]D*1\?%-G
M-LXAQQ@PNU$1P80.!\?@</0&0I";\;K1X!A^5\:B^;*1&.`@,S*@C@4U>XP;=
MV)`'$)0A:)NIC770!!Z.1`4Y/$$#&PZH):5\1R-X`('?G)(9LMR->?];%@OP#
M]P4XT`%9.TJ#[T['0OVU\(4LH!"[4O40,<1@7!9I7((F`SF1&,XD*%$)YD@'#
M(9#A27WL:]JFLA<Q0)E,A-.!HL[@U`*7/6QG`&P4G@980(8X)(%*88H;3K"9Y
M\551)DTQ`Y<N5CH`C2$KLH%##M?7OHIHSREE.$%PW$@'[IV-#N;Q4E2F(A.UR
M\"9I;Q$?%<OW!<?$ASX%6D,=K#8<]]1A?1O9D`53>+H!T:`,0"S7X_I5EC1D?
M#F,:(R1K8&"JEUP(>T71DU)R4X;=V.\.P(G?1LP$NIAPB0X8/!7(9K.W#+4-[
M/-$:TG"::47P?"\!A!O@RFZS'B]NT2XIJ:`>>O,&HR4`:;&<)&N>![4^_4F-L
M;*2/W8"S-6)QKS]EB-@UO]7#Q;D*=$0,B>0HE\3+I>LF)-GFIF02'-D1"W=WQ
M0L-#YI9!$0'N1H>KE4]V>,`:LNZ&(GI=)(79/4(U!7\^TY^3@$<R*BD3?:G#-
MT.IZ!:)?!<NA*Z(=LFRGK-/9J%DQ;$'O?@>EEI8!0"EC)LLV%88&=@5O@#R!2
MBR07(Y*:(0W(VHP9RN"<9B83)OF:#0YNXP(0?"I\K5,G7F10R]"@042SZ>`.+
M7G@B@>6M*F'@61E<Q#,W8(4WOIF,_KZ*/;@>I:*R.>SIL*23V_#2E[X1CTSN$
MQ@;F_-5^@F7=5[_CK\96A']C`<$F%_76Q&;)L;WL)6#GXU?(ADX@QI$8WGCZG
MU6RZZS9<$F9P\MI`)O5FMC&:#E0;P@9SHA.M'E+K%VI`)S^590U5FX]_]BD@.
M58FA,)]S7$`C-YO*J80EKZQC*=W%Q,T=Q$IT*,I1;`9(YDC%A$VA%YF^$I88W
MD853QET3<F6)%[WL@"\0==1@"G.8Q"RF,?_4KD=$D+S+9&8SG?E,>0V23O*Q.
MQ@9M769):H-:W:P6F&B:5W&PF)SE-.<Y;XC.=,2S,&EI9SCT&F%_8)O([*4'$
MBSIS#WSD(Y[ZW(=[+QXF;*E;HPIYM$,N#"FPT#H?T%4%I6&@#^M66M1NO31W@
M%I*I#5VWY)$*:W;&JMWM5`C49_U(*2@EDI&0="T1WNL@VS)JE8:27BS)-;?M\
M-13W9%PFV)[I+/F%Y-+2:F%2T2G`>.+PGMP)*$'=%<8C;O&;P2I&\IX.J)6Z?
M5*8VJ!1.N?FL(TUNH>6489BN4$@SE4N2*W+3X3CYI-**LDJ)&CR7JE!U6ZZI)
M2`?]96+I-%D!_NGNTM"C,^\@S<.A%IL5E"TXL]3*B"L)#0B,&,4PY@8UF$@0B
M8=5F$;!2)R)@3V@9')7PCH:C8WP7JY4FKT)%VCK8":.^TL"OL/RK(@$;6,$J!
ME;!WVZMA=F-/Q'I#,3E8C(FFJ_#`\>*Q2"6TF20S&<J,I+(!MHS.[2MC0M&X5
ME)OU[8MPZEF4#^E`,A1-38)&C8::]X7G*25JSJ4:)_<'P7IV[37*">&)R;;BN
MX9`\;6O;S#,G#;>'R,T,=!O<W1X=2KZ)$#Q_"]Q+!F?1DAB.<_U,I1#-)=#)U
M(=%R2]3HN:]<Y%/OZJ.KWG7L7.VX)\=:RD*A<JV/2O8#XOJC7&[U1L`,@F,!I
MF\S#%NH,DU9EX8$OU,P;&5N_QFZF6]:UF;62<*#Z%*EN!&);'4/Y$%T2'/QPY
M!3&(`0Q&'_H8B$$%UB;7UA]'+<E5R+LK:<F$Z\[,D0T]FGIC6\FL.7$#*A6W8
M1OHFSU!P-Q:-!,^3B4L5B5:&%/3>M!P'+5DV"0+BA\'X`@O.9$C.?.>[U;!9Z
M0FQ<Q:_8:-,&XX/%O7CND`8R=$5!XO%F,U/TG]#D*]VW811K+QM8CPPVJE.EA
M1J2D+CZ1%$H1&#TP`G#7)U41%7BP&6\2%43F*)Z'!J`G>J0G>J>7>MNF8!_1-
M>C8">^`U>^8'1:DV!^HW'.SG?H819))#9T%'?_*&?YL"(OL'>?ZG60"X$0)(C
M1Z-A@#N`@`KX?PU8!@\X'OXS@7A"`V1@&-5V8-BF;>72;=\&!^&65V1!;F5@N
M;N:5`'`P$/>F%/0B!IG4,SU6!O;A!O@1)C.X8;JT`XSR0@4R)%R"/RV``K4!%
M>BG``O7F+X%Q&_*1;_#C>@@#,1+#$5L'<-E1/W*`A0@'A)[F;I8A:3CW1Y4WV
M2)-D2!!D'IS%!G60(.)A!BD6$.P7)B7U,7?$,MID@E)T@%WR%9EHBH=D7(^T=
M/"PW`Q4!8%A'`S:@=0"U8)S52N9&*[8X,C-0:NWR$#&`=`4&`V,P`VB`>HNA_
M>MSV.%^H%=)QA:'U$6=!!UP((->82Z@5B=/$)/0'`E\X)B\R(^&H0[2G1Q$HB
M%[>'9M)R/0+#,_%839,F,&RP08F7(=BQ2;9$,!,A'9$B'9FR$Z>B.F>A>1Y2`
M4Q]#!HV"@89!!IN$`CD``VC@?:_QCQXB))MD*CM0!N#Q2]4C.3G"(S[@2:`4-
M@V&@1RBI`[6!,/)GCB^9'$:8,^SW?H&A`RK)DF/0=,AD'D,AD\3F`S6)3)$R.
M&UM0&UW@`LJ77O2X&0H)$Z455[>!4D!#%H*5,U]((844(^07?M]G6C%@?DTIJ
M0RX@$TO59;JR$7G0`E_))#RE`EYT@C91!QN4ED\Y6,\W&X'Q$G&!@K7!`GSI=
M`G``'DJ&;!N1CB4965Q1CG0@@\]7F)YU@,''8O`F+7PFE)1)>R410T\9E;A7`
ME85EEEDI+5NI(-0TEV'I!F-YEF4Y?N-EF!3RE&RY;HX&EW(Y$W09(RI@@G[Y.
M%WJ9`*+I`L/)$!0'F%59=,>9F"_D`F!Q!FTPE?,QG>&T&2,4&,%6(<^IF"ZPB
M,-:IF?;R=%5!(3.2,@*D;IAI0L,A:>89F9YYDU,G)*]A$*HS!_?X!?$HDM+AL
MDT?))8V8!T29(S.YDF-P%B1I'CK1`]0T=`P*!SW@1=\!7#S3--D)'_`4070V^
M.`TT0`'V<$MEG13J!A8J?-DY(VI`$GK@A3+%%X0$)$WQ1SG3-%]U$UYW=$#4`
M$#T`E'M'+(CE=5=72@XAFBV#!CU:,BVI/X@U((:#6SO3,_JIH#PS:P>15#DQ[
MHCLP/T)"DNY)>8$4@%7E,\"48J$T9?C2*&)U&PD1'(-E7''AH@"YG_'8<@[7.
M>6QZ?1MA.#V``RU`2/HH;R*J+7AT=S05(BP`GRV$'5]P++1R3FR1GW3J/U^`]
M`]I"7'*::@\9(B_!6>(HHV8X'`Z8/VBZ6*HR-[?Q0%F3/TXW/5<#@RXX6"J*!
M1]CS8.@H4_J95_Q)J36`G[@ZJ5%1J><C(!)5E'R9@CP(@U::`'A`.`,".+=A?
M!F\R<^B(-Q+#,P1S3\.1E%^%A69$&YQFG:L9JT[G)7<0(_&4'GD5)#/2K!;EX
M$-!:$=(:7=EJBC'"0+F'3),G=&BPKJ0DJ;I:IS?P,:+QJ,YYFZDI35!AA$-R^
MK@NX66[@+Q22E5PAG\*Q'LLZ.!N$)T^Z)5%ZG@DJ%55:JI1F6F-5$6UZIE9B,
M7&&0J;GJ!KL:K`G43E(#`BQ2!M@H/::X'6UPD*>*=*E:<U[U=*S%L`LXJRQ3[
MJYIQJW,:L)3*3GSA7%>%']A3+]*E(F\&L#!;IZ4"'[JB-ZQ#M`W!'D-CH&D@_
M6A2RL\,!=-,S.9?:CYF::YQZ$)ZZ+PJ@M3$K%PU7FT:*K.YUA'3@L++:J1&+>
M.A0;J@M[A!F;8H43KD'XL4TQI2)[M&EJLFR:&2H[%"SKLL`J%W/R<HQVLSFKN
MK;WDJTV[M4_[,5C*`I9Z:0[!/$'J$$.:``Y3%(Y[B5`1<)WXB:0;="MFL8?D'
M))AJJ*U34X2JBGITF4O1?NTUB+SENR!@!H/3!F8CM"2K!F$0J;_JM,&*BX=&.
MN!+[AC`W-="E%7"`M9]FNA[2N5]PC/5Y,J>BOC`Z2?Z9D@$J!P-:H$:),)*[7
MH`;CH+IG,A$ZH716H:^)HB2Y&2@``RD08#F*JA6AJEHSM*[J<[#*'].D62%JT
M:58I(@DEFQVL,B!\FA]<1K-Q`VK!HIDZO^1CIW!6J%J&=S65J)NY&8N*:HZJ4
M%E&QPC,Q27*"6!]\N5-UK@;W56I0N*K#PA'S!2`<$A"2Q#W<PL=3GRSCQ*1Q)
M3K2*&4L+Q83DPESLPUVK`%N*(6";-],SME!5E+6!MKW+MCSCM@<A.DW$CQM$*
MO)LJ!^";2X()6SS<Q30@OU&\Q(MW:;?EMZVU6EVIKQ6<N*0:=RF,!RWZQ2WL#
MO3OP1WP1%>9Q%3'Q7%6#:$5ZFWGLCB"#)4<W>G0#J#W6JCPCO8'"'E)7EE@RJ
MNW0<MS(\MY*\Q.Y[$-UXGV+L,/$#59+EL$1<-EQJ![9#,(A[/VG`5WW7&V*PC
M-023/R0E:7.P8]6WR)*#-U&&G0D<`BD`?P[+/X5T064%`E0P'%>55=77+';L_
M*SWRS<=AS2-7,N/\RYNA*SV7N6);63MI&%$&=).AH^5\SO0E%F1@S2C`SC%\L
MJ'(@5/`L7#]#S_ZSKTR;SPNXSVRLMC^Z(M;<MFSP/?_%5?(A'REVT&(\TB#`S
M!R```R,MFSO0`I"P`-;,TBK-TO(!`]8<`RD-`CHM'R!,!G?@A8SJJ$S,+T$-)
M!T/MS"[LHHGG+S><(3FL`$_=J,[\,>[ZK<;JE&4T('#,K(23U3*T:>_+RR'M.
M'"-=TM8L'S7=TO`!TS)]TBN]TS;-TSDMUR.-TP<!U`PQ%E_@,%0M!V)0U'D=+
MU%C8UW;SUX$M`P/9U`DP%WSMUU'MV'@!V57]$K7;$)9M-[;[$L[J$%U=NUWM\
MK6"-*9BMR_89O[TLTF<='6EMUS[=UC$]TSO=TW0-USJ]UC=MU%Z()#BLU#]]B
MU+P-U4JMV`=Q(8S=0L&-V`:!W$/1VX#],9>=45[]KBPPVEOMV=)]U:,MUJ8--
MOS@7%69-TJP-UVH=UZ\MQFXMV[B]TG6]WK^]UWA!U.]=V$1-W$S])DY-W\Z\I
MW/K]W)E=9]+=V>#ZWYM]I3.SW:6=`+N,VF6-TFA-WJY=VR\=VW!-T^8MX3X]3
MVVP]V-@D!X@MV$41U)GQX?9MW/C=V",>V2E>V09N0%SMN/?:0-B1K]-A'\SL0
MT3/RU9/BE-RMX*?]W:HMWB9]2>4]URZ=WA6NX>=]2;=]X>\]XI0-V""NUU!^A
MV/6]V"?^!54NW("]W%N.V-"MV0GNK2]^(`LDX_4HF36^S"1)M).3XR*"X-*]0
MX$`>WAPQWD0>X4=.X9=DX4;>WCQ]U[KMKA_^WH1^Y<4-(EE^Z/LMU8SNWRW^9
MK9-CYOCJKC2NS#?^QA_]$MJ]XV&=X'1^*E]`!46`!520`%Y:S<KDI08!&@A"Y
M3$E4+D1%1@`E)24`DP```%405)W`XL<````,<LJ,H9-@#ATY=<8T4,"FC!F"_
M9.XD^+&0SALX"2).7"@GS1DT$"525"#F3<B-"@(.3%#&#9DY"Q>*24.G31B,\
M!A$J)/FFCLLY&<4D0#$GC9XR(%3220&"3!TX*'ZDD)F'3AF@&D?"<7,P(QF4(
M,VO>9/DSIH(Y9<Z\,6.FX,&$"]>:P2IR(=HS;3+6/9M6+MF7"P$:"$),250N*
M1$]#`"4E)25)!@``=A!3N;$[!@X```Q"V*2APP+$F#=P\LA)<P8-'1`Q<N#`W
M45!*G3ESRK!A`\*)QCEOW#10,+)*1A`#=X"`$P8CRH<A58JI\Y!,R!,/VX19.
M4P9$&#=Y0+0)62;H&S-F0!Q]Z6+DR(`#4<[Q"4+.&YIIW/2D\\8@PJ!AJI89`
M0^?G&38]EXH9.-6,U39*M8)@\V9,&#II0H+@.O+G&SIHRLAQ`0($E<!QV01E"
M8[9.F#,]U[HAD_6,5,-UY(CI.J0@FC=WRM@17+#)E!9#E-9I^)"O@CMOY*PI`
M."?KF)X#3TQE+`>R8LR:.7MMPQ*O&+2$#2,.P^9,[(%HX-YIB=+-'#AIY)0A2
M,U),4"EOQ("`DH:G;I3$T;8IXZ8L7KUJ!=:L6V=]^^W504PY2F>Z]A90R!$&;
M66G<YM-D(Q6!!QR"I<'>;059\08;A,50`PHRI%!0##/$T(*%,8"`@A%EB"&')
M8W($%1$.-:3017))))7'52!,U]Y>7:WA!F@C#:6=3YO1!,)G=X!P7%0("797R
M&5,!QAX(&?4D1!YT]-3$8V'HD549!06QVD4/K1A#07`TI4`,-N#P80XT)#=%H
M&5LA5@8>8:37TT%D<&DD'2Z,49`9L5$U1YUPH%5C&$%Q91!S'!W)IU,*M'`B2
M1I`F<9\<6M&A0V$@:,4&2&X`,08;-.'1)V]K@.K"=G4\E0053A1!Q::<=E0$3
M$U,\X0000S!1!158C#3$&\1=Q.!DF]X``PTTC"D###6,=$01;CBX*20&"($$>
M##&,9$0:-EU[@$4N>?1I2$#(8`,,+\RP[DA3N!%&&FQ<:\`0J((*0A75CB9'<
M;73D41`4?\U!1IT%.9$%1.[>8,-(05!APJP@0'(`"AVV"(*Z:MI00P[=DB2RV
MI57*`8=V>+EAF9,@^"O&'#I`>EA/@&X$6F4&H1&&''1,-0>10X*V%V)V[)S7A
M12T+]O)PDL79TQQRC'$@&2#D.0<=W;&5W!-BV''T'(H5Y.2/.S^=!AY5/@G'>
M&QBEL99\#LY14$B_932:&THE=0<:!:+1UX]IV&E?E60D-[-85_OT8QDM)=J5[
M304E`8(:8'8JFF!&_A68=H5#.E)L,7SALH@[/A1XH64,OET*(+2@E!Q#/WU5Q
MU#W=`5WLG?Z5-^Y6IWQ77FZ8.5(""52<0._#%V\Q'R#`P&G(Q'/:`B0+)`^U*
MU,V#P'R(A<&0?*T0:1]^82%#BL>.<HBN-.FZGZX>>X2S[OJ<HUZ4QFBYP\XR`
M2)D9^!/5O<O*[_3"%<B,S4S1@\3QF(0U!23P`,QS'OF^5YCI5<^!";A>]\3'X
MO>91\'GBDR!$/*<`]*E/,^PSG>#@M[K6Y0]W_*/=U'C'0`&^!V\%+,,!OZ=`%
MY&&P8A#,W@1_6$'J62]J&]S>\SY(/@YRRGLBZ\MD0C<Z%)0./:A3'1GD-\/](
MS<Y`M@,,[JZX%)8%4%XW1*#R%G@U'@91A-`K7A$O2#P-9B^"3V1B^)38/1+*M
M:S(G%(\5V[?"^VS1A7^DFA?[UY/_T?!J-@0>C@RX.34:SX</Q.,0HS?'(V+/S
M>7ST(!%!J$E10DH/@GD#DP*90BR^SY!<1*55F/1(W]W02`/129EXR,8&9E*(S
M(QRE!3V91&!"D9.D-"8)B3('5@Y2A5EDX2%=EY&>U3*2>ED+'72)H[@PR9(]C
M9*`;2QE'Z1D1@W8$Y?B"B<PFAK)\(ML1')QY1?>E3II<M$GN`%,9</9RG,`L#
M9R?1B<0[!E2/(2(G";/B+SK0DY#1A*4+&2J8UB#FC`/$FS9UZ4],*N^-2Q3FX
M.>M84'5V\)AR3.9)20B':K+2=0=)"`R_N)6NF+&&:`1>1\7YP^4=5*1TS&!))
M0YC'4;ISG?`<R<F8I,.7>D6F+*/HO]*2E$7*4%$WA61.0[+3-O84I)M,Z3`)7
M^DDGAA5\"55F%!7P/Z<ZTJK^FTS5<)K12>JPDKST*!`5"E1B&E2$*$4K48<(K
MJ;:6SJURS:HM)1E&-(Q1=V5$3`QOTU5??I2OR!PK2<N*V90>%;#+3-_H7!<H`
MN#92KAB]90YWV--_?K6SY@QJ.@?+3L_N$:F?2]]A1_NZ:VX5;XU]+$RJ*EF:V
M5A:@</R@9H7*6=P:];;)50`>8N-4^I&J-O@K;7$9.</42G*U>&VM7GT:W<R.@
ME+G%+*]MT[I2!0`:"$),250N2``E)24E)0#I````51!0IH%+5P$```QSZ,BIZ
M,X8."#AOTK@QN*>!@@0*#:)A`<+.#H=]+BIP&'!@01!RRGQL^!#B0A!LRIBAD
M0Y'.&S@4Y:0Y@X8E"#%OZ&C,Z)"C0((&Q:2ATR8,'!`D$W0$"E)DT#=UW)"9+
MH]%DT#QTRE!UF,!.0C(@S(21`T(%G(5R=FIT6`9/5CEN*GX].*<,G2]VRL@12
M@R(%13@AZ][-N[<OQ3!2\>KEZQ<$8C)?W.147-BOPS=R*#.FB#GR9,*;0>#IA
M#+KOVHT*O*8!*X;-4!1+/PHE:K3L'#EC*,8..K3H415DM-I4#1:%BH!Y4J;HO
MFT(C&@A"3$E4+D]"2@`E)24`'`D``%408:;."K@,```,@!0`0""&31HZ+H),5
M:4++$@8```@0"4(E"($A3X@4*?!E8D6.5(I@H>(.TP$`2()%%!`@BDD`*$H9R
M*#`@0"%(`.)`%,#@"QPY9>:4H?/%3ADY!0T`Z/E&SA<W;X@:13I):8,O8=R0%
M>1JUZ%$Q7)0B^-+4*])$2A-@U6I6S)ZT7_"4G2KFDU(%/H5*_?I$*<>"![D%,
M`&`"$0&(H@)$`S4$P&!(/!81,#(-&"U.,@`04^$XP`_-+#KCT.Q"M&88IHEE$
M#A!@-#$:J6UT-@)@&RBEK0$4`,`!U`+'GR%*-A(-V*O;P'4#J`"J@6/:PB<;P
M`A<-&0[D`6B?9`#J9(`G$`&H^H(=_.`$H!XXEA+>A(P"(H29@%'@R`;L[!,`[
M\`>*@>,NX=D#C0D@U.<)=@`J90\H$#A61H#0V".-`O(5>`1_N#THD#J@Z!>`,
M3A`)J$H=V.DT``#E@!*!8W9`Z!Y\\M%WQ`O8M?@;-J`(%,`@[5D(!'8\'B8-.
M*`XXEDB`$U98GRC8'8D``,CDZ-@D[2%0'Q+847F8,/TYEDEX\9E@Y1%<8/>E@
M4KIT&4`H+HXI!W9L*B4+D8ZE`F&88Q*"G9U/HB)E`+.T)R,`V`5Z&)/^!9`+B
MF#'61P%VBRJE"2@K062,4HY=&EX@/H0'0!T*:`K`/Z*N"=$HPA4)`"R`2(..Q
M*,(50<`*!:`*0"*E`;!(,ZRZ"JNN11BP0A$"[("I'$XLX@%$B2P+@*VV'H,I6
M1.B<*IRSS4)DQ175`O"%%\H*9P%$`SB[@S9\"*O-`++=ZNP`G8ZJ:AW5#&,K,
MF\]")*VGW48[K:[.!N!LN+J."T"YS)J+[@8K:),M`-MV^RV[^OX++T3_S#O,U
M,/@:"Y$<8=R1P"+8+))K.M;F"\`,V^!KJR(&*]+N(JIZX(BSBI!@A`S`$$(/H
M'0(H(HP-_QAL`\(`V+"#LW(P8,,*SD+CS!P#Y&P$-,H,<@T`XE`#B#^`U!&`S
M$Q_8"Y'+*;-,,T0PL]VNS<[2\L<4NT!D@P`F0$0(#'04<'?>22.MM+-UF+/%J
MT<X._O$'3SO+LPTR`&X/,8``+331!LN-M=8`2#V(-5R_\G7EV96-,@!5+,+.:
MMHO80<`B?ABPB!$(V"JQ%UULO`@1LQ)`!SZV[BXL$0+0T4[P+0Q2S@&2E7!2(
M\$34'JOTP,Y:@,>?KK)(L,,6BVD=GPP2+P)V#+#.$3AUJ\L_NJHZC3*RZ-K,3
M-.KLNH*J@(3S`,$F0]2$S24CP-':-0UD&$(>_YC&$0ZH"&(D<`#](-J\QE&VI
M;3G@`+^`R`YR18<!G.X*!%M`.^C@`5C(8E>T^(<TV+$*6+!"%8MHEPL600=_U
MM&(1R)@'*0;0C4&L`P'16$<0@\@I3]5A`D&D&BQ(H0I8Y`*&PU@%+N91BE6LX
M0PJ+F,80@KB`;=`A"4Z$XBKN(8S!T($`N%@'`+3W#1?"4(8TY,<-<T@*,IH1^
M`8LXQ@J&X0)$'.$?;HPA1&9(!SGB4(>P$`<45W`,),!050-HQB#"<0`Z8``7/
M["N@"5OX0D$"@)`V/"0I3N?)%=1C$.8X0#3,L0A:,*M=L(B%*O"U@F*0X`"JT
MV"!$R@<+)Z@"A,X2(1U(8$(4JI"%GIRC#CT)2F7NL(<_'*(0UY'%+:ZCBW2PT
M`BQV(48[`N",:5SC(KZ13%$R,X[.]"8=\*A'/OKQ'^6DHQ\XL80!$$,`G9&`#
M9KP3@`EHA@$$8`TQBB0``?2%&!3(IV8RT!E_$J,#G4DH,4#0&?\0@P2=T8!F<
M5M`9BA)C!IT1"#%NT)D0:`8(G2F!9I30F7$1`PHMU0P5.G,88ERA,THAAA9BD
M2@PO=.9)A!@#``H:B`(0PPR=X8!FU-"991'##9UY""'F,%0!U$,S>?BI9OJ`I
M4\T$@J::6413-?,(K1*#2JP9@68NP=-.@)48E&*-2U'%FIR>0JN$8$55BTJ,_
M5R15,X%BS4.(L2C6.+474=6,2ECS)&(4HZO$2,9;FV'6K3$6`(3@1E6O2@QQ(
M))88YO@L.SJC5F+`@Z?V"*EF]%%1`!3C,*PQ:2%.4M!7%*`8.@I`@XKA'-8DB
MM!CZ9(U_BE&!SA2I&`QEC4J+`5'64+08)O6M:_/&&J46PP8!#4`Q=F!<UZ*44
M-;L]0F=V"X;N%D.HPG4M4L'KVC1$U+5O>&\QJ*I<U]ZAHZ[EPU^+<8B&NA8GM
M"BU&)<9:#$TDMABP8LUQ[\K>8KABO*ZM18"#D=U":(,`!2W&.BKLCLUJMQ_O\
M-<:3Y`H`8Q27-1HUQ@;&:HSH!D"MQN",=(TA&Q(;@P?O-401]EH`8S`AQ#M%8
M<8G#D%UC/"BM)88#BPD14V.4E:@$,`9:`Z!10V"BJEH8@#'<.N-8%#D915Y&R
M5?MR#`%D]Q@@.'.-`Y#08S`ANX?`0E5Y0(!C<"&C`#C&&3J#@CROH3-Y.X9.W
MA'P,/>#Y&$R6[C$&S)I`>^+,T0!TGB_,FF-<M=$`:`8HCB0`?@S@G(5T)BZ6^
M4`?M#8.1CES;P21)21)B$@":E(7VVN5,4(>2CK@(Q#&T]ZX>#D.5TPPB+:.8-
M:V.L8MA2;$*IL8#J7.:*ET90!2[*MHIO]0\`W0+@(#C1F'MFEQC)93-H)$V,W
M&GR;-M(EQDR1W-.Q/A7/Q.`JB0D!"![?010$#01L!S,8B`0`)S4`!0H"(("B,
M+J(#T@SB]@1PCS(@8`#8B+<"!K"/17`@X=0DWCW(\/"2$8$!-)SX/(:QJW%\%
M018J5(<B".`J'OH0`7[H02Z>M()F%#$\=$A`T2!R!)2OHP,F4$0)9$",^!`=M
MAI.IS,OO4`^?/V#G`#C"<)3^PSO$8Q##0(`BEB$-=4@(ZCM8QQRR,PR4+V(9Z
MT4A'VM,^B'$<8!P9N#E$ZI"`M(^=%%3\(2N@?@1QX./LXV#`RHV@BU'1#^K#9
M\-2+PD2?Q$-(0A22$($*X/@0#>@]C*>\IR`O#,D7J/(`P)/F[R0?*X$^\\-`6
M!2<HH1DD?)NE!3TH%+X=AV\GXMNB^#8IQFP`8M#BV\?XMC(Z`QYB,*,S["&&X
M90,`(&)DHS,/(L8Y.J,38J",-2TB1FI9PR-BX*,S1WIM9ZA4#-P$X$O%*!)KO
MV%2,!K'&3L70*&L"50RELF91_U`$/K\)&@A"5"Y#`"4E)24E)24`Y@$``%40M
MDZ)V:?("```,(]*X&<.F#IDR('B0>3/'!1H?#10$'%CP(`@18MBDH>-01,2(Y
M(PZ:$8C03IJ#;U#@29%@SY<@6$#T`(%GQYDR;@32*2-'3ATX=%#`P!,#1HH=%
M?4"*)`FBS9LZ<\JH9.D2IDR:-G'JY.D3J%`\,V8<3:H@X@L5$4&H`$$'39HY=
M(,:\L1AFSIPZ;<K`#>,&1)$C04#P)2.XZ=.H+M*J>/%109LP`E&DB+@G8H(Y:
M='R.H0-"S,;'<$#,D3.&!8B#F'=8UIE`3!TZ=-ZXF:.ZK(($)E%^+7K4,APYU
M.LV@$(&F#!LV;T3TMGV9M`LQ3]V0:<BFC!G.,W'4;C[F>?3I+H"?08,=A`SMO
MED=WAUY'>L/8H6?"V*[>>WOPT,O'H$'?N9@\.\$U$VH<_1?@53C,EYYS<+B10
MV54$NM#@@S,UL<071D#Q51@P=&B:4;59YA144L6P7`(+@5#9;0F,&!4*8FW7#
MVFNQS7;5%T)@(6.$[+GG0G77W3B$CI:AJ%>!W[WW1GP@?$$$D2SRF&1X:8Q7L
MGI3W46<=9RN8IV"41]KG8WX0AMDC>/"!T.5^,KHHE0PGMJ914":H9YH)!)KV?
MAAQ?V,&3&'&ZB8*)V_4!PAUN50<""J[!)IN`\ITH*)PAWI9;&2D-%6-$?0`:'
M"$)4+D5810`E)24E)0`N%P``51!BINSD`!T```Q-M``(\&`@`!``&`#X]X]6'
M`$``(!T0`:!B``#[(,A1<Q'2OXC>=,4)X"*1!3D!:,%H%F*1"P$`%GE@`<"1Z
MME&&`#`R0`A`(@\0$[G`!."8`44+_SD:-@-8KG]_%N%;A,U$H!XX;M3I<"4*'
M%%@]Y+D:%\&$H@(DOOT["H!'ECH$UB+%DN6+V'%CAIC`4:".-$#-`-W+ELB!O
M'P"#AAT(-([?OVCC?@H"X`$7@!HL?]+1:<`.`,LE''S0928`RP\._ED@-V"1#
M#S4#=@W<L>^.@$7[&&D+-`P&`3D4?@&`$(O`M'5#5JC;\>Y.@D/?F-\9D"Y2$
MS&\#M/V$5/$G)0"A>J[`Y@@8+24LIYUS)&W1.70I'*![\*"I"T<&4/Z"-R"7&
M[Q7/S*/*/S;PL9`->AR(!P#HM`$`%.A<@0!HQ5BP&4OW>8!2:A:8,T!3B\"3Q
MRPL1`<"/``0`0@T`1HB#3PLV-,`='0KDDD&)NI"(3@(QL:.($0+0P@1+M`"QK
M"TP9HL32,+EX@*,5#*;S#RX#/(A.*?_DX@".2#"(S3_KM%.1%54LPLX@['"`E
M"P0`-`,!+II8Z<P"61QC!#D(%&4$.ASH:4Y%=JJS)2Y0^&2$/HD8P8Z=_@``1
MBIW\5"0;*$O-L`TC1L"3B!?NX')1,S-0V>8,B\R3B!/R)&(%/8L8(4\!%!AJ)
M3ZOT%+!EHOC@`A.HN&""`!2-N`KLG1#>$\`@Q!C@Z:@+V$-',+J.*JJ;BY33(
MA1?#&&.`+`-I.TM%@?@`"@!>(%"'`MIR^X^W`X5""P"CL!*3`[H```L@TJ`CN
M"C`Q%4'`"@6,HHI/+@034S/WYBM*,?T:L$(1`NQ@@"T`R.&$3!3_1`J\IL!+!
ML5&H5,0@!P'S$I,'OOA4&0!67($.1%]X(5/(BUC0\0`>;+R#-GPXK,T`-J3\J
M4\@#^##,0@Y07$<UPXRR<2@4C](QR"*C,PT!HYALE&45R91R`"O/')/-`."\N
M\=``[,S'!BMHYT'(+:-S`0`Q`VW9UB(7??0_20-0QS##A#*PQ/+*$89S5+ED]
M<#JF8`T+O.]:&HJ\H[@"@"(6,*R(#?PNXL"['CCB@<F*D&"$#,`00@\=`B@B0
MC`VJC6L#SI;;L(,'C\O!@`TKX`X`-,[,,4#I1D"CS"#7`"`.-8#X`T@=`3CQY
M0=.63P[OXZ-$OHWG[V*N.>>4B6XR+7],(1L`-@A@PK>$P$!'`>F;P.WL**-_,
MNV5UF+,%_;7?GOL'O/,=ZFP@`_D!P![$``3K7`<["XR+?,9#WN^<,0AK*.\5D
MS5-@`(PPO720P!]E8D?+%F$'`BS"#P9H%0)&,2YT%(!N7N@"X!9!A'\1@`[XK
MR%Y,B.`P(@B`#NT8!<46T8)!E.,`BR!`"0X`KWK1<(4I6T015G@T*?ZK`!)[=
M5QU6(46'04QB2OO$('SP+@3880#K.`)WT*&#`>CB(]P#P#24P:U%-&,:ZK#CL
M"N@%`$"$XP$R&9=+CM:$T&$CB;,+FAR180AY_&,:1VBD(HCQR`'T`W9]J\,XX
MIM<R!QS@%]PQP`Y<4"\Z4(=?5Y#)NQ;0#CK@3A9VI,4_I,&.5<""%:I8A`W&B
MY8)%T,$?K5@$,N9!B@%T8Q#K0$`TUK',989K7.6JPP26*3Q8D$(5L,A%+H>Q'
M"ES,HQ2K6(<4%C&-(2QS`=N@0Q*RN<U5W$,8%Z$#`7"Q#@!P\1NWS.4N`=!+)
M.O`CF,,DQ3OCB8!%'&,%PW`!(H[PCWSJDI>^_*<PB0D+<6QS!<=`0BX_5[9F?
M#"(<!Z`#!G#QD6D@`Q:RL"4N'\I/7P)SHJ1(ASAB8H-ZK:`>@S#'`:)ACD70I
M`AD^L8$Q[!4+583"IL4@P0%4,<IZG1$63E!%*CVPRE:2`*6QG&4M=3E4@!*34
MI?U\:4"-B4QE,O.LY#3G.M!)!RO`8A?M'"@`Y$E/>R[B&UP%@%=)`=:([E6N`
M="CH01.ZT'_D=:]]]>=><;&$+2YB&!C5:!P'X%&0NI*DBT0I%X6J5Y@F5JS$=
MQ$4@CL%%JI;MF(IIYEE#<32$=C,0QEA%*%+F6EPT88M8B"Q320F`IQI!%;B8*
MWBIBYA**H6,`8',$-KC#W!(U][G.C2YTIRO=ZE+WNM;-+G:WJ]WN<O>[W@TO6
M>,<KWO*2][SF32]ZUZO>]K+WO>Z-+WSGF]U%=$"URY2B`.Y1!@0,`!O$Z(,"L
M!K"/17``O^N@X7[)X-]#$H$!OASP/(9AQW%\01:S5(<B")`OLB;3#SW(19Y6I
MT(QGD@L!=$A`[`!P!`ROHP-F*8$,B"$"8<PXEP0PPC2`4=8[U,/%#UCQ$9*HL
M8QXG\P[Q2`P"%+$,::C#'M)8\0[6,8<-#@/#BUA&--*QY2T/8AP'&$<&3!S-K
M!&RYRJ3X9C)9(60797D<#-BP$>KU2'6L>!CO`(`\`&`"&12@QB:`00&&T0\`!
M%"``]H`&E!4@#"B;``2#CD``+(!H:/3YS\((]*!'$(`4(%H:C'8TI)D2@!P$7
M`-`(&'00`I"$2J-ZT%,(0!9.G6E!#R.$8Q1#`$!0AP(L:QT3:)4)/:!KR"3BS
M$/Q9BZZ;(L,0"GL1U`B$.F8CC#D$C!$`6$<"C(((`.2)I/]HMIE"@>U%6($`9
M`Z@V`18@C3Q(0)B!,%@`Y*"`'3!C#@8XA`&PK6UN>_LS#!$W._Y10G2DXA]9"
M$#C!"8".7B!<AKF@"7=T088`:#L7*\`1=RP.@"(=J4TA2,<^[F$4I%1D&;<>+
MMZ[YINL%`(,.$"9V`"#SCTOP9QU2L@`O`J`:7_#<`L#@><'[<(^$#Z-ESK9#D
M01^\`V/400>#X`$`^""!0?3,;S0X!@&Z1@0$)((("E@'"A;1LP'PX`@IX$$J.
MN_YU!4!!$37$!(2&@,1R[.`8-`H$$P3`)G"O0P#,CMG1K^!L/R!@$,?PAR[%&
M@,8**+CI=UC`#OQQ!\?[\.YW<(`O(^8/.YSC\<>P`S@648`!'&,'/JS#N[EP4
MFP,$H`"+8/TBCB"`1$!L'2GTH>UO@VYCW+T.FC^T"2'V]=OX8QT#2`0?``\,:
M"(G"'UE81`4&<(T="*,.&5C$/9"_>=#785;$]Z'+7@']1-B`\5T0/-+-Q`0FC
M+*)<B[C!(HR1*'_<@_9`F*L)C?'B]Q?T#PHP?T[@<G30`'=U!(#P`PI0!_'PH
M#T9P?.S0*HIG+3$C##!!)F9"0@9@!>A0#-!'@+[&$.MP!8/@!PP0`'7@`5$'4
M`'Z0?580@$:``%(`!1PX"?^0"5N0!>.Q`<IP*@JP*0@0"&0@`%_@#UK'=5X'\
M=@3'``2G``2W9'$'(9U3#H.@#_]P+CW`$+WF=\QW+4>':^Q@0G:P@>@P!1_XJ
M<@?P1H8E#.M@`[`0`%#0%%#P=E&(#H&`&,3@=5;@#XG"#ROH!Q,P@QPX`3>8:
M.,J`!5J`4!NP3"FTAZW"#]7BA>L7@4K7+'P0`8/@#UAP!R-@?@(P/(2`;IA@=
M">O0`/?@#9DH`G<``4;QB0PQ?Z/0;7Y7`+YP!=F&#>GG!18(`"%D&43P?@3`Z
M$EPC!P00#>(0#=`@<+0@!#\2@%Y@0DY04%9@`"PA!P*P#@4`(=QQ@S(TB6@BH
M`BGD!P[@`4CD!0PP"/M``G>`!8"P#P(@!U/0*A"P"$X@`0N0#'T0`8#@!PHPU
M5PM@#`70`D<P&/>`#8.0#0#0"';@#>/P`)&P`M)P#_,0"1*)"!1@!..0`.L0/
M#Q!9D1?I<G50#XW@!-XP&`/@#/S@!!O&`@HP!P1``#J`?`(0@ZH@#N_P.*J`!
M1$:@>12HBPJ!:X:W@"ED!`20"=@H;#,@#3-(<`;PA&_X%6$`(5X0;BDW<&.X!
M<$_8A(\#E1!"!%090DR)E4K7A"6H``OH:Q?Q=W(("U&)#A]`E=X8AB=T>%H7A
M".?@#_\0"HS7AXEC&TET=W(P=B9T#8,@#`1@?9&G8._'#XE`>^N@`&F71`-@^
M#"&2"#SPB*/`>.M``CMP?@,06(E@!Y#(.NM`#"X##/N0!?67A5=(`$WQF"3$+
MAY<)D#`1B8+7BZ'@`%"`"]``APL7+`8`(2I0`-V8=`CP#PQP#S[$'7-%'>^B'
MG`(`$W5`'0.C=S!Q+%='!R>P@C#'@?20F@38`.DP"0!G6%3@,,*0"`1@!4R)Z
M#H\0$^60#H>`&#Z`!E52!S;`FP'0='7P`G!'`'*'#O/0#UD`D@4@A`+P#_U@3
M&0(`!87@0^\3+6K9?'+(@4UP&_$9"?^PCP:P@!X`G?E7!Q>P++M)!@-`AP`*S
M(?+0&N70`Q<AHB0*G"@:H-O`HBXZ5PI@G7TG@@7P(P;P+I)HG/]``'U``S[ZM
M#V`7>PI06!RJ`'1@`!S:`'50`="9)W3@`!SH`>#Y<B$()A#@H^^B;>PYAN@0`
M#A/HA;W8FU"P<.B`"H9E+8-7>`5E!PI@!/<`,5:*`4Y`!T202N;H@$QX`^@@"
M"&_*FG00`^N`#GO*`O]0`'W@>']J!'%V`/]0!`'8!4O*4&'J`'[*A)+Z#X**N
M!Q/(FG40#?.7B\)@``MA`L<5$0;@`H]@``?P`"[`"!Z0``_`#_C1$[X`$2!RM
M2-`@3";`"HO@#Y-@`H@0`$-P"-F`#A4``'=P`'+P`^BP)7>0#SP``O+$`PE0A
M!^R`.HE*@`<@!*J@`,``/4-@"."`.ODP#A@PK$G``B)`!Q%``"+``UQ0!PE@H
M`H#``R(PG?#:+,.0#MT0#XQ0#+IT&(-@#`*0"Q<!"#Z0$P,@!P^`'Q!1K+'P(
M!W?A#8`0#W\P!#^Q($.P",&0;@.P#8<&`"6`E_^U"/RP`OBP`N-P"-U@)HE@,
M`@G""-!0'HF@L,4@`*(#$4E`3*BC"HZP#8>@#+YPA^/@`#V+&#_+"N:J"N"@U
M#W0`#TV1*/PD.KCJ`O]@`K/J.8<1!>C0#?P0??A`@"3@`>08M``P`_;`#\3T5
M`5+1E#8P&>CP"WY(#+>!#0<P"@8"DM21`O'0%$_Q#XGP`XDA`&*Q%WU!#XEPM
M`'&:@>)(0DO'`$UG2NFP"8AA@@+@!]0A"0`0"`SQ!V>4#HE`G_;I-P^@G_R)R
M`$9AGVE)`6-D!O?9`+@`3_QI`$9ANQ?!G0Y`HG)(@VZI#]4"G5M'!Y0:6.A`W
M`_F0!0@Z#_]P##S4-0#Y0E^7A`I0@@SP0S^P``1W=P:P<TI0=?SH-QC@,OJ0:
MFHFB`.)JG5N'C7Z7?4;P@V"7O<IG`-R+@@>Z=WD2>-@RB8'@(S$AJ4#0`S!AG
M;4V1#M@0$^4"&?=P"-H`$PHD`4O8A$_8@7AH`.F0"P7\@X:`!X9E@HU@"W[PV
M#^!+!V7P!(O@"2+\#R'\#XIP`(A@"'>PH?BP@`1@#`30`$:@"#;\#XB08XU@<
M"">\"-:P`M`0"/H`$7SP#$5\Q$D,#8E@"7KP#U(0Q?^PIDJ'#FBPP8E@"'SP)
M#SM@"%=,!Z;@<G)PF9**40,@QO^P`F8,)D*@Q4BLQ%5\Q>QF!R^0Q4:\Q1E,L
M$\AB`&$\QF5\QA;@<M;F=_,HJ6\\QG)\Q=PGJ;:)+<[VC!`LP3"!8@\`"PTZC
MO&QJ"_E0+44"C/0HC=08`A0+!<`(&8'P"!,\'%BP#@0`(3V0#]UX!;\`$[X`G
M3^L``=!9)>_#@3)0=$^PL`X`OMYZFQEX;KE```^P"\+##XI@#/ER#:I0S2)0=
M#-CL.M><S<*PS=C<!;LHP.S0;78B+P!@#$;P"E!@`/S0"'X`"XG@"R*\"/9L*
M6'0JM2]'`3Q0`G0P`8A0`$?@#T[P"G_P#NA0$>D@`02P#N>0#C\3FH3`"O],'
M!^50SR*\`LEP*H*`"$X`""`]6G#,$,?PQR(8`*R`"8L`#9,`".L``NT(!G-0\
M!(H@1JTQ##U@`;U%'8;0&M@`&5Y["ALP`6(P`4PP`:`P`5<P`<0P`<TP`0-`*
M`0M``8HP`3=``1-``1=``1M``85``3)0`=-``?)``6U@`9B@UFPM!Q,`B.G`8
M!`,`"(5V!_@`""%M<:!`U]#:#G@-"-=8"7Q]!^*PCX&P`G2@"(A@!8&P#H4P5
MV/QJ!H#P#>F0!QM:UQKPUR"0#FUPV=#J`_9@!(!=!Q_PUPA0"Q9W`>F`#[=A$
M>*0W"#$H`'0M`'.0`(7\#[5`'4!PV010!^$0QB?L#\6P#O!`UP0P!]10"P]]W
M#I+``C"`";-=>;4@`(<`QR['!]2@"_UX#^(0`'"\#LE@W'70"M5]PM?-"]H-P
M`-SMW2>\#K'PUQ!0"P6P#JD`")+]#O*]#J%P"PCPF+<0=@IP"Q`P"^D@`-K`D
MSG=H#(:P!Q^!"%8\P@55`!"Y#A'PWPK.X`'@X%<\EZ27"4=P!*&I`*$-"!`@5
M3]+WX3TK@U"P`,(@3W]-`/)\"%>@",<@=T#,X%`P!>@P"/=@`4AD">8M#7]`Q
M'=\``.DP;1J.N'0JSX;@?Z`Z!"!;+B.NK4%V`U`.A#Z.#L#0#["@`ZJ0Y;C0(
M#P"YS@O^$?;=CB-I""N0#X?P#(L`Y&0<#7]P&UOF"#Y!ITG.X04`VP@@`#X>#
MX^^2"`7@L$:>"G>^I`\^EU->!Q#6`WPN`.0(OH])#(X>@P3`","P`,?0:^3X.
M"VPP``MMY)JPGXYPPB6T"*4.)FK`'2&>YZZ=ZO?8!_VAJEW1"%YP"%,@!<LB7
M`J(-(:N0#WR.`'_N!X<PXBCF>)8PQNSF!PT0ZNF@!`&P`M$`NJHB"#\2".9*-
M!Q+`KSW0`C!WS&X@",=B!9.!K`7@["00`-J'S_?L"6,,"W\FVCS0%S*@"*9P[
MQ8#`#V]0!PU0@I/Q!R-@)^*>;1R0[WCP/OF.!:KWUT"`3`(P".$N`'U0``)?C
M$0/@!((PX@)0!P^@;;```L[N#0"P!#N0#7\P#R,.!-H."S#@[,MP.7/L[`9C2
M;H*P["VP`LK0-F9!`#S@[0B0K=NZ`N<RK,[^"0"0!$N0M..@`"SO[-8A#O:09
MM"N0#>.P[:PPT`5]T']@`,X^G^+@#NAD@EGV\:&^#JNN//:0#D;`F'2JZ*+-+
M:P%8Z7U.CKA'Z7P^3X6B`NT\`$;`"B8@Z.EP`9!H!X3`[@U5`F6_`MS!SR&YB
MC^[<!UQ?$6+''3K)"NN0!-QQ!8?[.&)Q#]&0!%^`!:6W$."`]0;]"B@D^E7R0
M#^`P!5$@!080++``L[(/!5=PP5;@`.SLS@'@!ZP@S[!P`%J0!5N@^J1?R<*0.
M)Y!@`%10!W(@!F_0`D,``BT``D/P!G"0!W*0!F>`!G0``B@P!BD``C&0`UD!A
M`D+P!G+`!F'@!F0``DG@!G3`!BX``$Y0!VS`!B``!V^0!O)?!G(``F$P!W/`/
M_6[0!F4@_PV@`$20!G:0!F10!B!0!G(@!^K?``H0!&+@!NK?!F$`$&Q`P)'S`
MYHR<,&U`T"DCITT:-V'HI'GCIH$"`)`PP""`D0&:,FS8O,&XXAL`;"=3HD1IG
M#D`!`(L(&)D&[&5,(]&`'8`ITQ"X:,@"`%"5`(`)&05$"#,!H\`1`P#L03,!A
MPNE%J?:D*5A:]<B`J-!4+0![-.G2ID<X4G6*(*I6KD[5(G`*5:F)N4_)XFTK#
MU2Y>M6CKGG4*H/#`AW3,@-`!PHS(B`_/"'R#N/&;AA'G@'#SA@X(-@_7E"%CF
M<<Z8,&X4,W;\!K(;R7`HN_%LYG*;S)L[?PX]VB*`,`F``R^<0`!&!,*$`E`@>
M0"BD`]"4"YB.\8`WY87_56>''8#VY_JZ?S^`P'AA[]4MF,]>G<1Z],]EO!\/@
M9'YU)_:?<\E_0`U_//P9PA\E_(G"'RS\^<(?,\V!(("#(!``X3^0>'#>!-,1+
M4(`!"'1(004%3/"/!06H1V$#!11`(00/_/./`/^TZ.(_(KXH0`$/P.BBB)`\%
M(.)Y7@P09`,8&0`!"F[4$5(*`,`0@PPST%"##3?@D$,00@Q!1!%&`##!!`%,O
M0,&77QHWP0`$3#`7)`E,`(D""3A@@0,'M$EF!6XFP(";"CP0IP-TVFG`!!$H;
MT,"7$$RPP)=[/@>`%@E`ZD,"1U!J*1H(0E0N3T)*`"4E)24E`'$!``!5$%RF5
MQ/E[`0``#(`,`"`@AHZ+,0\0=0#`,`.5(3AL@!#R1@Z;,&[(@*!21XZ8-R"&5
M@(CA`@:(?I9>,"SPA4H1+%0(#'E"I`A+(D&H!"&`4R>!+T*F3!D0=(H!(D>D@
M/*D"Y6C2I5#F83H``,4F``(&!,`T%0`2@00*!$C0%0E#`P<"+-`D$,$_`?\&<
M5&&T`<"!+W#DI'%#QPP`EF+8I*$#`,&7BE_LE/$(8!\D``P8!F#9)LQ>A@"T[
M@%*`E2&:,FS8O`$`!-0G``$86JFRB-T@=AQP00#0#`(NAE#0,<QRS`@Y!`!Z6
MH^,0W(@YAKW5.0"`"PJ`1$;T06?7VQ\`4+WY,=QUW=&P&=L8&8&7R(L[7*F;A
MS<`U@/:,1?,2.9&7R`J]14;D%:#PW(@]_/04L!QT^.`B@'NW`0!%(_DMZ%MNC
M#`U"C`'HN;>`/70$8R""[=6V2#E=>#&,()Q4```A?I@@@`#$R&'"``,0$H$)*
1`01`3`,4!"``!XH<"``=&@"VN
``
end