C++ PATCH for name-lookup

Mark Mitchell mark@markmitchell.com
Sun Dec 13 16:00:00 GMT 1998


Historically, we've done something rather peculiar in terms of
name-lookup in g++.  In particular, bindings for names bound in
classes and names bound in functions were kept on separate binding
stacks, making name lookup difficult, and sometimes impossible, to get
right.  This patch fixes that, as well as a couple of other problems
encountered along the way.

Here are some of the things fixed:

  int f(int i)
  {
    struct C {
      int i;
      C () : i(1) {}
      int f() {    
        struct D {
          int i;
  	  D () : i(2) {}
          int g() { return i; }
        } d;
  
        return d.g();
      }
    } c;
  
    return c.f();
  }
  
  
  int main()
  {
    if (f(0) != 2)
      return 1;
  }

Here, we didn't find f::C::D::i when processing f::C::D::g.

  struct T { ~T() {}; };

  int g ()
  {
   foo:
    T t;
    int f(int);
   bar:
    T t2;
    int f(double);
    return f(3);
  }


  int f(int) { return 0; }
  int f(double) { return 1; }

  int main() { return g(); }

Here, we called `f(double)' instead of `f(int)'.  Brownie points if
you see right away why this happenned. :-)

  int main()
  {
    for (int i, j, k; k; ) {
      i = 3;
      j = 2;
      k = 0;
    }
  }

On this code, we generated debugging information for `i', but not `j'
or `k'.  Double brownie points if you see right away what caused this!
To continue my rant against extensions, I'll give a hint: the implicit
ARM-style promotion of variables out of for-scopes.

  union Un {int i;};
  
  template<class T1, class T2> struct St1 {};
  template<class T> struct St1<Un,T> {};
  
  template<class T> struct St2 {};
  template<> struct St2<Un> {};
  
  template<class T1, class T2> struct St3 {};
  template<> struct St3<Un,int> {};
  
  void f() {
    St1<int,int> s1;
    St2<int>     s2;
    St3<int,int> s3;
  }

Here we refused to compile this legal source file.

  int i = 0;
  
  template <class T>
  class F 
  {
  public:
    F() {}
    
    template <class T2> F(F<T2>) 
      {
        i = 1;
      }      
  };
  
  
  F<int>
  foo()
  {
    F<int> f1;
    F<int> f2(f1);
    return f1;
  }
  
  int
  main()
  {
    return i;
  }

And here we used the member template instead of the copy constructor.

  int i;
  int j;
  
  struct S {
    int operator()(int)
      {
        i = 1;
      }
  
    typedef int I;
  
    void f() {
      for (S I; false; )
        ;
      int k = I(3);
    }
  };
  
  typedef int J;
  
  struct T {
    int operator()(int)
      {
        j = 1;
      }
  
    void f() {
      for (T J; false; )
        ;
      int k = J(3);
    }
  };
  
  int main()
  {
    S s;
    s.f();
    return 2 * i   j;
  }

Finally, here, the for-scope extension struck again, and tricked us
into calling the overloaded operator() instead of treating `I' and `J'
as type-names.

-- 
Mark Mitchell 			mark@markmitchell.com
Mark Mitchell Consulting	http://www.markmitchell.com

1998-12-13  Mark Mitchell  <mark@markmitchell.com>

	* cp-tree.def (CPLUS_BINDING): Update documentation.
	* cp-tree.h (LOCAL_BINDING_P): New macro.
	(lang_identifier): Rename local_value to bindings.
	(tree_binding): Make `scope' of type `void*', not `tree'.
	(BINDING_SCOPE): Update documentation.
	(IDENTIFIER_LOCAL_VALUE): Remove.
	(IDENTIFIER_CLASS_VALUE): Document.
	(IDENTIFIER_BINDING): New macro.
	(IDENTIFIER_VALUE): Likewise.
	(TIME_IDENTIFIER_TIME): Likewise.
	(TIME_IDENTIFIER_FILEINFO): Likewise.
	(IMPLICIT_TYPENAME_P): Likewise.
	(set_identifier_local_value): Remove.
	(push_local_binding): New function.
	(push_class_binding): Likewise.
	* class.c (pushclass): Update comments; use push_class_binding.
	* decl.c (set_identifier_local_value_with_scope): Remove.
	(set_identifier_local_value): Likewise.
	(push_binding): New function.
	(pop_binding): Likewise.
	(binding_level): Update documentation.  Remove shadowed.
	(BINDING_LEVEL): New macro.
	(free_binding_nodes): New variable.
	(poplevel): Adjust for new name-lookup scheme.  Don't mess up
	BLOCK_VARs when doing for-scope extension.  Remove effectively
	dead code.
	(pushlevel_class): Tweak formatting.
	(poplevel_class): Adjust for new name-lookup scheme.
	(print_binding_level): Likewise.
	(store_bindings): Likewise.
	(pushdecl): Likewise.
	(pushdecl_class_level): Likewise.
	(push_class_level_binding): Likewise.
	(push_overloaded_decl): Update comments.  Adjust for new
	name-lookup scheme.
	(lookup_name_real): Likewise.
	(lookup_name_current_level): Likewise.
	(cp_finish_decl): Likewise.
	(require_complete_types_for_parms): Likewise.  Remove misleading
	#if 0'd code. 
	(grok_parms): Likewise.  Don't call
	require_complete_types_for_parms here.
	(grok_ctor_properties): Don't treat templates as copy
	constructors. 
	(grop_op_properties): Or as assignment operators.
	(start_function): Document.  Adjust for new name-lookup scheme.
	(finish_function): Likewise.
	* decl2.c (do_local_using_decl): Use push_local_binding.
	* lex.c (begin_definition_of_inclass_inline): New function, split
	out from ...
	(do_pending_inlines): Here, and ...
	(process_next_inline): Here.
	(get_time_identifier): Use TIME_IDENTIFIER_* macros.
	(init_filename_times): Likewise.
	(extract_interface_info): Likewise.
	(ste_typedecl_interface_info): Likewise.
	(check_newline): Likewise.
	(dump_time_statistics): Likewise.
	(handle_cp_pragma): Likewise.
	(do_identifier): Adjust for new name-lookup scheme.
	* parse.y (function_try_block): Return ctor_initializer_opt value.
	(fndef): Use it.
	(fn.defpen): Pass appropriate values to start_function.
	(pending_inline): Use functor_try_block value, and pass
	appropriate values to finish_function.
	* pt.c (is_member_template): Update documentation; remove handling
	of FUNCTION_DECLs.  As per name, this function should deal only in
	TEMPLATE_DECLs. 
	(decl_template_parm_p): Change name of olddecl parameter to decl.
	(check_template_shadow): Adjust for new name-lookup scheme.
	(lookup_template_class): Likewise.
	(tsubst_decl): Tweak so as not to confuse member templates with
	copy constructors and assignment operators.
	(unify): Handle UNION_TYPEs.
	* ptree.c (print_lang_identifier): Adjust for new name-lookup scheme.
	(lang_print_xnode): Adjust for new name-lookup scheme.
	* typeck.c (mark_addressable): Likewise.
	(c_expand_return): Likewise.
	
