Changeset 0fa62f in git


Ignore:
Timestamp:
Oct 7, 2016, 10:20:58 AM (8 years ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', '4fa496c5b814dbde0a905c54f0796301d03f6dc9')
Children:
107bdc5cb617a8af58b0d4c34b1fd7e42f7a2fa4
Parents:
b61d2e9bb22594df3a38d0289c0394fb3c0683011a1f641d3e9b970ced306a8921f38fdfc08a06ac
git-author:
Hans Schoenemann <hannes@mathematik.uni-kl.de>2016-10-07 10:20:58+02:00
git-committer:
GitHub <noreply@github.com>2016-10-07 10:20:58+02:00
Message:
Merge pull request #798 from markwig/spielwiese

Sortierung der Zweige in alexpoly korrigiert - wirkt sich auf alle Programme aus
Files:
3 added
11 edited

Legend:

Unmodified
Added
Removed
  • Singular/LIB/alexpoly.lib

    rb61d2e9 r0fa62f  
    125125  intmat helpmati,helpmatii;
    126126  intvec helpvec;
     127  int inputispoly=0;
    127128  /////////////////////////////////////////////////////////////////////////////////
    128129  // Decide, which kind of input we have, and define the contact matrix
     
    142143    */
    143144    list I@N@V=invariants(INPUT);
     145    inputispoly=1;
    144146  }
    145147  else
     
    313315  }
    314316  /////////////////////////////////////////////////////////////////////////////////////
    315   // Sort the branches in such a way, that in the blowing up procedure whenever to branches
     317  // Sort the branches in such a way, that in the blowing up procedure whenever two branches
    316318  // C_i and C_j have contact k (i.e. after k steps they are separated) and one of the following
    317319  // situations occurs:
     
    359361  int n_i,n_j;
    360362  int bad_contact;
     363  list newpos;  // when reordering the branches, here we save the new order of the old branches
     364  for (ii=1;ii<=r;ii++)
     365  {
     366    newpos[ii]=ii;
     367  }
    361368  while (i<r)
    362369  {
     
    412419      bad_contact=1;
    413420      // Move the graph (etc.) of C_j into the position i.
     421      newpos=insert(newpos,newpos[j],i-1);
     422      newpos=delete(newpos,j+1);
     423      // BE AWARE: after this reordering the graphs do not have the correct weight for the
     424      //           strict transform any more; this will be adjusted further down 
    414425      graphs=insert(graphs,graphs[j],i-1);
    415426      graphs=delete(graphs,j+1);
     
    429440      i=i+1;
    430441    }
     442  }
     443  // Here we adjust the weights of the strict transforms in the graphs!!!
     444  for (i=1;i<=size(graphs);i++)
     445  {
     446    graphs[i][nrows(graphs[i]),ncols(graphs[i])]=-i;
    431447  }
    432448  /////////////////////////////////////////////////////////////////////////////////////
     
    559575    }
    560576  }
    561   list result=rgraph,rtm,rmt;
    562   return(result);
     577  if (inputispoly==1) // if the input was a polynomial the ordering of the branches is fine
     578  {
     579    list result=rgraph,rtm,rmt;
     580    return(result);
     581  }
     582  else // reorder the branches according to the ordering of the input
     583  {
     584    // reordered total multiplicities, multiplicities and resolution graph
     585    intmat rtmro[nrows(rtm)][ncols(rtm)];
     586    intmat rmtro[nrows(rmt)][ncols(rmt)];
     587    intmat rgraphro=rgraph;
     588    for (i=1;i<=r;i++)
     589    {
     590      rtmro[1..nrows(rtm),newpos[i]]=rtm[1..nrows(rtm),i];
     591      rmtro[1..nrows(rmt),newpos[i]]=rmt[1..nrows(rmt),i];
     592      for (j=1;j<=nrows(rgraph);j++)
     593      {
     594        if (rgraph[j,j]==-i)
     595        {
     596          rgraphro[j,j]=-newpos[i];
     597        }
     598      }
     599    }
     600    list result=rgraphro,rtmro,rmtro;
     601    return(result);
     602  }
    563603}
    564604example
     
    835875    intmat intersecmult=I@N@V[size(I@N@V)][2];   // intersection multiplicities
    836876    for(i=1;i<=n;i++)
    837         {
    838           conductor[i]=I@N@V[i][5];
     877    {
     878      conductor[i]=I@N@V[i][5];
    839879      charexp[i]=I@N@V[i][1];
    840         }
     880    }
    841881  }
    842882  /////////////////////////////////////////////////////////////////////////////////////
     
    848888  {
    849889    for(j=1;j<=size(conductor);j++)
    850         {
    851           conductor[i]=conductor[i]+intersecmult[i,j];
    852         }
     890    {
     891      conductor[i]=conductor[i]+intersecmult[i,j];
     892    }
    853893  }
    854894  /////////////////////////////////////////////////////////////////////////////////////
  • Singular/LIB/grobcov.lib

    r1a1f641 r0fa62f  
    11//
    2 version="version grobcov.lib 4.0.2.0 Jul_2015 "; // $Id$
    3            // version L;  July_2015;
     2version="version grobcov.lib 4.0.3.3 Oct_2016 "; // $Id$
     3           // version M;  October_2016;
    44category="General purpose";
    55info="
    6 LIBRARY:  grobcov.lib   Groebner Cover for parametric ideals.
     6LIBRARY:  grobcovM.lib  Groebner Cover for parametric ideals.
    77
    88          Comprehensive Groebner Systems, Groebner Cover, Canonical Forms,
     
    1616          (http://www-ma2.upc.edu/~montes/).
    1717
    18 AUTHORS:  Antonio Montes , Hans Schoenemann.
     18IMPORTANT: The book,  not yet published:
     19
     20             A. Montes.
     21             \"Discussing Parametric Polynomial Systems: The Groebner Cover\"
     22
     23             can be used as a user manual of all the routines included in this library.
     24             It defines and proves all the theoretic results used here, and
     25             shows examples of all the routines.
     26
     27             I expect that it will be published soon.
     28
     29AUTHORS:  Antonio Montes (Universitat Politecnica de Catalunya),
     30          Hans Schoenemann (Technische Universitaet Kaiserslautern).
    1931
    2032OVERVIEW:
    2133            In 2010, the library was designed to contain Montes-Wibmer's
    22             algorithms for compute the canonical Groebner Cover of a
     34            algorithms for computing the canonical Groebner Cover of a
    2335            parametric ideal as described in the paper:
    2436
     
    2739            Journal of Symbolic Computation 45 (2010) 1391-1425.
    2840
    29             The central routine is grobcov. Given a parametric
    30             ideal, grobcov outputs its Canonical Groebner Cover, consisting
     41            The central routine is grobcov. Given a parametri ideal,
     42            grobcov outputs its Canonical Groebner Cover, consisting
    3143            of a set of pairs of (basis, segment). The basis (after
    3244            normalization) is the reduced Groebner basis for each point
     
    4557            reduced Comprehensive Groebner System with constant lpp.
    4658            For this purpose, in this library, the implemented algorithm is
    47             Kapur-Sun-Wang algorithm, because it is the most efficient
    48             algorithm known for this purpose.
     59            Kapur-Sun-Wang algorithm, because it is actually the most
     60            efficient algorithm known for this purpose.
    4961
    5062            D. Kapur, Y. Sun, and D.K. Wang.
     
    5971            union of locally closed sets. It is used in the new version for the
    6072            computation of loci and envelops. It determines the canonical locally closed
    61             level sets of a constructuble. They will be described in a forthcoming paper:
     73            level sets of a constructuble. It is described in:
    6274
    6375             J.M. Brunat, A. Montes,
    6476            \"Computing the canonical representation of constructible sets\".
    65             Submited to Mathematics in Computer Science. July 2015.
     77            Math.  Comput. Sci. (2016) 19: 165-178.
    6678
    6779            A new set of routines (locus, locusdg, locusto) has been included to
     
    7385            Computer-Aided Design 56 (2014) 22-33.
    7486
    75             Recently also routines for computing the envelop of a family
    76             of curves (enverlop, envelopdg), to be used in Dynamic Geometry,
    77             has been included and will be described in a forthcoming paper:
    78 
    79              Abanades, Botana, Montes, Recio:
    80              \''Envelops in Dynamic Geometry using the Groebner cover\''.
    81 
    82 
    83             This version was finished on 31/07/2015
     87            Recently also routines for computing the generalized envelop of a family
     88            of hyper-surfaces (envelop), to be used in Dynamic Geometry,
     89            has been included and is described in the book (not yet published
     90
     91             A. Montes.
     92             \"Discussing Parametric Polynomial Systems: The Groebner Cover\"
     93
     94            This version was finished on 31/010/2016
     95
    8496
    8597NOTATIONS: All given and determined polynomials and ideals are in the
     
    94106
    95107PROCEDURES:
     108setglobalrings();  Generates the global rings @R, @P and @RP that are
     109              respectively the rings Q[a][x], Q[a], Q[x,a].
     110              It is called inside each of the fundamental routines of the
     111              library: grobcov, cgsdr, locus, locusdg and killed before
     112              the output.
     113
     114              If the user want to call the routines Prep or Crep on a
     115              parametric ideal Q[a][x] for locally closed sets on Q[a],
     116              setglobalrings must be called previously.
     117              In the actual version, after the call of setglobalrings on
     118              Q[a][x], the public names of the defined ideals generated by
     119              setglobalrings are Grobcov::@R, Grobcov::@P,  Grobcov::@RP.
     120
    96121grobcov(F);  Is the basic routine giving the canonical
    97122             Groebner Cover of the parametric ideal F.
     
    103128             reduced Comprehensive Groebner System that
    104129             is used in grobcov, that can also be used
    105              independently if only the CGS is required.
     130             independently if only a CGS is required.
    106131             It is a more efficient routine than buildtree
    107132             (the own routine of 2010 that is no more used).
    108              Now, KSW algorithm is used.
     133             Now, Kapur-Sun-Wang (KSW) algorithm is used.
    109134
    110135pdivi(f,F); Performs a pseudodivision of a parametric polynomial
    111136             by a parametric ideal.
    112137
     138
    113139pnormalf(f,E,N);   Reduces a parametric polynomial f over V(E) \ V(N)
    114              ( E is the null ideal and N the non-null ideal )
     140             (E is the null ideal and N the non-null ideal )
    115141             over the parameters.
    116142
    117143Crep(N,M);  Computes the canonical C-representation of V(N) \ V(M).
     144              If the user want to call the routines Crep on a parametric
     145              ideal Q[a][x] for locally closed sets on Q[a], setglobalrings()
     146              must be called previously.
     147              In the actual version, after the call of setglobalrings on
     148              Q[a][x], the public names of the defined ideals generated by
     149              setglobalrings are Grobcov::@R, Grobcov::@P,  Grobcov::@RP.
    118150
    119151Prep(N,M);  Computes the canonical P-representation of V(N) \ V(M).
     152              If the user want to call the routines Prep on a parametric
     153              ideal Q[a][x] for locally closed sets on Q[a], setglobalrings()
     154              must be called previously.
     155              In the actual version, after the call of setglobalrings on
     156              Q[a][x], the public names of the defined ideals generated by
     157              setglobalrings are Grobcov::@R, Grobcov::@P,  Grobcov::@RP.
    120158
    121159PtoCrep(L)  Starting from the canonical Prep of a locally closed set
     
    128166             full representation of the bases. With the default
    129167             option ('ext',0) only the generic representation of
    130              the bases are computed, and one can obtain the full
     168             the bases is computed, and one can obtain the full
    131169             representation using extend.
    132170
    133 ConsLevels(L); Given a list L of locally closed sets, it returns the canonical levels
    134              of the constructible set of the union of them, as well as the levels
    135              of the complement. It is described in the paper
     171ConsLevels(L); Given a list L of locally closed sets, it returns the closures of the canonical
     172             levels of the constructible set and its complements of the union of them.
     173             It is described in the paper
    136174
    137175             J.M. Brunat, A. Montes,
    138176            \"Computing the canonical representation of constructible sets\".
    139             Submited to Mathematics in Computer Science. July 2015.
     177            Math.  Comput. Sci. (2016) 19: 165-178.
     178
     179ConsLevelsToLevels(L): Transforms the output of ConsLevels into the proper
     180             Levels of the constructible set.
    140181
    141182locus(G);    Special routine for determining the geometrical locus of points
     
    151192             Computer-Aided Design 56 (2014) 22-33.
    152193
    153              The components can be 'Normal', 'Special', 'Accumulation', 'Degenerate'.
    154              The output are the components is given in P-canonical form
     194             The components can be \"Normal\", \"Special\", \"Accumulation\", \"Degenerate\".
     195             The output are the components given in P-canonical form
    155196             It also detects automatically a possible point that is to be
    156              avoided by the mover, whose coordinates must be the last two
     197             avoided by the mover, whose coordinates must be the last
    157198             coordinates in the definition of the ring. If such a point is detected,
    158199             then it eliminates the segments of the grobcov depending on the
    159200             point that is to be avoided.
    160201
    161 locusdg(G);  Is a special routine that determines the  'Relevant' components
     202locusdg(G);  Is a special routine that determines the  \"Relevant\" components
    162203             of the locus in dynamic geometry. It is to be called to the output of locus
    163204             and selects from it the useful components.
    164205
    165 envelop(F,C); Special routine for determining the envelop of a family of curves
    166              F in Q[x,y][x_1,..xn] depending on a ideal of constraints C in Q[x_1,..,xn].
     206envelop(F,C); Special routine for determining the envelop of a family of hyper-surfaces
     207             F in Q[x1,..,xn][t1,..,tm] depending on a ideal of constraints C in Q[t1,..,tm].
    167208             It detemines the different components as well as its type:
    168              'Normal', 'Special', 'Accumulation', 'Degenerate'. And
    169              it also classifies the Special components, determining the
     209             \"Normal\", \"Special\", \"Accumulation\", \"Degenerate\". And
     210             it also classifies the \"Special\" components, determining the
    170211             zero dimensional antiimage of the component and verifying if
    171212             the component is a special curve of the family or not.
     
    173214             to obtain the complete result.
    174215             The taxonomy that it provides, as well as the algorithms involved
    175              will be described in a forthcoming paper:
    176 
    177              Abanades, Botana, Montes, Recio:
    178              \''Envelops in Dynamic Geometry using the Gr\"obner cover\''.
    179 
    180 envelopdg(ev); Is a special routine to determine the 'Relevant' components
    181              of the envelop of a family of curves to be used in Dynamic Geometry.
    182              It must be called to the output of envelop(F,C).
    183 
    184 locusto(L); Transforms the output of locus, locusdg, envelop and envelopdg
     216             are described in the book: (not yet published)
     217
     218             A. Montes.
     219             \"Discussing Parametric Polynomial Systems: The Groebner Cover\"
     220
     221locusto(L); Transforms the output of locus, locusdg, envelop
    185222             into a string that can be reed from different computational systems.
    186223
     224AssocTanToEnv(F,C,E); Having computed an envelop component E
     225             of a family of hyper-surfaces F, with constraints C,
     226             it returns the parameter values of the unique
     227             associated tangent hyper-surface of the family
     228             passing at one point of the envelop component E.
     229
     230FamElemsAtEnvCompPoints(F,C,E) Having computed the an envelop
     231             component E of a family of hyper-surfaces F, with constraints C,
     232             it returns the parameter values of all the hyper-surfaes of the family
     233             passing at one point of the envelop component E.
     234
     235discrim(f,x); Determines the factorized discriminant of a degree 2 polynomial
     236             in the variable x. The polynomial can be defined on any ring
     237             where x is a variable. The polynomial f can depend on parameters and variables
     238
     239WLemma(F,A); Given an ideal F in K[a][x] and a priime ideal A in K[a],
     240             it returns the list (lpp,B,S)  were B is the reduced Groebner basis
     241             of the specialized F over the segment computed in P-representation
     242             (or optionally in C-representation). The basis is given by I-regular
     243             functions.
    187244
    188245SEE ALSO: compregb_lib
     
    194251// ************ Begin of the grobcov library *********************
    195252
     253// Development of the library:
    196254// Library grobcov.lib
    197255// (Groebner Cover):
     
    200258// Uses buildtree for cgsdr
    201259// Final data: 3-7-2008
    202 // Release 2: (private)
     260// Release 2: (prived)
    203261// Initial data: 6-9-2009
    204262// Last version using buildtree for cgsdr
    205263// Final data: 25-10-2011
    206 // Release B: (private)
     264// Release B: (prived)
    207265// Initial data: 1-7-2012
    208266// Uses both buildtree and KSW for cgsdr
     
    213271// Final data: 21-11-2013
    214272// Release L: (public)
    215 // New routine ConsLevels: 10-7-2015
    216 // Updated locus: 10-7-2015 (uses Conslevels)
    217 // New routines for computing the envelop of a family of curves: 22-1-2015
    218 // Final data: 22-7-2015
     273// New routine ConsLevels: 25-1-2016
     274// Updated locus: 10-7-2015 (uses ConsLevels)
     275// Release M: (public)
     276// New routines for computing the envelop of a family of
     277//    hyper-surfaces and associated questions: 22-4-2016: 20-9-2016
     278// New routine WLemma for computing the result of
     279//    Wibmer's Lemma:  19-9-2016
     280// Final version October 2016
    219281
    220282//*************Auxiliary routines**************
     
    314376}
    315377
    316 
    317378// equalideals
    318379// Input: ideals F and G;
     
    325386  while ((i<=size(F)) and (t))
    326387  {
    327     if (F[i]!=G[i]){t=0;}
     388      if (F[i]!=G[i]){t=0;}
    328389    i++;
    329390  }
     
    372433  return(t);
    373434}
    374 
    375435
    376436// selectminideals
     
    404464  return(P);
    405465}
    406 
    407466
    408467// Auxiliary routine
     
    749808//}
    750809
    751 static proc setglobalrings()
    752 // "USAGE:   setglobalrings();
    753 //           No arguments
    754 // RETURN: After its call the rings Grobcov::@R=Q[a][x], Grobcov::@P=Q[a],
    755 //           Grobcov::@RP=Q[x,a] are defined as global variables.
    756 //           (a=parameters, x=variables)
    757 // NOTE: It is called internally by many basic routines of the
    758 //           library grobcov, cgsdr, extend, pdivi, pnormalf, locus, locusdg,
    759 //           envelop, envelopdg, and killed before the output.
    760 //           The user does not need to call it, except when it is interested
    761 //           in using some internal routine of the library that
    762 //           uses these rings.
    763 //           The basering R, must be of the form Q[a][x], (a=parameters,
    764 //           x=variables), and should be defined previously.
    765 // KEYWORDS: ring, rings
    766 // EXAMPLE:  setglobalrings; shows an example"
     810proc setglobalrings()
     811"USAGE:   setglobalrings();
     812          No arguments
     813RETURN: After its call the rings Grobcov::@R=Q[a][x], Grobcov::@P=Q[a],
     814          Grobcov::@RP=Q[x,a] are defined as global variables.
     815          (a=parameters, x=variables)
     816NOTE: It is called internally by many basic routines of the
     817          library grobcov, cgsdr, extend, pdivi, pnormalf, locus, locusdg,
     818          envelop, WLemma, and killed before the output.
     819          The user does not need to call it, except when it is interested
     820          in using some internal routine of the library that
     821          uses these rings.
     822          The basering R, must be of the form Q[a][x], (a=parameters,
     823          x=variables), and should be defined previously.
     824          When calling Prep or Crep of a locally closed set on a ring
     825          R[a][x], if setglobalrings() is called previously, then it is
     826          assumed that computing the P- or C-representation
     827          is considered for locally closed sets on Q[a].
     828KEYWORDS: ring; rings
     829EXAMPLE:  setglobalrings; shows an example"
    767830{
    768831  if (defined(@P))
     
    787850  setring(RR);
    788851};
    789 // example
    790 // {
    791 //   "EXAMPLE:"; echo = 2;
    792 //   ring R=(0,a,b),(x,y,z),dp;
    793 //   setglobalrings();
    794 //   " ";"R=";R;
    795 //   " ";"Grobcov::@R=";Grobcov::@R;
    796 //   " ";"Grobcov::@P=";Grobcov::@P;
    797 //   " ";"Grobcov::@RP=";Grobcov::@RP;
    798 //  " "; "ringlist(Grobcov::@R)=";  ringlist(Grobcov::@R);
    799 //  " "; "ringlist(Grobcov::@P)=";  ringlist(Grobcov::@P);
    800 //  " "; "ringlist(Grobcov::@RP)=";  ringlist(Grobcov::@RP);
    801 // }
     852example
     853{
     854  "EXAMPLE:"; echo = 2;
     855  ring R=(0,a,b),(x,y,z),dp;
     856  setglobalrings();
     857  R;
     858
     859  Grobcov::@R;
     860
     861  Grobcov::@P;
     862
     863  Grobcov::@RP;
     864
     865  ringlist(Grobcov::@R);
     866
     867  ringlist(Grobcov::@P);
     868
     869 ringlist(Grobcov::@RP);
     870}
    802871
    803872// cld : clears denominators of an ideal and normalizes to content 1
     
    859928          list (r,q,m) such that m*f=r+sum(q.G), and no lpp of a divisor
    860929          divides a pp of r.
    861 KEYWORDS: division, reduce
     930KEYWORDS: division; reduce
    862931EXAMPLE:  pdivi; shows an example"
    863932{
     
    919988  "EXAMPLE:"; echo = 2;
    920989  ring R=(0,a,b,c),(x,y),dp;
     990  // Divisor=";
    921991  poly f=(ab-ac)*xy+(ab)*x+(5c);
    922   // Divisor=";
    923   f;
     992  // Dividends=";
    924993  ideal F=ax+b,cy+a;
    925   // Dividends=";
    926   F;
    927   def r=pdivi(f,F);
    928994  // (Remainder, quotients, factor)=";
    929   r;
     995  def r=pdivi(f,F); r;
    930996  // Verifying the division:
    931997  r[3]*f-(r[2][1]*F[1]+r[2][2]*F[2]+r[1]);
     
    10911157NOTE: Should be called from ring Q[a][x].
    10921158          Ideals E and N must be given by polynomials in Q[a].
    1093 KEYWORDS: division, pdivi, reduce
     1159KEYWORDS: division; pdivi; reduce
    10941160EXAMPLE: pnormalf; shows an example"
    10951161{
     
    11141180example
    11151181{
    1116   "EXAMPLE:"; echo = 2;
     1182"EXAMPLE:"; echo = 2;
    11171183  ring R=(0,a,b,c),(x,y),dp;
    11181184  short=0;
     
    11201186  ideal E=(c-1);
    11211187  ideal N=a-b;
    1122 
    11231188  pnormalf(f,E,N);
    11241189}
     
    13901455//    the list (a,b) of the canonical ideals
    13911456//    the Crep of V(N) \ V(M)
    1392 // Assumed to be called in the ring @R
    1393 // Works on the ring @P
     1457// Assumed to be called in the ring @R or the ring @P or a ring ring Q[a]
    13941458proc Crep(ideal N, ideal M)
    13951459 "USAGE:  Crep(N,M);
    1396  Input: ideal N (null ideal) (not necessarily radical nor maximal)
    1397            ideal M (hole ideal) (not necessarily containing N)
     1460         ideal N (null ideal) (not necessarily radical nor maximal)
     1461          ideal M (hole ideal) (not necessarily containing N)
    13981462 RETURN:  The canonical C-representation of the locally closed set.
    13991463           [ P,Q ], a pair of radical ideals with P included in Q,
    14001464           representing the set V(P) \ V(Q) = V(N) \ V(M)
    14011465 NOTE:   Operates in a ring R=Q[a] (a=parameters)
    1402  KEYWORDS: locally closed set, canoncial form
     1466           If the user want to call the routine Crep on a parametric
     1467           ideal Q[a][x] for locally closed sets on Q[a], setglobalrings()
     1468           must be called previously.
     1469
     1470 KEYWORDS: locally closed set; canoncial form
    14031471 EXAMPLE:  Crep; shows an example"
     1472{
     1473  int te;
     1474  def RR=basering;
     1475  if(defined(@P)){te=1; setring(@P); ideal Np=imap(RR,N); ideal Mp=imap(RR,M);}
     1476  else {te=0; def Np=N; def Mp=M;}
     1477  def La=Crep0(Np,Mp);
     1478  if(size(La)==0)
     1479  {
     1480    if(te==1) {setring(RR); list LL;}
     1481    if(te==0){list LL;}
     1482    return(LL);
     1483  }
     1484  else
     1485  {
     1486    if(te==1) {setring(RR); def LL=imap(@P,La);}
     1487    if(te==0){def LL=La;}
     1488  return(LL);
     1489  }
     1490}
     1491example
     1492{
     1493  "EXAMPLE:"; echo = 2;
     1494  short=0;
     1495  ring R=0,(x,y,z),lp;
     1496  ideal E=x*(x^2+y^2+z^2-25)*(x+y);
     1497  ideal N=x*(x-3)*(x+y),(y-4)*(x+y);
     1498  Crep(E,N);
     1499}
     1500
     1501// Crep0
     1502// Computes the C-representation of V(N) \ V(M).
     1503// input:
     1504//    ideal N (null ideal) (not necessarily radical nor maximal)
     1505//    ideal M (hole ideal) (not necessarily containing N)
     1506// output:
     1507//    the list (a,b) of the canonical ideals
     1508//    the Crep0 of V(N) \ V(M)
     1509// Assumed to be called in a ring Q[x] (example @P)
     1510static proc Crep0(ideal N, ideal M)
    14041511{
    14051512  list l;
     
    14151522  ideal P=ideal(1);
    14161523  L=minGTZ(Np);
     1524  //"T_Np="; Np;
     1525  //"T_minGTZ(Np)="; L;
    14171526  for(i=1;i<=size(L);i++)
    14181527  {
     1528    L[i]=std(L[i]);
    14191529    if(idcontains(L[i],Q)==0)
    14201530    {
     
    14241534  P=std(P);
    14251535  Q=std(radical(Q+P));
     1536  if(equalideals(P,Q)){return(l);}
    14261537  list T=P,Q;
    14271538  return(T);
    14281539}
     1540
     1541// Prep
     1542// Computes the P-representation of V(N) \ V(M).
     1543// input:
     1544//    ideal N (null ideal) (not necessarily radical nor maximal)
     1545//    ideal M (hole ideal) (not necessarily containing N)
     1546// output:
     1547//    the ((p_1,(p_11,p_1k_1)),..,(p_r,(p_r1,p_rk_r)));
     1548//    the Prep of V(N) \ V(M)
     1549// Assumed to be called in the ring @R or the ring @P or a ring ring Q[a]
     1550proc Prep(ideal N, ideal M)
     1551 "USAGE:  Prep(N,M);
     1552          ideal N (null ideal) (not necessarily radical nor maximal)
     1553          ideal M (hole ideal) (not necessarily containing N)
     1554 RETURN: The canonical P-representation of the locally closed set V(N) \ V(M)
     1555           Output: [ Comp_1, .. , Comp_s ] where
     1556              Comp_i=[p_i,[p_i1,..,p_is_i]]
     1557 NOTE:   To be called from the ring @R or @P or a ring Q[a]
     1558           If the user want to call the routine Prep on a parametric
     1559           ideal Q[a][x] for locally closed sets on Q[a], setglobalrings()
     1560           must be called previously.
     1561 KEYWORDS: Locally closed set; Canoncial form
     1562 EXAMPLE:  Prep; shows an example"
     1563{
     1564  int te;
     1565  def RR=basering;
     1566  if(defined(@P)){te=1; setring(@P); ideal Np=imap(RR,N); ideal Mp=imap(RR,M);}
     1567  else {te=0; def Np=N; def Mp=M;}
     1568  def La=Prep0(Np,Mp);
     1569  if(te==1) {setring(RR); def LL=imap(@P,La);}
     1570  if(te==0){def LL=La;}
     1571  return(LL);
     1572}
    14291573example
    14301574{
    14311575  "EXAMPLE:"; echo = 2;
    1432   if(defined(Grobcov::@P)){kill Grobcov::@R; kill Grobcov::@P; kill Grobcov::@RP;}
     1576  short=0;
     1577  ring R=0,(x,y,z),lp;
     1578  ideal E=x*(x^2+y^2+z^2-25)*(x+y);
     1579  ideal N=x*(x-3)*(x+y),(y-4)*(x+y);
     1580  Prep(E,N);
     1581}
     1582
     1583// Prep0
     1584// Computes the P-representation of V(N) \ V(M).
     1585// input:
     1586//    ideal N (null ideal) (not necessarily radical nor maximal)
     1587//    ideal M (hole ideal) (not necessarily containing N)
     1588// output:
     1589//    the ((p_1,(p_11,p_1k_1)),..,(p_r,(p_r1,p_rk_r)));
     1590//    the Prep of V(N) \ V(M)
     1591// Assumed to be called in a ring Q[x] (example @P)
     1592static proc Prep0(ideal N, ideal M)
     1593{
     1594  int te;
     1595  if (N[1]==1)
     1596  {
     1597    return(list(list(ideal(1),list(ideal(1)))));
     1598  }
     1599  int i; int j; list L0;
     1600  list Ni=minGTZ(N);
     1601  list prep;
     1602  for(j=1;j<=size(Ni);j++)
     1603  {
     1604    option(redSB);
     1605    Ni[j]=std(Ni[j]);
     1606  }
     1607  list Mij;
     1608  for (i=1;i<=size(Ni);i++)
     1609  {
     1610    Mij=minGTZ(Ni[i]+M);
     1611    for(j=1;j<=size(Mij);j++)
     1612    {
     1613      option(redSB);
     1614      Mij[j]=std(Mij[j]);
     1615    }
     1616    if ((size(Mij)==1) and (equalideals(Ni[i],Mij[1])==1)){;}
     1617    else
     1618    {
     1619        prep[size(prep)+1]=list(Ni[i],Mij);
     1620    }
     1621  }
     1622  //"T_before="; prep;
     1623  if (size(prep)==0){prep=list(list(ideal(1),list(ideal(1))));}
     1624  //"T_Prep="; prep;
     1625  //def Lout=CompleteA(prep,prep);
     1626  //"T_Lout="; Lout;
     1627  return(prep);
     1628}
     1629
     1630// PtoCrep
     1631// Computes the C-representation from the P-representation.
     1632// input:
     1633//    list ((p_1,(p_11,p_1k_1)),..,(p_r,(p_r1,p_rk_r)));
     1634//         the P-representation of V(N) \ V(M)
     1635// output:
     1636//    list (ideal ida, ideal idb)
     1637//    the C-representaion of V(N) \ V(M) = V(ida) \ V(idb)
     1638// Assumed to be called in the ring @R of the ring @P or a ring Q[a]
     1639proc PtoCrep(list L)
     1640"USAGE: PtoCrep(L)
     1641          L: list  [ Comp_1, .. , Comp_s ] where
     1642          Comp_i=[p_i,[p_i1,..,p_is_i] ], is
     1643          the P-representation of a locally closed set V(N) \ V(M)
     1644 RETURN:  The canonical C-representation of the locally closed set
     1645          [ P,Q ], a pair of radical ideals with P included in Q,
     1646          representing the set V(P) \ V(Q)
     1647 NOTE: To be called from the ring @R or @P or a ring Q[a]
     1648 KEYWORDS: locally closed set; canoncial form
     1649 EXAMPLE:  PtoCrep; shows an example"
     1650{
     1651  int te;
     1652  def RR=basering;
     1653  if(defined(@P)){te=1; setring(@P); list Lp=imap(RR,L);}
     1654  else {te=0; def Lp=L;}
     1655  def La=PtoCrep0(Lp);
     1656  if(te==1) {setring(RR); def LL=imap(@P,La);}
     1657  if(te==0){def LL=La;}
     1658  return(LL);
     1659}
     1660example
     1661{
     1662 "EXAMPLE:"; echo = 2;
    14331663  ring R=0,(x,y,z),lp;
    14341664  short=0;
     
    14431673}
    14441674
    1445 // Prep
    1446 // Computes the P-representation of V(N) \ V(M).
    1447 // input:
    1448 //    ideal N (null ideal) (not necessarily radical nor maximal)
    1449 //    ideal M (hole ideal) (not necessarily containing N)
    1450 // output:
    1451 //    the ((p_1,(p_11,p_1k_1)),..,(p_r,(p_r1,p_rk_r)));
    1452 //    the Prep of V(N) \ V(M)
    1453 // Assumed to be called in the ring @R
    1454 // Works on the ring @P
    1455 proc Prep(ideal N, ideal M)
    1456  "USAGE:  Prep(N,M);
    1457  Input: ideal N (null ideal) (not necessarily radical nor maximal)
    1458            ideal M (hole ideal) (not necessarily containing N)
    1459  RETURN: The canonical P-representation of the locally closed set V(N) \ V(M)
    1460            Output: [ Comp_1, .. , Comp_s ] where
    1461               Comp_i=[p_i,[p_i1,..,p_is_i]]
    1462  NOTE:   Operates in a ring R=Q[a]  (a=parameters)
    1463  KEYWORDS: Locally closed set, Canoncial form
    1464  EXAMPLE:  Prep; shows an example"
    1465 {
    1466   int te;
    1467   if (N[1]==1)
    1468   {
    1469     return(list(list(ideal(1),list(ideal(1)))));
    1470   }
    1471   int i; int j; list L0;
    1472   list Ni=minGTZ(N);
    1473   list prep;
    1474   for(j=1;j<=size(Ni);j++)
    1475   {
    1476     option(redSB);
    1477     Ni[j]=std(Ni[j]);
    1478   }
    1479   list Mij;
    1480   for (i=1;i<=size(Ni);i++)
    1481   {
    1482     Mij=minGTZ(Ni[i]+M);
    1483     for(j=1;j<=size(Mij);j++)
    1484     {
    1485       option(redSB);
    1486       Mij[j]=std(Mij[j]);
    1487     }
    1488     if ((size(Mij)==1) and (equalideals(Ni[i],Mij[1])==1)){;}
    1489     else
    1490     {
    1491         prep[size(prep)+1]=list(Ni[i],Mij);
    1492     }
    1493   }
    1494   //"T_abans="; prep;
    1495   if (size(prep)==0){prep=list(list(ideal(1),list(ideal(1))));}
    1496   //"T_Prep="; prep;
    1497   //def Lout=CompleteA(prep,prep);
    1498   //"T_Lout="; Lout;
    1499   return(prep);
    1500 }
    1501 example
    1502 {
    1503   "EXAMPLE:"; echo = 2;
    1504   if(defined(Grobcov::@P)){kill Grobcov::@R; kill Grobcov::@P; kill Grobcov::@RP;}
    1505   short=0;
    1506   ring R=0,(x,y,z),lp;
    1507   ideal E=x*(x^2+y^2+z^2-25);
    1508   ideal N=x*(x-3),y-4;
    1509   Prep(E,N);
    1510 }
    1511 
    1512 // PtoCrep
    1513 // Computes the C-representation from the P-representation.
    1514 // input:
    1515 //    list ((p_1,(p_11,p_1k_1)),..,(p_r,(p_r1,p_rk_r)));
    1516 //         the P-representation of V(N) \ V(M)
    1517 // output:
    1518 //    list (ideal ida, ideal idb)
    1519 //    the C-representaion of V(N) \ V(M) = V(ida) \ V(idb)
    1520 // Assumed to be called in the ring @R
    1521 // Works on the ring @P
    1522 proc PtoCrep(list L)
    1523 "USAGE: PtoCrep(L)
    1524  Input L: list  [ Comp_1, .. , Comp_s ] where
    1525           Comp_i=[p_i,[p_i1,..,p_is_i] ], is
    1526           the P-representation of a locally closed set V(N) \ V(M)
    1527  RETURN:  The canonical C-representation of the locally closed set
    1528           [ P,Q ], a pair of radical ideals with P included in Q,
    1529           representing the set V(P) \ V(Q)
    1530  NOTE: Operates in a ring R=Q[a]  (a=parameters)
    1531  KEYWORDS: locally closed set, canoncial form
    1532  EXAMPLE:  PtoCrep; shows an example"
    1533 {
    1534   int te;
    1535   def RR=basering;
    1536   if(defined(@P)){te=1; setring(@P); list Lp=imap(RR,L);}
    1537   else {  te=0; def Lp=L;}
    1538   def La=PtoCrep0(Lp);
    1539   if(te==1) {setring(RR); def LL=imap(@P,La);}
    1540   if(te==0){def LL=La;}
    1541   return(LL);
    1542 }
    1543 example
    1544 {
    1545   "EXAMPLE:"; echo = 2;
    1546   if(defined(Grobcov::@P)){kill Grobcov::@R; kill Grobcov::@P; kill Grobcov::@RP;}
    1547   short=0;
    1548   ring R=0,(x,y,z),lp;
    1549 
    1550   // (P,Q) represents a locally closed set
    1551   ideal P=x^3+x*y^2+x*z^2-25*x;
    1552   ideal Q=y-4,x*z,x^2-3*x;
    1553 
    1554   // Now compute the P-representation=
    1555   def L=Prep(P,Q);
    1556   L;
    1557   // Now compute the C-representation=
    1558   def J=PtoCrep(L);
    1559   J;
    1560   // Now come back recomputing the P-represetation of the C-representation=
    1561   Prep(J[1],J[2]);
    1562 }
    1563 
    15641675// PtoCrep0
    15651676// Computes the C-representation from the P-representation.
     
    15701681//    list (ideal ida, ideal idb)
    15711682//    the C-representation of V(N) \ V(M) = V(ida) \ V(idb)
    1572 // Works in a ring Q[u_1,..,u_m] and is called on it.
     1683// Assumed to be called in a ring Q[x] (example @P)
    15731684static proc PtoCrep0(list L)
    15741685{
     
    15801691  {
    15811692    option(returnSB);
     1693    //"T_Lp[i]="; Lp[i];
    15821694    N=Lp[i][1];
     1695    Lb=Lp[i][2];
     1696    //"T_Lb="; Lb;
    15831697    ida=intersect(ida,N);
    1584     Lb=Lp[i][2];
    15851698    for(j=1;j<=size(Lb);j++)
    15861699    {
     
    15941707
    15951708// input: F a parametric ideal in Q[a][x]
    1596 // output: a rComprehensive Groebner System disjoint and reduced.
     1709// output: a disjoint and reduced Groebner System.
    15971710//      It uses Kapur-Sun-Wang algorithm, and with the options
    15981711//      can compute the homogenization before  (('can',0) or ( 'can',1))
    15991712//      and dehomogenize the result.
    16001713proc cgsdr(ideal F, list #)
    1601 "USAGE: cgsdr(F);
     1714"USAGE: cgsdr(F,options]);
    16021715          F: ideal in Q[a][x] (a=parameters, x=variables) to be discussed.
    16031716          To compute a disjoint, reduced Comprehensive Groebner System (CGS).
     
    16101723          -option name, value- of valid options must be added to the call.
    16111724
    1612           Options:
     1725OPTIONS:
    16131726            \"can\",0-1-2: The default value is \"can\",2. In this case no
    16141727                homogenization is done. With option (\"can\",0) the given
     
    16741787          x=variables), and should be defined previously, and the ideal
    16751788          defined on R.
    1676 KEYWORDS: CGS, disjoint, reduced, Comprehensive Groebner System
     1789KEYWORDS: CGS; disjoint; reduced; Comprehensive Groebner System
    16771790EXAMPLE:  cgsdr; shows an example"
    16781791{
     
    17251838  if(comment>=1)
    17261839  {
    1727     string("Begin cgsdr with options: ",LL);
     1840    " "; string("Begin cgsdr with options: ",LL);
    17281841  }
    17291842  int ish;
     
    17311844  if (ish)
    17321845  {
    1733     if(comment>0){string("The given system is homogneous");}
     1846    if(comment>0){" "; string("The given system is homogneous");}
    17341847    def GS=KSW(B,LL);
    17351848    //can=0;
     
    17411854  {
    17421855    // WITHOUT HOMOHGENIZING
    1743     if(comment>0){string("Option of cgsdr: do not homogenize");}
     1856    if(comment>0){" "; string("Option of cgsdr: do not homogenize");}
    17441857    def GS=KSW(B,LL);
    17451858    setglobalrings();
     
    17501863    {
    17511864      // COMPUTING THE HOMOGOENIZED IDEAL
    1752       if(comment>=1){string("Homogenizing the whole ideal: option can=1");}
     1865      if(comment>0){" "; string("Homogenizing the whole ideal: option can=1");}
    17531866      list RRL=ringlist(RR);
    17541867      RRL[3][1][1]="dp";
     
    17651878      def B1=imap(RR,B);
    17661879      option(redSB);
     1880      if(comment>0){" ";string("Basis before computing its std basis="); B1;}
    17671881      B1=std(B1);
     1882      if(comment>0){" ";string("Basis after computing its std basis="); B1;}
    17681883      setring(RR);
    17691884      def B2=imap(RP,B1);
     
    17711886    else
    17721887    { // (can=0)
    1773        if(comment>0){string("Homogenizing the basis: option can=0");}
     1888       if(comment>0){" "; string( "Homogenizing the basis: option can=0");}
    17741889      def B2=B;
    17751890    }
     
    17861901      BH[i]=homog(BH[i],@t);
    17871902    }
    1788     if (comment>=2){string("Homogenized system = "); BH;}
     1903    if (comment>0){" "; string("Homogenized system = "); BH;}
    17891904    def GSH=KSW(BH,LH);
    17901905    setglobalrings();
     
    18121927    def GS=imap(RH,GSH);
    18131928    }
    1814 
    1815 
    18161929    setglobalrings();
    18171930    if(out==0)
     
    20312144{
    20322145  //"T_H="; H;
    2033   int i; int j; int k; int te; intvec notQ; int l; list sel; int used;
     2146  int i; int j; int k; int te; intvec notQ; int l; list sel;
    20342147  intvec jtesC;
    20352148  if ((size(H)==1) and (equalideals(H[1],ideal(1)))){return(H);}
     
    20622175          if (te)
    20632176          {
    2064             used++;
    20652177            if ((size(notQ)==1) and (notQ[1]==0)){notQ[1]=i;}
    20662178            else{notQ[size(notQ)+1]=i;}
     
    21002212      }
    21012213    }
    2102     //"T_Q1_0="; Q1;
    21032214    sel=selectminideals(Q1);
    21042215    kill nQ1; list nQ1;
     
    21102221  }
    21112222  if(size(Q1)==0){Q1=ideal(1),ideal(1);}
    2112   //"T_Q1_1="; Q1;
    2113   //if(used>0){string("addpartfine was ", used, " times used");}
    21142223  return(Q1);
    21152224}
    21162225
    2117 
    2118 // Auxiliary routine for grobcov: ideal F is assumed to be homogeneous
     2226// Auxiliary rutine for gcover
     2227// Deciding if combine is needed
     2228// input: list LCU=( (basis1, p_1, (p11,..p1s1)), .. (basisr, p_r, (pr1,..prsr))
     2229// output: (tes); if tes==1 then combine is needed, else not.
     2230static proc needcombine(list LCU,ideal N)
     2231{
     2232  //"Deciding if combine is needed";;
     2233  ideal BB;
     2234  int tes=0; int m=1; int j; int k; poly sp;
     2235  while((tes==0) and (m<=size(LCU[1][1])))
     2236  {
     2237    j=1;
     2238    while((tes==0) and (j<=size(LCU)))
     2239    {
     2240      k=1;
     2241      while((tes==0) and (k<=size(LCU)))
     2242      {
     2243        if(j!=k)
     2244        {
     2245          sp=pnormalf(pspol(LCU[j][1][m],LCU[k][1][m]),LCU[k][2],N);
     2246          if(sp!=0){tes=1;}
     2247        }
     2248        k++;
     2249      }
     2250      j++;
     2251    }
     2252    if(tes){break;}
     2253    m++;
     2254  }
     2255  return(tes);
     2256}
     2257
     2258// Auxiliary routine
     2259// precombine
     2260// input:  L: list of ideals (works in @P)
     2261// output: F0: ideal of polys. F0[i] is a poly in the intersection of
     2262//             all ideals in L except in the ith one, where it is not.
     2263//             L=(p1,..,ps);  F0=(f1,..,fs);
     2264//             F0[i] \in intersect_{j#i} p_i
     2265static proc precombine(list L)
     2266{
     2267  int i; int j; int tes;
     2268  def RR=basering;
     2269  setring(@P);
     2270  list L0; list L1; list L2; list L3; ideal F;
     2271  L0=imap(RR,L);
     2272  L1[1]=L0[1]; L2[1]=L0[size(L0)];
     2273  for (i=2;i<=size(L0)-1;i++)
     2274  {
     2275    L1[i]=intersect(L1[i-1],L0[i]);
     2276    L2[i]=intersect(L2[i-1],L0[size(L0)-i+1]);
     2277  }
     2278  L3[1]=L2[size(L2)];
     2279  for (i=2;i<=size(L0)-1;i++)
     2280  {
     2281    L3[i]=intersect(L1[i-1],L2[size(L0)-i]);
     2282  }
     2283  L3[size(L0)]=L1[size(L1)];
     2284  for (i=1;i<=size(L3);i++)
     2285  {
     2286    option(redSB); L3[i]=std(L3[i]);
     2287  }
     2288  for (i=1;i<=size(L3);i++)
     2289  {
     2290    tes=1; j=0;
     2291    while((tes) and (j<size(L3[i])))
     2292    {
     2293      j++;
     2294      option(redSB);
     2295      L0[i]=std(L0[i]);
     2296      if(reduce(L3[i][j],L0[i])!=0){tes=0; F[i]=L3[i][j];}
     2297    }
     2298    if (tes){"ERROR a polynomial in all p_j except p_i was not found";}
     2299  }
     2300  setring(RR);
     2301  def F0=imap(@P,F);
     2302  return(F0);
     2303}
     2304
     2305// Auxiliary routine
     2306// combine
     2307// input: a list of pairs ((p1,P1),..,(pr,Pr)) where
     2308//    ideal pi is a prime component
     2309//    poly Pi is the polynomial in Q[a][x] on V(pi)\ V(Mi)
     2310//    (p1,..,pr) are the prime decomposition of the lpp-segment
     2311//    list crep =(ideal ida,ideal idb): the Crep of the segment.
     2312//    list Pci of the intersecctions of all pj except the ith one
     2313// output:
     2314//    poly P on an open and dense set of V(p_1 int ... p_r)
     2315static proc combine(list L, ideal F)
     2316{
     2317  // ATTENTION REVISE AND USE Pci and F
     2318  int i; poly f;
     2319  f=0;
     2320  for(i=1;i<=size(L);i++)
     2321  {
     2322    f=f+F[i]*L[i][2];
     2323  }
     2324//   f=elimconstfac(f);
     2325  f=primepartZ(f);
     2326  return(f);
     2327}
     2328
     2329// Central routine for grobcov: ideal F is assumed to be homogeneous
    21192330// gcover
    21202331// input: ideal F: a generating set of a homogeneous ideal in Q[a][x]
     
    21272338{
    21282339  int i; int j; int k; ideal lpp; list GPi2; list pairspP; ideal B; int ti;
    2129   int i1; int tes; int j1; int selind; int i2; int m;
     2340  int i1; int tes; int j1; int selind; int i2; //int m;
    21302341  list prep; list crep; list LCU; poly p; poly lcp; ideal FF;
    21312342  list lpi;
     
    21722383  list S;
    21732384  poly sp;
    2174   ideal BB;
    21752385  for (i=1;i<=size(GP);i++)
    21762386  {
     
    21952405    }
    21962406    //"Deciding if combine is needed";
    2197     kill BB;
    2198     ideal BB;
    2199     tes=1; m=1;
    2200     while((tes) and (m<=size(LCU[1][1])))
    2201     {
    2202       j=1;
    2203       while((tes) and (j<=size(LCU)))
    2204       {
    2205         k=1;
    2206         while((tes) and (k<=size(LCU)))
    2207         {
    2208           if(j!=k)
    2209           {
    2210             sp=pnormalf(pspol(LCU[j][1][m],LCU[k][1][m]),LCU[k][2],N);
    2211             if(sp!=0){tes=0;}
    2212           }
    2213           k++;
    2214         }        //setglobalrings();
    2215         if(tes)
    2216         {
    2217           BB[m]=LCU[j][1][m];
    2218         }
    2219         j++;
    2220       }
    2221       if(tes==0){break;}
    2222       m++;
    2223     }
    22242407    crep=PtoCrep(prep);
    2225     if(tes==0)
     2408    if(size(LCU)>1){tes=1;}
     2409    else
     2410    {
     2411      tes=0;
     2412      for(k=1;k<=size(B);k++){B[k]=pnormalf(B[k],crep[1],crep[2]);}
     2413    }
     2414    // tes=needcombine(LCU,N);
     2415    // if(tes==1){" ";string("combine is needed for segment ",i);" ";}
     2416    //crep=PtoCrep(prep);
     2417    if(tes)
    22262418    {
    22272419      // combine is needed
     
    22312423        LL[j]=LCU[j][2];
    22322424      }
    2233       if (size(LCU)>1)
    2234       {
    2235         FF=precombint(LL);
    2236       }
     2425      FF=precombine(LL);
    22372426      for (k=1;k<=size(lpp);k++)
    22382427      {
     
    22422431          L[j]=list(LCU[j][2],LCU[j][1][k]);
    22432432        }
    2244         if (size(LCU)>1)
    2245         {
    2246           B[k]=combine(L,FF);
    2247         }
    2248         else{B[k]=L[1][2];}
    2249       }
    2250     }
    2251     else{B=BB;}
     2433        B[k]=combine(L,FF);
     2434      }
     2435    }
    22522436    for(j=1;j<=size(B);j++)
    22532437    {
     
    22772461//            N is the null conditions ideal (if desired)
    22782462//            W is the ideal of non-null conditions (if desired)
    2279 //            The value of \"can\"i s 1 by default and can be set to 0 if we do not
     2463//            The value of \"can\" is 1 by default and can be set to 0 if we do not
    22802464//            need to obtain the canonical GC, but only a GC.
    22812465//            The value of \"ext\" is 0 by default and so the generic representation
     
    22922476//            given by the lpp, the basis, and the P-representation of the segment
    22932477proc grobcov(ideal F,list #)
    2294 "USAGE:   grobcov(F); This is the fundamental routine of the
     2478"USAGE:   grobcov(F,options]);
     2479          This is the fundamental routine of the
    22952480          library. It computes the Groebner cover of a parametric ideal. See
    22962481                Montes A., Wibmer M.,
     
    23072492          -option name, value- of valid options must be added to the call.
    23082493
    2309           Options:
     2494OPTIONS:
    23102495            \"null\",ideal E: The default is (\"null\",ideal(0)).
    23112496            \"nonnull\",ideal N: The default is (\"nonnull\",ideal(1)).
     
    23322517                \"comment\" higher will provide information about the
    23332518                development of the computation.
     2519             \"showhom\",0-1: The default is (\"showhom\",0). Setting
     2520                \"showhom\",1 will output the set of homogenized lpp of
     2521                each segment as last element.
    23342522          One can give none or whatever of these options.
    23352523RETURN:   The list
     2524          (
     2525           (lpp_1,basis_1,segment_1),
     2526           ...
     2527           (lpp_s,basis_s,segment_s)
     2528          )
     2529          optionally
    23362530          (
    23372531           (lpp_1,basis_1,segment_1,lpph_1),
     
    23432537          set of lpp of the reduced Groebner basis for each point
    23442538          of the segment.
     2539          With option (\"showhom\",1) the lpph will be shown:
    23452540          The lpph corresponds to the lpp of the homogenized ideal
    23462541          and is different for each segment. It is given as a string,
     
    23792574          x=variables), and should be defined previously. The ideal must
    23802575          be defined on R.
    2381 KEYWORDS: Groebner cover, parametric ideal, canonical, discussion of
    2382           parametric ideal.
     2576KEYWORDS: Groebner cover; parametric ideal; canonical; discussion of
     2577          parametric ideal
    23832578EXAMPLE:  grobcov; shows an example"
    23842579{
     
    23902585  setglobalrings();
    23912586  list L0=#;
     2587  list Se;
    23922588  int out=0;
     2589  int showhom=0;
     2590  int hom;
    23932591  L0[size(L0)+1]="res"; L0[size(L0)+1]=ideal(1);
    23942592  // default options
     
    24212619            {
    24222620              if (L0[2*i-1]=="comment"){comment=L0[2*i];}
     2621              else
     2622              {
     2623                if (L0[2*i-1]=="showhom"){showhom=L0[2*i];}
     2624              }
    24232625            }
    24242626          }
     
    24452647  LL[11]="ext";    LL[12]=extop;
    24462648  LL[13]="rep";    LL[14]=repop;
     2649  LL[15]="showhom";    LL[16]=showhom;
    24472650  if (comment>=1)
    24482651  {
     
    24522655  def S=gcover(F,LL);
    24532656  // NOW extend
     2657  if (size(S[1])==5){hom=1;}
    24542658  if(extop)
    24552659  {
    24562660    S=extend(S,LL);
    24572661  }
     2662  // NOW representation of the segments by option repop
     2663  list Si; list nS;
     2664  if (repop==0)
     2665  {
     2666    for(i=1;i<=size(S);i++)
     2667    {
     2668      Si=list(S[i][1],S[i][2],S[i][3]);
     2669      if(hom){Si[size(Si)+1]=S[i][4];}
     2670      nS[size(nS)+1]=Si;
     2671    }
     2672    S=nS;
     2673  }
    24582674  else
    24592675  {
    2460     // NOW representation of the segments by option repop
    2461     list Si; list nS;
    2462     if(repop==0)
     2676    if (repop==1)
    24632677    {
    24642678      for(i=1;i<=size(S);i++)
    24652679      {
    2466         Si=list(S[i][1],S[i][2],S[i][3],S[i][5]);
     2680        Si=list(S[i][1],S[i][2],S[i][4]);
     2681        if(hom){Si[size(Si)+1]=S[i][5];}
    24672682        nS[size(nS)+1]=Si;
    24682683      }
    2469       kill S;
    2470       def S=nS;
     2684      S=nS;
    24712685    }
    24722686    else
    24732687    {
    2474       if(repop==1)
    2475       {
    2476         for(i=1;i<=size(S);i++)
    2477         {
    2478           Si=list(S[i][1],S[i][2],S[i][4],S[i][5]);
    2479           nS[size(nS)+1]=Si;
    2480         }
    2481         kill S;
    2482         def S=nS;
    2483       }
    2484       else
    2485       {
    2486         for(i=1;i<=size(S);i++)
    2487         {
    2488           Si=list(S[i][1],S[i][2],S[i][3],S[i][4],S[i][5]);
    2489           nS[size(nS)+1]=Si;
    2490         }
    2491         kill S;
    2492         def S=nS;
     2688      for(i=1;i<=size(S);i++)
     2689      {
     2690        Si=list(S[i][1],S[i][2],S[i][3],S[i][4]);
     2691        if(hom){Si[size(Si)+1]=S[i][5];}
     2692        nS[size(nS)+1]=Si;
    24932693      }
    24942694    }
     
    25002700  }
    25012701  if(defined(@P)==1){kill @R; kill @P; kill @RP;}
     2702  if (hom and showhom==0)
     2703  {
     2704    for(i=1;i<=size(S);i++)
     2705    {
     2706      Se=S[i];
     2707      Se=delete(Se,size(Se));
     2708      S[i]=Se;
     2709    }
     2710  }
    25022711  return(S);
    25032712}
     
    25232732// Can be called from the top
    25242733proc extend(list GC, list #);
    2525 "USAGE: extend(GC); The default option of grobcov provides
     2734"USAGE: extend(GC[,options]);
     2735          The default option of grobcov provides
    25262736          the bases in generic representation (the I-regular functions
    2527           of the bases ara given by a single polynomial. It can specialize
     2737          of the bases are given by a single polynomial. It can specialize
    25282738          to zero for some points of the segments, but in general, it
    25292739          is sufficient for many pouposes. Nevertheless the I-regular
    2530           functions allow a full representation given bey a set of
     2740          functions allow a full representation given by a set of
    25312741          polynomials specializing to the value of the function (after normalization)
    25322742          or to zero, but at least one of the polynomials specializes to non-zero.
     
    25522762          x=variables), and should be defined previously. The ideal must
    25532763          be defined on R.
    2554 KEYWORDS: Groebner cover, parametric ideal, canonical, discussion of
    2555           parametric ideal, full representation.
     2764KEYWORDS: Groebner cover; parametric ideal; canonical, discussion of
     2765          parametric ideal; full representation
    25562766EXAMPLE:  extend; shows an example"
    25572767{
     
    25672777    i++;
    25682778  }
     2779  int hom;
    25692780  if(m==1){"Warning! grobcov has already extended bases"; return(S);}
    2570   if(size(GC[1])!=5){"Warning! extend make sense only when grobcov has been called with options  'rep',2,'ext',0"; " "; return();}
     2781  if(not(size(GC[1])==5 or (size(GC[1])==4 and typeof(GC[1][4])=="list")))
     2782  {"Warning! extend make sense only when grobcov has been called with options  'rep',2,'ext',0"; " "; return();}
     2783  if(size(GC[1])==5){hom=1;}
    25712784  int repop=0;
    25722785  int start3=timer;
     
    26342847    for(i=1;i<=size(S);i++)
    26352848    {
    2636       Si=list(S[i][1],S[i][2],S[i][3],S[i][5]);
     2849      Si=list(S[i][1],S[i][2],S[i][3]);
     2850      if(hom){Si[size(Si)+1]=S[i][5];}
    26372851      nS[size(nS)+1]=Si;
    26382852    }
     
    26452859      for(i=1;i<=size(S);i++)
    26462860      {
    2647         Si=list(S[i][1],S[i][2],S[i][4],S[i][5]);
     2861        Si=list(S[i][1],S[i][2],S[i][4]);
     2862        if(hom){Si[size(Si)+1]=S[i][5];}
    26482863        nS[size(nS)+1]=Si;
    26492864      }
     
    26542869      for(i=1;i<=size(S);i++)
    26552870      {
    2656         Si=list(S[i][1],S[i][2],S[i][3],S[i][4],S[i][5]);
     2871        Si=list(S[i][1],S[i][2],S[i][3],S[i][4]);
     2872        if(hom){Si[size(Si)+1]=S[i][5];}
    26572873        nS[size(nS)+1]=Si;
    26582874      }
    2659 
    26602875    }
    26612876  }
     
    26702885  short=0;
    26712886  ideal S=a0*x^2+b0*x+c0,
    2672             a1*x^2+b1*x+c1;
     2887          a1*x^2+b1*x+c1;
    26732888  def GCS=grobcov(S,"rep",2);
    26742889  GCS;
     
    27182933  return(fr);
    27192934}
    2720 
    2721 // Auxiliary routine
    2722 // deltai
    2723 // input:
    2724 //   int i:
    2725 //   list LPr: (p1,..,pr) of prime components of an ideal in Q[a]
    2726 // output:
    2727 //   list (fr,fnr) of two polynomials that are equal on V(pi)
    2728 //       and fr=0 on V(P) \ V(pi), and fnr is nonzero on V(pj) for all j.
    2729 static proc deltai(int i, list LPr)
    2730 {
    2731   def RR=basering;
    2732   setring(@P);
    2733   def LP=imap(RR,LPr);
    2734   int j; poly p;
    2735   def F=ideal(1);
    2736   poly f;
    2737   poly fn;
    2738   ideal LPi;
    2739   for (j=1;j<=size(LP);j++)
    2740   {
    2741     if (j!=i)
    2742     {
    2743       F=idint(F,LP[j]);
    2744     }
    2745   }
    2746   p=0; j=1;
    2747   while ((p==0) and (j<=size(F)))
    2748   {
    2749     LPi=LP[i];
    2750     attrib(LPi,"isSB",1);
    2751     p=reduce(F[j],LPi);
    2752     j++;
    2753   }
    2754   f=F[j-1];
    2755   fn=nonzerodivisor(f,LP);
    2756   setring(RR);
    2757   def fr=imap(@P,f);
    2758   def fnr=imap(@P,fn);
    2759   return(list(fr,fnr));
    2760 }
    2761 
    2762 // Auxiliary routine
    2763 // combine
    2764 // input: a list of pairs ((p1,P1),..,(pr,Pr)) where
    2765 //    ideal pi is a prime component
    2766 //    poly Pi is the polynomial in Q[a][x] on V(pi)\ V(Mi)
    2767 //    (p1,..,pr) are the prime decomposition of the lpp-segment
    2768 //    list crep =(ideal ida,ideal idb): the Crep of the segment.
    2769 //    list Pci of the intersecctions of all pj except the ith one
    2770 // output:
    2771 //    poly P on an open and dense set of V(p_1 int ... p_r)
    2772 static proc combine(list L, ideal F)
    2773 {
    2774   // ATTENTION REVISE AND USE Pci and F
    2775   int i; poly f;
    2776   f=0;
    2777   for(i=1;i<=size(L);i++)
    2778   {
    2779     f=f+F[i]*L[i][2];
    2780   }
    2781 //   f=elimconstfac(f);
    2782   f=primepartZ(f);
    2783   return(f);
    2784 }
    2785 
    27862935
    27872936//Auxiliary routine
     
    30133162        M1=intersect(T0[2],T1[2]);
    30143163      }
    3015       T=list(ci,PtoCrep(Prep(N1,M1)));
     3164      T=list(ci,PtoCrep0(Prep0(N1,M1)));
    30163165      LL[size(LL)+1]=T;
    30173166      if(equalideals(T[2][1],ideal(1))){te=1; break;}
     
    30463195  return(T);
    30473196}
    3048 
    30493197
    30503198// Auxiliary routine
     
    32373385}
    32383386
    3239 // // Auxiliary routine
    3240 // // NonNull: returns 1 if the poly f is nonnull on V(E) \ V(N), 0 otherwise.
    3241 // // Input:
    3242 // //   f: polynomial
    3243 // //   E: null ideal
    3244 // //   N: nonnull ideal
    3245 // // Output:
    3246 // //   1 if f is nonnul in V(P) \ V(Q),
    3247 // //   0 if it has zeroes inside.
    3248 // //  Works in @P
    3249 // proc NonNull(poly f, ideal E, ideal N)
    3250 // {
    3251 //   int te=1; int i;
    3252 //   def RR=basering;
    3253 //   setring(@P);
    3254 //   def fp=imap(RR,f);
    3255 //   def Ep=imap(RR,E);
    3256 //   def Np=imap(RR,N);
    3257 //   ideal H;
    3258 //   ideal Ef=Ep+fp;
    3259 //   for (i=1;i<=size(Np);i++)
    3260 //   {
    3261 //     te=radicalmember(Np[i],Ef);
    3262 //     if (te==0){break;}
    3263 //   }
    3264 //   setring(RR);
    3265 //   return(te);
    3266 // }
    3267 
    32683387// Auxiliary routine
    32693388// selectextendcoef
     
    34273546}
    34283547
    3429 
    34303548// Auxiliary routine
    34313549// precombint
     
    34743592  return(F0);
    34753593}
    3476 
    34773594
    34783595// Auxiliary routine
     
    36163733  int i;
    36173734  def L=#;
    3618   if (size(L)>0)
     3735  if(size(L)>0)
    36193736  {
    36203737    for (i=1;i<=size(L) div 2;i++)
     
    36583775// Auxiliary routine
    36593776// sqf
    3660 // This is for releases of Singular before 3-5-1
    3661 // proc sqf(poly f)
    3662 // {
    3663 //  def RR=basering;
    3664 //  setring(@P);
    3665 //  def ff=imap(RR,f);
    3666 //  def G=sqrfree(ff);
    3667 //  poly fff=1;
    3668 //  int i;
    3669 //  for (i=1;i<=size(G);i++)
    3670 //  {
    3671 //    fff=fff*G[i];
    3672 //  }
    3673 //  setring(RR);
    3674 //   def ffff=imap(@P,fff);
    3675 //   return(ffff);
    3676 // }
    3677 
    3678 // Auxiliary routine
    3679 // sqf
    36803777static proc sqf(poly f)
    36813778{
     
    36883785  return(ffff);
    36893786}
    3690 
    36913787
    36923788// Auxiliary routine
     
    38033899    if (equalideals(Gr,ideal(0))==1){GrHi=H[i];}
    38043900    else {GrHi=Gr,H[i];}
    3805 //     else {for (j=1;j<=size(Gr);j++){GrHi[size(GrHi)+1]=Gr[j]*H[i];}}
    38063901    if(comment>1){"Call to KSW with arguments "; GM; GrHi;  Nh;}
    38073902    KS=KSW0(GM,GrHi,Nh,comment);
     
    39814076  int n=size(L);
    39824077  if(n<2){return(A);}
     4078  intvec w;
    39834079  for(i=1;i<=size(L);i++)
    39844080  {
     
    39904086        {
    39914087          L[i][2]=L[j][2];
     4088          w[size(w)+1]=j;
    39924089        }
    39934090      }
     4091    }
     4092  }
     4093  if(size(w)>0)
     4094  {
     4095    for(i=1; i<=size(w);i++)
     4096    {
     4097      j=w[size(w)+1-i];
     4098      L=elimfromlist(L, j);
    39944099    }
    39954100  }
     
    40134118  }
    40144119  if(equalideals(T,ideal(1))==0){L[size(L)+1]=list(std(T),ideal(1))};
    4015   //string("T_n=",n," new n0",size(L));
    40164120  return(L);
    40174121}
    40184122
    4019 // Input: list(A)
    4020 //          A is a list of locally closed sets in Crep. A=[[P1,Q1],[P2,Q2],..,[Pr,Qr]]
    4021 //          whose union is a constructible set from
    4022 // Output list [Lev,C]:
    4023 //          where Lev is the Crep of the canonical first level of A, and
    4024 //          C is the complement of the first level Lev wrt to the closure of A. The elements are given in Crep,
     4123// input list A=[[p1,q1],...,[pn,qn]] :
     4124//                    the list of segments of a constructible set S, where each [pi,qi] is given in C-representation
     4125// output list [topA,C]
     4126//       where topA is the closure of A
     4127//                 C is the list of segments of the complement of A given in C-representation
    40254128static proc FirstLevel(list A)
    40264129{
     
    40284131  list T=zeroone(n);
    40294132  ideal P; ideal Q;
    4030   list Cb;  ideal Cc=ideal(1);
     4133  list Cb;  ideal Cc=1;
    40314134  int i; int j;
    40324135  intvec t;
    4033   ideal Z=ideal(1);
     4136  ideal topA=1;
    40344137  list C;
    4035   for(i=1;i<=size(A);i++)
    4036   {
    4037     Z=intersect(Z,A[i][1]);
    4038   }
     4138  for(i=1;i<=n;i++)
     4139  {
     4140    topA=intersect(topA,A[i][1]);
     4141  }
     4142  //topA=std(topA);
    40394143  for(i=2; i<=size(T);i++)
    40404144  {
    40414145    t=T[i];
    4042     P=ideal(1); Q=ideal(0);
     4146    //"T_t="; t;
     4147    P=0; Q=1;
    40434148    for(j=1;j<=n;j++)
    40444149    {
    40454150      if(t[n+1-j]==1)
    40464151      {
    4047         Q=Q+A[j][2];
     4152        P=P+A[j][2];
    40484153      }
    40494154      else
    40504155      {
    4051         P=intersect(P,A[j][1]);
    4052       }
    4053     }
    4054     //"T_Q="; Q; "T_P="; P;
    4055     Cb=Crep(Q,P);
     4156        Q=intersect(Q,A[j][1]);
     4157      }
     4158    }
     4159    Cb=Crep0(P,Q);
    40564160    //"T_Cb="; Cb;
    4057     if(Cb[1][1]<>1)
    4058     {
    4059       C[size(C)+1]=Cb;
    4060       Cc=intersect(Cc,Cb[1]);
    4061     }
    4062   }
    4063   list Lev=list(Z,Cc);                //Crep(Z,Cc);
     4161    if(size(Cb)!=0)
     4162    {
     4163      if( Cb[1][1]<>1)
     4164      {
     4165        C[size(C)+1]=Cb;
     4166      }
     4167    }
     4168  }
    40644169  if(size(C)>1){C=SimplifyUnion(C);}
    4065   return(list(Lev,C));
    4066 }
    4067 
    4068 // Input: list(A)
    4069 //          A is a list of locally closed sets in Crep. A=[[P1,Q1],[P2,Q2],..,[Pr,Qr]]
    4070 //          whose union is a constructible set from which the algorithm computes its canonical form.
     4170  return(list(topA,C));
     4171}
     4172
     4173// Input:
    40714174// Output:
    4072 //     list [L,C] where
    4073 //          where L is the list of canonical levels of A,
    4074 //          and C is the list of canonical levels of the complement of A wrt to the closure of A.
    4075 //          All locally closed sets are given in Crep.
    4076 //          L=[[1,[p1,p2],[3,[p3,p4],..,[2r-1,[p_{2r-1},p_2r]]]] is the list of levels of A in Crep.
    4077 //          C=[[2,p2,p3],[4,[p4,p5],..,[2s,[p_{2s},p_{2s+1}]]]  is the list of levels of C,
    4078 //                                              the complement of S wrt the closure of A, in Crep.
    4079 proc ConsLevels(list A)
    4080 "USAGE:   ConsLevels(A);
    4081           A is a list of locally closed sets in Crep. A=[[P1,Q1],[P2,Q2],..,[Pr,Qr]]
    4082           whose union is a constructible set from which the algorithm computes its
    4083           canonical form.
    4084 RETURN: A list with two elements: [L,C]
    4085           where L is the list of canonical levels of A, and C is the list of canonical
    4086           levels of the
    4087           complement of A wrt to the closure of A.
    4088           All locally closed sets are given in Crep.
    4089           L=[[1,[p1,p2],[3,[p3,p4],..,[2r-1,[p_{2r-1},p_2r]]]]
    4090           C=[[2,p2,p3],[4,[p4,p5],..,[2s,[p_{2s},p_{2s+1}]]]
    4091 NOTE: The basering R, must be of the form Q[a]
    4092 KEYWORDS: locally closed set, constructible set
    4093 EXAMPLE:  ConsLevels; shows an example"
    4094 {
    4095   list L; list C; int i;
    4096   list B; list T;
     4175static proc ConstoPrep(list L)
     4176{
     4177  list L1;
     4178  int i; int j;
     4179  list aux;
     4180  for(i=1;i<=size(L);i++)
     4181  {
     4182    aux=Prep(L[i][2][1],L[i][2][2]);
     4183    L1[size(L1)+1]=list(L[i][1],aux);
     4184  }
     4185  return(L1);
     4186}
     4187
     4188// Input:
     4189//     list A =  [[P1,Q1], .. [Pn,Qn]]
     4190//                  A constructible set as union of locally closed sets represented by pairs of ideals
     4191// Output:
     4192//     list L =[p1,p2,p3,...,pk]
     4193//        where pi is the ideal of the closure of level i alternatively of  A or its complement
     4194//        Note: the levels of A are [p1,p2], [p3,p4], [p5,p6],...
     4195//                 the levels of C are [p2,p3],[p4,p5], ...
     4196//                 expressed in C-representation
     4197//    Assumed to be called in the ring @R or the ring @P or a ring ring Q[a]
     4198proc ConsLevels(list A0)
     4199"USAGE:   ConsLevels(L);
     4200         where L=[[P1,Q1],...,[Ps,Qs]]
     4201         is a list of lists of of pairs of ideals defined over Grobcov::@P,
     4202         or over a ring without parameters and represents the constructible set
     4203         S=V(P1)\ V(Q1) u ... u V(Ps)\ V(Qs)
     4204RETURN: The list of ideals [a1,a2,...,at] representing the closures of the
     4205         canonical levels of S and its complement C wrt to the closure of S.
     4206         The canonical levels of S are represented by theirs Crep. So we have:
     4207         Levels of S:  [a1,a2],[a3,a4],...
     4208         Levels of C:  [a2,a3],[a4,a5],...
     4209         S=V(a1)\ V(a2) u V(a3)\ V(a4) u ...
     4210         C=V(a2\ V(a3) u V(a4)\ V(a5) u ...
     4211         It is used internally by locus procedure.
     4212NOTE: It is described in the paper
     4213          J.M. Brunat, A. Montes
     4214          Computing the canonical representation of constructible sets.
     4215          Math.  Comput. Sci. (2016) 19: 165-178.
     4216KEYWORDS: constructible set; locally closed set; canonical form
     4217EXAMPLE:  example ConsLevels; shows an example"
     4218{
     4219  def RR=basering;
     4220  int te;
     4221  if(defined(@P)){te=1; setring(@P); list A=imap(RR,A0);}
     4222  else {te=0; def A=A0;}
     4223
     4224  list L; list C;
     4225  list B; list T; int i;
    40974226  for(i=1; i<=size(A);i++)
    40984227  {
    4099     T=Crep(A[i][1],A[i][2]);
     4228    T=Crep0(A[i][1],A[i][2]);
    41004229    B[size(B)+1]=T;
    41014230  }
    4102   int level=0;
    41034231  list K;
    41044232  while(size(B)>0)
    41054233  {
    4106     level++;
    41074234    K=FirstLevel(B);
    4108     if(level mod 2==1){L[size(L)+1]=list(level,K[1]);}
    4109     else{C[size(C)+1]=list(level,K[1]);}
    4110     //"T_L="; L;
    4111     //"T_C="; C;
     4235    //"T_K="; K;
     4236    L[size(L)+1]=K[1];
    41124237    B=K[2];
    4113     //"T_size(B)="; size(B);
    4114   }
    4115   return(list(L,C));
     4238   }
     4239  L[size(L)+1]=ideal(1);
     4240  if(te==1) {setring(RR); def LL=imap(@P,L);}
     4241  if(te==0){def LL=L;}
     4242  return(LL);
    41164243}
    41174244example
    4118 { "EXAMPLE:"; echo = 2;
    4119 // Example of ConsLevels with nice geometrical interpretetion and 2 levels
    4120 
    4121 if (defined(R)){kill R;}
    4122 if (defined(@P)){kill @P; kill @R; kill @RP;}
    4123 
    4124   ring R=0,(x,y,z),lp;
    4125   short=0;
    4126   ideal P1=x*(x^2+y^2+z^2-1);
    4127   ideal Q1=z,x^2+y^2-1;
    4128   ideal P2=y,x^2+z^2-1;
    4129   ideal Q2=z*(z+1),y,x*(x+1);
    4130 
    4131   list Cr1=Crep(P1,Q1);
    4132   list Cr2=Crep(P2,Q2);
    4133 
    4134   list L=list(Cr1,Cr2);
    4135   L;
    4136   // ConsLevels(L)=
    4137   ConsLevels(L);
    4138 
    4139 //----------------------------------------------------------------------
    4140 // Begin Problem S93
    4141 // Automatic theorem proving
    4142 // Generalized Steiner-Lehmus Theorem
    4143 // A.Montes, T.Recio
    4144 
    4145 // Bisector of A(-1,0) = Bisector of B(1,0) varying C(a,b)
    4146 
    4147 if(defined(R1)){kill R1;}
    4148 ring R1=(0,a,b),(x1,y1,x2,y2,p,r),dp;
    4149 ideal S93=(a+1)^2+b^2-(p+1)^2,
    4150                     (a-1)^2+b^2-(1-r)^2,
    4151                     a*y1-b*x1-y1+b,
    4152                     a*y2-b*x2+y2-b,
    4153                     -2*y1+b*x1-(a+p)*y1+b,
    4154                     2*y2+b*x2-(a+r)*y2-b,
    4155                     (x1+1)^2+y1^2-(x2-1)^2-y2^2;
    4156 
     4245{
     4246"EXAMPLE:"; echo = 2;
     4247ring R=0,(x,y,z),lp;
    41574248short=0;
    4158 def GC93=grobcov(S93,"nonnull",ideal(b),"rep",1);
    4159 //"grobcov(S93,'nonnull',ideal(b),"rep",1)="; GC93;
    4160 
    4161 list L0;
    4162 for(int i=1;i<=size(GC93);i++)
    4163 {
    4164    L0[size(L0)+1]=GC93[i][3];
    4165 }
    4166 
    4167 def GC93ab=grobcov(S93,"nonnull",ideal(a*b),"rep",1);
    4168 
    4169 ring RR=0,(a,b),lp;
    4170 
    4171 list L1;
    4172 L1=imap(R1,L0);
    4173 // L1=Total elements of the grobcov(S93,'nonnull',ideal(b),'rep',1) to be added=
    4174 L1;
    4175 
    4176 // Adding all the elements of grobcov(S93,'nonnull',ideal(b),'rep',1)=
    4177 ConsLevels(L1);
     4249ideal P1=x*(x^2+y^2+z^2-1);
     4250ideal Q1=z,x^2+y^2-1;
     4251ideal P2=y,x^2+z^2-1;
     4252ideal Q2=z*(z+1),y,x*(x+1);
     4253
     4254list Cr1=Crep(P1,Q1);
     4255list Cr2=Crep(P2,Q2);
     4256
     4257list L=list(Cr1,Cr2);
     4258L;
     4259ConsLevels(L);
     4260}
     4261
     4262// Converts the output of ConsLevels, given by the set of closures of the Levels of the constructible S
     4263//     to an expression where the Levels are apparent.
     4264// Input: The ouput of ConsLevels of the form
     4265//    [A1,A2,..,Ak], where the Ai's are the closures of the levels.
     4266// Output: An expression of the form
     4267//      L1=[[1,[A1,A2]],[3,[A3,A4]],..,[2l-1,[A_{2l-1},A_{2l}]]] the list of Levels of S
     4268proc ConsLevelsToLevels(list L)
     4269"USAGE: ConsLevelsToLevels(list L);
     4270          The input list L must be the output of the call to
     4271          the routine 'ConsLevels' of a constructible set:
     4272           [A1,A2,..,Ak], where the Ai's are the closures of the levels.
     4273          'ConsLevels' outputs the closures of the levels
     4274          of the constructible and of its complements.
     4275          This routine selects the  levels of the
     4276          constructible set.
     4277RETURN: The levels of the constructible set:
     4278          Lc=[[1,[A1,A2]],[3,[A3,A4]],..,[2l-1,[A_{2l-1},A_{2l}]]] the list of
     4279          Levels of S
     4280NOTE: It must be called to the output of the 'ConsLevels' routine.
     4281KEYWORDS: constructible sets
     4282EXAMPLE:  ConsLevelsToLevels shows an example"
     4283{
     4284  int n=size(L) div 2;
     4285  int i;
     4286  list L1; list L2;
     4287  for(i=1; i<=n;i++)
     4288  {
     4289    L1[size(L1)+1]=list(2*i-1,list(L[2*i-1],L[2*i]));
     4290  }
     4291  return(L1);
     4292}
     4293example
     4294{
     4295"EXAMPLE:"; echo = 2;
     4296ring R=0,(x,y,z),lp;
     4297short=0;
     4298ideal P1=(x^2+y^2+z^2-1);
     4299ideal Q1=z,x^2+y^2-1;
     4300ideal P2=y,x^2+z^2-1;
     4301ideal Q2=z*(z+1),y,x*(x+1);
     4302ideal P3=x;
     4303ideal Q3=5*z-4,5*y-3,x;
     4304
     4305list Cr1=Crep(P1,Q1);
     4306list Cr2=Crep(P2,Q2);
     4307list Cr3=Crep(P3,Q3);
     4308
     4309list L=list(Cr1,Cr2,Cr3);
     4310L;
     4311
     4312def LL=ConsLevels(L);
     4313LL;
     4314ConsLevelsToLevels(LL);
    41784315}
    41794316
     
    42474384//   ideal N: the holes of the component
    42484385// Output:
    4249 //   int d: the dimension of B on the variables reduced by the holes.
     4386//   int d: the dimension of B on the variables (antiimage).
    42504387//     if d>0    then the component is 'Normal'
    42514388//     if d==0 then the component is 'Singular'
     
    42684405  }
    42694406  if(F!=0){Fenv=1;}
    4270   //"T_B="; B; "E="; E; "N="; N;
    42714407  list L0;
    42724408  if(dimP0(E)==0){L0=2,"Normal";} // 2 es fals pero ha de ser >0 encara que sigui 0
     
    42754411    if(version==0)
    42764412    {
    4277       //"T_B="; B;  // Computing std(B+E,plex(x,y,x1,..xn)) one can detect if there is a first part
     4413      // Computing std(B+E,plex(x,y,x1,..xn)) one can detect if there is a first part
    42784414      // independent of parameters giving the variables with dimension 0
    42794415     dd=indepparameters(B);
    4280       if (dd==1){d=0; L0=d,string(B),determineF(B,F,E);}
     4416      if (dd==1){d=0; L0=d,string(B);} // ,determineF(B,F,E)
    42814417      else{d=1; L0=2,"Normal";}
    42824418    }
     
    43404476      {
    43414477        //" ";string("Antiimage of Special component = ", GGG);
    4342          if(Fenv==1)
    4343         {
    4344           L0[3]=determineF(GGG,F,E);
    4345         }
    43464478      }
    43474479      else
     
    43514483    }
    43524484  }
     4485  //"T_L0="; L0;
    43534486  return(L0);
    43544487}
     
    43814514   ideal M=std(AA+FH);
    43824515   def rh=reduce(EH,M);
     4516   //"T_AA="; AA; "T_FH="; FH; "T_EH="; EH; "T_rh="; rh;
    43834517   if(rh==0){env=1;} else{env=0;}
    43844518   setring RR;
    43854519          //L0[3]=env;
     4520    //"T_env="; env;
    43864521    return(env);
    43874522}
    43884523
    4389 // DimPar
    4390 // Auxilliary routine to NorSing determining the dimension of a parametric ideal
    4391 // Does not use @P and define it directly because is assumes that
    4392 //                             variables and parameters have been inverted
    4393 static proc DimPar(ideal E)
    4394 {
    4395   def RRH=basering;
    4396   def RHx=ringlist(RRH);
    4397   def Prin=ring(RHx[1]);
    4398   setring(Prin);
    4399   def E2=std(imap(RRH,E));
    4400   def d=dim(E2);
    4401   setring RRH;
    4402   return(d);
    4403 }
     4524//  DimPar
     4525//  Auxilliary routine to NorSing determining the dimension of a parametric ideal
     4526//  Does not use @P and define it directly because is assumes that
     4527//                              variables and parameters have been inverted
     4528 static proc DimPar(ideal E)
     4529 {
     4530   def RRH=basering;
     4531   def RHx=ringlist(RRH);
     4532   def Prin=ring(RHx[1]);
     4533   setring(Prin);
     4534   def E2=std(imap(RRH,E));
     4535   def d=dim(E2);
     4536   setring RRH;
     4537   return(d);
     4538 }
    44044539
    44054540// locus0(G): Private routine used by locus (the public routine), that
    44064541//                builds the diferent components.
    44074542// input:      The output G of the grobcov (in generic representation, which is the default option)
    4408 //       Options: The algorithm allows the following options ar pair of arguments:
     4543//       Options: The algorithm allows the following options as pair of arguments:
    44094544//                "movdim", d  : by default movdim is 2 but it can be set to other values
     4545//                    when locus is called by envelop then as default is uses d=dim @P
    44104546//                "version", v   :  There are two versions of the algorithm. ('version',1) is
    44114547//                 a full algorithm that always distinguishes correctly between 'Normal'
     
    44184554//                 Usually locus problems have mover coordinates, variables and tracer coordinates.
    44194555//                 The mover coordinates are to be placed as the last variables, and by default,
    4420 //                 its number is 2. If one consider locus problems in higer dimensions, the number of
    4421 //                 mover coordinates (placed as the last variables) is to be given as an option.
     4556//                 its number is dim @P, but as option it can be set to other values.
    44224557// output:
    44234558//         list, the canonical P-representation of the Normal and Non-Normal locus:
     
    44364571  int t1=1; int t2=1; int i;
    44374572  def R=basering;
    4438   //if(defined(@P)==1){te=1; kill @P; kill @R; kill @RP; }
    4439   //setglobalrings();
    4440   // Options
     4573  def RL=ringlist(R);
     4574  if(defined(@P)==1){te=1; kill @P; kill @R; kill @RP; }
     4575  setglobalrings();
     4576  //Options
    44414577  list DD=#;
    4442   int moverdim=nvars(R);
     4578  ideal vmov;
     4579  int moverdim=size(ringlist(R)[1][2]);
     4580  int dimpar=size(RL[1][2]);
     4581  int dimvar=size(RL[2]);
     4582  int nv=nvars(R);
     4583  if(moverdim>nv){moverdim=nv;}
     4584  for(i=1;i<=moverdim;i++)
     4585  {
     4586    //string("T_moverdim=",moverdim,"T_nv=",nv,"T_var(",i,")=",var(i));
     4587    vmov[size(vmov)+1]=var(i+nv-moverdim);
     4588  }
    44434589  int version=0;
    4444   int nv=nvars(R);
    44454590  if(nv<4){version=1;}
    44464591  int comment=0;
     
    44494594  for(i=1;i<=(size(DD) div 2);i++)
    44504595  {
    4451     if(DD[2*i-1]=="movdim"){moverdim=DD[2*i];}
     4596    if(DD[2*i-1]=="vmov"){vmov=DD[2*i];}
    44524597    if(DD[2*i-1]=="version"){version=DD[2*i];}
    44534598    if(DD[2*i-1]=="system"){Fm=DD[2*i];}
     
    44564601  }
    44574602  list HHH;
    4458   if (GG[1][1][1]==1 and GG[1][2][1]==1 and GG[1][3][1][1][1]==0 and GG[1][3][1][2][1]==1){return(HHH);}
    4459    list G1; list G2;
     4603  if (GG[1][1][1]==1 and GG[1][2][1]==1 and GG[1][3][1][1][1]==0 and GG[1][3][1][2][1]==1)
     4604    {return(HHH);}
     4605  list G1; list G2;
    44604606  def G=GG;
    44614607  list Q1; list Q2;
     
    44654611  {
    44664612    attrib(G[i][1],"IsSB",1);
    4467     d=locusdim(G[i][2],moverdim);
     4613    d=dim(std(G[i][1]));
    44684614    if(d==0){G1[size(G1)+1]=G[i];}
    44694615    else
     
    44844630  for(i=1;i<=size(G1RP);i++)
    44854631  {
    4486      kill B;
     4632    kill B;
    44874633     ideal B;
    44884634     for(k=1;k<=size(G1RP[i][3]);k++)
     
    44964642       P1RP[size(P1RP)+1]=list(G1RP[i][3][k][1],G1RP[i][3][k][2],B);
    44974643     }
    4498   }
     4644  }  //In P1RP the basis has been reduced wrt the top
    44994645  setring(R);
    45004646  ideal h;
     4647  list P1;
    45014648  if(t1)
    45024649  {
    4503     def P1=imap(@RP,P1RP);
     4650    P1=imap(@RP,P1RP);
    45044651    for(i=1;i<=size(P1);i++)
    45054652    {
     
    45144661      }
    45154662    }
    4516   }
    4517   else{list P1;}
     4663  } //In P1 factors in the basis independent of the parameters have been obtained
    45184664  ideal BB; int dd; list NS;
    45194665  for(i=1;i<=size(P1);i++)
    45204666  {
    4521        NS=NorSing(P1[i][3],P1[i][1],P1[i][2][1],DD);
    4522        dd=NS[1];
    4523        if(dd==0){P1[i][3]=NS;} //"Special";
    4524        else{P1[i][3]="Normal";}
     4667     NS=NorSing(P1[i][3],P1[i][1],P1[i][2][1],DD);
     4668     dd=NS[1];
     4669     if(dd==0){P1[i][3]=NS;} //"Special";
     4670     else{P1[i][3]="Normal";}
    45254671  }
    45264672  list P2;
     
    45484694    def C2=imap(R,P2);
    45494695    def L2=AddLocus(C2);
    4550  }
     4696  }
    45514697  else{list L2; list C2; kill P2; list P2;}
    4552     for(i=1;i<=size(L2);i++)
    4553     {
    4554       J=std(L2[i][2]);
    4555       d=dim(J); // AQUI
    4556       if(d==0)
    4557       {
    4558         L2[i][4]=string("Accumulation",L2[i][4]);
    4559       }
    4560       else{L2[i][4]=string("Degenerate",L2[i][4]);}
    4561     }
     4698  for(i=1;i<=size(L2);i++)
     4699  {
     4700    J=std(L2[i][2]);
     4701    d=dim(J);
     4702    if(d+1==dimpar)
     4703    {
     4704      L2[i][4]=string("Degenerate",L2[i][4]);
     4705    }
     4706    else{L2[i][4]=string("Accumulation",L2[i][4]);}
     4707  }
    45624708  list LN;
    45634709  if(t1==1)
     
    45694715    for(i=1;i<=size(L2);i++){LN[size(LN)+1]=L2[i];}
    45704716  }
     4717  int tLN=1;
     4718  if(size(LN)==0){tLN=0;}
    45714719  setring(R);
    4572   def L=imap(@P,LN);
    4573   for(i=1;i<=size(L);i++){if(size(L[i][2])==0){L[i][2]=ideal(1);}}
    4574   //if(te==0){kill @R; kill @RP; kill @P;}
    4575   list LL;
    4576   for(i=1;i<=size(L);i++)
    4577   {
    4578     if(typeof(L[i][4])=="list") {L[i][4][1]="Special";}
    4579     l[1]=L[i][2];
    4580     l[2]=L[i][3];
    4581     l[3]=L[i][4];
    4582     l[4]=L[i][5];
    4583     L[i]=l;
    4584  }
    4585  return(L);
     4720  if(tLN)
     4721  {
     4722   def L=imap(@P,LN);
     4723    for(i=1;i<=size(L);i++){if(size(L[i][2])==0){L[i][2]=ideal(1);}}
     4724    list LL;
     4725    for(i=1;i<=size(L);i++)
     4726    {
     4727      if(typeof(L[i][4])=="list") {L[i][4][1]="Special";}
     4728      l[1]=L[i][2];
     4729      l[2]=L[i][3];
     4730      l[3]=L[i][4];
     4731      l[4]=L[i][5];
     4732      L[i]=l;
     4733    }
     4734  }
     4735  else{list L;}
     4736  return(L);
    45864737}
    45874738
     
    45934744//               The Normal locus has two kind of components: Normal and Special.
    45944745//               The Non-normal locus has two kind of components: Accumulation and Degenerate.
    4595 //               Normal components: for each point in the component,
    4596 //               the number of solutions in the variables is finite, and
    4597 //               the solutions depend on the point in the component if the component is not 0-dimensional.
    4598 //               Special components:  for each point in the component,
    4599 //               the number of solutions in the variables is finite,
    4600 //               the component is not 0-dimensional, but the solutions do not depend on the
    4601 //               values of the parameters in the component.
    4602 //               Accumlation points: are 0-dimensional components for which it exist
    4603 //               an infinite number of solutions.
    4604 //               Degenerate components: are components of dimension greater than 0 for which
    4605 //               for every point in the component there exist infinite solutions.
     4746//          Normal component:
     4747//           - the component has non-zero antiimage
     4748//           - each point in the component has 0-dimensional antiimage.
     4749//          Special component:
     4750//           - Non-zero dimensional component whose antiimage is 0-dimensional.
     4751//          Accumulation points:
     4752//           - Zero-dimesnional  component whose antiimage is non-zero-dimensional.
     4753//          Degenerate components:
     4754//           - Non-zero-dimensional component
     4755//           - each point in the component has non-zero-dimensional antiimage.
    46064756//          The output components are given as
    46074757//               ((p1,(p11,..p1s_1),type_1,level_1),..,(pk,(pk1,..pks_k),type_k,level_k)
     
    46104760//               gives the depth of the component of the constructible set.
    46114761proc locus(list GG, list #)
    4612 "USAGE: locus(G)
     4762"USAGE: locus(G[,options]);
     4763        Calling sequence:
     4764              locus(grobcov(S));
    46134765        The input must be the grobcov  of a parametrical ideal in Q[a][x],
    4614         (a=parameters, x=variables). In fact a must be the tracer coordinates
    4615         and x the mover coordinates and other auxiliary ones.
     4766        (a=parameters, x=variables). In practice a must be the tracer coordinates
     4767        and x the mover coordinates and remaining auxiliary variables.
     4768        For a parametric locus computation 'a' can contain some extra parameters.
    46164769        Special routine for determining the locus of points
    46174770        of  geometrical constructions. Given a parametric ideal J
    46184771        representing the system determining the locus of points (a)
    4619         who verify certain properties, the call to locus on the output of grobcov( J )
     4772        who verify certain properties, the call to locus on the output of grobcov(J)
    46204773        determines the different classes of locus components, following
    46214774        the taxonomy defined in
     
    46234776        \"An Algebraic Taxonomy for Locus Computation in Dynamic Geometry\".
    46244777        Computer-Aided Design 56 (2014) 22-33.
    4625         The components can be Normal, Special, Accumulation, Degenerate.
     4778        The components can be Normal, Special, Accumulation or Degenerate.
    46264779OPTIONS: The algorithm allows the following options as pair of arguments:
    4627          \"movdim\", d  : by default movdim is 2 but it can be set to other values,
    4628          and represents the number of mever variables. they should be given as
    4629          the last variables of the ring.
     4780         \"vmov\", ideal(mover variables)  : by default vmov are the last n variables,
     4781         where n is the number of parameters of the ring (tracer variables plus extra
     4782         parameters). Thus, if the mover coordinates are not indicated, locus
     4783         algorithm will assume that they are the last n ring variables.
     4784         When locus is called internallt by envelop, by default, the mover variables
     4785         are assumed to be all the ring variables.
    46304786         \"version\", v   :  There are two versions of the algorithm. (\"version\",1) is
    46314787         a full algorithm that always distinguishes correctly between 'Normal'
    4632          and 'Special' components, whereas \("version\",0) can decalre a component
    4633          as 'Normal' being really 'Special', but is more effective. By default (\"version\",1)
    4634          is used when the number of variables is less than 4 and 0 if not.
     4788         and 'Special' components, whereas \("version\",0) can declare a component
     4789         to be 'Normal' being in fact 'Special', but it is more effective. By default,
     4790         (version,1) is used when the number of variables is less than 4 and 0 if not.
    46354791         The user can force to use one or other version, but it is not recommended.
    4636          \"system\", ideal F: if the initial system is passed as an argument. This is actually not used.
    46374792         \"comments\", c: by default it is 0, but it can be set to 1.
    46384793         Usually locus problems have mover coordinates, variables and tracer coordinates.
    4639          The mover coordinates are to be placed as the last variables, and by default,
    4640          its number is 2. If one consider locus problems in higer dimensions, the number of
    4641          mover coordinates (placed as the last variables) is to be given as an option.
    4642 RETURN: The locus. The output is a list of the components ( C_1,.. C_n ) where
    4643         C_i =  (p_i,(p_i1,..p_is_i), type_i,l evel_i )   and type_i can be
    4644         'Normal', 'Special', Accumulation', 'Degenerate'. The 'Special' components
    4645         return more information, namely the antiimage of the component, that
    4646         is 0-dimensional for these kind of components.
    4647         Normal components: for each point in the component,
    4648         the number of solutions in the variables is finite, and
    4649         the solutions depend on the point in the component.
    4650         Special components:  for each point in the component,
    4651         the number of solutions in the variables is finite. The
    4652         antiimage of the component is 0-dimensional.
    4653         Accumlation points: are 0-dimensional components whose
    4654         antiimage is not zero-dimansional.
    4655         Degenerate components: are components of dimension greater than 0
    4656         whose antiimage is not-zero-diemansional.
    4657         The components are given in canonical P-representation.
    4658         The levels of a class of locus are 1,
    4659         because they represent locally closed. sets.
    4660 NOTE: It can only be called after computing the grobcov of the
    4661       parametrical ideal in generic representation ('ext',0),
    4662       which is the default.
    4663       The basering R, must be of the form Q[a_1,..,a_m][x_1,..,x_n].
    4664 KEYWORDS: geometrical locus, locus, loci.
     4794         Example of option call:
     4795         > locus(S,\"version\",1,\"vmov\",ideal(x1,y1))
     4796RETURN:  The output is a list of the components (C_1, .. , C_n ) of the locus.
     4797          The locus is divided into two class of subsets: the normal and the non-normal
     4798          locus.
     4799            The Normal locus has two kind of components: Normal and Special.
     4800            The Non-normal locus has two kind of components: Accumulation and Degenerate.
     4801         Each component is given by
     4802              Ci=((pi,(pi1,..pis_i),type_i,level_i)
     4803         where
     4804           the first element is the canonical P-representation of the subset.
     4805           The type can be : \"Normal\", \"Special\", \"Accumulation\", \"Degenerate\".
     4806         Normal component:
     4807           - the component has non-zero antiimage
     4808           - each point in the component has 0-dimensional antiimage.
     4809         Special component:
     4810           - Non-zero dimensional component whose antiimage is 0-dimensional.
     4811           The Special components return more information, namely the antiimage of
     4812           the component, that is 0-dimensional for these kind of components.
     4813         Accumulation points:
     4814           - Zero-dimensional  component whose anti-image is non-zero-dimensional.
     4815         Degenerate components:
     4816           - Non-zero-dimensional component
     4817           - each point in the component has non-zero-dimensional anti-image.
     4818        The level is the depth of the segment of the constructible locus subset
     4819        (normal and non-normal subsets).
     4820        If all levels of a locus are 1, then both subsets are locally closed.
     4821NOTE: The input must be the grobcov of the locus system in generic
     4822        representation ('ext',0), which is the default.
     4823KEYWORDS: geometrical locus; locus; loci.
    46654824EXAMPLE: locus; shows an example"
    46664825{
     
    46694828  if(defined(@P)==1){tes=1; kill @P; kill @R; kill @RP;}
    46704829  setglobalrings();
    4671   // Options
     4830  //Options
    46724831  list DD=#;
    4673   int moverdim=nvars(R);
     4832  ideal vmov;
     4833  int moverdim=size(ringlist(R)[1][2]);
     4834  int nv=nvars(R);
     4835  if(moverdim>nv){moverdim=nv;}
     4836  for(i=1;i<=moverdim;i++){vmov[size(vmov)+1]=var(i+nv-moverdim);}
    46744837  int version=0;
    4675   int nv=nvars(R);
    46764838  if(nv<4){version=1;}
    46774839  int comment=0;
     
    46794841  for(i=1;i<=(size(DD) div 2);i++)
    46804842  {
    4681     if(DD[2*i-1]=="movdim"){moverdim=DD[2*i];}
     4843    if(DD[2*i-1]=="vmov"){vmov=DD[2*i];}
    46824844    if(DD[2*i-1]=="version"){version=DD[2*i];}
    4683     if(DD[2*i-1]=="system"){Fm=DD[2*i];}
    46844845    if(DD[2*i-1]=="comment"){comment=DD[2*i];}
    4685     if(DD[2*i-1]=="family"){poly F=DD[2*i];}
    4686   }
    4687   int j; int k;
     4846  }
     4847  DD=list("vmov",vmov,"version",version,"comment",comment);
     4848  int j; int k; int te;
    46884849  def B0=GG[1][2];
    46894850  def H0=GG[1][3][1][1];
    4690   if (equalideals(B0,ideal(1)) or (equalideals(H0,ideal(0))==0))
     4851  if (equalideals(B0,ideal(1)) )
    46914852  {
    46924853    return(locus0(GG,DD));
     
    46954856  {
    46964857    int n=nvars(R);
    4697     ideal vmov=var(n-1),var(n);
     4858    ideal vB;
    46984859    ideal N;
    4699     intvec xw; intvec yw;
    4700     for(i=1;i<=n-1;i++){xw[i]=0;}
    4701     xw[n]=1;
    4702     for(i=1;i<=n;i++){yw[i]=0;}
    4703     yw[n-1]=1;
    4704     poly px; poly py;
    4705     int te=1;
    4706     i=1;
    4707     while( te and i<=size(B0))
    4708     {
    4709       if((deg(B0[i],xw)==1) and (deg(B0[i])==1)){px=B0[i]; te=0;}
    4710       i++;
    4711     }
    4712     i=1; te=1;
    4713     while( te and i<=size(B0))
    4714     {
    4715       if((deg(B0[i],yw)==1) and (deg(B0[i])==1)){py=B0[i]; te=0;}
    4716       i++;
    4717     }
    4718     N=px,py;
     4860    for(i=1;i<=size(B0);i++)
     4861    {
     4862      if(subset(variables(B0[i]),vmov)){N[size(N)+1]=B0[i];}
     4863    }
    47194864    te=indepparameters(N);
    47204865    if(te)
    47214866    {
    4722       string("locus detected that the mover must avoid point (",N,") in order to obtain the correct locus");
    4723       // eliminates segments of GG where N is contained in the basis
     4867      string("locus detected that the mover must avoid points (",N,") in order to obtain the correct locus");" ";
     4868      //eliminates segments of GG where N is contained in the basis
    47244869      list nGP;
    47254870      def GP=GG;
     
    47374882      }
    47384883     }
    4739     else{"Warning! Problem with more than one mover. Not able to solve it."; list L; return(L);}
     4884    else
     4885    {
     4886      " ";string("Warning! Problem with more than one mover.");
     4887      string("Try option 'vmov',ideal(of mover variables) to avoid some point of the mover");
     4888      " ";"Elements of the basis of the generic segment in mover variables=";  N;" ";
     4889      list L; return(L);
     4890    }
    47404891  }
    47414892  def LL=locus0(nGP,DD);
     
    47514902  // Concoid
    47524903  ideal S96=x^2+y^2-4,(b-2)*x-a*y+2*a,(a-x)^2+(b-y)^2-1;
    4753   // System S96=
    47544904  S96;
     4905
    47554906  locus(grobcov(S96));
    4756   kill R;
    4757   // ********************************************
    4758   ring R=(0,a,b),(x4,x3,x2,x1),dp;
    4759   short=0;
    4760   ideal S=(x1-3)^2+(x2-1)^2-9,
    4761                (4-x2)*(x3-3)+(x1-3)*(x4-1),
    4762                (3-x1)*(x3-x1)+(4-x2)*(x4-x2),
    4763                (4-x4)*a+(x3-3)*b+3*x4-4*x3,
    4764                (a-x1)^2+(b-x2)^2-(x1-x3)^2-(x2-x4)^2;
    4765   // System S=
    4766   S;
    4767   locus(grobcov(S));
    4768   kill R;
    4769   //********************************************
    4770 
    4771   ring R=(0,x,y),(x1,x2),dp;
    4772   short=0;
    4773   ideal S=-(x - 5)*(x1 - 1) - (x2 - 2)*(y - 2),
    4774                 (x1 - 5)^2 + (x2 - 2)^2 - 4,
    4775                 -2*(x - 5)*(x2 - 2) + 2*(x1 - 5)*(y - 2);
    4776   // System S=
    4777   S;
    4778   locus(grobcov(S));
    47794907}
    47804908
    47814909//  locusdg(G):  Special routine for determining the locus of points
    4782 //                 of  geometrical constructions. Given a parametric ideal J with
    4783 //                 parameters (a_1,..a_m) and variables (x_1,..,xn),
    4784 //                 representing the system determining
    4785 //                 the locus of points (a_1,..,a_m) who verify certain
    4786 //                 properties, computing the grobcov G of
    4787 //                 J and applying to it locus, determines the different
    4788 //                 classes of locus components. The components can be
    4789 //                 Normal, Special, Accumulation point, Degenerate.
    4790 //                 The output are the components given in P-canonical form
    4791 //                 of at most 4 constructible sets: Normal, Special, Accumulation,
    4792 //                 Degenerate.
    4793 //                 The description of the algorithm and definitions is
    4794 //                 given in a forthcoming paper by Abanades, Botana, Montes, Recio.
    4795 //                 Usually locus problems have mover coordinates, variables and tracer coordinates.
    4796 //                 The mover coordinates are to be placed as the last variables, and by default,
    4797 //                 its number is 2. If onw consider locus problems in higer dimensions, the number of
    4798 //                 mover coordinates (placed as the last variables) is to be given as an option.
    4799 //
     4910//                 of  geometrical constructions in Dynamic Geometry.
     4911//                 It is to be applied to the output of locus and selects
     4912//                 as 'Relevant' the 'Normal' and the 'Accumulation'
     4913//                 components.
    48004914//  input:      The output of locus(G);
    48014915//  output:
    4802 //          list, the canonical P-representation of the Normal and Non-Normal locus:
    4803 //               The Normal locus has two kind of components: Normal and Special.
    4804 //               The Non-normal locus has two kind of components: Accumulation and Degenerate.
    4805 //               Normal components: for each point in the component,
    4806 //               the number of solutions in the variables is finite, and
    4807 //               the solutions depend on the point in the component if the component is not 0-dimensional.
    4808 //               Special components:  for each point in the component,
    4809 //               the number of solutions in the variables is finite,
    4810 //               the component is not 0-dimensional, but the solutions do not depend on the
    4811 //               values of the parameters in the component.
    4812 //               Accumlation points: are 0-dimensional components for which it exist
    4813 //               an infinite number of solutions.
    4814 //               Degenerate components: are components of dimension greater than 0 for which
    4815 //               for every point in the component there exist infinite solutions.
     4916//          list, the canonical P-representation of the 'Relevant' components of the locus.
    48164917//          The output components are given as
    48174918//               ((p1,(p11,..p1s_1),type_1,level_1),..,(pk,(pk1,..pks_k),type_k,level_k)
     
    48204921//               gives the depth of the component of the constructible set.
    48214922proc locusdg(list L)
    4822 "USAGE: locusdg(L)   The call must be locusdg(locus(grobcov(S))).
     4923"USAGE: locusdg(L);
     4924           Calling sequence:
     4925                locusdg(locus(grobcov(S))).
    48234926RETURN: The output is the list of the 'Relevant' components of the locus
    48244927           in Dynamic Geometry:(C1,..,C:m), where
     
    48264929           The 'Relevant' components are the 'Normal' and 'Accumulation' components
    48274930           of the locus. (See help for locus).
    4828 
    4829 NOTE: It can only be called after computing the locus.
    4830            Calling sequence:    locusdg(locus(grobcov(S)));
    4831 KEYWORDS: geometrical locus, locus, loci, dynamic geometry
    4832 EXAMPLE: locusdg; shows an example"
     4931KEYWORDS: geometrical locus; locus; loci; dynamic geometry
     4932EXAMPLE: example locusdg; shows an example"
    48334933{
    48344934  list LL;
     
    48514951  // Concoid
    48524952  ideal S96=x^2+y^2-4,(b-2)*x-a*y+2*a,(a-x)^2+(b-y)^2-1;
    4853   // System S96=
    48544953  S96;
    48554954  locus(grobcov(S96));
    48564955  locusdg(locus(grobcov(S96)));
    4857   kill R;
    4858   //********************************************
    4859   ring R=(0,a,b),(x4,x3,x2,x1),dp;
    4860   ideal S=(x1-3)^2+(x2-1)^2-9,
    4861                (4-x2)*(x3-3)+(x1-3)*(x4-1),
    4862                (3-x1)*(x3-x1)+(4-x2)*(x4-x2),
    4863                (4-x4)*a+(x3-3)*b+3*x4-4*x3,
    4864                (a-x1)^2+(b-x2)^2-(x1-x3)^2-(x2-x4)^2;
    4865   short=0;
    4866   locus(grobcov(S));
    4867   locusdg(locus(grobcov(S)));
    4868   kill R;
    4869   //********************************************
    4870 
    4871   ring R=(0,x,y),(x1,x2),dp;
    4872   short=0;
    4873   ideal S=-(x - 5)*(x1 - 1) - (x2 - 2)*(y - 2),
    4874                 (x1 - 5)^2 + (x2 - 2)^2 - 4,
    4875                 -2*(x - 5)*(x2 - 2) + 2*(x1 - 5)*(y - 2);
    4876   locus(grobcov(S));
    4877   locusdg(locus(grobcov(S)));
    4878 }
    4879 
    4880 // locusto: Transforms the output of locus, locusdg, envelop and envelopdg
     4956}
     4957
     4958// locusto: Transforms the output of locus, locusdg, envelop
    48814959//             into a string that can be reed from different computational systems.
    48824960// input:
    4883 //     list L: The output of locus
     4961//     list L: The output of locus or locusdg or envelop.
    48844962// output:
    4885 //     string s: The output of locus converted to a string readable by other programs
     4963//     string s: Converts the input into a string readable by other programs
    48864964proc locusto(list L)
    48874965"USAGE: locusto(L);
    48884966          The argument must be the output of locus or locusdg or
    4889           envelop or envelopdg.
     4967          envelop.
    48904968          It transforms the output into a string in standard form
    4891           readable in many languages (Geogebra).
     4969          readable in other languages, not only Singular (Geogebra).
    48924970RETURN: The locus in string standard form
    48934971NOTE: It can only be called after computing either
     
    48954973              - locusdg(locus(grobcov(F)))  -> locusto( locusdg(locus(grobcov(F))) )
    48964974              - envelop(F,C)                       -> locusto( envelop(F,C) )
    4897               -envelopdg(envelop(F,C))      -> locusto( envelopdg(envelop(F,C)) )
    4898 KEYWORDS: geometrical locus, locus, loci.
    4899 EXAMPLE:  locusto; shows an example"
     4975KEYWORDS: geometrical locus; locus; loci
     4976EXAMPLE:  example locusto; shows an example"
    49004977{
    49014978  int i; int j; int k;
     
    49615038  locusto(locus(grobcov(S)));
    49625039  locusto(locusdg(locus(grobcov(S))));
    4963   kill R;
    4964   //********************************************
    4965 
    4966   // 1. Take a fixed line l: x1-y1=0  and consider
    4967   //    the family F of a lines parallel to l passing through the mover point M
    4968   // 2. Consider a circle x1^2+x2^2-25, and a mover point M(x1,x2) on it.
    4969   // 3. Compute the envelop of the family of lines.
    4970 
    4971   ring R=(0,x,y),(x1,y1),lp;
    4972   poly F=(y-y1)-(x-x1);
    4973   ideal C=x1^2+y1^2-25;
    4974   short=0;
    4975 
    4976   // Curves Family F=
    4977   F;
    4978   // Conditions C=
    4979   C;
    4980 
    4981   locusto(envelop(F,C));
    4982   locusto(envelopdg(envelop(F,C)));
    4983   kill R;
    4984   //********************************************
    4985 
    4986   // Steiner Deltoid
    4987   // 1. Consider the circle x1^2+y1^2-1=0, and a mover point M(x1,y1) on it.
    4988   // 2. Consider the triangle A(0,1), B(-1,0), C(1,0).
    4989   // 3. Consider lines passing through M perpendicular to two sides of ABC triangle.
    4990   // 4. Obtain the envelop of the lines above.
    4991 
    4992   ring R=(0,x,y),(x1,y1,x2,y2),lp;
    4993   ideal C=(x1)^2+(y1)^2-1,
    4994                x2+y2-1,
    4995                x2-y2-x1+y1;
    4996   matrix M[3][3]=x,y,1,x2,y2,1,x1,0,1;
    4997   poly F=det(M);
    4998 
    4999   short=0;
    5000 
    5001   // Curves Family F=
    5002   F;
    5003   // Conditions C=
    5004   C;
    5005 
    5006   locusto(envelop(F,C));
    5007   locusto(envelopdg(envelop(F,C)));
    5008 }
    5009 
    5010 // Auxiliary routine
    5011 // locusdim
    5012 // input:
    5013 //    B:         ideal, a basis of a segment of the grobcov
    5014 //    dgdim: int, the dimension of the mover (for locus)
    5015 //                by default dgdim is equal to the number of variables
    5016 static proc locusdim(ideal B, list #)
    5017 {
    5018   def R=basering;
    5019   int dgdim;
    5020   int nv=nvars(R);
    5021   if (size(#)>0){dgdim=#[1];}
    5022   else {dgdim=nv;}
    5023   int d;
    5024   list v;
    5025   ideal vi;
    5026   int i;
    5027   for(i=1;i<=dgdim;i++)
    5028   {
    5029     v[size(v)+1]=varstr(nv-dgdim+i);
    5030     vi[size(v)+1]=var(nv-dgdim+i);
    5031   }
    5032   ideal B0;
    5033   for(i=1;i<=size(B);i++)
    5034   {
    5035     if(subset(variables(B[i]),vi))
    5036     {
    5037       B0[size(B0)+1]=B[i];
    5038     }
    5039   }
    5040   def RR=ringlist(R);
    5041   def RR0=RR;
    5042   RR0[2]=v;
    5043   def R0=ring(RR0);
    5044   setring(R0);
    5045   def B0r=imap(R,B0);
    5046   B0r=std(B0r);
    5047   d=dim(B0r);
    5048   setring R;
    5049   return(d);
    5050 }
    5051 
    5052 static proc norspec(ideal F)
    5053 {
    5054   def RR=basering;
    5055   def Rx=ringlist(RR);
    5056 
    5057    def Rx=ringlist(RR);
    5058   def @P=ring(Rx[1]);
    5059   list Lx;
    5060   Lx[1]=0;
    5061   Lx[2]=Rx[2]+Rx[1][2];
    5062   Lx[3]=Rx[1][3];
    5063   Lx[4]=Rx[1][4];
    5064   Rx[1]=0;
    5065   def D=ring(Rx);
    5066   def @RP=D+@P;
    5067   exportto(Top,@R);      // global ring Q[a][x]
    5068   exportto(Top,@P);      // global ring Q[a]
    5069   exportto(Top,@RP);     // global ring K[x,a] with product order
    5070   setring(RR);
    50715040}
    50725041
    50735042// envelop
    5074 // Input: n arguments
    5075 //   poly F: the polynomial defining the family of curves in ring R=0,(x,y),(x1,..,xn),lp;
    5076 //   ideal C=g1,..,g_{n-1}:  the set of constraints
     5043// Input:
     5044//   poly F: the polynomial defining the family of hypersurfaces in ring R=0,(x_1,..,x_n),(u_1,..,u_m),lp;
     5045//   ideal C=g1,..,g_{n-1}:  the set of constraints;
     5046//   options.
    50775047// Output: the components of the envolvent;
    50785048proc envelop(poly F, ideal C, list #)
    50795049"USAGE: envelop(F,C);
    5080           The first argument F must be the family of curves of which
    5081           on want to compute the envelop.
    5082           The second argument C must be the ideal of conditions
    5083           over the variables, and should contain as polynomials
    5084           as the number of variables -1.
     5050          The first argument poly F must be the family of hypersurfaces for which
     5051          on want to compute its envelop.
     5052          The second argument C must be the ideal of restrictions on
     5053          the variables, and should contain less polynomials
     5054          than the number of variables
     5055          (x_1,..,x_n) are the variables of the hypersurfaces of F, that are considered
     5056          as parameters of the parametric ring.
     5057          (u_1,..,u_m) are the parameteres of the hypersurfaces, that are considered
     5058          as variables of the parametric ring.
     5059          Calling sequence:
     5060              ring R=(0,x_1,..,x_n),(u_1,..,u_m),lp;
     5061              poly F=F(x_1,..,x_n,u_1,..,u_m);
     5062              ideal C=g_1(u_1,..u_m),..,g_s(u_1,..u_m);
     5063              envelop(F,C,#options);
     5064           where s<m.
     5065OPTIONS: The algorithm allows the following options as pair of arguments:
     5066         \"vmov\", ideal(mover variables)  : by default vmov are  u_1,..,u_m.
     5067         But it can be restricted by the user to the more convenient ones.
     5068         \"version\", v   :  There are two versions of the algorithm. (\"version\",1) is
     5069         a full algorithm that always distinguishes correctly between 'Normal'
     5070         and 'Special' components, whereas \("version\",0) can decalre a component
     5071         as 'Normal' being really 'Special', but is more effective. By default (\"version\",1)
     5072         is used when the number of variables is less than 4 and 0 if not.
     5073         The user can force to use one or other version, but it is not recommended.
     5074         \"comments\", c: by default it is 0, but it can be set to 1.
    50855075RETURN: The components of the envelop with its taxonomy:
    5086            The taxonomy distinguishes 'Normal',
    5087           'Special', 'Accumulation', 'Degenerate' components.
    5088           In the case of 'Special' components, it also
    5089           outputs the antiimage of the component
    5090           and an integer (0-1). If the integer is 0
    5091           the component is not a curve of the family and is
    5092           not considered as 'Relevant' by the envelopdg routine
    5093           applied to it, but is considered as 'Relevant' if the integer is 1.
     5076           (see locus help). envelop uses locus.
     5077           The taxonomy distinguishes \"Normal\",
     5078          \"Special\", \"Accumulation\", \"Degenerate\" components.
     5079          In the case of \"Special\" components, it also
     5080          outputs the anti-image of the component
    50945081NOTE: grobcov is called internally.
    50955082          The basering R, must be of the form Q[a][x] (a=parameters, x=variables).
    5096 KEYWORDS: geometrical locus, locus, loci, envelop
    5097 EXAMPLE:  envelop; shows an example"
    5098 {
    5099   int tes=0; int i;   int j;
     5083KEYWORDS: geometrical locus; locus; loci; envelop
     5084EXAMPLE:  example envelop; shows an example"
     5085{
    51005086  def R=basering;
     5087  int tes=0; int i;   int j;  int k; int m;
     5088  int d;
     5089  int dp;
     5090  ideal BBB;
    51015091  if(defined(@P)==1){tes=1; kill @P; kill @R; kill @RP;}
    51025092  setglobalrings();
    5103   // Options
     5093  //Options
    51045094  list DD=#;
    5105   int moverdim=nvars(R);
     5095  ideal vmov;
     5096  int nv=nvars(R);
     5097  for(i=1;i<=nv;i++){vmov[size(vmov)+1]=var(i);}
     5098  int numpars=size(ringlist(R)[1][2]);
    51065099  int version=0;
    5107   int nv=nvars(R);
    51085100  if(nv<4){version=1;}
    51095101  int comment=0;
     5102  int familyinfo;
    51105103  ideal Fm;
    51115104  for(i=1;i<=(size(DD) div 2);i++)
    51125105  {
    5113     if(DD[2*i-1]=="movdim"){moverdim=DD[2*i];}
     5106    if(DD[2*i-1]=="vmov"){vmov=DD[2*i];}
    51145107    if(DD[2*i-1]=="version"){version=DD[2*i];}
    5115     if(DD[2*i-1]=="system"){Fm=DD[2*i];}
    51165108    if(DD[2*i-1]=="comment"){comment=DD[2*i];}
    5117   }
    5118   int n=nvars(R);
    5119   list v;
    5120   for(i=1;i<=n;i++){v[size(v)+1]=var(i);}
    5121   def MF=jacob(F);
    5122   def TMF=transpose(MF);
    5123   def Mg=MF;
    5124   def TMg=TMF;
    5125   for(i=1;i<=n-1;i++)
    5126   {
    5127     Mg=jacob(C[i]);
    5128     TMg=transpose(Mg);
    5129     TMF=concat(TMF,TMg);
    5130   }
    5131   poly J=det(TMF);
    5132   ideal S=ideal(F)+C+ideal(J);
    5133   DD[size(DD)+1]="family";
    5134   DD[size(DD)+1]=F;
     5109    if(DD[2*i-1]=="familyinfo"){familyinfo=DD[2*i];}
     5110  };
     5111  DD=list("vmov",vmov,"version",version,"comment",comment);
     5112  int ng=size(C);
     5113  ideal S=F;
     5114  for(i=1;i<=size(C);i++){S[size(S)+1]=C[i];}
     5115  int s=nv-ng;
     5116  if(s>0)
     5117  {
     5118    matrix M[ng+1][ng+1];
     5119    def cc=comb(nv,ng+1);
     5120    poly J;
     5121    for(k=1;k<=size(cc);k++)
     5122    {
     5123      for(j=1;j<=ng+1;j++)
     5124      {
     5125        M[1,j]=diff(F,var(cc[k][j]));
     5126      }
     5127      for(i=1;i<=ng;i++)
     5128      {
     5129        for(j=1;j<=ng+1;j++)
     5130        {
     5131          M[i+1,j]=diff(C[i],var(cc[k][j]));
     5132        }
     5133      }
     5134      J=det(M);
     5135      S[size(S)+1]=J;
     5136    }
     5137 }
     5138 if(comment>0){"System S before grobcov ="; S;}
    51355139  def G=grobcov(S,DD);
    5136    def L=locus(G, DD);
    5137   return(L);
     5140  list HHH;
     5141  if (G[1][1][1]==1 and G[1][2][1]==1 and G[1][3][1][1][1]==0 and G[1][3][1][2][1]==1)
     5142  {return(HHH);}
     5143   //DD[size(DD)+1]="vmov";
     5144   //DD[size(DD)+1]=4;
     5145  def L=locus(G,DD);
     5146  list GL;
     5147  ideal fam; ideal env;
     5148
     5149   def Rx=ringlist(R);
     5150   def P=ring(Rx[1]);
     5151   list Lx;
     5152   Lx[1]=0;
     5153   Lx[2]=Rx[2]+Rx[1][2];
     5154   Lx[3]=Rx[1][3];
     5155   Lx[4]=Rx[1][4];
     5156   Rx[1]=0;
     5157   def D=ring(Rx);
     5158   def RP=P+D;
     5159  list LL;
     5160  list NormalComp;
     5161  ideal Gi;
     5162  ideal BBBB;
     5163  poly B0;
     5164  if(familyinfo==1)
     5165  {
     5166    for(i=1;i<=size(L);i++)
     5167    {
     5168      if(typeof(L[i][3])=="string")
     5169      {
     5170        if(L[i][3]=="Normal")
     5171        {
     5172          NormalComp[size(NormalComp)+1]=L[i][1];
     5173          Gi=S;
     5174          Gi[size(Gi)+1]=L[i][1][1];
     5175          //"T_grobcov(Gi)="; grobcov(Gi);
     5176          kill HHH; list HHH;
     5177          //"T_L[i]="; L[i];
     5178          //d=DimPar(L[i][1]);
     5179          if(defined(SL)){kill SL;}
     5180          def SL=C;
     5181          SL[size(SL)+1]=F;
     5182          for(j=1;j<=size(L[i][1]);j++)
     5183          {
     5184            SL[size(SL)+1]=L[i][1][j];
     5185          }
     5186          setring RP;
     5187          if(defined(BBBB)){kill BBBB;}
     5188          ideal BBBB;
     5189          if(defined(BB)){kill BB;}
     5190          def BB=imap(R,SL);
     5191          if(defined(B0)){kill B0;}
     5192          poly B0;
     5193          if(defined(LLL)){kill LLL;}
     5194          def LLL=imap(R,L);
     5195          //"T_BB="; BB;
     5196          BB=std(BB);
     5197           for(j=1;j<=size(BB);j++)
     5198           {
     5199             B0=reduce(BB[j],LLL[i][1]);
     5200             if(not(B0==0)){BBBB[size(BBBB)+1]=B0;}
     5201           }
     5202          setring R;
     5203          BBB=imap(RP,BBBB);
     5204           L[i][5]=BBB;
     5205        }
     5206      }
     5207    }
     5208    LL[1]=L;
     5209    LL[2]=NormalComp;
     5210    list LLL; list LLLL;
     5211    int t;
     5212    for(k=1;k<=size(LL[2]);k++)
     5213    {
     5214      for(i=1;i<=size(G);i++)
     5215      {
     5216        j=1; t=0;
     5217        while(t==0 and j<=size(G[i][3]))
     5218        {
     5219          //"T_LL[2][k]="; LL[2][k];
     5220          //"T_G[i][3][j][1]="; G[i][3][j][1];
     5221          if(equalideals(LL[2][k],G[i][3][j][1]))
     5222          {
     5223            LLL[size(LLL)+1]=list(k,i,j);
     5224            t=1;
     5225          }
     5226          j++;
     5227        }
     5228      }
     5229    }
     5230    LL[3]=LLL;
     5231
     5232    for(k=1;k<=size(LLL);k++)
     5233    {
     5234      for(m=k+1;m<=size(LLL);m++)
     5235      {
     5236        for(i=1;i<=size(G[LLL[k][2]][3][LLL[k][3]][2]);i++)
     5237        {
     5238          for(j=1;j<=size(G[LLL[m][2]][3][LLL[m][3]][2]);j++)
     5239          {
     5240            //string("T_(G[",LLL[k][2],"][3][",LLL[k][3],"][2][",i,"])=");  G[LLL[k][2]][3][LLL[k][3]][2][i];
     5241            //string("T_(G[",LLL[m][2],"][3][",LLL[m][3],"][2][",j,"])=");  G[LLL[m][2]][3][LLL[m][3]][2][j];
     5242            if(equalideals( G[LLL[k][2]][3][LLL[k][3]][2][i] ,G[LLL[m][2]][3][LLL[m][3]][2][j]))
     5243            {
     5244              //"T_GGG="; LL[2][LLL[k][1]]; LL[2][LLL[m][1]]; G[LLL[k][2]][3][LLL[k][3]][2][i];
     5245              LLLL[size(LLLL)+1]=list(LL[2][LLL[k][1]],LL[2][LLL[m][1]], G[LLL[k][2]][3][LLL[k][3]][2][i]);
     5246            }
     5247          }
     5248        }
     5249      }
     5250    }
     5251    LL[3]=LLLL;
     5252  }
     5253  else{LL=L;}
     5254  return(LL);
    51385255}
    51395256example
     
    51475264
    51485265  ring R=(0,x,y),(x1,y1,x2,y2),lp;
     5266  short=0;
    51495267  ideal C=(x1)^2+(y1)^2-1,
    51505268               x2+y2-1,
     
    51525270  matrix M[3][3]=x,y,1,x2,y2,1,x1,0,1;
    51535271  poly F=det(M);
    5154 
    5155   short=0;
    5156 
    5157   // Curves Family F=
     5272  // Curves Family F
    51585273  F;
    51595274  // Conditions C=
    51605275  C;
     5276  envelop(F,C);
     5277}
     5278
     5279proc AssocTanToEnv(poly F,ideal C, poly E, list #)
     5280"USAGE: AssocTanToEnv(F,C,E);
     5281          The first argument poly F must be the family of hypersurfaces for which
     5282          on want to compute its envelop.
     5283          The second argument C must be the ideal of restrictions on
     5284          the variables, and should contain s  polynomials
     5285          being s<n,
     5286          (x_1,..,x_n) are the variables of the hypersurfaces of F, that are considered
     5287          as parameters of the parametric ring.
     5288          (u_1,..,u_m) are the parameteres of the hypersurfaces, that are considered
     5289          as variables of the parametric ring.
     5290          The third parameter poly E must be the equation of a component of the
     5291          envelop of (F,C) previously determined by envelop.
     5292          Calling sequence:
     5293              ring R=(0,x_1,..,x_n),(u_1,..,u_m),lp;
     5294              poly F=F(x_1,..,x_n,u_1,..,u_m);
     5295              ideal C=g_1(u_1,..u_m),..,g_s(u_1,..u_m);
     5296              poly E(x_1,..,x_n);
     5297              AssocTanToEnv(F,C,E,#options);
     5298
     5299OPTIONS: The algorithm allows the following options as pair of arguments:
     5300         \"vmov\", ideal(mover variables)  : by default vmov are  u_1,..,u_m.
     5301         But it can be restricted by the user to the more convenient ones.
     5302         \"version\", v   :  There are two versions of the algorithm. (\"version\",1) is
     5303         a full algorithm that always distinguishes correctly between 'Normal'
     5304         and 'Special' components, whereas \("version\",0) can decalre a component
     5305         as 'Normal' being really 'Special', but is more effective. By default (\"version\",1)
     5306         is used when the number of variables is less than 4 and 0 if not.
     5307         The user can force to use one or other version, but it is not recommended.
     5308         \"comments\", c: by default it is 0, but it can be set to 1.
     5309RETURN: The interesting segments of the grobcov each one with (lpp,basis,segment).
     5310        Fixing the values of (x_1,..,x_n) inside E, the basis allows to detemine the values of the parameters
     5311        u_1,..u_m.
     5312NOTE: grobcov is called internally.
     5313          The basering R, must be of the form Q[a][x] (a=parameters, x=variables).
     5314KEYWORDS: geometrical locus; locus; loci; envelop, associated tangent
     5315EXAMPLE:  example AssocTanToEnv; shows an example"
     5316{
     5317  def R=basering;
     5318  int tes=0; int i;   int j;  int k; int m;
     5319  int d;
     5320  int dp;
     5321  poly EE=E;
     5322  int moreinfo=1;
     5323  ideal BBB;
     5324  if(defined(@P)==1){tes=1; kill @P; kill @R; kill @RP;}
     5325  setglobalrings();
     5326  //Options
     5327  list DD=#;
     5328  ideal vmov;
     5329  int nv=nvars(R);
     5330  for(i=1;i<=nv;i++){vmov[size(vmov)+1]=var(i);}
     5331  int numpars=size(ringlist(R)[1][2]);
     5332  int version=0;
     5333  if(nv<4){version=1;}
     5334  int comment=0;
     5335  int familyinfo;
     5336  ideal Fm;
     5337  for(i=1;i<=(size(DD) div 2);i++)
     5338  {
     5339    if(DD[2*i-1]=="vmov"){vmov=DD[2*i];}
     5340    if(DD[2*i-1]=="version"){version=DD[2*i];}
     5341    if(DD[2*i-1]=="comment"){comment=DD[2*i];}
     5342    if(DD[2*i-1]=="familyinfo"){familyinfo=DD[2*i];}
     5343    if(DD[2*i-1]=="moreinfo"){moreinfo=DD[2*i];}
     5344  };
     5345  DD=list("vmov",vmov,"version",version,"comment",comment);
     5346  int ng=size(C);
     5347  ideal S=F;
     5348  for(i=1;i<=size(C);i++){S[size(S)+1]=C[i];}
     5349  int s=nv-ng;
     5350  if(s>0)
     5351  {
     5352    matrix M[ng+1][ng+1];
     5353    def cc=comb(nv,ng+1);
     5354    poly J;
     5355    for(k=1;k<=size(cc);k++)
     5356    {
     5357      for(j=1;j<=ng+1;j++)
     5358      {
     5359        M[1,j]=diff(F,var(cc[k][j]));
     5360      }
     5361      for(i=1;i<=ng;i++)
     5362      {
     5363        for(j=1;j<=ng+1;j++)
     5364        {
     5365          M[i+1,j]=diff(C[i],var(cc[k][j]));
     5366        }
     5367      }
     5368      J=det(M);
     5369      S[size(S)+1]=J;
     5370    }
     5371 }
     5372 S[size(S)+1]=EE;
     5373 if(comment>0){"System S before grobcov ="; S;}
     5374  def G=grobcov(S,DD);
     5375  //"T_G=";G;
     5376  list GG;
     5377  for(i=2;i<=size(G);i++)
     5378  {
     5379    GG[size(GG)+1]=G[i];
     5380  }
     5381  G=GG;
     5382  //"T_G=";G;
     5383  if(moreinfo>0){return(G);}
     5384  else
     5385  {
     5386    int t=0;
     5387    ideal H;
     5388    i=1;
     5389    while(t==0 and i<=size(G))
     5390    {
     5391      //string("T_G[",i,"][3][1][1][1]="); G[i][3][1][1][1];
     5392      //string("T_EE="); EE;
     5393      if(G[i][3][1][1][1]==EE)
     5394      {
     5395         t=1;
     5396         H=G[i][2];
     5397      }
     5398      i++;
     5399    }
     5400    return(H);
     5401  }
     5402  return(G);
     5403}
     5404example
     5405{
     5406  "EXAMPLE:"; echo = 2;
     5407  ring R=(0,y0,x,y),(t),dp;
     5408  short=0;
     5409  poly F=(x-5*t)^2+y^2-3^2*t^2;
     5410  F;
     5411  ideal C;
     5412  C;
    51615413
    51625414  def Env=envelop(F,C);
    51635415  Env;
    5164 }
    5165 
    5166 // envelopdg
    5167 // Input: list L: the output of envelop(poly F, ideal C, list #)
    5168 // Output: the relevant components of the envolvent in dynamic geometry;
    5169 proc envelopdg(list L)
    5170 "USAGE: envelopdg(L);
    5171           The input list L must be the output of the call to
    5172           the routine 'envolop' of the family of curves
    5173 RETURN: The relevant components of the envelop in Dynamic Geometry.
    5174            'Normal' and 'Accumulation' components are always considered
    5175            'Relevant'. 'Special' components of the envelop outputs
    5176            three objects in its characterization: 'Special', the antiimage ideal,
    5177            and the integer 0 or 1, that indicates that the given component is
    5178            formed (1) or is not formed (0) by curves of the family. Only if yes,
    5179            'envelopdg' considers the component as 'Relevant' .
    5180 NOTE: It must be called to the output of the 'envelop' routine.
    5181           The basering R, must be of the form Q[a,b,..][x,y,..].
    5182 KEYWORDS: geometrical locus, locus, loci, envelop.
    5183 EXAMPLE:  envelop; shows an example"
    5184 {
    5185   list LL;
    5186   list Li;
     5416  // E is a component of the envelop:
     5417  poly E=Env[1][1][1];
     5418  E;
     5419  def A=AssocTanToEnv(F,C,E);
     5420  A;
     5421  // The basis of the parameter values of the associated tangent component is
     5422  A[1][2][1];
     5423  // Thus t=(5/12)*y0 and the associated tangent component at (x0,y0) is
     5424  subst(F,t,(5/12)*y0);
     5425}
     5426
     5427proc FamElemsAtEnvCompPoints(poly F,ideal C, poly E, list #)
     5428"USAGE: FamElemsAtEnvCompPoints(F,C,E[,options]);
     5429          The first argument poly F must be the family of hypersurfaces for which
     5430          on want to compute its envelop.
     5431          The second argument C must be the ideal of restrictions on
     5432          the variables, and should contain s  polynomials
     5433          being s<n,
     5434          (x_1,..,x_n) are the variables of the hypersurfaces of F, that are considered
     5435          as parameters of the parametric ring.
     5436          (u_1,..,u_m) are the parameteres of the hypersurfaces, that are considered
     5437          as variables of the parametric ring.
     5438          The third parameter poly E must be the equation of a component of the
     5439          envelop of (F,C) previously determined by envelop.
     5440          Calling sequence:
     5441              ring R=(0,x_1,..,x_n),(u_1,..,u_m),lp;
     5442              poly F=F(x_1,..,x_n,u_1,..,u_m);
     5443              ideal C=g_1(u_1,..u_m),..,g_s(u_1,..u_m);
     5444              poly E(x_1,..,x_n);
     5445              FamElemsAtEnvCompPoints(F,C,E,#options);
     5446
     5447OPTIONS: The algorithm allows the following options as pair of arguments:
     5448         \"vmov\", ideal(mover variables)  : by default vmov are  u_1,..,u_m.
     5449         But it can be restricted by the user to the more convenient ones.
     5450         \"version\", v   :  There are two versions of the algorithm. (\"version\",1) is
     5451         a full algorithm that always distinguishes correctly between \"Normal\"
     5452         and \"Special\" components, whereas (\"version\",0) can declare a component
     5453         as \"Normal\" being really \"Special\", but is more effective. By default (\"version\",1)
     5454         is used when the number of variables is less than 4 and 0 if not.
     5455         The user can force to use one or other version, but it is not recommended.
     5456         \"comments\", c: by default it is 0, but it can be set to 1.
     5457RETURN: The interesting segments of the grobcov each one with (lpp,basis,segment).
     5458        Fixing the values of (x_1,..,x_n) inside E, the basis allows to detemine the values of the
     5459        parameters (u_1,..u_m).
     5460NOTE: grobcov is called internally.
     5461          The basering R, must be of the form Q[a][x] (a=parameters, x=variables).
     5462KEYWORDS: geometrical locus; locus; loci; envelop; associated tangent
     5463EXAMPLE: example FamElemsAtEnvCompPoints; shows an example"
     5464{
     5465  ideal S=C;
     5466  S[size(S)+1]=F;
     5467  S[size(S)+1]=E;
     5468  def G=grobcov(S);
     5469  list GG;
    51875470  int i;
    5188   for(i=1;i<=size(L);i++)
    5189   {
    5190     if(typeof(L[i][3])=="string")
    5191     {
    5192       if((L[i][3]=="Normal") or (L[i][3]=="Accumulation")){Li=L[i]; Li[3]="Relevant"; LL[size(LL)+1]=Li;}
    5193     }
     5471  for(i=2; i<=size(G); i++)
     5472  {
     5473    GG[size(GG)+1]=G[i];
     5474  }
     5475  return(GG);
     5476}
     5477example
     5478{
     5479  "EXAMPLE:"; echo = 2;
     5480  ring R=(0,y0,x,y),(t),dp;
     5481  short=0;
     5482  poly F=(x-5*t)^2+y^2-3^2*t^2;
     5483  F;
     5484  ideal C;
     5485  C;
     5486
     5487  def Env=envelop(F,C);
     5488  Env;
     5489
     5490  // E is a component of the envelop:
     5491  poly E=Env[1][1][1];
     5492  E;
     5493  def A=AssocTanToEnv(F,C,E);
     5494  A;
     5495  // The basis of the parameter values of the associated tangent component is
     5496  A[1][2][1];
     5497  // Thus t=(5/12)*y0 the assocoated tangent family element at (x0,y0) is
     5498  subst(F,t,(5/12)*y0);
     5499
     5500  FamElemsAtEnvCompPoints(F,C,E);
     5501  // Thus (12*t^2-5*y0)^2=0 and the unique circle of the family passing at (x0,y0) in E
     5502  // is the associated   tangent circle:
     5503  subst(F,t,(5/12)*y0);
     5504}
     5505
     5506// discrim
     5507proc discrim(poly F0, poly x0)
     5508"USAGE: discrim(f,x);
     5509          poly f: the polynomial in Q[a][x] or Q[x] of degree 2 in x
     5510          poly x: a variable in the ring.
     5511RETURN: the factorized discriminant of f wrt x for discussing its sign
     5512KEYWORDS: second degree; solving
     5513EXAMPLE:  discrim; shows an example"
     5514{
     5515  def RR=basering;
     5516  int i;
     5517  int te;
     5518  int d;  int dd;
     5519  if(size(ringlist(RR)[1])>0)
     5520  {
     5521    te=1;
     5522    setglobalrings();
     5523    setring @RP;
     5524    poly F=imap(RR,F0);
     5525    poly X=imap(RR,x0);
     5526  }
     5527  else
     5528  {poly F=F0; poly X=x0;}
     5529  matrix M=coef(F,X);
     5530  d=deg(M[1,1]);
     5531  if(d>2){"Degree is higher than 2. No discriminant"; setring RR; return();}
     5532    poly dis=(M[2,2])^2-4*M[2,1]*M[2,3];
     5533    def disp=factorize(dis,0);
     5534    if(te==0){return(disp);}
    51945535    else
    51955536    {
    5196       if(typeof(L[i][3])=="list")
    5197       {
    5198         if(L[i][3][3]==1)
    5199         {
    5200           Li=L[i]; Li[3]="Relevant"; LL[size(LL)+1]=Li;
    5201         }
    5202       }
    5203     }
    5204   }
    5205   return(LL);
     5537      setring RR;
     5538      def disp0=imap(@RP,disp);
     5539      return(disp0);
     5540    }
    52065541}
    52075542example
    52085543{
    52095544  "EXAMPLE:"; echo = 2;
    5210 
    5211   // 1. Take a fixed line l: x1-y1=0  and consider
    5212   //    the family F of a lines parallel to l passing through the mover point M
    5213   // 2. Consider a circle x1^2+x2^2-25, and a mover point M(x1,x2) on it.
    5214   // 3. Compute the envelop of the family of lines.
    5215 
    5216   ring R=(0,x,y),(x1,y1),lp;
    5217   short=0;
    5218   poly F=(y-y1)-(x-x1);
    5219   ideal C=x1^2+y1^2-25;
    5220   short=0;
    5221 
    5222   // Curves Family F=
    5223   F;
    5224   // Conditions C=
    5225   C;
    5226 
    5227   envelop(F,C);
    5228   envelopdg(envelop(F,C));
     5545  ring R=(0,a,b,c),(x,y),dp;
     5546  poly f=a*x^2*y+b*x*y+c*y;
     5547  discrim(f,x);
    52295548}
    52305549
    52315550// AddLocus: auxilliary routine for locus0 that computes the components of the constructible:
    52325551// Input:  the list of locally closed sets to be added, each with its type as third argument
    5233 //     L=[ [LC[11],,,LC[1k_1],  .., [LC[r1],,,LC[rk_r] ] where
     5552//     L=[ [LC[11],..,LC[1k_1],.., [LC[r1],..,LC[rk_r] ] where
    52345553//            LC[1]=[p1,[p11,..,p1k],typ]
    5235 // Output:  the list of components of the constructible union of the L, with the type of the corresponding top
     5554// Output:  the list of components of the constructible union of L, with the type of the corresponding top
    52365555//               and the level of the constructible
    52375556//     L4= [[v1,p1,[p11,..,p1l],typ_1,level]_1 ,.. [vs,ps,[ps1,..,psl],typ_s,level_s]
    52385557static proc AddLocus(list L)
    52395558{
    5240 //  int te0=0;
    5241 //  def RR=basering;
    5242 //  if(defined(@P)){te0=1;  def Rx=@R;  kill @P; setring RR;}
    52435559  list L1; int i; int j;  list L2; list L3;
    52445560  list l1; list l2;
     
    52775593      {
    52785594        v=L2[k0][2];
     5595        l4[1]=v; l4[2]=p1; l4[3]=L3[i][2][j][2];  l4[5]=level;
     5596        if(size(L2[k0])>2){l4[4]=L2[k0][3];}
     5597        L4[size(L4)+1]=l4;
    52795598      }
    52805599      else{"ERROR p1 NOT FOUND";}
    5281       l4[1]=v; l4[2]=p1; l4[3]=L3[i][2][j][2];  l4[5]=level;
    5282       if(size(L2[k0])>2){l4[4]=L2[k0][3];}
    5283       L4[size(L4)+1]=l4;
    52845600    }
    52855601  }
     
    53055621  for(i=1;i<=size(L);i++)
    53065622  {
    5307     Sc=PtoCrep(list(L[i]));
     5623    Sc=PtoCrep0(list(L[i]));
    53085624    Lc[size(Lc)+1]=Sc;
    53095625  }
    5310   list S=ConsLevels(Lc)[1];
     5626  list S=ConsLevels(Lc);
     5627  S=ConsLevelsToLevels(S);
    53115628  list Sout;
    53125629  list Lev;
    53135630  for(i=1;i<=size(S);i++)
    53145631  {
    5315     Lev=list(i,Prep(S[i][2][1],S[i][2][2]));
     5632    Lev=list(S[i][1],Prep(S[i][2][1],S[i][2][2]));
    53165633    Sout[size(Sout)+1]=Lev;
    53175634  }
     
    53215638//********************* End locus ****************************
    53225639
     5640//********************* Begin WLemma **********************
     5641
     5642// input ideal F in @R
     5643//          ideal a in @R but only depending on parameters
     5644//          F is a generating ideal in V(a);
     5645// output:  ideal b in @R but depending only on parameters
     5646//              ideal G=GBasis(F) in V(a) \ V(b)
     5647proc WLemma(ideal F,ideal a, list #)
     5648"USAGE: WLemma(F,A,#);
     5649          The first argument ideal F in K[a][x];
     5650          The second argument ideal A in K[a]
     5651              ring R=(0,x_1,..,x_n),(u_1,..,u_m),lp;
     5652              ideal  F=f1(x_1,..,x_n,u_1,..,u_m),..,fs(x_1,..,x_n,u_1,..,u_m);
     5653              ideal A=g_1(u_1,..u_m),..,g_s(u_1,..u_m);
     5654              list # : Options
     5655           Calling sequence:
     5656              WLemma(F,A,#);
     5657OPTIONS: either (\"rep\", 0) or (\"rep\",1) the representation of
     5658              the resulting segment, by default is
     5659              0 =P-representation, (default) but can be set to
     5660              1=C-representation.
     5661RETURN: The list of (lpp,B,S) = (leading power product, basis, segment)
     5662              being B the reduced Groebner Basis given by I-regular functions
     5663              of the specialized ideal F on the
     5664              segment S given in P- or C-representation
     5665NOTE: The basering R, must be of the form Q[a][x] (a=parameters, x=variables).
     5666KEYWORDS: Wibmer's Lemma
     5667EXAMPLE:  WLemma; shows an example"
     5668{
     5669  list L=#;
     5670  int i; int j;
     5671  def RR=basering;
     5672  setglobalrings();
     5673  setring(@RP);
     5674  ideal FF=imap(RR,F);
     5675  FF=std(FF);
     5676  ideal AA=imap(RR,a);
     5677  AA=std(AA);
     5678  ideal FFa;
     5679  poly r;
     5680  for(i=1; i<=size(FF);i++)
     5681  {
     5682    r=reduce(FF[i],AA);
     5683    if(r!=0){FFa[size(FFa)+1]=r;}
     5684  }
     5685  setring RR;
     5686  ideal Fa=imap(@RP,FFa);
     5687  ideal AAA=imap(@RP,AA);
     5688  ideal lppFa;
     5689  ideal lcFa;
     5690  for(i=1;i<=size(Fa);i++)
     5691  {
     5692    lppFa[size(lppFa)+1]=leadmonom(Fa[i]);
     5693    lcFa[size(lcFa)+1]=leadcoef(Fa[i]);
     5694  }
     5695  setring @RP;
     5696  ideal lccr=imap(RR,lppFa);
     5697  lccr=std(lccr);
     5698  setring RR;
     5699  ideal lcc=imap(@RP,lccr);
     5700  list J; list Jx;
     5701  ideal Jci;
     5702  ideal Jxi;
     5703  list B;
     5704  for(i=1;i<=size(lcc);i++)
     5705  {
     5706    kill Jci; ideal Jci; kill Jxi; ideal Jxi;
     5707    for(j=1;j<=size(Fa);j++)
     5708    {
     5709      if(lppFa[j]==lcc[i])
     5710      {
     5711        Jci[size(Jci)+1]=lcFa[j];
     5712        Jxi[size(Jxi)+1]=Fa[j];
     5713      }
     5714    }
     5715    J[size(J)+1]=Jci;
     5716    B[size(B)+1]=Jxi;
     5717  }
     5718  setring @P;
     5719  list Jp=imap(RR,J);
     5720  ideal JL=product(Jp);
     5721  setring(RR);
     5722  def JLA=imap(@P,JL);
     5723  list PR;
     5724  if (size(L)>0)
     5725  {
     5726    if((L[1]=="rep") and (L[2]==1))
     5727    {
     5728      PR=Crep(AAA, JLA);
     5729    }
     5730    else
     5731    {PR=Prep(AAA, JLA);}
     5732  }
     5733  else{PR=Prep(AAA, JLA);}
     5734//  setring(RR);
     5735 // list PRR=imap(@P,PR);
     5736  return(list(lcc,B,PR));
     5737}
     5738example
     5739{
     5740"EXAMPLE:"; echo = 2;
     5741if(defined(R)){kill R;}
     5742ring R=(0,a,b,c,d,e,f),(x,y),lp;
     5743ideal F=a*x^2+b*x*y+c*y^2,d*x^2+e*x*y+f*y^2;
     5744ideal A=a*e-b*d;
     5745WLemma(F,A);
     5746WLemma(F,A,"rep",1);
     5747}
     5748
     5749//********************* End WLemma ************************
  • Tst/Short/alexpoly.res.gz.uu

    rb61d2e9 r0fa62f  
    1 begin 640 alexpoly.res.gz
    2 M'XL(""L!GD8``V%L97AP;VQY+G)E<P#M_6N/Y#B2)HQ^SU\1>'$^9%6XUXAW
    3 MLGNS@3V[T]@!IAN+LW/.6:#1/<BIBNI.O%69O9E9-1&SV/_^VF-&2I1$R>41
    4 M'A$>EU2&NUSBU6AW&LG_\2__]9_^>'%QH7YW\0__</'[#S]=_>;B_4]7UW__
    5 M]-/-=U^_?'WS/W("_1T2_,O5EZ]?+G[\]+E/=/'3AW_K$YGO+O[YG_[?%_\7
    6 M9?R.GO]?O^W?V-]=T,-__?#QP]>WW_SV#;XO?O>[H:J/5__^W9>O[X?ZW.^D
    7 MJ#[%N#S_NXO/'S[^]>+SNV[W]GIW\\WNAR_#VX#>G.I?7VID$%S\UZL?J?E4
    8 M]]7U^Y___M/5E^_Z%.F[>ZA7=5+O/^;J+C[]>`&(?/ST\X?W/WWIDZD35MX7
    9 M2L/^TX<O7R]^[(&KS.\N?OR3^O/%NVN]O]'#<XOGFI]?WES6;QS>&'KS%J_,
    10 M-]_*]^7UC?YF2.61RE*J_;4.].?VREUK>[,WW;4V-_J2?G4W9J^,NU;IQEZ:
    11 M:Q5O*%5WK=R-WR?ZMC?A$K^[F[0WU^E&=7MW[6X45:?<4%5`50Y-=?L;I887
    12 M$2\\7MS$2_I_;6_\I;TV]*FI''?IKSW5;*\CFD_5:+I/]*FOE;JA)U6O$\H*
    13 MW&N_O[%#3W6'-Q%OWKZ]H9Y>7@,FN-O3W3=52H64B5->A[VFYE#B&[M7-PY0
    14 M#'O+CVQY5F75/$S=GRGK#9?[K7SOKVV=3$93]<GP&BFI39?CE#R^2B/E6PS]
    15 M-W^A1&C&6UW]K#+PL"N##$B`<J\O;T9E\I@K^V<:\W1Y'??^.MS0N'IJ"CIK
    16 M:!`-P?O&#UEX[)1#%JTN"27V$7A`D"`LT/AA:&P\!L?20\(,&L@A.X^P\LBN
    17 MJ$H5]XK&+MQ0U9S?,A:92\(]I0%5'EFWUQV-L\=C?X-V&L(M0JIAO#6/MPI_
    18 M)OS7:-M>62#L94#S]#YTJ,;LM4)%U#2-BMREX8K\GNL)>_J9"/$HE0?V!E0$
    19 M[+5]18;11T7N`I!">;KA%BHA$RI/[X4,++Y!+/3EJ19'Y1%FJVXHCG%,)1HF
    20 M!LRWW(EON89AI`RCD^[*8#(1F[V@(1%1$'0D8L*-4G1GJH$VC&::T8P0RUQK
    21 MPG8,K.JD('I`PU3G$':BN9<*M+8'U>U!A@2/"AR,9IK0#/4/(VT8MS3A%H!S
    22 MHP84,HQ"FE`(?.Q;,*WA'>.']GBG\<Y4[WB$=<`[BW=N>&=Y4'2LRN3,WS:2
    23 M,L!UXJ3\4M5O&="FPUL>C%"]8R@:U;^+G+MJOF6H&8(:T22!^0:L@:$[)!%N
    24 M#+*\)JHEZ.^U?!GYLC?#*%@&HK%KB?'EZCP,7N.0)PBF$!IJ0CS-]'A)[/":
    25 M\44SO@P9&?:&:5,3H10Z`J6`QU:$Y%%B)B0B,P4&70CI,`59'D@3N*)$?Y'*
    26 MAJ2A/!H\'45Y<!]A`B@+DB:P.+@)?4&.1KV_)_G+"M'?_U5=O+M@#CHDI%'-
    27 M+S6]I"1_T1>7%P2-(8GIDQA.HB7)7U1W\2UE&!+:/J'EA"8GU)QPX$C.]0D=
    28 M)[0YH>6$5>M\U8WP'6!#B#RJ4X8FX6E5`</1=G@ZE.:9%*S"TP'FGK'>:CP=
    29 M)+%G;+>&:T/C1^WRC._6<OG?CO+9H<7>H<46^$9X!>P"E@G"7;+4Z26%8DR"
    30 M0D&L6(O(`#<B1DP,.6*PG8@.0B,219&+2N#S`YIZ452814SXY;?,L;YE=O0M
    31 M,Y\A%U.%#:"*PB\).V]4J$IF*-LX2D-,5ILJC<`\U6FLB6#%QE9*1N!1<%VC
    32 MOIY3#XG5`,[0JWS_^N'SYW=$]CN2VKNLI^R*DK"K=(!=K0'L*(=&%OZP.Y82
    33 M.V[#3NK=9?FP`Y?<@4'NP"!W8&H[YHD[YHD[AN^.X;MC^.X8OCN&[X[ANV.&
    34 ML6-JWC'>[AA/=XR7.\;#'>/=KHT=N]-@QZZ'[JX?LQT5:M%A='D8HP'JIH*Z
    35 M/:7IL*C/!\>V1&_"?/W;U<6'C[^^__SA_<>O;%G@R?M_^_3KU=R\"?YAVA@R
    36 M`O[^]P.H(BRZ_]Y;/;]A$T0LD#X-65^__ST>(_?;#Q^__OR>OWZ]^OYMMU-T
    37 M==_L](X&JR3`&_7-KK^K](_8S6LDYD72B]"FKS,JKE.WZ_P&E4YKJ^O0\SJ@
    38 MQ]A+QDXB*C:2'.F_?1;#%9J%3EJZ6IW4.]-W$_=U(^R\$<1QR5XJIM/$H)K:
    39 M6PMFV=R`@UW7U^JX'W8[X-Q.T_\P:KJ?-YW$@!AU?:+`-;G--;F=&H]2`_>(
    40 M^9.*(88A3$4Q"\5$S#9C8KM,[,3!/NPJW!%\]9L;%G=*[Y3=*5<W+S40%9H-
    41 MM>>Z1YLD>!H6T,;0=23:I`;NDN!BPXUT^6N[KVH7I(U'UKY`F:F!L"0.R=@B
    42 MCNRNF2$S,X?IYZ_9)6!H(*"#!D),CZ$@2:5L7Z(@8UKA',P]JCO#W]QNHKGE
    43 M=I<[N_.[,/E5]ZF!R;#=B^+,.C,;_ST%)<%KI&JVVM%U[)BVN*SB5ES#0`W[
    44 MZ]BGS=QVB=T>CU*J:V`R_`U4O6=62,-H8=EJHK9+,01M<1HX.!!4UY<E"*\6
    45 M.#/:M=`\5S7/C9K7P'AX-Z`.@=C@+;B)?6K!>;7$J;4TH7Q_`X`=1B,U:E"#
    46 M$.!+86?"X#P9NU6N4Y]=L%YMY\%^%W=IU((6VCKPQNQYR6X8<<I4+IIXPQH7
    47 M:5Y]41F=M_/IN-,$OC%$6@@,7JUT<=ED!\[@SAEY>29.H,H]1+*MKR6C_G;.
    48 M#;Y-W'L$.]7"]H"VVF*S%A,V6[033]'4D33Q,U4>*#*D^UHS72Q(@E;;+0%Y
    49 MI_6H[2U2`/=G?RL\3-G=E)U/$Y=4Y:TJ[JO0%YWI9D%8M!I(?)ED=A@UL$4:
    50 MZ<_]ZXSZ2QP_$7].1)R>KR9Q%JCLID.\6VM6@UYT-S1+:$`OL73+7-5`Q\MW
    51 MS&5']U6:;R`#)LTFZ`W\UU4BJ>;+`1I0^6'&7%`U2`Q^O6OQD.^%1=,'*['N
    52 MDK$!_KYTR00(7Q29?]?BD^G9I1*:TFO:^U0*J]SU+(FIRW*WT/4F.QVZ']I,
    53 M5K?L`)TE,_.*Z\B*'=R4?:9L%FRW"ZCMW5CO5+I!9+V;LT\DY*(7Q$RCIK"+
    54 MHUH:E%(Y3?MD0C'Z*(5=^5%-+>2'NJYO]N"U)#UMGS93PH(TF*#"K:2G;B&R
    55 MA_4%#^6E:%N82H`^2\CLV")CJ6!8UX<WX)K]@1G3-1L#X;(:G8S5"Y*B[P8P
    56 MUQ[HQHKB9%HX&GJV8C(V+FG_BY9Q,;D&?C'&4-/"T#C4FW%S2>]7HVO^6U>_
    57 M=..]K5+84?JL4@40]4&DF/9R&>2+<&C1T"!M3*:=)6FSI(N*NE4J;:@[ID%1
    58 MF#G80]^QF=WB/NL\\%:!->>Y%,+;0,PY^[A%.<-7UGPN6?&YA">\5Q^,T*59
    59 MDE"U%&HC]!),F\:M,@TB-6J`K-"769(:NK_&]V@D[D1XRIUI2HVJ6;59T+I?
    60 MX#.V09S5!`W/?&&2ID\OU&J6+)?C_%C*MGQ,[&2".F9NH%5"-W/=-7B='7BP
    61 MS:ZF)0NF91;W=QO-XJ5&-P@*DU#7[%(B!AT=3R=I[=@PU$%FP$G9=7T90G5F
    62 M06(M:A0+]T=K%$M=:]&LZS':9@);$GQZQ`M;!#;V-)B1BC=F6[9%7'Z3!3*9
    63 M>IO,S%63=F46;T#O3+)'&$^B:H\DGFL1%8RGD"?I\HQ=F<`K$WIE@D^F^ZYU
    64 MQ`1@7VBFO.VV4=CID4WG6L3&7C%2$?I$F:ZV6S@3<>]:U)&@DEX69Q'4E3YY
    65 M)H0%\=-41L?N*>4:2(MIO]X'6OL_VZY/+=$RA"]]H8+J=D&6;'6`*M=`8SO(
    66 M""<(9Q=D1`OA_$X3SL6=(>DPHAC?0#NK^ZJ\()#=KO8;O;-QY\C*)&-3[_QH
    67 MG'T#FZP9:A,\LFMS`9:-6+M@Q"[(WR4OI?*MJ0([-"C[])<X;J2K);GF0%A7
    68 M"GP+&P<6ZC->+;'0)<_DF'%2Q3-]R[<PS0\59TQ;T_9%`X%LB;ULB3T_UUGN
    69 MP/\@]^*%D/OLBZ"OMNTXF.^QUF[)"EMV4LS<&`VO16AA_3"1W<]\]NDS&1P[
    70 MVU"[(]".<2-:Q!#K1LBD:Y\^4\>QDPZC1IB)V`DM`DA5(ZJ9^#Y/IHHE[7]I
    71 MRJYN"(K=<:EU8UJS7]U\6,IL?Y\O3XC=7H>?#]3(<U2WL4$Q3N4`JA(-6D='
    72 MJ3R+Z]8=0;TBU#*9IP;=FND6AP@>%4\90=N:VE:1HZC_H0_EW5U\__GJ_=>K
    73 M'RY^_/SI9XFX&)IC[KTY''1P\5\^??SRX8>KSSSW__?/GW[XY?NO"`5X_]-/
    74 M\F@(-K[X\%%:^5U?AD04U$/,H6(7B/6DSQ+?>C&$E_)MGB5$R"C_MF('Y0>(
    75 M(9$B\A=R2;SA1<;OBX+7%WV\(14DT_.XNY_YZUP]5WOK&6#D79^CX=(WSZ%P
    76 M=T\QP\$%W<?T`Q=\Z[D!Y&ZY6S,.1$8!=E=NZ\#QU@O*O8UIP;B=T7^LG=?X
    77 M<XSVS#WTEQ$]I#P1/41ZPG1SZ3RC.)GQE%^I2W1)`SD[E)(H%Q5#[QUC`962
    78 M2<`P)"**(U!83A^H,4CGD0[)`WUIS)QK'E9S::T0#(8KL@,47B2BE$OE"6Z4
    79 M$M^*4C*)L<\4'23X4)=U#G$A:&@!A^$,A.2$PQHXHB-528.>J"%`%DJK"%EI
    80 ML,(E\5+N'-49T&QJF+LT`B<B/N.YS9JJ2(HQ5)M+$YF(*$OL.NZJ[O)MN-&*
    81 M1M8S#E"NR$R"\BAEB5:H%XH0UW?H$8$P70;3<?=1`@$$92EJ=B204_]HA+3M
    82 M-$-#46-]H-822*@0$W-YZ5*9R#C3E5H"CVFP!'=-X^KHWJ`0AP)5YZ,43@6J
    83 MR#R)RN/VFX[Q7:I,0`5#6:F4B!)5XIP!)5J+6\\%HJT.Q3&XC'`/[J/!)`V!
    84 MKJ-6&<5E.]UU7(^Y3`F]25PT*<5<BY,1,<1Z<I,0&J<2WUI&2AVMU$*`L@HE
    85 M:Y1L;-!<"8+N-5=A><`-^!</GX&S,G4H'QY+9;WEJ@!"FSSJ`E9C(%"7HA98
    86 MKDDS)EG0*;#$$@>D$A.QW@YT!UA0+839`!#5`E*16JCH$#PJH9)S%0KX:>$E
    87 M!1I:\$\J@I0^Q-?'R!41$J(LJLE?&L"):@J$6>@%,R%O45$B(0'LML3TD=PC
    88 MZABI$7*8:&`L9M#(\.;B";@6%6&&P1'94>DT:-P+\!";0).6&".@2D4B@EFC
    89 M4+`$BT*),CLNE(HBV%C#5.TZD+Y--]*AB)ZA^(!&6!1`;=#([Y!:@=0=<73"
    90 M+)N$OFUD^G::2-HI2##'G,J9PK5S^`J'75Z'+*LX<E*B*$M(98ZPG,1=YFC,
    91 M.D!3)%Y1;R]ZU9_N^H!+_&@HX]&+=KGF7#W5=>K2-+NJQT]UUH/K2\V>Z$F^
    92 MX@Z?EH6I5'&-B^]`4MCL'B_SRF:4R^323M,NW9CHN5U9-=RF^5KE3Z\UN)VF
    93 MK+HT@>36LFRC+)G6**,SS6EFI<O(VCSJT[),+JU5ELW/YS7HR1N=6VOZ@+F[
    94 MMTM*:Y45Z%IJEU\<A\&6/!9739.&NKY.D[^E%34-F69+5>YA75N;%I;RK;7+
    95 M[%2>[)JVB_U>?$U'8ZTLDSG2<A];X[?,)PHM^%'-2["W*^T2CC2XT,*H76[6
    96 MKD-EU2ZXNY;%+KQ=<>>ME[4.+]]3_6%XC<L4&@KYR3A%[98<KIJ&MI<5FQ)P
    97 M3(^'X`6L++`?\.TV\#)]B^7Y6"YLHVWDM4T:*MYV>Q0-^05Z+(%GQY05%FE;
    98 M'.^G*8O'M#M98514J[!#6.'XDA1NA!7=QH:%W18NW=;@!JEVG+3M<EM/49;+
    99 MU#`MRX[P>;M&,=7@:NHNM#K.Y2?\8&BM>&4)X^)Q`7BF&56Q%&$QOS-5RMI#
    100 M/8IF'`=`KD0!N3I78W*L'9QSBXF68;9M\RQ.F1`?DNK4!.1X2JO1B\E49P_*
    101 MQ1FYA4FR]FR`S)_T#>NH:E7UL#FK$4/ED(\3W_+%;R[>LP]:;+B+?__P]6^?
    102 M?OG*7NJ?WF/-XJ=?/M?^ZE=G]*LS^M49_>J,?G5&OSJC7YW1K\[H>W)&]PI+
    103 M#EXX%#)[E^M4I=S=G7P*-_(IW,>U(^2V9=1PF:9OE;MVW=9-/$UQ&_?P-,5M
    104 MW,+S,HYW!\_+.-X-W&K'L>[?(>_=W+ZG=/?6[JACW+QK[3C&O7L*MVX;I@/-
    105 M;7'GGL*->PKW[2G<MH?@<8R[ML;U8]RTQY71=L]N@\=AM^PA>&QQQY["#7L*
    106 M]^LIW*XG<;>>Q,UZ"O?J'=VJ%]_L#`W14>N#7OV#3]D_6#GX4A5QFSCB=A(>
    107 M;/_\CD-,L6SVVWP7^KO8WZ4A:#AIT;N75A[H7IX4WM-E#F+;2]6.A&#=/5-U
    108 M[[XV]>HK<.-X8D3M?O^W]Y_??__UZC/UY\/W%]@]^>/5QZ]?^CSWM8M77T'9
    109 MO^O77P>HQ-_13^S-52!,%$%2A/!6NPIXB9/I/AFE,8QEJNOZ9!H;Q5`R,R3;
    110 MF>JMXK>V?XLU<,-;S6]=_U9&<'AO^+WOWSNBL^&MY;>A?^N92E.5PG&*V*<(
    111 M(,WAM>?7J7_-1`?JLE6B(-#J^E0IX^.0)`.T@BB5X79656D$FFH`IP$'<0!F
    112 ME4P)-)6IB@+SH?)H?"P1L`^Z2B[@5;;J`J41!C&DTCT9:'5?@>Q]!79.!C__
    113 M\M/7#W__Z</W'[[>7'RY^E^_7'W\_NI+G\/==Y-\)H)_'T!"H_KO%0FP<*P@
    114 M%O&Z&JLL:^LD"4E,A;I9"`])L%W%OU>X[XH4KI(H)'$5"OM*L:\3:B3T%2:'
    115 M03NKDADD"Q4ZV.K*"EV5W")YK%`[U=I"E=`A8:H17/Z+?M+K'54.SQ#N:GR7
    116 M_]KM7J^'NUIC(]BO1DS&S?YK5_YW=V[%,=<<JYD<*]X);;Y&ZG%JILR:A9+V
    117 M-[K,IFM2K&%JKE@MR<.A2'^@L,D(&*9[-1"^\9,V3J]#%6R]UDW5U^OU>G97
    118 M178L1=4@1K4ZD@D,%H4VLF)O7_V[^'KUA9?K?;[Z\NFG7[Y^^/3QKY_?__UO
    119 MOQFERO_Z<DC_F:3'[O_8\%\Z0%][^';>X&.OAP;@X)591HV,>]4G(E[/RL]_
    120 M^WCU[H>K7Z]^^O3WM]@TM>I4G)=#J;E^^*6Z_GHCCK?J`=IGJE1OY,N.'R"5
    121 MRZG>#+G]^`%2P6M1I<##O1IZG%H]-O[/C;8V6ENUM^M3SUK</U(L/4>/\-#7
    122 M'2GOP[1OJ"A..S/I#K:CF79'-KW(8]\UKC=JUJN^B3(ST7B!5W;2D*JY;@ZY
    123 MH;>J]:++8]5XT>6>-U[@51K#?02Q4;/4^)V:`[,%4A*L0ML7O[Z#3!W.FM#8
    124 M?F<*[E^/Q)P9,-02YLR`W/6P;$"Q@GB!WRKF&.[FS^^_7OQ!$<G#5LGKZ(?N
    125 MV@$4ZAT9ML,;-[S1[]CH'M[YS"_H[==/G[^\^U7M?M7#Z\)._EF]^P.]D43#
    126 MZP8K^6<U@_$$OA5L*\+:SU#(CNE.Z',$S(H[XF")`B)-AAILM2Y[7/OOON'8
    127 MQ":#Y!?UCAV&P[L!IW[1]([=<L-;/;PU[Z)X!H>W9@X0]F[]08N7ZQ>U^T7O
    128 M?I&M#=1N0(+VU<#,;I)ID0^L8NXT>6[+P+<72AEC]F(2M1OSBV8I/(+F4!I<
    129 M4X;58!I3UM4H981EBVEPF=V,QN=%V?$0M!,UQ.#\\H>2-$5ELWL#0<A616U]
    130 MY>NGK^]_JMPT'ZZ^7+S_^`-V(+C^\/.'KS=$1I\_7*_J,=C;J%'.6VR!3KA-
    131 M&LUOWN!TNWZ4\&M`9WE7YM;E73]`PT_1@(C?<6$P_O`-SH=O^$]*VOQ-B<TX
    132 M<2F_KJ=/7#I#;+#5F;]]O+K^^_N/7XB8WV*3=5`M`?6/G^#K_?C7*U;^<)K#
    133 MQZOOK[Y\>?_Y9D?T__67SQ\O?GW_TR]7%Q^^7/RW/U[TA7Q7P:7''OZE1U`Z
    134 M$BXEZ10^3;A,X;$*E]"&"[9]'PVRV@T#W8TZMF]R@8P9>]U\)7<SF9PS=2,E
    135 M5(WRX!I)Z.J-&JMXHSPC7C1]-10Z+FX@<M7,PX7:\3#!AU&GG=ZKG03XE^%4
    136 M_+__9<HO]H7P%-&TA)++#.DX:95NC`R'FB1CH9OW4ZQLEZ,6[BM$BTN(UI_3
    137 M-6$JBV)JQ&:Z6<J:P);R"R[;9AUU#^=R:=SKN5":(E>#/N:89)H=J`NQ_5T;
    138 M>[L5Q"\Y>W6U^;[271OORX#$14KHNUNQ+>A=^*9<@IZJ1VCZ,AGM7;ES)"D'
    139 M3)6,NBL9[7`G;:!<,=,*9GJRQ"`Z'@H9Z*`T1???W>A;3;X'0-G)MSKP7>%\
    140 M6L3YV5F`<W':QMQE?;$6N?.A&P^\;9918[9K(,!XX/UN2H%3S)\JB'..'!N(
    141 M/TZ1*KE3\Z$AA>H.8OY^+8&\RX)J*D[JA.$P[IM*%EAFTAG+%,<D.,%6C8E7
    142 M(V\LB?)0"""2Y68+#2B=L*9GER27"@@@`**[7"11?*0_EW\[(A:M^1E31T<Z
    143 M!Y[E6J<`&)7AJS>5[*B[@*@D-[D#A'3C;M`[NI6[>7O&=ZIN4R8IW_56X,^#
    144 MH2QS5X/UYRNO@7E'8*Q>#>;=K_;=V+C#F7AB#.MW/RNQYWXUNU^KZ6-LT]@B
    145 MZ7_6,^G5PK)U"EZ77`-86M0[IMTUD=,PI%;I=IUJEVEVF=Y4L??;P,K.H35!
    146 MM=>+KS,YJXH2$>K(-ZJG1UT$BS$])=HB8HBBG-QY#I!@I`^[D&52W$6Y2VF7
    147 M,C*CCC01'#4E]4U8T,V/_YZ*J8I&W.`I,;VGQ!):0(O(WP-&^YX@_D.]0RA$
    148 M)/8TO`[#:_T.LIK4E<'UA&T[RVOS3H2Z&9PI?D$"CEPF_Z%V_Z%W_R$NDRT:
    149 M8'O(:XQ;EI'M7'7>0\Z6]E5KE>O^G';>DL9MS#//BVO);[,E[Y)#9TO>N2P_
    150 M)N^89QR;=Z(#')NYXC?;,T\TD,/HMJPW+!C0VS+C:MDH6_,.LQ_K>9=2A,5W
    151 MZ_5*KB6,.9175+,VQAS.*_G;?LF+J>6U=,U9Q+:*I?(IB]B>=R[>EQ2.I=SU
    152 M@!]3KUS#@!^;5P9\S8(]E#O=,J^@BYIX)HXL8.2E5.QQR7IW9)F7-0</[3UK
    153 MY-'NDN]U!57_T-4/1>D4/2E*N`YD)).2H;,V8CSV>X!DS7H*I;.4UW9%6]$[
    154 M1WEL+L^3(N/)6'"U4M\W*/75>@1)QZ%:*D8GWU>+X$1+MD>I!D4&:J:WTV)M
    155 MRN'*K"=UJ"#UG5;8F:`8\>SKBAS_./YMLE8&J,(TRB8,S"1JM'4I0[?CZH.O
    156 M3)K*'UP/2R!D&^ZZV5UIO#K)75?=F<;=H*ZJQEU=BMMX-_A_:U_=FNF$K<;9
    157 MNOF7/_3Z&0ZG_O'3YPL$9U]\>*=^^^$_O7/ZMQ\N+[_ID^CO+OYW_\-\1^7^
    158 MRQ_^].'/[UIZW>]_3V\&:PG[<^?DP[.`9Y.)B+><1H(D2KKTW<7_F3B@Y:[W
    159 ME"]YR2MXSKWBXY<C;1-W^\'TX'HJ.V)O%ANAAGJZU:)R?7LU-'IHX="<H<[A
    160 M==?T$4WUW=)5,V'3*B\EK&7Z?HR"4W`N3<8@5G41S$N3,AO`/X/<Z$'UK)33
    161 M/QKZ4,&\?S`=Q"GP]G/H[?4,?'NS"7XS3#C8*[V;]<K,>V7GO;(7*U[#@>^T
    162 ME(6VP[FXF><"ONU<KF)G1D#HFH[D/H)F)H/5V%SG&%7KL(*!K&[EB*?#Z(QD
    163 M&@VTXDJT<K_.<\7],H/^$F:-T&+V9H9FC<<--,W#U<#6<9XY8/!B`75'+9V^
    164 M&)CCPCCOEP9Z0@O5")4ZID.=<\S'FE\L#G:#1C:.E9X]+T`TL^<9B+;]>#^8
    165 MV_.Q\HMC%9;&*EXT9G_K$1F:7H/,-'!I%'U00=PUQJPX]`:U0IZV_-5C4G,2
    166 MW;+3I,":G67-=:"Q4;3Y"GTU1ZP?ESD"3@FK?]K-J6=?W'FC?O<6\P+E3.BF
    167 M/<^\]\W1&*6NV'^+,!J"8O1X.B)-DE@GB'7@ZM;#$26,@6OG3[N!#.;`]6W@
    168 MAF7),]5'!GA/`DO[4N>(/@HO'=7N9\_ZR)E51.>58#)+#FN)**[S%:;'>N7!
    169 M;3!]658T)<62G%@0$LLBXH"`F.DW]6@T-*$)_M?CT>#_5>KIB)P2T>=<?Z8I
    170 MS6%K)T\;>%[#]A@\'V/X@-N/&N8TQ]@)/*=8.L'/ZN>2NCQ!I@J-#O6\.>J+
    171 M[=/3]IEI^TQ+SA8)6S?VT:.L-@U+@^H/C<K48ME/^WW"4>EN-2AMB^0U6NPU
    172 M6FSLAYU$BZU-H2_:!M6KI6F]_8`="Z\6E*RN];(MG-O8LBSH:[QIOEJT"\O+
    173 MBB.X6]-<&V"YDC6BVP^AY(N*P;SC(_=*D^Z67E7%M@EOP>(LQ:Y9G14RW!=V
    174 MM>S6?BC;INM4FVEBU]R$K09UZDD:8Y=ME#B4NZ3DCQ6@`2OJB?.!"=@9AJML
    175 M5XX'<=\:UV/<D3%']E65;7=+;G9/-M%D4%Z:NGY#R5Y0\Z<P6%''AMPS4EL@
    176 ML::UVG!L+H_&(@FMPD3ONDE+*H0?P<2V8.):,&DBYQ@Q:Z1\U<P?43.O$7-P
    177 M2-=MF7O`U&[)`[8@'DQ5X"`1;$,@J.:`%ZW'Y6_53=B)S9-OL<20-5%A0(EN
    178 M]%WW;/R]HO0T!5(>[.V.M0J71DD'NIX]O)-;K:T5-/2!14U@<9#/S:V6@=+T
    179 MJG4C<JE!:W9-T-IUJU95F+,?&WM='0^9]0TSMC,&PU97=3?NQK;`P-?4P6RW
    180 M,G5[I6H$IE53UQX$QA1';F_J<E%ZVCP][>VXC!:FFTDOA#G-%6<W>2+VWQ2[
    181 MQ\Y-WH;0Y]@'UU5^S;(SYII7<U5TSP9SNSXS%#"AX3$3J2>B%A6:A@->0-CT
    182 M2LYLA`6/Y!J'6(6*GC[;KM'L^UFG&53\LNR<2\]Q5>O3N4M8UDV>+JT0FJ\+
    183 M*EB_93I7<!/A2EBW$S6OU,$2G=K]'D=;'=]R*G?1AI_B\H)D;&/O[/D2ME>E
    184 MS6%R0'3VS*WMP6_Z\#->%_-O@0KF@]R<LII-6M7#?/J9W$6#>"IG%R1MFZ3:
    185 M0S6=R!V&:MM$;MNN;\68%]*MFS^&J%W`PG%09YLHE\ARWH<2BUV>J^I-:@[E
    186 ME&AE#U6$WP6L2,(R)%Y[%!VO,:KB,/3LM*HUZEU$BK;0&7=[@;K7Z'LJL29O
    187 MFM)LJ@4WWJRZYB:D/@_::(JY,0;MPVAH1NC;X@1Y!)=];HL>MT5^T.`(:OIJ
    188 M!9%6/&T;4&`Z#U"-@%EZL1]OB3-%`==^4[&(-@J$]AOA$PVHY5=IG84L,Y$V
    189 M&UEG),NL9)F9++.398;2ZJV:Q&6KT;N5J.L)Q^%M@:W>6;.+U$HL?@R:5R]B
    190 M%2-6,U9<QS:.)%CG.RMHM\9[5KC/&O]9XT!K/&B-"ZWQH>:[XR806GQJA5-5
    191 MO"I.AG6%6ZWPJQ6.M<*S5KA6&UD76=J#3"`T6-L*<UMC;VL,;HW%K3&Y-3:W
    192 MC&&I">G\4G7+?+#%`<>\;SJ,2S%Q76-,;QLJ))O#(^`4:QVP^AHK)"K>LS7L
    193 MM(D-;4[3Y#%M[M+F*R/%_WZBA=H1HTO^NZE=KNK4TT$YNVBA,4G-@7M\6-RT
    194 MF:_;.#0UA:4""D*L).@Q;)I@BB6OVS@\XC8.ZRK:D'%!C(X2K*194=IF"58D
    195 M=DZQ4,Z:&M=,L6["=NTT:XK=%.1=.TDK02YN27S429=5R*&F@XIDW9*F.CDD
    196 M6%`JIWU9*&4FAM:[LA_[3EO\;T6'74C25#R'#3%7U<^U,=W&`N=C.L6Z%3UW
    197 MJ.B0MCNT8R.QSC7?<5<:^N\LP4P+GJ68Z<*-%!.-N)EBI!<OI*BTX\44O8Z\
    198 M/&Y94UY)D<M+LP1S:FWI)I.B0IL/KW'*UMBU,+ZMLQ1>T]9<EKCFW)?13B5^
    199 MC7;[IWU<V+-T0O'MS2R:5+V<;$P4LRV9EPB\Y15OM=GV4%T;[U:(:ZNTP[O#
    200 M]0V<!^E,D\CWOI[E6I/W(W4+#9;SUO@GG["'9WF%.._6JQ4?H,#J4>)3L'A]
    201 MA\1K8!F[PW$]LD00CSS;<Y9]VCE>-@0^T8?/_E%942,=CE(FXD)I$B"[&\J9
    202 M9!HG,/S*&-2=JBRDVVE;]$:J@(I``PQ2STM9^%4I=&,@Z;S[\3#'/P3^C"7*
    203 M>.)R_$NM_%K"QW9KQ\9G2^`=T^<-"N.0<542C9(=3)G3K>B0DW0'4E;I5E..
    204 MTFW08/MD!_38;KW(L8P=GB\SY]4BLZ+79)`'M=M&F2OI#JJZC83+R?H*:AQN
    205 MUMIWI])]I],V2\/1W'VF"9?03#(7J",]=DVB'E"^AR(6%?DI.1Y4Q*6\A:KO
    206 M)%4/JN8+)2Z+U1Z.A^1J,\!V->%!R7HH6<4]-DK6C4K\T(VC&.B20C]*MZ+7
    207 M3])U2]K]+-V"CM](U]3TAW0UJ.;Z?BM=3AL7DTUYWK1#BPS4-9*U&6@K/*+-
    208 M0.?Q$DL,M+6*H)FPM2Y^DF3H^"8&.ELY-J?519;`^-6:+9;DRW/E+6M<WNQ;
    209 M49ZE2Y)IG&'0LIN\K+7((J.[FP9ISNWR^2])9RL_G>'3Q-HIH4#;7C%D]3FL
    210 M53&-_]S2(NE1G7(]GQJ]FP/N"!5PD6?U7*`E"T?.KWFM"QZXV:O)B[9>O#Q1
    211 M,RIQ^J(T<10J>1OB:/4_H]]*)$G!]&F;1W7-VER(:DX?S5U"J@(7".2.D22W
    212 M'?W6]%%^U68.7&1KO6@9_26C>=\*!NU'K1D2/@QB'0Y:2I@NP4*^4P4:6SGO
    213 MG(^=ACD]3(INV3ZA,5B]D)OBU-B<:5#FZ%&3A"9>Z=:L9G,'A)E>IVI=>#2V
    214 M]Q=G/,'"&B@G#3.NFS+TI:U4SX[+ZGE]>X7UTNKJ+6'&8PMT2YAQZ(/@<8!Z
    215 ME\]0'S#TF&BA!;8R*+Y-Q&[*C99G8*K(JM;S":Y/'<IM9CK!^:7`G`6K:7$:
    216 M8S$89W'*8EN4\7B4'VZ_J)95,AXLVWH^TY-;5D9KL+;&&2]?R[39`L><5MNI
    217 MIK2[E.HX1WP[79O6UU,5VC^4"NGFNP&WT$7-=XIN8Y6:[@F]I(*H\>[/2\DX
    218 MX7QY]$+"^9KIA82N24N-A'/1WDXXV8B/\H&=1@0S8%M7*J;LV6HMQQNHX'GW
    219 M6MTA;L'R]K'C;?I6KT-!F].1>F$.WA;;/YANQ<,[LP:6.><T^[+8.Y!R,=V:
    220 M6%Q)N9IN36PNI#Q,%A.QJMK^I'*MR-G6D!SPR0[)#B9<D,O+R583+LCM]62+
    221 M"9MRO;W^80[/[5[>0V$8S81K//M@2,8LX2&>O:#_+"3<S+-?O;S+7MZ6/G8P
    222 MW8J;M\5%TY9TXT"/U822]`@^VEB4NI34;$DH2>V6A)*TY<=HI_1SAV\VR`<2
    223 M8I2J#V?K%M:T#UV9W+56LJ\EGN@A(SKI`:!V(VBTW'/MKHQIOD6RFRL<>83J
    224 MYDX<@:7PUL+IZ?;@Q128[0,S/6A)S09BOJ6`VI7M4W2U>5D8.9Z;P]3:G6!H
    225 M4^ONP"`V(#M!_8;^L=7SU-0@I-`)6FP:IO8"]X??L6<))M-]RBN6/P'`=,:#
    226 M2UC=K;PEWJ>+W>?MQ]LU.W=`EO$N`_,T<BW9N&.HMD/-ZO'!9\N^G:I4+>NV
    227 MJ2BU$LV+;^\N/;U:NTU/K_;>._-4K=VHYZGF*W'JM^7[4%A^!H4>V:<E9C[?
    228 MV#[D*[@2;L5;R`O$G"WA^MA0WN8`^\@[S9>J<\%JN,N'C7;8)3M78O+F4!WV
    229 MS,[5N;Z,B]K\S567HMWD>_LQI*7X0\>/;MA7J(676\WE#<;R6C32%*<.V,E]
    230 MHE4KN4^U:B,/OY;*FZ/?=O-XBX'2X+?-1#.SN)EJ0]S3U&VQFFJS03PQA^>G
    231 M*+=@L;HL8*3R;>'G^VT,?9-QNQCI-&7I&PS;?@9H+5&N=!M37]BE?I9LBT&[
    232 MT9S=:,RN3.K68[/1D#W.C#V28ZV9L#7'6C9@1VQFR7J=<JRV[3KG6"W+M<6Q
    233 MYG9KDV--C=:[<:REN?!IXY:C9L:=;>W,/DE5&?Z'.=:A]0XY69C:G"V*7^(G
    234 MS0B+Y:MB9L=DD;NIVKLF'LN[;0>6UOQL325NY9!K_:C)5H[U`R;G.9:5Y^4Z
    235 MEE3IM1R2JQF&.P?6^,W^,/G/K[E,&#L$6JUKC>HZIA<;?GL.AL*43QW.,I)+
    236 M6[+(M<7V:/7HF!Q;[9)IGC4K9>CV^/<6FV6:9Q\F7BPT%HX/URBJ_039M,M[
    237 M^V43""&!6"7#^ZA),CAA8)C(#DUN>!;&S^26L\GV\ME(2KO$)V_QZF+\M\6.
    238 MXAT2(I_3A8T2NMJ`VM)X[C.:4M95[[A27;>J?\8[O=RV?#4O7P\[_#+$T$TS
    239 M[([O.<R3X6#+EK!.X"@==XVV3'R-QP\IXT8W0_7YID7S)_/ME>=/YF2W1HCK
    240 M3Q03V/3)/,WQ)4O.^WIRU&*B:1,WS)@TLAR2K\TLVS-563:W;YM5O91G<U7;
    241 M#.X#>3;4U52`-_DHIM=VA\7XU9I^MJ@U+ENEJQ,WFSNSFFF+?7]\EFT&Q0R(
    242 MAQTBLRP;W".S/!N<)8T\!UTGS3Q'1!9,,XV6DCV4E7(<C\J-G7I]MI@I!^,A
    243 MIK4<</6TLFRN:2XP#KBHVJ;*QM"-.MOF,(Y)\[9D:6#B,;7D3'/[Z["ULC'L
    244 M8Y+)W,9>.98[-;!\&VEN#!-9!,1VBV5C^$@STW$VR\:PDDFFHT),ZNN)*$_;
    245 M/#53Y6DMX&6>)^=;CGU9S++H2US)LQ(3T\XSU-6*CUG.D_/-0V6:4!N_6ML2
    246 MYL3*4ZNJ@\K3?(`W:$+;5GR.LDR7B6[4-@[[9F=9-GAJ9WDV^&T;>0YZ<9MY
    247 M-OMT9YEFN]HLX\G4'S=70I<#Z$OYP[*J5OERM?RE8^UF'BX_53(V2+OV]O]U
    248 M(4L'`0S7\DF()>>A#6+FQP1,`;RTDF?4W6J"W^<M77AE#\.]/^%0UOGPG2MW
    249 MKBM[[I5F1JQ5RQGM<)=G]#5.(V"W3^1#";A*RV<3Y$(NJI,T8O8DE>]N]*TF
    250 MWP.@[.3[1//V!^5J3G!@@GW=RAYQ[G7K<]N<^J)IN5\BQV:"#1/I!XW$<8,7
    251 M4APP`,?.EP-<;OG4DR9`[&X))`5?5F>WA44=G-D^.*N]:49[$Y=:.,)B5,K2
    252 M81;-4A8-I4.Z]*KFK.HD!WC5P^Z15_!Q?9.\11US2JO+>^3UJ=I;Y(W&>N$0
    253 MCU$Q2X=;5DF63[B<-WB-5I=WIQAHM;T<;Y3RS@>`C'.5VA;VH9%K(/AZ'P69
    254 MSNH6,'II)>VR+,X\H7Y1*8>C@_%B?Q8BYH1$/$+^UENCY8<^Q_920J?+6</X
    255 M8<H/['_6^?&^:OU=?8Y>J74XO&]ZC-\`_7)7<Y/IW;2BAS^;I.WDG$O>15$Y
    256 M>[$BE!JRJ/:VWOE@$GL;U*XVIYKB]NP8RZHK2TN(C]M.HK9]'N5@DI4->U8X
    257 MWR+#DX8L,;H&?ZL&9C4(N]6S*2:,+:N!WZT[@'/E!].H$;-;*@=7>YGQ>-C;
    258 MBXRG(%O</67Z;&H0SA68<;C"4CE9N3B4:*BR7O?0*FS+:N$^UF4Y49:/RV="
    259 M#XFZT=9%L=_Z(W/]LAM(YON>MR?J-_"L?SJ=I]K+,A%G)@]8:/"9]?)\W+0B
    260 M9L85\MFMTV/LNZ%U;FA.WM+$S:;J5WY=5`?7U3VWDU]UYOO9>;,M(&IJ&K/;
    261 MU6[-.OE8T>,;YV(/&[?E?H-]NU;<3"XMV[G[%K<\D&A1=>C6DC6+FM:ZDNB`
    262 M[3M+MIRH\KL?3'18`VF`:\KKVS)HP[[SW)##"Z-72YO(XL.+HA?G^VXMB!:W
    263 M;YF4MF4Q],):M/G5*W[KLFAKY/BA1+VQMDD8/6;D^(I)/DFT,O<S842'`L?'
    264 M2N!RJIQR*6Y\@F]MW7;.K=J*;C=--C^,K\F(&KM<-8MK[:ZV6.M!1M0Z@WN6
    265 MJ+$UI=SU>,DZO!X'=)9B\_<X-'#^<B1E*^S,MU..N=2(&0DL%359>#U9KUQW
    266 M:_2S&_P&/=G9Z7KLL<-LP_UTC?9M"MAR[GAEA?<_NS%LN@FHW4$`J='/;CP@
    267 M77-0[MZ\V?#-VC<;PMD@3H=Q\J!K;$PZ'9HC-,DEY?GT!3<4UAF[GX![!O`I
    268 MR*</QDCB-PW#%',:N-/`GF6Y=D^=6G$,M/2-Y2G4NK?KSH%M[H&I@V"+SK\2
    269 M+S4%9WNF=ZZ>M1HXUX5:#6Q)FHD38(#8O"E;=[79MKQBZY**^<&*2]?AI1.#
    270 M.^:PCJ9&^TO8_I@+CMT7&.E=RM:],OTMS@:)>7IVZ!T\TWTN59P""@>JS1S9
    271 MEM=/E#O?W\7^3@T)\]*".*PHX((NJCU1AP,ZBNB<RM3QW12EEN_J''KCG6K<
    272 M/?8!&_C>[A/8Y!8X4*0DJSG?MF2KOH'IA-=&.ZX]G7#`IE\JK5'B,JVMS#LL
    273 M)ERGW`V.@IRL,4.Q7.3J.O.%2($Q_UT63!N6I.>&;`G7/1#7>TO9=(I=U]2A
    274 MA`OBJ96L:9P]XJYKK7V96]>&4-EJ"#<)J<?>=8V[=7C3M9QLQ?FPT?W08';M
    275 M1K9X9ZN5;=XY;^4"[VRM6KT;[]PV*;,_(H)R2]!DU9DMO'-;;.3^P&G$+15^
    276 MK+(/D&NKZ,/3M8V^Q]194K6"$U#OEHV^Y?PWRZLS(V4PU(F`=:BQWG?6\K)1
    277 MO>&8[D7:7-)C%O26)3VE>MX4I_O>(FS)SS5Y.9&/<VF6"6QIE$?15HORKA[G
    278 MY=V^V^=]+_#=%3Y[B*\>'*M6/-*,`RWQQ>E832?@A[%J3;_O^^#YYEC%BX7#
    279 M'*8CLR;RUW<%F'+/*>C7#J&<QB)/ARPT<:*\C4W$*&]3$[=[9)@V=*RPJ+F+
    280 MJ'X]/@1`N(,F\R[M'%F#.#T2A]Y0SP.]ZLSH2`"YU.@ZO"/UJBSOA=J:VG;`
    281 M1%A`\/[E(DN:<YG&VT7MOQ>>3:6_90LUWW;+'&MXO7@RQ[C9BRIUH8;5F375
    282 M.D9ZI.NL;2Q\8`;M@#I[0(D],%/6B'!J:/$'B.*`<KH-C=>6S33UNA%.+"^%
    283 MV3=B4.=H[)??3F:VVF@<E]_R[?1`Y1D:+PU0>=_PF]:JU:!0U=Z7FF5I]C1U
    284 M50!DFPF-1FNLFM1<I:$/C+2`7O;K>8LV[$>;$:)&@+:6.=4O:\URC-=VHC>(
    285 M-CDAQ-$A1)Y#@0QB2>L3B-95O1FVS]6[&7>>JW0CYK&L?LT4KQ[L\_Y/"+VI
    286 M&RT3]$JWIONU[J>[M0[:SZ1;;MERF(YK:VS'-#-W-LL8M^SVN2-YR6T\Q@D^
    287 MUAE18A[AQX@AZVK<B+LMYU,M<,0YGC1QI8TO4_;1U/*7=?P#&OX,S9JH-JZN
    288 M>6SIHB.EH;XO*N_K4N<`;%NF=]/0'JOL4\1=@&W+9CYD(2_9R&U\']?;#@*M
    289 M\7[:SCJB=8[_2SZNV'R./&E!/9C8TAQ;B:.RJ)==CM`'*1%WM2/VJK``;BL=
    290 M+8[W>,R7=-PUBWM1M5WQ:2^3XRA;X\6*(GO0^%XTOQ=(=-R$Q9.X%@E[DFM&
    291 MLLN>T@7?Z*HW]+"*N0$!;A-,OV\%%O5#,M\=:\CF&V_RV[#T(JN0"PB0#D?3
    292 M+_&0&@V6<0?7?-9YB9_,^[!LT==\I=7W;L6B%_ZRYG>?6?3CS$=8]'+Z%,Z=
    293 MZJR<,84(;C`M8D^1V%:$M`\C<0^/H-\=S;%*5U=MHC;GJJ&T:MNO,[YF]F5.
    294 MUAJ;128XS[[$U=9>'F?9K\?0KECVB[-SBPRR?GF`M39R+S++-BA6+/L#K+;*
    295 MO40<#V'9M]EOW9]5TW[.AJ>@6#'MI^RX!<4%R[[./K?L1RFFAOTT^VT,^WE_
    296 M[JH;JA'.'M(-EVRC5E?ZZ*+QB^PX&4>_CGT>M575'S*N^Q/&92%./M/%PPR7
    297 ME9_$BN4G_R#C//3+0(DY.[.P\G.XNQB9:WECAGZ5YW`WK+`9>S3*W4+QHXJ>
    298 ML=Z:/5@3'T-=][VJK681N]?45K.(WXM>TH4U!&KH[PJ"/V.U-4-E;/&.QG_3
    299 M&M`UO75=<UW77=>UUW7]=5V#7==A6^Z*08L]H,<>T&27!8F:8N+PHA\O/5)V
    300 M<ZAA+$L=4[_C#2O`F>]V;+'SK2RRYTQYB;W<0V,6S@PM66=>#&VYW+/6;"NV
    301 MG+\O:D5:VH--<\8W995^[#FU&GT/W'K@R_7WN+Z#(8BK&LTAS?R`;GY(.S^@
    302 MGQ_2T`_HZ(>T]`-Z^B%-?5W):;ZNF,6VQ7J+`F-XO:C0'U#I#RCU!]3Z`XI]
    303 ML_.MG0H62FA#]L"\7F-F;YKD,,_8%'JVF6;6HK@6+(%#ML`!:^"0/7#`(CAD
    304 M$QRP"@[:!0<L@^;[BFH.;!XSE-\^X:[DFP9Z#/5B4.L=W>9M/GV@1U$KUP,]
    305 M]M-)I_$UG>L;9Y[.^TV*KOW6NL3\=]D4,;Y(3)Q)+E++JW*GM-Z9O)]`-#M7
    306 M]I"SNS#$QY=B1#H&75DLU:(E/1&`@ZG2%G3+@N\6&[^MDO2Z$,Q,^J"$6Y5O
    307 MZ]*-26!1N.W5O/PF&4WQ:S\G@\67)_5/+<LK[NA4N1W3YR2X;MK;>XD\4?/7
    308 M32)=4QT:$]*3W&?@GY+W9QA[TL-P[J":8.IL*GZ2?6T;EOWJ%/WQ5TU2:TL=
    309 MMM=2=#YSR_S3LN1N;87@L67-59)CRQZ/SEBFWJVL]L9%MRMK++/O6E:W*\&<
    310 MQY?88BBJ/O3F;@V3XF9G6=VVL$SFAS?K7BMLRN..'=8U)JJF1W#=I3!<VPZ1
    311 MJ\M:XQ3MS9%OTRY<AP^>VUJ6FNF_=VG72)S>O3!<QY]<L=:X0X.ZO2P9U+72
    312 MCBFKZ/NG*6MNU-REK#4&?'Q92PSXV$,8AGRI4=KMREI@P+<MC(L[Y/TZLKAM
    313 M:PLW%W?\"82KQ1U_..%J<?6YA7=5=10'09RD95+<;-_88S+/GXVVS9'=_5C#
    314 M<WE"4;/U3C_C\,RR&8\C"?D\/Y47ZYN="=@$?O0T^EVPV!!>\YE^NG@"B'H(
    315 M1Y-#2:G#0C)^'K`[`-SN;L=?)'.RLYV//\3)?P[E*$=B7."@7=QIK?DMLL=N
    316 M%Z5NT^&`1@2K.#S2U+,49[!K_>YKHZK&M<U39OB`@&<`TET-H/ZIJ@'$W@_/
    317 M(!@`-*VF'II^$_S(P;:87Y%8F^G8V%AF+0B(],-V2.7[/?L#=\YQ,PEJ>6O^
    318 MOD&4-W$^/"7`X04W4&&V(_MQL`F$1VX>^+CS9=-AS'Q$#"V<.=86^"DT0F-.
    319 MIY/V=#@(D]_@[$N4@E[2;?!E')6/7`3R`2L2U9DW>HF4WL%;U&$J!C,R>805
    320 M@I4X'Z.0YEF9?*0EABK*J'(W.^[1`;RXJ%<USL@DD.!SU:Y7\KL:O]TX$KSU
    321 M6TU^=T?]7D?HUN\EGCG\GL8N3']//>QMC_M4%7_8W]/Z'_9W&Y%N=?[E\K7J
    322 MR+EE82<JK_*LW+VXJK`3E#=R^MRYO(D+Z8[ES1Q2=RJOX=ZZ0WE-9]FMRVMK
    323 M,K<LKE58%8ES^\+V,_OR;JZE._96"ENQ>(\I[F!A1S7OL&9Z1'&;"MM<WC:E
    324 M>6-QF4UNJ?=PJB,*V]"\(TK;4-Y1I1TL[\C2#I1W=&FKY=VBM)7R;E7::FS,
    325 M+4I;*._6I2U.3-ZRM(5HS5N7UISXO$-IC8G2.Y4VFUF]8VF+\:=W+.YVA34[
    326 M4\_T*LS&G6Z2;#;W.T^XY2KV5&.7@N.O`7(;CUG>5I@J6\;>OGWC,=V/7=)W
    327 MG2F[4V>GV':GXN:HJ^K(YML5-@;5+5O7)JJ-,Q=;"NM-C[L4-N7'1W=VC7<<
    328 MW=E#C.BHUDEA:RSCX%D(VUMV5.L.%Z:VX]TVYGWR&;-;'/:^VKI#Q1TCHPX6
    329 M=YS`.U#<L=)SM;CC1?%*<;>1ZVHJ*\KCVRD)"ZV[K?K2+.[VNE"CN+LH5@="
    330 MR.Y8W%U5O@,A:G<H[A3>S8,AVD<7=_O"FC-G1^T\NNVZ)T_N^BZFVTN3;J_N
    331 M=7IT8<VP]5N7UHQROT-ILQ#$.Y8V"Z&_8VFC&,<3E#:*S[]=:>-K".:_>VFY
    332 MG<<W;]V5>^SP'G#E'C>Z![VOQ]#N%E?N=N+=Y'W=2KM;7;G;:'>S*W?+V#ZB
    333 M*_?0X![KRET?W.-=N6NC>QM7[O+HWLZ5NS2\MW7EMFGW]J[<%F>^BRMWSOKN
    334 MZ,H]87'#LJP3%2<%3K<DN[,W=[R9V0G<N?4N:"?QYV[9A?R8\K;M5;Z0>_XP
    335 M3B,8VN97/7!3(Z.X6<:VC/R:.G4'']PT5G7LMMJW7I5GMF_&W`E4A_N-.Z(:
    336 M6R&6<M;.T5&CL#I7SJNA##G4R2)""W>Z#[LRK@XQXW<*L5E\%W<^+TE'W%R2
    337 MTCKLN%1R#+9(7YTN(7QYSY#2D[I'\FUZJ+2_#\:LK-@M@Q6R,@^U,*N44;`Y
    338 M1U2AZ'S@:R5O:B^WHR"F`UE7VWAW8*9DKV9GIBR1R6AMP[0U_6DK+4)9]%0T
    339 M?(5'D,I^C596EE4OVNMJ>+GL`C]D2V_"L+DZ56/85#E:,T(G&.9FKVH,FVZ/
    340 M.<:PI<,G:GUW"<.6.?=^MF]F2SN=<^(MO'B-&Z_QXU4T:_'D95=6`4P;"X=U
    341 M7BW@E&4#+13%7_MXB[[18\Z=ER'OM.DY=RJ<.V_^09P[C8\4Q:%FKG#N_(Y2
    342 M*24/O=GIO"L(O=0I-9EXWNAIX.9;N?B=N?D!/]0:1U_GZ>M<?96OKW/V==[>
    343 M-(Q7>/\Z]]_"_S=*@+YA8[MH@Q18E0.KDN!((CVTN_Z:L%@5%ZL.WH,B8YO0
    344 MV(S(2VN<ET3'(0_FBOA8%R#K(F0)D:<'I(Q>[MO'I.2WO=F[@L@SA;\,T;:K
    345 M"*%C3:."4,>XF\?HM'VE\CA?:TNL]78.:?WFG&,Z['KGPZ'<XY%"ZFTKBUMD
    346 MUEK$=C@?,Y;#36TI@OP]Y65;:LQ,H;U9RWK&G'5M;G^9AW#6EHY^*&/.NK2\
    347 M<BUCAG![+>6AC)RUM7#R<$;..D>F+1DY:^IOMV2LJ]$M:;[E4EA-M2RA#F0]
    348 M?OJS:-JZS(D?4Z-DG6P)>LQTW]K>/`<JK<_N,-A]APMR!DNSA(5U'@>YE257
    349 MG<%ZJJS.FN!W.FNT7J=8W!<V=LGOG+P)UA%E1_FAM`Y8<Y6]&RITR1!2IK($
    350 M*_%&>MF_85+7Q;"S-NO'7=)8J)83IY0,BNK+\EUT6`X636E2%R)V"DI!'AAZ
    351 MH+'`K&C<UG?>:6S7E]OJ?.>BHSI,KL33`Q5)%#K3=T"ISN!HNV1*)Z+RD3)H
    352 M`DZNVECJ*.^Z&O3$?<-/<FG=Z$CB`?[)JYUNW*G^KLOCE/(=U9?OE`HK=Z%D
    353 MM<6(U*[<]*\V?D]MCF4;Y`@;8^U:5=LV9+Q%WG6[95/.H_-6.>^PS.*X_H[9
    354 MQS%YIXQG>]Y&SHW];>;<O`IB_G1+FU<TX0-YEUGSH;QK3'T][[HX6,M[,.?J
    355 M:H0#.0_8_ZLY5_W!!W(N.@X.7W-8'9&SZ7#8F/.`,^)@"6-%9#^SZ=>N-1_&
    356 MH6HK_X8?%;CMRK;L[0W#64C\]HXV0QJW9#PJ1GAJ&]XRO)BQ:[Z1W>&,.>MM
    357 MPX8W1APO^'8.]W7)/CR8==D^W'R8_)%9U^W#?9@\V)+QP.`<M@\W'DJ_.>LV
    358 M^_#6X;:-S1BWVX>W#J.]0\CLK<)CU33K+>S#<<9CU,)5C^FA6N\6SGH"E?W8
    359 M,-5:93\N)G6LLA\3?SI5V;?'FLY5]JV!ARV5?5N485MEWQ(ONJ2R'PZ^7%'9
    360 MC\U:-UH=)TLFF==0ZZ#6OHQ;&]3V)>3:I+>WL6NCXMY"K\V:^QR_CE#=IPAV
    361 ME.Z>CL@Z!9B^95;^T'=1W_7ZEMNK1>C6@;!;\Z_M4'N@7G<X@&!H5RN<:]SC
    362 MEOY4>XJ6YF-J0=?REH]5X09HIMT?YB1K25KG6XXC*]7X%:5!2@X'=(.5;=B'
    363 MHMW(O)AW31JRKD3NS236K&Q)A5F`O$^6S?N.L?N/8\[R1F,2=F9354=V$3H:
    364 MT1R#P.%G-N]B)A%H>=.N'(2F5#<I@,J-7?$,<YY^HR].-(E7*Y%JH>PH3]AD
    365 M*LP9W]50'<[T'B#9NAMCVOQNH\?RH)ISV`-YV-,XY@2'E/P51TO-2MI:^S&.
    366 MD\,.DJV.D(:_HQ8@`VXW4\S*.2"&MP1B5!`Y/-FW;TWRCEG=`>-L<3GOT<QN
    367 M/P1*+7&[@\;3`2-)39,L,KRE!!62K6UK7[7E`,O;:*P<0:U+&N)A(V-,K2U]
    368 M;T*M<ZUN3JWM8,4QM2Z'+`[-F4<NCE)T8SMDD5K#)$&+6FT[Q:@<MUA)G\2O
    369 M[ZG?9F/K80$EG=H=WE^[D(_:K;&*<2^V;J&L5J)#AG3R?MO6QVAG._JC2>7;
    370 M_45CEC'F;>-"IP!=&MY*'UI/B&OK!L'U9MCKS$"MQ/E/4Z[MV#L&R_(:@%GG
    371 M*RV-[#J=)X#U<&NQ@6A9*N#0B#RO'H9[WB15]ZL'L,\K:69YUCLZO`BN:E&N
    372 MS91R33>4-4VAAA1:EQ:EH@1Z#K[)2F#`1KQ%N^-RJNU1AQY5QSBYQIUNW!U2
    373 M]]3.]7=;5;OUNR.GJ@^*E$G"S5.5QTU-;IZ)W#[SN*Z3MMU06WC42G-[X3J^
    374 MVEK/LOZW7O="TD59-VW!:L)MRNZL"0=2-J;U%E-NTH+KI)4VW`IS7+`3MDWG
    375 M,`IMV[F%5>#M,G;SCBNK4T]3*;MQ^F5E]YT[RMG]6,ZO"=K-.Y,L!G6WKLW3
    376 M(T=,AQPQ_7%@EP\U3[I1W!XYG7$+MKYE\7;ADX<79LO=@=F(*5M?7T_=IYQH
    377 M^4LIAW*7UT&/GRQ,)IR`K2^=[MQ(VC[M>98,7]/%Q(L)1\4>9NM+:[PF*2OK
    378 M;QM;W[IR=S]9#580>8M"\YC7.;1/(':$Q_WUJB3]8S?EJ5P#%2]/I-SMJOV\
    379 M+<?)4[MJOF=&O3L$@4//GNM5*X[''/WV<J^I;-UZP-W+O>9VT;9C_%[NU380
    380 M;[MGV\NX:C-].L'PRM5:UY*5\,K1EJYE[XGO[QZ[C>=UK5FBX5GHG*>^UIQ:
    381 M=SD0^OE>!QV+YJZ[Q3Z_:QEF17J^8MKX.NQ3@XYVMWV$G]NUS9-^FB-9GL>U
    382 M#6)M+_[+E*9;9VNFFS:_3&CAV@ZQ<4C1RX06KF,@]JJCX3H&8H!9>L'T*-<X
    383 M'N%P>EX;]9(!=BR2X4(\P"O,CDE?8EX>N]V/>6V'V3@:Y.4*@N,I4R[0YUV.
    384 M3GG*UU:8M2*.EB*_G_=U6RS#!4Q[B:$(V[&L_7QO[GZ4TU.[MAKER^_V+\T#
    385 M>1?2+->R7^@Y,KMC]?_6==PFM$_].@6.X6I%(SQ/&)X&8E!`7LK<W:EP3&8'
    386 M;G^*WU.Z3@<S7+41]5SQ[918)MZTYPLKN4Z+8[C4<Y\2.#7(>,G`J0Z>/<_K
    387 M]%@F\0C/V?"\!\KDS[UYOIAV6IB-%@29Q^[;?5VG@ED+J_;Z=N<9G_MU"I@M
    388 M4^%>/\<(Y?N0`?5EGIW:,5TP?>I+'7%(S].X[AO'6.MX7J%I]PVRHG0\>D=/
    389 M=]T_ELFU?9_T<[_NFY.5Z_EPM(?",>9HSV.F^*&03*[]XN["3^EZ.#23:\K2
    390 MGAZQ/BR6E<7$#U??Z:^'QC%<3WOIW6-`;%A,_!0A]Q@0*WL0/G;?;W<]/,2>
    391 M^M*[Q\$Q7)CR?)J.M,>B2_G>ZZ=H=CXTS*;4:%??GN/U>)19KJ>F;SP^Q)[:
    392 MYB6/#[&GIF^<`\2>EKYQ'A`;EI&=_W4N$'M"R\@>&V3C;66?1.#+8X-L?&'%
    393 MQ?D'0)X7S'"=/EBHC;DU1A^#V^<'L?E1*+>][F<!PCE";'T;CNW7_7#%\X38
    394 MX:,\'T]&G"?$<"W/VCVN'_=\(;:\OO-Q=9!SAEC;?GILG>V<(7:>]M-Y0^PL
    395 M[:=S!]D9VD_G#S(&VJ%3<A[R>@H@8Z"=3SC:TP`9`^U<XM&>"L@8:.<QF](^
    396 M"^H\+SYR_O$;^W2P#!<<:8\?S'W>,&NOZGGLT,?SA=FR.O:XTU#G"['E"V$O
    397 MCQG`<:XP.X1'86.ZTU_G"K'#L'@LZCQ?B!VZ'LO)\70AEIT<#T^83Q5D_8%:
    398 M#[^R\ZF"3"Z&E]X]+-">-L@RT`X?M7S*ZZF#+`/-3A[<Y_7T09:!]G!.CN<`
    399 M,EP/Z.1X+B!CH#U,T.CS`1D#[2$,@N<$,@9:ZF_OJY+G`;(:/OJ^9>;S`%E]
    400 MJ9V^WVG/YP<R!MI]3GL^-Y"5&"I]?].>SPUDY<+.?/>U@]4YPNQ4O.A^+()S
    401 MA-BI+LP0O,+L^&N^Q/.N(://'6)=#E$^G2?R_"!V>DHZK;E^?A`[_77:)9[/
    402 M'V)"CZ<SUI\_Q.2"CG:J;;^>/\P&[#H-1WON$!NO\3P%1WON$!M?H,Z[1Z8]
    403 M=YC-L>JN%M0Y0NR^=\R\&T<[1XC=]P6K\RZ+B9\[S!:/O%.W+_/\8/90L[?[
    404 MVZ[U?[D@(Z#=SO]X?B![R*OV=&\=JI<-L=OL-_VR(2:+_8^#V4N'V/%:VOE!
    405 M[.$CA8^S.\\/8H]Q0;/=[A5ZV3"K<<MNG`-\V1"K+\*T;3O:OH*L7$"P81)J
    406 M^7J%V/@Z+#I?(3:^U"Y4]ZT4KQ"K+X'1^B34*\3FU_H2LE>(M:[5?7)>0=:^
    407 MU&X6)E1^OX)L>E5.H';`Z"O(EJ^%?7)>0;9V-??)>079^M78)^<59(>NV1*R
    408 M5Y`=OB9+R%Y!MN7B)61R\PJRY6NFEA6+X!5D6R]5EI"]@FS;)3&CO(3L%63'
    409 M7`A+"Q=O_J3__!O9'(_GI30K(I9O+*Q3N].[N#,:LC;R+]@1FN-T+69E'#[4
    410 MSIIH,!EHD"GP]+-,#NK.GGQD[J,\Q5TBZM..T2GRIR.@&$##TF\&"WX##/AC
    411 MF`!.6X&@)9/Q.^MV5O,-?792,%60?%T3ZL*?_*;V&-Z@0=.0!.]1B?;,,"QR
    412 MHVR<C&"[R)49R4GE^6[GN&!\=M)L#*FF5[8?7`PH_N0WO;,,"4/=,,HF]-(D
    413 M-$'#UX/2\63GJ6E]=>[!J@-T7`>`*4"`GN*6OF*7BZ2ZM//C:F7$\"&/Z'WJ
    414 M,`8$3NUUBJ@P<!?H(2$!#P+[G;6^'T3.PT0U!L(VPA^+3P(&U9Z`(<H2H3&N
    415 M\!/%H9'XL+S@V+C;#!15HG8A/$B%@"%A@\*:50=4!NI&_B;@2S54GXYQ7#7&
    416 MM<N?-*I4>^B.'JY$+0IX1YT&^41JKM?R33VA]NC`S;$&)"9-DZ>&=_:03R"9
    417 M1TL<9R.`)>IILC8PY$BIIH;14\J&&NE90IU>>`N0'_BIJ7N&BM!.ZL*WHJ[E
    418 M+M-;%_P$$`)T^52>(:%`5?0="9A`8NVH;+3."370<R/,7/-CC8KC_;!-5Z"#
    419 M?IE(?_1;TT#Q-S$$#)C+O<1H2]/EJ6-V*Y^Z`WCI+T@^!K4G4+M`*>FA2JA+
    420 MQL!*M?(<8^3O1RJ,&39A-@VW\!)##/[$#-L*-Z1A)^A$OPO$()E1@6`,DU#2
    421 MHQJY4OZ01Y;'&[S4`H[`:*);S=@368Q!;D&J1^5'M`EZ-!A(0EOL0TY9$\83
    422 M2GR+-H4S1"$N>@2".)(RHW!A%`N,4*!2-`5#VF,%]=8`S>N.9^C:3%3T$"DT
    423 M2QUJIW$=%0L2(:D;^:FV(G!X8L<;84NJ,!;4KEGL`T_Q#;V&,(]ZIKA@BQ0H
    424 M4;B`Z19Y@V,FI:`YD3+0H1?*"&('R<7_769MMILP"#"%@)Y33PEMB+*Y280*
    425 MA'IM!B$#DH=%GC*+O1V#@#IC69"".1GNI.+V\#?])LPD2E">1@\-0$&>AX`&
    426 MVC+6RV=^JHA%:NHLH02XOU>&X`H81<V,C)Y;T38M/Z;QC<X_#9UQ`5:0A1B_
    427 M#N@(]'Z"L%JFCBR'LD[U`-1Q[FAPZO(.6`F>&1LT""]BZ)12A]E'9'54BD,]
    428 M$`YUE7<7.X<JI<Z`.W6>;\-I*IT*'"_\DK\9C;GV#M"VH_K]J43.J3'EB!Y!
    429 MML`N#:?MD=A4L+$@E*#=@<GQ/;YM5\0V+#.,3M\0SX,5LXFJ>QF/QC,WP0"0
    430 ML`L=2@>+`1IZ>6%CL>;8OC3:VULTAW0J'>ZS.00DX"4!#V(;^B_$`.[Q#;Y9
    431 M%!M4&*@1TBB?T:_HE_)9%"%TA7DN93*.)0,;NM"UN'9Y!=5)B]W+)K%W^GYL
    432 M@-?R[E;>,:XGE]U/MW4]69:NAUU/;.^/W#-'"97G!'*`VST`R`%M]KB^@KPX
    433 M6+,'2-TKS/'7>[:.`OEM*^,)BV,KRRI3%'5YKC.UW`.]MS.RN1&ZV[H'T"IH
    434 MY9M==Y5VH;2!*0T#X+8N`K2Z6])O6BX"(:'B\[6[;#\]OL9V1E05MU/5'6I)
    435 M#T2[[DAV>;3;O3<_Q,2-X4@O^-WHESW`2OEC"=B)VYX=J]FIFL08#\5`]U/K
    436 M'8[;RO6.O*!]\<+"9XY^)Z2"=Q;O#'MA<<%Q1SET=T+V(?Z#8(]F'X'0#(JQ
    437 M%:\RO"O<!'QW+KM>X`L;^67HF8[B6Q%7"SLG=&<D4\*TB>E\9!:>%%[20XU`
    438 M^X!'\-/=DZ9]ZUE:1B1"<@,H\SZ83))N0:8Q[`TCE68XP)4%]<37,WAV-A&:
    439 M-1>,LH_RY,!$E'@N;S<;FED])G2ZC3Z'.\V'YBE#U&W@A3V$_?AANLQB1/8&
    440 M)B6A*]O/Y]B!U&93;?*:*MJ(\_S$+WI6MDTBR.OM>(XGEBMB!L.41)^ARS0$
    441 MZ:K%4^I\3U=<@I`H6%HJ[X\0S_PDGF`6F-\?-:F')YC-[&=.-O*VQLP)O[_%
    442 MK`'_]-W`7S,;5YGC"Q(Q*":XUIQ:18H`%@G2@E?$@<L8;A=PP?`)M8H?8P=B
    443 MFY4#?@B)R]!U,LEK\F0O^B1".8JS(OCL%<?TAI:2\"D/43]2W&+B@A_R)-*:
    444 M-VS[A!)2*`:`\RDDT*#RB0>&GH/M0/+S8WC47':(\<,0I<F8LH3NB7M\FZYX
    445 M43O+SIJQ;U7<J]G)*D^3XC2WF!&0AU$`@%D%E=U9_&V[0HK@"H##B$!'$E">
    446 MIISF-O.R\C#5LPGY7@GJ9LWCF-F$6WOESEZGOP^"BD=C\JF[=6J&J9E#$[H0
    447 M.F_D5/=$$4!"HD>B!X`=4V0(LP824H\EXCK@.7T:Z[.>95@-,U0$#8\APC$8
    448 M/]SC&T-#K0``J*L\RQOY7I[2?\HMG_FI\JI/I!,,%AVTJ*\&0C!*=Z/M.\/2
    449 MV86BC8FO&/YEZ,&0"MGGS-^0%2)#69QV5+13NI:M(DOELSS653*P.X)*PD1V
    450 M@N)$T*"!U\'P0$)33/R&OD+*3,PJ=I>@R]0R#SV+#`'<\S?&4,Q[@RX9B`7G
    451 MY8<\A^=#Y<_R6)/Q5I(Y8]B:Z=`Q*%H0L]"\A"_)?^VR\(47@A4>8O$&PAJV
    452 M)CU/K/;I_(MN`K1>C`JUW`'F;&,`U_A7?H,_=%^^RAO'R)N3)@NX=!WL359*
    453 M'*$2U!(@D,<]_N,5(IJB*LR?L90&A24IT"(PIP6B\T^^`PY85LZ(O!2H"SPS
    454 M0DR"!O(;S31A^^_R+J0JL2*5@3AS0@2#9['78=J.6IH`*<4_^(_?TK>.IC26
    455 M.L=_BEF896R%QJMB_NF9#Q!)!>!B`%J#ZI/@NI:?Y1V_I^+*=_^2&%ZJTFMK
    456 MR"Y)R3`-@QR2YUYF0`%V5?\[OK'>%8+I%,_W4T]!G@P4!4,&9@__Y+M.L2R#
    457 M#@X=`[(<VJN%6<(_^Y?X0X'E>WBK,6\WY#`)#-MWT;&J@X"\$$#]'#D"SJXZ
    458 M_LE_G``W!(+,?"QD`_T1M@'+,)8@<!^A<^$GWU$*\`PH(6!+J8/OVU,C0N1&
    459 MX'=YBS^46+Z'M\:.<GC#X]F%"%Z?8!D%^!22X]DK,,G(/_F/$^"&E%(3LU,!
    460 M#IL`$XFR1/9L=/!M)%M^\QTE`7/!:Q"SLQVT#<_)8U<>]._Y`\7V-T,"&]AU
    461 MTN>*`8X0Z@/8@5502SI/+#>";;O@F6'Q3_[C%+A1/L24#1=2X_#G..RI`U"4
    462 M3J("@3SS$]Q3,N)'ED.CX+&*0-W@F+`#F"(>#._Y`T7W-T,"LI-'N11J()3N
    463 M>&Z0M&UTWWOV=$"4&F(V1CGY+1^2"'>$W;;X!SM8;_@@(Q7M=A#B#@-+O"WZ
    464 M\D3N*1W`AFYTL!4-SVDZ=)L`9.7!\)X_N/#A;D@2C#5U/FJ_@4G9"1X;X([W
    465 M""'0`19QHMZ0C26_Y4,2X8[P,JD2L\F&!DQI%EP6%*&(XN!+,D!N>2+W&E/-
    466 M-@&U+4SOR"3@H)ZE`/+`@^$]?W#AP]V0)/IQ/D):!!!1EXB_DV9M6.>&;4(R
    467 ME'5A"^-4RP/YD%0L8[M0S'3B7U!.H(D8B`--;X!:&NBL4NJ?R#TEA(+(,D),
    468 M#@1Q&@[V)/%9G@PI^(/+'^ZJ-,14(=VKK$3>L"9(7R*$!W\&!9"%`[X?HF?N
    469 M0\R0&)@\D`])QK>$-"8K=\88>/(,O#X=K"OZC)#E4)B]!U_B)W*/A"!ZB&7O
    470 MH0YZSY3HX;@BI8"Y%#\:TO`'5S'<U8E(R)MQ9DOW0!)BW1'LK#-P$>D(AU<'
    471 M70.WS-V2/)$/2<>WD7AT-J+8@<X?X@O*UC';86(8YB=\+YX$\1*S0UQ\*CE8
    472 M0`RF_&A(PQ]<Q7!7)Q)_4)U9+`I-W20L@A'+40X):`UO8P<I+#:9D2?R(>GX
    473 MEK2G#B;*?=@<IW;!!7GRL%[?4_M)5?%;FK;?\N2.4BB7)'#81NT:`+NG46*Q
    474 M*],5[@$<>+4]"J<ALV)V*4)O;T8KW8^O"+]@WPL5XB&U@6U2RT9^-CV5$QLR
    475 MW8^Y?UJ?,/P4S$AXHLVS:1T8C]K.P'MPC49QR@I78_%6K'PQ#EM6_A/A9\7+
    476 M[MI>]GL<RL-.FU.#\*65=T]SAJJ:R#OQG*&%M<).S$[2ZUHZW8,T9"^=2$/.
    477 M8&KA=!_24`_2D#/86BX]A#3,F>Z7TNX-\X8YW2?4Y!Z![[,.K-UZ&(KD]4GW
    478 M,X_?I$AX)XO>]*`4`C/%=?<QSST2A%[5.HUD"T@?0IZ/>5A]5?)Q)%1*J3B5
    479 M[V]B*L*#@Q[#VQ1E%AK0EZS`$J`+="[&;QE8+5.%!HZZ/&W(WUT9?5FH--7R
    480 M%I;4ED2:)QA]S(\M9B'9^]NKCOD7SV7J3-8Z<;`;_,\6JXG9?I=[^M:8^U28
    481 M"R#"):6</<F6[_-CO$GYLSQ&T%%)9@`P9^%@Q6/O:>R2@:^&0[.D!/[%)H:F
    482 M.R9.S.&(YYJ7(4"!%?<]V_/LZ]8[>$38C\419E%^R'.\BOFS/-9^2&83Y)CI
    483 M@CR.`3-!F.W!M%J72^!?O/P#OAT6J]1\X#<H`5/7F%".?(]OR_XF0D!X\STT
    484 M>$H#9S)^R'/Z3P7(9WEL"'8EF0>^.9Y'P6,B%;+5$Q@+>*?+1>`7<CJ-59_,
    485 M7.!5XI`PS[$S"+BQ?(]O^*X*B8O+E80Y7*GUA&&F[_Q5WI@J90`W3@D,C9V6
    486 M(%HXRSVK#%U?"O^&TU?K$I'+44>85PGPJP4X(_*]DNDK1E\V'GDZG&-H\J_\
    487 M!G\\V<M?Y0T[HDI2>*B,#:8\M[!..6P04_':]>7@-W('C06"S"0MEJM:.#)!
    488 MW(HYJ?'RJV.'*D^UP(.Z<PF3G7#]8MZ2?^4W^..)'OXJ;YRJDB:LT$V.D1G/
    489 M0Z?9TTSJ`?"FZ\O!;^2.6JL2IB&341$.<?;_=3#=$B;E/,\(6R_35\ZQVQ$=
    490 MP9#S8/(X8W3S.WZ/*:W\W;_$W->0G.?$X(U5\H:H%;@(ANRT3(SUI>$!2B"2
    491 M[]VWF`EB*N68%<QV=1P.RM%1:!C?80@CQ]%F$XZ=^RP\^6=YAS_-CE+Y[E^R
    492 MZCNDYX"`XJ3C=^PS8!N7=4?6;/H2\81GJH@;G%ZQO'CS)_.Z8TU?'KK*S??0
    493 M+[B7=NBXFG1]6XE$6\L%WJ:)I^WRJ4\'/=?31H?R[.[NYP?6Y:F3C,E]EG?:
    494 M<SG/\XSGNKQS/(=T7)[B4=9W&)NE\D[9OM.=?JCNC(7S\NY2VOV7=[?2GH8O
    495 M=/SDO,X7;95W3J=Y/MWR=*^]G.;<+7T+;6BM/'6+UFTI[U3PN]VU5MYMY,BA
    496 M\D[9OMMPU_7RCBWM*=/;2RYO.^9L+>^\^WL?Y6WK\^.5=^K^WD=YD`#;#/[M
    497 MY9VR?8?IY+'+.Y3B<<L[?#U^>:?$/URG/BKOM;SG7=[Z=9ORQ,N0O))5\Z%7
    498 MW._B-ZX+-;)*_F3-/-613T.)IP6E,^V30V];XBD/4UL3*;<K;_G=:WFOY=UW
    499 M>6O7N93W4(<AWKX\J]N*\.U+1!3.RRLQG/HP6ML^[/SV!>KVK-L="CQYEU_+
    500 M.ZOR3CV^+ZV\]G67\A[BR-.[E6=RY,GIRCOMX9NG/O_TW,N;7W<M[]2'H=[W
    501 MX:IW+^_4)YG>[\FHK^7=]E(GCY8[]7F1+ZV\[N3E/85XR-.W,)WZ.,F3%ZA/
    502 MO6KW!19H7LM[+>^(Z]0T?.[E(=I>E6C[$Q;[["]`;'^:,.:7<F60G2X>__E?
    503 M/<A>@;;UJD#V2I\;KPIFKU#;>(WE\"O0-EPSD+U"[>`U5_=>@7;@&D`F*%:>
    504 MOT)M^6I;%:^HMG(M@NP5:HO7(LQ><6WQ6H'9*]06KG4GR2O0&M<RR`8I^@JU
    505 M\778%_>*:I.K!ME^&32O0!NNC2![1;7JV@BS5ZA5UV:8O4*MOXZ`V2O4\G44
    506 MS%ZAQM>1,'N%VNXV$2@O'FC'@NS5+C@"9&-OY$N&VFUC&%XP?6X%V13)Y'J9
    507 M4+M+J,P+1;4CT*S]XN4!;1O(5I6VEP:TH[79UO6R@'82D+TPIG::4,D7!;23
    508 M@>P%0>UT$;DO!F@G!=G+$`4G!MF+0+53KVEZ`4"[!Y`]>ZB=&F:XGCG03@^R
    509 M9^^*/"W(7H0G\E0@:QI<SQ-HIP#9"XOK&,4;WT<%SP]H]PZR9R@^[T/+&%_/
    510 M#FCW#;)GJ'/<.V66Z_D`[<%`]HSH\_Z96;F>#=`>#,WD>@Y`>V"0/0>@/3C(
    511 MG@%]/APS*]>3!]JC@.R)0^U18/;$<>V18/:DH?;P,"O7DP7:XX"LE]!/$6@/
    512 M#;*9.O/T@/9XA"G7$R3/,P#9DX/:&<#LR>':6<#LB4'M3&#VI*!V-C![0E`[
    513 M(Y@]&:@]-LS&UY,`VF@3O?.XSJLU\^L,07;VJ':&,#M[J)TES,X<:F<*L[.&
    514 MVMG"[(RA=L8P.UNHG37,SA1J9PZSLX3:V</L#*'V!&!V=E![$C`[,Z@]$9B=
    515 M%=2>#,S."&I/"&9G`[7S\IX=NLX":.<-LK-<`'2^(&MO0B37XT+M?&&V?#TR
    516 M?9XKR-:03*['@]JYPNR<-W8]7YBM7X\9XO&$8?9HN/:D8?9(4'NJ,)/K<2CT
    517 M:</L<:#VU&'V&%![^C![>*@]!Y@]--2>#<P>4(8^(Y@]&-2>%<P>"&K/#&8/
    518 M`K7G`;/A>@AI\`QA=N^X]BQA=L]0>VXP*]<]`NT<07;81;OUNA^HG2/,3G7=
    519 M$ZJ='\A.AV1RG1YJ9PFS$Q=W:J@]>YC=`]3.#V:GODZOX[X(F)T8UYX_S.0Z
    520 M(=">.\C&0O@T4'L!,!O].`74GCO,QM=)@':.(#NIKM$H[*[%/WN8-8N_6P7G
    521 M"+/[ONX(M.<.LGL(DCP_D#U8\/AMZWG!(+LMT%XTR&X'M!<.LEM)@A<.LUM!
    522 M[<7#[!90>X79[FBHG1_,'N,Z"F@O&V0CE-X*M)<-LOK:C&FO("L78]P6H+V"
    523 MK+XV8=HKR.IKV[S4*\SJ:]N\U"O,IM=A7'N%V?0ZC&NO,)M>A^/\7F$VO0Y'
    524 M?;_";.E:YFNO,%NZEOG:*\R6KF6^]@JSI6N9K[W";.E:7LWR"K.E:SDDYA5F
    525 M2]?$55Q![15FVZY:\WB%V;:KUCQ>87;,!:!=O/F3_O-O>&L]#1@*[CWVAF*'
    526 MKG-H'V!VX@4?S_T2D#W*G.)3O>I3<.OG]['.2%5_3_FJI<!>Z5'_#L'@T+/G
    527 M>A72E'[OS0OK_FVNJ;*QUZ\@.W"-009MXQ5H!ZZY2ONJ=!RX!I#5=OO>[<K#
    528 MQV[@^5U+AM,K>2Y>2R#+TE-N'[N1YW6MF><$M.>@>Y[Z:H.L6.FOY-FXUIU`
    529 MK]*S<2V#K$C05TR;7(==C:^8-KFV>6>S(&A?+PV@VT!&F&:;CU\>P(Z9`Y@`
    530 M[66""]<QTR8C\GR9X,)U#,A>]32^CIN<4Z\6P1AD6^#PBFFWF`)^\7K:L2#K
    531 MP]8>N^&/=VT'V3C@Z@63YVUC,UXP>6X%62OL]H5BVETB@%XHIFW'LO;S%PBT
    532 MK6;Y\KL7![13A.:MN(:>(SB/U?Y;UPN+Y3A5`&@3TYXG$$\#,B5.R)=AL)\N
    533 MS/C%J!RGC<Q^$4[(4V+9"Q$$IX__?_9.R%.#[`4$]=W'*I-G+@A.#[)G[X0\
    534 M+<@FRQD?NW/W<YT*9"WX/%.@G0)DRY!YED"[[T6&SU#EJ".R[Z/\9ZARW/]2
    535 MUF>G<MPWR)ZARO%0"Z:?$7G>-R\KUS/B:0^W+/_9\+2'PC*YG@70'GKSA]D<
    536 MP=,#XL-B&9/G4U^%]QA;C#QQ0?`8(%,#>3Y%T#W.1C9/6N5X>)`]^55XC[==
    537 MTI/5TQZ+,.7[20+MH4$VA=$^KKX^Q^OQ]S%[<CSM\4'VY`3!XX/LR0'M'$#V
    538 MQ(!V'B![4D`[%Y`](:`]-LC4Z/Y)`.VQ03:^GH1%<%X@PX7]#4]=9GL<ZD5&
    539 MQXS4^<&,H.9/5-#]+$<X1Y`=V)AC^W4_5'Z>(*OV`GM8<&RYSA-DN/I)@OGU
    540 MN"[=\P79"GD^KE@]9Y"I\USG<\X@.U/M]KQ!=I9`.W>0G2'0SA]D9P>TIP"R
    541 M,P/:TP#960'MJ8#LC(!6;_A_[M>9`.WI8!FNLW"HG3?(SG*=S_F";/G\W4<F
    542 MS_,%V?+UR.1YKB`[!)-'C!\]5Y!M`-ICD>?Y@NS0]6@JQ],%V:/M,?%40=9'
    543 M]3T\T)XJR.0"K!X<:$\;9(\"M*<.L@RT,'EPG]?3!UD&VL-)S^<`,EP/J'(\
    544 M%Y`](-">#\@>#&C/"60/M';Q>8#L07<\?QX@JZ][)\_G![)[!]IS`]D#K%U\
    545 M;B`KUSUZ;L\19,M>_^.N>\*T<P39J:Y[PK3G##)<D^CN83.UVP/SN8.LGU@Y
    546 MW<YSYP>RT]/2B7G:^8'L]->)58[G#[*\>??I@/;\02;7":7G\P?9`*D38=IS
    547 M!]D]+/A\[B`;7R<AS^<.LCF$[HQIYPBR,]])\QQ!=M_7'<GSN8-L,1+R.=F8
    548 M#S6#>VN@O5R0W1IHYP>RA[QN=7#4RP;9K:3GRP;9K8#VTD%V"Z"='\@>/F+X
    549 M2*"='\@>XSI*N7W9(!O%<IB-LX$O&V3UM1G37D%6+@X?M?WM\O4*LO&U01"\
    550 M@FQ\J7JRN`V\5Y#5E\#H`*:]@FQ^'=#37D'6NE:!]@JR]D5`2[-'\OT*LNEU
    551 M<-[S%63+UP)YOH)L[6H"[15DZU<#:*\@.W3-@/8*LL/7!&BO(-MRJ=I@?P79
    552 MTC4[F:9@VBO(MEX]>;Z";-M5A8^^@NR8"Y[;BS=_,G_^S2O<CKT`L?VI%@Z]
    553 MC"N#[/%WGWXZ5P^R5Z!MO2J0T=?ICPYYCE<%,X;:H1,=7J^I=D9`LX_>I'._
    554 M9B"C_\OG8+Q>N.::&0'M5&?[/,]K`-E^%)OPRM66K[8!\,K55JY%D+URM<5K
    555 M$6:O;&WQ6H$9?X6C2GL9U[H_@X`6-Q?U4JYED`U2]!75QM=AM]DKJDVN&F0K
    556 M<:.ONMIP;039J[)671MAUKTJ:\.U&6:OREI_'0&S5V4M7T?![%6$\G4DS#C1
    557 M-$3RI5W'3VIB0N^Q6_VXU[$PR[CXDE%M.\CVDZ52+U<8W#;>X`7+@JT@FR*9
    558 M7"]36[M+6,L+5=:.0+/VBY=G36T#V:K6]M(,]Z/5V=;ULGQ$)P'9"_,1G2:L
    559 M\46YB$X&LA?D(CI=].R+43I."K*784F=&&0OPI0Z=5S["_"JW0/(GK];[3[6
    560 M3P!JSSGH^_0P*Y'RC]VS^[M."[.1&?%<A<&I0-:TN9ZGAGL*D*V8J,_1`AW%
    561 M'-]'!<]O(<N]@^P9+F2Y_W6:S\Y#=-\@R\C[G##MWBFS7,^'J3T8R)X14WNX
    562 M1>?/AJD]&)K)]1SH\X%!]AR`]N`@>P9,[>%WT'CR3.U10/;$)_,>!69//-[[
    563 MD6#VI&?S'F]#H"<[+_4X(.LE]%.DSX<&V4R=>7I:QV/OU/4$M8XS`-F3TSK.
    564 M`&9/3NLX"Y@],:WC3&#VI-2.LX'9$XJ'.2.8/9UE9H\-M/'U-.)A1EOIG<=U
    565 M7JV97V<(LK/?.?(,87;V;MRSA-F96U1G"K.S7I1QMC`[8XOJC&%VMA;56</L
    566 M3"VJ,X?965I49P^S<[2HG@#0SL^D>A)`$["=CWGP1(`F8#L7^^#)`$W`=AX&
    567 MPA,"FH#M'"R$\W*B';H`M<>W$,X;9DT2>&Q5]WQ!UMZ02*['-:O.%V;+UR-;
    568 M5><*LC4DD^OQN-JYPFS++J^/1:#G"[/U2_#P<2CT"</LT?P>3QIFC^7W>*I`
    569 MDRMO2/'0=LS3!EH/MH?U>SQUH/5@>TB_Q],'6@^VA_-[/`>@]6![*+_'LP':
    570 M0SH^GA'0!&P/82,\*Z`)V.[?2'AF0!.PW;>5\#R`-EPB$O3]5O(,@29!@/=I
    571 M)3Q+H`G8[L]*>&Y`*Q>@=E]&PCG"[+##=NMU/S;".<+L5-<]Q4Z>'\A.AV1R
    572 MG9Y`SQ)F)R[NU`3Z[&%V#Q1Z?C`[];4_^9;S+P)F)Y[E>_XPD^N$DWS/'61C
    573 M(7P:MO8"8#;Z<0JV]MQA-KY.PM7.$60GU34:A=U56WOV,&L6?S>V=HXPN^_K
    574 MCESMN8-L$65O3Y_G![('"R:_K3_R!8/LMD![T2"['=!>.,ANM6W`"X?9K1QK
    575 M+QYFMU#57F&V.UI7.S^8/<9UE`7ZLD$V0NFMLN!E@ZR^-HN"5Y"5BS%N"]!>
    576 M059?F\3G*\CJ:]N\U"O,ZFO;O-0KS*;7X=5GKS";7H=7G[W";'IM6'WV"K3I
    577 M-0K^;MMPKT!;NE96G[T";>GJ%[;,3:I7H"U=%6^;V@>O0%NZ1KQM;"&\`FWI
    578 MFBQLJ4V$5Z`M7=/(F&KUV2O0EJZ)R[A>??8*M&U75D#$2G@%VK:K7T:%'Z]`
    579 M.^;BQ6<7;_['O_S7?_KCA8[=[R[^X1\N]M6_BZ]77[Y>?/KQXOU/5]?O/_YP
    580 M]?GOGWZZ^?CIYP_O?_K-*&7^UY>EOKOXZ0/E_<___(__\UTC]]L?_Z3UG[^E
    581 M3_/G;W[;9]._N_CAZD?.]?G#Q[^^P\V?U)^'!.9W%U^NON)=GVAX:7_'#44M
    582 MOWWS]:WZYB_.??OUK?[F+SY=RF^5?ROY;<M[G7\'^>U,_IW3.RN_C<V_77YO
    583 MY+?-OTW.;WW^W>7?(?].\MODWSJ79V-^G\LS^;?V^7=NO\GMU?FW+N5W^7<I
    584 MO_S6^7?NK\G]T?FW*N7G_NM2?OZM8OZ=X:%R>3K#0^?R5/ZM<G]4AD?.KC(X
    585 M5&YN[GU.'"]5/X3N=Q?_<?7U_;_^_.GCIQ\^?_H9`TFU4O%_44KCLPO\21W\
    586 M2Z):_A(3/B(^J)%_"7@=/#Z0/%!'_^*1SJ,,CVP..3#"?W%(`MCS`-%HTX=!
    587 M7H,<`/)?I&JN4U?M]()J'W_Y^>KS^Z^?/O_VS9Z[E'(/4Q[`D'_'#"";(1+R
    588 M`/D,4*LEO\[OG9??M@`\[D<#3@`?&A.D,3]<@;8^ULV9XLMT_(?QWA\8S_UX
    589 M`/=+`Q@'`OT\4&;ZW<7__>&GG^8TFXCI;.$1^+05ITCJ`*=(>H53)%-SBMPU
    590 MY0KM`0@&R*_*JPP6XUU^%4P!2,GE?7EERZO,#(Q-^97OP5@*=%UYE0<\V?*F
    591 MM,*'DJDP!^82>.7RJU1J8O[$;^(8'XTI+7=)WL12D2D-]UW.4YB("OF-S7E2
    592 M:0'S!2XMYXF%D:C25Y>!%TL+=.FJR\B6"NBZTE5;\O1L3)<W.4\L#*TK,+!Y
    593 M)$)I05=@8/-`I(+TL<#`Y#RQH'\L,#`Y3RB,+Q88F#QVH:?(`@.3ARZ6>D+I
    594 MJ<YO@BUO2D]U'CE?Z@FEIX72"^?0KK1:Y5'PI3176JWS*/B2QY86J,S(BR!4
    595 M-K=@*A&5SM5,1:/2N9:IC%1='NJIL%0JUSZ5FD)'9BX^4Q[,J1A->2BGXC3E
    596 MMMJ)&$VYJ;TXS7@4\B`6L5O$;,A#.!6W(??,3,1LS!TKXK:P5Y_[U8OE5-2*
    597 M7,Y$'/O<7S,1PS[WMXCCPJYM[N^4;=O<WZFXMKF_4[%M<W^GXML4=)FP?5/0
    598 M=2S.3<'5B5A7N9EC\:YR(RLID>Q<S.]).H>`3W`;^G3XU`J?BI\KX@$DO`T^
    599 M8^)/RY\=/L%;Z1/I':0G?7)Z$_B3<X&VZ)-S=5Q"Q[DZE&`3<EEN@PW(:SW2
    600 M6_`1^N0TK(-H5B@TL(D^H4CHCG6%CI^S;D+"@Q4'UAQ8%5$>BH9BQ8,X*G^R
    601 M<F$YO7;\R;D`V*SO)!203*_CV%Z?856&E15N4PU>-]-.9)Q<41>M+@B5.8?J
    602 M-555!C?Y(G?*L,?R*F9\B^6-ZS$B<R_5:YX];A5NH+J>A_=HE^FCR(HY!VUQ
    603 MMK&$TT563%4O55CK5`=3!0JA&RM?JL#`^;&6E@K]Z[%VYO/SJ996T=4P./Z@
    604 MMC9E)]O9P/Y(LMZWZ7=_B'Y#2\M+<5'+(_WOP\>OOUY]?_'KK[^^4W&GP\YT
    605 M.Z-*$L*%%460,GTSI#R@^I'2L*SZD=XP,Q)M05KK"^<J:HVU>0AL44ULP55K
    606 M"A(4+FZU*6A11*7*ZH15O8PLY:A23I='P79%7!;*,ZG(PV3*DR(98AXD$XML
    607 MC+8\,46*YGZ94.1><.5)J<MGI<+X(C.+)FI\J;THAL;U9FBIO5"(<:7VH@V8
    608 MH@"2CEO4@-*>WAPNA&1L,5!-:8_I3>+2'E/:4]0WT\M)4UK8DTQ1L(PN+=2E
    609 MA44J&EU:J$L+56FA*BTL-&(*$9G">(PJ;>Y*F[O2YJZTN2MM[DJ;N]+FKG"=
    610 MU&L-H3QQY8DM3TQYHLJ3HE/$PG1BT8:B*T^*G(^]>5E81\AMU@4W=/#E2:F]
    611 M&#DZ%/=`SRE]KS&5-GM?GI0V^])F7]I<\$<7\T2[4KLK;2YB0A<S01?\T<4,
    612 MT46_T[:TN6B.NI@#NF"4MJ7-O99G2IM-:7-1^W7O"#&ES8/N5MJL2YMU:7/!
    613 M*-USX()1NBCM6I7:56FSZK6PTN:"4;U89KU";DJ;"T;IKK2Y8)3N2IN[7+M*
    614 M11RGHJJEPO,+1JFDRY.BC<;<9E4P2L6B"Q2,4K$8P+'/552)D'NJ0K%<"T8-
    615 MMG$HM8=B8Q>#9%`A"D8-9G/!*.5+FWWI:3%K5<$H55PH@^+A2IM=:7/A\ZI@
    616 ME+*ES06C>C.2U(7RI+2YV`?*E#87C.K-165*FXN\4`6CE"YM+AC5JSNJ=]`5
    617 MTTX5_%&JM+!HY:I(F=[:4T7*J((_I,25)Z4]76E/P994K/P,KR)T"EZD8NL7
    618 M:\`6FSS_5L42SPI8L9ASC4$7^S5K5;E\EWM6A$JQ#HM(*=:?[857D4N%J17N
    619 M5!"Y8"3_[M46TS7,CE[+]^P!=*SELW;.(E_DO0A[D?0BYD7&BX`7Z2ZB7>2Z
    620 M"'61Z"+.19:+(!<I+B)<Y+<(;Y'<(K9%9HO`%FDMHEKDM`AID=`BGD4VBV`6
    621 MJ2PB6>2Q"&.1Q"*&10:+`!;I*Z)7Y*X(79&X(FY%UHJ@%2DK(E;DJPA7D:PB
    622 M5D6FBD`5:2JB5.2H"%&1H"(^17:*X!2I*2)3Y*4(2Y&4(B9%1HJ`%.DHHE'D
    623 MH@A%D8@B#D46BB`4*2@B4.2?"#^1?"+V1.:)P!-I)Z).Y)P(.9%P(MY$MHE@
    624 M$ZDF(DWDF0@SD60BQD2&B0`3Z26B2^26""V16"*N1%:)H!(I)2)*Y),()Y%,
    625 M(I9$)HE`$FDDHDCDD`@AD4`B?D3VB.#IK5FN-]NT7"^/!8N98N5"P(AT$=$B
    626 M<D6$BD@4$2<B2T20B!01$5+L9+;A67*(V!"9(0)#I(6("I$3(B1$0HAX$-D@
    627 M@D&D@H@$D0<B#$02B!@0&2`"0+B_L'[A^\+TA>,+NQ=>+XQ>N+RP>.'OPMR%
    628 MLPM;%YXN#+U8]9KK8O@S$Q<.+NR[S&XP#V&N+2Q;^+4PZS+K@>+!HYE!,W=F
    629 MULQ\F9DR<V1FQWDF!`UE&+);0V9"Q(T"'P([2)"7&0:X+;-:YK/,9)G#,GME
    630 MWLJ,M>*J"]Z&4)3[4.2ECYE3^V*]N*`*[\]"R!7QYGH]J6CP6O=J1!%=??8L
    631 M&K+(J!K7LK:SM"CZD^N5R%ZQZY6V(IB+CJY2K^7TXK.(/SL6>RZ,Q58OGF+5
    632 MO)8A3:QPP9`F5KEB)?_M(YFU[S]^^?#IX]L?_V0Q9^+^_`T9SO_P#Q=__'3Q
    633 M_=_>?_SK%69SN;J/5]]???GR_O/-[N+SU==?/G^\^/7]3[]<77SX<O'?_GC1
    634 ME_1=J5IU!\QNI5;,;J7G9K?JW2W%,5-F.'HEQ:3^23'LBL^IMX2+JS[U!FPI
    635 MMS>H0RZEZ*K&EP=%E7"])[I8IMF'DGJ3=S)S9_JIO&)@FOR@Z$.FN),+VIOB
    636 MYRT:EBF.Z-[4UL4SW4_8JN+"+F9C?A`'BS`_*"TM_KJB&^M4W,N%D,ILS6#7
    637 ME0>]65>F]GH+LLR$]\;A9"I=^_*@=\H7[WMI:>^.[\W`7.U@X94'@V%6/.F%
    638 M-,N#WIS*#XI'0P_>LMX$RX66EG;EP4#=Q2]?-,<\`>%[\ZM,U/>657E0%/XR
    639 MG^:*#EXFBHIZJXH7L>B_*I1IKL+7?"I.V&*?E'B"TM)I@((J4R7%M"895YQ_
    640 M)4MQM_:F23_G7&R,?GJ@F`_9(=A;3CK7TG-@568<2TO[R<[<TC*Y9W-#RU2;
    641 M[0V2,H]6K(_R.S=SF#?,;+7\+C*D]V7G]V5:*C?1E[F]7D04WW)AR\5!G=\7
    642 M)VCOERONST)6.?\D5*)`I$R7J8&[*].R-QQK;Z[S_"D1"&PSL*RVK'=:UE0L
    643 MZXM6)++8(2R)+0<E6-;J+.MP8G68Q#HTZP:&IPM,E'M^FRT'UJ=9\ANNQ=BL
    644 M\5_V6C[78MC",2KKY9=%%]>L[>DDLPZB&7C1E2\'_9C?LAVB>99#<_N+%BLZ
    645 M*]]G';03+?-RT"Q9QQ)-,>N%<L]OO6ARHI^)]F9%/^-/OM>B48F^);$C?,^U
    646 M<//9]F)EB6L8IE2<&!W<DVH\[4+4AS/]]&J9V2SHV5O[_9.B09A"$KUWI*!@
    647 M\;*%@F)N_)M0?&B36YQ.:!#I(LWMFS0TT,!^C//[99SW+8U&A26-1L7EJ+,O
    648 M5S]_^.OG3[_\_3<7C6"SOH3TW9#RK4PSO)4IAN!V2CNH0*2H_`;!@>6;_JG(
    649 M#W3_0`=^8(84G>8GMG]"EO6;DN/JY[]_O>$HMS<E3]*^M$IWOZM:5:)76LUP
    650 MDV:HU2J(4OHJ2.'Z\=/GB[<?WJG??OA/[YS^[8?+RV_ZU_J[B__=_S#?4>:A
    651 M0;___9\^#.$T1KOO+OY/W[JZ6CUO\$Y-6TQ/2OOXOM'+M3YUK1QZIR?5F)UI
    652 MM8>&>9(03_HAV:5-4-=N,O@AK#796-LJ=C:6J_VVS8Y/T5+I2<L(R<98Z<Q:
    653 M+;'9TLW@]3L_28@G?>&[V`3O3K7*0A6-2@M,<=\L:S=O!+4?:X[FP,%SO%I`
    654 MW9W=V3GZ]D^'@NC)3ON=MA-@\W.\JE%L9R/]OQ.<`<EQ0H9M(:MNI^Y&)K<:
    655 MQWGIK@$HUX1UU^@0^E!ZA'%:&N\F]F!HI\T9GIG)LY[(>&P;]4S!$:?%N%4&
    656 MX+?0KNZFP%IE"*I=JIKV6DW;:E:9E4IM0$\)0:MI:U<9"ZEZS6*[:6NGK-7H
    657 M=2`TATM9INMIX9K7F<RJL$0%86>F\EOIM%-*[9*D=\.+0&43$:LL!WQ5`2D1
    658 MD?Y<$\W)'M]I1]I&0Z+04ZV1>8I9I4@_D$,P:>>-V[F%WF-3#.K0C`"(!X8=
    659 MOS53*">LB=#H4Z;$2F(0A5`.]*J`=("%=XC-L)H!JR?@\)S-.?!`U29\@CVE
    660 M2FJ'%LR8#N>W"<?>J"DK(7Y+PZRQ4'XJXZ@XRA0(!`0#-6FQX>+H#74G53(:
    661 M2[<(/N@LM;;-0,%N-'CZDL#`ZX;&4STWH^?4^SP60^O!DKAO88IWG"&`0^52
    662 M"+@83VT6V.-,>DU9C%YE,;K)YZ<:5%Q56]K<Y'@]=K.^V89_`_:#'IJ%0&N\
    663 M%P2D:HJ7HEV:R;-!O"@LM6]#9#?G";L9I^HI<$`70G,UY5`:-#EE3@/YAM&S
    664 MMO9%+"=,6Q1`S$-O%/BC6U`%J'X"'@3JC`T;8#%0UP//9PP?;\/X;47:1.[H
    665 M'7-%_+<S[KSC);\\=*5N/VJ9Z9C"^M+#0MXF8/HD*&F&QO.79@1K@@D!5C/3
    666 MI/]AVCWF%(ZSEP+<O.UAUX]YHV?5VZ%G`#?#7%I1#2/T5@]1LC,$DP[_6=8T
    667 ME*"6DN:GO6RHP>BOGG2&Y-UT;"BK;<+<4:NFK,P38GE;Z;S4]6Y!ZXT-O9<$
    668 MW50(TB/'UL!D3.BQ63`2T-F&KDP`G7$"$(*O30%#+:"';1D>&0,:S$PS3344
    669 M6<\H;6;BQ'%?E>[M(C?J62ZLJ91S[[3H4C-NA_X09.?&$+V!\KXK[,N.&^_Z
    670 M-KK6BWY`'6$#%9[;<')_PP8YLB#)F[(D/[6SIY7!NJN-UDWU+[5@J0U+K=A-
    671 ME:#A^<CT63)_;$.9!+9-D9#&,>VFU$]:9WE8Z8W$I*;J(FJQ$[Z%9X*V<?1,
    672 M.%$:/<O,7G7CIVW[T$-XS-PGT,UW4Y86T=/*2-3@E'K!\)B2R<Q,LJN:3FCJ
    673 M(5.52Z=5H\BW[?,I#UQMR!9U<L;[5XM4FZS@^_%@J9E+:,JUW,S\ZZ;L4J_W
    674 MS\2F^#%3N-NI0:ZZF<!44W%I,Q@&:HGK<%"^;1)$-E^F,&<S9(%,S,QG"LE`
    675 M8D5/QQ_/`DO*7D4D(4W$VFR)T3/ZLW'NI"/H[&8XH%DH3V`44?^",R]0D^W,
    676 MP+3H7S<HZ+HS<><6;#\]<P:2R3P%@8>+8=)8XQ>T!QB;<\0DPV]@-I$XT@)*
    677 M9Q\'-&PW&Z+BZMC%X6W%A)B%08UFG5'-_);9(S)^7\OKXAI!.0D.@`EV5CZ2
    678 M'7^1/B!=#54;>V\):YVDY@5AX7'>#]4-'4GSCL"D[QM:28`:2D5_5;6KA"06
    679 M/>^DL\3I!:E431S`D8A>8B`Q/%G.5#AJ.^XBM%#+^C.9,)*H8BCP*Z`:M(9N
    680 M`]6;VUM!UD>N`Z4!;HG:)R)$5<"-5(H#5G706#5:E[M6V3+4+RD-H"<!!H6M
    681 MZ82)P#B,@.5//:7*1((2O6;_$`AOBO0:@Q-E!%$`0*"F_+1R<:$ZI(]3O*H<
    682 M9*@2Y>:.-7QLV581K.F9,`'8DEJ=J*848&T;M8NJ/0$S-TV)>\TF]DB)F-K<
    683 MA&VN:YK-KF!'528ULFIA0K^6VC.=\B`E:6:E4'O2O#U^9BU&8$Z[C6FJ5R:"
    684 M>QJ\80J&JFN:]M9$,[-[R7JT,R9#`V1TL?+JMAK"?#UMKHT=(:R;>U03"P`W
    685 M]5SX+FFB:)^]L[&N-CI04#1NPBVT[T($TTW9\*X8A:%W&N2KLNU<<0GK.^\(
    686 MGD[G]E7LP?G.1:(O;U*3N+2G8G=FYMPQ5NL`XL7[RA@/U'1Z:5*P37V).>%\
    687 M$E/!L=O"W.(`G2#OSDRE)Z$%D>2"XQIHO;.IB=GL+!W7;!-SN3!(5CAZ#2PY
    688 MM3#%VO"F:-?PHE@WN)1&3C#?=H,-+J*1)\PT?6%+U@*<-H.[IE*ANY8'*TQ=
    689 M+);@8:$8+<W*03:1<$'?6*!9G84S6[]$%R0*Q`X7&Q]_\KO(/1QQ'H.'J.*9
    690 M2'[FQ8D`IY#MIES=2!E4LF<!03?X[%A.]N+0\AV>0''$G_S6`&MQI!N%`7?P
    691 MX8LH3N)``T#]3*'CBMV#56RG/89P)H6#N)C%IV5/8NJ%.P\`/V$?!G]8.)=X
    692 M+N*HJMVL:@77YD-4/2`[/*8L;XTX3B/E]5J^,3MC66<G%<*"6RM1=N2I^%FS
    693 MMU6+N.T<9Z/6)ZHV6<)K=(/X#RE(G@T`GN-VZ$4T4YT/^`N]ANI`,461A%X$
    694 M91(:#\_!Q#@&B4`E2E_@J#2B=NX\?&J:5!309\Q:C(I"*$R>.MMZ@X@`3L%_
    695 MR%("/"SKJA("!.Y(GT1UAG00UL`*`6::XT]Y&&W6;7?48N,Z*A:83"(KBMIE
    696 M!8/A*B-32$\D$D_5(RG:H<'PLG:CP="A%U-O5=8&LV8E`R$.Y.;PL$8D:B8)
    697 MZP[]@:8(Y31(+O[O^%-WMN$V86HCL*1N)]IAM*+9[<1)"I43G60!)K$5#.I=
    698 M@511)473=:P((+4MLXSLQ81:'K-M7FOET%R9#0`/#'H+CPONV?/2E1'!;"4*
    699 M!<=#(V"7ZM("89DR?%"$LUK*BG?H4#H@BHYX>0$4X)HC\R*CL].Y-@9VV,Y<
    700 M,X*(::+9XP^&K'3-I@T[5MTN,S$E5AHF@$2#8J!U/$V+0GG2(/L!:L/BR/K8
    701 MF2OCJHZHT$Z%D67T."R,"F_NN=11PDBY.]>KF"D>6Z^?\2,MED0Q]O"=#;[8
    702 MY$<U)U#:@$Y!>\?R)!5.,=3QB*&.IZ@P'5%A&H\Q`\UPH\%0N0%1K/-*YMN^
    703 MQD(]6?IC>'R4)ROB3W<CT:OB[=4K>6<@-;L-;$RK$1N]DX8E[\!CL\V$6`G7
    704 MY5@,7)JG]+IL9.DZ](II0G2=(#=,6S*"V4D1NTRY62),5`YY375NQ&9M1G1%
    705 MD%X2(<6U48&^(4'D->(X:,R9S,E.94,$`X-Y3L-H:(O+PHY$/.4%Z]?"W7$+
    706 M>=%E^'I8E7X\!H)L?M>#/K\_2MG1;J1[P>O3:SL;N4M#VQ''T]%27?N)KN&[
    707 M@=D5KY7M/5>Z$P!-T".3?5%6K"@8[.6B$D`C$+^DKL#,$\N/-54^6,!)C(JV
    708 M&4DJEL?OP:\9_,#J["*3$!PH#V#IT*Q$;L>8G\&1I/*G/$13V*7&)9"IGKSX
    709 MAP0%(L]O9SSKA`]E3[RN>"*_9WTPZX;%'^=C\<D)R]BH&[+_CL'B?`H)Q*1\
    710 MXI&3H"=P3HZ!4G"HYUD(76F(_#Y$Z4B"=IB=?_C.#D#/RI@%UQ@I9J*;90U-
    711 MGL+3P_Y"!K)7AB07!A.E0;&*3-V6XX]$IL;B[QM[52WW#WH5$*LX&_&='8[B
    712 M++2`#J#"CD-F^%&*Y5KD:8K%/\EHX%VP'*[`_76BUMH2NR#F-;&$['50]T9N
    713 MFDF]>*:V(+?1]PXCH"@-%D$(J$^\&5*;.0-UGO<?I__PCU(KK<]S396OUG"X
    714 MF,&:!\)B1.F`G'"/;^"EQJR[`M.&;QTMCC8_Q72\R9_YJ2*CMB32Q"9)&@2T
    715 MTP+BZ(/T/-J^7RP[72B.@<I`U\R'J5!0%PP>0(;O\0W^(]R:&7='M3B0W,#%
    716 MA6O+9WFLJV2@$()5,H%1RW4$(\(,'0R/-#2*Q&_H*Z2"]Y634K'&"4!0(SV$
    717 M<+!\S]\89*H\HAM`0;`:Y^6'/*?_5(!\EL<ZACZ9XXC%XO*DQV#HD,7"L>6_
    718 M=IG-(^"%6S@P>80P&D@(*,*4)+%ZH/,ON@G0F3!LU`F'08%)I8"7_"N_P1^`
    719 M(E_EC6.<STF3!;2ZCEIO62@Z0CN(16"8QSW^XQ4\#5$5:-;L'^A,H\8\&R@4
    720 M>)8'],$_^0[X8GD"`PYMT">4AP@N#-+);S23DNV_R[N0JL1DY(/Y%\<Q&#R\
    721 M<M3H!*`I_L%__!:1HM&4=E="@KK,?XH%D64DAY*D8O[IF:D040;@;0`U@(4D
    722 M(1$M/\L[?D_%E>_^)7'W5*77UI"NFY)A+@`J2IX[G&$&,%:@Z/C&>E?H;)`I
    723 MF&;!'_4?!,Z@4E".H57S3[[K%.L'4-L@V"`U/*97(L=X,6/-+_&'`LOW\)88
    724 M7ZARF`1)5'GH=S8$\`_,+CG/;F/^R7^<`#<$C<S);.6E@-S'_&@"X<`''\`B
    725 M?(3X9Y=\Y-8R`X+D`X]+'0QQ3^T)D=N#W^4M_E!B^1[>&CO*X0V/\C";0#(!
    726 MOK0$XY45F1#Y)_]Q`MR0JH0@`>Y'%4,&;V2`VDVY(Q0Q@@$<4+;\YCM*`DZ%
    727 MUV`'SB+BC4")Y+$K#_KW_(%B^YLA@0W:U;EB"(#S,`$"(XM8>80X<,$SR^.?
    728 M_,<I<*-\B"E[6:N@0-(H\.?8K]89GLU,;'!UH.K\!/>4C)B;9=\;W*,1:!X<
    729 M\X,`#HL'PWO^0-']S9"`C+-1+H4:=O7,#9@*)'OG(,,-L2NCG/R6#TF$.T)_
    730 M6X(R1I$(\,S2!YE#Z(*#(N$P\L0HHR]/Y)[2`9CH48<95`.Q1MPD,MBL/!C>
    731 M\P<7/MP-28*QILY'72$95L\]T5L/1ZX.,+@2=8RL!/DM'Y((=X2X*5NKM@[.
    732 M8_T81AN+20OJ442H<)`:$((\D7L-KYQ-(`,+(R\RN3BHZ2F`E/!@>,\?7/AP
    733 M-R2)?IR/L)K`Y*EW)#=(WS.L"4*/)HG-VB`F5)R6!_(AJ5BB=Z$8A+9R,&G6
    734 ME:`8&8@938F`>QJHKU+JG\@])82&SK)'U.,(I($)8$A8ER=#"O[@\H>[*@UQ
    735 M:`Z6&+(25X"Z2^J;0M0)21NX=+WFU:C1,],B=DHL4![(AR3C6T(ED]5..R@`
    736 MQB"2%Q]$S#`*Z#-"B8`YY3TX&S^1>R0$KX`2X#T457H,JO5PLI`VPGR.'PUI
    737 M^(.K&.[J1*12F'%F2_=`'9(#$0RQ,W!<Z`B/3`<E![?,'Y,\D0])Q[>1N'Q6
    738 M^&VX/P\+5`SB'VQD=@T/@XWWYF&1:>(=\U99-.,:S@6;'L3:@6^#*8L]'U#O
    739 M6HYQ-PAC@,JRCX?=H&S\TF<.&K%]!$IOX6034S[D$<\:BZVCH`UU\@AZO)+E
    740 M/*YMP#MU[Z.2)W1<>T+'C6<(Q,_@=CGXR$K\D<XH*?Y-">_6[(-E.+#KR>PD
    741 ME(+MJ[Q6BU.J>EIQMH+U5"Y5"V'*7I5.TNO:O>C&4ZFG=*H2S-AZE659G,'4
    742 M=.?<O=*\'FB>,]B:Y)R__\&U%93#@U2G<KB(BP\[J+#@>OZ1'I2;YDR.??@N
    743 MSP7Y!^%A"`L=>)AD"TA/FG>>L'\8-]:<L4L^#D(@XS)'&5<Q/E0`_"]$1*A/
    744 M,1"-EU\=:XMLB?(,NDMP(4'%A3>(?^4W^&,[F+_*&Z>JI`ESW<G!:N?GH=.L
    745 M42-\CT#9]>7@-W)'7>*D?1V#+A9\A#G`&DT'32S!J>'9^V:]V/S.L4Z%/L$%
    746 MQSXX'EZ,7W['[^$'R-_]2S@,AN3L2(#6J>0-*9$@.PR`T^)-Z$O#`Y2@R`36
    747 M<6GQQZW(?NN<W`FDU=:J;C>5[?*4X]%3Y[.)[,S,.)[9BA"`8#EQ5-6MY[&9
    748 M?XVDTU'U^MO6R^I!=^MZ[UU$U97%AZPL/83P[4->[F^66I6I8M.>*E;WKC*O
    749 M3]4J_1!B]_"$31UK<Q^SD?'HN3]E;\4RI\K]]@"-:O&!*Z%DII.5R@:!N9A>
    750 MQK>6^!;VF^]XE+T$KLE3"9N33]W)E#)"ZC2K7K>8V:O"=!Y4/1SAQ\#JIE&#
    751 MS9EAQ>N,+(>F]<ND3A4W6`7O@`6X[@3Q#4='+*490'PGX[UYJEP:4YK$$V,E
    752 M%N$X@%1A/N(8@#<5\HRG$V2]B79)UIQ`B>0&NN`GRK/HSUF+SBHSKQ#M;A5/
    753 M,%ZD):Q+8Q:!L5N6N/`WT,_OV+5+H$1;C,P11XY_L<+:^3,_53;D93%'S]]7
    754 MT4'+8:<Y\B-CS`.$G58Q0SGL-$J>;4%#/4)'!I>PAF/"3JN8H=,*HF/0>,J"
    755 M4STR^5YU97V53*5L'YE;![[6P4,+B(P8O,AH(W+O01`YC(;,23@%1V]CE05O
    756 M#!1$LG"-(-51<^C9*,!"XIET9R13.B;D+"Y8'#,5SN]&`=/AK@LYTI1N%L.U
    757 MS4@:A=.$:U?10$<(QA*G'4XK&,UM8\=);]+A/F/'JX`@B6Z!3(8`@@8"0L$]
    758 M3Y'P-+5`@:<ZJ3W2/I^'K]@`\EF$*GK%G`!RU3'ML-CW/!/-03,ZBV&)KO&L
    759 M(&!6=!H:-,8C>'8P!MYFC-T6LWDL&MF&!(>A#K[E9$$*OD7E+"MEYA)<E+RL
    760 M_8DJR$SA=A*\"OFYCZC)*)(1%J)PGCZ$2\1C,X2KXL7W$Q*(7[!/?.(975X1
    761 M*DV33=IRY)AR$@*6)_ZK>!Z.]^#)80Z'!))VC`Y,ML`0ONM`N^RK$`IF7&2*
    762 MD9_E'?XTSV#*=_\2S+=*KWGVN$L=B)/?H7$,.0G'@=$[E(@G'(^BO2]1>]7>
    763 M(C"7^$/TX8PU;+:(C,I/^%X4'<%T9MK"L#(-"J/(CX8T_,%5#'=U(I$\=68Q
    764 M'\=+1O,P"0Z)Q2NF/_L=G,R](AW?9O`,*Q*C@\\`'XED>(J1/A+BFA-,A\[I
    765 M_&'AN0X)X8))8MP\>D\P3\@*;ZY&(%AGL5E?\ARQ!,B;%`S\N@86;N)YW82F
    766 MJA3Q-OH.SF_+D5C0`PQ'%Z2(",*$<"HJ#*&XB54N%Q%[C1"!@#(3/B/A:H@=
    767 MED<9>@[<=O1IC>MW*O;+^T5__[?WGZ^N_ZY__N6GKU^N_M?JKM$Z?#?:/%G9
    768 M\>;)L=X\.6'SY$GI;W_]=;2%LE'80IE=]?5E-EV:]^W)H>=R^0-99*L?R3C\
    769 M+KXK]<;UQ?J^+$D#C4?WZ6+9)*AL0L5[1PU-EU1J,,#9Y]3O-62*EJK=[O5Z
    770 MN&L8`0@L-_NO7?G?W;FN8ZX!K>((J?"L4(H^3,)_O?HH6^Q_^4V#B,>D;,PJ
    771 M*1M;D;)Q-2D/M<RH.61JYH6TQ,#)3L'J6?$D6D._=N8-MM&!)J\,D5M\X]E4
    772 MLV_@,'XCNA%\BV^2^&Y!1+`T/(B&(_)(Y^'AXSA@=E<AO##H\(9=A&Q6#V!;
    773 MV2F_=.C#QZ]7GS=`C!C:*`NVS?_Y_=>R>W['J-5]@Y'[9H<]B``?\^<=?5H^
    774 M4@C^(^IO=U&*M-WO#A0)3)@6J4=%PLQ[@X^J6'6H6,5\#684>-6T`E4:C<^4
    775 MZS$$\C?XJ.K9@)/??_KXPR_?$[8<!K!=1TE;HZ0=H61?R10C+6,D3AA0I!.^
    776 MT02H-X1FI/('PK#N#3`%NR<:T[WQT75O$%!F^5$I806!LE#3N1D;>I@F/?2C
    777 M'KJNZJ%3Z.&DBK?_/NJ>,^A>351AH"F5*IJ"N+%"4]IDFK*JIZFN4SU-&83@
    778 MBE$F%,5G3K^I#X?(5,UNE>Z-&/HJ!^1[O$:@+':&*>VTAQ$%AUPU(=@70D.>
    779 MS\-^K]Z9XFIW9@`'J3GTFO#@XM_4NS\QIQ^.VG+A=Z/*WKY7NW]3!,P;T^V5
    780 MNS8W.`Z^<]?^1ON]ZJ[=C0Y[Z]QUNM'V,G77\4:[2])WW;72-UKOB1JNE;K1
    781 MYM+2HXY2X9&Y5I2SN]2:WMH;K?9D?%TK@QQ\IY'#=523BC<XV,P[>AIN5*+L
    782 MU\HC<T+1#IFAQUUK=:/\WB=ZK[L;%2Z3I?>)<N^)]#LN*.VA+Z(@RB^Y[`T.
    783 M4;>.6J+-C7*7AOJI-<JRR(9BPUZ17BOEQCTW2U-;-)=&C_V-,GMJ#MTZ%*=5
    784 MI%I0M+N,4*>Y:'_IT"24305Z:7&\9'`8*KF[I&P$4TUM5I?:*)0748V1L@.J
    785 M45I^4)UV[VP*FBMUERYVTAT:&,#?F!ON.0'.Z!O`S5,^HU"1CAKW'2HB.TOJ
    786 MU'N/BKA.<QF3DBKMGN#DN4)WB:$V_B9WQ;B;<$DV$L'1V)MXZ5`4U9LN$9"A
    787 MN6*JS;@4<M7J,OEHI6I-HZJE:H-11;UV#^PRZ89N(@J+-XZ`SY6%&[_7AF_]
    788 M#4&0]'G-;8B4FPRT#HU(?!\CFJ$(9WDDT`RUUV2).VX%U>RN+>$8-:V[MNK&
    789 M7)*PI[ONAG#!<['IQEUZQ+VC#?X2RTVX#81770S<AKA'$#PW(5U&LL$L6D`=
    790 M=L`F-$#MKZU#WZR](72B;T)QNL&=IEH]R(/JMWN-,&LTP%V2+>2X`51K\D9:
    791 M$"@%65D.38C4E<YQ$](E=<1?<C'N9D]&'=<%T`)\5!UA3`3$J3ZJQ1JM(VHD
    792 M/"<;*SE426!-#*:$X22#@VL$5%%;HO&G[('H'M"P_F9/Z!,<*M0$#&^Y2AI"
    793 MDA2!ZP00$W"!*G7[2$8P]Q(<(S*4P]X$HZYMO.2FA1MB&0:X1:5KZITCR*-\
    794 MXAH^)B[?[J,3`#J`#453>8D$[+5-E]X'E!QOB%:T%`E.DAPWV.RQ(`(%6M!&
    795 MNG8=,0K`+%$&9SDGD9GGC`2Q1"3IE#37=3?,DRBMWKMP[?3^VIF>8Y+L*QQ7
    796 MO]/L@,PSG2JJ@;&F@>WJS'9KQNN[*>/5NW_38+S$,.,U<SFE\:V)>,%(B7-8
    797 MN4E[(D_%/,![YK$==86?^,L@7$L3JO(3PB/+:0@\6MZ9/;-AQ[S-@YL0F[26
    798 MWQ%/EY(2XQ@X#1%5TOS279(%73AY!$U[E(Y$ZM)JPXGH4>1W`>W%.\U/F$>C
    799 M3\BOJ8\&P^VI!Y0V7@8OB6DP3&XG20&CD8P8;.)D":,9,].U4F:Z)`0#82(E
    800 MB:((JNR$%[C"*PWEUPPH>DOX>*F4YA90:^DV<T:@$F?PETPUE.$R)"UL3^F<
    801 MCNC92+D!S(N)V#``P9HH@Y4&$($4$$8"G(O";FRN.>UCB)*2."[8AG/6"D=(
    802 M1K@,=4(SH?;`UP)\I+^Y)&RWF9Z)#W#].$'+,"/%4%Q::X5L8Y(.43\(5;D!
    803 M>5P,CPM<24R`Q'%=3$@:(36TE&KVUF8!0J,2B'LP<5T:^,F0F-BPU\30D!BL
    804 M'!1G.F)*2.<@W"*GHQZ9*))$T-=@5&@LF>XNB4$1;"W&A;BN,$C(QI#'E[`+
    805 M8@UIB>59#)W%X'B5!':"^(8'!^!U/#9D'P6/E"2RO+4,"8R/9YY*24T!.(@L
    806 M.<X'IL8H9#%8R94>V$OJ'804L4?TDSB><9H["J1#.Q2`P"-G>>141[UR-&(*
    807 M?C2/3*`<:;03*<D<$ZAJ(<$M4Q+V:45EQ(@B\UV'$=0:,/(,F`X+-K@,32*:
    808 M&\2#2.24N!=QCX4WG)R0N6,F[4KGK>@Z(#B;AQ;0<>";7(M3`)FH-U08R7EK
    809 MF<."3KWGC*(!D;;G"5NU0[E4`-"9\R="3M*K&%(%/JS+%-@JMT<W*/L-BK]V
    810 M_@;*C0,/IH(\M"1",@=%AD2I,3+^Z'T4^03:8`RQC"$D?H@J/5`$2PE1H-\[
    811 M8[0,0B#U$<UA[<22Y>RE;:0<4,F>=%="5XUA\HP\T6'$H($8DOC2*)+(T5,E
    812 MCI4+P2G7LU:;$8E+HT<DZ8F.J#0KF$*%$:@)?D0@*"U=0J_@PB"+DA/$);"2
    813 MO7'M"=<BOJ$V$-"29E@15JG<NT0X;[4,7&;73O`.28%&@+\'QP"->L69L>HV
    814 MHB1/FC-&DDJBW(YDH`"J0-@Q7@I;<<Q6,$S>$[EVG>>"-4P`Z2^J<T9)(PG6
    815 M'8.,L954@.BXQ]#(P%NH$$UC8`!B#\0EE0)2G\HA3I6,C@RW'MR,Q<*6'&.Q
    816 MIUY[SQEC2`G0(BBE3N!%4(ZD.T1NBR"OM*7'7L?\BG2*T#&)H3![&4('UN)9
    817 MH)`FB.X"DY5S6+B-TJ"]8]""VML.70^$OAYN;!1!V>@6C,[W&,R]&E#8=X7N
    818 MG<\B2IK#`/14\`VQ5X01HVAB``0.C[*)!5K-Q..!S#2.-I<-W=X$05R"4[2)
    819 MBP%B8^D<RB%LC%C;B8((PBXP1GM7^(1GA!9(=`(GDHHHA5$[P"H*0&0=&)6`
    820 MR40K!MCG70]CSZ@,^20=A>5"F!(<R1$JFHJ#3"?6164$X+(--@\E\0M")9"`
    821 M!S9?DC9):4#5T:*$&V)Z":0<@,9DTZF.(31`F=$8W%5SST#ER7$S4$K'Q1$I
    822 M*.L)5,&Q@JX"T64`]CJR,Z!1!M9:.VT%6!E]A8X@.JE]FBVDE-`SZ+%8F:BX
    823 M2$),WV%``Q"91&,`FPX0JA`;7`:EZ2"`@^=1L9BR05Y"1V:B(>.OAAP+$+$D
    824 M=Z]]8$:N<ZN(CSLO:,9R5W7Z.I)!HL'H`W"9*M&,3X+,)"(8:P'G0%J[YF81
    825 MP*#HH'`RC;#N]SJ2)D%%4\X(P4P6@^42B1N1#%,\FL#%#J-"]F9F(H%Q'`0H
    826 M!9,::[@[D?!947D8Q0B$)D"8##J">B(NJ;E,DN9)RH2R(`,0"K,V0FG@`AJ+
    827 M`U`L]!AG@."Q$P6&X`CC44%F1VYU(!O->!!*`*Y#<0IL)`9+5:,4MILPQ"B%
    828 M='"@*5E_93`RR[9:BLB2,#">AP)%D`4&.I)*0,0:8?*1;$,;(E">9#(;Y1%*
    829 M`S@)-Q3>#C`CK@7H'Z(1S`0S!R6@J09^&(Q!])=8O$Y8%(D8F)ZH(F):.F4X
    830 MD^SUU@/](NB"ZH^H)V5)&H1`B/:X*P0$<QT#-#R-AGJH*:36H5SF[`[,/,*R
    831 M4T0]R3&X0"@Q\0BP5FDBF$W@)@M'"EE#,2@U,-$P[D>R_H+IH,A'4(U+,044
    832 M"GN`!L]R?V!&>*SZ166$$L3S7.`.16XZUZ5$AZ82J9G!!&+-5*1AV0(E/3(U
    833 M@4%0B2'SK,@Z#30=+BXQY@?68HAZJ(Y$P/%:6DH&*3&>CIN*]S123!RLX&@`
    834 MEDH>!C"*E(C."6`R706F*RH(5)$4Z,!"FT]$60E.M(#"B;\JZ8$C`M(L/B+$
    835 MA_;0WJ-F74HQ03)D40*`J@EO/94+LR8!X"B8U)+(/0_UP(GX<(GINJ>UR+0F
    836 MHCHRJ1'WRCW0E^S`29I*)ZT2:)%`<S%JMK6H*@-5'/V)H#J#:6)!)*(Z[Q+$
    837 M<LQ>&QX)8%QGZ6F"2X8:B;73*-5<ND!*,74V@095@MX3084LT2,3(8DI&5IX
    838 MG32D4T(''525!(HCA`(^)5!<ZAP6%J,\1P9!,%Q>[!EA]((`0=H(7XYG>DT$
    839 M=M(H%`#K;@A).P$"C5/BM?8HW\$`I.$6,!!=8I,)5$!-4X84\$3R&:N6T#U_
    840 M0P+11G0.9.690!.35>:$B;4GHN,@$`A[%FB1"8E;S&V$'@\IEHB0#/%H*)?)
    841 M"T>%4.4*P,:-DAJ&,4DLCI)G92/UM!29ECRC)&B)J"``MQ.(*87(^D`",7G$
    842 M8Z!,F/*)D:[8B0DJEK/$"<(UM61//"QT7.`P)"R0#&M`**_04`(-64K1<1,3
    843 M;">(QB1Z5H?M=N#[@(E.UBG?=S=[:$?29!@@D:DG,?4@#$``[8GI!@$##4J"
    844 M+D@$0^R9+!4:<RH3+B2'#8.X4%(&6$PDD(TEC`U<IB?HQ,2X!H^@=!=2R'6)
    845 MB]&0D1UB3KA,#?N5604*)2X2.L9/]FE&QZIC`H$01](\3$4L)<VC39+.6BZ7
    846 M%&1"B5*P@4)*LL]I+AG^+9.1`;X\QRU,4$^2$;2AGG))Z(X!0:%0\+7@&1@@
    847 MD\(24&213$GHA,DDB9$!(DQ,):0!L'ZE.L@7&B`XH#HB%&NM8X>5YD$)"G2#
    848 M2MS>IQ2E*>*RP`!'JD.H)@5N-JQ[&G!"#&RIQQ7<`.L2\!0U:)&Q/(Q,.R'C
    849 M!@M\Z+-<`<LSE$\X2<R!QRCP&'6!T[/"YDE6<2]`,"R=R%2'KU1H!U50J1;:
    850 ME/0"WN`NY6$E,6)9R4;11-$*/$C*1FG)(_Z%"[=05#47[HOI@<+9.T>-Q$!%
    851 M0U1)90&Z8-Q$[T`C+0T!%6&'F`P23&%8)0!RS."CY>(ABG5N;-H+TT!;,0E`
    852 MZAX$D((JU6E6"R@!,1'#5432@9QS/M='59!:I:-42-C34>51*LS#APIC%D_H
    853 M3H(3GYL(/XQ)QDAU-V1;=9[''JY(HC[X`:E"DLXD_7.%[/AGO/;9/:*YLNRA
    854 M0&7I$FH#X33)+<$EI9D)=K`@41,5'CT;::B*.H3G5),K,@HU^7UF-J@JB/-`
    855 M.I;U<ZJ!)#.ED;[PX`;GN%308-3$A[A&]A,EG:067\@1M6"J!*X3%`?[&=W!
    856 ME!<A)+%CS06;2U):H@#)7F)FA2'&TDKH"U,!(4-"!M$P]BO,`FCLIX;BJ;6>
    857 MVXH)@$*#BL45R03&7L7R*@)AI8JL&:*IB0`2/&,?"1UBOM(F(KW@84)+'9HM
    858 M4ZG%[C-/1RUNS_83"NT'*[*^R3DC.LD<2\'S'UPG>,$RBZPMQ0/)YK_@JS+L
    859 M,RP#[+,EB2X$GHF2#A#],5=0$9I/8&L*56CX7FP4*$'Z4.',WY4;1DN!%$6<
    860 MH0X:+`\KF5+!P5K*A7J2F8H*K.C`'$6Q]K(TJM"?`"9@*H:%+?49]EL';Q,5
    861 M>D,XQ-V.;$NSZ$*A<`DKR0TR8VXHQ7K26*0E<)@'^@<NJQ74$<-\&<4*.4G!
    862 M`STIEE^Y3>DRP`14FN@F=@P^371#?!0V%TK$7*"W44J$YUI:A]FXZ'/;PJ6@
    863 MI`*9I,CMJLA$@TQ$<'/?P;!(*V/VI;N>!2JFDB14)D02L6\6)2)S'M8D2H5_
    864 MB.I%!JU9HT_2=>C)\(JAR`'L\8:GJZ14[>%`ES:11!*G'0HEB]LXKHD)@QYI
    865 M:2GP-S'E:8BFI&S@5A/ED6HFH"-:,-&PW85B>ZAKT(*(="X8?GIF.AIHGU@\
    866 M:*!]ZN`<0D&@(];Q4)!AO[\4Y-A3@4;$RRA-(-1VA(#<`S9SX._@`10AHV6D
    867 M-+ML#=>KV7?FV!VF3)?G\5`4L#D:%O0:V,Q\1<,QP'AO@7$I=RJ0N2U#;TCM
    868 M(@:)CAC2N@PKKB@.EJ^)7!:$!<L6#1PF@>(%^D!AD1J&-"OKV)BF$F_@\_4Z
    869 M2)D`",I)8`'"8C20&3N-:>DY)F>9A1AJMN.9!2H2O!_:-TJD$<GW[+8UC#N8
    870 M6"[PA1`P]!H\D5MDX$N*25H'K@$?IC2/U&<$E'9<&F5`W"V#T[&21H7<%+@:
    871 M8*L/@1&=RC%9&&M&2B?D8#R\!SR,!EH2-]_"^I7&42%&7`JHG2#(,.89-DM8
    872 MC6`($\`U1&DSA(W8QPLC:5PO48W)6"`M<9=)^+(A)<M&.-BHE!O,X$<N@_(%
    873 MX*3A.0-,Y:!1MI`_%<>^>;I+I+UQ#82/HB"C)"TPD`9A7)CH>,8ND`J5TK6R
    874 MG5C]5,1-)F\#1"0A)ET,;*HP9"QF>AA!+,_!@LQ-JH`DG%.JP,Q=X+HM,4<G
    875 M(V>AS6/?N\AEZ$P2)@RPL*3Z&LVLR&J@H20M&".A""*&)!@!M@V-3'EHC4"`
    876 ML^OL[U0<4T`(;Z7QT*B]XA<98:R]R5(%(0&D1;*PXJ``$2.6Q#%C/N;U->N1
    877 MF-@OY,8S^]X93@JU4>0;9N=),D3)IPN1V)@-"R2^R0B)J729/E.V5PUMO+F4
    878 M"IB?,$?DJ3T%FP!SP9CKE82(,K"Y3$10X*WB>0[E^@'C:?/,EVUDF<X4X(C^
    879 M130YA;0E&\D,=K8H1P@48<M2TIN],`UG,T-R!'7/K8&\U`Q2QX%'D=.;2\Y8
    880 M2,LQY*0V``Y.%C(.]B*!'4(:`D<3,<S@^*86P^W%,^L$,0&32Z40:!@=QR3Y
    881 M3L2J0]\863WZ`^;`4TZ,9-Y<LK.#QN`F8Y"W63/RS'8`6LSL(!L:P6/EPXW0
    882 MFR=3"!3HJ5X#F@D\<TU6X0U'`01W>:UBMZ>//JS3JR$RP;R+75ZKC;\A+L'K
    883 M(2[!S,+!O)E&)9C=OQE$)5!=F+6]"234,&%P$TA,LD5[$T@3PIXI".(*I$>X
    884 MR.1'>GMW21(SPF4+H1_WDAQ3%@C%DE@K#S762F9':@II`CYR7!,!S'EF*%04
    885 MIC2-A9.7@Y0\.*Z-4G)0)+X"=@3,00D=W#6LWZ,">%0QZ<W<%2PMDO6C1!*A
    886 M&D3:<!V>)"V9+T1CD>>%G0>S@9F1*R7QP41'55I$4QC,S^1`&F=9`2%4MC)A
    887 M[Q&Z1>H&-R+PG"*D6<JQ.0[XB>V0V6E+S?+PZ&'_1FY5`+PQFVIYP@*3Z!VD
    888 MD.V28><!VL<]BRI)K)@G)D]ZB(:3TG&$BXW$WR/VFI5&42M)(L6$J6N)R?)^
    889 M#Z<W7,Y19B")#26LX`B1AP4M!9:2HN@E*H%::B]YD@[-A#O"$%2PJRT*(.E!
    890 M$H@:D.".X;Y2TPW,)P,S45KN$8S"DHS:'10['##I$GE^CK0)R&(2P+[3/*U(
    891 M?7&**,(XAY`C*]%2A%Z$$3KWA*P-ZH6%0A]E\A%A(0'3(S!B<^\2:>W:D07.
    892 MOAGT+O*,CRFC$,:-(6(EX4D#2;J`3MJ63A+2).=A591)<$?HH[UDY3ZZ,6@P
    893 M2PGO7DBD6"1G2U<)Z9-'T$CD1J*K%AXI#Z[824\-M$>.J=&C\?*D,%G"+&H&
    894 M=%96#-%QGLOH'!Q?.H^K8PSTFMW^$DVEB!WF`#XBU1IW`C%4DIT>[!BX$P42
    895 M%OXWZA,IEHH1E2#A.I8D"M:3S<.=,''9N3S6<83)F!SC>,3@L;DEAR\`-'`O
    896 M`9=)#ODN@X8(U9"YJK%!I1?0D$8.SSTT'`#&C\@JD(B*TV83B#CH!3HCM3OI
    897 M#"/X=4AKH\(T-QPP(B7!$<-RR@F$QE2.J28_@38@!>L!<P_4%`0-"J@@I<#O
    898 MR?!BI@50&1+5OBCP"'+1-<>)%K%?8P0!M$BT$9<@AD4HJ3.X+)R]E,D0E5B9
    899 MO"<5!VY[E3"OGS&).*',RP-6(SZ(*1,]P6L"GP&5Q2[`;*$!$OA9Q.T&^FG)
    900 M\C(^PX]$HT9$810W)\"'^)&.534`+U1<.7'LU8@:`<T$1$CPM3G!?H`S[MD+
    901 M8K"&H<LTB&A$3+TE8BHL.0!.,M\-Z%0Q?R1A.H@(^#[CF(<`O&':.\#7(P"3
    902 M$,K[F'M'\'68WO)0"767T1$<G@8:N\)J@:X9Y%7R/+M<,SZ`V$W'#C!F5;(C
    903 M[=59[-";@4PT3OH6L0'?15;Y$..A.7R1&);V@J)>#=(S)8G7&[@UP&RFV(BY
    904 M3>BIWJED@&\^(ZY5"%$-D4Q1PB&>JC<L9A2B+8C*\0B`AK(HI$TRIA?IG>90
    905 MY4K`$-3A\AC3&L$=L>3!4*\00>`%UPCPX,6)[*\NA2X4Q(YD<L,W3XB9,EH'
    906 MTI!-%#%``JLH&.(/JV4B!F'*1S`*F$:WA)@(F/'LZL,P8&JF`X:":S-,,`P>
    907 MFCN&G,@$4YH8!01X(29!T-SW^D['0;.#%,>`A`F+Q)#X6?<Q)J1-&,(,ERSB
    908 MBC+VP\X`STO8_RV4,3&7F+\QK%33@)#X9-T+_C!?JQT\)F["_#$J=C;^&!;#
    909 MP3Z1_2`N97J`["44M,3AM*A8B&<AM',68U)&A:0O6QW*<JQ849-X5,Q8I&%N
    910 M2L]P'I.KQ+"((U(Y5F%N3@8&%J,&Z8,/.N%X"9(;JYRT"S@<0J@#DJ4X_(I&
    911 MAT%!['<MG6E<=#>E<@Q,VD=-PT4V"U5O"[$0CE-C`R9.`J,"#TS@V"LR)SQS
    912 M(AX78AUH(8\)-'(]:)X8F[&RP8,S8VX8'>*4P28';DQX58B&,-U:9[C%)+<E
    913 M[H#4!>H77,#8PUQHQD%,P5<F?(K84M&-:7#"2&WBX?%3=HX!<G-0!"@7"NH"
    914 MD0_I!IEQ1.@7&ER#E!"2'1Q>E:!@N$!%LL,/466JJ.]*O#>]`LA#9*<"#(-D
    915 M9OB`V64$=I/4#=C>.HBACV@*!=<LF57&.Y)##!_-Z@AU.(*+BNB`-B(&!AOY
    916 M@R:+$5)Z(J9YPDW-Z()&"5J+(_A@LI!L>U6&B>0@XI](Z4@I";8XJ"X$+@4\
    917 M]EGY(]4ENR$K%1PCQ$&1M2;"@Y1FW`&CA#ETXF30@0@S4J$C0J".!#FI2CZ(
    918 M2H51@H83(9YHM*$P89`<F8\<J@GEIK<>,$0398L':<XB,4K$(JE%"(8A6"JA
    919 ML$[4(-)D-.;[K2W49"&A"`^L1X"/T)(SC)0<,&B@!17#1]RO(WV21\E-)04/
    920 MDYT#`^-$IC=[D8A4@:%1QLG"_4#,AW($S_,/"(@BFTMCPBMPH"3K2V*SL5MW
    921 MI#'S4)FIQ.0923W'#,R<$QJ1WDCZ.H2Q:$D(]""91>@*)22ES%XBU"EB`:38
    922 ML_F`D8K9V&1_<64/8*PP73A6%GBRL)L3"L8K71)=AJ@=(B>\RLR/]"Q/HHYT
    923 M+]*1;%')+,\?.D?\*7%\D&8S&.U(E7V#@4H3%8E'*LX9!H\5(CAH#,$-"7B^
    924 MT!36V6CLF1`5DW`>*T(E"WR.6I@DALH.=IJXI\<*(0_/G&7R^!#Z!(TY?D<H
    925 MH'TF)@,SBS0E0BG"/E.T!2AB"JYIHF91(6AX8*V+NY>&ABSU8GAF=W>M"//X
    926 MV)D(X0$R#2@D:&<!(;.._6.BH"#^12&(D%@W453&'@7US!'W<(624C&DV7D^
    927 MTO^5K`.9RE*>)%5SE."H`.`_49/%Y'OH9+43QHD4=<`/DU\*I"S#1-P(QQ&9
    928 M$N'E@C@&X'NN31V,%ZEJ$[6"1RS-:82'#"H;4`U3=X'Q2,:,EUP8B#,J3'$Y
    929 M&#,2Q`0C4D%X&@8#5IMR&*4XU:MXG,*<5_!`P?,#!D3*AD;03B8EZ&PTJM[@
    930 M%<A=6!\[A\&"(B&CSP-E!DL58S/5*WET&BR3AP>1$V031A*H/KCD"\LCC2W`
    931 M?L(4;L)N)J)T6_CA$T\JL_CET6&5C>,<';M*LD6.L;%C'9N'Q\Q$",:']+8Y
    932 M(#A:`AQ(D2+BB-D@*IA!X=GG8ESH<$)]+Y_@=2&Q[O+0Q.QWX)F+L;6!D4)T
    933 MV$2B*EG`.4<)'BSX2CN0`=D!%C0;9;`BIJV('U)'".NBV$>DQR6/Q9T<6:6@
    934 MP\&W0L@Q,K4P9&FF8"A9$#JG$1XU0B88'D0"B.R/>?Y>L]L'4ABB,@4EIH*!
    935 M*F=PV)$3!H$ALU`10H+.4IF:&+(PU;B4K#"=,0X>-;<'0T^8^20]G$/=9-0L
    936 M$2'U,I&R@XU8<F@/Z7.!=&5#BCDS%H0,PH?/X:`:FDMO:"M>9#56096L39TQ
    937 M4QXUS+X3*R4"CPH1(5A*R:$FFJ,]?$=B$ZV4\+0$M8ZHEDPE8Q6+943NL?W(
    938 MK7&@[.)ED`FAL5JN>&7K7*SP3+EJP04!'=#MG$X=\0+BS"K'AFAH=Z0C(V*(
    939 M^*7)&H;EF0(6QC&R<2:SS1C!D!TNF!`:&RS*2)#E1.;R.*86YF`@R5P`QR7#
    940 MCX`%OY//`PDS4RMX/.%P*./HL5".U33%]$\*!LL*'E$W,N$4+U:;:B(\E*%!
    941 M3SR6"#P&:7?0F15"0?-8L@>LP^I9ZB\O,."AM$3HQ"<9WRU;<!I3].(7P+C6
    942 M=BT&TT]U-!Y-UV`U/)P60B:2N0#+V@1?*-$@X!"KA4GH69.+1T`:(ALUAR5R
    943 MO)G%PB^"NV.U@L?6<;PZHUJ$YM,;_AC0J2K+0]I@R1S`H!$?$HEQD@(//<+D
    944 M,26U4!%#H7)Q"(Z"SRK'B'6D2!BOL_K=@4$X!`?A[*^0E4KHB0CGSV-LBVM$
    945 MY@K'^KZ2]8`SB<4J9=>$78"V2%:H)F9/9-E%+<P&@\Q\#PO^A/$:L`W7$>R(
    946 MMSI?K`.>FPQ"'33H9!4:CF3`<'OQ(RDHF;5UA*%/<\'.@Q];.(?!)Z9$72+E
    947 MEZ!/5K-,>F/P"4N)Z0,.W$[/;FOK`HT=#8QU1=D!>+N.1:"$>W98$6&*SL-6
    948 M]6!)8OS#3`MB#/`M(@4*8.$?EI>12@S_M(3@,@Y8GA6U/@N;+H'3@,>18"8[
    949 M0)>P2<>\V6/10(DEQ=0N42R'AS-*C`QOX(&;ZHV,"+;%XH`)F/DFT8(&!0?]
    950 MV&?MB/12^/9BD!!$1*N%2P_6!=EL@#P9-TA5#62R.9]C^0P;GZ1P$';HHCR!
    951 MB_N(^6/@A1M\%C*=/%&Z@1.J)2.`%?`R.HQEY[%$A90"CLJ"A0^/H(5>FR/5
    952 M''.G1%A*A`7OD^K=,P;1A"A53#9&%4")<`*!!1)<`$3!-%KG>'8>>&*RUT<F
    953 MO4>&"K"$-=V)D&4\24U``U'8*P3[0<(M$2&&D&$(#CBVB(_KE&T<TH`M:6G$
    954 M.G+,8H)I:P`]`D91W8`X?H\E#AGI$->KQJ8=4"7.-1-&EM#$7&`+)DEIK*%U
    955 MY.`I8F@).S`$"\<O-,@L+P!X*(TDR#/,-<\E$!J",1,":YMU.(([J9\ZY7!3
    956 M`SZGE2Q7!>J8VCH&OOB9;L<(XUI,`0B#F!;H?%CMW7&HD\82'BK/0D9$;"'7
    957 M>XE$9R'LU3F(T#'W8[9&W60$S3@$D>)#Q"@+ZGN8T(1"2642UF,O`T<P3'5D
    958 M1AO38KR&-U5Q1&O)N!(+I7E5`4DX:%1L;NL2X48V(S4EP!8HD7%@B`:'(O**
    959 M4S)`LR""JHY]\F(GH3W`)(1N::B>O$D(HU'J?34(I9A9&L`BU11IAI>J$YY0
    960 ME3['@'4\):)(X2"=+4`R*E_T#M+C8?,$CGC.J(5],CPAN\<1+(@%RU(*PT%*
    961 M.1B&!&$!M;!4H0-V=3E,.D(:.43/JQP_[+3XOQ3+HMID`U*EAMH`K(I[H@X/
    962 ME)48+\-,LS4""58`%05G-.&V**06G!237'#2DXPS,?6HYCFL))H.DZ^985E8
    963 M;N"OU&?7N2S7,#:D7U!.GV/`73>R>H%98:Z(,6YY<$4B;R?R!J%?JHG^P#?'
    964 M<68&!PT+/T>L(,*X$@=#!@_LL$5Y-;S%!O%@4O^]="&"M2(6'PNQ%:9/LZL3
    965 MCF-#.BCA(E,F4"[N,S=%'+NN/0K`-S?3<QGA2/.S6#(JDB*!MS9X$##0<"!I
    966 M@L&;96$GW@727$C.:F>+SYTC*K'%CT&HM^ED?0.P,'`@(GRT1(2=N*`0N`L/
    967 M-%;YD@$K<?4:*CCAC>N*9*S]-8@[,E-[`GB'Y:2P;X*TT&+#H!;[1^"<NF34
    968 M,(3C??0A@N4)J`982.J<SHPB01K2Z#HX!(/AP#`@(^D]NH,/2I.I5CQJ'8O#
    969 M`.K)VC"C(JGP`9MUJB(TV>DCW7/I9F*K*2<+=CQQ#-&KE"SP;PA@H"76RN&P
    970 ML8!PN"XCIN4%!:!"+"-GYIX1$XZ#"%T0?2R(*?O=8$K>8U.85&)I$2[911+"
    971 M,&5,QDNP:X1.!Z+-'BD!/EX_+QA))L#(&@8:8IH/J]1*5!L6(,P4(2`F"TZ+
    972 M6?8@/!/QB[HY/L!.OZ=^8`9>O+L2NTI###'@:'!(D_72>"`GQS`&=HK8'&-M
    973 M85&2\IF@M?C,'2V'@5M>EY[1,HU\#8JW1"#@:N%$O!="0_\$;B("%,&M40N7
    974 M0=1CUZ0?H"=/-!("(8A&)@2!H)A`-DBIL(17E8#D!%$+DNHLJ,YER6PB*0.$
    975 MB($]ZCX'I7/(`PDG';+7`>A9.W.`CX0[U$G1*IW%<I&IXI]W::`<]*2P?MX*
    976 MI\7?"$DU5K)HRHTP@IY[<H0U228H802PC/Z(_@4<"=D]:1^=M`M8BFEKI"/3
    977 MD3>S%1S%5"?)9JQ0S1PDPBRQG5%E=JCRG2&84&.G%I&/#NLB)P88<!63`\2J
    978 M3(35UV5\]2T!!)L141DI<AATDNCIQ!(`2,D(2WALI4(@;,)Z9L+.S@5;V*FQ
    979 MV&"`U,)`B(*5KX69DJ5"6:F$5'PP"B(`WH;LA%!LA(N?DL,A.^D&[V\Q-GX5
    980 M;W1!B)*L,E*WDWU6YAH"\);7KB7-1<0<)PQQ0*,"IM4AAE=GS1^82\:=`WY2
    981 MR<86U@IY0,H*)EF4DC-U,^)ZDD"D(SA@?Y;R%M/9"-$ED6!ER0>BNX0,$$@V
    982 M]C8`7VD`/:90),"?,!;+;6?*&F^ZL8=?"6[\*"1L>8^HUC@!:1TBA!70$+B5
    983 ML9;$`2EIB<C*]U:_(*T5!YN%Q2C0!M)BN3'6HF/NP&<-D\:/.#F-GR`Q$!9S
    984 MG=Q%K!RO/#S`5QI%JB8EF=YSLCY\ID@#:TE#Y^"][(L2M$U-,@/>&JR:<5C-
    985 MX&4B#G@;>3VNP2X=-,8D;%0V:`SXOCAO3!9,0-QP"<E%XL&5E0G:L_I%>`S<
    986 ML66!",S9WIFF>*>2$(A,!5:>-TN:FC6R68E!2Z(-28#M\NZ"<VZ('<P4MH30
    987 M5"K)?/$B:EA<A,=P0I,0U:0$B>""Z[/C9??@586B@;*D)U*_B0/PRN?B13.\
    988 M=Q89Z"A=S"+$:B)F/87,86._;L;'&]Z*I1.FB5G:F8U)Z(OE[30D'HNXNH+!
    989 MKB6^'._4A:72I,Q$E:=:@,,6,5E$1V0,0/)84[0#C8!ATO"A2,:LZ7D)AW.8
    990 M#B8E'[,G9=4%%G!9+))2+E,DXDB)V9"RI;-.``>ISDOU%>_T,K'V"6-)U$<L
    991 M?[8YLM_)+HQS'0-(2PB$J3Q(9%5XK<;B!GCB"-H:!66MSK(#%0PF@"1%O22L
    992 MA<3H,&+TT;&MQ(LDX+B`)D4*IX432HBXX_EC(C+2`E-AM!A&DZUWS^'WM>M%
    993 M\18T1._0O[+LD,UGYFH@;T4C&X,0#CC5\UGLG-8:IL#Z6B"HP->0W8C`6HA>
    994 MXE>DZ@)KK>^1UD"5HL(Q2R"%`&GCGO"%N!WE5=EFQ[(.4)PM5I3%/E]XB6CJ
    995 MP04&9+785\K+VD;!U]30V8&Q"*4E`QFS!2&S8<O"HD%CCK?-"S`FB%Z]K-IF
    996 MI,7*_(#)*"R!=$9T1ZLD?A(N(2856W`6BW\B)JYH]'U9;P3A#R7'FS*7C&C@
    997 MP0>IL'4/@B$XIK#+*!OFAI67%>/$9[$'6^E5X)V$&NP05CSVZ(R.UVU'68EA
    998 M92-74HM(E"KXE#FF+2,N?"4>BTH[;[+M!LP%V,DV@45#.ER9TZ/!U"3S`[2$
    999 M7DD@ZUP<P80^P%8"OTA9Q#K,[%UL);0'#[9:>%#&6=L28$#:"#E#-C3U*0\3
    1000 MD!;F)ND+'E``L@Q("QY,4HP4*S*"Q2C&6APMT8N$2="G'#-/("WV#POLE_'B
    1001 MWL5**W!KFU>KP7>"]=DNK\M!(.O$'>$C+S(E!@BG<B9-PT[.N8H!5"45(S'[
    1002 ML+UVAZUSB=Q(%G4PRV"9968,SPI6V!-0""&TN,2PH1\,!,6+&),B#.]7*UE$
    1003 M<FKLCJ6RR@9,!8\F(LC>3,->%=CK@I#N9NP?XBV8+,A#&0G!5+S[4D,?!)(B
    1004 MH`;S(1U4]JY@:6H.$K`4(;$=IJ@XH%&L#X1X8VEP<-@'H6/&;01+:?1(1A-_
    1005 MBBDO>0:.PGA/&I-'P9;5::KVT`7>RQ1.SM05]3.1&)@I[%YVV3,6UBI16NS1
    1006 M,C0)Q\'+LD]8;$9EQR0!9L!+1"Y'A,>P(B`1V>P%E\USX$`*6"":F2F'BI+B
    1007 M@AW.\L!$GIKD$/H@RUB!D;9WFI(&<W-)4!9A+0CI9V85H20V)(,!!;]2UW-/
    1008 MY5H,#DB9+C$S!SE0)IR!E-`C2-'&,F]PB9@-9W&UP&#3T/>*?NHX]-0Z+(W@
    1009 M";:"DYCE-HBF28.C"L$--';PB^J,A'9J\_)66895?=_%6'@E7*IS(>1Y/V;"
    1010 M1(7MZW)`+C!1L_.'``T=&\T0&@4FPG\6<>H*ML3*2Q0C6^KPMD5H&,:6>3CX
    1011 MO:-F=/"@5#&JV-8+*?-($MD.GM+,Z;&V;NR8(*STO`\$]B+T(1-78CM]KBUX
    1012 M\;(0\S(P!$K(FN]DTVT<_F+@_"?VI8IRRO%SF(K`'A:F5T_AAB7)0L-#3=<F
    1013 M(V$0Q2M"`P*#B5D[Q>(8TO%4*O/QEO=$D2&(:N0](I2TO-,F#ZXM:)D:"IUG
    1014 M%PO)9(\906Y[-J)@J+<&*<EZ!NH,7#+%50/<A$.6F%Q":&.><V+41`@+%JD2
    1015 M'X&^IPO#Q`8=1*H`@!>\M%WEU..]RPCJ8,EE^+!'Q4SIYCW+$#D!%@A?%C,P
    1016 MH*5O4HMGQPIB30QA&F&.]"!P.`="1DE10$2,+)]@M"36B8TJDX&Z(2$10$M[
    1017 M2<V@I"HOZ0=.$M@(2QQZFZ4W9A;%KQ`QM#`B;,S2BY=*3TRC@,VV(XTQ<,D[
    1018 M01A@I&UQ,R\^%;)PL(&?ZD6XQD[C,)H[F;X3_`(Z(G0"X@&1$"$;Q(HM<)*Y
    1019 M'<+L39#EJ4$&B?@)3R%T&1>Q?!@:();K"/IAN?#8@L66;I>DPAM'2&2R1QG;
    1020 MJ^F64`$:(GB_PU871(79A>P-;\_,$3$V`;MUMEF!AMC,$(%?D2RE+O&B:F<Y
    1021 MQ`2+JTCE(#P2/19(B"A<2P0`-4T7H\CPIC5YD1=A\LW8L2#;QS$`''-RP4'5
    1022 M$O7`0G#G3F&++,.+$C(:DJQ'-`H-`@TJPG-\04..SPV1A:\2>0(\Q*0+CJ\*
    1023 MF!1VMLM6D,'R<Y+W";/BJ<?"<,F>P>QH(FVI\OM$WJ<<&BS11W`2B!.B;#@T
    1024 MT;\">T7HL7-0,YV2X`9@7F@.@L^[9Y.*&Q!;[F5U.9`/:WV8+K!U:IZN<.P8
    1025 M8=,=CDZ`5&?<@^-:*Y8;&>_2X)SCC?*PR@.6A&7'!.^+-U.)95<\@UC5#FM#
    1026 M.E'.`F\?V2`&SXX/+)\A1";RRRH>L`X[NKL.<WL6P)/R@701LT[8&`U;+]AL
    1027 MBALLZ'8(Z?-=CW`!*_T03I%U<P1RSLR3R%MR(]#9*A9`!<5,BQ4%=FHD.._0
    1028 M@FB+`-9:-H`##I&RHL5_"@PCA9IH`U';"-]5&<,,-E,E,>A#961CRP7,.%)#
    1029 MA'=C92L"&CO,E@K28I7/Q((D%,/DFD-X+.8U?.%LL)7F`@%81L/M.R0%%KN"
    1030 M963Z4D>)+74DU3%KG[*%HK%S"U:Y8!.Z8J%A50FL?$)UJ\W`WC!/$:B(Q-L(
    1031 M=5G80GP20W#B9DD3TQY[#NX).F1(D9Z2O8:\Q>!<0LL6@^!HQ*VP=9;H<D`R
    1032 M[&E$,@6['L#5G%(Q1S1O)\(3SKQ_7A:QQ(FQ?QH!P;,/*-LC-#@DS!T8A<J3
    1033 ME<`QN*<(]?+:_*YRN$2X(I@ALVDNHV*Q@\]4:8JR42AFE`E6A,>I1SC?`GY@
    1034 MAP1Q#A+;V%[$9PL+ZUA(;A'I`4E%FF6$0S`G,7BB*NMMK_+!@G4PO\HF`X97
    1035 MJ?..`JGWC27LI:@1RA9=[AIVUYEJL!%>!S0=)S=TQ4T&C+,M,@@V;Z9.8VDX
    1036 M6J?H>)A=UF"PHI'G3:&`<4'0/A!GX,VU!.-@MI)\B(@WLQG=X+!D#'8<+<C3
    1037 MW)@]BX)HO'_#R*3@[1JI)E)LP+_*4R6;W<Z83LC^!71'0=WH[5ZR4&$C@KT$
    1038 ML#31%8%NO!4&[YQ%8!7ZAEN\P]*C#I$_KKAI>%)9\?[8O-&"VP<.1"S*NN7A
    1039 M"?#\1[%"DKF9&'H1C@4LN2/<T2Z',$0^KV,N!"([%S2.&.RP"B846P,1Z@Z;
    1040 M8V&''YOR5$)@YP+)3ALPM^QZH<KVCI;PG)!XA9SGQ=1P\4L<*/8$)]7+&;C3
    1041 M7%8A':_BJ6UO;&6Y3Y'=!Z8X8K%W94,(1\.NY@ZT9WA"U1?40\06SG(DHB<@
    1042 MA*X8%QK;Z6**#INY.-%8@7KLZ#:$!P:'L/!N'YZ]"-C`.<<5>HYB)%E)L(<A
    1043 M-B"B&UPB"=O=>WA7.;[!9KSS<S4HRK[CA&.DY#$2%_5-N2;PQ6F`O8DY<J)(
    1044 M(<UVJ,%,I0\TL$'UC"[26&&^/>,BPAQ)J#!#),U*HAR`BF;?ZRQ.%HZ[O/T'
    1045 M<6K20"&60JX/D<`SW920#A81#!;%VYQU6<:".<^I(HKS`/Y%.&,&/PL'_40@
    1046 M&'K323Q#4#+7W^%P4I%/V!H<<>>`,J4MJUZPHEXAL!TQ7"G/'4*01E=0T!-/
    1047 M@MK995S'\K*)W8"M0R\-YFDP`8QI_XR#8-9S!A79;X"X2Q(>3F4\AFV+D``#
    1048 M7Q5A6_"^U^L0P=M!\TF\=R>V-]$<-&:A%@4>P(R7B1E"0)?$;<A.!.W9DR0H
    1049 M:2_92YN#U5(:VW&\?:GF/0#Y?"%;,#(U)$;T8G_"-<8QGUV/DEB"UU&3L:VV
    1050 M33GJ,HCW(&`7\Y!-H\"QE19;':3(2W][#HD1(RD`3M';NY@&4-AS2G2D(.L>
    1051 M(9E(&;+%6PAQ.]C;"3M$.L1Y8E'`P`D;`CRRZP#V,>82BM8`Q*0A)I%K0L*V
    1052 MQ5@[CAV3HAR60AA"J%!,#`Z\-'#.$,^W92X!V(H=IR%;C"SNS;B*T[<LW)T\
    1053 M8MA]'GOGN``W7YD6\;P0*WM&B#5<<N15A]4I,OB(<)TI5-C-E3`M$9LE'<+D
    1054 M]0:13Z]J#$]DO\&X-Y$C,FW``@%>:\$:/+`5H9>@)MX54A97!=X\`//)!"8!
    1055 M:."X304NCQ,&.N=<YJ%LLH:B)6)_`5`GO#OB!\':E*F>R]O*PA=-Q)87J0MV
    1056 M\JE9,]J)7@S3&M\B'WJ"S4^P2M*8;&DIGB9&X&F',Y=2D+#3P'X%U?$:L)0[
    1057 MS_&=6FGVC0>5\L!IF6J$M//90&%BRQX-1'H25W?`-ID1U=@.=VQZ)'8I<(2\
    1058 MZJ,5$I_9-6=TD;T*(]80HQQ"(>YZGZ=(@+]8WDB&+4EXJ#<2&!1Y(P0#7Y`N
    1059 MU!/XR#H$DV$Z!2C<HV]$&(8%#A3I3F/(_*#+B&MJ2U!C'U[,AY*)[#!%*>IJ
    1060 MXNVI9_(G:5&A*JZ=.-P3DWL*<48NQ_("?V'2!JS4Q_(B/N%&\)<&$>'$6!N=
    1061 MD9TC0W%D74<CA*CNGMWZ2\R;=5`08O%PDV*.&`GA5APHJJ%%)$+_E`T=XWJ+
    1062 M77?VYM*QQ4H@S%-*A+<-[8#W`QZ)U\01H1H1&81R-N^TS<B,\YDLI)('%F3#
    1063 M-GJ)C8:I'GA]DV`SQ`;50R8M8AY3L7XT!QQB78WBL-*,S''/$691;/7`\:0*
    1064 M'@G+V[[;S'LEL)JD'@[H8(&F>:OBJ=:&G8EKG8>W)R8IZ!%^XO.:`."O:0Z8
    1065 M.">PM`^;->>V\\F&L/<CL7\^<UM0&'88UGYC^QV35PM%WC<"<PV>I_DR`G,H
    1066 M(B]5##8;A(%7X_&^)UV)J-"\4?)(K=:\0W*OAFKLD0Q+C$P:60]5M`"<=#$C
    1067 MJ,0;2Q`&\MQ3YLQ\`&-$]#/F*Y1,N\,4)XW>!:S`HL'.9!;%>X'-<0VB^6-&
    1068 M8=`T]8^8E>DD3!<8C%F&K$<&WJB"E93,=L%[%%B#^,=(\HW,'^#N8#[HCG>]
    1069 M4]086#$V>ST(EU.#*R8Y&HF@T6&QE("$3XR$\QP1QR5T(75REJ/$.;!I5Y"9
    1070 M-VN%)-31]+AL+C7F)PFPIBAIP&4$/\'DS5-1LB<&>(?8N1*1VENHNN-C[MBP
    1071 MTYV7W3+)@L,,3HHV(W.8RR_>8GK/FW]"VC&<$Y\D0MI0!V>HS48Q4!K!:H[:
    1072 MGQ`89D6=BNP((=F@>3_UW+'(GC92"-B?"IF-K0*!TEC[`D&,X\ZZC,\).P!U
    1073 M>9.#P.&IV7=`F`^[FT07=O*EMF`N-`<":=[@>J)?:-G>FA"R"SRFC-!\[DO"
    1074 MO(MV75:F@='VDB0,58N((9O#<Q+OQH%AI;;9K*@G#DI%`0Y>T<'JTH*"7J?B
    1075 M<(VR<0=)ZQRM'+4P(1A3-N,FD-G`,J.1QV[-XM?66$XU40&!M0CK]PBFE42\
    1076 MM[9&!`/X<-:7DAS<.1N?)(>C8>*=>'GVA*8A(C50%UV>4L36)PIK7X!H7N55
    1077 M#M%G/0ZJ8];H)415(VZ(R"1/$D5>,(D#E\@`-[R&BP80FR#6&KJ6';VAEO*6
    1078 MX,!7K+5%Q!9"I22&#_B*^>(9'27>(T2C%L':+J.LPVD]A&E8E"(<%"@+>Y!T
    1079 M*6+IQN2->2,[4C0D-)FA$KD%A+5[#P6)5!.75XX`7V/O[8GB4!EL)\T;B<-7
    1080 M+;H-=@@%*`*[JL1B`)+&&=<#EBH^*H,$411*8#SE/;VP1`EG+HBMY7FHL"^,
    1081 MPAI^C$NVP4!B)!P15=))1!H.X.#-.*/EZ-F\[!!XBFT9@YSDP5YV'/1"#%H<
    1082 M9)'C4WLACTW.->,:;W'.]B<','@9&CX'=2*8@*<@,XTZL`@XHRJS%QH\+!T-
    1083 M?+@+HZK#3`*B;4,(Q4>:G!SKBRW!29/+W(AC47$.@^]Z#QT0%<YI2MOI6-Q4
    1084 M-%;0^XL%`22%J.<>,=M)O)NSSAQ1J9N9Q@#D)%HE"LC+W1D]>5/4@.D(:I,1
    1085 MI-5R(A(F\<F0,Z%XT'AW%#D9SZH<<0ST1`BBAL[C>,%89JF:-S].Q+^RG(WL
    1086 M:D&T8V>R*PRXR=.(A!(A1RMC@QG%3F'L.Y+7^&FL#!ZK>$!1G.HJ`YBQ%!&M
    1087 M)%P]G\>3:=*):C89$L93+!HW(`)LCE80%5Z"C@.?8XXF2WP6,\R@B*V34V&F
    1088 M.`[:,&%*L%7B*%3%(8=41.Q57+AB#0#A)1!1\^G(@_JM>7=Y*A+G_WA!3E(]
    1089 MJ`\P7BTO+&#D3'-R8>SD[<MA5.C8<U*8$V2#8Z>T[$!(?%)T(+7`$<R"[^TP
    1090 MC7,AX'Y06;L$:IH]F`,">FS!8O:\#%:1QG;VB#?(6,=;*BM$CZ!;LIH(N!AF
    1091 MG`K("/)1+F"RFYVTC(^*S^WT<#_P0BE!1[+7H4-Y[-VGE<G&%?SA%FS.Y5A;
    1092 M'.2B^%PU!8Z4`\P3>UB&.:PDF_!A$H:74,;(02C9'`>9LOE$M[P#+B8<0/B.
    1093 M3U("(KJI'`$J8B47Z9F1'?^"C.`9)(;(U+0F98KC,\MH`%W"N=9*'.",BW'/
    1094 M.Y9@5E[UN)@NL8\5(E6*R`(N&NP-A*@'G?$06\V`8<@\--`0P6$6&U#!+I..
    1095 MA9NI0`?:!9PRQQ(J:$&\B,,B24/J8J&@R"8YD2GT'<(G`GF7$4^.5HJ4/V56
    1096 MCQ#1/;8]P7&6,1\C@CUY%*Q>+!^3^(TDN]18=@!DQL_QHNQQ1,0ESV%JG"(P
    1097 MTJNTG!E`FH!*[(``XL%'I'"P$WVQ7<B(AV/99K!FCPD.9,"1#SKS1CZ/4($@
    1098 MJ34Y#HE1CT\]@[+893]9XDUM,+'L,2=4]$J$ELC^[J9@H\G3QT77)=S"UM<>
    1099 M>R/&C&`\&4,Z$A`^[\^K<,SX%-^!8@B;XQVZRLY4C&38MAU^")LG(1G'P%YB
    1100 MX!D-98O]CO5O`4<18<F\^)XXVE-C"I@:[J+LO9'8)U*L$3+%;OB$!MY(6O/!
    1101 M"61?.FQ9%63!"W#+3_D*D`L40.`/V,,CTY0$;GIL_9"R&&`$8RE&$,!4FPD]
    1102 M8TM[0C=2-GGQJ-*,7T3W%A,$./)#(D`2+W?-H1V)]])!$#77J'$&'0D]K`PR
    1103 MLD,R'\TP9N=`*NA#-#@*!U-E?H85ZAK!J";'6#%6X2CWB&A.'`K(BP@9JP+B
    1104 MQ*AAD#.,EQU':9)\(OW$!BS^SPP-D\3!Y7"7Q.X+$)P#+ROX%#!/!CV2R('G
    1105 M*K3F@]5KF0J,PA%`V)_2)2UH'^6`"8=]T9.<9@.<P@DXA%.\"5+DB@2I(+#X
    1106 M*#L$<(D"P(&86':!V"IL8VNS>=WMX5TEI346E,(J"IXRMP-&N4N2RO!`&.9'
    1107 M&KVK]!G-1U$@8HHX@1840U`E90K8)<<72`<^Z7X":,4;]T"!(BU-MM,5K$)@
    1108 M+MD'_$(7K.(]X4DW#7E(._$\H#$.CAY)R(M;1VUFC`J#7JGE^`M"0B=Q:1J+
    1109 MMK`2R_#*4YE]`F*%.1XK+[*.M_+`5D@J,RU,8%&?H3K;+/?9OX!I2FS9Z+*F
    1110 MPNX%K,:"!UJVO01NP3\&?WU"!)W/JANL4-'J-:B@0_@R6RLXD(,A1N8!:ZN"
    1111 M46[&*12V`<)2V([/N\+)(T`JQ'-`2<",6\A\BD]!QBQ[AX@6G;4RQ9$9$!_.
    1112 M%DV3UZLJ[+`2.%8T%H\-3N7"P@,L:3$"62_G0E1,%R@3H%J0[87-9D-&&JR.
    1113 ME$BB+JN)O+(T8@40N\J5&&I&3M&&Z4#F.F_6(TB#*%:2K]1,KX3/=KS@M,24
    1114 M,L*0\D",CM0\T<(X-A*;EG@?7-9<=+H923?-)XPX6&V8^&71JCF\D<0&NPFS
    1115 M2-"R>A0AW@;BR/4B#@X8^)C`JF6U):,,`BTM-AQ*LG2648;/,D(H3$$7`^9!
    1116 M)K0U6>CQ(M-!:]!\E`G3?-<)ZB$4'Z?(6>QKRM8GXT><0Y/-<3D=%?LHV*(L
    1117 M@2_22`0.E>W9#@+`L2PCZP>*]R3"+GK`G&))\HK1HJ(1GM_@S#$XR;AL(R?^
    1118 M(+[(@1=ZX2J86)U@GV;3&M+)8I]'V<8#F,(1,)AIQ=X78N$&F6L-?#YI\ED?
    1119 M4MC!%,'+]$#'8BAB!5?"^='&FZ*+P[>'R&5(36JC89<'G\J:'9)\$LN$EK7C
    1120 MV6P0`5&#F'/`C,1+1,ATD6ECQ@N#W0<-NZS%`:3DX/:..A$)/<4MQU@1]_")
    1121 M80]>V1496,'!H1$KATV4S7LT'_DRYH@:%J]#?#0!0@)B@`I8+(`5/?1/J$6S
    1122 MO8LH>Q*;(3M]&1=PA!&"(3IGQ'/*N$`D@@W.0*P!!Y*P!=?E!1&,!3@PI#+\
    1123 M-&;2*^EBQ(;%"28TQAS?`$1PEZ!%H@IHG)E=I$N+??=X#R!?1`QA(_PPBA>;
    1124 M9<XB@8&0J;WSEO$`$V5.MK`&#F@<96@"F%116K"I5Y'8&J?8$($1@R.>+/A@
    1125 M)+J/M\C!O+;-7"',0*:=G%J-IKHN;\X,%%"\_QAF"3`/F%5?[%SKL`-"YKEL
    1126 MB4*S0>!HY#@N((!66?O1'/QOV"_!9&+X$"="(N(B;-TQ%K@I:FEL1P2W.QD"
    1127 M++HR2X"C"G%C-`(F%#R`JM5A!X"HLUK+/@"$_1I>J9[U$)[B&)F]O(H1Q_@Y
    1128 M/B)%]`$C)T+5A&CRSD-$.5@_GS$"AW<203N<,)`AQ!8C#GYR1'U*97U5\5XI
    1129 M$2L98HA%Q8!6C(A\2/Y>;P6S!WW`?R(DBO-^1BS+8'\AXI4TL#`"F;,9#K7#
    1130 MED[8+1\1KQAMS.PAFA)+7G*U3G9NP"8TB+01/-8<>0=_-;8"C(7@1VR<3PGB
    1131 M>4-JF^QCB<$$_A*I.:Q;M7DT(Y_81B1(,,TJEYALFC>?Y^/@A6<&.5090MCF
    1132 MDPYY1$G5,5T93#[##7,ALC`'(XG]7HM(E(.*.LPGRKX&6@XL@A<0Y\1RL)3F
    1133 MXXHFP#!LD<&2I:P(SQ768C@4#N:Z\7FG2AY8S)SI9#.!\-PUV;.$#D&.6&-;
    1134 MI,-1H59GU95#\>&/)JF0N4KD8^MJ!#$PL*`P8Y(Y9H>GP9%Q<-K`OU6H%SP$
    1135 M<]/B;.3!Y..#.RQBM;$P;RCY-`Y8*9$50:SE'!.)X7."&3B:M;@HXQE(DEKV
    1136 M1+#^;,0^0MP=)GU-EM4*IQAAFU?$5639',3[S;L;R5YK;"'@O,1JEE/S_DX#
    1137 M!^&3FF!L('Q8=6+UXY@4XBH&FZ6GGBC3/F&'UY"R$F%X"C?@7-+`YR<4JE1L
    1138 M^P8L+A/7!4:OYJDX_XEWK\&FA4:PBL^!@LV(Z%/INU@NLG9(?!D8*]:=,7%`
    1139 M.J*3?5\P6E">R>R-V)J.1U"+V<(+ZUE?[Z4-#GB!.PHQ`OP;1^21SFFP($I8
    1140 MM<4)9)/NRIG&F,+JL%F`MWG(>.(&^ZUECX+A=5[)NM#3'J;GB&O"Z1#+8''T
    1141 MGO-L=C(U8XW"9*@M]K.!T(*7/$<Y8'0(7W'&0E>&!F>-$M"2.&@,6PTX$CL"
    1142 M"T7=-!QGA669A&]9J\#!6#5"6]YMI@.ZD":KQ<S$01:8M?(IF^?8#PC35IC\
    1143 MR'J6L2))"8K87I%W4Y!1X2U[AHE*S>NG*CJVO"%,@F,S\+$&,AX6&[HIUNXR
    1144 M_8#58Y^&4'"457O+6^7AL!`141@.A(XZZ+4ZPT<4>Q&'[%DKS,VF&SFE#5.R
    1145 MC$A87`?W-18=%^R`GF[9.>&8'?&P((22&"+Q_Z"-N)VP"8\B=D`"+@U40VRK
    1146 MB&+VCX&5@OTSK^4=*GFG*]FV`2-B)QVU4+JQ!2YF0$(G3AC+T3_8T:8,+R\7
    1147 M*ATS>0-FF9M`Q6%<L>'30>@'A_((E?))9*-AM="I+3@48JMDLU",#IR$V(Q,
    1148 M2P-9G>ZU=<N>*>IQ$L)&6T@G1.PO7+FJ#)._K`-:-38X&U#8\AET\*AA[P"L
    1149 MT;0\.&Z/$\FSM+?8WJ2?RK&\PS(I^9C,5IEZ%#0)S2/E>N%44Z>3(SL#XEZ#
    1150 M9K^]=GR2'7S)KI3$:V:*!\QB+V7$.F`P?*F;3SKU6)$7LSIA)>R%\)H#B;+X
    1151 MD<T2,V#*SA_:\8HYR,"LQ3F+@]S`'&0?-`R/JZ0N]E/&J>2R9[.T"E'QV(41
    1152 M.^(*H[%\0@@4?)\U2\L[AN0]-AE$Q.I).F`2F%N-$/`>=9SFXQ3KKF)6A:HA
    1153 MM0.1(*Z0#5PK6,\GFIT5_15[>O'H6G;3\,9C7*?G3=0ZWI.&Z\%*$G%"\(%T
    1154 M]3`Z/ETW8BHR((:71QNGD.PCGY`LS>(5)H[WM,ECQ,%^2MQYEM74!#]'D.-_
    1155 M>73<)=<8*W1%L+@0A@[Y5"",!4^9BM[I6.]$WXP(=]XG&5OFA)0'0O$J:N(5
    1156 MQLLIO#P0%5CC#3S66$>LY!`PQX?.XTB$K(`X;#B!5=+"FIUL@`Q7L4Q,6%$O
    1157 M.SZM(,C*/(P#]HX>8D!Y(-Q8?\,6_]ARMFB1SO/QK>!D&?Y\JB#"LC#!QG4C
    1158 M:(>G=J,$>@/^:8^E%@/CJOB/97^%PK$)(8@TQQ*=O&^6`,",NN.@'R8<%(2U
    1159 MUF*U.:R4"$'GM7,`O,("M])2*_L<5XOZ2+<LAH_'[L/#H#CH?:[C=7%Y<P/`
    1160 MW.VQY[HL:0#((9L0?X!3.M%O;.\AY5GVK8^42YF?+RCF9:\"G$WF@JS*U0@(
    1161 MWR/45+B:XP4&6+FN2Z>AJT,MR6,,Y<;QWLA>;&<G)W0PX>#8'<)@RBTX@6,4
    1162 ML3<"!_(QA!TPS*0>R4@+X(DVFP<V76)**B#00'HL9V\DQ`<+3!`DC5`1)YJ:
    1163 MY^.&(R),1!MPD6,TX._2LOTUPQ%;HADO2Y$`1]6?%L"]8L!U98;2NYM+Z(+<
    1164 M:6_Y//N^E1Z^7QS3HQ'U("('9W5<8D?T;&`X+W$N*HK'UK$-S3R-$H<*I`B*
    1165 M1GP63+7(:]@!-3[-UMG,;[#2'8M(99,E]#"?]L3E#@B%$XPQ>Z3X;'$\P72G
    1166 M8CKR&7;8)0'1ISIW!8%(2L9:M";2M%GER_@'0Z=R)GJ>7E(R4PPX84_Q'ET\
    1167 M#$\@/Y_<B>))E?$\IRAP\3+OF&2EAT;8?\5"$*5ZR8>_<*PKBH,WH<-:%R>F
    1168 ME\<$X+`<"["!<Z+?@T0'-;CE`AE^56N@N6B<,,$FB!7X..RMU65BT+6X]K)-
    1169 M;(8.@OAQCI?M<I2/]BF?59.CG3S"@RNNZWGK5AZF8/8\/YF7'9-6@A-'>0=(
    1170 M*V`8T84//#U8\"/5;CO/DU1DIL8D<:Z!#_$>L"-@[U(Y4$**"HQW-L]W>,\Q
    1171 M,-'GEM@;W@A"W&V!-P^-V&P2B!HZ/EN81B-)/!KZ["]ST"RI#4,]"/FCH?/&
    1172 MQB1^%YS'Q!Y&8<<>L9HEIV=+13H8_`V$/>+&Y;?CHZ(Z6;"%[OF*D`(F+(:Y
    1173 M<")+LF1#GC$(D((#:PB&"55R(1[%JGPV*:]$["4Q(OBPAB5*'ARE@I663"%!
    1174 M9Q-/K*[8]8MG2/AR_'0G1WNRHP,1JS'C'@?$Y4*3Z.S88%:@SL(E+\%'LX.T
    1175 M,_(Q.SI)7R,?(B^!O6ASI5P%[`W(QW=UW"H^9KRH,@&JJ<4"8]053<7+$/^V
    1176 M%T,#1Q@,DXXA,@,3_(LXY)6;AF`D''0,^2`MLCE[)!:)H&K+HQN%1TK\)RFK
    1177 ME\;):$;$B62^AV,*+FV.CT&,4*_D1:@T>>-I'5//F6/$6;O\'KB4'Y$=[<43
    1178 M%#E$@&Z2PEP/PS81T8L.'S.!(F72O?J&:`,YQIEL/%:O$FFR$IN4F`#DG9=W
    1179 MO-B0&-#-Y359T'OZ&$[SM;^[^(=_N-A7_RZ^7GWY>O'IQXNO[W_YUZLO>O1R
    1180 M_*\OQ7UW\>.GSQ=O/[S3O_WPG][I[K<?+B^_Z5_[[R[^=_\C?'=Q4<I^>_T7
    1181 MO;_YRX=OAK.!TW<7_^>->J/?F#?VC7OCWX0W\4UZH[HW2KU1^HTR;Y1]H]P;
    1182 MY=^H\$;%-RJ5S*'[W:@=:MR.H*IV!%VWXV\?KZ[__O[CEP^?/KZ]^;9OUC=#
    1183 MPX)%PPA6?_R$PXL__O4*,/K\X>-?+SY>?7_UY<O[SS>[B\]77W_Y_/'BU_<_
    1184 M_7)U\>'+Q7_[XT5?\'?4H;OE=W?,[^^8/]PQ?[QC_G3'_(1$=RQ`W;4`W>.3
    1185 MZW%5`5>_?/B/J[>___TW>S7&V9IVPHAV?O_[/WWX<X6@F7(Z$`?I1V^,>N,2
    1186 MZ,6]"99IQ8!6TAM-!`5:(F+R]DT$<5E*:^P;V[W1YHT!E6G"5MU1(>&-`\%%
    1187 M(C=-?Y'*IX&DL@+RTQW=:M`D5:9-1^51-8%2D@;_AO3X-SASB/+%-\2B*77`
    1188 M:@5J7;)OB!E01HWE*50K#DPIG8E$R:6?[Q5U,CC?OU,SG@6V]?Z''SY\)2!_
    1189 M^<T*QZJ85B0&<'7]_N>__W1%@_;ETT^_(/=?/[__^]]^BU'^^^=/WT]?7/SX
    1190 M^=//%S]]^+>+]S_1J'[ZZ>8[^O'F'__G?_[#?__G?_S-FPM!A\_ONMW;Z]W-
    1191 M-[N?OOR6'B+AQ8_JW5L2&-?F&V(N]MK=[*_#\%*_XW?#`_..6/^UQH-)(][^
    1192 MJ+[]47_[(TY,5[MNA[]RX?Y-M].CA[C>X`QV,TG]1K[LKB[FC92C=JY*^V:H
    1193 M8*^G3R797DW3RB5M>3-N$-JBIBFY='/QIA\A\[M^A+Y^^OK^IY]_^>GKA[__
    1194 M].%[&NBK+\,H-5X^SD@U&E*/UI_4GU'S17/4Z'ESX#A]8^PX?6/X\O/9"/;I
    1195 MIX/8OYB.8Y5C-)2Y![/1G*4O`_HG+?VV5(+F=)YRR)W2.T]=X%NS"_E6^QW]
    1196 MBE69XSN49/@N4@X_O*7*S+2RH=EU!\9=6:I(.C&_ZRHTM0.:`MG>?_SAZC-0
    1197 MX^.GGS^\_VE`T\;+QT'3GSZ0AO>?__D?_^>[1I-JA+VX^.'J1TZ)9KS##>$P
    1198 MGG^Y^LHM*^_P#(7]^/[[KY\^?QEPO7S3O_W7M^J;O_AOO[[5W_S%T!=:?JDX
    1199 ME1Y2J1Y?9GF5ELQ>,MM99M4/_RROSA6K7'-L9;8+F:WDU9+5-!OM%O)&R6LE
    1200 MKV]4>]&/_F_?2!Y3&ALEES+Y>0:`RA`@0UJ>=_FYR\_54J<%CCEY3NTNFR.S
    1201 MV//_N/KZ_E]__O3QTP^$O=SFO_A`'R[BP].'#9=?_Z([^E"*/LA4'LC%#>3R
    1202 MY>KG#W_]_.F7OP]$TC^Z)6E0.?_T^?/5#[]\_^'?J(;_\O[+%:-K+O7MVVM2
    1203 M[6N2^::)JW8R2)Y_FV'00H^E5S___>L-TU2/?*0X24L^7GS]&ZF!58.^IP;M
    1204 M+CY\_/7]YP_O/W[]\O8;ZM\7TBC?__3]+S^])^/KXOW%SQ\^?OB9N`-1&>F8
    1205 M4M9?KSY>?7X/XF+C[&\5]+ZC%%6)\RY2QZBUOWT#5DDMY_+^/U,8"9LH/.5;
    1206 M^KZ4;[O7UQP'2Z5=7GN!60W3']LPU,2:]02.AEI@6@1.#2-),(4ZI$"8@I[X
    1207 M.EY4T-YIM;,5BOD!Q0BIKC_\_.'KS<_OB6-=#X@V>?&(G+AOR;M)F\:L^!^H
    1208 MY?_RMZI'%[GE_QVO4#JU\.O;_C4!E_,!9/S9'?OY1EC;[8JH,A]?Q)OIHV.*
    1209 M6,B\K8A9YF-:L9!Y/\_0*.+-0M*E3W6'S...K/;Y4!%-S!Q,E@LQG/ZX@*.Z
    1210 MX.C>K4-GJ?M5V_=Z<^;1>%6P(&UU<RN6!MO,,B\-=J,_:DM'UL>K1O8C,L\R
    1211 MM(HX$E/&'3F6%XU@<2L<+;`8</3FXLO[KQ^^_'AS\<=W^Z^?WW_\\O=/7Z[>
    1212 M_O=OOAUST>K=B*%^VV"OKZA;M>(5=6>P.!'JDHKW_8<?KCY^?U4$?]8#__'C
    1213 MYP__ZQ=2''_X\)ZX[<\+K-;TZL"Q3:DA>#IU0!^9N3'`Y@Z9<Q'VR,R-5K@C
    1214 M,S>PL]&*1U`'](8^'RC"9'S]IQ\O_@#W-_!SP-:)C^[]QQ\N_N4/DS3L0\NE
    1215 M3-(7NX<4<3*5/A-2[_#@X\7%'][]]V__Y0_?Y6S__RL\_GSUXZ?/5X-AQ7G?
    1216 M<O'?3$K^[N*/GSC!^Z^YB*\0%7][_RL\CQ?_1G7^].&O?_M*VOO5]=>KCS]<
    1217 M_?!=T=[_\/_]YW]Y)T__=>+Z6W4',C$2A5+/"0CO4`Q\*VR;_0LRUFVD)@ZI
    1218 M<V*-Q$C]AW%?<@_^R]^NOO^_?W/QAST@\Z[#XS_L:^E%CW_[9N2RO>77Q;A&
    1219 MLD2O/HM,_<.^5"U-_]?R;BQ3D>Q43>EMP##8@-__[?UGLNDT`/KEZG\--N#D
    1220 MQ6$;<)+A+77KUZOOW^JX\V1;^UT(&%?Z2?_ELCMQ1`Z7VE66:AQ:F<O4N8ZA
    1221 ME9,7AULIK;KX]1U7!CR;%/'V5[1R9ZJTZITMK6MFP"0,W`=A:'N:0WAP4LR!
    1222 M7#DP-L-YR+,,:OII7;=+:@!KZN9-H_Q7G^>MXL='&_\_?.FM]W_ZX__OW=SY
    1223 M\NW;:[._T?0]]\;4E/_]IX]?WW__]1V5\B?[Y^Q<Y7)S`_F-PIL=[G1_9TKJ
    1224 M7COX"M+ZGHVNS$Z)`>>"]9^_ZU6"_M%8'Q`9%-],!1([C/!&?O0R@NK]S\3`
    1225 M/WQ%-<1EF<G^</'^R\5WWPV5C>#\-G=WEY]^<Y<6](.MYH--]?SP"SS1\P'O
    1226 M7VW'PCY+CX0[\&\!@=K_CT$>O=&KV<:XJX**0R_TO!?B$9YV0)Q(QR+LWW];
    1227 M,X8(;YNR.\5^*GH&>+Q_]R=,BPA696]@7>G;7W?O><!^_.V;_;4*ES@29,];
    1228 M6E^J<(WEX/X:N_U@)T6$Z=`7]J/%#WZ%Z$W*@UB?:\6WZN82^;'8%">V8\=*
    1229 M^L2F0]<<8'2-B+=XS9MS7GN^1U22O<9:L)LX]GO^^(T0RF][FD#K"=VN/A-!
    1230 M??@>$_&?/EY14F@2/W[W9H#",`SUG*-,0%?SC#DBYFZNPHDW4*_Y#NNYQ3P=
    1231 M_B,XL:X?:."2'27IW88V#5V;Q_H<\Z\OQGUW\?7+UW_]\O7]UU^^O*76_+_>
    1232 *_#^1,3_?NE\&````
     1begin 644 alexpoly.res.gz
     2M'XL(",G(]E<``V%L97AP;VQY+G)E<P#M_6UO)#F2)HI^SU\A'-P/6:6(&N<[
     3MV;W9P-[=:>P`TXW%W;GW+M#H'N14J;H3IRJS-S.K1IK%_O=CCQGI3G>G>WA(
     4M(2GTDIX*A=Q)(VFT=QKI_^-?_NL__?'BXD+][N(?_N'B]Q]^NOK-Q?N?KJ[_
     5M_NFGF^^^?OGZYG_D`OH[%/B7JR]?OUS\^.ES7^CBIP__UA<RWUW\\S_]OR_^
     6M+ZKX'=W_OW[;/[&_NZ";__KAXX>O;[_Y[1O\OOC=[X:F/E[]^W=?OKX?VG._
     7M$U!]B3$\_[N+SQ\^_O7B\[MN]_9Z=_/-[H<OP].`T9SJ7P\U,@HN_NO5C]1]
     8M:OOJ^OW/?__IZLMW?8GTW3VTJSII]Q]S<Q>??KP`1CY^^OG#^Y^^],74"1OO
     9M@=*T__3AR]>+'WOD*O.[BQ__I/Y\\>Y:[V_T<-_BON;[ES>7]1.')X:>O,4C
     10M\\VW\OOR^D9_,Y3R*&6IU/Y:!_IQ>^6NM;W9F^Y:FQM]27]U-V:OC+M6Z<9>
     11MFFL5;ZA4=ZW<C=\G^FUOPB7^[F[2WERG&]7MW;6[4=2<<D-3`4TY=-7M;Y0:
     12M'D0\\'AP$R_I_[6]\9?VVM"G)CCNTE][:ME>1W2?FM'T/=&GOE;JANY4HTZ`
     13M%7C4?G]CAY'J#D\BGKQ]>T,CO;P&3O!M3]^^J4HJE$Q<\CKL-76'"M_8O;IQ
     14MP&+86[YER[VJJN9IZOY,56\8[K?R>W]MZV(RFZHOAL<H27VZ')?D^54:)=]B
     15MZK_Y"Q5"-][JZL^J`D^[,JB``H![?7DS@LESKNR?:<[3Y77<^^MP0_/JJ2L8
     16MK*%)-(3O&S]4X;E3#E6TNB22V$?0`6&"J$#C#T-SXS$YEFX29=!$#M5YAI5'
     17M=45-JKA7-'?AAIKF^I:IR%P2[2D-K/+,NKWN:)X];OL;]-,0;1%1#?.M>;Y5
     18M^#/1OT;?]LJ"8"\#NJ?WH4,S9J\5&J*N:33D+@TWY/?<3MC3GXD(CTIY4&]`
     19M0Z!>VS=DF'Q4Y"&`*)2G+]Q#)6Q"\/1>V,#B-YB%?GEJQ1$\HFS5#>"8QE2B
     20M:6+$?,N#^)9;&&;*,#GIKDPF,['9"QD2$P4A1V(F?%&*OIEJH@V3F68R(\(R
     21MUYJH'1.K.@%$-VB:ZAHB3C2/4H'7]N"Z/=B0\%&A@\E,$YFA_6&F#=.6)MH"
     22M<F[40$*&24@3"4&.?0NA-3QC^M`>SS2>F>H9S[`.>&;QS`W/+$^*CA5,KOQM
     23MHR@C7"<NR@]5_901;3H\Y<D(U3/&HE']L\BUJ^Y;QIHAK!%/$IIO(!H8NT,1
     24MD<9@RVOB6L+^7LLO([_LS3`+EI%H[%IA_')U'4:O<:@3A%*(##41GF9^O"1Q
     25M>,WTHIE>AHJ,>\.\J8E1"A^!4R!C*T;R@)@9B=A,04`71CK,098GT@1N*-%/
     26M)-C0-%1'0Z8#E(?T$2$`6-`T@=7!3>@!.9KU_COI7S:(_OZOZN+=!4O0H2#-
     27M:GZHZ2$5^8N^N+P@;`Q%3%_$<!$M1?ZBNHMOJ<)0T/8%+1<TN:#F@H-$<JXO
     28MZ+B@S04M%ZQZYZMAA.^`&R+D49LR-0EWJP88C[;#W0&:9U:P"G<'G'NF>JMQ
     29M=]#$GJG=&FX-G1_URS.]6\OPOQW5LT./O4./+>B-Z`K4!2H3@KMDK=-K"L64
     30M!(."1+$6E0%I1(*8!'+$9#M1'41&I(HB@TJ0\P.9>C%46$1,Y.6W++&^97'T
     31M+0N?H19SA0W@BB(OB3IO5*@@,Y9M')4A(:M-549PGNHRUD2(8F,K(R/P++BN
     32MT5XOJ8?":D!GZ$V^?_WP^?,[8OL=:>U=ME-VQ4C853;`KK8`=E1#HPI_V!UK
     33MB1WW82?M[K)^V$%*[B`@=Q"0.PBU'<O$'<O$'>-WQ_C=,7YWC-\=XW?'^-VQ
     34MP-@Q-^^8;G=,ISNFRQW3X8[I;M>FCMUIJ&/78W?7S]F.@%H,&$,>YFC`NJFP
     35M;D_I.BS:\\&Q+]&[,%__=G7QX>.O[S]_>/_Q*WL6N//^WS[]>C5W;X)_F#Z&
     36M3("___V`J@B/[K_W7L]OV`41#Z0O0][7[W^/VZC]]L/'KS^_YU^_7GW_MMLI
     37MNKIO=GI'DU4*X(GZ9M=_J^R/V,U;).%%VHO(IF\S*FY3M]O\!HU.6ZO;T/,V
     38M8,?82Z9.8BIVDAS9OWT5PPV:A4%:NEJ#U#O3#Q/?ZT[8>2=(XI*_5%RGB4,U
     39M];<6W+*Y`P>_KF_5\3CL=L2YG:;_8=1U/^\ZJ0%QZOI"@5MRFUMR.S6>I0;M
     40MD?`G$T,<0[B*XA:*BYA]QL1^F?B)@W_85;0C].HW=RSNE-XINU.N[EYJ$"HL
     41M&^K/=4\V2>@T+)"-H>M(LDD-VB7%Q8X;V?+7=E^U+D0;CVQ]@3-3@V!)'9*S
     42M11+97;-`9F$.U\]?<TC`T$3`!@U$F!Y309I*V1ZB$&-:D1PL/:IOAG]SOXGG
     43MEOM=OMF=WX7)7_68&I0,W[T8SFPSL_/?<U`2ND:I9J\=7<?.:4O**N[%-1S4
     44ML+^.?=DL;9?$[?$DI;H&)2/>0,U[%H4TC1:>K29NNQ1'T):@@4,`074]+"%X
     45MM2"9T:^%[KFJ>V[4O0;%([H!<PC,AFC!3>Q+"\VK)4FMI0OE]S=`V&$R4J,.
     46M-1@!L10.)@S!DW%8Y3KUU87JU789['=QET8]:)&M@VS,D9<<AI&@3!6BB3=L
     47M<9'EU8/*Y+Q=3L>=)O2-,=(B8,AJI4O()@=PAG#.*,HS"0)5X2'2;7TKF?2W
     48M2V[(;9+>(]RI%K4']-46G[6XL-FCG42*IH&D29RIBD"1(]VWFOEB01.T^FX)
     49MR3NM1WUOL0*D/\=;$6'*X:8<?)J$I*IH50E?A1YTYIL%9='J(,EETMEAU,$6
     50M:Z0_]X\SZ2])_$3R.1%S>KZ:S%FPLIM.\6ZM6PU^T=W0+>$!O232+4M5`QLO
     51M?V,I._I>E?D&.F#2;<+>(']=I9)JN1Q@`94_S%@*J@:+(:YW+1'RO8AH^F`C
     52MUETR-2#>ERZ9`1&+(O?O6F(RO;A4PE-ZS7J?:F&5AYXU,0U9OBT,O2E.A^&'
     53MMI#5+3]`9\W,LN(ZLF&',&5?*;L%V_T"ZGLWMCN5;C!9'^;L"PF[Z`4UTV@I
     54M[.*HE0:G5$'3OIAPC#[*8%=^U%*+^&&NZYL]9"UI3]N7S9RPH`TFI'`K[:E;
     55MA.SA?2%">2G6%I828,\2,3OVR%@K&+;U$0VXYGA@IG3-SD"XK&8G4_6"INB'
     56M`<JU!X:Q8CB9%HV&7JR83(U+UO^B9UQ<KD%>C"G4M"@T#NUFVERR^]7HFO^M
     57MJ[]TX[FM2MA1^6Q2!3#U0:*8CG(9Y8MX:/'0H&U,YITE;;-DBXJY51IMF#NF
     58MP5%8.=C#WK%9W.)[MGD0K8)HSFLI1+>!A'..<8MQAE_9\KEDP^<2D?#>?##"
     59MEV9)0]5:J$W02SAM.K?*-)C4J`&SPE]F26OH_AI_1R?Q392G?#--K5%UJW8+
     60M6M\7Y(QM,&>U0,,K7UBDZ<L+MYHES^6X.):RK1@3!YE@CID;6)6PS5QW#5EG
     61M!QEL<ZAIR8-IN<7]MXUN\5*G&PR%1:AK#BF1@(Z.EY.T=NP8ZB`KX&3LNAZ&
     62M<)U9T%B+%L7"]Z,MBJ6AM7C6]11M,X,M*3X]DH4M!AM'&LS(Q!N++=MB+K_)
     63M`YDLO4U6YJI%N[**-Y!W9MDCG"<QM4<:S[68"LY3R(MT><6N+."5!;VRP"?+
     64M?=<Z8@&P!YHY;[MO%'9ZY-.Y%K-Q5(Q,A+Y0YJOM'LY$W;L6=R28I)<E6`1S
     65MI2^>&6%!_32-T7%X2KD&T6+9KX^!UO'/=NA32[8,T4L/5$C=+NB2K0%0Y1ID
     66M;`<=X83@[(*.:!&<WVFBN;@SI!U&'.,;9&=UWY07`K+;S7ZC=S;N''F9Y&SJ
     67MG1_-LV]0DS5#:T)'=FTMP+(3:Q><V`7]NQ2E5+ZU5&"'#N68_I+$C72U--<<
     68M">M&@6]1XR!"?::K)1&Z%)D<"TYJ>&9O^1:E^:'A3&EKUKY8(-`ML=<ML9?G
     69M.NL=Q!_DNT0AY'N.1="OMN\XN.^QMF[)"UL.4LS"&(VH16A1_;"0W:]\]N4S
     70M&QR[VE"'(]"/<2=:S!#K3LBB:U\^<\>QBPZC3IB)V@DM!DA5)ZJ5^+Y.YHHE
     71MZW]IR:[N",#N&&K=F=;J5S>?EK+:W]?+"V*WM^'G$S6*'-5];'",4SF!JF2#
     72MUME1*J_BNO5`4&\(M5SFJ4.WYKK%(8-'Q5-FT+:6ME7D+.I_Z%-Y=Q???[YZ
     73M__7JAXL?/W_Z63(N^K+FWGO#.0<7_^73QR\??KCZS$O_?__\Z8=?OO^*3(#W
     74M/_TDMX9<XXL/'Z63W_4P)*&@GF'.%+M`JB=]EO36BR&[E+_F14)DC/+?5MR@
     75M?`,I)`(B_T(M23>\R.1]4<CZHD\W)$"R.H]O][-\G9OG9F^]`(RZZTLT#'WS
     76M$@H/]Q0+'`SH/E8?&/"MEP90NQ5MS300F00X6KEM`,<[+X![&\^":3N3_]@X
     77MK^GG&..91^@O(T9(=2)&B/)$Z>;2>29Q\N*IOE*7&)(&<7:`DJ@6@:'GCJF`
     78MH&06,(R)"'"$"LOE`W4&Y3S*H7B@7QH+YYJGU5Q:*PR#Z8H<_T00B3CE4GG"
     79M&Y7$;T4EF<4X9(H!$GYHR#IGN!`VM*##<`4B<J)A#1K1D9JD24_4$1`+E55$
     80MK#19X9)$*0^.V@SH-G7,71K!$S&?\=QG34TDQ12JS:6)S$14)78=#U5W^6NX
     81MT8IFUC,-4*W(0H+J*&6)5V@4B@C7=Q@1H3!=!M/Q\`&!$`)8BKH=">4T/IHA
     82M;3O-V%#461^HMX02`F)BAI<NE8E,,UUI)?"<!DMXUS2OCKX;`'$`J#H?!3@!
     83M5)%E$L'C_IN.Z5V:3"`%0U4)2@1$E;AF`$1K\=4S0/35`1RCRXCTX#$:K-$0
     84MZCKJE5$,V^FNXW;,94H836+09!-S*TYFQ)#HR5U"9IQ*_-4R4>IHI15"E%6`
     85MK`'9V*"Y$>3<:V["\H0;R"^>/H-89>H`'P%+9;WEIH!"FSS:`E5C(M"6HAY8
     86M;DDS)5GP*:C$D@0DB(E$;P>^`RZH%:)L((A:`:M(*P0Z!(]&"')N0H$^+8*D
     87M($,+^4D@R.9#>GV,W!`1(6!12_[2`$_44B#*PBA8"'F+AA(I"5"W):&/XAY)
     88MQRB-C,-$$V.Q@$9^-X,GY%HTA`4&1VQ'T&G2>!20(3:!)RT)1F"50"*!60,H
     89M1((%4.+,CH$2*,*--<S5K@/KVW0C`XH8&<`'=,("`/5!H[Y#:056=R31B;)L
     90M$OZVD?G;:6)IIZ#!'$LJ9XK4SMDKG'5Y';*NXL1)2:(L&94YP7*2=IF3,>O\
     91M3-%XQ;J]Z"U_^M;G6^*/ABT>O1B7:['54UVGAJ8Y4CV^J[,97%]J=D=/ZI5H
     92M^!065E(E,BZA`REA<W2\+"N;42V3H9VF7[JQSG,[6#7>IO5:\*?7&MY.`ZN&
     93M)IC<"LLV8,FJ1IF=:4TS@RXS:_.L3V&9#*T%R^;[\Q;TY(G.O35]OMS=^R70
     94M6K`"74O]\HOS,+B2Q]*J:?)0U[=I\F_I1<U#IME3E4=8M];FA:5Z:_TR.Y77
     95MNJ;]XK`77]/96(-ELD1:'F-K_I;E1.$%/VIY"?=VI5\BD88(6ACUR\WZ=0A6
     96M'8&[*RR.X.U*-&\=UCJ^?,_UA_$UABD\%/*=<8DZ*CE<-0]MAQ6;&G#,CX?P
     97M!:HLN!_H[3;X,GV/Y?Y8+VSC;=2U31XJP79[%`_Y!7XL>6?'P`J+O"UQ]]/`
     98MXCGM3@:,0+6`':(*QY>4<".JZ#9V+.RV2.FV!3=HM>.T;9?[>@I8+G/#%)8=
     99MT?-VBV)JP=7<77AU7,M/Y,'06PG*$L7%X_+O3#.I8BG!8O[-5"7K`/4HF7&<
     100M_[B2!.3J6HVUL79NSBW668;%MLV+.&4]?"BJ4Q.1XQ6MQB@F*YT]*A<7Y!;6
     101MR-J+`;)\TG>LHZ95-<+FHD8,53P^3F++%[^Y>,\Q:/'A+O[]P]>_??KE*T>I
     102M?WJ/+8N??OE<QZM?@]&OP>C78/1K,/HU&/T:C'X-1K\&H^\G&-W;*SEUX5#"
     103M[%VN4T&Y>S3Y%%'D4T2/ZSC(;6'4>)F6;\%=NVX;)9Z6N$UT>%KB-E'A.8SC
     104MH\%S&,='@5O].#;Z.]2]6]3WE-'>.AIU3)1WK1_'1'=/$=5MXW3@N2W1W%-$
     105M<4\1O3U%U/80/HZ)UM:T?DR4]C@8[>CL-GP<CLH>PL>6:.PIHK"GB+Z>(NIZ
     106MDFCK2:*LIXBNWC&J>O'-SM`4';4[Z#4\^)3#@U5\+U7YMHGS;2?)P?;/[SC#
     107M%)MFO\W?0O\M]M_2D#*<M-C=2_L.=*]/BNSIL@2Q[8UJ1V*P'IZIAG=?1WKU
     108M#;AQ-C&2=K__V_O/[[__>O69QO/A^PN<G?SQZN/7+WV=^SK#JV^@G-[UZZ\#
     109M5N+OZ$^<S%4P3!Q!6H3H5KL*>8F+Z;X8E3%,9:KK^F(:Q\10,3,4VYGJJ>*G
     110MMG^*'7##4\U/7?]49G!X;OBY[Y\[XK/AJ>6GH7_JF4M35<)QB=B7"&#-X;'G
     111MQZE_S$P'[K)5H2#8ZOI2*=/C4"0CM,(HP7`[JZHR@DTUH--`@C@@LRJF!)O*
     112M5*`@?`@>S8\E!O9!5\4%O<I60Z`R(B"&4KIG`ZWN*X^];\#.V>#G7W[Z^N'O
     113M/WWX_L/7FXLO5__KEZN/WU]]Z6NX^^Z2STSP[P-*:%;_O6(!5HX5QB(>5W.5
     114M=6U=)*&(J4@W*^&A"`ZK^/>*]EW1PE41A2*N(F%?&?9U08V"OJ+D,%AG53&#
     115M8J$B!UM=V:"KBEL4CQ5II]I:J`HZ%$PU@<M_L4]ZNZ.JX1G#74WO\E^[W>OU
     116M<%=K;H3ZU4C(N-E_[<K_[LZ]..::4S6S8R4[8<W71#TNS9Q9BU"R_D:7V71-
     117MP!KFYDK4DCX<0/H#P"8S8)COU<#XQD_Z.+T.-;#U6G=57Z_7Z]E=%=NQ%E6#
     118M&M7J2"$P>!3:R(:]??7OXNO5%]ZM]_GJRZ>??OGZX=/'OWY^__>__694*O_K
     119MX9#],RF/L_]QW+\,@'[M$=MY@X^]'CJ`UZ[,*FI4W*N^$,EZ-G[^V\>K=S]<
     120M_7KUTZ>_O\61J=6@XAP.E>;V$9?J^NN-!-ZJ&^B?J4J]D5]V?`.E7"[U9JCM
     121MQS=0"E&+J@1N[M4PXM0:L?%_;O2UT=NJOUU?>M;C_I9B[3FZA9N^'DAY'J9C
     122M0T-Q.IC)<'`8S70X<N1%GONN<;U1LU'U7925B<8#/+*3CE3==7/,#:-5K0==
     123MGJO&@RZ/O/$`C](8[R.,C;JEQL_4')DME))B%=Z^^/4==.KPI@F-PW>FZ/[U
     124M2,J9(4,M4<X,R5V/RP86*XP7_*U2CN%A_OS^Z\4?%+$\?)6\BWX8KAU0H=Z1
     125M8SL\<<,3_8Z=[N&9S_*"GG[]]/G+NU_5[E<]/"[BY)_5NS_0$RDT/&Z(DG]6
     126M,QQ/\%OAMF*L_8R$[)COA#]'R*RD(UXK45"DR5&#K];EB&O_N^\XCK#)*/E%
     127MO>.`X?!LH*E?-#WCL-SP5`]/S;LHD<'AJ9DCA*-;?]`2Y?I%[7[1NU_D8`.U
     128M&XB@?34HLYM46I0#JY0[+9[[,LCM!2ACREXLHG9C>=&$(C-XJ`RNJ<!J"(VI
     129MZ&I`&5'98AE<9C?C\3DH.YZ"=J&&&IQ?_E"1IJIL#L_T#"$'%;7ME:^?OK[_
     130MJ0K3?+CZ<O'^XP\X@.#ZP\\?OMX0&WW^<+UJQ^!DHP:<MS@`G6B;+)K?O,&[
     131M[?I9PE\#.<NSLK8NS_H)&OX4"XCD'0.#\X??D'SXC?A)*9M_4V$S+ES@U^WT
     132MA<M@2`RV!O.WCU?7?W__\0LQ\UL<L0ZN):3^\1-BO1__>L7&'][E\/'J^ZLO
     133M7]Y_OMD1_W_]Y?/'BU_?__3+U<6'+Q?_[8\7/9#O*KSTU,-_Z1&6CL1+*3K%
     134M3Q,O4WRLXB6T\8)#WT>3K';#1'>C@>V;4B!31H/]2U<:.CE7ZD9&J!K5P372
     135MT-43-3;Q1G6$>18>#4#'X`8F5\TZ#-2.IPDQC+KL]+O:27Y_F4[%__N_3/F+
     136M8R&\1#2%4&J9H1P7K<J-B>%0EV0N=//[E"K;<-3"]XK0XA*A]6_IF@B5134U
     137M$C/=K&3-8$OUA99MLXUZA'.]-![U7"E-B:O!'W-*,LT!U$!L_ZU-O=T*X9>:
     138MO;G:?%[9KHWG94+B(B?TPZW$%NPN_*9:0IZJ)VCZ93+9N_+-D:8<*%4JZJY4
     139MM,,WZ0/5BIE7L-*3-0;Q\0!DX(/2%=W_[D:_U>3W@"@[^:T._*YH/BW2_.Q-
     140M@'-UVJ;<97NQ5KGSJ1M/O&W"J"G;-0A@//%^-^7`*>5/#<2Y1(X-PA^72)7>
     141MJ>704$)U!RE_OU9`GF5%-54G=<%PF/9-I0LL"^E,98IS$IQ0J\;"JY$GEE1Y
     142M*`P0R7.SA0>43MC2LTM22P4D$(#0709)'!_IQ^6_'3&+UGR/N:,CFP/W<JM3
     143M!(Q@^.I)I3OJ(2`KR4V^`4.Z\6VP.[J5;_/^C+^IND^9I7S7>X$_#XZRK%T-
     144MWI^OH@;F':&Q>C2X=[_:=V/G#F_$$V=8O_M9B3_WJ]G]6BT?XY#&%DO_LYYI
     145MKQ:5K7/PNN8:T-+BWC'OKJF<AB.URK?K7+O,L\O\IHJ_WT96#@ZM*:J]7GR<
     146MV5D-G)@*"?-L"^'3)&1+FK1O-J1(+-JBAS)3(0='-%<@_@_"I-TNB@Y)W2XE
     147M^096G2J.BI.&+BS8YL?^KKECJG:\&R(EIH^46"(+6!'Y]T#1OF>(_U#OD`H1
     148M23P-C\/P6+^#K@;"AL=Q>&S>B5(W0S#%+VC`4<CD/]3N/_3N/R1DLL4";$]Y
     149M37'+.K)=JZY[*-C2OFJK<CV>TZY;RKB-=>9U<2W%;;;470KH;*D[U^7'U!W+
     150MC&/K3FR`8RM7\F9[Y8D%<IC<ENV&!0=Z6V5<+1]E:]UA]6.][E*)L/ALO5VI
     151MM40QA^J*:=:FF,-UI7X[+GDQ];R6KKF(V-:P-#X5$=OKSM7[DL&Q5+N>\&/:
     152ME6N8\&/KRH2O>;"':J=;UA5R49/(Q)$`:M,>2M+NBAT>6>=)QY"V:XOQ$.TN
     153MD=LI3Y*J_]#5'XK**;I3C'`=R$DF"T-GA]=X'/<`S9H]!BIGJ:[M<IM.[QS5
     154ML1F>)RO&D[/@:J.^[U#JF_5(DHY#LP1&)]\WB^1$2[Y':08@`W73VRE8FW*Z
     155M<K:3J('4#UKA8(+BQ'.L*W+^X_AOL<`T8Q6N479AX"91IZU+&;L=-Q]\Y=)4
     156M\>!Z6@(1V_"MFWTKG5<G^=95WTSCVV"NJL:W&HK;^&V(_]:QNC77"0>-LW?S
     157M+W_H[3.\FOK'3Y\OD)Q]\>&=^NV'__3.Z=]^N+S\IB^BO[OXW_T?YCN"^R]_
     158M^-.'/[]KV76__ST]&;PEG,Z=BP_W`NY-%B+><AE)DBCETG<7_V<2@)9O?:1\
     159M*4I>X7,>%1\_'%F;^+8?7`]NI_(C]F:Q$VIHIUL%E=O;JZ'30P^'[@QM#H^[
     160M9HQH:N^6H9J)F%9Y*V&MT_=C$IRB<VDQ!KFJBVA>6I39@/X9YD8WJGL%3G]K
     161M&$.%\_[&=!*GR-O/L;?7,_3MS2;\S2CAX*CT;C8J,Q^5G8_*7JQ$#0>YTS(6
     162MV@'G$F:>*_AV<+G*G1DAH6L&DOL,FID.5B-W7;8#68<=#.1R*T<R'4YG)-=H
     163MX!57LI7[?9XKX9<9]I<H:T06LR<S,FO<;I!IGJX&M8[KS!&#!PND.^KI],$@
     164M'!?F>;\TT1->J&:HM#&=ZEQC/M?\8'&R&SRR<:[T['Y!HIG=STBT[=O[P=V>
     165MSY5?G*NP-%?QHK'Z6\_(T/4:9:9!2Z/L@PKCKC%G):`WF!5RMQ6O'K.:D^P6
     166MQ,*,0?3+U3PVRC9?X:_FC/7S,B?`*6/U=[LY]^Q+.&\T[MYC7N"<"=^TUYGW
     167MOCD;H]*5^&\Q1D-1C&Y/9Z3)$NL,L8Y<W;HYXH0Q<NW\;C>PP1RYOHW<L*QY
     168MIO;(@.])8FD/=4[HH_324>M^=J_/G%DE=-X))JOD\):(XSI?47JL=Q[<AM*7
     169M=4534RSIB04EL:PB#BB(F7U3ST;#$IK0?ST?#?E?E9[.R"D)?2[U9Y;2'+=V
     170M<K=!YS5NCZ'S,84/M/VH:4YSBIW@<TJE$_JL_EPRER?$5)'1H9$W9WVQ?WK:
     171M/S/MGVGIV:)AZ\X^>I;5IFEI</VA69EZ+/OIN$\X*]VM)J7MD;QFB[UFBXWC
     172ML)-LL;4E]$7?H'JTM*RW'ZACX=&"D=6U'K:5<YM:EA5]33?-1XM^87E8201W
     173M:YYK(RPWLL9T^R&5?-$PF`]\%%YI\MW2HPILF_$6/,X"=LWKK(CAOJBKY;?V
     174M4]EV7:?63).ZYBYL-:G32-*8NFP#X@!WR<@?&T`#5=0+YX,0L#,*5]FO'$_B
     175MOC6OQX0C8\[LJQK;'I;<')YLDLE@O#1M_8:1O6#F3W&P8HX-M6>LML!B36^U
     176M$=A<GHU%%EK%B=YUDYY4!#_"B6WAQ+5PTB3.,6'61/EJF3^B95X3YA"0KOLR
     177MCX"IW5($;$$]F`K@H!%L0R&HYH07J\?EWZJ;B!.;%]_B3JV0PD`2W>AW/;+Q
     178M[Q6CIZF0\F1O#ZQ5M#0J.O#U[.:=PFIMJZ!A#RQ:`HN3?&YAM8R49E2M&[%+
     179MC5JS:Z+6KGNUJJ*<_=C9Z^I\R&QOF+&?,3BVNFJ[\6WL"PQR31VL=BM7MS>J
     180M1FA:=77M061,:>3VKBZ#TM/NZ>EHQS!:E&XFHQ#A-#><W>2.^']3ZAX'-_D8
     181M0I]S'UQ7Q37+R9AK4<U5U3V;S.WVS`!@PL-C(5(O1"T:-(T`O*"P&96<^0@+
     182M$<DU";&*%3V]M]VBV?>K3C.L^&7=.=>>XZ;6EW.7J*R;W%W:(33?%U2H?LMR
     183MKM`FTI6P;R=JWJF#+3IU^#V.CCJ^Y5+NH@\_I>4%S=BFWMG])6JOH,UQ<D!U
     184M]L*M'<%OQO`S71?W;X$+YI/<7+*:+5K5TWSZE=Q%AWBJ9Q<T;9NEVE,U7<@=
     185MIFK;0F[;KV_EF!?6K;L_QJA=H,)Q4F>;*9?8<CZ&DHM=[JOJ26I.Y91IY0Q5
     186MI-\%[$C"-B3>>Q0=[S&J\C#T[&55:]R[2!1MI3,>]@)WK_'W5&--GC2UV=0*
     187M;CQ9#<U-6'V>M-%4<V,*VH?1U(S(MR4)\@PNQ]P6(VZ+\J`A$=3TT0HAK43:
     188M-I#`=!V@F@&S]&`_/A)G2@*N_:02$6T2".TG(B<:6,N/TKH(618B;3&R+DB6
     189M1<FR,%D6)\L"I35:-<G+5J-G*UG7$XG#QP);O;-F%ZF7V/P8-.]>Q"Y&[&:L
     190MI(YMO))@7>ZLD-V:[%F1/FOR9TT"K<F@-2FT)H>:SXY;0&C)J15)5<FJ.)G6
     191M%6FU(J]6)-:*S%J16FUB711I#[*`T!!M*\)M3;RM";@U$;<FY-;$W#*%I2:F
     192M\T/5+<O!E@0<R[[I-"[EQ'6-.;UMJI`<#H^$4^QUP.YK[)"H9,_6M-,F-;0E
     193M35/&M*5+6ZZ,#/_[R19J9XPNQ>^F?KFJ2T\GY>RRA<8L-4?N\6EQTVZ^'N/0
     194MM!26`!2"6"G04]BTP)1*7H]Q>,1C'-9-M*'B@AH=%5@ILV*TS0JL:.Q<8@'.
     195MFAG7++'NPG;M,FN&W13E7;M(JT`&MZ0^ZJ++)N30TD%#LNY)TYP<"BP8E=.Q
     196M+$"9J:'UH>S'L=.6_%NQ81>*-`W/X4#,5?-S;4ZWB<#YG$ZI;L7.'1HZ9.T.
     197M_=C(K*T=UW5/&_;OK,#,"IZ5F-G"C1(3B[A98F07+Y2HK./%$KV-O#QOV5)>
     198M*9'AI5F!.;>V;),)J-"6PVN2LC5W+8IOVRQ%UK0MER6I.8]EM$M)7*/=_^D8
     199M%\XLG7!\^S"+)E<O%QLSQ>Q(YB4&;T7%6WVV/5;7YKN5XMJ"=OATN+Z#\R2=
     200M:1'YO:]7N=;T_<C<DM>BA9Q^HPQ_Y;MLZ?!IO1ZA(MD2;A+6EB(.K<F9L-C&
     201MSON:C"N6FF=_CIY;#FNS\1/XN=U9?OV/F$EF1R6IB42"*$U&6.!,*HT+F"0]
     202M,Z9NFOM!YEU.SB7H4A]],`TH"W]5!MT82>**VBH#1=:;Y:]Z]L<+E^._U,I?
     203M2_2XU-MQNH":/%L=Y6S,&PS&H>*J)AH5.U@REUNQ(2?E#I2LRJV6')7;8,'V
     204MQ0[8L=TZR+&.'>XO"^=5D-G0:PK(@]9M`^9*N8.F;J/@<K&^@9I.FZWVPZEL
     205MW^FRS=)TS`S31;R$9I&Y0AW9L6L:]8#Q/8!8-.2G['C0$!=X"TW?2:L>-,T7
     206M("ZKU1Z/A_1J,\%VM>!!S7JH6"4]-FK6C4;\,(RC!.B203\JMV+73\IU2];]
     207MK-R"C=\HU[3TAW(UJN;V?JM<+AL7BTUEWG1`BP+4-8JU!6@K/:(M0.?Y$DL"
     208MM+6+H%FPM2]^4F08^"8!.MLY-N?519'`]-5:+9;BRVOE+6]<GNQ;69YE2%)I
     209M7&&PLINRK+7)(I.[FR9ISOWR^5]2SE9Q.L-O$VN7A`%M>\.0S>>PUL0T_W-+
     210MCV1$=<GU>FOF8:M#=T@G:>O"4?!KWNI"!&[V:/*@;1<O+]2,($X?E"Z.4B5O
     211MPQRM\6?R6\DD*90^[?.HK5F?"U/-^:-Y2D@%<(%![IA)<MO9;RT?Y4=MX<`@
     212M6_M%R^PO.<W[5C)H/VO-E/!A$NMTT`)AN@5+[4Z7:&SE?>?\VFGXTL.BZ);C
     213M$QJ3U2NY*4V-W9D&9XYN-5EH$I5NK6HV3T"8V76JMH5'<WM_><83*JR1<M(T
     214MX[HKPUC:1O7L=5F]K&_OL%[:7;TES7CL@6Y),PY]$CQ>H-[E=Z@/%'I,MM""
     215M6!D,WR9A-_5&*S(P-615Z_Z$UJ<!Y;8PG=#\4F+.@M>TN(RQF(RSN&2Q+<MX
     216M/,L/=UY4RRL93Y9MW9_9R2TOHS596_.,EZ]EWFRA8\ZK[5)3WETJ=5P@OEVN
     217MS>OKI0KO'RJ%<O/3@%ODHN8G1;>I2DW/A%XR0=3X].>E8EQPOCUZH>!\S_1"
     218M0=?DI4;!N6IO%YP<Q$?U($XCDAEPK"N!*6>V6LOY!BIX/KU6=\A;L'Q\[/B8
     219MOM7K4-+F=*9>6("W)?8/EEN)\,Z\@67).:V^K/8.E%PLMZ865TJNEEM3FPLE
     220M#[/%1*VJ=CRI7"MZMC4E!V*R0[&#!1?T\G*QU8(+>GN]V&+!IEYO[W^8XW-[
     221ME/=0&D:SX)K,/IB2,2MX2&8OV#\+!3?+[-<H[W*4MV6/'2RW$N9M2=&TI=PX
     222MT6.UH!0]0HXV-J4N%35;"DI1NZ6@%&W%,=HE_3S@FQWR@868I.J7LW4+>]J'
     223MH4R^M7:RKQ6>V"$C/ND1H'8C;+3"<^VAC'F^Q;*;&QQ%A.KN3@*!!7AKX_3T
     224M>/#B"LS.@9F^:$G-)F)^I(#:F3XU83B\+(P"S\UI:IU.,/2I]>W`)#8P.R']
     225MAOVQ-?+4M"`$Z(0L-DU3>X/[PY_8LX23Z3GEE<B?(&"ZXL$05D\K;ZGWZ6;W
     226M>?_Q=,W/'8AE?,K`O(Q<2S[N&*OM5+-Z?O#9\F^G)E7+NVT:2JU"<_#MTZ6G
     227M5^NTZ>G5/GMG7JIU&O6\U'PG3OVT_#Z4EI]1H4?^:<F9SU^LZ]/<^^0O/D)>
     228M,.9L2=?'@?(V)]A'/FF^-)T!J^%;?MEH_\8XJI?3MGS_QKC@RDM?NI%$*QU3
     229M!;2;_-[^&M("_M#K1S><*]2BRZWN\@9G>2T;:4I3!_SDOM"JE]R76O61A[^6
     230MX,W);[M[O,5!:<C;9J&96]PLM2'O:1JV6"VUV2&>N,/SMRBW<+&Z+6!D\FV1
     231MY_MM`GV3<[N8Z305Z1L<VWX%:*U0;G2;4%\XI7Y6;(M#N]&=W>C,KBSJUG.S
     232MT9$]SHT]4F*MN;"UQ%IV8$=B9LE[G4JLMN\ZEU@MS[4EL>9^:U-B39W6NTFL
     233MI;7P:>>6LV;&@VV=S#XI53G^AR76H?T.N5B8^IPMCE^2)\T,B^6K$F;'5)%O
     234M4[-W33V69]M>6%K+LS63N%5#KO573;9JK+]@<EYCV7A>;F/)E%ZK(;6::;AS
     235M9(V?[`^S__R:ZX1Q0*#5N]:LKE-Z\>&WUV`L3.74X2HCO;2EBEQ;?(_6B(ZI
     236ML=4OF=99\U*&88__WN*S3.OLPR2*A<XB\.$:H-IW4$V[?+9?=H&0$DB.B9RC
     237M)L40A(%C(B<TN>%>&-^3KUQ-CI?/3E+:)7[S%N\NQG];_"@^(2'R>[IP4$)7
     238M.U!;.L]C1E?*ONH=-ZKK7O7W^*27V\)7<_AZ..&7,99DPPZ[=H0\SVF>C(?R
     239M.O"=$SRJLI-GUO(DUGC\E#)M=#-2GQ]:-+\S/UYY?F?.=FN,N'Y'[=1D8'.W
     240M8<F1.'RG=1#$:>X<M9EHVL4-*R:-*H?T:[/*]DI5E<W]V^95+]79W-0VA_M`
     241MG0UM-0W@33&*Z;4]8#%^M&:?+5J-RU[IZL+-YL&L5MKBWQ]?99M#,4/BX8#(
     242MK,J&\,BLSH9@2:/.P=!)L\X1F0732J.M9`_EI1PGHW)GIU&?+6[*P7R(:2L'
     243M0CVM*IM;FBN,`R&JMJNR,76CKK8YC6/2O2U5&I1X3"NYTMS_.NRM;$S[F%0R
     244MM_%7CI5.#2K?QIH;TT06$;'=8]F8/M*L=)S/LC&M9%+IJ!23^GHBQM.V2,W4
     245M>%I+>)G7R?66<U\6JRS&$E?JK.3$M.L,;;7R8Y;KY'KS5)DFUL:/UHZ$.;'Q
     246MU&KJH/$TG^`-EM"V'9^C*M-MHANMC<.QV5F5#9':69T-<=M&G8-1W&:=S3'=
     247M6:79J3;+=#*-Q\V-T.4$^@)_V%;5@B]7*UXZMF[FZ?)3(V.#MFL?_U\#67H1
     248MP'`MOPFQU#QT0,S\-0%3!"_MY!D-MUK@]_D5/+RSA_'>O^%0]OGP-U>^N:Z<
     249MN5>Z&;%7+5>TP[>\HJ_Q-@(.^T1^*0$W:?G=!!G(1?4FC9@C2>5W-_JM)K\'
     250M1-G)[Q.MVQ_4J[G`@07V=2][)+G7O<]M:^J+KN5^B1V;!38LI!]T$L<=7BAQ
     251MP`$<!U\.2+GEMYXT$6)W2R@I]+*ZNBTBZN#*]L%5[4TKVINDU,(K+$90EEYF
     252MT82RZ"@=LJ57+6=5%SD@JQ[VC+Q"C^N'Y"W:F%->73XCKR_5/B)O--<++_$8
     253M@5EZN6559/D-E_,.K_'J\ND4`Z^VM^.-2M[Y!2#C6J6UA7-HY!H8OCY'09:S
     254MN@6*7MI)NZR+LTRH'U3&X>3%>*+K>"%%-"6OG]2O!Y:;H;Q06%XT['3]ARD*
     255M&X>W=7Y2F;^-WZ,7>SS:R;>Z6CFH5HAP0-C\V[BAAW\W23O(.=>\BZIR]F!%
     256M*35T41UMO?.+2>QM2+LZG&I*V[/76%9#6=I"?-QQ$K7O\R@O)EDYL&=%\BT*
     257M/.G(DJ!KR+=J8E:3L%LCFU+"V+,:Y-UZ`#@W?K",&@F[)3BXVMN,Q]/>WF0\
     258M1=GBZ2G3>U.'<&[`C-,5EN!DX^)0H:')>M]#"]B6W<)]KLMRH:P?E]\)/13J
     259M1D<7Q?[HCRSURVD@6>Y[/IXHJP$_^M/IO-1>MHDX,[D!C<';BO/]<==R@V[<
     260M(+^[=?H:^V[HG1NZDX\T<;.E^I6_+JH7U]4CMY._ZLKW<_)F6T'4W#06MZO#
     261MF@WRL;+'-Z[%'G9NR_<-_NT:N)E>6O9S]RUI>:#0HNG0K15K@IJVNE+H@.\[
     262M*[9<J(J['RQTV`)IH&LJZ]LZ:,.Y\]R1PQNC5Z%-=/'A3=&+ZWVW5D2+Q[=,
     263MH&W9#+VP%VU^]8;?NB[:FCE^J%#OK&U21H^9.;[BDD\*K:S]3`31H<3QL1&X
     264M7"J77,H;G]!;V[:=2ZNVH=M-B\U?QM<41(U3KIK@6J>K+;9Z4!"UWL$]*]0X
     265MFE*^]73)-KP>)W06L/GW.#5P_G"D92OJS%^G$G.I$S,66`(UV7@]V:]<#VOT
     266M9S?$#7JVL]/]V..`V8;OTSW:MP&PY;WCE1?>_]F-<=--4.T.(DB-_NS&$](U
     267M)^7NW9M-WZQ_LRF<3>)T&B<WNL;!I-.I.<*27#*>3P^X8;#.Q/T$W3.$3U$^
     268MO3$F$K]I&J:4TZ"=!O4LZ[5[&M1*8*!E;RPOH=:C70\.;`L/3`,$6VS^E7RI
     269M*3K;*[US\ZS5P;DMU.I@2]-,@@`#QN9=V7JJS;;M%5NW5,Q?K+AT'=XZ,81C
     270M#MMH:G2^A*515;%GP9'>I1(;-OU7A)=C#AX/H^/@=*FE2E!`X85JNVDLVO+^
     271MB?+-]]]B_TT-!?/6@CCL*&!`%]69J*7GNC<WICIU_&U*4LO?ZAJM,/CFT/@C
     272MOV`#O[?'!#:%!0Z`E&*UY-M6;#4V,%WPVNC'M9<3#OCT2]`:$)=Y;67=8;'@
     273M.N=N"!3D8HT5BF60J_O,%S(%QO)W63%MV)*>.[(E7?=`7N\M==,I3EU3APHN
     274MJ*=6L:9S]HBGKK7.96Y=&U)EJRG<I*0>^]0U'M;A0]=RL97@P\;P0T/8M3O9
     275MDIVM7K9EY[R7"[*SM6OU;K)SVZ+,_H@,RBU)D]5@MLC.;;F1^P-O(VZ9\&.3
     276M?<!<VT0?[JX=]#WFSE*JE9R`=K<<]$TVG)P^;^TN4@5#@PC8AQKK<V<M;QO5
     277M&U[3O<B;2W;,@MVR9*=4]YOJ=-][A"W]N:8O)_IQKLTR@RW-\BC;:E'?U?.\
     278M?-IW^WW?"W)W1<X>DJL'YZJ5CS230$MR<3I7TP7X8:Y:R^_[/GF^.5?Q8N%E
     279M#M.965/YZZ<"3*7G%/5K+Z&<YB)/IRPT::(\C4W"*$]3D[9[8IAV=&RPJ'F(
     280MJ'X\?@F`2`=-[EW:.?(&Z0[.OL;!8($>=6;T2@"YU.@Z?"+UJB[OE=J:V7;`
     281M15@@\/[AHDB:2YG&TT7KOU>>3:._Y0LUGW;+$FMXO/AFCG&W%TWJP@VK*VNJ
     282M]1KID:VS=K#P@16T`^;L`2/VP$I9(\.I8<4?8(H#QNDV,E[;-M.TZT8TL;P5
     283M9M_(09V3L5]^.EG9:I-Q7'[*7Z<O5)Z1\=($E>>-N&EM6@T&51U]J466YDA3
     284M5R5`MH70:+;&IDDM51KVP,@*Z'6_GO=HPWFTF2!J`FA;F5/[LK8LQW1M)W:#
     285M6),31AR]A,CO)+-4^]$;B-9-O1FUS\V[F72>FW0CX;%L?LT,KQ[M\_%/&+UI
     286M&RTS],JPIN>U[J>GM0[6SV18;MESF,YK:V['/#,/-LL<M_SV>2!Y*6P\I@E^
     287M^;-D&#N-C&-DC755FM:6]U,M2,0YG31II4TO4_'1M/*7;?P#%OZ,S)JD-FZN
     288M^=K2Q4!*PWQ?--[7M<X!W+9<[Z:C/3;9IX2[@-N6SWS(0U[RD=OT/FZWG01:
     289MT_VTGW5&ZYS^EV)<L7D?==*">3#QI3FW$J_*HE%VEME&@Y5(NMJ1>%78`+>5
     290MCQ;G>SSG2S;NFL>]:-JNQ+27V7%4K?%@Q9`]Z'PONM\++#KNPN*;N!89>U)K
     291MQK++D=*%V.AJ-/2PB;F!`&Z33+]O)1;U4S(_'6NHYAM/\M.P]"";D`L$D`YG
     292MTR_)D)H,EFD'UWS5>4F>S,>P[-'7<J4U]F[%HQ?YLA9WGWGTX\I'>/3R]BF\
     293M=ZJS\HXI9'!#:)%XBB2V(K1]&*E[1`3][FB)58:ZZA.U)5>-I57??EWP-:LO
     294M2[+6W"P*P7GU):FV]O`XSWX]AW;%LU]<G5L4D/7#`Z*U47M16+91L>+9'Q"U
     295M5>TEYG@(S[XM?NOQK+KV<S$\1<6*:S\5QRTL+GCV=?6Y9S\J,77LI]5OX]C/
     296MQW-7VU"-:/:0;;CD&[6&TF<7C1_DP,DX^W4<\ZA#$S&GPQC9D8.O/F_%P7?>
     297M]JED)XUL^RS;0'G;IY;WO>1MGZY^0WGC6[T'M+2KJM><#]\&!AF^J>I;$_RH
     298MH6=LM^8(UB3&4+=]KV:K6:3N-;/5+-+W8I1T80^!&L:[0N#/V&S-6!E[O*/Y
     299MW[0'=,UN7;=<UVW7=>MUW7Y=MV#7;=A6N&*P8@_8L0<LV65%HJ:4.#SHYTN/
     300MC-V<:AB+B$W]?GLV@/.[M+I8]MC#',Z2U6K;[Z^W+'1%_L)*UEE*PUHNW]EJ
     301MMGI(@LR_+VI#.N_%]T4@ER\Q2^/RV^[4Z+?N?Q=J&?\>MW<P!7'5HCEDF1^P
     302MS0]9YP?L\T,6^@$;_9"5?L!./V2IKQLYS<>5L-BV66]180R/%PWZ`R;]`:/^
     303M@%E_P+!O#KYU4L$"A#9F#ZSK-5;VID4.RXQ-J6>;>68MBVO!$SCD"QSP!@[Y
     304M`P<\@D,^P0&OX*!?<,`S:#ZON.;`X3$#_/8;[DJ]::+'T"XFM3[1;=[GTR=Z
     305M%+-R/=%C/UUT&E_3M;YQY>FZWP3T:`VP/X^F'/"F=R;['A%'^)=O^:@W+!GF
     306M0^*H;A0%&+!F-#XPCE1C!D-Z,?2Y\W52ORHY_>4@N*,/>%M2B(<5X2I+KRO!
     307M+*0/:KA5_;:NW9@%%I7;7LWA-]EH2E_[.1LL/CQI?&I97_%`I\;MF#\GR773
     308MT=Y+YHF:/VXRZ9KIT%B0GM0^@_B4/#_#W),>A_,`U8129TOQD^IKQ[#L5Y?H
     309MC[]JEEK;ZK"]E6+SF5O6G\*2;VL[!(^%-3=)CH4]GIVQ3KT;K/;!1;>#-=;9
     310M=X75[4HRY_$06P)%U2^]N5O'!-S*&[V.`Y;9?/L;W%K`IC+NV&E=$Z)J^45D
     311MQP/#M>TE<C6L-4G1/ASY-OW"=?C%<UMAJ9G]>Y=^C=3IW8'A.O[-%6N=.S2I
     312MVV')I*Y!.P96L?=/`VONU-P%UIH`/A[6D@`^]B4,0[W4@'8[6`L"^+;`&-RA
     313MZ->1X+;M+=P,[O@W$*Z"._[EA*O@ZO<6WM7449P$<9*>";C]\:?R#Y7G]^HS
     314M1N1P/SZXKW_7'[]Q4#-2AC>XLY=O^65^JG^9.^Z&G34X!WZXJ^TNV%WT.!->
     315M]S$!1`)`HCKMD@.D)/<1<<=/P"&#;N<0,)`G5%'A58?\\C_J"_WINCY^H.G'
     316M12X1$5F0)_05=TVGN%["0.:X:_U=MT;?J]:F)<&W,P11GQL(HD*-N_0WC2#R
     317M&P\'!$V;J::F/X8_<JXM'ZY/=XR>S8TD%?)=S^F%?/P^%<Q'ZU-%&1R-C1[$
     318M8<9*AR3IA^]&W"(4HCAF+[^^47-6$/U%M3T6J&,_P1V63SRF%OC+(1YJ!U.J
     319M\+OK\!),E8=,!7@7(4)#&";]"GZ@"KP1('+=1,A..8R$\CAP`IGH'<]P)QW`
     320M791'[[@MFLV\A,.3VS$M8%85)RT?I(M)\&G")DB'#Z/$U^G?$,CZP-]J\G=W
     321MQ-]+J[IK?[<CY#S=!_Z>:H,U[3`UQ1_R[[F"?^B_6X1TJ_=?+E^K@9Q;`CL1
     322MO"JR<G=P%;`3P!L%?>X,;Q)"NB.\64#J3O`:X:T[P&L&RVX-KVW)W!)<"UB5
     323MB7-[8/N9?WFWT-(=1RO`5CS>8\`=!'94]PY;ID>`VP1L,[QM1O-&<%E,;FGW
     324M<*DC@&WHWA'0-L`["MI!>$=".P#O:&BK\&X!;07>K:"MYL;<`MH"O%M#6UR8
     325MO"6TA6S-6T-K+GS>`5ICH?1.T&8KJW>$MIA_>D=PMP/6'$R]TJNP&G>Z1;+9
     326MVN^\X)9+3/'F*07'7P/F-KYF>1NPQI+*W2R0_3@D?=>5LCL-=DIM=P(W)UU5
     327M9S;?#M@85;?L79NI-JY<;`'6NQYW`3:5QT</=DUV'#W80X+HJ-Z5P,E*[PZ]
     328M"V%[SX[JW6%@:CO=;1/>)U\QN\7+WE=[=PC<,3KJ(+CC%-X!<,=JSU5PQZOB
     329M%7"WT>MJJBO*[=L9"0N]NZWYT@1W>UNH`>XNAM6!%+([@KNKR7<@1>T.X$X1
     330MW3R8HGTTN-L#:ZZ<'77RZ+;KGB*YQZ?/M*')L%?/.CT:6#-M_=;0FEGN=X`V
     331M2T&\([19"OT=H8UR'$\`;92??SMHXVM(YK\[M-S/X[NW'LH]=GH/A'*/F]V#
     332MT==C>'=+*'<[\VZ*OF[EW:VAW&V\NSF4NV5N'S&4>VARCPWEKD_N\:'<M=F]
     333M32AW>79O%\I=FM[;AG+;O'O[4&Y+,M\EE#L7?7<,Y9X0W+`MZT3@!.`T\^#.
     334MT=SQ868G".?6IZ"=))Z[Y13R8^#=/F.L.9PXS6!HNU_UQ$V=C!)F&?LR\M<T
     335MJ#O$X*:YJN.PU;[UJ-RS?3?F0:`ZW6\\$-4X"K'`67N/CAKM)W?E?3540?:"
     336M5SEAG'F%;X:3V@H\?J9V.>D,>6%Y2WHB%DL"K<.)2Z7&X(OTS>E=/ODCOV6W
     337MC*0>D?PV/5;:OP_FK*SX+8,7LK(.M;"JE$FPN494D>A\XFLC;^HOM[,@IA-9
     338M-]MX=F"E9*]F[TQ98I/1]H%I;_JWK;0893%2T8@5'L$J^S5>6=E6O>BOJ^'A
     339M<@C\D"^]B<+FYE1-85/C:,T)G5"8FSVJ*6QZ/.:8PI9>/E';NTL4MBRY][-S
     340M,UO6Z5P2;Y'%:])X31ZODEE+)B^'L@IBVE0X[/-J(:=L&VB1*'[:K[?H.SV6
     341MW'F/\DZ;7G*G(KGSX1\DN=-X5S%>:N:*Y,[/J)3*R:+>['0^%80>ZI2:0CR_
     342M&GV0YENE^)VE^8$XU)I$7Y?IZU)]5:ZO2_9UV=YTC%=D_[KTWR+_-VJ`OF-C
     343MOVB#%EC5`ZN:X$@F/72Z_IJR6%47JP'>@RICF]+83,A+>YR75,>A".:*^EA7
     344M(.LJ9(F0IR](&3W<MU^3DI_V;N\*(<\,_C)%VZZBA(YUC0I!'1-N'I/3]IW*
     345MXWJM(['6^SF4]9MKCOFPZX,/AVJ/9PJEM^TL;K%9:Q/;X7HL6`YWM64(\N^I
     346M+-O28A8*[<-:UBOFJFMK^\LRA*NV;/1#%7/5I>V5:Q4SAMM[*0]5Y*JMC9.'
     347M*W+5.3%MJ<A54_]U2\6Z&=W2YELNQ7NO;E&1JQZ__%DL;5W6Q(]I4:I.C@0]
     348M9KEO[6R>`XVJVJRUIAR^LW,F[\SB'4T^QF+=*M_E/64:.^%,WHR%?65>I[S+
     349MBD#%+F\1BVX7K,LOY.5-5UJ'<FQ>PJN?NF1R2,)A_U7"87KXTUI'9G7717GJ
     350MJ;#ODL[[W!1@I91,@14-;\N++O=<IT`]]%V(^:P@"TO;T`W="9Z=1D]]YUW>
     351MG^9-PO;"SD4GC01'0#W=4#$/P"3#0U"J,P4I1F,84?F8LGWOJ0TB!DM#=<-+
     352M?K/!+T\;QGV/?VR?4Y-OJO_65=^<*6Z"[5]TK'(\J?TME*JV'"ZH7?G2/]KX
     353M^[C3E+J[[G):-=LV5+Q%W76_95/-H^M6->^PS>*X\8[%QS%UIX)G>]U&S8WC
     354M;=;<O`MB?G=+GU<LX0-UET7SH;IK0GV][KHZ6*M[L.;J;H0#-0_X_ZLU5^/!
     355M!VHN!@X.7W-<'5&S&7#86/-`,.(@A+$ALI_Y]&O76@SC4+-5?,./`&Z[LB][
     356M>\?PJ%.&Q@-MIC1NJ7A4CO#4-[QE>C%3U_P@N\,5<]7;I@UOS#A>B.T<'NN2
     357M?WBPZK)_N/EE\D=67?</]V%R8TO%`Y-SV#_<^%+ZS56W^8>W3K=M',:XW3^\
     358M=1KM'5)F;Y4>JZ95;^$?CBL>8Q:N1DP/M7JW=-83F.S'IJG6)OMQ.:ECD_V8
     359M_-.IR;X]UW1NLF]-/&R9[-NR#-LF^Y9\T263_7#RY8K)?FS5NM/J.%TRJ;Q&
     360M6@>M]F7:VF"V+Q'7)KN]35T;#?<6>6VVW.?T=83I/B6PHVSW=$35*<+T+:OR
     361MA[Z+^:[7C]Q>!:%;+X3=6G_MA-H#[;K#"01#OUKI7.,1M^RG8CRKW-<U@Z65
     362M4##%:!,UT^$/:Y*U)JWK+>>1E6;\BM$@D,,!VV#E&/8!M!NY%_.A24?6C<B]
     363MF>2:20"0L\WZ:"R?!Y8CC9QS5@[JXK0SFZHVN`SGGID<I.3TLW*`EV2@A=Q(
     364MQTEH:G2N6H8;:7ANJ-.5.EQHDJ]6,M5"CC@BV\%4E#/^5F-U>*?W@,G6MS&E
     365MS;]MC%@>-',.1R`/1QK'DN"0D;\2:*E%2=MJ/R9P<CA`LC40THAWU`IDH.UF
     366MB1F<`VIX2R)&A9'#BWW[UB+O6-0=<,X6M_,>+>SV0Z+4DK0[Z#P=<)+4M,BB
     367MP%LJ4!'9VK'V55\.B+R-SLH1W+ID(1YV,L;<VK+W)MPZM^KFW-I.5AQSZW+*
     368MXM"=>>;BJ$0W]D,6N35,"K2XU;9+C."XQ4;Z(G[]3/VV&%M/"RCEU.[P^=J%
     369M?=1N352,1['U"&6UDATRE)/GVXX^1C_;V1]-+M\>+QJ+C+%L&P.=(G1I>BM[
     370M:+T@KJT'!->'8:\+`[62YS\MN79B[Q@MRWL`9H.OK#3RZ_0N+R`/7ZW;V7ZK
     371M@$,GY#Z93?UW/AU5][L'L$)-EID\,]'A07!5CW)KIL`UW0!K6D(-)?(*,P%.
     372MQ0C$J:FZ&($!I_`6ZX[A#/*X&ESU&B?7^*8;WPZ9>VKG^F];3;OU;T<N51]4
     373M*9."FY<JCUN:W+P2N7WE<=TF;8>AMLBHE>[VRG5\M:V>9?MOO>V%HHNZ;MJ#
     374MU8+;C-U9%PZ4;"SK+9;<9`7712MKN)7FN.`G;%O.81+:=G(+F\#;=>SF$U=6
     375MEYZF6G;C\LO*Z3MWU+/[L9Y?4[2;3R993.IN79N71XY8#CEB^>/`*1]J7G2C
     376MNCUR.>,68GW+YNTB)P]OS)9O!U8CIF)]?3]U7W)BY2^5'.`N[X,>WUE83#B!
     377M6%]ZNW.C:/MMS[-B^#7=3+Q8<`3VL%A?VN,U*5EY?]O$^M:=N_O);K!"R%L,
     378MFL>\SJ%_@K$C(NZO5Z7I'[LK3^4:N'AY(>5N5QWG;05.GMI5RSTS&MTA#!RZ
     379M]UROVG`\YM5O+_>:ZM:M+[A[N=?<+]KV&K^7>[4=Q-N=L?92KMI-GRXPO$JU
     380MUK7D);Q*M*5K.7KB^V^/W<?SNM8\T?`L;,Y37VM!K;N\$/KY7@<#BZNIG"_S
     381M6L99T9ZOE#:^#L?40&FO.*NO;9'TT[R2Y7E<VS#6CN*_3&VZ=;5F>FCSR\06
     382MKNT8&Z<4O4QLX3H&8Z\V&JYC,`:<I1?,CW*-\Q$.E^>]42\98<<2&2XUWG?[
     383M\JYC49:7MN_R.HNG?FU'V3@7Y.6J@>/Y4BXU?9_BR[FVHJR5;K24]OV\K]L2
     384M&2XBM)>XF+*=R-KW][=Z+<_3OK8ZY,O/]G=[M]33N^["F>5:C@D]1UEWK.W?
     385MNHX[@/:I7Z>@,5RM3(3GB</38`SVQTM9MSL5C<G*P-W?@/@4KM/A#%?M0CU7
     386M>CLEE4DD[?GB2J[3TA@N]=R7`TZ-,MXN<*J7SI[G=7HJ$SWPG$-I]\"9_+E?
     387M.-7J.5RGQ=EX,]!=WY)\KM>I<-:27_O&.6;/X3H%SI;E_7YV@-MSN.Y#!]27
     388M>79FQW2S]*DO=<0+>I[&==\TU@U[YI_+==\HRT;'<_+8[Y_*Y-I^1OJY7_<M
     389MR<KU?"3:0]&8'.OPV*,]S?505";77C\'2GLX.I-K*M.>'@X?ELK*3N*':^_T
     390MUT/3&*ZGO>_N,3`V["1^BIA[#(R5`P@?>^RWNQX>8T]]W]WCT!@NV&A/<]_=
     391M8_&E_-[KI^AW/C3.IMQH5Y^>X_5XG%FNIV9O/#[&GMK))8^/L:=F;YP#QIZ6
     392MO7$>&!OVD)W_=2X8>T)[R!X;9>,S99]$YLMCHVQ\P1LX_T6H\\(9KM-[4&W*
     393MK2GZ&-H^/XS-WX-RV^M^=B"<(\;6S^#8?MV/5#Q/C!U^C^?CZ8CSQ!BNY>S'
     394MQXWCGB_&EO=W/JX-<LX8:_M/CVVSG3/&SM-_.F^,G:7_=.XH.T/_Z?Q1QD@[
     395M](J<A[R>`LH8:>>3C_8T4,9(.Y>$M*>",D;:>:RFM%\$=9X7OV_^\3O[=*@,
     396M%UY5]O@;5,X;9\UM/>:Q-]Z=+\Z6S;''788Z7XPM7^#/Q]RL>*XX.T1'86.Y
     397MTU_GBK'#N'@L[CQ?C!VZ'BO(\70QEH,<#\^83Q5E_=NT'GYKYU-%F5R,+[U[
     398M6*0];91EI!U^S_(IKZ>.LHPT.[EQG]?31UE&VL,%.9X#RG`]8)#CN:",D?8P
     399M2://!V6,M(=P")X3RAAIJ?]Z7XT\#Y35^-'WK3.?!\KJ2^WT_2Y[/C^4,=+N
     400M<]GSN:&LY%#I^UOV?&XH*Q?BMO=UA-4YXNQ4LNA^/()SQ-BI+E#:?:3"/V><
     401MX9IO\;QKRNASQUB74Y1/%XD\/XR=7OJ<UET_/XR=_CKM%L_GCS'AQ],YZ\\?
     402M8W)!<YYJ<\_SQ]E`7:>1:,\=8^,]GJ>0:,\=8^,+W'GW[8K/'6=SJKJK!W6.
     403M&+OO(S/O)M'.$6/W?8$[7W&V?"V^\\[<'N;YX>RA5F_W^K8YD"\79\#:[7*4
     404MSP]G#WG5L>ZM<_6R,7:;(Z=?-L9DN_]Q.'OI&#O>3CL_C#U\KO!QGN?Y8>PQ
     405M+APNM/U]SB\;9S5MV8VK@"\;8_4%2MNV^^X59^4"A0WK4,O7*\;&UV'=^8JQ
     406M\:5VH?K>*O&*L?H2'*VO0[UB;'ZM[R)[Q5CK6CTJYQ5E[4O)+K+Q+?G]BK+I
     407M546!VCFCKRA;OA:.RGE%V=K5/"KG%67K5^.HG%>4';IFN\A>47;XFNPB>T79
     408MEHMWD<F75Y0M7S.SK'@$KRC;>JFRB^P59=LN21OE762O*#OF0M0V7KSYD_[S
     409M;^1\/%R:+C@*EO]S,-SA1D1`Q.^,ICMZYU&*[EA>EN%ZG=VYG<'??/2"@X\6
     410M4-F::$X^,_<!3X9OL7(>04^:;3(:JF.69+QHN[.1[AD>O`9*HIB[&Y$`_!H"
     411M0"#\SFK\-PS<.MPA^-)$\KCIT0!:HYMH7>:'"G<137@T37W3'G]IGC:"%H/W
     412MW)BAFI:GCB`ZC_^V8Y`=[M!DTG\/T%%&HBV/R_#`Z*;ARV/L;I?0/H$W"7\9
     413M@S^IU\HHFV[9G+M+<\`,`Z+_0!>J@5([!DAHH9O46FY0.Y\;<IVT[KEEYW=R
     414M*:T9>S3Y-"G4Y1#QI^=I2D"R3O%>"`^#=IC!M'/47X/_&&G<!8>.&":6@.FU
     415MN)N8'+!\8'G/L7&WF*B%!@,!.7V#C%_9'PW"I1^0+/TD'IURF".-%G.C.D9^
     416MP*2$:AWFE5H/W='3E7;2+;I'O.BI@9CDA\9!+6N&8J1?'5B?8(`R+"H$85#'
     417M%.71$XR784:PL$,APE_"V48!?Z>$OP'<)&N#R!:1'CP$L#GHW6G^430P;H0@
     418M`=WY!QAP@6?!,'T+ZI5G3"A;)!(+)<@D!APM]U,Y9CI%H\`=JN"T2_Y^Q*8#
     419M=HB5B:\8&]01H!LWZ2YF.#H>'OJ!'X/9`G]R!?27JK*4!7KI)S!(^6\ZE'9<
     420M$C#`O<GACO)R"ZUX%ZC`?0RO".RP,S2[Q"<BK\R]"&R"Q*0-^(%$*4THRRGA
     421M%"(%&TM;2><V6-A1+<OB&RJ%KP@28R(AX6=!`$Q^("PFC>"H8N'-Q'Q)GSB#
     422M7"<F'$*RB4S&8(H%UF3A("3JS=&<R48%CX.F4`$<VL#4"CDQP5"3R9<AFVCS
     423M0+W-XT\\]"B*!_H`-DJ'A\0$`$!*F?Z.K)(42Z^.*C/ILF`1V6#@XA$Q@6SA
     424M(#LB*LVTQ;W0\J,M5!D+`L.,.),-&2:8U3)A&Q9:3->&;R@E=\`O9!9TE8!0
     425MC%HB-*TA'*"U$G<K6&8LR(U%`2&3@D?`HO:W%1!B^T&$:Q`\NF$ZQ3_`#A$E
     426M\S9$EX_\8S#]@4%94<*6:1_/`)Z$8#8HT6UJFH8"6H@BQZ(6?%C<T6`39;Q^
     427M&C9CC2O+TR6XHH%H)KJGBZL1=^B!.[(6`@,^%'><.QF<&MXA+X'_@ZA(MBGV
     428M-TZC=5C(0Y1:3!A!$ZWC=&E,@[`]VKRKVCG<J,%_U<%:TFRZW;W12N%D2RMS
     429M)4B4U9DH'+1:6K;0)`:C/H7*.36E'#<B4BRP7$`\)QN1.&!B!&%>HL@XP\91
     430M)XJIX]L\C[G]R`0E1*QCGE!H>"AZ7]PZCCA0.U'&`FH!+")"]"F(TZ?9+0"4
     431MVW8G4'?,_71'G%ZQV>@_%#:DOV=;KN,F8`KCOF62]M*7D*F/F<[Y/$$P?]@,
     432M,CZ[T_"H'?O3/#8VO3#SW%M,D^9[5GP&0'H*\N^EP4/PR'#HZ)Y#3T[TP42K
     433MN"XS^\R5&85GCE(J3P'EQT3[W&U1#IEZ!,8YYOJ*\D+E$OO1ZEYQCJ;ZR-91
     434M*+]M8SSX8QMC4X=I9&8RP8`6K=0*#Z#1R)V#,W%\>$#F92%T)Z;_4NC.RKP:
     435M.--P`&X5(F!EU[9O.&8DNJ\5(I#1*^ALS0[4XUML9\15<3M7W:&5]$"\ZXX4
     436MEQS`9N/WF+`[FLW^;3@R"GXW_F4,*,2FCV-@)TJ?@SX<I>XD;!J<X-9QXUY<
     437M].S$B]^>(\[BGH//+6`)/,T16XR3(W5>(L#\9T"<("EW0O$AG0OV:/$1=D$"
     438M*4RP:)KC*X$Q8'.P$8S/<U'B,Q*1<:R!.1+#(0G=@78%(A:K'$]PPJ/$PCP$
     439M_`G(IO/Q],O1=UFE'7$&<YX*.!"3W6JNY(RU/1.*9ZT%<[P"PQC&?&0W"-(5
     440MH)4>6:.+',%!;*E)CE:,/0L>M1H:QV&.-58P*5<F]5#%'.ZT'KI._:4Z.97!
     441M][Q7@EZ>B2C(8D>798SE_['+CB3*F6ZRU+9.\RX#&&B^E%^,K+2DC)\$5@X2
     442M.@,8Z+R4Q__(P4GZ'T3'$$-$F_'-'K+0E9((**A36(V:V*2>T=]>/9<:QZX"
     443MVSA9!=ZTJ`=T](MZI<:":%M9.7%VLG*R/2Y*<*I5@Z':+L=@.4ILI:KM>@$;
     444M>RHSL@HI,G6RM*I4_J^Q%.E8B]%DHVUE#6XH(@7<88Y!](2[,51C/0L,8XCX
     445M4:R4>*T.BPT1_Q$J060".-$0VZBD\`2+%^&(A8O@ZX6+H=J!:%C+6@R%%_I8
     446M&'*_^;_V#F$6B)2D>$*43[@!I.!.`@6E(&J^JL8R#R0+ZQ,_AJ43%C#Y-L*W
     447M.:J*B`T$EP=C2X@5C^A64D>L"!"D846@JL8,!T3PN#U7!==A9GWLV89C12(<
     448M->,@:T`E+!*/6Y>UU;IL55'$6,>-<P><T.+J:D)JK2;<-BIW]C;]J1EJ$R5G
     449M0`,EGWI8IQ28AR65"@4.4=%H;?.T'!'R?V.QA$<*'_U*".%2984[S/H9%O&#
     450M$I5)UI?\MQ[_->90:_Y!2@J$$RLB(,#RCZ$&`A9[-2HH$[F>X6<)9*^*O8:E
     451M8:6+:8OA:4Z\$&-6I]3#([LB:%O%JL6&@5J,,G++IE&7`^,=WX<>Q8_C$+46
     452MY>HE."T:5;,C'24BG?+_D'`WR>3H0,9?@G(+?,^J"F;HDA$M:]5._A,2$<2`
     453MK"5/`#^6YXHZ"V<%^()Z1D?0BF%!P(Z_)C2AJN*GN*G)>7-=_@][#@:=2"+#
     454M-V%9R3UG3`\4?DTGR*+.RW^%J4`#F*A.:_D(L)8Q)QV-#(\<3"#,!8A+\W($
     455M'F/ND69!OPD6"N`V2"2F_%]%Z`H+6O!DE=!\1[9+7.";B<RF'C#ALXLYY8BI
     456M5'XT3P2R.3#CT)?R`6*P0%9@EYP>)BA`SD3`O'E,/\:-\4>!`WB)373J,N@?
     457MUGW^T=%`/_-DAET"=C##)-4#WU5D,PS@?9>0T,"=I4Z7'T,SBQ_F;.T1;_`L
     458M,V`^\Y*.*!?0,O,MJ#L!:RE:+H':"@EE_`5@409/2.*E'AOXL9[)#8C``!DM
     459M&KRBD[=R7UODAO2MI)1,89B<%H$?WVG^,9[7#-FXY8"#8FU&?SHH/R^Z*,J'
     460MC6RUBJ5JN3[AR@L@Y%NPPX9'&HMWQ@\_-!K,98305"A*8AL/:$)#4/+`)(C\
     461MOB%2B]%E)\]"-^2?1.29F$0Q>1$"(/*B%2]0.1`SAU=@.Z?.RD>(Z)KSRDL9
     462M`"#2%6B`RJ7XD6';AJ:__)`1:1C%L!9"9-;G)S3!`>X&'GCXHT-3VG<AAAR3
     463MQ./\H\"O_!%A\B;K\@<]1,8?YY0ARL&/G2T?I&DZ3JCI2BG#0:8"#;"Y(#^T
     464M`1#`>OE'^1`AAA4R(BRAW@4/$<7>FR?YRD]B*%"D.4.#@*QAQX6,M/*C((+E
     465MH\.P:<K%:(5&\7`#(8253@P>)7R$7X,/<C;AQ@7(`"D&.$Y2J>#`>BT%C1C3
     466M!HU`1_4?1*>634W':7N0:HXC)"(42-OR(X7^U&U:W_':HW@B'/HH'[IC8Q3B
     467M0;O(\BWZ\DD%L$+)4@C3+46B(9#\`=S26$B41"G&@,B_M1DD6N"2_#08"\^,
     468M;);A@Z@EP:\WG,5&FB0F)X6@,3Q[=R!$X_%L:-3YCNE<W`GVBLN'MNPAL$D!
     469M]E`DXFWYU%A4MHD#A8X],!1)$=R%#Y4"U'MR,-)0C`$%5GD,$BUP27X:8:8I
     470M5HS]A^D"O/'@#(QNS7,'=-,S9E.RY_@94;0?M>II3"J[Z23:(#O+AW60%_C0
     471M!!Q)<"F53Q2`PX]PH-4(ZG$1DMRQ?!K2B<2RAMULT27HBX$V$:A:K)^8GY-X
     472M30`4??5!T\PT;T#=)+;0;]=I?H@VM(KY(<F%SHW:)B%/TL_D:)(Q()ORX3WA
     473M@3^(`2$#O8=HXD\40$^AATG9H[]<1GNLS,LG*7Y)G$"T2HHR-&+@+D/G=J2T
     474M%"#%#JNLX[!,^8@D%]DC,9IE'U`0K9.G<`@C=#L_M01PTGX@T4W4*U(;@?+A
     475M@T/9_"%.L'A^\BE!`@D#BQ<F921R(I_B$.6\`"G*T"26Q%^Y'2DM!23DP\'"
     476MX8.LG`ZN`QDHDAUF6/<20O&8A&EBYN&GXE[4'=`T9B*P^\EB.TD(;C4:5H7@
     477M,+[[VB%PESCI/&YI2MQ2W4N@=((P=EG9NF37Y)X"I9,('J]'0/Y(G+8Q3:?T
     478M1V>A"(X90IOJ+HC'VO)'3Q\KJMQ*J#7EBGL/9Q2>'QQ_GWI@PIOW0;4GB@G/
     479MHX%.7/W$B+$\HA(79J%S+Z'1F9LO,=GBY@>)U&9((O;.5I[-P^RNA-G;G'*J
     480MJ5R/VBQ,Y:E1^-+@W67-,*_EJ?M<,\15M)/.:_5D5UE_3ZN&GK?SB'(R11O2
     481M[71?VA!744RVTH;Z/K5A%H`#KVU0B.=$>;*N>Y#RSJO+3,0'^WS'-I3(T'OF
     482M2,3'\O+#@W`DY[K`-=G"DB?D$+@D#I[*)@XYE2(LBQ`!?@^IP,JF\6I)$9[2
     483M7HUYLUE*6`Q-6^W5$R],"1B.>&G.T%%ED1EA6^W$/*C6IB*B-$S?Q;*S.36L
     484MXR4._NGRYB.Y#0HHUIVWQ:13O:U7;:GMJ0:DW\E6ITY^(UY@O133%41F@KQK
     485M)^WDOXOX;RQ'`OA'<\0>[K3C^QHK).!PCY6;R,\0^,#"1F0HP"SGM9@,3C'3
     486M::(0`RH!9]%OFXCO?.!R!@C-0&E&4M8F!OL&\!^;!3W'[>'(LS./<6-W3Y!U
     487M`,2R#`>B05P0$J!.B?]C)B,_5>Q[^`P/?Y'_CKP4WD3:\6_/*R(<'$%(JX=*
     488M_>RRNV'#3O[3XP2^P7)QY!\+:SJ"L1S?AV+$3Y"PF.6'"`=B.<$"AN%E,BCC
     489ME.'A+Z>QE].QD'3\.X#(NZBXH"=2+&"UXP44%BZ^8F+\(!H#NLL10F;LB+`&
     490MDFGR"AF'13D2JV5U$.&@O$J(Y[(.ID?KBEX#QU[)ZAQ^)]F`$KEHT`-H+#WD
     491MC!?/@HG93'R.P.$U^>%5*^3#DA@,O*U3?E3'Q!XS\7)2EOQ&Y%W+;<2D"E#-
     492MF[2QX2]`&&KYK7C9W6*!!Y+2N@&XL0%!4!:26(;!?][3BQ&`?3L@!!^!ER"!
     493M'3A8F"9>O`%>L,:$92A^S)@5(.`+X!9;:%3LX>+OJ+%/)F*M)73\&_%D^&6:
     494MRR9?`3?)V1+>K=>MX$<'*!A>$(:>XP]>GH30[J`4^*','T\@KPS#)'0<R=Q%
     495M!`-#7A'CJ<<*<3`]>/Q-C`G#D[@FR9*88VXG@4OLG-?,L%PVM(&P;UXFXY6@
     496M_,/+.KR0Q&MBK%JXJY!@RDN"!C]D/X\_6,%RS!XE9'%)"RB`Y#)L=5D=^P8X
     497MO8[XV.8EN6RH8W4&KK"$&5"!DPN&=DI0\,16VL6;/YG7$VMZ>(H'YMDLX3TJ
     498MG:1$R^AU05`>^M8>UA!=2;,<`)YVR*>&=^K7W3S6ZW.6X+G=[5Z4O01/W_*%
     499M'@\%[[8O95^>CU/#N]VU/-[3PCM%_RI9>Z+QW@^\T[W,3]V:[I;AW07:?<.[
     500M/=TMP;OK=?_PSNL5HRUXY_1RRJ<,K^PL.X9KML$[3?_*_KI3PSL5_FYSK<-3
     501M1UB2V_IW>GBG?K7=X[XJ[Q7>:>#=7?-.^W=J>*<=[\/#VX:/QX-WZO'>!SQ$
     502M/;8[_-O@G;)_A[GHL>$=*O&X\`Y?CP_OE/2'Z]2ORGN%][SAK5^W@5?'CK5$
     503MD[L<QE"[Y.^ZZ5_E#?2G@SA`/C7$[MX@.G.Z_8<EC',ZXCDUO.X5WBN\1X77
     504MG3&\^WJSWVGA67WJ%&JDW[P\B.'4I^;84Z\_ZU,?,Z]//N17>&<%[]3S^]+@
     505MG4I6W]\[[^YJ\XO5?\KQJA/#&[MF+P%>?9UB/LX;WFG'>^J7O][WRV1?X6V[
     506M)/!QZI=(O\([MQD^)<13]["[AQZF=MSQC`#J]MK+*\`C+M.\^PKO%5[[.C4/
     507MGSN\YG7QYD^J9-N?$.RSOX"Q_:D215[&E5%VJFR8EW#U*'M%VM:K0MDK?VZ\
     508M*IR]8FWC-=;#KTC;<,U0]HJU@]?<W'M%VH%K0)F06+G_BK7EJ^U5O)+:RK6(
     509MLE>L+5Z+.'NEM<5K!6>O6%NXUH,DKTAK7,LH&[3H*];&U^%8W"NI3:X:9?ME
     510MU+PB;;@VHNR5U*IK(\Y>L59=FW'VBK7^.@)GKUC+UU$X>\4:7T?B[!5KN]NL
     511ME+YXI!V+LE>_X`B4C:.1+QEKM\UA>,'\N15E4R*3ZV5B[2ZI,B^4U(X@L_:#
     512MEX>T;2A;-=I>&M*.MF9;U\M"VDE0]L*$VFE2)5\4TDZ&LA>$M=-EY+X8I)T4
     513M92]#%9P892^"U$Z]I^D%(.T>4/;LL79JG.%ZYD@[/<J>?2CRM"A[$9'(4Z&L
     514MZ7`]3Z2=`F4O+*]CE&]\'PT\/Z3=.\J>H?J\#RMC?#T[I-TWRIZAS7'OG%FN
     515MYX.T!T/9,^+/^Q=FY7HV2'LP,I/K.2#M@5'V')#VX"A[!OSY<,*L7$\>:8^"
     516MLB>.M4?!V1.GM4?"V9/&VL/CK%Q/%FF/@[)>0S]%I#TTRF;FS--#VN,QIEQ/
     517MD#W/`&5/#FMG@+,G1VMG@;,GAK4SP=F3PMK9X.P)8>V,</9DL/;8.!M?3P)I
     518MHT/TSN,ZK][,KS-$V=F3VAGB[.RQ=I8X.W.LG2G.SAIK9XNS,\;:&>/L;+%V
     519MUC@[4ZR=.<[.$FMGC[,SQ-H3P-G98>U)X.S,L/9$<'966'LR.#LCK#TAG)T-
     520MULXK>G;H.@NDG3?*SG(#T/FBK'T(D5R/B[7SQ=GR]<C\>:XH6R,RN1X/:^>*
     521MLW,^V/5\<;9^/6:*QQ/&V:/1VI/&V2-A[:GB3*['X="GC;/'P=I3Q]EC8.WI
     522MX^SAL?8<</;06'LV.'M`'?J,</9@6'M6.'L@K#TSG#T(UIX'SH;K(;3!,\39
     523MO=/:L\39/6/MN>&L7/>(M'-$V>$0[=;K?K!VCC@[U75/I'9^*#L=D<EU>JR=
     524M)<Y.#.[46'OV.+L'K)T?SDY]G=[&?1$X.S&M/7^<R75"I#UWE(V5\&FP]@)P
     525M-OKC%%A[[C@;7R=!VCFB[*2V1@/87<$_>YPUP=^M@7/$V7U?=T3:<T?9/21)
     526MGA_*'BQY_+;MO&"4W19I+QIEMT/:"T?9K33!"\?9K;#VXG%V"ZR]XFQW--;.
     527M#V>/<1V%M)>-LA%);T7:RT99?6VFM%>4E8LI;@O27E%67YLH[15E];5M7>H5
     528M9_6U;5WJ%6?3ZS"MO>)L>AVFM5><3:_#>7ZO.)M>A[.^7W&V="W+M5><+5W+
     529M<NT59TO7LEQ[Q=G2M2S77G&V="WO9GG%V=*UG!+SBK.E:Q(JKK#VBK-M5VUY
     530MO.)LVU5;'J\X.^8"TB[>_$G_^3=\M)X&#H7V'OM`L4/7.?0/.#OQAH_G?@G*
     531M'F5-\:E>]5MPZ_OWL<](53]/^:JUP%[IT?@.X>#0O>=Z%=:4<>_-"QO^;:ZI
     532ML;'7KR@[<(U1!FOC%6D'KKE)^VIT'+@&E-5^^][MRLW'[N#Y74N.TRM[+EY+
     533M*,O:4[X^=B?/ZUISSPEIS\'V//751EGQTE_9LW&M!X%>M6?C6D99T:"OE#:Y
     534M#H<:7REM<FV+SF9%T+Y>&D*WH8PHS39OOSR$';,&,$':RT07KF.634;L^3+1
     535MA>L8E+W::7P=MSBG7CV",<JVX.&5TFZQ!/SB[;1C4=:GK3UVQQ_OVHZR<<+5
     536M"V;/V^9FO&#VW(JR5MKM"Z6TNV0`O5!*VTYE[?LO$&E;W?+E9R\.::=(S5L)
     537M#3U'=!YK_;>N%Y;+<:H$T":E/4\DG@9E2H*0+\-A/UV:\8LQ.4Z;F?TB@I"G
     538MI+(7H@A.G___[(.0IT;9"TCJNX]=)L]<$9P>9<\^"'E:E$VV,S[VX.[G.A7*
     539M6OAYID@[!<J6,?,LD7;?FPR?H<E19V3?!_QG:'+<_U;69V=RW#?*GJ')\5`;
     540MII\1>]ZW+"O7,Y)I#[<M_]G(M(>B,KF>!=(>^O"'V1K!TT/BPU(9L^=3WX7W
     541M&$>,/'%%\!@H4P-[/D74/<Y!-D_:Y'AXE#WY77B/=US2D[73'HLQY?>31-I#
     542MHVR*HWU<?7R.U^.?8_;D9-KCH^S)*8+'1]F30]HYH.R)(>T\4/:DD'8N*'M"
     543M2'MLE*G1]R>!M,=&V?AZ$A[!>:$,%\XW/#7,]CS4FXR.F:GSPQEAS9\(T/UL
     544M1SA'E!TXF&/[=3]<?IXHJ\X">UAT;+G.$V6X^D6"^?6X(=WS1=D*>SZN6CUG
     545ME*GSW.=SSB@[4^OVO%%VED@[=Y2=(=+.'V5GA[2G@+(S0]K30-E9(>VIH.R,
     546MD%8?^'_NUYD@[>E0&:ZS"*B=-\K.<I_/^:)L^?V[C\R>YXNRY>N1V?-<478(
     547M)X^8/WJN*-N`M,=BS_-%V:'KT4R.IXNR1SMCXJFBK,_J>WBD/564R05</3C2
     548MGC;*'@5I3QUE&6EA<N,^KZ>/LHRTA].>SP%EN![0Y'@N*'M`I#T?E#T8TIX3
     549MRAYH[^+S0-F#GGC^/%!67_?.GL\/9?>.M.>&L@?8N_C<4%:N>XS<GB/*EJ/^
     550MQUWW1&GGB+)37?=$:<\99;@FV=W#86JW1^9S1UF_L'*ZD^?.#V6GYZ43R[3S
     551M0]GIKQ.;',\?9?GP[M,A[?FC3*X3:L_GC[(!4R>BM.>.LGO8\/G<43:^3L*>
     552MSQUE<PS=F=+.$65G?I+F.:+LOJ\[LN=S1]EB)N1S\C$?:@7WUDA[N2B[-=+.
     553M#V4/>=WJQ5$O&V6WTIXO&V6W0MI+1]DMD'9^*'OXC.$CD79^*'N,ZRCC]F6C
     554M;)3+83:N!KYLE-779DI[15FY.'W4]E^7KU>4C:\-BN`59>-+U8O%;>2]HJR^
     555M!$<'*.T59?/K@)WVBK+6M8JT5Y2U+T):FMV2WZ\HFUX'USU?4;9\+;#G*\K6
     556MKB;27E&V?C60]HJR0]<,::\H.WQ-D/:*LBV7JAWV5Y0M7;,WTQ1*>T79UJMG
     557MSU>4;;NJ]-%7E!US(7)[\>9/YL^_><7;L1<PMC_5QJ&7<664/?[ITT_GZE'V
     558MBK2M5X4R^G7Z5X<\QZO"&6/MT!L=7J^I=49(LX_>I7._9BBC_\OOP7B]<,TM
     559M,T+:J=[M\SRO`67[46["JU1;OMH.P*M46[D64?8JU1:O19R]BK7%:P5G_"L<
     560M!>UE7.OQ#$):W`SJI5S+*!NTZ"NIC:_#8;-74IM<-<I6\D9?;;7AVHBR5V.M
     561MNC;BK'LUUH9K,\Y>C;7^.@)GK\9:OH["V:L*Y>M(G'&A:8KD2[N.7]3$@MYC
     562M]_IQKV-QEFGQ)9/:=I3M)UNE7JXRN&V^P0O6!5M1-B4RN5ZFM7:7M)87:JP=
     563M06;M!R_/F]J&LE6K[:4Y[D>;LZWK9<6(3H*R%Q8C.DU:XXL*$9T,92\H1'2Z
     564M[-D78W2<%&4OPY,Z,<I>A"MUZKSV%Q!5NP>4/?^PVGWLGP#6GG/2]^EQ5C+E
     565M'WMD]W>=%F<C-^*Y*H-3H:SI<SU/"_<4*%MQ49^C!SK*.;Z/!I[?1I9[1]DS
     566MW,AR__LTGUV$Z+Y1EHGW.5':O7-FN9Z/4'LPE#TCH?9PF\Z?C5![,#*3ZSGP
     567MYP.C[#D@[<%1]@R$VL.?H/'DA=JCH.R)+^8]"LZ>>+[W(^'L2:_F/=Z!0$]V
     568M7>IQ4-9KZ*?(GP^-LIDY\_2LCL<^J>L)6AUG@+(G9W6<`<Z>G-5Q%CA[8E;'
     569MF>#L29D=9X.S)Y0/<T8X>SK;S!X;:>/K:>3#C([2.X_KO'HSO\X096=_<N09
     570MXNSLP[AGB;,S]ZC.%&=GO2GC;'%VQA[5&>/L;#VJL\;9F7I49XZSL_2HSAYG
     571MY^A1/0&DG9]+]220)F@['_?@B2!-T'8N_L&309J@[3P<A">$-$';.7@(YQ5$
     572M.W0!:X_O(9PWSIHL\-BF[OFBK'T@D5R/ZU:=+\Z6KT?VJLX596M$)M?C2;5S
     573MQ=F64UX?BT'/%V?KE]#AXW#H$\;9H\4]GC3.'BON\521)E<^D.*A_9BGC;0>
     574M;0\;]WCJ2.O1]I!QCZ>/M!YM#Q?W>`Y(Z]'V4'&/9X.TAPQ\/".D"=H>PD=X
     575M5D@3M-V_D_#,D"9HNV\OX7D@;;A$)>C[;>09(DV2`._32WB62!.TW9^7\-R0
     576M5BY@[;Z<A'/$V>&`[=;K?GR$<\39J:Y[RIT\/Y2=CLCD.CV#GB7.3@SNU`SZ
     577M['%V#QQZ?C@[];4_^9'S+P)G)U[E>_XXD^N$BWS/'65C)7P:L?8"<#;ZXQ1B
     578M[;GC;'R=1*J=(\I.:FLT@-W56GOV.&N"OYM8.T><W?=U1ZGVW%&V2+*WY\_S
     579M0]F#)9/?-A[Y@E%V6Z2]:)3=#FDO'&6W.C;@A>/L5H&U%X^S6YAJKSC;'6VK
     580MG1_.'N,ZR@-]V2@;D?167?"R459?FU7!*\K*Q12W!6FO**NO3>KS%67UM6U=
     581MZA5G];5M7>H59]/K\.ZS5YQ-K\.[SUYQ-KTV[#Y[1=KT&B5_MWVX5Z0M72N[
     582MSUZ1MG3U&UOF+M4KTI:N2K9-_8-7I"U=(]DV]A!>D;9T33:VU"["*]*6KFEF
     583M3+7[[!5I2]<D9%SO/GM%VK8K&R#B);PB;=O5;Z/"'Z](.^;BS6<7;_['O_S7
     584M?_KCA8[=[R[^X1\N]M6_BZ]77[Y>?/KQXOU/5]?O/_YP]?GOGWZZ^?CIYP_O
     585M?_K-J&3^U\-2WUW\]('J_N=__L?_^:Y1^^V/?]+ZS]_2I_GS-[_MJ^G?7?QP
     586M]2/7^OSAXU_?X<N?U)^'`N9W%U^NON)97VAX:'_''44KOWWS]:WZYB_.??OU
     587MK?[F+SY=RM\J_ZWD;UN>Z_QWD+^=R7_G\L[*W\;FOUU^;N1OF_\VN;[U^>\N
     588M_QWRWTG^-OEOG>'9F)]G>";_K7W^._??Y/[J_+<N\+O\=X%?_M;Y[SQ>D\>C
     589M\]^JP,_CUP5^_EO%_'?&A\KP=,:'SO!4_EOE\:B,CUQ=972HW-T\^EPX7JI^
     590M"MWO+O[CZNO[?_WYT\=//WS^]#,FDEHE\']12N.S"_Q)`_Q+HE;^$A,^(CZH
     591MDW\)>!P\/E`\T$#_XE'.`X9'-8<:F.&_.!0![GF":+;IPZ"N00T@^2_2-+>I
     592MJWYZ(;6/O_Q\]?G]UT^??_MFST-*>80I3V#(?\>,()LQ$O($^8Q0JZ6^SL^=
     593ME[]M07C<CR:<$#YT)DAG?K@";WVLNS.EE^G\#_.]/S"?^_$$[I<F,`X,^GG@
     594MS/2[B__[PT\_S7DVD=#9(B/P:2M)D=0!29'TBJ1(II84>6C*%=X#$@R(7Y5'
     595M&2W&N_PHF(*04LO[\LB61UD8&)OR(]^CL0!T77F4)SS9\J3TPH=2J0@'EA)X
     596MY/*C5%IB^<1/XI@>C2D]=TF>Q-*0*1WW7:Y3A(@*^8G-=5+I`<L%AI;KQ")(
     597M5!FKR\B+I0>Z#-5E8DL%=5T9JBUU>C&FRY-<)Q:!UA4<V#P3H?2@*SBP>2)2
     598M(?I8<&!RG5C(/Q8<F%PG%,$7"PY,GKO0<V3!@<E3%TL[H8Q4YR?!EB=EI#K/
     599MG"_MA#+2PNE%<FA7>JWR+/@"S95>ZSP+OM2QI0<J"_*B")7-/9AJ1*5S,U/5
     600MJ'1N9:HC59>G>JHLE<JM3[6F\)&9J\^4)W.J1E.>RJDZ3;FO=J)&4^YJKTXS
     601M'84\B47M%C4;\A1.U6W((S,3-1OSP(JZ+>+5YW'U:CD5LR+#F:ACG\=K)FK8
     602MY_$6=5S$M<WCG8IMF\<[5=<VCW>JMFT>[U1]FT(N$[%O"KF.U;DIM#I1ZRIW
     603M<ZS>5>YDI262G:OY/6GG$/`):4.?#I]:X5/Q?44R@)2WP6=,_&GYL\,G9"M]
     604MHKR#]J1/+F\"?W(M\!9]<JV.(71<JP,$FU#+<A]L0%WK4=Y"CM`GEV$;1+-!
     605MH4%-]`E#0G=L*W1\GVT34AYL.+#EP*:(\C`T%!L>)%'YDXT+R^6UXT^N!<1F
     606M>R<!0#*]C6-[>X9-&396N$\U>MW,.I%Y<L5<M+H05)8<JK=459G<Y(O>*=,>
     607MRZ.8Z2V6)ZZGB"R]5&]Y]K15I('J>AG>DUWFCZ(KYA*T)=G&&DX773$UO501
     608MK5,;3!4LA&YL?*F"`^?'5EHJ_*_'UIG/]Z=66L57P^3X@];:5)QL%P/[(]EZ
     609MW^;?_2'^#2TK+\5%*X_LOP\?O_YZ]?W%K[_^^D[%G0X[T^V,*D6(%E8,0:KT
     610MS5#R@.E'1L.RZ4=VP\Q)M(5HK2^2JY@UUN8IL,4TL856K2E$4*2XU::015&5
     611M*IL35O4ZLL!1!4Z79\%V15T6SC.IZ,-DRIVB&6*>)!.+;HRVW#%%B^9QF5#T
     612M7G#E3FG+9Z/"^*(SBR5J?&F]&(;&]6YH:;UPB'&E]6(-F&(`DHU;S(#2G]X=
     613M+HQD;'%03>F/Z5WBTA]3^E/,-]/K25-ZV+-,,;",+CW4I8=%*QI=>JA+#U7I
     614MH2H]+#QB"A.9(GB,*GWN2I^[TN>N]+DK?>Y*G[O2YZY(G=1;#:'<<>6.+7=,
     615MN:/*G6)3Q")T8K&&HBMWBIZ/O7M91$?(?=:%-G3PY4YIO3@Y.I3P0"\I?6\Q
     616ME3Y[7^Z4/OO29U_Z7.A'%_=$N]*Z*WTN:D(7-T$7^M'%#='%OM.V]+E8CKJX
     617M`[I0E+:ES[V59TJ?3>ES,?MU'P@QI<^#[5;ZK$N?=>ESH2C=2^!"4;H8[5J5
     618MUE7IL^JML-+G0E&]6F:[0KZ4/A>*TEWI<Z$HW94^=[EUE8HZ3L542T7F%XI2
     619M29<[Q1J-N<^J4)2*Q18H%*5B<8!C7ZN8$B&/5(7BN1:*&GSC4%H/Q<<N#LE@
     620M0A2*&MSF0E'*ES[[,M+BUJI"4:J$4`;#PY4^N]+G(N=5H2AE2Y\+1?5N))D+
     621MY4[I<_$/E"E]+A35NXO*E#X7?:$*12E=^EPHJC=W5!^@*ZZ=*O2C5.EAL<I5
     622MT3*]MZ>*EE&%?LB(*W=*?[K2GT(MJ7CY&5]%Z12Z2,77+]Z`+3YY_EL53SP;
     623M8,5CSBT&7?S7;%5E^"Z/K"B5XAT6E5*\/]LKKZ*7BE`KTJD0<J%(_KLW6TS7
     624M<#MZ*]]S!-"QE<_6.:M\T?>B[$73BYH7'2\*7K2[J';1ZZ+41:.+.A==+HI<
     625MM+BH<-'?HKQ%<XO:%ITM"ENTM:AJT=.BI$5#BWH6W2R*6;2RJ&31QZ*,11.+
     626M&A8=+`I8M*^H7M&[HG1%XXJZ%5TKBE:TK*A8T:^B7$6SBEH5G2H*5;2IJ%+1
     627MHZ)$18.*^A3=*8I3M*:H3-&7HBQ%4XJ:%!TI"E*THZA&T8NB%$4CBCH472B*
     628M4+2@J$#1?Z+\1/.)VA.=)PI/M)VH.M%SHN1$PXEZ$]TFBDVTFJ@TT6>BS$23
     629MB1H3'28*3+27J"[16Z*T1&.)NA)=)8I*M)2H*-%/HIQ$,XE:$ITD"DFTD:@B
     630MT4.BA$0#B?H1W2.*I_=FN=WLTW*[/!>L9HJ7"P4CVD54B^@542JB442=B"X1
     631M12):1%1(\9/9AV?-(6I#=(8H#-$6HBI$3XB2$`TAZD%T@R@&T0JB$D0?B#(0
     632M32!J0'2`*`"1_B+Z1>Z+T!>)+^)>9+T(>I'R(N)%OHMP%\DN8EUDN@CTXM5K
     633M;HOQST)<)+B([[*ZP3*$I;:(;)'7(JS+J@?`0T:S@&;IS**9Y3(+99;(+([S
     634M2@@ZRCCDL(:LA$@8!3$$#I"@+@L,2%L6M2QG6<BRA&7QRK*5!6LE51>B#:$8
     635M]Z'H2Q^SI/;%>W%!%=F?E9`KZLWU=E*QX+7NS8BBNOKJ635DE5%UKN5M9VU1
     636M["?7&Y&]8=<;;44Q%QM=I=[*Z=5G47]VK/9<&*NM7CW%JGLM1YI$X8(C3:)R
     637MQ4O^VT=R:]]__/+AT\>W/_[)8LW$_?D;<IS_X1\N_OCIXON_O?_XURNLYG)S
     638M'Z^^O_KRY?WGF]W%YZNOOWS^>/'K^Y]^N;KX\.7BO_WQHH?T76E:=0?<;J56
     639MW&ZEYVZWZL,M)3!35CAZ(\6D_DYQ[$K,J?>$2Z@^]0YL@=L[U"%#*;:J\>5&
     640M,25<'XDNGFF.H:3>Y9VLW)E^*:\XF";?*/:0*>'D0O:FQ'F+A65*(+IWM76)
     641M3/<+MJJ$L(O;F&_$P2/,-TI/2[RNV,8ZE?!R8:2R6C/X=>5&[]:5I;W>@RPK
     642MX;US.%E*U[[<Z(/R)?I>>MJ'XWLW,#<[>'CEQN"8E4AZ8<URHW>G\HT2T=!#
     643MM*QWP3+0TM.NW!BXN\3EB^68%R!\[WZ5A?K>LRHWBL%?UM-<L<'+0E$Q;U6)
     644M(A;[5X6RS%7DFD\E"%O\DY)/4'HZ35!09:FDN-:DXTKPKU0IX=;>->G7G(N/
     645MT2\/%/<A!P1[STGG5GH)K,J*8^EIO]B9>UH6]VSN:%EJL[U#4M;1BO=1_L[=
     646M'-8-LU@M?Q<=TL>R\_.R+)6[Z,O:7J\B2FRYB.42H,[/2Q"TC\N5\&=AJUQ_
     647MDBI1,%*6R]0@W95I^1N.K3?7>?Z4#`3V&5A76[8[+5LJENU%*QI9_!#6Q):3
     648M$BQ;=99M./$Z3&(;FFT#P\L%)LIW?IH]![:G6?,;;L78;/%?]E8^MV+8PS$J
     649MV^67Q1;7;.WI)*L.8AEXL94O!_N8G[(?HGF50W/_BQ4K-BM_SS9H)U;FY6!9
     650MLHTEEF*V"^4[/_5BR8E])M:;%?N,/_F[%HM*["W)'>'OW`IWGWTO-I:XA6%)
     651MQ8G3P2.IYM,N9'TXTR^OEI7-0IZ]M]_?*1:$*2S11T<*"98H6R@DYL9_$XD/
     652M?7*+RPD-)EWDN7V3AP8>V(]I?K],\[YET:BP9-&HN)QU]N7JYP]__?SIE[__
     653MYJ*1;-9#2-\-)=_*,L-;66((;J>T@PE$ALIOD!Q8?M,_%?F&[F_HP#?,4*+3
     654M?,?V=\BS?E-J7/W\]Z\WG.7VIM1)VI=>Z>YW5:]*]DJK&V[2#;7:!'%*WP09
     655M7#]^^GSQ]L,[]=L/_^F=T[_]<'GY3?]8?W?QO_L_S'=4>>C0[W__IP]#.HW1
     656M[KN+_]/WKFY6SSN\4],>TYW2/_[>&.7:F+I6#;W3DV;,SK3Z0],\*8@[_93L
     657MTB:L:S>9_!#6NFRL;8&=S>7JN&USX%.R5'K2,R*R,54ZL]9*;/9T,WK]SD\*
     658MXDX/?!>;Z-VI%BPTT6BTX!3?F[!V\TY0_['G:(X<W,>C!=+=V9V=DV]_=P!$
     659M=W;:[[2=()OOXU%-8CL;Z?^=\`Q,C@LR;@M;=3MU-S:YU3S.H;L&HEP3UUUC
     660M0!A#&1'F:6F^F]2#J9UV9[AG)O=Z)N.Y;;0S14><@G&K`L!OX5W=39&U*A!4
     661M&ZJ:CEI-^VI6A95*;41/&4&K:6]7!0N9>DVPW;2W4]%J]#H2FM.E+//U%+CF
     662M?2:S)BQQ0=B9J?Y6.NV44KLDY=WP(!!L8F*5]8"O&B`C(M*/:Y(Y^>,[[<C:
     663M:&@4NJLU*D\IJX#T`SL$DW;>N)U;&#T.Q="[,!.@)`/I)C;[SK"<L">"^A"+
     664ME*PT!G&(P\9JXPKN!EQXA]P,0K9%YR?HP$/4V3D'V=AB?,(]E2+9F=3.I*G0
     665MD?K$D]2]*;U1'7KB\4J<-.DQP>(:NT##-9,>&WZ2Z`%&,^AH;-TB_&"P1#UM
     666M`0IQHR'3EQ0&'C<LGNJ^&=VGT>=9&GH/D<1C"U.ZXPH!$BI#(<QB-K59$(\S
     667M[345,7I5Q.BFG)]:4''5;&E+D^/MV,WV9AO_#=P/=FA6`JWY7E"0JJE>BG5I
     668M)O<&]:*PU;Z-D=U<)LS8U+HBU`9R(1J?<24YS3L[%4ZJKQQ&]]K6%XF<,.U1
     669M`"</HU&0CV[!%*#V"7E0J#,Q;$#%(%T/.I^)(CP-XZ<5:Q/G8G0L%?'?SJ3S
     670MCK?\\M25MOVH9Z9C#NNAAX6Z3<3T10!I1L;SAV:$:\()(5:ST*3_83H\EA2.
     671MJQ<`;MYWHJG2]\;(JJ?#R(!NQKG*`KG2S!"_I$IVAG#2X3_KFH81U#+2_'24
     672M#3,8X]63P9"NF<X-5;5-G#OJU524>2(L;RN;EX;>+5F]LX[S_$YM078%=FYN
     673M!_#M)4.Y#+>VE<-.3_'";@#1XV!&&YHO&D1;AT>F@(8PT\Q3#4/6,TF;F3IQ
     674MAFTAW?M%K@;F,K"F4>[9>1%;:B;MP-AD,<R=(7H"XWU7Q)<==][U?72M!_V$
     675M.J(&`I[[</)XPP8]LJ#)F[HDW[6SNY7#NJN=UDWM+_5@J0]+O<CW7>/^R/59
     676M<G](-LS4'9/^G(/2;LK]Q#SE9F4W@D<F_(]6[$1NX9Z0;1S=$X9.HWM9V*MN
     677M?+?M'WHHCUGX!+;Y;LJZ$2.MG$0-2:D7'(\IF\S<)+MJZ82F'3(UN71:=8I\
     678MVS^?RL#5CFPQ)V>R?Q6DVN0%WT\$2\U"0E.I-1?[W51<ZO7QF=A4/V:*=SMU
     679MR%4W4YAJJBYM1L/`+7$=#\JW70(-F3VE!%8/[7@I&&7J1XHB@TJ<SC_=V^G*
     680MX,4Q(L2LS9Z8N5JVL:&5.[N;T8"&ZIIJD8C&%X)Y@?I;<*AKK-)(AO[JSL2=
     681M:_M^=JX#_6X6LR$)XF="F.1^$[O4>IC"A`-J![LFPB=?D,E0RZR%>WMO9)FQ
     682M+"-;+\QM;,4BS++!2"#,U*?`<_(SJ=^Z>E[YT)XC(XB0)`<X:6K+82;Q@U`)
     683M'!FJH*?.!RQ-6,-LDE(_8=5+F5C-?F,@J:*#UD!&&J#'4F^LJA$-)HR%2)%L
     684M3/"!D*32H[%VH$M/H^1.6N$?50EUA$#P!)'7#NX+3&@N5`6#8>Q19R2\L(OT
     685M*^0.N3'>8-I&AIAPQ(>0B!J0ZP`%"@R6*16"+9W[75G\7J!@?-POPG0["$/H
     686MHVFB_M"$:*+?J;\&DM2:(U>8+W0\3NF>;N(Y1[AHJM"EF:=:S[?OZOFN9&P$
     687M?*I.3QW/S(2P&$@'Z*C-4Z?M$!HSA&%+9G6B#J<`;]NH753M!9BY:TH3-UO8
     688M:_`'D1WUO.4V@XRG,*F78>AA(DPM]F<J:4G^SH2L+8&R47_\S%N,1#T+?4Q3
     689MNY+H3*<T*`\XJJ[IVA.[FSCOIC-VY@>P(SD+J\*]529,E2L)`!N[--5RVF&N
     690M4U&1E?`@P>.[I-74.E31,'U%EWM428L4$&OL0LQBMQ84/&9Z!B_R8BPEG$;O
     691M?.?=7#QXDR#>.A==4\8;M!CT+!2->S2Y5NO@=.6,!^)^NFU2L$U[B2.Q\T5,
     692M%6#HSBFE*X'3"?$VXJ(.,G`A<,W2V4[CLT+9'"P=MVP3B[@P:%;%R@2DO[#$
     693MVHBF:->(HE@WA)1&03#?#H,-(:)1),PT8V%+W@*"-D.XIM(-72N"%:8A%DOX
     694ML`&R>BD^8<1Y9U66M9E$T(H+3GH!@IPCP^+GBU^N50X6V8Z=;@X<@[*@M?#>
     695M<R&"&/S4]C$<GHLP!R-$+?SMCH%WN(/H!+6&1J`XL39@V=V'"O/0$^+1>NA7
     696MM^.@.H):B8-<,,30?Y*^F6K,'1IV=VG8CAIF]DD[TL&D[>F_Y3AB@"P!L@TL
     697M,M'`$:"M!#(L@DM8BSBN:;>E::)<=?JF!V)'Q%0Q^6J8)5BF2?*#%20KT=1H
     698MQ,CIH+=I/@C7>!30I1QMU1(:[-`XPXP@5X="-)@$,1#P=TIL2*''R=HP%=M$
     699MH8E#MZDW(6$5)41&N1;Z$'3!A28#V+"O;J,@)K#MZH5CP!*:*1PE-'H88(7L
     700MO!>SE!A!ISA1$:`]MAMX8:N8J9(`!-D(`P.-$\>!Z1*U&)D%J88O$3%Z8ME8
     701MB7R1GZ-YLBP(&@#(;Z&_8\S&+\UAYZ<:B9?J\_08U9M'&N*<=(Z'Y>6D/UI^
     702MR-B!HF1Z[=#.;'HR3-`-E742:!;#%-8B&TW%^F)EWC":+6,6_\4RS,:A91.8
     703M:(/_LV<&BH&+R.P)\21HLCK'DR)XEL49<2[ZH_$GSRQW.+AL(53Z5K&0$ZD'
     704M<*`!<`A+PPZ8-VRJ@E@A`@U<NUWD+GGNF8ZY'YB\E"UAG_\;39,86=C`?(0M
     705MBF$`R<$7BY(0U'`&R@*@R5Z).":>8_9=QICT&R(Z\CHLRS"X(+(.V$FD,_`D
     706M&5G`PVP/=E7E6!S;'@=S9?+5$0V.%Q]!TC-E!%KIFLJ(8\!%2AVEC)2[<[N,
     707MDJ/;]2-Y)#A4L??SLJ\'N>.$ZQ8$4HF-&W`J>.]8F:3"*:8Z'C'5\10-IB,:
     708M3*,YSLL7S/[X#[?<\/P6WH2$16.\)C!PSZ+ZDW45KDG<'W-(J1NIWJ/,JS@V
     709MK];$F$FY\N#H:#42HW>RL!Q?J@,IR^(AJR?/*XBN5!^\*5VG7DE59@>6]H%%
     710M/VB9C1W+_V.7Q1_G=W03DV.=FET&,%"S-B.^6E4A(MJS>A5D&S_1($'6,BUL
     711M/L=SD3",Q!Q/AI,`,#3KV9^U(Q5?1'Z.\.0H#^LI5B+>%NQKYS/6;9X*S]/@
     712M_#9C!QWLC1WM1K97R@O5#>&R8NTX.[%VMFMUK)KU6EW[J:W!DZNK@%4.6MFN
     713MEW:Q)PRCNTP./95$OL-N7_Y/]&&1XF-XX1[=@+?G8)2H'`LCO.H2W*A$W@"!
     714MI72)CN4(&<?!'-\FO,3(ZMD0W0-3&N(4E12>T!TTI'NQ96.VZ!&M0L<=LQW#
     715MXL`;\8_+T09=R<0!`A-E"<7E<!S;H,NV82B4W-N&R#KE_]I3OY'/E#BF!W;R
     716M"3>`*HGR$;6ED%WLRD(<(+"@*W&_'/N#L9.<W.YL;Y)9Q780`LS%/L,CNI7X
     717M''GYKR-5@V.O$7%C0B"P;!G:'%4DB6M\#LD/,K6"P-JGQ!ESK-%YB<_YV#,>
     718M9(@5,2@A/BTVD1(FBSDO@2UASS**<UV<T&3BY`4F!@EC$N9"=NN-NA=V.TS<
     719M*A0X0^#*Z'O%4<C_C:5JY"LX=#%Q$$83KR%-,`ZP"$,E)E1%Y<Q._EO/B^M@
     720M*:WY!YX@Z)GE'-!B^<=06X&P0H\LL!BYGN%G"4)3%65.70\<;I?H=L(X@'K+
     721MMW1*/3S2*:$LP54.NAZ4(@1P%'Q85I9=MNH[O@^)C1_'>9Y:Q+@7>U]DMV:W
     722M*S(FB.OD?TBXFV3V="#+($%V!KX'INEAABZ9'`JNHO-J)_\)R_3?@FF#Y1_+
     723MDTG]AO$#+$(GH$]HT+";85%'$_)05?%3W-0Q0'S+?RA[:'L1QH9O0M?*/6=,
     724M#[2*BII!R".%D?\KS!7:PDQV6LM'@*V%2>MHO'CD")?X42!$S1X6'H,XX(_3
     725M;X*%`KCM(&Q3_J^BI&AP?)/L7S(162^ZP#<3Z>H>,&&YBQF;M?C'8_G1/%.(
     726M`(`Z')B$/T`X%B@,;&%Z!+4U_Q"E@Y9`'\`&L!(%#N`E-O"H]V`;F(GY1T<#
     727M3<"S'78)B`()D%0/?%>1HAK`5P%F4T>8B5[RCZ&IQP^+">UA27L60+"XV'<5
     728M@0468,X'4R3@,D7+)5";.%;+%X!%&3PA^9YZQ.#'>B9-X`1C90QIL)A.WLI]
     729M;1%&Z%M)*9G"9X-.P2I-^?&=YA_C.8D7R;::W27%M@#]Z3@P+EYQE`\;V:P2
     730M4\IR?<*@%T!8`F)'#(](QA&2_/!#`\,,<Y!><3XTZ4%Z0-,<L%X3.7`$?=<W
     731M5`?S;16E@-[//XE(.3$Y8W8C1`@^Z!%K#Q`^"1!^2M-MY2-$]-)YY:4,`!"9
     732M"S1`Y5+\R+!"1:0__Y!I8QCQT$LALO#@)XAZPUC%`V]LW52]\F"K'#*4S#\*
     733M',\?$399LBY_T$,$\&#M=8A2\6-GRP?I-8@-PE0I9=AQ+M``FPOR0QL``1R;
     734M?Y0/$>(=:R`DH(AS@X>08X_`D]SF)S$4*-)<O5IBJZ5G\H7+CPH0S?S1`1E$
     735M$V)*07]Y>!F6U_P3MX02/L(RQP>Y-7`-`J2(%`,<)[$ZN$I>2T$CUAZ2Z3IH
     736MQ/Z#"-FRU0/]K1SDH@O\B&6)-_)(H3]UF_52CQUE(J3=\*$[-I$2;P2(+"RC
     737M+Y]4@/#,RMZ!'J1(-`2=/X!Q&A8)HRC%&!!Y4C:#1`M<DI\&8^%FA%1]$#DE
     738M.).&8Z<FD/QU4@B:R+.K`DHU'L^&1LMB%8^N7O-G_ZM\:,O6K&QU`*.3ZK#E
     739M4R/^9A/'JAW[$"B2(C@1'RH%V!7)P5A',0846,$R2+3`)?EI]+RB#37<?Y@N
     740MP.\+SL`4U#RCP#P]8Y8F.Y:?$<G[4:N>AJ>R0VBK`)-&;+7_L`X2!Q^:VD'P
     741M-:7RB0+P,BW(4V/)D(N01HCETY`&)DXWLD9O,RBB'E6@:C'&8GY.LCH!4/35
     742M!TT^,X4!^9/@PQ!<I_DAVM`JYH<D3CHW:ILT!LE/DXET,`",029O_^$]88<_
     743MB&\A4+V'<.-/%$"GH?7)RD#7N8RFISI_DL6!'G8$(>:B#(WXOLO0N1TI+07(
     744MC("1V'&$H'Q$DJSL0QK-TA/8B-;)4_@Q$98$/[4$<-)^(#T0\T8<&TX789E$
     745M&-CG9!N#C=EYA,7&TT98)M$%WBD#PI%83Q5B*2O(-MV+MS,+C7-H`R)3=T'\
     746MH8:WXP9E7!")_Y+`(3D<0'S'.2,R/<4W$=?&<F@V9(\'[#WSX)VX78E=7,O>
     747M<P9#]E+.>G'JM+,R7]%Q946G/2MNOMM'E\0C7L>SLD93@E)&8IN>4[Q!D&&7
     748M5X'9OI,X*CP4#JT:J=2G6+C)]L7;AE0M)UU+>%'G2+GAE.MV4-6-EU+O$E1%
     749MS<)W)B]ADL+V$MB=1U6=.QW/XRH\9RN>UPL\[_Q))M<*I@_/;CA5<THB&`>:
     750MBR>=5/`E9,BV64VGY=L^O.D<23ZW2:#ZT\NP$O4A<UGS%L1!AGFU),/\_82Q
     751M&`B,K82`9=HHV'V5XP,O%?]53NED2ZOCK$BD+'!@A]-!.W[DV+>%%(,W#H>=
     752M'W,81X`@8`)F2XBTQ!XN_HX:"[H1_F?H^+?BK,/0:2Z;?`6<S$N;S5A?YR!7
     753MSCZ"GP$4Q\$W"#;^X*`/YJOCC;4<@F/!RQ/+43C(%L=F&AEF5J"8)$7P`)&#
     754M`AY_*W)000].)XDCX`L-W\"FS($&Q!B&-F#>JF;*V&W9?O.:W-VUU>:FIMM=
     755MW5'+C4<OG8\7LITL!A^UHMRKB:-6E">;]%B[20:U%9#F7K*Y*LTD,\B\3@V7
     756M?%WM$B>5($(5.$`@:QI9:I";GV4%YU2PN+"\CB$R9^MR"A('^^642G^))%2,
     757M?M,G")<D8?*`#`(.</[R(@O[%[)>:"60;1DK>(:&;)'/6U8O@,!^]2*V>V49
     758M1=(K!-DX8>?A>K60":2'3"#)HF6+Y%$S@0QHB&8L<I@])\.WEW%/F`C$*T*2
     759ME,6K$AW/#<\/W85"Y,S,C!AVCM&M#H^LX()#Y_!79=RAK#-M7&IRU5)3G0@D
     760MC,&B!&S-2P=:J"9VDC:'6)I=YC<Q6S"Y,:_"WH[?JG2A*K%M=?$2:5*\O9-)
     761MV?*N'7^2U#9E;]F9T.=QG;`SU8;'6Z24A1UV%-U/2ED5L&&.$2:"211$UGAF
     762MKHY;`T'COF5^\M*MD.>/EWR=SW@R43K(@^N7TQS[0CQ,7@[#!$A@G=?3V>01
     763M(M39HE*A(0.6L@%YVU>A)QU.D@T89QIUR2V1_>N""#[AY$XJM<I7`IC;Y)"X
     764M;I)#<FQ66)6]=(N\.#;@;F?&Z+$1>FQVV-'FFM9C:<$8;$L+%N!"PJV<7!EO
     765M7F/E!>BCI465O201!N4;)`\E(HS>TGM`0.19@@EP',E7V4O9#]6R\XU/N@GR
     766MT_%V.]9BLLH>;6^BB%$B?JB2-??`$=?#B52)(5>95-.MXK<+0O2$MQZ#T*>)
     767ML&QM[50!%EZ;/!1?J9*+>#TT__#B)B^GLC;B26./%+.JO)@F_)!)F#]8R;`L
     768M1PE98M4""B"Y#/?)ZM@WP.2GO;=YC3J'^^"6((G$>E[N!Z7Q(DS?CNI25_8G
     769MZGN)TU3)-1OB-.9T&9WSM$I3TBJ;8:HJP^A4(:+U[**%$%&=7#18]J?)Y9ME
     770M%HEO4#*+@G@,&1*(NYLF%MU#HEJ5J\1!'U<2YM`EI!,AF<VG'IA/-B^O5TE%
     771M)Z'850':HM9*?IXZR7%32F$&-*04UCE"IR'B31H6!-QK6!,FGITJ!R&5+;UE
     772M6R]F8M7=32UW][;6>)7;`]-D-WS`,I(/]K?$<\^?[#"+_A8?,9?A\>9/;B/;
     773MU;DH0V-;3[YR.U):"K`69AZK/K(X%A(3V22209A12#\_Y4D?=6"VS]1&1S3,
     774M'\DE+)_31T)&%*<4=*`L_K`>NBT9Q&<ES<T##41["541S=46`13+E.B1L90L
     775MIWP%@T"O(4KUB=/K$CJJ$O)_3/0(87-&`/$V6"ZG$"`ZG9`T1<!@?250H'+1
     776MPOI)`2>#)8*-_"FB]A`[Y#L9N@^QX^C3&M>?5.R7SXO^_F_O/U]=_UW__,M/
     777M7[]<_:_54Z-U^&YT>+*RX\.38WUX<L+AR1/H;W_]=72$LE$X0IE#]?5E-EV:
     778MS^TA-VNHZ`]4D:-^I.+PM^W/F'(]6-_#DC*AMZWP5RR'!)5#J/CLJ*'K4JI7
     779M3EGT]F<-":\;5KNOU\-=PPQPUMCLOW;E?W?GMHZY!K**(Z+"O<(I^C`+__7J
     780MHQRQ_^4W#28>L[(QJZQL;,7*QM6L/+0RX^:0N1FA#V1`.@_VY+4ZJ`GZ:V>(
     781M[\(;#J088K?XQK/RLV\0KGC#@3(+"^`-KY5Z]T;.6R4#'#J&525]YP@F9\LX
     782M2>$E@1?>\)H_YPX/:%LY*;\,Z,/'KU>?-V",!-JH"H[-__G]UW)Z?L>DU7V#
     783MF?MFAS.(@!_SYQU]6GZE$.(.--[NHH"TW>\.@`0E3$'J$4AXQ6_P48%5A\`J
     784MEFL=!Y3TK`%5.HW/E-LQA/(W^*C:V4"3WW_Z^,,OWQ.U'$:P72=)6Y.D'9%D
     785MW\B4(BU3)-XPH,C^?J,)46^(S,C<"41AW1M0"DY/-*9[XZ/KWB#CS/*M`F&%
     786M@+)2T[D;&T:8)B/THQ&ZKAJA4QCAI(FW_SX:GC,87LU48>`IE2J>@KJQPE/:
     787M9)ZRJN>IKE,]3QDL!,"8)!>".8JW9+^I7PZ1N9K-S>Z-Y&RIG)KO\5BQ&=R_
     788M=,'9PX2"EUPU,=@#H2G/[\-^K][QP:XLMLV`#C)SZ#'1P<6_J7=_8DD_O&K+
     789MA=^-&GO[7NW^31$R;TRW5^[:W.!U\)V[]C?:[U5W[6YTV%OGKM.-MI>INXXW
     790MVEV2R>NNE;[1>D_<<*W4C3:7EFYU5`JWS+6BFMVEUO34WFBU)^O]6AG4X&\:
     791M-5Q'+:EX@Q>;>4=WPXU*5/U:>51.`.U0&7;<M58WRN]]HN>ZNU'A,EEZGJCV
     792MGEB_8T!I#WL1@*B^U+(W>(FZ==03;6Z4NS0T3JT!RZ(:P(:](KM6X,8]=TM3
     793M7S1#H]O^1ID]=8>^.H#3*E(K`.TN(ZQQ!NTO';H$V`302X_C):/#$.3NDJH1
     794M3C7U65UJHP`OHADCL`.:45K^H#;MWMD4-#?J+EWL9#@T,<"_,3<\<D*<T3?`
     795MFZ=Z1J$A'36^=V@H.B]MZKU'0]RFN8Q)29-V3WCRW*"[Q%0;?Y.'8MQ-N-06
     796M>#3V)EXZ@*)VTR6R,#0W3*T9ET)N6ETF'ZTTK6E6M31M,*MHU^Y!72;=T)<(
     797M8/'&$?*YL7#C]]KP5W]#&"1[7G,?(M76'J4MCU/[&-$-133+,X%NJ+TF]\]Q
     798M+ZAE=VV)QJAKW;55-^:2E#U]ZVZ(%CR#33?NTB-W'7WPE]A3PGT@NNIBX#[$
     799M/5+:N0OI,I+S9-$#&K`#-:$#:G]M'<9F[0V1$_TF$J<O^*:I50_VH/;M7B,_
     800M&QUPE^0+.>X`M9J\D1X$*D%>ED,7(@VE<]R%=$D#\9<,QMWLR=7CMH!:H(^:
     801M(XJ)P#BU1ZU8HW5$BT3GY&,EAR8)K8G1E#"=Y'!PB\`J6DLT_U0]$-\#&];?
     802M[(E\@D.#FI#A+3=)4TB:(G";0&("+5"C;A_)T^510F)$QG+8FV#4M8V7W+5P
     803M0R+#@+8(NJ;1.<(\X)/4\#$Q?+N/3A#H@#:`)GB)%.RU39?>!T".-\0K6D!"
     804MDB3''39[;(D`0`O>2->N(T$!G"6JX"S7)#;S7)$PEH@EG9+NNNZ&91*5U7L7
     805MKIW>7SO32TS2?47BZG<<8=WE8\=45(-@38/8U5GLUH+7=U/!JW?_IB%X26#&
     806M:Y9R2N.W)N:%("7)8>5+VA-[*I8!WK.,[6@H?,=?!I%:FDB5[Q`=62Y#Z-'R
     807MS.Q9##N6;1[2A,2DM?R,9+I`2DQCD#3$5$GS0W=)'G21Y!$\[0$=A=2EU88+
     808MT:W(SP+ZBV>:[[",QIA07],8#:;;TPBH;+P,7@K39)C<3]("1J,8"=C$Q1)F
     809M,V:A:P5FNB0"`V.B)*FB"*[L1!:X(BL-U=>,*'I*]'BIE.8>4&_I:Y:,("6N
     810MX"^9:ZC"94A:Q)[2N1SQLQ&X`<*+F=@P`B&:J(*5#A"#%!1&0IR+(FYL;CGM
     811M8XA2DB0NQ(9SUHI$2$:D#`U",Z/VR->"?)2_N21JMYF?20YP^WB#EF%!BJFX
     812MM-8*V\8D`Z)Q$*ER!_*\&)X7Q(.8`4GBNIA0-$)K:(%J]M9F!4*S$DAZ,'-=
     813M&BP>H#")8:])H*$P1#DXSG0DE%#.0;E%+D<C,E$TB9"OP:S07#+?79*`(MQ:
     814MS`M)71&0T(TASR]1%]0:RI+(LY@ZB\GQ*@GNA/`-3P[0ZWANR#\*'B5)97EK
     815M&1.8'\\RE8J:@G`P67)<#T*-2<ABLI(K(["7-#HH*1*/&"=)/.,T#Q1$AWXH
     816M((%GSO+,J8Y&Y6C&%.)H'I7`.=)I)UJ2)29(U4*#6^8DG-.*QD@019:[#C.H
     817M-7#D&3$==F4P#$TJFCO$DTCLE'@4<8^--ER<B+EC(>W*X*W8.F`XFZ<6V'&0
     818MF]R*4T"9F#<$C/2\M2QAP:?><T6Q@,C:\T2MV@$N`0`Y<_U$Q$EV%6.JX(=M
     819MF8);Y?88!E6_`?AKYV]@W#C(8`+D8241D3D8,J1*C9'YQ^BCZ"?P!E.(90HA
     820M]4-<Z4$BV!H(@'[OC-$R"8',1W2'K1-+GK.7OI%Q0)`]V:Y$KAK3Y)EXHL.,
     821MP0(QI/&E4Z21HZ=&'!L70E.N%ZTV$Q)#HUNDZ8F/")H52B%@A&K"'S$(H*5+
     822MV!4,#+HH.2%<0BOY&]>>:"WB-\P&0EK2C"NB*I5'EXCFK9:)R^+:"=VA*,@(
     823M^/>0&.!1K[@RMNA&0/)D.6,F"1+5=J0#!5$%PX[I4L2*8[&":?*>V+7K/`/6
     824M<`%DO&C.&26=)%QWC#*F5C(!HN,1PR*#;"$@FN;``,4>A$LF!;0^P2%)E8R.
     825MC+<>W4S%(I8<4[&G47O/%6-("=@B+*5.\$58CF0[1.Z+$*_TI:=>Q_**;(K0
     826M,8L!F+T,H8-H\:Q0R!+$<$')RCELUP8T6.^8M*#VML/0`Y&O1Q@;(*@:?86@
     827M\ST%\Z@&$O9=X7OGLXJ2[C`"/0&^(?&*;&"`)@%`Z/"`32+0:F8>#V*F>;09
     828M-FQ[$X1P"4_1)@8#PL8>.,`A:HS8GPE`A&$7F**]*W+",T$+)CK!$VE%0&'2
     829M#O"*`@A9!R8E4#+QB@'U>=?CV#,I0S_)0.&Y$*4$1WJ$0!,XZ'02700C@)9M
     830ML'DJ25X0*8$%/*CYDJQ)*@.NCA80;DCH);!R`!F33Z<ZQM"`929C2%?-(P.7
     831M)\?=`)2.P1$K*.L)5<&Q@:X"\64`]3KR,V!1!K9:.VT%69E\A8^@.JE_FCVD
     832ME#`RV+'8;:@8)!&F[S"A`81,JC%`3`<H5:@-AD%E.BC@X'E6+!9I4)?(D85H
     833MR/2KH<<"5"SIW6L?6)#KW"N2X\X+F;'>59V^CN20:`CZ`%JF1C33DQ`SJ0BF
     834M6N`YD-6NN5N$,!@Z`$ZN$;;Q7D>R)`@TU8Q0S.0Q6(9(THATF.+9!"UVF!7R
     835M-[,0"4SC8$`!3&:LX>%$HF=%\#"+$01-B#`9=83U1%)2,TS2YDE@PEB0"0A%
     836M6!OA-$@!C41_@(4=XPP(/'9BP!`>X3PJZ.S(O0[DHQD/1@F@=1A.@9W$8*EI
     837M0&&_"5,,*&2#@TS)^RN3D46VU0(B:\+`=!X*%L$6F.A()@$Q:X3+1[H-?8@@
     838M>=+)[)1'&`V0)-Q11#L@C+@5D'^(1B@3PAR<@*X:Q&$P!]%?8O\Z45$D9F!^
     839MHH9(:.F4\4RZUUL/\HO@"VH_HIV4-6D0!B'>XZ$0$LQU#+#P-#KJ8::060>X
     840M+-D=A'F$9Z>(>Y)C=(%18N(98*O21`B;P%T6B12RA6(`-3#3,.U'\OZ"Z6#(
     841M1W"-2S$%`(4_0)-G>3QP(SSV[*(Q(@F2>2[P@")WG=M28D,31.IF,(%$,X$T
     842MK%M@I$?F)@@(@ABRS(ILT\#287")*3^P%4/<0VTD0H[7TE-R2$GP=-Q5/*>9
     843M8N9@`T<#L01YF,`H6B(Z)XC)?!68KP@0N"(I\(&%-9^(LQ*":`'`2;XJ&8$C
     844M!M*L/B+4A_:PWJ-F6THQ0S)F`0%(U42WGN#"K4E`.`"361)YY*&>.%$?+C%?
     845M][P6F==$54=F-9)>>03ZD@,X21-TLBI!%@D\%Z-F7XN:,C#%,9X(KC-8)A9"
     846M(J[S+D$MQQRUX9D`Q766[B:$9*B3V"L-J.;2!3**:;`)/*@2[)X(+F2-'ID)
     847M24W)U"+JI*&=$@;H8*HD<!P1%.@I@>-2Y[`]&/`<.03!,+S8"\+HA0""]!&Q
     848M',_\F@CM9%$H(-;=$)%V@@2:I\1;Y0'?P0&DZ18T$%_B)`DT0%U3A@SP1/H9
     849M.Y$P/']#"M%&#`YLY9E!$[-5EH2)K2?BXR`8"'M6:)$9B7O,?80=#RV6B)$,
     850MR6@8E\F+1(52Y08@QHV2%H8Y2:R.DF=C(_6\%)F7/),D>(FX(("V$Y@IA<CV
     851M0`(S>:28`29<^<1$5_S$!!/+69($X9IZLB<9%CH&.$P)*R3#%A#@%1Y*X"%+
     852M)3KN8H+O!-68Q,[J<#(/8A]PT<D[Y>_=S1[6D709#DAD[DG,/4@#$$1[$KI!
     853MT$"3DF`+$L.0>"9/A>:<8"*$Y'!,$`,E8X#51`+;6*+8P#`]82<FIC5$!&6X
     854MT$*N2PQ&0T=V2'AAF!K^*XL*`"4I$CJF3XYI1L>F8P*#D$32/$U%+27-LTV:
     855MSEJ&2P8RD40!;&"0DNYSFB$COF4R,2"6Y[B'">9),D(V-%*&A.$8,!2`0JX%
     856MS\@`FQ21`)!%,R7A$V:3)$X&F#`QEY`%P/:5ZJ!?:((0@.J(4:RUC@-6FB<E
     857M*/`-&G%[GU*4KDC(`A,<J0WAFA2XV_#N:<*),'!H'C=P`ZI+H%.TH$7'\C0R
     858M[X1,&ZSP8<]R`ZS/`)]HDH0#SU'@.>H"EV>#S9.NXE&`85@[D:N.6*GP#IH@
     859MJ!;6E(P"T>`NY6DE-6+9R`9HXF@%&22P`2UYY+\P<`M#53-P7UP/`.?H''42
     860M$Q4-<27!`G8AN(G?049:.@(NPK$R&258PK!*$.18P$?+X*&*=>YLVHO00%^Q
     861M"$#F'A20@BG5:38+J``)$<--1+*!G',^MT=-D%FEHS1(U--1XU$:S-.'!F-6
     862M3QA.0A"?NX@XC$G&2',WY%MUGN<>H4CB/L0!J4'2SJ3]<X,<^&>Z]CD\HKFQ
     863M'*%`8^D29@/1-.DMH26E60AV\"#1$@&/GITT-$4#PGUJR14=A9;\/@L;-!4D
     864M>"`#R_8YM4":F<K(6'AR@W,,%3P8-<DA;I'C1$DG:<47=D0K6"I!Z`3@X#]C
     865M.%CR(H(D<:P9L+DDHR4*DNPE5E888ZRMA+^P%!`R)F02#5._PBJ`QE%I`$^]
     866M]=Q7+``4'E2LKD@G,/4JUE<1!"M-9,L074V$D."9^DCID/"5/A'K!0\76MK0
     867M[)E**W:?93I:<7OVGP"TGZS(]B;7C!@D2RR%R']PG=`%ZRSRMA1/)+O_0J_*
     868M<,RP3+#/GB2&$'@E2@9`_,=20458/H&]*32A$7NQ4;`$[4/`6;XK-\R6`BN*
     869M.D,;-%D>7C*50H"UP(5YDH6*"FSHP!T%6'M9.E7X3Q`3L!3#RI;&#/^M0[2)
     870M@-X0#?&P(_O2K+H`%"%A);7!9BP-!:PGBT5Z@H!YH'^0LEK!'#$LEP%6V$D`
     871M#_RD6'_E/J7+`!=0:>*;V#'Z-/$-R5'X7("(M4!OHT!$Y%IZA]6XZ'/?PJ60
     872MI`*;I,C]JMA$@TU$<?/8(;#(*F/QI;M>!"KFDB1<)DP2<0P6%2)W'MXDH"(^
     873M1.VB@M9LT2<9.NQD1,4`<D![O.'E*H&J/0+HTB?22!*T`U#RN(WCEI@QZ):6
     874MGH)^$W.>AFI*R@;N-7$>F6:".N(%$PW[70#;8UV#%T2E,V#$Z5GH:)!]8O6@
     875M0?:I0W`(@,!';.,!D.&XOP!R'*E`)^)EE"X0:3LB0!X!NSF(=_`$BI+1,E.:
     876M0[:&V]4<.W,<#E.FR^MX``5JCH85O08ULUS1"`PPW5M07,J#"N1NR]0;,KM(
     877M0&(@AJPNPX8KP,'S-9%A05FP;M&@85(H7K`/$A:M8<BRLHZ=:8)X@YBOUT%@
     878M`B&`DR`"1,1H$#/.%],R<BS.L@@QU&W'*PL$$K(?UC<@THSD[QRV-4P[6%@N
     879M^(42,/08,I%[9!!+BDEZ!ZF!&*9TC\QG))1V#(TJ(.^6T>G82",@-P6O!M3J
     880M0V!")S@F*V/-1.F$'8Q']("GT<!*XNY;>+_2.0)B)*2`U@F#C&->8;-$U4B&
     881M,`%20XPV0]2($[TPD\;U&M683`72$W>91"X;,K)L1("-H-Q@!3\R#*H70).&
     882MUPRPE(-.V<+^!(YC\_0MD?7&+1`]BH$,2%IP(!W"O##3\8I=(!,JI6ME._'Z
     883M"<1-9F\#0B0E)D,,[*HP9BQ6>IA`+*_!@LU-JI`DDE.:P,I=X+8M"4<G,V=A
     884MS>.@N\@P=&8)$P9<6#)]C6919#7(4(H6BI%4!%%#DHP`WX9FIMRT1C#`U76.
     885M=RK.*2""M])Y6-1>\8-,,-;>9*V"E`"R(EE9<5*`J!%+ZI@I'^OZFNU(+.P7
     886M=N.5?>\,%X79*/H-J_.D&:+4TX5);,R.!0K?9(+$4KHLGRG;FX8VWEQ*`RQ/
     887M6"+RTIZ"3X"U8*SU2D%D&=@,$QD4>*IXG4.Y?L)XV3S+91M9IS,'..)_44U.
     888MH6RI1CJ#@RW*$0%%^+)4]&8O0L/9+)`<8=US;Z`O-:/4<>)1Y/+FDBL6UG*,
     889M.6D-B$.0A9R#O6A@AY2&P-E$C#,$OJG'"'OQRCIA3-#D4@$""Z/CG"3?B5IU
     890M&!L3J\=X(!QXR8F)S)M+#G;0'-QD"O(V6T:>Q0Y0BY4=5$,G>*Y\N!%^\^0*
     891M@0,]M6O`,X%7KLDKO.$L@.`NKU7L]M<XS*ZD%*@A,\&\RYLCD)QHNB$OP>LA
     892M+\',TL&\F68EF-V_&60E4%M8M;T)I-2P8'`32$VR1WL3R!+"J2E(X@ID1[C(
     893M[$=V>W=)&C,B9`NE'_=2'$L62,627"L/,]9*94=F"ED"/G)>$R',>18H!`I+
     894MFL8BR,M)2AX2UT:!'!2IKX"C_7)20H=P#=OW:``152QZLW2%2(OD_2C11&@&
     895MF3;<AB=-2^X+\5CD=6'G(6S@9N1&27TPTU&3%MD4!NLS.9'&639`B)2M+-A[
     896MI&Z1N<&="+RF"&V6<FZ.`WWBI&,.VE*W/")Z.(F1>Q6`;ZRF6EZPP")Z!RUD
     897MNV0X>(#^\<BB2I(KYDG(DQVB$:1TG.%B(\GWB.-FI5/42])(,6'I6G*RO-\C
     898MZ(V0<Y052!)#"3LX0N1I04]!I60H>LE*H)[:2UZD0S<1CC"$%1QL"P"D/4@#
     899M40<2PC$\5NJZ@?MDX"9*SSV245B34;^#XH`#%ETBK\^1-0%=3`K8=YJ7%6DL
     900M3A%'&.>0<F0E6XK(BRA"YY&0MT&CL##HHRP^(BTD8'D$3FP>72*K73ORP#DV
     901M@]%%7O$Q91;"N#/$K*0\:2+)%M!)VS)((IKD/+R*L@CNB'RTEZH\1C=&#58I
     902M$=T+B0R+Y&P9*A%]\D@:B=Q)#-4B(N4A%3L9J8'UR#DU>C1?G@PF2Y1%W8#-
     903MRH8A!LYK&9U#X$OG>75,@5YSV%^RJ12)PYS`1ZQ:TTX@@4JZTT,<@W:B8,(B
     904M_D9C(L-2,:$2)ES'FD3!>[)YNA,6+CN7YSJ.*!F+8YR/&#S.J.3T!:`&X270
     905M,NDAWV74$*,:<E<USI_T@AJRR!&YAX4#Q/@16P5247':;4(1)[W`9J1^)YUQ
     906MA+@.66T$3'/'@2,R$AP)+*><8&C,Y5AJ\A-L`U/P'K#V0%U!TJ"@"EH*\IX<
     907M+Q9:0)4A5>V+`8\D%UU+G&B1^S4F$&"+5!M)"1)81)(ZH\LBV$N5#'&)E<5[
     908M,G$0ME<)Z_J9DD@2RKH\<#62@U@RT1.Z)O09<%GL`MP6FB#!GT7>;J`_+7E>
     909MQF?\D6K4R"B,$N8$^I`_TK&I!N2%2BHGSKT:<2.PF4`(";$V)]0/=,8]1T$,
     910M]C!TF0>1C8BEMT1"A34'T$GNNP&?*I:/I$P'%8'89QS+$*`W3$<'_'HD8!)!
     911M>1_SZ`B_#LM;'B:A[C(Y0L+31./45RW8-8.^2IY7EVO!!Q2[Z=P!QVQ*=F2]
     912M.HNS=C.2B<?)WB(QX+O()A]R/#2G+Y+`TEY(U*M!>Z8D^7J#M`::S90:L;8)
     913M.]4[E0SHS6?"M0HIJB&2*THTQ$OUAM6,0K8%<3EN`=$P%H6U2<?T*KW3G*I<
     914M*1C".D(>8UXCO".7/!@:%3((O-`:(1ZR.)'_U:70A4+8D5QNQ.:),%,FZT`6
     915MLHFB!DAA%0-#XF&U3L0D3.4(9@'+Z)8($PDSGD-]F`8LS72@4$AMQ@FFP<-R
     916MQY03FV!)$[.`!"_D)`B9^][>Z3AI=M#BF)`P$9&8$C\;/N:$K`E#E.&215Y1
     917MIG[X&9!Y"2?&A3(GYA+K-X:-:IH04I]L>R$>YFNS@^?$380_9L7.YA_38CC9
     918M)W(<Q*7,#]"]1(*6))P6$POY+$1VSF).RJR0]F6O0UG.%2MF$L^*&:LTK$WI
     919M&<UC<94$%DE$@F,5UN9D8N`Q:K`^Y*`3B9>@N;'+2;N`UT@(=T"SE(!?L>@P
     920M*<C]KK4SS8ONIER.B4G[J&FZR&>AYFUA%J)QZFS`PDE@4N")"9Q[1>Z$9TG$
     921M\T*B`SWD.8%%K@?+$W,S-C9X<F;"#;-#DC+8Y""-B:X*TQ"E6^L,]YCTMN0=
     922MD+E`XT((&`>3"\\XJ"G$RD1.D5@JMC%-3AB933P]?BK.,4%NCHH`XT+!7"#V
     923M(=L@"XX(^T)#:I`10KJ#TZL2#`P7""0'_)!5IHKYKB1ZTQN`/$5VJL`P269&
     924M#UA=1F(W:=V`TZZ#./K(IE`(S9);9;PC/<3XT6R.T(`CI*BH#E@CXF"PDS]8
     925MLI@AI2=JFA?<U(PO:)9@M3C"#Q8+R;=799I(#R+_B8R.E))0BX/I0NA2H&.?
     926MC3\R77(8LC+!,4.<%%E;(CQ):28=,$M80R=)!AN(*",5/B("ZDB1DZGD@YA4
     927MF"58.!'JB68;!A,FR9'[R*F:,&YZ[P%3-#&V>)+F(A*S1"*2>H1D&,*E$@[K
     928MQ`PB2T9CO=_:PDT6&HKHP'HD^`@O.<-$R0F#!E90<7PD_#JR)WF6W%13\#39
     929M.3(P3^1Z<Q2)6!44&F6>+,(/)'RH1O"\_H"$*/*Y-!:\`B=*LKTD/AN'=4<6
     930M,T^5F6I,7I'4<\K`RCF1$=F-9*]#&8N5A$0/TEE$KC!"4LKB)<*<(A%`ACV[
     931M#YBIF)U-CA=7_@#F"LN%8V.!%PN[.:-@OM(E\66(VB%SPJLL_,C.\J3JR/8B
     932M&\D6D\SR^J%S))\2YP=I=H/1CU3Y-YBH-#&1>*;B7&#P7"&#@^80TI"0YPM/
     933M89^-QL$(43$+Y[DB4K*@YZA%2&*J[."G27AZ;!#R],Q%)L\/D4_06.-W1`+:
     934M9V8R<+/(4B*2(NHSQ5J`(:80FB9N%A."I@?>NH1[:6K(4R^.9PYWUX8PSX^=
     935MJ1">(-/`0H)U%I`RZS@^)@8*\E\4D@A)=!-'9>I1,,\<20]7."D51YJ#YR/[
     936M7\D^D*DNY452-2<)S@H`_1,W62R^ATYV.V&>R%`'_K#XI<#*,DTDC?">(5,R
     937MO%R0P`!BS[6K@_DB4VUB5O",I3F/\)3!9`.I8>DN,!W)G/&6"P-U1L`4P\&<
     938MD2(F')$)PLLPF+#:E<,LQ:E=Q?,4YK*")PJ1'P@@,C8TDG8R*\%FHUGU!H_`
     939M[B+Z.#@,$12)&'V>*#-XJIB;J5W)L],0F3P]R)P@GS"20O7!)5]$'EEL`?X3
     940MEG`3#IP1H]LB#I]X49G5+\\.FVR<Y^@X5)(]<LR-'=O8/#UFID(P/V2WS1'!
     941MV1*00(H,$4?"!EG!C`K/,1?C0H<WU/?Z"5$74NLN3TW,<0=>N1A[&Y@I9(=-
     942M-*J2#9QSDN#)0JRT`QN0'V#!LU$F*V+9BN0A#82H+HI_1'9<\MC<R9E5"C8<
     943M8BM$'"-7"U.69@:&D@VA<Q[A62-B@N-!+(#,_IC7[S6'?:"%H2I34.(J&)AR
     944M!B\O<B(@,&46)D)(L%DJ5Q-3%J86EY(=IC/!P;/F]A#H"2N?9(=SJIO,FB4F
     945MI%$F,G9P$$M.[2%[+I"M;,@P9\&"E$'$\#D=5,-RZ1UMQ9NLQB:HDKVI,V'*
     946MLX;5=Q*EQ.!1(2,$6RDYU41SMH?O2&VBEY*>EF#6$=>2JV2L8K6,S#WV'[DW
     947M#IQ=H@RR(#0VRQ7O;)VK%5XI5RV\(*$#MIW3J2-90))9Y=P0#>N.;&1D#)&\
     948M--G"L+Q2P,HX1G;.9+49,QARP`4+0F.'11E)LISH7)['U*(<3"2Y"Y"XY/@1
     949MLA!W\GDBX69JA8@G`@YE'CTVRK&9IIC_R<!@7<$SZD8NG.+-:E-+A*<R-/B)
     950MYQ*)QV#M#C:S0BIHGDN.@'78/4OCY0T&/)66&)WD)-.[90].8XE>X@*8U]JO
     951MQ63ZJ8W&L^D:HH:GTT+)1'(7X%F;X`LG&B0<8K<P*3UK,G@DI"&S47-:(N>;
     952M66S\(KP[-BMX;AWGJS.I15@^O>./"9V:LCRE#9',"0P:^2&1!"<9\+`C3)Y3
     953M,@L5"12"B]?7*,2L<HY81X:$\3J;WQT$A$-R$-[4%;)1"3L1Z?QYCFT)C<A:
     954MX=C>5[(?<*:QV*3LFK@+L!;)"]4D[(DMNZA%V&"26>YAPY\(7@.QX3K"'<E6
     955MYXMWP&N30;B#)IV\0L.9#)AN+W$D!2.S]HXP]6FNV'GR8XOF,/DDE&A(9/P2
     956M]LEKED5O3#Y1*0E]X('[Z3EL;5V@N:.)L:X8.T!OU[$*E'3/#CLB3+%YV*L>
     957M/$G,?YA904P!OL6D(`%L_,/V,C*)$9^6%%RF`<NKHM9G9=,E2!K(.%+,Y`?H
     958MDC;I6#9[;!HHN:18VB6.Y?1P)HF1XPTZ<%.[D0G!MD0<*`$KWZ1:T*'@8!_[
     959M;!V178K87@R2@HALM7#I(;J@FPV()],&F:J!7#;G<RZ?8>>3#`ZB#EV,)TAQ
     960M'[%^#+IP0\Q"EI,G1C=H0K5T!*@"44:'N>P\MJB04<!96?#P$1&TL&MSIIIC
     961MZ92(2HFQ$'U2?7C&()L04,5E8U(!EH@FD%@@R04@%"RC=8Y7YT$G)D=]9-%[
     962MY*B`2MC2G2A9II/41#0(A:-"\!\DW1(98D@9AN)`8(ODN$[9QR$+V)*51J(C
     963MYRPFN+8&V"-D%-,-A./WV.*0B0YYO6KLVH%4XMPR86()3<H%M6"1E.8:5D=.
     964MGB*!EG`"0[`(_,*"S/H"B(?12(H\XUSS6@*1(00S$;"VV88CO)/YJ5-.-S60
     965M<UK)=E60CJF]8]"+G]EV3#"N)11`,,AI@<V'W=X=ISII;.$A>!8Z(N((N3Y*
     966M)#8+4:_.282.I1^+-1HF$VBF(:@4'R)F64C?PX4F$DHJL[`>1QDX@V%J(S/9
     967MF);@-7RHBB->2\:57"C-NPI(P\&B8G=;EPPW\AFI*P&^0,F,@T`T>"DB[S@E
     968M!S0K(ICJ."<O=I+:`TI"ZI:&Z<F'A#`9I3Y6@U2*F:<!*E)-E69XJSK1"37I
     969M<PY8QTLBB@P.LMD"-*/RQ>X@.QX^3^",YTQ:."?#$[%[O'0%N6!92V$ZR"B'
     970MP)`D+)`6MBITH*XNITE':".'['F5\X>=EOB78EU4NVP@JM0P&T!5<4_<X4&R
     971MDN-E6&BV9B#!"R!0"$83;8M!:B%)L<B%(#WI.!-33VJ>TTJBZ;#XF@66A><&
     972M^4IC=IW+>@US0_8%U?0Y!]QU(Z\7E!7FAAC3EH=4)/9VHF^0^J6:Y`]Z<YQG
     973M9O`&89'GR!5$&E?B9,C@01VV&*^&C]@@&4SFOY<A1(A6Y.)C([;"\FD.=2)P
     974M;,@&)5IDS@3)Q7V6ILACUW5$`?3F9G8N$QQ9?A9;1D53),C6A@P"!1I.)$UP
     975M>+,N["2Z0)8+Z5GM;(FY<T8ECO@Q2/4VG>QO`!4&3D1$C):8L),0%!)W$8'&
     976M+E]R8"6O7L,$)[IQ7=&,=;P&>4=FZD^`[K"=%/Y-D!Y:'!C4$O](G%.73!J&
     977M:+S//D2R/"'5@`K)G--94"1H0YI=AX!@,)P8!F(DNT=WB$%I<M5*1*UC=1C`
     978M/=D:9E(D$S[@L$Y5E"8'?61X+MU,?#7E9,..)XDA=I62#?X-!0RRQ%XYO(DL
     979M(!VNRX1I>4,!N!#;R%FX9\)$X"#"%L08"V'*>3=8DO<X%":57%JD2W:1E#!<
     980M&9/I$N(:J=.!>+,G2J"/]\\+19(+,/*&0898YL,NM9+5A@T(,T,(A,F*TV*5
     981M/8C,1/ZB;LX/J-/O:1Q8@9?HKN2NTA1##3B:'+)DO70>Q,DYC(&#(C;G6%MX
     982ME&1\)E@M/DM'RVG@EO>E9[),HUB#XB,1"+E:)!&?A="P/T&;R`!%<FO4(F60
     983M]=@U^0?DR0N-1$!(HI$%01`H%I`-2BILX54E(3E!U8*E.@NN<UDSFTC&`!%B
     984MX(BZSTGIG/)`RDF'''4`>=;!'-`CT0X-4JQ*9[%=9&KXYU,:J`;=*:*?C\)I
     985MR3<B4HV=+)IJ(XV@EYZ<84V:"488(2R3/[)_@4<B=D_61R?]`I5BV1KER'7D
     986MPVR%1K'42;H9.U2S!(EP2VQG5%D=JF)G2";4.*E%]*/#OLB)`P9:Q>(`B2H3
     987MX?5UF5Y]2P'!9T161HJ<!ITD>SJQ!@!1,L$2'5MI$`2;L)^9J+-SP19Q:BP.
     988M&""S,!"A8.=K$:;DJ5!5@I!*#$9!!2#:D(,0BIUPB5-R.F0GP^#S+<;.K^*#
     989M+HA0DE5&VG9RSLK<0@#=\MZUI!E$S'G"4`<T*Q!:'7)X=;;\0;GDW#G0)T$V
     990MMHA6Z`,R5K#(HI2\D3<3KB<-1#:"`_5G+6^QG(T475()5K9\(+M+V`")9.-H
     991M`^B5)M!C"442_(EBL=UV9JSQH1M[Q)40QH_"PI;/B&K-$XC6(4-8@0Q!6YEJ
     992M21V0D9:(K7SO]0O16@FP67B,@FT0+;8;8R\ZU@Y\MC!I_DB2T_P)$8-@L=;)
     993M0\3.\2K"`WJE6:1F4I+E/2?[PV>&-*B6+'1.WLNQ*"';U&0ST*W!KAF'W0Q>
     994M%N)`MY'WXQJ<TD%S3,I&98?&0.Y+\,9DQ03"#9?07*0>7-F9H#V;7T3'H!U;
     995M-HC`G>V#:8I/*@F!V%1PY?FPI*E;(X>5&/0DVI`$V2Z?+CB7ACC!3.%("$U0
     996M2>=+%%'#XR(Z1A":E*@F(T@4%T*?'6^[AZPJ'`V2)3N1QDT2@'<^ERB:X;.S
     997MR$$'='&+D*N)G/44LH2-_;X9'V_X*)9.A"96:6<^)I$OMK?3E'ALXNH*!;N6
     998M^G)\4A>V2I,Q$U5>:@$-6^1D$1^1,P#-8TVQ#C02ALG"AR$9LZ7G)1W.83F8
     999MC'RLGI1=%]C`9;%)2KG,D<@C)6%#QI;.-@$"I#IOU5=\TLO$VR>*)54?L?W9
     1000MYLQ^)Z<PSFT,$"T1$);RH)%5D;4:FQL0B2-L:P#*5IWE`"H$3`!+BGE)5`N-
     1001MT6'&Z*-C7XDW22!P`4N*#$Z+()0P<<?KQ\1D9`6F(F@QC29[[Y[3[^O0B^(C
     1002M:(C?87]EW2&'S\S-0#Z*1@X&(1IPJI>S.#FM-4V![;5`6$&L(8<10;50O22O
     1003MR-0%U5K?$ZV!*47`L4H@0$"T<4_T0M*.ZJKLLV-;!SC.%B_*XIPO/$0V]1`"
     1004M`[%:G"OE96^CT&MJV.R@6*32DH.,U8*0Q;!E9='@,<?'Y@4X$\2O7G9M,]%B
     1005M9W[`8A2V0#HCMJ-5DC^)D!"SBBTTB\T_$0M7-/N^[#>"\H>1XTU92T8V\!"#
     1006M5#BZ!\D0G%/899(-<\?*RXYQDK,X@ZV,*O!)0@UQ""\>9W1&Q_NVH^S$L'*0
     1007M*YE%I$H58LJ<TY8)%[$2CTVEG3?9=P/E`NWDF\"C(1NNK.G19&K2^0%60F\D
     1008MD'<N@6`B'U`KH5^T+'(=9OXNCA+:0P9;+3(HTZQM*3`0;82>(1^:QI2G"40+
     1009M=Y/L!0\L@%@&HH4,)BU&AA4YP>(48R^.ENQ%HB384XZ%)X@6YX<%CLMX">]B
     1010MIQ6DM<V[U1`[P?YLE_?E()%U$H[PD3>9D@!$4#FSIN$@Y]S$`*F2B9%8?-C>
     1011MNL/1N<1NI(LZN&7PS+(P1F0%.^P)*4006D)B.-`/#H+B38Q)$87WNY4L,CDU
     1012M3L=2V60#I4)&$Q/D:*;AJ`K\=2%(=S..#_$13!;LH8RD8"H^?:EA#X)(D5"#
     1013M]9`.)GM7J#0U)PE4BI38#DM4G-`HW@=2O+$U.#B<@]"QX#9"I31[I*-)/L64
     1014MMSR#1N&\)XW%HV#+[C151^@"GV6*(&?JBOF92`W,#'8OI^P9"V^5."WV9!F:
     1015MC.,09=DG;#8CV#%)@AGH$IG+$>DQ;`A(1C9'P>7P'`20`C:(9F'*J:)DN."$
     1016MLSPQD9<F.84^R#964*3M@Z9DP=Q<$I9%60M!^IE;122)`\G@0"&NU/724[F6
     1017M@`-1IDNLS$$/E`5G$"7L"#*TL<T;4B)FQUE"+7#8-.R]8I\Z3CVU#ELC>(&M
     1018MT"16N0VR:=(0J$)R`\T=XJ(Z$Z&=^KQ\5)9A4]]W,199B9#J7`EY/H^9*%'A
     1019M^+J<D`M*U!S\(43#QD8WA$=!B8B?1;PN!4=BY2V*D3UU1-LB+`QCRSH<XMY1
     1020M,SEX<*HX5>SKA91E)*ELATAIEO386S<.3!!5>CX'`F<1^I"9*[&?/K<6O$19
     1021M2'@9.`(E9<UW<N@V7@EC$/PG\:6*<<KY<UB*P!D6IC=/$88ES4+30UW7)A-A
     1022M$,,KP@*"@(G9.L7F&++Q5"KK\9;/1)$IB&H4/2*2M'S2)D^N+629&@:=YQ`+
     1023MZ62/%4'N>W:BX*BW)BG)?@8:#$(R)50#VD1`EH1<0FIC7G-BTD0*"S:IDAR!
     1024MO:>+P,0!'<2J0(`7NK1=%=3CL\L(ZQ#)9?IP1L7,Z.8SRY`Y`1&(6!8+,)"E
     1025M;W*+Y\`*<DT,41I1CHP@<#H'4D;)4$!&C&R?8+(DT8F#*I.!N2$I$2!+>TG=
     1026MH*(J;^D'31+:B$H<1INU-U86):X0,;5P(FS,VHNW2D]<HX##MB/-,6C).R$8
     1027M4*1M23,O,17R<'"`G^I5N,9)XW":.UF^$_H".2)U`NH!F1`A.\2*/7#2N1W2
     1028M[$V0[:E!)HGD"2\A=)D6L7T8%B"VZPCY8;OPV(/%D6Z79,(;1T1D<D09QZOI
     1029MEE(!&2)YO\-1%\2%.83L#1_/S!DQ-H&Z=?99088XS!")7Y$\I2[QIFIG.<4$
     1030MFZO(Y"`Z$CL61(@L7$L,`#--%Z?(\*$U>9,74?+-.+`@Q\<Q`AQ+<J%!U5+U
     1031MH$)(YT[AB"S#FQ(R&9*N1S8*30)-*M)S?"%#SL\-D96O$GT".L2B"UY7%;`H
     1032M[&R7O2"#[>>D[Q-6Q5-/A>&2(X,YT$364A7WB7Q..2Q8XH_@)!$G1#EP:&)_
     1033M!8Z*T&WG8&8Z)<D-H+S0G`2?3\\F$S<@M]S+[G(0'_;Z,%_@Z-2\7.$X,,*N
     1034M.P*=0*G.M(?`M5:L-S+=I2$XQP?E89<'/`G+@0D^%V]F$LNI>`:YJAWVAG1B
     1035MG`4^/K+!#)X#']@^0X1,[)=-/%`=3G1W'=;V+)`G\$%T$:M..!@-1R_8[(H;
     1036M;.AV2.GS74]P`3O]D$Z1;7,D<L[<D\A'<B/1V2I60(7$3$L4!0YJ)`3OT(-H
     1037MBP+66@Z``PV1L:(E?@H*(X.:>`-9VTC?59G"#`Y3)37H0^5DX\@%K#A21T1V
     1038M8V<K$AH[K)8*T6*7S\2#