begin 600 diffs.gz
M'XL("(1"=#8``V1I9F9S`.0\:U/;2+:?R:]H,E4;F\B`S!MN9LL!)^,:`A0V
M\ZB]M[3":MM:9,DER1!/EO^^Y]'=:LDR(3.SF=F]KJD)R-VG3Y_W2_3B0'X\
M%L/9UG#6RE,I-P,Y>O'FMW]>7)_VQ2B,Y+'8DN-AMC7TTSR)MX;W&3[-^.%X
M.-PJG^W<OTAEGH;R/HS'(H5_LC")A;O9;K\(PM%(M(:B-1.M%)\(&^F-C0W[
M]S7WZ.APR]W>:N^+[?;Q]L'QSLX:@6FU6C4+VUONCFB[QVU8VT9@]D><==\-
MKKO=T\NSKFC`+YV;\X'7N7[OB)<`PI]'N>>GXY<.8>$>'#KNX;[`G2\$?O*)
M%+F<SB(_EV+J+\2M%'XL>F?=BT'O7:][[5T`Y$TA-K9@0^FP0??#U7EGT/5Z
M9U[WIZMK.%%#\L+`DQ]GZ4M'O)*O'-%NPN87ZV)K0W1BX6=9,@S]',EW*_,'
M*6,1^U.9S?PAGAX(&>=AOM@45WX*SW.99L)/)2(+0."3#9,9KT3\&W$2M_+%
M3#;%O1_-Y28O0DR]P<]771'&03@$M#*^+JP4M\D<=R?T!`_?K+GAZ=7Y3=][
MV[LXZUT@06\14#S&6WTTMQ)T*Q&%6=Z*PCN`E@12C))4#"=^&*.P)/<RC1(?
M]XHA8!T&B,RFC6$FB/N:0?!SZ\_'H,_PAMG"Q%_)FV?RA:'\>9C36S)'DS_,
M&$U6FB+WX*AJB^"1*%"V3='$V)?M(^'N'[M'QWN':PS$MD23&CNTMV2'WB89
M(.Z(#QTP:J[KMMR=[0-'W/0[+)NX9L=U=I3QP0/PUP-+U.%S?GGY_<T52:OW
M_OSR;>=<-,+8?MS<-(N)0Q?=]R#B9U[O8D!+X=_N>]"*T_[`6FJIRX?.]??=
M,]&89S(0MPN123\=3D2:S/,PEAEL>FV0.>V<:PGSK@A\2>J:#-\]+AWP0^]Z
M<`,;KRQ,>]Y5E\$8I7QWWGEOK="/KSK7'_K>N\MKN-%Y[Z*[^:LH?=1VC@ZU
MF<_R=#[,1>3'8]![U-]1*%/XXA,=K[Y&7EM?BW`<)ZD\(47$[PH3[2E5RQP1
M)4,_\DBS3P@8K1Q&8$%6/"TL4#Q*3FP$%'YML?'QA.3C:,=QM[>U@/S;;F%]
M63SZ/>]292`:.O#->NTL3Z=RZ@VSG'UT^\!Q=]W"1].!L.)6IGC&XX:UP\M/
MC.%^!U;-UU<P=MLO+#>X#3;>CH#C4=BK5OMA(I4IUV#`]@42;IO*8%.<SM,4
M($0+X4</_B(3LR2,\PS=J,\`"C?.N\B'L%BNBV_X5*$UJG]Z>=5MH/MJXMY&
MHV$S46&PT:0%K6\)S29;],$$\`H9?>N@.J]^E619>!M)=C_9,6O<O9^&/CQU
MC/D'8S":QT,$XQ37<(SO=8!V\ZF$@Y)4>]OJA7[HG-\\_T*$D+I0;\1L@CN9
M._@D*("!=5GRD0JJ(^8Q88N(-5?AA!ZL0*GP:OS,VF!9,+:\I>O\[XL2>_5E
M!'WMB'&4W((A,-_;@/O=@?<4<$?`SW@"!4#M(\?=:Q=>X;G2?Y'$O\@T$>&(
M"68)\(@4@TP5"[L#$8Y(9K,$70!1FO2911@6%U),RZOR6_$+BD)$V?,./$'+
M[FTK`J]_L78*/\?G$#?9*#-R2WK[.945C6X(7Z;E.W)<@[&0(PBOB\Z';O^J
M<]KUSKJGYYL@*Z1B4W\(),TFR3P*,/`DGYG$T8+!C&Q:M2)Y+Z/"A,(Z0LMB
MO2(9A6,,01/QO/M#]QPQIQ/".,NE'SS';C0:*"#X[S-LQ[KX[S,?K\4?;$$(
M@3^/$?E"9[L+^=;>;B52LNEM`@Q(&"!K2*;3)/Y;%OXBDY$H\8>_:OZ?%4Z0
MV%E1@XDB'LEND;W;`WNWOU<)<GX'!.Z3,-CX'`958MG@LG0(]H>HU-[>=MIN
M6U.IGM^%"5&"TV>NKS'7"VFN1'!BH\D+0::7@[/FBU;=8:?GG7[?EBTXI?7<
M4ZR0;@5XMO"_$KP5$Z_PKSK8_W("U<2=19Y;9*QHHJWL&DP;NQ+T,P1".0\T
M"$,.ZE2U88'N[MVR#W1H[2R5F8SA&<@>&Q<X!:`NBN4,!^V-.CX0#^"!M'+C
M'H\=CRX1I!(PX^1?3F"7F,Y!.U$Y(+MQVGL[6CF^KMQ])<Z]9H=4ZR>5R0[C
M6*93R/K*V2>Y7RR)<;Y:'`N&O)>_RE@>3K_K]"XTI%A^S`4DN@J<NBRL[_K#
MB8)3\D:XT1<8$^C33'$(&%N.\0>3>>8H(.2*HB2YF\_`9,49.'R0N1`NOT#9
MF<VCB&HOHQ'CA549"'OPYU&:@#0RF(2_QGA!-*9),(\2D01!F(>2PSH\`@'!
M,=IG9[0+Q,D@@X*6S8<3#&M^3N98Y<$XHQQ/8!Q4CD;R1.T/L,HU14DHPJY\
M`N@J1VN"!?2?K^O$1@$V;O#U4U*ST11&:@IQ?%TO*H9+B`79'$VTY>,QUN,K
M7=R<GWLH'APN8P0)(.+$DHA55[&-XMJ:NDJ-[*J[FC7BKQ7)6KVIJ;<<%X@6
M!(!`YT%2R7%HTE$P0I99(UL5KW`7#+E<>:2]+=H;F#`:R*@JJSI<_`?8)=`&
M2GJEHJ0*%LM7@ZU);!BA>8A8&G5=OGQ&8NZ(+"&#FH=3)64Z>LMDCE^&V2H(
M3W!MR5]^3@B%+84EAVD+HC\%#<CIHHBN+JF1&H<1)B>08HEL)L%@1.(E+2K.
M>*EXD0F.X%+)_@5-"R1H?JF8!Y?K0P`SEI#U`1BO9.Y*UQ[T/G3M6!%_5Y=>
MI9+F4IRE+2%J>.!74!IH?I*MA>_P.80//^)B5VD76$`0U&R6L&`19>#KER1&
M(W2QZ*]?JL(CTA6@&6#?]=Y_9Z"%>67G/+Z+DX?XY>>(\*YWWNU=O+M<)H0E
M&L(.Z?_;`HH5L2[)/3HRE0_L[CKPOZ.B2@TIPAX\.MJU*M75S@JR!HS2Q`='
MDTPE2`OPF?H-?T<\R!O^='S\\_\,OGU53;.0OAC#$*&]=V#P\#==5,!G;Y%Q
MFC<Z9+#J'?@%"6<LT,.&0Y`2?>R230#$>Z>]@6>.O2H;!`X:J,/"S]^\*:,H
M_O(72S"4C3`B8]`J*:^82C_.;',6DR#'<@S1P[U$HQ&$9$F8P/,,*0@2\9!D
M+4AL9I&<@DSQ!JQ!S""5CH,E6E8Z`KI(4*W-&+2K0@'QD4QC2IX@2,DF7I[`
M?S./:AO@RZZN+P>7C<8]IT7[^WM.>__`U&I+NV$7A#+3VNVPH-D\*790;E;8
M&Q9JLK=F#Y4Y[#UT"O@$[_/['*%WMY[:;24N*[8O7Q$NEBY(WI^XGB%G[N.R
M9=@."L0R1:;^G?3\.(FI)K!\`.4(!RXDIP>N2J&?8FB*R.9>EH/,#3VN*7JC
MF`2.&7JP#PG'P;[5HVH?;@./#UU3D;0!@C4JJA7,Y$Q4/D_29!1^G,_HA@OP
MI)E'Y9AZ`$LL0'493N3P3E](%Z4\4H8PUZ!J.?EZ6=29_3K\6?H\%PP'"U\&
M1F>P8#70%+<WAZS72U?]AW_O>VA@DV!M236L'BWBL#G\^AU:/G=U?]9=[L^Z
M1T*CBS*H?BYZKMO"W3G>V3O>V5UC`-2;K:YZ8D($N<(^NL'E0$BDPM&"C)_8
M/3@X='8/CDQQ9PV+36NJ7!1"OJI*[&O$H.^2)/47#CH[R*B&,LM&D,HM0!.`
M/\&)B"0FGA0H8Q'7CR(UM+%&S.=EJGN6@;M,'N!7CGO1>S_XT1UL2)/Y>(*Q
M#D37$/"50-B!'3I'"EPR#K&&N78(L!:-FWT07'^&K$`]LP+:C,1OC8O9#;RP
M>"-J%YXP.81:8V77M*W99#A<KF-DM6'7RZ]NKJ\N^UVUX:2R#D4?5JZ*S<"`
M*$U1F\#UV^X:MQMW375\PFAMI8]`D([MRPE"@=8CB9J6$%.C?%I"?N3<+)4M
M#.135`#*FC$$8BD$V2$!B>2(TYV'@KM!$K_*(8Z"D`!XKUKSN!\R"8R:8\A5
MP]S'B''J@X9]Q&5@[0(#08D<$9,ZDVB)A#_V0ZQ1]+BS0`+\>PBHKM'J_5R`
MH(*#S'-5F:@7V?\/HOI:;ZKQ#"1\)'$G7U.D"R>!7_T!/H*/73U->+@\3GC8
M%@I9--G\8V'ZVSB\L^L>NS1%>,ACA-5%X!_:Q^VCXYW#FD0(PP?F*Y?L/(C3
MM*/&UA`W!#A!VC]RW`,S00A.F!FGLBG%7(Z%Q(85UZE3GHY:/<SL/!Y(`.`U
M<6+].1S:/G&$%=K:9[2^\(SR-<#A)&G@W<[#"%2=KE&B6HJR2%V;#3O4J0&A
MLO@2",:%MY<V8C2D@U?5<O22U(/84RY'5S8$RF:)?[OUP;(M"5-_<2N]69J@
MDR_JUL0KEH1#MY@EY=G%(WMVT;XF!V]@MC#"Q=#4C\)?9.!A:3C'P'4YRE7;
MYW$6CF.TP0EZ$I75>A,_F^@]^#-(+$:^=W)1VGV;@->`M-CLPU02W5/M5D<L
M@WI=N@>9,6W`GBDY&S5@('&J@6(BX6_`#')&&^!,[]N;]][IE5>J3O>;%1(#
M.$R0*^G&BJ)'"4'BYK[K.OON03%U]$F-IM'\)`U+8HV&;#"5Z]58!?A/G7=D
M#I7ZP3OG\*,6S<PQ,VY<H%']6*K0<P4MXY"!RZ.<I66F>@KJ(5,>%B`[,Y_-
MHE":S-]X)/*\BGX&;VH<)+KY.T^EZGBK05;0T2)70IQ+'042:J;+85'[^?/3
M94#U?#4J?/E#]_K\LG.6\3A&J*O,>9(XXG9.L?6B`(/G/:3^;$93&&JFI=<?
M0$213U1]I=1RT/"_!C^>+\P[P+1=>\P=/XPWUV.Q4RXPC,QR.(/JB?;4$,."
M3,9D]YN5ZU&!R@M"3#K">W73=7U3K'=*""4%P7%P^DC?7,>4U(53,S-<2[6N
M7C`$`UCD/>*)E4]L;#`;:6>(,WC(K<UB2Y<.#N,[+E@;'JIJ?"FZ4U7#HNSO
M4RBM/M8&P_0P!U&*`@M;T?#%'0;9<+W-S<U"%9IZ@,=03=_^A,>B%+7Z0&1F
M=GT\N21;Y?"\3/I:8$78O02+'%H)E)'7,A=%0WX<RED.5^-&)1>@L=/3=-A6
M[+1!["H3S5]3['J5V3<C(_9X&#_DF3@B)+?+"JY7DI^R$&V:!D4A1,!W(A/R
MO`"C6\Z8^&%UWXRW<==4634ZK,:X6!HP6=7)`LV`:TC,Y2C7E$$!TO2C+6$&
MU8%H@`+N4K<0]F-+6"E9\98)?E:=O*!4D+-;952_3$S#:1A!W`/Z75[&5GFE
M_#IE#=43<]KGE)B<_;N$_?F&>!\,\?Z!-3BD3CM7YO"'SC79B[[((.</L/D_
MQ1:K2FKI7ACE4/6_F)97WO%!SR4&D-.C1'4N^KT6.%O8-B4V4U\("3H-QY.\
MH!O9U!&(#.@B[[S^T)*I3SN6R(;@,4K-N*(/T,NT<\UP!!./^AP3L)*L`K/B
M31EJ<^D08).MQCY8C?TC:\CE/X1&182BG!-V[HKMQF2L"AU\B`#([54&Q;\&
MX>MJI`2",ITD]=.%:$`6[.6I'V>8,D`>RVG/]LZV`__;LQ*?;3#\KKN[4UA^
M^7$&>HJ5^30W,T6BL4T1_J-IXGWI4/`M1`IW>B"8YP^LT<Z_U^GA*T,BVESM
M!Y:2BE(GL!BIK:0SSYNUM<8$LNJXQCQ&H\5"-Y/IU(_AN5.9;J)@NNB)+PC&
M'=HDBF]OY=#'(9Y<?P7F+^'V,"D(\5_#9BC)+?`#Z$=-:S]&TP8R+OTL!)Q&
M<)=`4\=.A$?6):G1G)V8RWWP[R1/1Y7GM#1'V8PKGVEFG"UOS(BQ\`*''R;A
M4(4$]EPRNG1)$H*N4R-93BKAMU)V:LIK#H-OZM>:5)WOI/0[+C1/:MG.4'#-
M)UIGOR^C",+EN_5E@NFS/YE7JU@P4A:,."$B,\=519AZ]@)+*P'-TN!B?7'^
MT&T52S,X!W*Q>"Q%HVGN`:H3%/KL*0&AB-5:I`GVAMN--(I6?KG06HR9NS[3
M@O)(_V(%YG,W#62F!^/ISBIP>)_ZMVIL)D6K'U<N6R!9+X[\L0_M@)#/9_@N
MX])A%MQE:)5R<0TS[4O3C]3V?W"P`AKIN,Z\C$!^QK+NN*$R"*;6-N'H0@[+
MLWCV&B.(-6_H6<L:K%7K;T2I[LSBW#RQD$=2S<`4A7G!FD2--:%:1^R'C1DW
M6JVN8]/+0J!NOHT*X[AGQ9>PS=*I1V-HWF)^Q88F@;TF>F:36KZ;91]LPU!N
M[Q;5]V?9!4OG`\VFDM;7%>UU;4`?P=TA4NP95Q[,$BQJ)J5D%1*=H;3&6\MT
MYH2BV`TY2I1"L+"@<-B6<=6I($OBD</B:5(S66B:$(5`G`(HT!OCF;$P&(_U
MP"J<;7._QNHZ]8RI%3IBJA([722@>8KB+1X]4J<'JUZ7;4*)Z65I5*RH1T>-
M/3/#GUIAZ>7G)7)9UU;(XZINT!?(XRJ'MTKA"^ROY32YET]Z;>R>84%8C&F6
M<\[EF^)]L*H#QE_MPBZI<\UE/N,^L0/WICSWJG2'9KHQ6H$\%8G^D(;*N$=)
M,E/354/N:.);;RK8I3(#H%_H$57C$45(B>G=,)S.4WD>19LX71W&]TF$Z08U
M8TD.X-X_6NJ(G7GR;)2`S"%P,=&JK8"IS.=I;.XX74`L'X)GCL`C9YE,\_I)
M8*3>ND4(1VR7].<FGB3)W2H.Z@A0:Y2VW05BA4?]E7:ZSNHO*7CDDQ%3%0*>
M<Z]Q_T\[DE4NO]9Y5]T'X=+]&.96HL%JR6G453*S$BBP;]SHMHHAG%P:;VAJ
MA2TRK5-_-D/*JG%/E,$'R55K.1K)8;Y4LWP`G5+UFII$+)FI`L2=E#-'5[V+
MNOEM$BQT)K:/+XCOV[.:[H$+F=CA;N7]4<Z;+&FR7HEBDX*_8F.-5GHZMP89
M'9(O4&8(5Z@2$G6SS.M51GU7V%'(("%]C?PQ*G?;Z-`__[G*\):+0F4/JM['
M5/D+CTH:NH%A@)]U;:_*<J.\-Y`ZZ3ULBLMO7?+"DK+>)JBK2@L+;.;J)5I,
MQK[O=J_HAOA`S^OJL4]\_>1!I[!\A7&BRQ5JQ:T$-QNK\?N2`N.V3.CYT=*U
M3"<%TB4T9W!>K(Q9H,?W)YCX\3L.V$F$546@\%MDD-[6=W4U@*8,4`QX^@38
MF_MC^C>;W_(5ZD8O<,=;B&6_AXCXN@^ZCRN;N(V?4OEOT'EOOL)76=?6/M'_
M!2A42B1K\%QX[$=8:IZ%$=Q2IFF2'H.0W\['8QV0T[34?`9B_;)Y0D`>"V1J
M$&'_GYU4%RWA!2OQPL7;C>W=M@/_,]6MKTF>WTR6WY\FOTG2\%55ZUW5M6>@
M]7F4S*+^S5OZP5YDN')BQKLN4<,>PDSU6/Q"IQTS4,4/&6SWXLR[N!QTS5__
MT3-/J50S#)BD@RF3^ES"ZE&I]*,2HWT4HWU;C/Z#[FZFPPH:B"\CPF^2&WS#
MN+VW;7=#:8",6H3V1:EIR/^OQ#?XJ-DTI65-M:ON]>GEQ:#[TT`MP?@#89E>
M!R93X#!3BI_1)..+`)3<:/M.K4_3*E?93V8G-:I5^(1W#;/"&^/K">AH/>"#
M]12<DMM4Q>E/IDA=/^E#K=G569/RF=CZ/S&0;(JR%'Z6FNN"+?A2`JU(^<94
M_IM:@O`7>-(YHS\01-6/@O*NDE0J0ZD-]>\TXU`)`,)7.C0VU>`(A,^T:%5?
M];[TQQ+PCT,$_+:.>`6W?U7T(%0%#WMJ.):`80,$5"UL/!!>:CGP!2UO)J<^
M1)3#K,3M*DU7\,+TLIXANYK:JP8=:>&)M69YR+%$0\H1UD7!0EH/XE?+)1Y$
MU'SY9&P"978J/A[Z&9:XY4Q-L/K4V.,X&P<$\2].L,_'RKDV'A!@0UC4"+$D
MPJ]B-#%UU:319%7'$7+][SIGES]V&4&0LJ)28+5I2@3!3UUE@<<8OJUKU)A]
M*]>8PL*ZGLX4SQ5@*P<K8UMV'H*A<8DR-V\B4L9:I/(M919:OUZ96RA>+2T)
M5?4J9;)-7L<'6D)@Y5>;E"3Q7UL!1Q,$D([A+_>A;_Z2C7HW@BH>"&A-#4\#
M\CPS#T(Q\O5(O#G)H`=6NWM]80P(8<5WL"W231__5IJUP@@"?T.@.OU^]\/;
M<_4ROF52W),JO,[9V76WW^_`ZGJPI07/@OY87.Y7FKN6F7<7!,T(`E6*.!%&
MYXY5D%;5@[&WX(8[02IR8#-#006\LE>S3OD2.Z=P?88XKJ)%C=%;H4IE0ORH
MFQ-V:2"5XSF.,7!`CX6##1PFV3`&K*SP3)\$RZE!)`NC=\QGK?%[@2=B:TN$
MW[CT1"L)S[SSUR>B*3[AK-$CKVP;/%G$+2`[M)W6J;?&L62E7UBP#2_-@3R`
M*T+#JHN#=DD0@#GJ\GKDGU@-<@`H<),O-D#@EBOAM,F*5^HL&I*K@V3C!Y\6
MC7K3:TG6O]K[]K8VCBSOO\FS'Z+Q3&+)"%NMNR#./@3CA!T;>`"/D]V91VFD
M%O18J+62,+`9OY_]K7.K6W<+R>!+9I?,V%BJKJZJ<^K4J7/Y'>836P0MIY:8
M@]+?/]OFT%LHH)_C>\K+"?."D\F\\(.]*$ML&C_^9GVIK;/N;!TGK6'YK;/"
M*+V8G*4'Z2$BF1"AW'%6LJ,L;^MS,M`&'3Z%&,L+G<[Q33*G.##$CTHGVE9H
MA514^*+6;E3">J=KQ\!]SLL&6,?FX(84Q1,E](CT*+H)3*\P)!=QT]BQHJ\?
M0C?4:N$1"'&T%%NQ;#+^\'`>4V@%]BZMI!-UIT/MZRWE]P<<K8`71!P$])1S
M53'!;V-*IC9AE!G;H^R'0NY:\FJD`S*-;\31]26^#,8/^Y3!+/R+VD?>@T@9
MDCT#4B4[4<DZ7W1%LN46'LO:&2,2R!U`GG$_HRHX5X*Q=BNYJO^Z\SHM\$QS
M]QYA,(N*%!0RRZU1?HUY3_ZL`EB=DN<Q=T<4L*WP^3+76G-/H2V%+B`7V&#+
MO-L:ACY\G8^<HYMG9C^$B75T.$M\)H8SZ6MB+%'MC]&`.XVC&3A14JL/?6NR
MX%NT;RCX+7FL&1;.>N=.Y#CM\@G!MPB@0`X)UH0"%H-Z(0XN,9@::TYB6UFZ
M^N<_@Y+%./H-]!+K'::1ER-GD^_G>$JJ30$1J7O)/@`J[6_KCRE)/2B5`[$U
M&V+N6\3\H#<#_F@O/_N6C/"529&%`)*>\/:JZ!I9SV,:%'(%:$7)3%UK/HYB
M^=?MU]'T'?&"2`^`F\'K]BP5]1W-%_-8R;SK&%-5U9V:UPJ=GBC283'.HOZ[
MZV@Z0..R$I=GR4A[0-U;]UV&&W<OJ8'^!9EZ"JX+Q<ZX&.PX4?]$>EY`JL9X
M+)D!E$F[QCD!]G[PQI.5)8JU%O,L]KQ(1],B9G%'VPZO@*-T,.!<;]OA@^0P
M=D$.+P``,WI-!L6,.C"T,]KW+'97!X2,('CEKL[=$C)/[<;.GPL6HSHT[1@3
M6"&RW:PM_0JK>?9M.>LX`C__^04L`)D"9/]Y4/GX?=`'NRPM".1TN*>'CKXQ
M.03G*2QR=!W=*AE\[:V8=_8L=[#R@E5=^\\'K0B@S+4,=V[<1I9TCAF5-/>L
M715%Y>/!X_+*PJ303*N#EN[L\_"OKWHOWQSLGNX?'G!?CD:N,Y5MX57@A'4,
M7<'=VMOXED]4LZDP3().2!3/6O&4?83AMM'41)WZ*MY'W$F7U`>+EC!GT;:=
MZ1OCQ**\^R4GDKF<K32'A[BBK0=F<@69?:7<C+VR!)IH3YDF+\I8L!<'OV'T
MP&,GVIAC\R[IH./@9>TIE3[@V-M43#D+KE'6*!:)IY#D.-`CDU!>(XDO*8Y7
M^OC1Q'#;_CQ0!$L2MYN,;LM@2)LR[I<\N_OF^%BMK)L5N_D#:M8Z?GB0<BP4
MX.SP?8U5(>F'CTJYW+B!0N)W(J=<YJ8"HOY)8&?V,%.!S>2[K(=R6P3VDX'^
M%9H^&03_'GQGL]&303G8"@8H4#RQ\V20*W2>##Q.?#)XX`M^<<X$H\NPP[%1
MQ0(&33?]T@E6HOZ?YWSHN=?,^+5,=$F@KK+2&89ONV\H:5/,ATQF]:+$:DBL
MX@!%Z3WD_/EFHU4)FS9"_8//[NXYW7\N11YEH:5B8P#@?F(P\9I628J\(#X=
M;EVM!/5F@YD/_P#ITJ/<B^<HV/%WF8_Y%FW.O(6T[9P#OFU?7_8WC_=UW%29
M+</+&</-8YY53W^Q;6VCZ_BQ=6.-8./0C#BKDG2PLY1BDE(21K$`PPCK8#1Q
MKKE1/6(ID*21<7K`,-!AGK-1.I>^Z'(`;U7C&&O`?E1^Y8!C'&)$6H2+%8RG
MPH@U2FL=L"&O">@.34%S6(E;6AW%+>VZ%977JM8K82ML>)FQ=Q,O6.T8U4]6
M\JE7UJ%ZN:JD,7.Q\8!P88FHMD)E0N0*6-6S/)O$C&#19\7KL"%'E5&)BCA7
M1^?]=/"F=S.-AQA;0K?O4NGGPY/3WENUF(".6,X+E(9@.K$W+-'<D6CVL[EM
M=1ADSFDR37SU2\F4]R/FJB88EIN=CGNH8,`T^O:'^#PBXBL]9%H)'OUM_,@Z
M`#>YM>K12!*1#I;G-].-IL[6(Q9/@=!]#@1_[TBFN?J?1\:YXQW.><&WL^!1
MQ18"1X<`G7GLTWA>)IB;M0\+ADNSWK0.%CUK/Z0TX+D'Q7-G8&1G!1#I)6Q6
MPG:M6@0CHS1P*^L1@\<K8(:WX-61JEU(G.PVJBY5\2A4-/5=3_.RHVFAW35A
MY"\PFJTO\"\YIM+U(@</@*8@.RE)J(0TE4HP"X1$#R'JP9J*HG@(__?)'@+=
M`4&RVFI4:M6V)_U6FZ3!5SM():+VFJX":`>*BN"NZ22XI@1_6@&Q!8[37,SY
MH6Z`5B\M!_7SG#4/(2@,EW:WK!0:K1?&^JLO/Q=5[L&O326%NJV:%8.9IPI9
MVCJ[0;URC94@K#?EKD]'U=YN;^_5J8[[AW0'-?9DL+A1"(V.]Q2K%QR0'*14
MW$/-2U7+AC@M>G_=>SJ+`H?O7NSX=0//"C$7<EM_T'Q0D#SA,`5OR$Y';<AN
MRXHF_5>CHIO(\K`4]/)@/B/U<M10#V-9+J&*QDV@<9BC+PPX&!!'NT"WU$B"
M>M'F0*KE>#KS8*V\U/IDGJN7O97*ZA?,UK6P6ZG5:DWWG/E$4\Y+AOILT\T(
M\,5PD%A^EM@"X._4.C4,6RR#16BZJ9"Y-)-;R`8&!X,0_K4,"B'UKCY59ZIH
MI!)[@Y]KM3,_7/D,OB<5ECS?HP&^B![+DVSKP9E=\V92";J=:CMLF9@OZ>.N
MLP':GAD%.'#<'S!\Z:AB-^,'%^\@GCC'X]VYH'H5"Y>0EFA5DA1E\O+(^"H)
M*8YD/4/7I2F1@QA/R8!QG+ZA4=%^K:M;L?JC4W#%OII=8.!OZ89XMUZOU2KU
MNDDU(LU]&I\G,XQ#08"?[9P/$4V$E4P_F/*&+63ZB0(>*S*1:U7,#L_7L)02
M$7V#:?AYW^I]3OAP#(1FC-&4:*%S60=IC$8+!-1+YE=S<`G.YMH/)+UYWO@;
MC,`5SPNY?)7"B2NR?[!_N@_NV!LKZ$B-Y@6:;QA5`EM*^%$Z#-XG4P2O(2CR
MV<>\?!W[U,6"Z?WKIHMU]Z76\/S/@X*UW=:$65^AJY?'AS^:CZ1C4Y2/3IMZ
MH]ZJU!LFL^M!N3'!4@_Q`".53`1-^'_<]LFX[6MEMKOE8J/959S8:EB%Q9OM
M>J7>[-0M#1_T"(*,T14[>]P/J#BLK<#XY["`-YIB4#;DS<Y/M+00T0H%8_HZ
M3W'*LG^;P*YQ`;+EY'H3I9F6!0^;HJH&*:;P`I\C#)P'.L&X30FA`6X;+.W\
M:5Q#U"/9`A@)8P"X!5`P:F@].XX!SS>:ZA1]BE/+[K6JIX=I#S@NBN8O4[<<
MUT>R7TR`&Q97$X93/?)Z%9*BNAS-NTU%X&KHI=WBZ:NHA^F=O<MH^@[SXH56
M%$`%^B[;6FZIHK3WI=%+N(G9*?2SG,YH&75NRJ(^GAG]UM[^KZ]&\V0RBCFK
M@\62SC%`]'P+I1/"/#!BYC*:]R\(1Z[>"AN5>JO6\7)MO_XUL4(=B[0M.];2
M%79VX)MCY*,#YA@&O<L2U_E^[B7EK+M[$\0Q!O)'XR":PJPP<TB_"]REUWJS
M6<%K;(\CMP^V9)Q/)J.IRK2^Q.9[0":Y>U<UX4QO&N#<;(B_77>7#&5E!ZY$
M1R@>O?GQU?ZNWO4P`^=S?I2/=#%NTBFH<VF+5GYHK;PX\VGY9=U[]L)'<W_1
MLVRTGLM&D*'NS,_Y:CV/QXH2V#-<ZQS15-8@YZ[&6[NESK-6RT^C_TR$@5?Y
M3/K0TUR".=L@\KO=?%\!#X,#7@E^0F=DI^--QB^ULM"M4/&[+[NX*JPCR#/<
MY>+`;OW@OQ:/<Y,E+]-CQ&2^D=-/DTKPB@EB6(960>)CJ<,Q!X7B&4;7?/!W
M6S`"BP^$HH$6G$XTSE-3/03.*&_,)IT=(NH,P>Q<O\@N=DA1J7J70'X8<@"$
M8;^SYD^5$C'8:E=NX8A:PK<0W<,Y]$@5:/1K9G<MB6',CUX7*QAA`1W'DIAJ
M;E'F@E51+XR)M_5TZ+P4@&$+5CR=9NYF&$PN(*Z41HGBL=NIU-NU5KZ'[>%%
MPP,+A7SYF@U=SX/QXZUEIVD#.!L'UN4\0?<$@,[Z!0,$<8-1&'"N\L5HY%PV
MX-I1C2@#8XTB6P"@%JHL!6?Q*!,?G*_C6&&_?RR9L(3&^G\BPQ49JRW9%Y0H
M=VLBK;`+%ZVVI2;SG<(2`/:!:C?Q<N]OO+N6KZ)EI4"1MI;93.:R?GSXNK=_
M\&K_8,_1^Q!Y8@0HT'2/('X$H\2%F+C8V-=NJ(M!VP0]?H89+U!*'W!V2Q"[
M45/$;G0\8F-4L(?K%I)ZVY_T\*X=E![9W*9N:;]]^Z<7CP.I\189?/)'E<`^
M3`),J++3#@#+BD-W>-7I6%KW5/PS-^/S&X['T@8^/P5).LJ]MA@`+4D94#.8
MF0G@DX\JS"*MMF(1$^7R]:Z39+*I[Y=(FOT\2[@$'W9@"U:K'A^"]^GT=#\X
M?0&8BE-`[D2L=4(M!$#Q4<PBD-,J46`#W)DE_UG9+^'9A'623X[V=D'CYW-!
MCKXR+X>8A7[<@V#C%WLOU>Y[X;?E%!_@R3'5<)['05&"U`UZ"$U#-WB=$R".
MU!G*-H\Q9S&,36$DJ(BD<PO>QJ3JR+>8?0`ES*;`*)X9=#UP(Q#0-GVF`7+A
MZS,#AGNSK1,#UA5W`W-Q,7+7:Z96E*38WO'KG0.E#M*J\`ASTGK"6J.L71QL
M*+TAYS+NL4ZH9%&G'GI[[`_``T4;S?`%;>0%W'%G%UF.*5*LY435R[<<7ZVM
MSE3Z)+,9:S$:LSQV!R+SC6G)C)C[0"%S:H6BF$O7"EG4R:GP6;5(ECE)"%JN
M=6H=X.F65R/&*1E*(<8Y=Y[`6H$[-'[6H!:$BN1H^@9W1.9+81ZP&;O@=NJV
MFE[AE@<?^,HC]@:;1X[%PV/"M!N*,!VKSDFC6JU7&M6:E_NBY,#D:CI)9S'7
M5)>><D/`O2AD\0T*2K2)SY<K@*T;&)7`T>.Q(`Y@3_='*>2S26B]5=X*+U&P
M=<7=)L`[!?%)&#'+W5S'.F48\`.XO-0QENXDR[M<Y.Q1F8H5*.VIG":N/03-
M2A4)3N<IB)=W%TNON",E::V+PJQ07=)Q^<M0A(:34^A""'/$4(X::6$L*-&4
MI^YD4[B0T52]BI>5JU,LJOFF0=X]L'AW(RV<.XE*SHG@&?4F\VGO?*ITQ-)W
M*)GX<^FR>-]X]=>"$B38\(;IUM6&Z3:LV#*6BU<#W>DZ6H#9?11Y;GJJ_J)C
MNLG*:U4%U.;@A*NU(;PX(<P`Y!LEZC)`\BWDCLEY3_(B@^"MJ)P(7@V67Y#D
M>\F&Y$($%&[.J%9N62A$T#'&YWWNC7()QU#]FLTU:J&F[*KBYI@3%??5<`C:
M@%*DM#V;.D*`="U=<9E@@:+1#$<2!=H!368B?-Q?6'680XH[JN_'>R=O7IU2
M=VPWV@>,"4BQ'\T]7]UU=/N415\[5**O$QK1MR)Q&3$V'6^RD-2)E1[=:=Z+
MB+\4W9FJ=Q'_3KI3/TL2?P'=93S+$?]KH'NN`,B$+%#%"0)=Q,K!(@V:-5`/
M&HZ[R@.<#RC2R7H8/B?-E`S*T^2\9P=,D>M<5TTW=F>#8#\`G(:>MD.7"H)1
MR+ECC]L)KK)[,:E"HG$"HM;S(-.SN@S+@"M>M(^IPVX4'^C%1;11GV2=AG0]
MR?/H0W/]+5F#?GRS_^JT!ZHV]B5!//)Q[^#P`'!HZ6O.T%'[NEMIA%57KUF5
M5DN221?_L.XD7PGQ_DATN^?F;('NWC%8ZK:*7Y!I3LM6Y"#6C"_!*F:YUC/J
ML;5+[L#[=/`8[V@K-SI'.[1>I29P]_O8CDR3M9(UU@TPRP>;U9B4M%2XF<)J
M6VVFT,3>%:XMO00*/%]->E2>G4?'=T3C)\M]W;UXH%$-X42O61FEPMMR(_;*
M63DG3C9]<L'.6+=K8:F5I(FG[T=")*","47:]GC.-*2Y0)^%X`%*!3&G!A:\
M4`K"Y5ER?I5>S6S#!/4M`JY`=E!3N((N%O:9R$U[E-;H[MX^E/3C6\%DF##=
M?V,^:U05G]FE7CX;_5Q'9H8\172U""OX/G?T=`>A\9A91&.W^_O0NI#,MFDM
M0V['R"8XF!+H:M=O&S*J&L!>6Z5MY?6HAJZY@).(W8L5KQB[U]SL=6(_T)/[
MP`X(<9>J,B66TH>%'#2>E,#7H;(YO1KSN\E_"LT)9"9U:O!Y];6A((ZNOH@=
M8(:\:QGTK#_V4KKU\]9=;,LG@A-+?UJ0,W?#<.$F*UO61HE;U)WB#W;GP<EH
MWQR,^PG6*5,+C.X4-!P78]2(RT5O+M[VW`[/=/-RPAK,![2!;\X4`[VS!FO0
M!QV$!'T:KWT0LQ)SXC['?V1)[]<7S8VV<%G>*H99*+#\D\H^\]1D1M+S!"]7
M/0J+57=%/*F:U7:]HO[HVH8%.Z,"\YN0+HH-;V]'\8V$D`92PC:][*5G__!1
MS_EK-4E*=0(CB],9>.QF6F1`!$W4?[<5]-/)+7X'T@)N@9-H.@/KCF(,]<E3
M"<QIUFK=2K-6;^2G.*VV"F&K66G6JPZLD"44Z0,<L%$JZ)\EMT,=`-$#<61R
MWF@9@N=Z'?SETB`2ZUGMF?5RQ=\+0PBSB!/ZK?]]%8V2X6V/AEX,K$T6/9JI
MBQ4`B)&CJ\%Y'+QS_O(DCKS1<QU;BV0+'#V^1?G)9JLYKU"]\F_&"X'V:PQ`
MMX.QK0!T>L*-U79S#G1*0?8I(T;TN+.-<@!"=>L%*N^Z"(]@=V.#RZL-DQB*
MC4=8D)JJ=Y/#&4X:OL9QN6XFP3^PKG$\%)`ZNY$+.I:#V(-I86I'X$=93Y;%
MN`MMHJ[KR#SEQPOG>/>R@Z(E!W2ZZ2T<>T.U(<CFQ`"#9U#5!-L#CN=0H'X5
MO\VP'#C30#LH=5S36VF87"(.7(!UO.(9@I4)GH5VELP@O`<SM:+QW,!.6&LB
M0@%HEC<3D@T5`+"R-X-SH1.\TLO)*.DK%>(Q-('''J/!2_V#9PWX=>`9Q.G#
M<.RWZ^[4#WHE-%!="H7I0+L9&FJ"-;$/"6!8IMSW=5A=,3*'R%5<*9XNO@6,
MA<G<O,02##J"8C)-P8L)BJ%,@5+GC&X`@1,R-E=;EH^+TC*(@74A^)X:[E@P
MI%R[@^ZI[#Y]I1;3#`S"2F;%3/EQM`\S%,<S54EW**XZ(T*AZKA9$URN:U.5
M$5S#X`R9SH-!0L7E&!R6]0WD7[R><=%#,L1>DP),V"N"X465QN*;"%S<5#5"
MW/H(['KX^N@0?+:]X[V7`:%\&GAGU(^S&F?N?B]8+X>'^'A>I_5PSQ[K4?\@
MDZ_L,XN$JE79RYP8FO(%=PCTC0"JFJZ$HV\)2O!$#A"-4>R@""0MG]H\A)J,
MF,+7*1A[9X*$K=Z2BMS!(@">L9XP$<D%:.\\_S$:&'$VL`H5%)`X0WG96W-I
M&4!XTR5$JY$W`&L.#QF]>):HW4]>`)Y%VE<LC/@=>-`D1;6,U<P/54_S:=)_
M=ZL^G$L'Y-(!)N89RIZ:"7[R62R@RP0Z!_<L?)3K"6L$3M?F3I"2J`4&NVK$
MR2">VI<5B5/="7XW,O)[6JF='QAQO+13W@X^Z+0OQC!G-R[PE6R=WW8>RRAU
MD)CMA<7'80O]-GRL<8U\OBFART/&HOLIH[,2KXUY3$6/F6A>\7;2V4SQ(B_3
MZ?QJK'H=W:)RK!0Y=0YS\&[FA1C>/`MFT3`6</MY]`YNJML2MBC,A)X*C+1E
MOTZV-WP>"Z./T#>-97>83S*):(Z`0)>H(V-!N14-"_H5&=''VT+F#!'QRK'`
M9;OJ@)N/O<Y&X'6,6\;/3`N`>XIOY@69WEKO@,)>N+]8M+KAO`M':^FY"*]+
M$<=*HD_C07*FCMN+=#J%LFL<97U]D8YB4#+Z`(R,3BTZFPJ4]6=%>MBSO">=
M'"X0##-VN<WZ#/`+/(:\JQ]GO<K/6QCUYW`)7+2HKC*,3_7O?DI+9S<GD]YG
MJ"R4UZ>W3P,[:%,_K/[V'C!7THS*#JHX)R-P'0&0FXI\T^3\0NV840QE!5#=
M/E>Z*.E6/G)Y9EA&XU^W.=I<2O*>LEG?.[VRTW`,9/3UU9C.S`1"U?3-4LY/
M.G7E[#1U6G;&M^PF)H>J$A4S4%S[\0#<LP%8PD%5U+JJJ*J@6D>$5R*[`;RT
M071&53K5&D[2.?B)4>54M!]2D6D:D7=+R=<$\Y1`K<19[:S@)90N\@Q<V/#S
MS'/4V'^NH(Q,]JJ+#*:O>ZNLO(?*9S06ON`*CYB4(]Q4LZLS6'A\'B$@7>[9
M-$D/AV`=A8AA.NK`JJOT+/`/9O)NJ!F936]U_"9A:3-B0!#9<5+IU.)['I+8
MUS(K:I1O"Q:!U3[G7K[N`N+3`F1L[1)]!$^@$*2BO-)D_^#E85#B,>DJ*%[C
M?=W>-$4TAAQK0?&H[!N)O`3.0K)*3)Q%X.<JLEIE.\!;OZX_Z9D8;^8;C&!_
M\1AOPC,*9G\D]PLM=8/<'@*IPFXZ@0O?()Y`-2FP,NO+]"-=3L*2R46]0IQ2
M\)L(@.#;TZTMZ#RA<!PE)S$(XS:]P@*]\_(C"AF#SN%&#1I;.B6?4MYM*QN6
M[U<G4'\#'L66]CT04A,8">NU:J79J#K9>P]CV#-&FY>@PM+-F'4%D_C'M^:^
M4MZ'5R#P(E!"Z4)Q*UN>D5#M(C9HS)C&_WV53&.K/$+&_N*:WK=I3!2476()
M(B8=Y%Y2(,24?\0"SCDP;+.X$%ZF^E-,JC'5M1&[P9E;PT%3P.[5*]OB=[P_
M#(SR"N*#;!$><U88%QND%QAUU;NQ%MLLUE8/4FHP&4+]BOE;@)L+-PTU7J>(
M"V/2/Y(S3'?!G/P(<\/4+0/5O;<Q7M'=R_X%)WVB61XG,$;E&G\B3X&/W,/'
M7;`BTPB?`?9)Q:?.0BM<P8FX\.1<7\9V8O/+RD83PPX?9S+!^DKOX-B3JI84
ME\:7)B;H#(+)J=8W7&H(25V]SS)H#<V1)2/R+0N.4<&\7^-W0"4+BI?7ADBQ
M0Z:21IK=J#(`#(KC2R>,+VN@W%??H]%'<<99!/<%4-:!5Q'Q73IBXQY!YLI)
MKAX_22NZ4@5/R1NM(WW4%_$-;8/1K<N9ZRQ'UK4@L<F?;TA>P;HK9UY@<8=/
MBQ6XI5JV*B$9\M&/3,>Z9Q:\*M<V1:8IN])2CM7)D6G74)_L"DU'Q5*-33DE
MTH,MQ3FC7!N!!/@V('/LI&5/VD@OCM"Q(L<M4;V*E-A7FM+^[OYI3_=[M(S&
MC.HJNVGXLF+;WA[HOK'VD9<-^#&#NY_N;OI9J*Y_=8KYZCJY-=//JI?;*[S\
MZ%;1SZUG'UA'MWI^4#W]*U/1,:.#&/S-S'%&4L2X-4.T+>=L:T&0HPUIBPY'
M_X<0"6TA(>&^(5+E(`T8(!;<=T;+'E@F[%>@MG,`O6QT:F6*:%A&7SN.XZ-$
M19![65D4OI`7N$AA"_5.6&G6N_4L$/4\D[UM[8RY7^1)+:B&0F8M<NX=:GJ)
M%X8.>+!G`1\",K*/P'^E'[[1A"Q1M6DP/S?LS(]QA2XX=F89$";.*\>RKVJA
M:GK?GU'FKE=G26R'>.%L=&KJPMEM9X&R/PM)W/N@N$74NS(7O^+XK0>@VT9P
M)^F6#B>#A3E;0,:<,)%[D='?BGU0/,?)[,*)^874F8HZ;2]GD[C?0^!E:-QN
MJ2VI_FA;*:=K;LC%`CR`O`,F?^VQ0FEQNJ\W-7,N`&+,1=Q_IR_'0]=G0TX=
M2@8Z(\UU3D<YACSB6ZF43Q`GJ*^=,1P0A#Q"I5M,7U,J#<G,F&L^M=N=9J7=
M[M:LC-9/MRYX*/XQ%N>>W-:MJU4U<>9J*(?PXNO$BUO%@)@I>^C@MHYY2GCN
M,78QS$(=E]',NE'0E)S@4\DZ-82`^(*+:#P88?8B%.<$ND&!3@>(29Q'5-82
M>\X&BF*TZ7:PN/KEVIH4C$93.;8DR0J"KF@H:BQ&S]05IX/`&U%^=5%I6SC/
MT+3Z4#"X_+=KJ)G]@][KO=>'Q[^"<#8^R+4U(1T:67I`-C'*')^^,DDTIDL3
MPIH9CU^"%L;F)Q45CS-_]CS,WT43I9L.GK\<&KW&J2/^:>V_F9597>5KF702
MF9E^H1\&K+\@DS[,VHPIOZ%]P>?U*2A+S4/X8"W4$N),[XLB@L%N_&#;N_EX
MNIE$4&\-XG]ZZH_S>(Y,04G4)&:[G4J[$VKUXTL(!,I'RU:R=[?S'66<B15M
MZ#E+XBPJ,,[ZA%L7'`/!KSAP82V#:[ZX.'E@D4KU(W7=RZ:O7.R>Q9VZ@FQA
M6_WZ0EY<_"KAK*4YD]A/XWJ[Z-QY<DHU759,K<C4F32L:'H)MM.>&K5Z<HIV
MU!+\)F6TPFH]K*@_&]UL,#<KCR'#WH#/5)WY)U=G4[5D"45%_78^3=^A&?LQ
M)8)$P;`_MK*EU3D\/>=H3#"O4K3U&81N$%;,4VT1VMW8V*),CYG[#IJM1$`\
MUGLH<&J\!.(!ZDG7>-TF>K&E'?_2:/^X]?`C2B"5H/(B[X*$C`M"QB;I[:RS
M.WV;VP"57\B8DJ@U%_$+PUI542&L-[*>-Y<*DMON4L%=(+4^>V-C](\C"&(;
MNI%9M.)$EI+2M8`SJ&SUT<[QZY,R*&^RC*!*830'.]AL@ZD%!"@4_V3DN?=:
M^]MCZ0'Q5FEV8*N8RI<>)C]\,HIN%5E8&\6G"4=_/8`:P57;B+M/)#';@T(6
M-0P3.D=M?,5O.'#UEOP4JNGH:A!CN6\L/1S,H_,91;N=8K`B_!M]=Q0)>Q9+
MD>(@+VXM\ZJ90??TNI$Q#J@A!#Z.4W+X<;PBM%"4&JBMW(>]A.Y<UX)LA7F!
M&1=>A?%"ZO&+Z'VB>`SX3`D%\M9`FPLL\(OOI``]E!;:Y7,]325UJ#BT[``"
ME-@RC`Y4C/FENL!@,C<$8->26(29]6PSA)A8N4RH1,FHX\--?-0-C_=>[AWO
M'>P29^IK>I9E=;C[FOD63+*OE38`I]C^#J!#V:TP@PV:G.S_I_W*+*[^[ZYN
M8*D1P+"^50JF8XRC)D(2P?-P[68$Y.NLFS:UYA53]=_H*"Y"L=R7%K_/=('J
M)?SQIUB=W$.]16E+NVJ52`8C<#^(1&[402*;JCHK;?:57^J+)GVL!B6,^46!
M5$%QJ_8P!EV(6*JU6VJD-5-@3[0OL":/,1\,X)"&T=5HCM(&[>/)>),<:3!Z
MC3WGZS`6#X-TYQO0RYTWKTY[.\<_$?[<FJV=+WQ4E$'[RN!M%=T6SB$+J=[<
MF!:952W.PHX8(<^ZGYFU^>VW5QA[+'"0,X0U`3$CU;J3L:P;7[5@^:XNP:D`
M.A2H"%!6]?'C8#!!2`3(1NH\K3UML="PWJ:D/6/G@@4@V<[&HK,@E%?U.6([
M'N@H:1DIXV@1!E8ZB#F2')ZR1&!@WF_A>[H]D</$GS=[Q33'X)0?D5V%E%+I
M.!K?<L^,"+LFES+:1?5Z6_%FO=FR;EA?*6]J?EN&.<VM)LN;RS(^W*JRAMD,
M!PMEH1O\Q.O#,U7;WRZ^-8KY`!K+;KGG=I&Q^KSC;1?=+'?7?&'&O8<DKC>Z
MR.T=!T$1;`(F?%L.!,2XY$A426:\Z^[D7)L(<Y_/<'LTP0]@NY.;RET:;L[H
MROIFPW</13JUH*:T)F[M1MBHP)_=_(QB6+8>^D&5>C:)IW/`0BWU*?Z$+E.T
M:(T01$3#P$Z:@]-6BWA[R,?N^:F]@];>DY8Y>I=^B<3>N%J5=W,@;S9&Q<.O
M]L,E_UBGH>4`<&LYDM<6[D<]O*>;;%R-!2HUY_,?S_,_X91^WCG!"G>8CD;K
MKF&[Z0?6:_>(DH=W#P].3KW0%#-WE`JZ5VJ[J&\3,FJT4G>)'>+(LJZMNJBN
MA%YV99VG/F)Y+9F4C-]'HV1@N_VW,2Y`7TDP0$`)*\BCA$;!MZ??E1]SP`#O
MACZK\;ROVG#+;/K0GJOM!\:'_"]*CP.0@+\+;*3ZV<&86YVG9(T>KUQT]OY"
MMR,$&+!;8`T[8J#YC!/2K+PI`A:$@?[R784>Q-_>I^I=<('ZY3N='2P=6=]1
M%AW[@PB(),(05HYWTF_"'&-D,77KE(XR;3#-RC\0K*J-_TMEAAVAMDX:@15K
M='*JIK2_`XF$;(DTCO%DQOX(;1ECC<()/V)S]%<IFN[:&AX`?I39'I&]09+1
M:%-]>`GJSQ!VA'2T8&.4T@GT3D%V[S=U/$Q9=6FX7SI:>A/D<[]TD[<)K'F_
M!2@;B)Y[0AH&5(^AN$`O*94J]D",(&7!(C`E=W*AD7EA2>"6`C@]VV2S`L,0
MYLJ"EG8-B;"W'O*DQ@JV%AS`>]3T!IAB&PBB&&@DZ>B*K8TGB<0\PG?2BVDB
M:,-@O*(T!;!*77BDY?([_+0G(#T96-(9;BRI3#2PHHB6CY?Z0[:[E2M$3JCD
MDVKGTG4Z56LA49AQHCN(;\`J.^YSSF.JU+$$C&RW%5I2)\\=<M25@JA?KLD4
M#\B`QK%K%]$4WPJP%XB]8Z3AO\:);835LJ)M[?Z"[9,I!;EZ=3IQM&J*>N#2
MQ!-U-YDFL6C7'3`.-;HUYTI"`:L$*#_)PE(B6#]B:#Y7`FF6J/?!/_]+W1+5
M=?;UX8O]E[_V]GXY.OZ[*WYW3D[V?SIXC<#U.7&/KHS7S%;\)G6Q?>6_1Y"X
ME+"7;Q>\C%2J9KL&*E6GY0#$W[$(_AG!.;8[&#.]*2$I)!M4J^1\C#==H`J$
M$@>_;&W)[\]1E<+'0:ZP5\01,3G@!G+*@*$(GXUO(@R'`4`"<[!H=:NR4./"
M'NA+ZXLL),5R=*<]MIKV$`0?IT%\S?SE[TXF+0)VF0SYR?QBF_9CK=%6M]U:
MHU,S6/YAK=D.U8?-3M-2^5'`#^)9?YJ<Q4YM+"D#%XT'IOI:,N?+^JQ"SZ/$
MOR:OWCP]C_&8(GMC-+M(4H;L`SX:C>(1YP+=CN?1#;#4[E.Y1H#E\NA8R=V=
MXY.]%TH10S/E>/-_XFE*=DB@WL[QSNGA,7D)4;'1>6]#.1#M.0CR$!]ZZ,,!
M-]$V/@/53D[('78^3BFE[Z5T(P@L"/02S]VQ85*`<=^R7\M4'>.[2T+5J/1H
M&%5]9OG'R`*Y[?>0L(*GL_GX95C<)1X;V`G;@2H0B?`1Y.51%_ZBUAAG"1W@
MN1.3,YWS7K"7LW1P2WJJWDX&SAQ8!)_49Q$]>S5^IUO)A,;HJU/:&OD&(68>
MX)(RPPR?T@/$9NC!T^M(@#@SJW*ZH!7X!=YPW-0%JH-0`G(&T\81`F:Y:IR!
M$,]%GT!.S=F(ED><Y`E$`\XJ5KJ'6B#>EDW<EDT3&XX"BT`YZ830=L(/8K/C
M0^*C[7:DI-YEGV/$YI_>@-@[H8F$90.59T8!Y`IFZ:7M4KZ&NX/VUC)"DN?L
M!<;7704!(0@JG7&8W`@A</7<D4.TQ!KYVR72)C-*&.0:!RE"6JGG!YLC!M\:
M6$@M/]J<?&CRG@]BBX2??%-JT<N+G^K-*879@IC3;T.)W.I4*_!G,]^XN2)W
MM>HMZ*T9NB9.%Z%09XHAL_O!78KDN=D")G.EIT18Z1&:Q9V+!^LIC','-AO#
MJ(\J*XW``$#G;D2V:O,9#$$J`G(#:\X)E1PQ)]!LMOAX/+-63U:)L+BP0`R1
MCI[&*QWBVT'A)W.%R0Q,F"2'=;:+GQ`&*6`=;;>/QN-4?1M[O!`:$SK#CA=&
M%,EN$J;PW/B.8'!L(,,Q6T`\)[])HK/N)*0;;&(GOWW[I]/'7,XSZ[4G_F_7
M.A5P+#<R]87^B!R[L9A2II[.B3IVE<C+2YE%PPS%B?B!,US;R!A&HPG<SJ9P
M]S8)4!B\3_E[U`Q1;3ESEG-:^>X7,I:M&TJH%.O3_5V#\76D9UG<8;:"0%BN
M!#5GTA`0(XG^:,'!:3*L7=Y$)5&:ZS99ABJWX!"4V,V"8<T@'QW+I,!)#P,,
M*V0[TZ8+9DW4T3SSDUK/TB%4@4/CV^4DG8)&M*V]Y;8-!P]$DA^Y&%\7T<S+
M6$#_(64QIT-[7G01+$NA$O`Y7BE%3"DM0V()S)W%(BZ6(>OH^'!W3]U9#G[J
M.=F>T,7YE1J'6F@R`9V1+@N\ETXIZ\'EG`F)/W4P]R0]AUY"U:S.XO-D[-^K
M>I8BG,/L;\6J>)T;#F8T-8218\UX@:1UCX"-X'_'*;"*C'=PKS]":Y3G[Z$U
M6JEF7_JDN:]2U6W"$55M.TI5"2\D4'0;-RE8VC!^6-W*-3SAKMIKXUF\7M;\
M@I,E^2IKI4L<;S[,T;!9<#2(!Y^/ALTECH;-58Z&P@Z+CX9-O74%?A\C.[$/
M%VV%I%\.J$6"=SDA"F('E/8MO&$MEQ*I"VU5U\).XYL$KX*1=$+#%H2@["M1
M%J@M8W)&24*#7(W.TO<QJS:=*J@V':F*DN5"3\:4.%"AUH58IEJW8<&>XT9.
M`"\A^9\X@,C]RZA_H28DA4=QGZD61GH0'*W:4Y*J-E$WGV$RBAF42CT\3LLV
MY[T@A2CH&?KVD.=Z/74W/SW]U?Z<[MF6.#5<QHJ5&0HEJ#L$W^6"$%X)!;F]
MHW2Q_`5V,H(^^DM5'CXL=[T*<93JS\Z*RUVOUIKP8+UJ6<KJ(>BE];#N6G*Q
M$WX<$Q5!?*@_."33%X:T]K9R^$"KO+%PE<V):/$,K"KP#8;Q^482L]*TRW?^
MNO<"+*P'9A)RB3T^_65[J;,HGP`DM7O`JD%)_C'@P"DF2%@'@H3-FB5P)8`;
M!`3$7^'6!3U%C&]BGG(T"BM7@+J!BO$'AX)()&4\4#*,KT"G\9)$T#1[='A$
MV4NV05)-'R"Y;^;3B*06V!;3";(Q=5!"<4V<&ZO_"]^6]:%[&0T(I@K`DP"+
M3"9@ZI<$Z*6<IU=3332$F4@T9:>SIV9YL-C*-%:CB*APF>Y"/$0S4V'O8._D
M=.\%STHF!353XZG&`;Y,!H,1CHL"[0DBC1S`LLS?B.:$UE;<I(I$*1LBT[$N
MB?I-0!D:ZP'GTIHSF,11!9>R)^M887A7G:B1,+'&J08/@H^<AYS2;?2\R>IP
MBV@0:P<%0+7LU*G7&J%BQUJK;EU1/S\[OGRU\],)1<J<)6!OATJ!^@TI`/["
MNPF$?TM#WX3!IL?$V@D3[!3Q[]VL:SJYBX=SV=<\OBP?>RS,S]?4[/8/"&9M
M_P!6T_2L5`H$@B56BP>^M5[;L\<F#)B4!--'?M(1J7Y6=Z@14$R"6@6NU6EZ
MD:N;&.P=*[_1O,M?]<9$J)1E-Z2N(?-`&]$_2Y85'W*@-/%`:3DG?*W5@FW=
MMBQ/ZL1\%9UQ):<9`PW8;@?0-AG8D*I.8=1J1+O.'*)4ZS&5PVZ$?6:,P+K8
MI&<@WLB3:E`8D@`POU.J.=B[JJ9E0@!P/=9QK::U;%-]3MLU?MXRCT"U"+3L
MHPD@P+L6&6+Z6(!B`%<3`8,W&G,>U2J0UF4JG-R3A,U6M0)_MFP2MMH-]6&[
M&KK&0P3$'(-'/`ZF<U(J]7M`W3>4@A^6<WKP,,M2OKI,UR)ZC`*\1*M[#:+F
M,IJ^(T4+"\^2"2::L6$C&1>I<NX-R2I=:U1(153ZU58E3QCV\\=7A[M_Z9V\
M.=H[EEY8"&/*,18'T`M`UT:4]E`(6FQ/:8XC;(PI'_-9/!J:P>:\3#*0]T^Q
MU&?.F#?L$N\$K6C)3V,T4TP#%@<E^8/H.KKUG**ZBCC>MQ"&C<2W%2CF6[.*
MU%/JRIA*-C<OU5LNHQ%9OWJ7:N[;^EM++<8;GZ45VXZFHF;E;=LD(P4M`,Y$
M![(1_M8%2W@LO`"9WF1U@S-X@<V-0MMF?(1+16=\/L<LZIIX+(%`E@A3VXSS
MSS9RVE7M6P8>AW1]1Z<@7ZNSNTI@5_JC.!I?3=1#D(8I&Y%#:+6[$/(@*$G'
M\:$K)80J2K-%\SPE=%?NQ3?QG8W2_KO9`\D@N!,VVW5;!K6K<.ULAW9(17!Y
MR\[<T6TO.@/<TU)8J['H,%I6J(%4`WM_S%D)BGS%Q+'A@7%<RL8SX2V3M&,?
MSR\6(37>%<4&`\JJX8>7-/6B8N$9T\#%JZWBH!N[^]$]J5S3\AU,[MYLCV,P
MMY`LX^S=K1PM2=O(.):V8M@D'FO-B/C`99V*V)`0^3$=GT,P9_I4GC^E&(LQ
M)P4!=)P12UB;`$9E<N/':7`)+HS[LF`;6;!;<QV\?0[8SUJKC',:ZB2ZACG[
M+-O45J"//LDV5S[)-AVCYWU/LLU53K+-CSW)`E._:"5OJ]*]0-@/,'.J!^!G
MO`DT[94:"$;NXN_E0MH&#`?UIP=F=W\FL.=FR?M/-9M[[H56&Y:AU0D=,^E+
MT*JET"<KX@/,(7RG`WXRK,O/GBC-MG^A;JB$-095=/H1&H>ICXGBP&A,!>QX
M)?2>)W.K?P-S3>]WP7V8"I'YVHA\>W]M9--L^T!SLWNWTY/MR3H`24+;Y-JI
MPKVJ$U;S3:XKTK,=(EN'VL]"=51M<W%V8U.>1*Z%!><(-H%0#"R6825@F'(G
MYBXZPTC^&$&]U>$'=V2KG]K"?M#\ZEM\H(0/()%IBX\5=:@4(BN@,9IJW^5\
MEH.4L5T4K<F74-S\$JF9-Y8'"]=DVM>[0/M&09U7IKU2-"[2@83G$IT[#7RR
M737[%D.W&/"M``Z)(.D0*&P1#%U&4N6AJV5P)Y;(\J?^39%=^''4O-DL!CW/
MKD(B+W-85BE\K;H5-.8>F0S_EALPID_+8XJ'0#$'Z[()WD?4]NS#DEPJ.N*.
ME;VI@,!!X,MMX)371E&%[9<@B/1R-TU$;!6MLIMMH1?:SCYD5+<EAT8GGQZ@
MB3E<;J1%%1P>?)R(</W1PSS9.RVJS9LSTDIVG";*[J>#-[V;:3Q$'9SK>)5^
M/CPY[;U5;U#ZT&DY?PZ424*C7NH!!^:3@\#J70`6J7?ML/0O+1&<JN(9,?"E
M1,"7)M>^4B!NMH+^Y!D(]-K3_C?/[__SS;$Z#<'2MA4\B\_[LV=]=02FXV?]
M]S/X=$8?GO?[S\Q[*^^_4>>>6GB`:5)'X/L$(!^"\&G8:GTS2(;#8+,?;$Z"
MS2E^%,APX03BW]?";K?S+*P]J[:#L+%5JVXUFVO4`7"EWRJL![5PJU;;"CN9
MPVZ0<M%XK&)@(<32D=?HU#N5!AR5^L!33XS3,=]V[:<X[(",CNEH@.5.U-\4
ME/'=.+[&3^`7SMNR0H/H6TFZ51?D7@+`])#S.>41DIG)%+47?'K=`46'!'D]
MH+CR.]"CH(AF,U>]E3_'7#%DA&:H=^TGF:/9`:/XY@OP/[ZUD/N[H<_\W3"@
M@0(CXF\.WS>WJHJC6VOX*-#/;:*9OE;-,+V5@32-!U?]N->_G$`DXNEA";*>
M@B<5_!+?W&E4.EUC-E/_[%:%0ZR.YND[*'"4V\\3$KL::XM_V;"Q_TAM[QF5
MOI<.>YYWA'MFG&JHW0`<25\^T6<B^!`22'2-D#2D4?]2T=HV*-GIF("CT^EM
M`/&AQJ_[%\`V5TKU)44,*L7K%QNO[@J4[TNJ!@_)RI1XFV.@1-#-Y#*V.-0N
M-%"OU2KUNE5FX`R3!`5N_VJXT:PHBHZ9^]4'_Z7^M='\NSI='O^M^IC]4-X+
MGN-K[3>J![E:SR)(+*^?;!"?>P[CEDW/%/7Z[V9*0J@C9GQ.`2S2!(XWN"BG
MTVAZZUQ#K>)!RP]'+4`R&BA2SWNUH%05"+5,-X[2MT0W=@J(IY0YY5W]OBJ!
M^)>0R#.K&_<+]4[O4=>B(ZNH\8;KM;IB#$N=^BR,<;K_>L_12/=??SFV6'8P
M"YG"[^3E_JL]*I&3Z0B4QJ^=-7SQ0@&#;G\<%M>H=2N->M,V,QL:7<31`,[*
MY#)V+\004R$?*\T8V&5Z-:9/'.*`AJRTSMZN4D%?';Y=(%0N``?9'B+>N?2+
M7'!#MDPUZJ$:?,<VCW[2P1?P6M[0F4T*A^^3"`-T^O,>(H<.H8)-,AZF.G@Q
M!"M,V&AF,971I`=OA_:RS>3?O)4S1XOK]>8Y6P\5"4G]'E:S]&`QCN=YSI(5
M/G$U!N_)V'_HY_V??O:>$NB_!N3<-SI90.-/L@3%(N$++4)&+X-9*845BWG[
M;#-1RF(EH/(`Q$!=P(/NNIAHA(>LF@8[IZ?'^S^^.=WKO3EX<[+W@IXU83S8
M,AD4+299H`_?'._NX4)!527U:EY5"OVYF[N20=F*F,E"V&*?^G)@"I4A".S+
M'?7NPX-7OVJDVD6$8);J`B1KM^OX5[[0HA3SV^=<ECPF4_TOQV.U$+)2:Z&-
M1!!V(0W:TE!8L:X*^-^_*<W>9$.@$7J.`3V"#3Y/30H3%0")?7L^64/S,_&O
M+](9TI.Q0:GW"_1Q@EL;O%N(4KXO'FSWJJ'^M<1EHS1)Q,D=Y-\X@DD"?FT*
M1$%*<B:[#II!,39)-G]@]PWW)]CP&[FA`^/,A-'&3]B67GK=I=1N-8EH%!>`
MT2F8D0$`,.`+"H#$T\N(W24,)&0"#F6J5N(=.DS,:TT\@&3L/U>KWG^'-@$3
M+B)?EJR);YOT1OK6R4>$"CV9IZ6A7J9A'(-^!E5BL6NEP58"^(6T86A"7BJH
MBP(?<W`CQ<_91P,WD']2D]M;I:^"IFR!&3BF/VDV>A^-GLYYTY+6",3O4>&$
M$OQ>5OW3V)SY*T(?@><6O921YOR4G4&SN2[>Y\7-5`AGG=Q5MR9*`Z^E!ET"
MO))3+S;M:(]`7RG&EJM$6B,+[!C#S!D&#?7GH/Z'?EL\(?-:8J\?*.X#W(`4
M;LVY?##K"3DOMK@H%`.804(H[S->!@B.(DD^2"N2`FG@0#"M#S(4G_I($ZKI
M3"000:VYT;644TE"9)MCGY*Y%B05(LO5B,)48+V&L!7Q@:>W&#J<D:XH7TAT
M0FY*K:Y=W(.TY\H/5-CEX,F5,,&3.;D67.%B8C\/T\E,*GC/YA#*/(BC$<4U
MSR]H_T*UF;-HWK]P$0V%W8OYO2S(,R#O6P7.POQ9T0(T:Y!$Y912%,G'X!DR
M#T@O)B^\%^E-9/.V@P$D6DX.S:UM*!=>+88L(^0=8@A:+IM)F_?*.4HJ0M[U
M:_G:LFW.HFTNDDT::>DV-\+-KQE!D5J.L%O'![1:;%4ZR$C%N2T4I1@"5*C7
M._L9ELL&%"LZ2%"4J4TQNQWWK3H(A7>?;0.\/[*2">X:B;3*2JAY5D!EF[,:
M[[?%DE%LC)2'EC@&J"E5C,P7Z>EX59$NE<,7B/3UY4^?.7*/PX'%A\'<.PNT
MM\JR[HX507E=-@4RK=8!`==U(K@?>'\OHZ;-RTL-V1=</)`>-+/Z8M$%MXA:
MUZIWY$O@0HF=0`Q_P7=E#YU0RH\N)\8L;8(3/Y<.OA3)H*4>40NL3'<(/7Q2
M#4R]?(Q3YXQ-R*NJMO+/A(5+6P_AT7HC:_;0.^_77_=>'YW^2B^'V;%@9.\\
MBCA$B9,%\7S`?D36RLNKGW36;#-86^:8D&>7/2KRWFL?!Z+I:D57&NGCP-)U
M]<!]>>JHN])J"5EGFBXE>))*D#>?8N'C*Z(2W:;/LNQ9F7<*Y*BIA:=`CJ*Z
M;KV5"[?@K\6GF+9AU4,(ZZTULS:L9?@Y,\UE)%["#RX_4G^'(KM<76[AEJPU
MU6Y6?[0M7#-"*4EFBXRJV)`,&+G>AHSUA!$4CK$&A=3YL1E+5[.S#;T;SZV1
M;-KV5]0T[F>/EH.J^"4TR\RC^<;[-=<4K;LDL5EK=&L5]8>V=_[!%WIYV_EG
M6^:<ZXF],.BDKDBV+X*IL*5+G?B=2JW;Z#@1R2_2X"]I/$[.N7H\IHX;=`Y0
MM0%12&=H(&@URD9^0"R05FT3S'E2RUYV[V,P%`1+E6`><U@@7`M`**\G`X`X
M5K,]'Z5GT0@-B>6LA)1<+<HPT6C>!/484X;N$*LM<S\8CU4Q::]P6W5G_M3!
M@`4#*7W>4[T#>JD2:V!CDA4&7`!<7%NVRJH>QP+81.IOPF"EVH(GA97R\FZQ
MT.`DUJ@_C+^+`2G5OV,<)&RU;JU;`30.)T/T#T7.CR2BH9Q-S@P15R+A9R.=
MOWV]Z![4W"3")QU(*$78[E3J8=<R-+"64A!BB8^:LY<:YWBVV:YM!?.IVR)A
M7*E5+OU2#OZ&J_D[_QT@>J7Z?%M_@/WK^LE<Z`_]Z#@@C(.7;[FH'WY+AOV_
M:1)*[(KT3)=/1>K"TPXGR=O/:^=X:!:T@[#)DR/P-F3:_@D+2JH'A#'>)IBW
M0;GI`8+-7T`$_?C?W3H:&C2>T/CH,'+7.[<-!T>$K;8BM0'I_I2DSHN:T16R
M:"DRDG?N#L4=A6VC^6BF@,-8<X-CBO"&6D"]NX:<_]@G'OSGXZ*,@G!U.2$%
M"DT'LWG2-X$4[7JMHO[0.D$>_@&Z%9]#,BAESH^U@6`9U0Z6X-X:+/PLTJRP
MR5"=<>,YE'6?*XUO6@D>_6U,:_"W\2/>7HUVK0D3UB:=SS7AE33)!YGN:GS0
M#-6R-/4%B=X`8>Z,?0%KLHWK07^Z6\H-%Z(\+K'`P"AY=?*JH&)C*I.Z/)M8
MR%6L=J%7@BC<:,!4J@XVUI>?2CX#%$S$IQT97<$N,YE&YY=14)J80,M&IU&#
MJ.9.UN"D\?'6P9@'H:OTH&(6?8]^9*4A:(FY9/##,D$J5G086@N>7$;J_F\;
M;ISVFK_AQV\*OR*46,^);RTY[62K=^I-6)9:UF[Q,,M"T5+%(1!?Z^*LR%SM
MMEI%X^/Z4S($O6CGS>DA`@_O`9P<W5B7'4LFBHF?+KKL._%.TK(XVDLZS`L9
MT0X`_WN)7M*(E\8SQ#6C.`4-.:NMI*5:&.&LKV5-%H5_?=)569&ENHJENM7Z
M:O+*\<I]<:&50[3@WW,_W?IT`JX+;-C-"2Y\P'7\+%+N"Z^FR9OAR(?/GCG#
M[RW.'*LV,YECU:8$:N"VXM]-!DTC",,M3!Y;HPZ`:?Q6)HFFG=G%\>5D?BM8
MRFQ$K+<JM88&^/@6+2G!]VAR_<%VLM".PXL)5*,^_HG_4A>6X[_L'>.S<%65
M1R'S),6$?@M+K^=`8+L/#,=/E0BJ!1JFDS^9V'5>W"[6I8N$WPG?6QA_O70R
MS[P'6(3Q*'I@2\Y\T)M%XUD/@`.Y'%SN\XBC=[/\8U=C_SUD]>/UYQW_K[?^
MIF#4?'K;0WRDKY@D_H[!""KR.;7JW4K+Q+[#$8WK$[+;U,::S5T(&-]L?CGO
MJ>\0Z@YZ6?N]&+@"JWG]N8Y)(G@.K/USP3MSUGD=^[_S27LPV)B.(YIPU_+\
M_$$FC'_90)!@XBSVHW]#9=M+N;B"7K+V-O=]]Q08WF2;1O,Q-/!Y$=J!YYI=
MH-5ZNU*K-K32I7?K%CQ>Y![G5_B@]'J&;N+^GT.^_L*<K3:4:`0?3F-,ZR'<
M&$#J-WTR#;\)O*"2+1)\U48(X]<Z]^<<?^U^X_<ID_,]S*^IYM<T`H.J"JS"
MF,&G9$P>3&[DRY^%P`[?PDFPPC8L[#E8HE=[/]S1T;;P4U>MMRGM\W6L=_#/
MH/89U_PK$'WNC"T`:.NG>`$RPO(!V"-SJ&=6C[9LO:Y.O'K=M;O9/Q_H&*3+
M\+0WB_^;^6QSM57?7&75B64L>&R`L^I#=+3$IJZ^[7EA.($1I@P)O$T7X6V)
M>2\UMC__62W'G^O^FZT[VOP+0!O`2PMO9[5&P[^=J8\"'"@*_+F-;-`-PA8@
M>E0!T0,>Q7O9/`_9H%[+<..2$9%D::FU*HUZUTV?$ZC-[\EY??H#>[%W@]\S
M7[[Y@9`+AJ4WYG@+&*!RS%6_=[]73//#UM;P>[C<*_4:$"^_/\5/!NG5V4CI
MS@@E3K6IX@'M<<I-B')*6PGJ-^`F!KF5<G5\)P<-47J;3O5V_'8^OHV6,!"[
M@&%[^FM=GNJ(RC)2NV=/@IWQ[?R"(GHC*'TU?CRW@=T0YBU3>!2JI.H]T8^G
M\RB!B`8`Y2R<-?R89#.T\C`-G6R_KY^&/U[-*\%O!6.AA_4[U<`>N[U_$K;X
MRHF=T=_S)XC[&AP^;0MF%::W,#_$]QU7':S0DKLRK_=>_PA^+=P^YD#6^T6O
M'&`%[N^\VO]/KG,]U\YW+%1?RCK0G?IOWTCY[*+7NV\3K-9Y.2\BC"BN%DH'
M-LC"+":[&@,\!4%V)@3`K2MEE?7&;((RCUQ6I?@%V8K>\[+SSKP&[C"LQMG8
M#9DB--#6^7T[V0R!7`AK#_,T\H&6Q]]P^*+UI&Z*6S>>9?(F+?S'BOW\V(1T
MY7.^D+UTJB8-U[;78*DZ.OW97V_\BF97+@<_6,NN#STRQF!Q<2GFA98O#5@F
MW")1&:$3E;$>9)-[R:$35&$M*8=:.WY@WS6M4BOWV'?\0>'6*^3]?V$ZWX_(
MB^F7-8^0Q<D/6RSA7V&%JGS5.*>CT6E7PF;8L-%?B9(8,H@EYX,P`!TP!8R5
M`4&D9\GP-#A\]4*7OY3E)9;$S-'":+?XV@H6+#_EXW`=)X+LYTRD-PE*,!)*
MREZW9*1\:B`!`)@X-<1S1@V%SCBDTE.M=.\9P6YK6%:45&8X7HQ57E.W<X=A
MO)T5VD&<[G3`B+O"5"3(Z]--`]ZPTA2@L->*TU![X^0T,P\70=P\4#"7@N;N
M=&`FJM&+O5\*Y^.JM&$#:A4TNMKVLF`WR4[)WTM+;(+L!G@(YE^)\9?DEL_(
M\$LS^SV&_HF8?"4&7X&Y[\O8_OEBTN2;M;HZ.PP27O\B5AJ#9E2"V)6E#G(9
M5>=TYX?:VQ-<`BV:@\[R56BUR;-!<8M[<GSP5$(&YXA1=Y*]*/T"=#VA(:;G
M5S,NXH0MKV92Z72-0NXY5R'2V!RZX].CE_NFI\$5E$T'%C*]82_YQ;-G)I(G
M;$*!E&:H':H?29OBE5NX9AN+R:JHR7V:BD!_N&7V]P5G9+BZG5J5$',QP&$%
MB)H]VCOU!F`%-@S$A-:Z;8D0XK:U([S5Y]FXED7PD-"'>QW-E\&@F2_H@^]V
MIA31@K869"!E.4H9:3<E%PRNC6I-K4+HAK0^S"K<;_[+S7S5.=^3991R46^T
M'="PG))'M7;-R?MY"W`B4%V.;#^CY%V<M5]I0]LO^N_?@Z=/GP8?MA_+"D,Y
MNO1J-+`+T@4O0K@I4;$.>@&4.HC&!0RB:TB^Q>H]C^?!=80(M)#``F:I"CY_
M;6IU`2J*@429)?,KNK"I*4E?HWC^>!:<)U2'_I)*Z7'Q!-[1`%MUH2X:Z5B2
MOK@\T32:>>@JZWJC9V$RK4+HOWU+M<_)$"://*H$R`W$W8VV(EBS99LX_Q`$
M>V!224>S]!ZDDDX^%<7\O3F?79W-YHR9/:=\NDI`(-G)V%1;#IJ->J/2;!B<
M\348$Y\98%J<S:=CC%0\/-K#JB.H0L*9V7MY>/QZYY3PX=?6\D+OK?-U6BY+
MRUGR/[%:E,(>RX%2`4ARD8A<8]XZ5>/?5/+H?3Q%%T\ZB3&$22WH<:RCFW0U
M$YBJ91+L8PUDH*!=[@3R?1@I1195M?`KWW$OSGP,&H$:%H8SIFI@HU21W%;"
M)>T9N^`KU9I?]1M[(Z+QJEE?SLN:@.3YPP:88O37G>/]G8-3[F!*6[?9"(&F
M-:T^?6TTO2<I[TW(^Y#Q$]/O'ANY65=$;^D#=JT8^V)J(LMQAFB,LSX%U[8V
ML^.%[OC-+A#U"&D.7Q/,"=)#^_6GZ3`!WWVO?S$]AY;;TN1\FK[K8709Y#P#
M,"#`=?7G-Y5`M_H@;[68[O`(6>C(YSH>`G:;3IQ.IQ4B[U_WCT_?J(,;A\R?
MO3S>5\O!L]BF0E9K+F!DCF<!M/-CS'YF''8H"J=F/3X?Q0.VO`+?(`Q</`6N
M&Z>ZU"0>-P"PR,4%)W$_40<-':/\-#(T!'^KG0!>MC/%@5!H<!H'/^T=],!.
M"Z(?'`WFDM0$Q&+U1P$6SO*,TZRV*TVX;"'C4-=M]5'#P.U3_0\G?U5#*]P!
M4DV;X>1D[_6/KSC+DR@RE=2'#X2SN)#C-HCC-N[FN(VE.&Y#7KP\QVT\`,?)
MN?Y!_W8VC:-WN.=\`EZ-D^&M(AU>.A7EB(#P+R1F!5((DOZ\@D1LMSJ=2KO5
M]8)>C%N9>.QX;_?P^`5*M"W=2">V'IT>O]Y[#4Z/'E2.)YL[$9H-*OECRCQ\
MP#(3G[?KQ]CCAH`3=7%5]+N,9N_*V@.CAV0N4>HQ#!BPAF^/*J2%=29DH&L]
M-R&."4[!JUD\R_4RE.EZUVZU6FI)VU[%Q(5+NF$^?W.`7L<_Z$I;'V6&]O#+
M;0<13>/XB\01X7N+$SUJF3R/6B"#?8*Q1/@[QPJ%SVKUH%K?"B&!8PT?IV@B
MN]'B@"+*:AU%$)#J)9A5L+0DB''UA1@S*V'32Q>G'K"**3_V2"K\JFM#;N8]
MHPR<</(]OV(>;`0-EEXYG>(-SNTQ"_3@=;6>WQ5B_KI=9;$EEAO5*#J+_:YV
M?MS[F*ZLRY:=*:QC`U;H"M*\8">Z74%RXO[N/I?,S>V/S*)$92='_H]*Y2!_
ME"[.Q?]*4F?L;"`#Z`4W]ALL(2`8A^#`:UL(AS,J3FM+>`;C(-']NWV2[1Z]
M>G,B!-C2)T3.U!`X1\V+V_9.=@^/_,79:%CZ3DX?B*9C]9%'J[OZP`ISCRI.
M!;_B#EC5PIV$"V5%RC[$0FGD!QX=UYI^9$4.>4VPFIXZSGM'Q^IR_3)_0;_2
M931G-MPI^N^^P*$M+UYP:G>RQW8GT`/&>Q+_PREQ!L?V5H-.[@YR3*:9.;M;
MF1T+E=![T6``4%W1V4BMM-+`-"I$M]+HF(02N4;AXN^<O.Z]/=X_/=U3)+BQ
M\[_9:'%\^LI\P?80`/L%M$9TM,,5-1EQ:2-UV:D6'Z8WZ)FHB@6'J%LM;[LC
M>O'B>._D9.?'5_P$>UDITYGFTK(<()]X+CH-"'Z\R%'<-'#5NBE_W)Q\,O9[
M'!,O06'J;ZP?B#>N6KU9:==,YM::T8;AO.CEW".O+Z+YC'N+$7$-AGD=3<<8
M'?YH&@_5G7_<1WLT^-U'A#DF3SPR$[&"(?-]__Z[Z/[T<N]X[V"7VG!@/_Z`
M53!@],:=T_W=S/->XR6<T/X`_-<Q(O&/KW+>1@O3G_1X;7K1W%\>4B+>1],$
M=]AOW[YX;-:I$G@=ZG7#S`5"4&U#UFZ[9LI._M$I6+`=%E-RO70GV;'U/_\9
M+*38)R?9BKNST5:T]<6LM]C>&T$<_G7G6&<HN@N;RP#&O?#QF\+;$@LHL<+F
M067%(P:?2&`E_PA2B,U*-D^C`POLR?Y/N\#+,_@J[+TL<W_*)65M:JZ.O]E5
M,H^?G6]L/$U'@\U!_(\(_W$6C_\172;C9^J*4JT_W?V\VM8*`RM.Q\HD8P4R
M%U3$Z'=2L*K=9V$3@#(:]:T&)F21%F:WL96P1K;`\N3J3-V_*">P4]>E9'/2
M=,(J58M-?A!L_5^&Z=4T^/W9LV#O^/CP.-@,GG)&AVJFVF\'V:\XFZ<L,1T(
MJ5+0%DOW:3V*1L?[Z'./SAO/$HQX=3Y[UJU6FV'8J]:^)D;T!E9\+8#_,A<#
M^"^PYP6,8_T;F*[]K*KXKAM4VUOUYE987Y/.@(Q>6X]!NSZ#$F-6PHYU1"FZ
M]8?35)&Q]K0:3"CP']U',.^G9+@%`'7\HQK\3G\3-&VOJFBX9I'^&ZY,@4Q#
M?U4E:E&]`A_=5L>[_<BZ\`HG.9E<5'HCU[1F/RBV1#ZM;FT5/A'\[KP"61[F
M;4Z.^\][V;DN,\'`7<-[37;%_?15"79O8/?93W5O/]57V$^^P%>7\^Y6/2/P
ML?]6)6RY^^E=?'N=3@>SK8"`G(<"5TU!I(C&SD7EL4K=R(0,!!##1KQ'LIB(
M#VQTQS8++=8S#RVWSZA]\*1@HX4YO">/3/*V&BZ)L]4^P9(LO09+3?S.#;C2
M(MR]!5-(NWJFYAH^^/;C3FES',@_@56?#>+WS\97H]':B5(E7\3](&@&M>I6
MO;I5K0?`\$@^>F+MY&J,;=0&".MTH%";O%U0M:IF5AH,JKL!J_HC8LI30-PH
M&;_;(M\[ZA?;_,L_MJ5P)5+SA.M,PE<2I5,J(R*!#G_FNH!8L(<+]6F_?J"Y
M#'K8UU4512/1CR,8[(EJ$0PC=3/>#G05S$"ZA![>011KJ5ZFS^`E'[A/^SW_
MX4[B=(5)_"-W$OG#/54ONGNX_Y$[7/@6(.]*95W+\R284;O9TV&)'^'K;2UX
MHI9W@ZBSS(6!F)J"=%L/SM>F7V%M\\D*W*T?N@>#2PD<6M%A"9G9K"ESP*XF
MG&9V^%&7O3*@%Y9"1=D/5@LD-?Q#4Y4[>F&QBM79V@OIJ6;U)$W.L3<F9;(=
MF.\_!`.])0)#[L'3<V&`@%M_"/JZ);?J"YLPF^9S%5S*AZ4J&I!J;BE88O3E
MV4E"X[H/SE!VS\)2]F<K,)7UV#W8JJ[EII$AP?\[!4)^V'8V,0)[\&(/TY3"
M0$Z#N:Y82DQ)Y#R+IKI!S6Y!>`[NIA^RX'#).Q2Y];O=MIK7D#OUVX9W\@PW
M/+?8ZVX>F<R?45Q;O?$5Z;'.J(J5V(P"&UAS`>XP_V1UM/I,<5VUMM54-SQ4
M7>G`]IM9M\!F-9?OPHJV4^:>T>OP<7R#16<ESAPJ/&X&O[S<V7\5/-E4_VGU
M[E3N3>BLO,9^AE$R`CE`2MO6EF)3B"A49]AU-(6U@EQR74"%^K&KNTRB/GJ<
MIZ83Q<C9>'1.5N(MI!VL*\WJJYK(4DQ_-58\]/"ZH^Y6Y*'^8`5A*,\XDK"A
M[D];S=:2DE"NZHLT2'Q-\&8<_$XGHM;)>#VU-:O"JWY:T_:L$[@KX`-^:[O)
M]V_&%?7![T4]6VUK?G?V=ZJ?!;WDCZ^^H,,Z#`P@<TRGGJX(@U<-J-&,54L8
M"7Z`JD5-/JQ;+>O+GLV*!=5U[?;A.5!Z%0:4?Z_`?_S(/=BOUK7UNT3JAEOD
M,&E%ZD/Z]67`1YF8@6%Y7Y:T:D87$_]Y1?.7I9??J[_+HI$576[H,TN=5_][
LB115ORBI9)VE]'$PY(?EG[72,/2.>_M<!CREC8)C.=$ESO\_-"Z%Y_^^`0``
`
end



More information about the Gcc-patches mailing list