petsc-doc-3.11.3-10.el8$> < %Cəzt>: +? *d   g )5SY`X0    ~ xHWPl<HX(8b9hb:2bGDHI`X Y \ (] ^^ tn)b zd {e {f {l {t {u Ҵv )  * * * * *Cpetsc-doc3.11.310.el8Portable Extensible Toolkit for Scientific Computation (documentation files)Portable Extensible Toolkit for Scientific Computation. PDF and HTML documentation files.^nbuildhw-aarch64-04.arm.fedoraproject.orgLFedora ProjectFedora ProjectBSDFedora ProjectUnspecifiedhttps://www.mcs.anl.gov/petsclinuxnoarch ~-=,))>Yk2T8BG 4 <&-O$+C82s6$(#./})H pN 0TM?3=!,,.3@$tE ~#)(H`%Ym'5u1>3+ S?3a:0UD0*AS!,U &>1M~Pm JN`!2&l/T4?-,gk1|'&+$/gO {N'e*/)yt1(b&# IV1b#lX>^  x4- y#}4%VI~AG A K F  d| k = Lgd ~usCQ  G   D / QLP x  H a H R   o 1 . 0S J3 Q$ 5 p  I  G"x 5  M K a 7 Mq/]   s y7  )  F OZ G [ G c W --  C  B! e Q q K !  7 t 6 Y1 E F  Tk    1=A  : x ( ' 3w  - +  5 r 9 d; ? } 0/ i ; g w a % ,    m  R  9 <    V R y b 9 P z-W s ) > ; 4119  o < p ? _ I   { B k   f 9 ,   E/` q 6~ mI Q5 } > J e 9?3 HF  D1 ) j 5 G  < 6 !  1 T ! 7 j p %n([ T [ ( C# >  < \ 9 5 R h   W l  x + uN 9 <  + 3  l J M  W ; R F  y } b l de@+ *&' NN(8 r 1 + $ y (# B   u - wh ) +  9 /  x 9  G  @} H s /  { o  =    A < W  > )N\  H 4  wl 1 7 h g K g )Z l  - _ = E}  T G $7^7 K,X   B n L  %  _ ]v 7  S !Tty Y     L   v * OR & e   B  j e n   b e x   yL = = O w3 C d e /? p F  L   x  B 8  8  A k \7   P  ! Q    m #  c T  v Iv G 4 <   A 6o l < ^  N @ ) B (   &  < g J; Y a b 1   J /xgh #  m  muc(i  0-6Z w*  b o / ;` _  ,H C/ U ) j W tj  m D 8  7  MY   i Y ". U M;2 e' ,  Y y I <   ] 0  4$s1 .. Z | 2  c U g2,3"D 1+,R _ S 40%g V 2 4 3<2$ M  m )A 4 X   ' L  )  v #   k /c1 U 2  / | mL  @    | ," F =     V  p ] Ur G  J  9AN =2l7$7  u    y | l a B  y O * X   n  O z ;  ML  v _##  8Z g Z 4 W  qE    s [  E F  !  U * a )Tip c , {a  U`* B  1 o  L a p 0 Y }  > u W&  ; s }k \ P F|V %,   - 0  2  ; 3 6  p ( r  C Z x ) 1  # I 7 ~~8! *P /.% Q % g    Q )  r  "v _  HL`!s`: j y  S [ CR ^  e C ;8   - X  ^ V  _U ~  [ M C   C _ wB % Ez T  D U    rd  v7 T ] D  F   # M f i  R >fv o    y  u b{ * x \ 0 G $ Z 0 O L " ? _ _ %    G  c l   ` % T B  % K [ !  yx ] Q Q,R & 1; $. @ k z s" vAJ ) L D :Q= saAof1x0 =>^   < 0 s -\  BM B#{m=) 7\gnE ;^f  sa ] Na  3[ .d  Z p/ Y { e!W  0L/2Pn#d%\wL ` 3 Xz  #R S #@- ~-sN8, = a(Q!H d U     8 ( ( uY![  A B | T  d d) g j y Q  B` - w #  w V )  E  z  G 9 q B 7 2      M:  I  " B  R? B ?105_x  a 3l / - g- s R L w - 4 * ,4 ] R N  "m<1 6/ 8 ,   :- ; )!C < ! t f u  ' H . G J b 2  (- Tc B  K q  C O M  o p c &  X  \ / k I ( ]\ S W k.B F  Z g p:8 f4;X%u AI " 7 > gk * d3F J )q P v  , 8  @ TPzL,3voEK =d 5 Q Fs ,  44  {f 0 nB  y ?'  * 7 l  ? d a Y L   % ] l '& o f %  X o o m [ $J ! 5 ) 5  c < N i  *   Z#A m | R Y 1 L T G 8  B D s * E+ 2  Q . K #, +   , *r+ d " o M d N B [  X ? m  g  _ ^ : ]  k-  (   3e ]  y  ;71 C 4 D 7    t  tWT  Y   R j 4  e N FW * u y Ar zFp z| N3\   - " }  L  d &  2 1 1 F=  7 P  i ~ fC $ < a     ', |i'  6+ f  K ? 1 ww P #: )!!c 0 ?Z T   - ;# 7 w    ( z"{Q   v P  _ M<   L  _  a y  i    m L  tkpna J 'k F  Up a /  | s  ] ] @ ] & 7 N ,  *    ?   Q  ] ( 8 FD,5   v ;   'q34 K  Rt @FD 5G   ' =   f  [ Z Z U h ] M F N N `U: Pu y d c % oz v  c(f ly) g y  p - K  ` g: j x W X 4  z  : t >N ` p a z ; B? c u [ D w Y~ ] n Z b T~ "  _ .'V k %  `   ;]{V$ n f . B 7 ) L    : b b J $ Q  l zo & eP 1 4 O   | :  oF 8 @b U, - R l-1% p 7 P  Y ~ j $ * = ~_ K [ p [ Y5VmpZ}h i    2 } w< H  G 0 D d F + : !S y## b k S[ A 7 J 2  w   ~ , 2 3 v  (   F zx 4  i n>G u  %  89A c  p  h] ? S j O {  6G  U k 6 p Fs . F  e   B ?  d x  y  y  1 _ n% R )F  ~ C F l    XY ` h Z   9 g JO& P i   {B8  rL[ w *C!     2 # + b   " 'a <) Y ] A ,E V i l N F{cl Y u P e Z  x ;    ? W  :  ? CL 2 - C R } l  , Y h  T ) z  m ~ r .h c [ 1  r 0 H :    '     >b $ z P ^  J n 0=!4t 7F7 t_gCp H:Z! - H McZ}w BoM3 * r  Y  7h (G 8 b  m 8 $ yp`  EZ  }  Y | 0  a Z X 4w B  - N  [ < c  Y l h G    U Tq   a y a=_  + 4 XVV M  b7 ,=0[p 5 - ^e '   !shd"S 3 >  c ? ? | W ] } - } ~d /_IsT O Nhf^Jw4'p:   , < M  ~ . ky     %    H>C a  De .'~  } E   i  Q (    N v  A t t| ~ dUt: ZA ]2   n 8 * F~  t  4     + " O $ ] ?mCk KL  # P z :G a @ ! 9 #= cX Y . @ s   d " $   = ` K ^ u [ (:8:j":5 \})* (A W Y0. e N-}l 5a ( p  |8  ,R v  m   J/N< .  /|IVz / f :  oc $ Q   F e  s YMQ c " v  h$>b?\q]>U [ 1 mby 0 h  5 x ' 7_ H $  e ! @Z% { | : L jr f ) d :  r 0mT      R -  , t 0  AI* _)b scSN {Au z+ 1 u) kr  U  I w  T:" D M $ h lO = n V /k[ # Z ; $ A` !0C N bP   ;    8(8  I Tn  o   Z'  ~ Qv9iE 3 .  : ) D 3   $ O @ D U U &% *i4  k j A  8 A 8[  w t nW16 U \ t @ 7 > 7A   f  & uDP     Q h}z  (t * w=@M L P ! {? A z  r{ 8 C  -  2 V  # q  $ F = r 7 1 ] 4 P 5 6u? 8 y  H  m F >  > Ni  D G  , S <    a  \ ` = (| Z  k d `O Q    C)W      1 T W  C r?; > nI P  % h P)d 09dX    k k bc9 t9  #KmxWA3IQ 3<IoP,Si3N QpDWXzyy G$m A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤^v]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]V]^u]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]Q]]]P]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]X^,[:K5676db29479c2f3b99da967b8f2605176f6b8ad2a7b3b32ef5df33aec2bb833d2fb48d104e782f23032382ca7e43e1a8548c14e3459130d18b77435aa81cbb3c32875a989f500a8a0357999fc170d1dee834f3b6ebc89d492f73cabcc8f9d2692c9ab20a9b3172b487ea2b7916cb13de1f29b49d4fdf56ae57738991daddc0457db6ccbebcb23dcaf83e82396fa1c862b9d73e4061ee009ae2c615f4dc9c2ebd68f59d68408ae2d84861f661e3f94962864d140f4bd06028bff8500b158c2341784b280c80c5d79a55475eafcb43197564453321a9bdb26bf044c37ac6f234a2d1b83b86021b9ead1c406e88f5a03aa0dbc81a1cf4d7683ff339a784a1e947188db2684d99d8ad5c430d69c43c5107c90fe27250ec02a2c710a587b02b7637afc791e723ae6719b6886310ab87bca1611cc2504d9f634af814f3c59dda138dae1b9d8fcaf9cf3d85033b741ab1ff02d602ced18f6a53b33e924014bc35a11623a92e395df362394be4f52aa197dfc48db7b5415bc2d7f1d8e1441d927aa9848a36176f75885c2c22532290a2565bd82c0030e548ca8a2a74fbc030a102e213514be2a2f84c7accc90dd9d654aedab8c2906c68c69b9cd9066cfbdbe1f3569dce834c0b9bb51a6dfc495d3c2edd8f5d10d47762214af828d2cb06963e46bad282d66835a06ce6c892ecc8c11705ee70c1afbe27349b89b2326e811337ddcb4151b8f91294f6084dda128bbab525b9b5cd3bb3b0390e7b6f52909f8fbf9da87a56ad974b1db9177bdd825041218a044168fca124a814b9e2be95836fb69b3c6241bed3bdbaacd089eeb74e63bb891251f8bd79c5ee92a1d13243fbf42178d7e079eba271b6d035228b0c193ff3e262a9a01eae14a1581575e24a4a42f93850fbc8d8efc3430056b9d8c918d697bc4f57c4da4ab4db08f60fcad8e2cff3ac8cb2ffdd154eb68b808d51e27bb45c0addb5bf183c856bc7f0ea6a50be408fb940920b2f9cea4633457472b79a9ac98a9a1d43661ee89ec9ad5b64f5fa96db508a7912afba9a5318e5eff775b0583d73a95ab470fa01f39e845d61d6b49a47d637743a69f18ff4a552c686bbfd6deb9f09b55595eb0c0acee9492ea2de30fb29ecdfc0387870fcb728b6440247ce6e9ac08e6e8b0b51340eed5a1ec20cd1ba2cd91ad01629221fd24a1bbe1f588aa7996aae57ed4a179b1c4f700002a2d459ec32f9379bb3a48937f78c1a17f323d9c93e9ec22c4d420c0c6776d9fbfa4bf1a060e363a65af385bf4bd83b2d19a8bebe63473104f916d1675ade934229842ff4f6326952cd3e36bf89b188fa0bc57a6c16c062bcb45170f8a805d0602aaf8a1ec395509e414c10aacdd829abd4f7d6b5b4a2c0a0e799ad5e01f7eb6c8ebbc8fad7b63150155a7aee7d5876da535f9939b9fda3ae1e25fac04dcc8efd08e8874631589264bb8da1e39fc355f04c1f21d66ba8b6adc87bf286becd58574fff412cb7deb5ba882b5210bf9a5fc0d84919b9bab8d854cf5382d2c7ed9450faf38157374496660fa033ff9195623e893952e1930d01d6da1e83ecc67f73e900c9c50ead8c068a04a88406e38044f1d920431d13be559ee91cdb58ebfec7b55693ef8086163ce4d18950271a958ec423f196781f72619ab9357350a665474922268398d66e172d23f416638b83f9196f7338687ecf4f54951710ca030f5936ef530df7f75aee498f3efb999958c342b092c460e1f47a4d675293375f8f573931ef4a8535069f65c486116a0327672a63ab473366f494b4e0defacec44334db0d1dbf3a4629ecfca79a93f290f8177eafb062910dd7c74b645167cf7bd11da098f2b74856f95e29d0022a85a8b37af04fb719b8369384864d0ceca585113e9a269e2c1d8520eadc51c1ac85a1b315e0a91ccccd3c63eb30e4d329494da74803f7da6a7af66a19a3563846beb964866fa8f28d33bfc94bf614f292da617583f8f305efd92a7d7da165f78ca2a98e9b4896851171ee0f3cf2ef9390ee93ea1af8d2b091bc824f18a404e7bf6a469439f068f6b39482f43ceab98b266dc62fa13a8742d04f416a23b23ef4c5794e021993ef93f8de8edd0f7630fa20adbdefc3a8ddd9f267f2303c7081d7409b8db1979091724c68a9dcf06cfedfbe0a721b214b8a5e05610de4855733ffeff8ba73dd370ccc20ab4508e035d4c5e2f35819a5f7616e33af87b8bef3bdb76da454ecc73d42d9ff742c1cf13aa9d0436213d71fe655705b8971a03acb2c70f7426bbde33ca2fd18b641b1fdcbd7af04f6895b5f246ea645d9aaa08119c662be6f4ba4bd25fd9c388f7024176086877627e4322432a9adbef6a3c12a6fb53318008421022a74092c21e20eb8cf043f481927e2683e095d96a1c417095fc0eb8b8be53f34597f1f6cfcfdd6b04734ccfcf172917f4803abf66b6d8b1cdaa0ed2d422c9101849d51ede2cc41e2b7144bd64542f1a62b7fc4371a784da8bacd1b17f61e43c706caf2c355b50116def61b0b487c4cd8fdc8e57af7379911927f4bb1e1e97f7aecb2331a17bf9d9b739e03151a98fb8b02e1d4cac68fd55b8eded4b0de67d9045fd98e9840ae6e45cc3ad5ffd92992e60dd1f781ba4e7370716748d5bbabf4669a92f9851980f766840cd9fd97e5571c696c116a4e1dfc5a9ab7f1c046d6e3de29dc686b08cfb5f2407908933d41d8aa5c0eb001ae415d835d2e493b72feb9b99a5c42d2865e2a90b844ded762800d079a15d221e27350144c495fc33bc8a20ace6602aad4a4338fe50d986e409991b2163cdfc00ce708907360ce2a025587aae3bc758a8bbf303dc65f2b8fcbc21194455959a1587636545649ed84599cd445f3fb8cf0e1af80457218dfd8bf76dceacf19f920156cc84d5ae710ff8f6e25d9913d6175d72397bb964fcca04cdc0299892cc4b6d95034a34b84ac2eec50acfd38c4bd9c83dfc7b849fd562d5ab532905157398f2a92fdfd647d6d867ddff2a65fd93b3cb8a142714e0e6c743c0587198a97b0936e5a01465608e28c93f6f40083b76cda54afd2f63bb81d91eb41d8d2dc25ec514e973d086a03d8ed71592e1d11805cb1444c2a8d1f606f014b2dd1508aa2381537b62165cf34a92c1c77dfa8cca1e50ff9d48b05016933930498d43b10b64b9ffd6f6eb5d1cad29aee7ebe01202ed3300a6a32ebb4633508af30d1d0db6244fc6f0081096fd2585970750b3dbd737491bf789f520fcd70224d836b0aea365e594b410c6e4eeb2161238f83282cdcef65e656cd6183c14b6ae0f245c6881a8ad7ed7fcefec3e1fd156b4238aba7382092c50ac5f6fe5db0f2cc88b50a4b1ba5ed1be878350bbf5e04bff9cf8359c456baa89d1f049e2be29f0323c9111621b54023f8ba4b35643ad17b23d7ebd85468ada10188d3b25acc519ec7bf9d862360ea4daaf443575779cfadae21e05d3a5a2f04da9a5ba786b50470ea58e8d7d1f7121442f16bbf64bcada6dd5a964256f98e3c61146cadf820854616b28f06c8b63a696a59884569b43ed40ceb86de8513d06480a99ab42f08f488abf72b0db25febd59293cc625247421918398cf4f3c0c338a254f0b269d8d30bd739f3a15397181cbf008a55b5c934d3450185466249dd756b1e964c08128978f4334486049111434aaa7293c5941b858a318a9e5051344ea39de8d3f8ec079f946f8dfe6cf2c686634c74f27d3112502aadcadfd01d50e1f5d3bcd2338029376678a9176e5bae59813519e81a522841a066d77ca79285fcfd9b04f5a5eabf8437bf34de300c778ed779cc49bf0beb9262b6097c917b611cf7f3364889f4e7fca50667e7306e91a4a10d71ff89922682a0dcd228b81ca2a6404f9d424a8fe79ed3a62e4c6879c3c534361910e5a57354364a76a144b3ffb8d74cb9b5bb0ee374d8aeb7a078e81d43f0862f9fbf60afa629177bc1a83eb8ac34c002f0169272d03c2db97ba978596216ce3cd925dad970a92bc4fb89ea8f6d2514819dc8771384ca3308ae2f1d39c48c97f87ef67cbce714b5d3b1b62717a3f37e119d8cef6efec5cbdd56dc9d218b96a7d85ccdcf3c2625f4970b0db457226bfc63fbca2630e00fa470c43d479a0fb95f0abbf16195f7d724e016509f3d6f151aeb142c837897a35fb709a5100db7b9c71e7101460aa12679ed288e70aae81dc3016f4fb1749ebaba06a11e4f5f3997654ab992b3d6858ad6782f87cf61a13940fc14032c1c05a2604976c67aaa50fae917df595cec2f4565a542c39b99b121b775bbec94b7571b80fe107ab09dbaa768009ad372df73bacd64e44a98b1114b90f0da03695f097961825ccdc84b8cb6768c9f716ad74360ac78b92c9470ebc6a06061b9cf5097c68557397903890dc78ea479c9f8f19a7bd46642205423699c5671e9236e90813b1a28fa43a96a8eda754791e3ee76b1eaebd6751915f91dfc530a96057450143371d66b450437bc0a3980254d9f6beb5fd577f0a0a60a887238f6fdbde65c381b18a5d84472b86aa95886039dacf2444030091522a718c2ff5700c583fa88b2275131b9e203fe0707ec9fda736f03b6820f7c369217292f67b9aa34a6e348def78af090b90cf5f202cb0888f9af77bd831bfc388242f563f900edfdc17a77e999008c338e3bc516bf289e9709221c5b562886414950f051830bd6b590fadb0b02f5f4bd64942374b8515300c1a3fe2a1f17e1aa6b40210d9ceb1e55fbeb01425b9d3e71b2934d4662900dfdb0a7f6f83bc0b887ccce80b398d034f0c179bcfa4060f365abbd0894cc364ab7008a6218ad564e36149019e6a4607815c958cb5e584ee8e1bcb4cb160cecda4d35c3f6915b2dcc6bb700dbd7241885204267d33c8c4c34f48e7ab6608965b5df9d822d1721b881aa207d3ddaaec33cc806aa487839c40e4a02359f6bb0e400582c47e7ec1b9fec9ad98e8ee3fb4e4587f7c51e39e4be8ba04ec0d20d5e4174855967a7081e8a660582bd52e2aadbbd4f2ccfbc308bb777f08337dbb7c43521a830b311cb2adc03001ba2a6cd42e0502e860d8a17dc88bdbe6e9419253bc0c123391530720b9700ec2afa3dec862242088fbb747ea76b0c854b1956b2956a339eba004f5f42a44b2305ad9c21f07737a07da71b7b5846fd4469c7b5e0fd18bcdd7afa3beba2009183c85866136b84a1cb3bf7ec58d4f80d000e7a381d5ecffc338c75199c97191f07b7e115fb05eba5aa774a42e3c5a1eaa930ef693aa47ddeb348c96fd657861d49949b6a75c69b0a17ce6fa422edf581848dacc676e0ff9b57e7e34bec1855ddcaed2eceed7466b2512157cd7bf9c97e6b708ced043b8c0453bf97fbe0a10e4da3dee012a202fec5abe73ada501ffdf8ec4b31349cb443fde23e7ec2cff51a68715e02976c1a6d7f9e142841665597a4b223e800c3c01039b499768139404d255f65f2f1ddd05d0452bc7da9c5173a088e672a574583b78a47b05d8a93fb17dbf7f8ac032dbbeb81ebe298a7a17e97d405a939a823f7a4e51ee16adc61920382d83eafaaa3e80759153b01ae134c9afd72f3d0a84f48a8821ddb749f3611889ebc29ab9eaa1e20dc7757b7caac7685f02bacc7f1dbc80a87004af0381bb4ccf9ad6ae7e399164b074052c6fe1675ee09fab34a74d117dc02799782bce4fdb72a6dd45728f0cf7fac6ef0d82e93cf35dbdf2edecebdb64510a585922d5c38103f15d58c43a87e5a1f34d0184ab74d6d4bf9eb952e1c3c3badd0b2f96e349a221fb9879050bbfa1a9d9382331fbe0f5ad9e35021cf0ec74a7317ec4f039fac6a4b34771020ddb914a72185ec2a63e4d221c9aee613433a6635881945ecc8f772649bace5e3458e1c2ace7c5738518147ec8ca887f3d93cfe13a6b5d9ae34238769091fd41865c7cea152d5ba4334932a4b88b54dae8cd62ef449f9bf624a60ec5f3eff6d5c9cf6a7a9ab4eecfbe78785dea096697c01146fc2e1285b09416e607991b5564c39ccb75cbdb3a134b9e5c21748c5a70811c5e2ebe441e8945296c0551dfb93d45f54324b25f7cb67aa0de70dd144f9b6f693ee34f3c3e7ac9de828ef44c9a903d8d9e3d307819287c894fbe4ec3b3fbe1351780b5d898d1b05f893c16184ee782853c62b001070b9dbcd3a97759031b0ade1e20273179bf1d3de85df900316029b7c838d4ba2236dd47ead2ec8b369c1002d783e7ca025fa6044865b9e684858065040ea023f18c84cf70425cc2f12b0ffb5b08fe7a1a67a74cc973f2d120c321f78b9a0f869c04b814cdda9adc9108bac9d52f28ef5f93a6aad1216ff0733391ca111869299f841ec60e849646c2bc09f7da56eb41955b377ffdd614fdc432009561ad8f3ec8dc44d0c6a7217b103c0a2429535a293063b9aed16e4d64716431345fc5f4d1423527674fbe86006a8677876d78d04b737cc5e0687592c36d9697e438344738c1c2597afd9c29f2b80bb9cf221d9cbcaee7b6cf26188d812c696dc7d6f9eabc426e4fc25252476b73393c4db42bb3acadac740d7ca8d810e264ed0c35fb35f6d5c4e128834708fbaa1aceab35640f0e0169edecac1068cfa22a0c970ff553c59621fca53d1ea9b9f78ef5c0cf381a1457e3fee4f521bac22975a87e06d3e39b2a3a1612a1211463333c7456979034b299bb984fc8aba15a944c7ff7fa72e0abeea7f7a766305c5a8a94d464bbb7a50c286aa6a7c72c677d5223a57b9c8e86a8ef46fccd1e37682fbecac5b7a2ad4dab8f7cef5d053abf38c3ec75d8132b05fc5679454b4541ae2ac10fb7916050e620606ffa46fe131f897bc1f2088ad88ec9bf0aa9a96118c5d6ecff482dd28ae388d4ef26350248ce69545f1b58f04a706ec1fbb5fcdc5b521d03e0104bae43848b369f869a9281fa27abeab7041065c40fb8ae159b41650e8982acb22cd8d6efcefe9dabf2b8193aebc28aaf72c06e4a75a40942915e347e156be8ee39b9a395cf12f672142b4f36ead9ad58322d739fa9b346017a7ec80e175ac3d0c96ac290461cadec5d1073a46d6ca178be16071a81dbb2772d0d31bb579a62ccee0a50a74f80ce6ce4c6e93b4f64f7aac70ba4b750ea7d1f596aad2f7a4e85bb3b18b0b77384ea54fd400029f36d5be20ce18f31c1eb24143795cc4341c13a85139213dca9ff2d90221659d182e4fea36cae7e1de2005762c163654baacfb23701cf8ae15577aefa8836babc1a58788df8067591e734d6b9787a6cb34d8e4417f3b8eda7ce4623d942ae1da5f9eb02b56daf1eaa62dc39c000e46c6e138351ea2e5f8799e7c4590b1360e5c16949d5d3b169865ab97ed3828d9b39f5895d07008c560c90d1d415285908c42e0d4c969981b357ab35d9922d4f75f9289f07b4c6f0ab4ab26e4a9f673019db823be183c7ec326e3c635abf224c691c33fa9fed5cf11bcbaa04595a3c075908d5b18818fdd61ae7ad16015b92fd71b321f9b2bcbd61077ab2ac244fa0e5087572d33cb807a18e3f269df929014baade2d46b618330dc6030bd2a5533508e35f676609e8bc34953b7beab840b0083709f5ebecfc4ab32db415799010c40680eebce8a4edbe0feb225b1019d0952008691339322a1e34428fb4cd41b802ef19c5a5475e3ead8634ab00328969c240bb552b0655a7cd80535afc865ceff5d939b9f195a7e5e2b472e772d105d506bd3167895f2175c90b9c05187b56d1eb73bbfeda9975239e11f62202d4e3c26301512323fc73c64b25e661aa65d1bb1a2cf3c2779d880c2749e450dac4835a0b00f0eddb71283e59aa7dc27cc1cd588b20fca6e6c56f17979b2c9a59cd6fe09331563e0dee24aef0c282c664e743ad21689ff4a1f72d0d9b6cad1271d206f4e736d32e01cce523f23db344af09b96a08b47e052561c61e9019b32acb0b8fbafb4dcc32084cbdce3fabd9d17d1ec074299f4069761ac6417a03c414c60bc18d8098dd2a22d952d4a5e5cf92dfd3a7dbe8f4dd9af61605ae56a6661f2d3075eff7e4886fcb3ad486f1194f7cb41a6422f89b54afc175b08bc6ab9d2c86c527c4e6f8860a82267c383c8a140555f82fe46e7d254b4868de1f60696b317653e73fb262724db975118ecdd25feb4775fb495d8c3299df38679598c1d70d52ebc91d95c4fb9b8648b815f245dc177b3d58fedba67fe52ee69812c9113505721917f9d075c8d33d08090f6d2df3a0e2dabce00144e79f683884cfcab034f1f74981378e261b60c95cf2c80f62ee72ac98b65e2e003dc699957073963a3152b291faf0ac2931487c083c0765b26d5578b11b48cccfa095a70026e11113787921b829f1144d5a978721170d71fa151b95ad7a611020d7c4af32a004fca5333afe087c064c6b4576062b40578129535401c42a05e730039caf934e35fd53d91079d4a5ecce382975430f180a8f18ca0de0911eadd23ad8bc5212471e768ccd135a80a027e5cc03e5d32ae2dc42c0457928696a5a92e437cbe2ac83f691d7ed43999eb5a0744abf0ee65a1a83a820ef376e3daf857660c47c3cea95418175b9e458cab78e6a7d82a33be15eac762a72a7288404ef9969ed189e1ebd658c64cde7a0200a6821ecfb051038d67194451ac593af6936474d663b317113da270eef8cb696747c90b160bd38dd2f0ac5016b0d1d29ef16dbe6297c13e73d42afd827c0d2bc6a203f2a2bd20d1265f1c77858fa8deba367894f1b5d0bb23ff0b26e9e39485301d0e4606d18153251f17462882238cfe66799cd0cc67be2302cc334e5bbf1ae43a09977c71a18f0d390d98fa0a6156290dc73e7d8e7992675ac0e9b6d8a3b5a8efc83f57a1c79013493a441172735d3e3b9dd9fa26dda81825408203544b0ee084ad421bd3d046267263762d235023bc82e81d5b433ff1805adabfd8e60dca98d096651e7709cd8bb02eb5133e0fc59d7ca3f5a5630cb8717fe4c3b1f950f49fc1848ff70b2a175b26820be7b2708bd2ea4fa8e6b20627dc69c14457cf3da8ee131f8f50d612276ae324b76a532652c3df0f4517cca691bbd70b1e43c54da0178811875c300708cfbd78a3c3e3742b2f40d1fafa2596e0818c7715525c5610c9644eb255d1cb49dd3f47cb4c9537dcef81e420dbc29c3fc2e2a8ff1c1e4d6ad8d56bce3527c0680e46de34480047b09d463b3ddbc008942645b8f089ea698e146fe5a3cce4e899e5f617ce7f331f6b766f0ffe100bfc3c7caaf153c05c2511326246faea88e46122b04aa5bf56f7fdb3f7b8ee39664459cab081a61561be40a4d24d9fe65e67a4e26f09d9d3861a7646bc5bf8416bff4ba17bfc23900fb18a138589b45af5325ef09ce7a8da66e4423a15f9ad8a67363adc4869b6f1d88bc1ae13a7701a721c28dea24d7fd22f899f8d38b4abb1049208dd3ebd1c4e342dd786dcc9d428b11c91ee6b500efd2f3e1fdb3e7e6b6d4815d9f162e507529b359da0955b08be6735b0adf2a75720e26cc836950472011df8a299f3a26a9492617dcab11a2a4332edc84e958f260cc929852797631bbc96edc7e244e5acfa2f7c5022743ea81910b9c61a945c0056f4e714572b0ea6f230dc624cf42a22ad1ce36b9c3fb514497cc31102357bfd9045c44135b176ce8dfe4517c8cb251d8a53a19cb963913aaddc1ad0d3cced15057ea7bd74c0bed5e9cdebb5d748c88664f69837dff4cd31689285a554f9826b75b1083674e4a174ea3f44e1e19bbeb18f5f8ecbe1af3a76af47eaefb3a881169300df3cc6dbe26c9a1fe208bbd64231f0e2be5507b33fc8cc49b064866cea6bf09a8eb26fd0cf8c4727b4c252d081f092c5a5f1ef51a26770ca5cbb47c5079e0843ad025ea675ab98d4c9ac39a6efdbff741d20720c5896bbbfee7ceab131a47d2e744f087ced07fcbef781f4c5e23e11097607c0dd4333509672c759c38930a3fb7333c2f7f9395d7fe91d336b9fe14a938f611f63ba29375ced872f244dea53912cc9b7c6df60aeb1e3a9bf6a3ed4ea6c4607295cda35becbb499acb1b48254c00aad82959be4bad01263e6ca722a4f3cb62cd39b0e4e609f7df2974d083cc878a4c10d39ef9e093798524db013a10aa05f250b63e0f81204051210b108f4b2f240cff12ebda3d11424f728d0bb79826735281a3b17bde10c0c40ab3c710b2f9c3bbd13e9a29c8730cd3d261f338c8ed4100317adcc35618a4d280f15422c2c7a8e80449f5ecdff43caae59608bd5c0f495bcbfef4869481fb3af94d86363cdbf97ac7bc04a6077cb73795cd7a83dc1949bc949a9c88d67ff863efb03fe5238f6ae573d2f376ab452fe656119abc04139c26302c3cef30bc46d105eeb83fb50c95544d45b4947e03c34a7c2c216ab01636b81e1cd7df971cc24e63e8fd79ab380eaaef94e97e6458d250e1d1580b89f45e870cc51c59d26f0b444b243ac7c43fb1a8d08f8443f12af22d1e158d60b3f0dea5dcc27042000a5b7067836168e15a7ad76d7ec4330e1154e30836aca7e5fa1742203b6fa77d7cb85a9fd32530714925511eac18ab69fbebaece83b1ecce628a71037de535fbbffe607d3663fc04b02ecddeeedb5128e914163fb7c210cb92a5791b5b0e8fce93a373ae1a7731334c0d75bab8758d4e229d55c2f0658e0811851619434869da1d4a7b6eda7a58fea10b512043f510189d889bfa48b61f9af9c4497be9db2fca2814fc686a435182d09a55bd6719bc49440fc11262b68d35c34969998f8a877d219879e42c36b3e66e46bd495aa88a24648f4a401ff06a921480516f4e2e17dbcbe9fc6ce533a39289003fa4b94a6a92bed1e62e5255cecb5139ebfc4355645536362df385d8fc36a13568120a123f42ae0b1db061f62c102f28ebd7d337fc25312307f1aa1879d244e12eaab746df18ecb8430add46c5cd36b75bb36e7e620004bde82d97cd9d4420508c15a6b2bf23f36af3fd13d1fcb569d334b99d02171c205545b9c8748068b5854dbdbdf2b438285de7d56821ad0ca2f0d724ff4ef5df430a134e6b75a02a96fe202158d37ee09e658440606c2605b56d9576c9170fa8fa6a2fea136827d3892bfd522b275fff055d258de1ff49dd9622a31b5372f8a18f474d1e2d53929145a0859a29b29670bfd48cb1f2e33f08c22c47e6f560a675478c444ee3e844db6611fed320548f480f1776d4304739fdd5a9ceae59db83272ebcc1cc8636185ab23a46600107c43cd8dc292bc87ca94bb879263676ff6d00ce94350289f083bd772df2806edd596a9540ac8b5c1e9a6427a9d9f65888ce74608c6b51d9912b0c42395c5ad940b0861bb50f76fe739c0791801b830de051c452e7ef4ab85ee8b043aafc14484ef8e9b7017670ffdd5479f08024ef0f6eeb50cc0f5b3e23cb027068367bb2b2eaf029820e2dd7cf195a339b4476ead868d035d96948a3181aefc2b56e80364f3cc8a386f52790c9363d12aeb7f61569fe2b81bc3f8a2687246015d5a025f00a2d9e79d3229d8feaaaca9630b3da8b7c82f37dd7b4cbbe57c4638faab8bd929f3bfd4cbc1890022ed9a3bc8b5290364e4da16d966ae3661f0be3766aab44fe6be289b2b8f7f61febdf248ad9d31f7d15da7251c9b8a48d02f84677222c397d6e204be1a80ad607c87543ef03121a57db2c130aa416b3b91f38664aad194e8c33fc7fa7ba330535d02e819d7932ce869fc8ff9c22576882e83807873e2c74f12d27ec3c40521bda1f842e97bfc6434b05c7ddd5c6dea267749284c4e9ee8ddfbf286a87f175e58afbb33bcca7fa170c50723bd74414c8ba93445de9710940423ed84c4f6b64ebd81c80723cb30490bcad4868082ff4bc4183fadf881734957e77b4d3d2b7d893392f9dc3d1b362def4f75dfbbf37693ba38a6941d31f44d748f49bf37efd891e53858f7f9e58c77b42f79bb3ea6f1fd947c18391733bc2eecb2fd4449ba3d79f9c173c31e9ffbc798040ff79216aff85de41e932dd55bc9b12a210735be73498fc241fbd0b29fe026708967f3f07fd76399c5cc2b9def31a97dcf902e3c57883f7b4fe123e3634d385daebedbdface42e5f1bc7e380ffbee724fe3b7dd6842854767e8e09179ba89a9f2799aba91659f8d603b8603a12b9ca1cdf31ee36537a1f5bb0b7c5745007e71aa00df15e5e3ab30eecba08b5641cded72803bd746796b4f8c426989801c92c2b7917402d3eadee9e0d6942e8b9d7d4524cb7f94a08a251413744bf1701c872a9c1ec092f31ff7b2586178298df17c9d787b83630f41907cc19fe586963760920461185f8fb38eab5af60b4f421b66377088aa446b79ac0d961ce147cb7867c4e7536fc767930694fbb14d64752b66127cae1cb6ea2715bc7d05293c0caa7458cf205f15aa40427e84ca5b0b957d49134f63c264f319514cc3b992fdbee7029f5646c9b6743860d27b65b53fa6f68fbb5ab5f5f8a0dc56665f04e5b79898acc47993a13c940ed5a76c147eed06ac9802b33a01feb657407cf152d08c38c5b6b46c08535210b5699716d5162c693e8d42c3d5abbbc48724ce4b54bb6acdc896b380cea9aef7b07105ce53ad92992da0b0f9a22275723584ade6294ee6b7083db448442a2ae308fa4063ad9d7ca1d0cd55c9404994b9d6c0645316b59d3a32cd7998809164a45f9727f86551b46561e17fb9fa85eb90a259de1e90c1838a8f4af11c7b69d5c4fd9b869f4157463a2f0e5911f2d7eafdbdce98d953a8b1ab726cef8d878986e96978c31849f7aa9384c2bc33f9fe07b7b10666a8c1f09dd201156a8b49d91e9deaa8f5c5423b5c51b37d841097c1a15a821f5f589df2ced786e9b72d81115e7ed4d4609152e75f9fe9e3bddf25171641e4f85e1bceb8122755129590a76406b030690fa1da2d870af3b15edddea11edbe37787aa4a877350abca3bb8c0879e0b9f30680aa89c1d4ac9d59b2522b6ab58a5cdc9c8b0323f1f7b70fafbab30dc34b75638c5d50e5de87a8dcc1974e73bb01434d6866acf7df275fd849a0fb7cf6ed1c0140912a940719d0200f013fe220507f0a36409448e00cc1c6260f6a77554688b5698f723f7da914ff9f4af40a8e79d9c754399f2e426a5c7668b1e7e6a722757cb025d4bccbbca3fd68999e63ef2fd5a660b39327b46b8ecbbfb31528925173d69b8b84f1b57034b4944061a5132bc7575d320bc04700753bd60d95c5ef2b15c850f6cfda1dab8b42066a64504b8accf6f62fea76c01b070964ae51426b5b2fb1324da68b2d5d6702a6615553ae55024667cbfa7f15c0c92e03dd192404688aaf3187a77d06bcbb5746986b45e72b2268ccfbcfe4e251e71ae254ca312e5c36d5ec8f9afa329ef82a44ca46b6bd7ac4dedf29e45adc00fbb6072b021a52038296dc1129ee536716eca9a7bfae1c2c1af7448523214f22f2979e333488fe72ada10899c4081a874c867af33f33c54bc7b7d295d5ed2275ad147bc8ace6ed36beb35f082a4af572dc9979be40f828d69ecf6de57607da7bc663e1109817c917be41e285651a2f7e7ab0171c34650967cf7108fcac6e80c7404cfc6f4cd4248fa16258d47b62ec1fd87c27dbcffa12dfb76d312d3defca39fbc9ef34fdccaf495f3f3561b7c4c71ab22922f9f6d0dbec8a3e29860a603f4f252bdc997af39322f7010fc96a01abe96447749cffd670d7b54b2201ac6650deb32dc64d5d0d24380fa6b6ba14dfdb3a0da47c908dcba34dafd7e1da11c69f7698f397c5c77e84690646d97f1da2d4121e3b021616c69bff125cc400b9951ce14806455823c2da75a3b825840e160932e13bd4a54e6dc5ff00d7178b78eecb6c4d45392cdab64cf09ad3883fb0b51beaf9139136d44d54eac7f21cd4e6fbff9e662aba87be7931391fcb8c1aca837cd9d9cb52122b16c479dfd0aea548fe51b9d98861e54a556f1a2c5cee0bcf02a6d955fefa0e460f626c8b547dd563706f24ffc9c54dc1f57bf3ec91c149521d320ab126c63e21d464f92196789e0a4c8475f0a1699192349079df66efdc6ddd3c703d4f6cd20312edcc755ed92b4b4492a07ca1b6f3637e5d625e18c211364cb51f478e68a16c2072886328b76ab489a96437e88017735c589b896761e1723cd2ffb0efec032765c83f2bc9414da09287fdee725b01d56ddee95a3cd0f681276af771754bb2242e629845113cd96668538b768bb0fdcfced736a64fdcd4798113842ee64b8101658194f3c01b9b671ace6344a8e6f2d4973eb1f832fe9d2b4506c830020ca82da8478f6ae1cae42b8e2409f195a8839aa4c542b8aff46382633b6448e524a2f2fac94db76992b95cf900a3dbfdd209970c97b497b860c703df10395257b388d99fcb590c22d4df90069126ca0b084c160e99cb1902a47effb250ad1223276a50029b4a6184adc41aabd9a298ccbf2a6d0f1274b97c1dc25d622041ef09659d5dc953d87351cb07da36c4977adfbfd0fc6fe8b533e5c0b0932b65768c22cdcdd7b944ab4471a5c8a97c2a8f8fd99a0940c4930ae561196bb1ec8281daea7b510665c521799157c17b5d726d3a2675c56e2f446e34d90882887fdb04759cc5cb5aa97dfd1b259a05e7da0043b833c1cc3eb871248df0c2cadc0e27deb3e75a4dda7ced54545f1739b5b51c4df8b5760f8fa4a64f8ca50a655c6afda35f96920e0f2d4af404cbc707fe3a915795ae23a29c43b3524c392b6c169c2ed3d0c5dbb0b5e33d5a7f6abf546c134bb1c989c11f50d93f52c3fbe59fd8938bbaac95072c1aeed6b39d079640dc0d1264e75f4cf11cc52f8e37d5fa45bd4474eba6f357a57670208a3ca8334f1e9dd6eee43f2013cf2c51c6754ee7f2f154646dd0f17efbe3029bfeedbb4e340409f29173c69cbf6f2dfb0524c610b787eecbe881177d3e4be9f11322fbf64d9c4210902eef3f42db5947474226be7e69a20a24bbb4d62e75558daa3e6a230928b099ac9627a02f55073eeb537388be6e8b2a6768c0494bbe6ba3dbc4ca08c7b6bf779b938c37a38a14b97bcf04a4f35704c3756fadcc22f7f236eb8cf98afea9f87f59b54092354a488b0ce5f78f6d8d3368413feed5d2610e36a24657f7c9bbc65085d27191cb8bcef4e2fdfaee21555a88f9801cc0b74c4b1c2348e9825c7858771f6d237651d732dc94aa6e8e8d4d3b7a63f7da809a59254ad62ec99a3bc645b82334f6758111d28dcb9cb56c0ea89880b8799a787a7606ef1dbe401a3ec66fa91505ffe0fd7e25f14154c3e9dce372c2523dbccbb570de1970f1cd8f57f33efb787078a894e335c99a4b5b835cd09d53bf036ce7abad0acc8a1484b36f03a47a1a478f26c585c4a768770c8e922dea3323bc80ea8d8acd065e946054be8d210a163ec6bd791b8673571604286213292b9f40d5a4c0a0bc7991db79005c788f59e465d7b7dfe6341abb097dfeff548aee37d4aef7993bc47ad6f0d2521ccb10cd4bb6f93e7878c41444386d07cc8893a63c637cbc257961cbdd5996ea52ab7b8697a4b04b150b565a8cc2d83ca425b1f54fddfb484680734b0c4266e9e2851ab49ce35fac30be6d4e6436932f690bac482091c6eb1501f861409066221257466d29aab74975e62625daaf0a6e1cdcdd124850c6ce24db440b47d2e0d274d1b68b0b96be1e5fd06ce1471e3220a5c86d6cd8575fa02e217bed9141602767bf7021290f5786fc53969a127a9548ab76ccf0d49093276a4ce3773158844381931a97839b1e27ab5c41d30a209f636ebb15a7fbbba897fba02a3d81cdc46f7407339037ceb79b2bc2dde2308755e964a2a21bcde74eeb11669d158391d3f592be20f601c4e859ac3c3c8f096d7e5e1d0b50bc90ba92622889e6c1f4c509fb4cf03d1a44c0151b47e7c6116e53b59c9d8b40847b3237450360e8101ca97acbde41d80bf31a8b5ec8e9e8cebf103955dbeeaeb5d3623cfcb9d6a3767ace4f9062de9882fb3a6a65a7e9342917511e82254746e0191ed1b98097b59564369e8c3ed11eafad26d829810e9da279af5b6f172b5fbd4b8e5873f86e65f34b5bccd69c461d22290374fabf664f071175f4e298fc11dd925dcecf9e69d34d59cd64425f28fe3db823ecd7c9290c72fc57de7a559b77a2429273666a065a206407040bbab0fe83ff3616790c9fce2ca1f4047539c6cbf162a55b2ef43f08c55323f7f2ddb7d4079aedb9141ca00443e394ba8c46c79d82c4fb5cdd5706d549a7a1cd910e5032a45b86c6b612ca255a5b96021ddb58770dd120faefc499bbbdebd40453e26de6eeb59f01b94fef5e818ed4f1a54d59a796eae369cbae6990e9b4eca1310646e24ab83985ae4c46e1a48128647e15c2587e9a792e65672b1538221446a6daefaf033b05fd418944582438cd8ba1b1dfca1eb0289e3962ec9ade1a1f5dca4bbaa76587136d3fc3daec761e146bbd5746f7b45d005b137cb1475f31e8a12ee265fa2f7b6e9cc60391ae9c04aea64602f96478001fd0b85be8fd766b09c7790a2220e953d2368f9ecfaec9e00524482847882a686938542c54940de35250b45fc1dcd91a9ab4cbb6293c71a4b71efd685ce94f1c32d0eabc7d876b6210fce2c1f49b670e536150ede0dec970d0a15204fae97f0a6657fb8e61cda4d23af48dc092d0dc9c04b50030fe023f229a02fa0918361d0dadf423ece897e894998c2fa6ee3c0bf739a3177840f419fcb5f628d92917dff7aea67b102432d5980626ac8d919a18cee5e9a987f58628f042c1053da17b8993cfe927491c89c8b1a48696cf4af066c096e519476e47df19752b53d89a3dfc9ea8c15497bb3586b9d654107ad9de834a6f096ad0a1e43e55e6251a3f7fb7b25bb892c560f698e0c8a904b25d6b3a000e4fc14f7dbca2f6fda1067ee3e820962c85fca0bf7c556ff0e636b646078b357d02d0682be3906aa556be835d82632f22f6e42ac99f12b92e4470a055702e49f25e71425b05dee5d734fa57cc8915e80888e03318336edbf2419ea061ec00ffa7f3fc7c616003b07732b16a5c783dce2662b25d97d7c898e5ce02b88d2f8478b52a2f853689cf3b5aec40e659e5b04acf580ff93515cfd298ecc184e0aca48f6943b2d80fd6282015d9efee27b480e9c0deb2bffc6e94a24d62820af5e02b74c11d788961c233ce0241b86990005d2b91d2f1dcf2cc0931edfcdc8f33c10cfe02a80502dc781a813b56920c21d740214490aef73f68ef2071d19459f469b641c25fc8b21413a4b2de7bbc979d72bca8fb12855c9c2aa16a02159692a46865ad6f5aa7bb8759cadd9128b6508790750050a6f028c44bfc86f704cd525871a84926f660596679e59d5ba279fb499ba82f417f6572e3ae18ea049c673c6eb30809b54abea2fe8a21846542aa7d190c4cec491e248385981884e48d50c3cf91658a4864d647b66f025c1b2eaab16154bcd33c7cb3fed9290828ffdfd1307cc36fa494defd61d316246781324c28d62cce0961aa11daf3ff0d88cef76bbbe6907763013e07299538298516c70d6a09f60ce4cb633a8719aba979b48600b0762a384a7fc016434ea00bcbab51b96bb29b5b74139e0036a1c7046526f5f8cfe3e258e5d16da2314b0b3a7c59a5ad36a15d9d66f88536ba44f663239b61982014d90b6958cefe2094fbcf267eae1910ea07b0a4a719623c7290f213758e111c115f26753453e9d8bbb1cdc94195730d4354b2155cb095121ccff5bd021afcb754327dec4f0d17882e2c2a54ab9652d6633f35c87241e2bf96089403f6405c979aa55e4d1dac54e763f55fd7deaec40681848245fb96ade75ff675a5ba8731feeb0e1db51efd984f85298548a43208a2060f1bf5bb4a043384403e6bd68b5ae677a576b15d617bcfcf5313bee5237071dfb7fb92ee0931e844f78b04e7727375bc0b2d57a6931182cca002a9b64492f127a8182425e1f2ffb7ba9615219ea60631b912491d0b640307832fd958bfa673287936f1ebe15de45906ac3de653b2dc32e78957a20439829197f38bd86b71b2fedfaeb160da65b49381aca67a36e3ff9814340d9ca57d854f63cc93d04d3c3192e918c06daabf32e112987087c514438dad1558db205db40062aef530c59bc171069f185b114084804e740965f7d08209e3b005863efffbcebba05b144acd92fe8c97b130b20e50ed2d5be7ed785f756f44a6ba840c469a678886b8980cccc3e6ee08c6625bb715409d5dca1657b925f121437b07833b9ce81696f1e4e01a531799acf7829768161c495a99c279c64593d99c4a8f7094753de5d9f42dd62788f9adfd6d952e1868633071bcc83df8cffb5ae36453281c7437e92da04a16f5b9956016ca8ccaca9f2d8336135902138262807a5cb38b99d5d60928483463ea304e057530ccb21d2df20e32bd875f9ecb6a8837967ba03b598d8c9f3e857e67f3d8655a395b8a28750f384619d35a61f408609c3196dc6e78810ae1ab31cb8f078b5bf33457a18dc1b6315718dffcc429089d61b4ff1098c594b65c4ab655eba3f6b16f55ad7c00fb3f11737141d7ad9520bf06b7c62f4e19740cab77f856a3002918189df6ea66ce6f81ce1a465f7a43000cea56ab028139042227329b2a39a9a5b84f0176249385299ebca3a987a2db696b9f939978c9907d5bbea8914769028e4c08600a994fb7255bb8bdfc81d96dcbec6507507a7fa960a7c751fba672c88753d4f11dd722448d6981326579117eb0d7e3b84dd514018f60712f9b4573ff2ab110db620621e55dd1f811e20f15334d7b9b9ab582574bc42252f3f71deb549d3d5d8ce84ac51e5ed5cdc38554f507f674f28d2bf797768d511ad7eca9158d65762e9a6ae0f5e8b85acd1ee08920ea9da15d751d9bde7949512098706f43c7a945d1b2422bc7b5ee271d5670322dade7f4ca4786b7cec4dd1e385def341994d0fbd08b0bb2928ac793b026842eed7ae3227950beba8d273da16efab19ade04cfcee255f57c5f297c23746fe75b96e7ecc4e08977e6c3014c6bfbf5321bcc7309e10c449e215ce92b8a2dd8e826cd5a42fee095bb87460043a555269580744651dd343b5d59c91c00bc839fbefeb601baf0bdab30c661abd5811d77ad94cb33dc5b0f01ea8878ba52d4f74a5c77a2f393d6281c0c0270d2dc8aa87669fdacaa9658249a64c0b3fceb9beca26547be080c87124620acd1082ee0ca9333ca94897687e459ad78eb074c7f8a34a94848f1b1ea99b5baf1f20af7bb6d9223809c796b45201a64ba95c278b0322dca87291056767814a0f324b5a58166f5d1a85c7bd86d9e115cd37fb7f72aa72ec590dc901d9ccf853d4da7349e2853c4d61b8d768520eacb937c1b4a3e5d0991d1a9beb0718caa52e2a968e21c37e5e0b04c77a24811a361fe8e6c458013fd3aa7ea215fd54cbc712ec4f6614951fd61d4b2e1d7cb02bc4fa1fdb71d35a631f7794fe2e0686881d189ce37eb32d492b8128f97518e11bc3e066702a8672daa85fd4f57c34f4346984ab57290c21970f61456ff420fe91a9ebb0a8178780eb2955b146a4c94da90ed4b957e3fa743616b529480876aefa3f2de20fbe7a244de9fef57bf5d0f85f099e5a7b1925f905bcbfc049ab8b4fb6f82778e9065eedb09dcdf008b29294fe60bda04ae6935e200024430db477b1af8918836b6c17ee114325500463887fefe291e098731bc6c466e4aaa2cd127491026723dcd30e60563036b1ccdc0ccd09f5a31bc8f4e8a62e5625a51da5d6e0bde2c3a6c1aaeb5545660bd366b0e8338090056b474eb6bf8d24743f4637a568bacaf5e589510a7b4abd89a175876fa58e0c760b4ff38fb3988d253987abfe776cf01f7128a7dd4adfedb02f52e93eb07d39230bdf8c7b9fa47f9341c6e91373d9e723bcda1e6a72dca6b94b3e78c7cd17e00841d508ddbed091c2543b5f866a0de8532535c9852738206c36f32ee0ec870188529c6c335ea7d9a5530545560b1bed66078fee59bf334c8e3f6f10a3c11866f686c3de91d9c20d72ce0dd76c195b4c5f0e2e6a9c9fcd48c32c0a436248f25f3f627aac097414c99bb851775e1e9fe25b86b62e176d4ee50b21c07c939f78bd39c719a2d11314014550ee938e3b129bd1ba9b519b4c9ebee3b80df9fa6ee478cb2613ffa7b0c858b8b829432dac820a8ae33a14eecbd139b62fc0625bcd34e0a0990e9a8c821f6556dc90e734e13054664c1a7bf6afd341200c19aabea5e98954406a74e3dadc0a2627df7f9d94585c9d0889fe3a58c3acb04f1bc5cf9d94395ada8e004e0cd7a34c9429fac02cfa3ab8b2fdb55d811825173f812c0eff7c59963044c3560ec7a58560300392a7658ecce7ca8b73ee838f416ef39b0d6931f462748adc0960a19abac48675607c4c279b45ef8e78529d768abd612894ac214f223bc053105d39dbbcf1148235f0bcf8d36c10747f9b5ac4555156dbd94d3a63cef70c4bead34e45f5da24638a963f61b5791c4145c0c4d610e95ed6463f96f22ee0775b34a2209a86c98b26e9bf613ca4f9d87ba1b3e5496eb67b7ecbf94155dd57da578c678419e7d06ef360a3f5383a14d4c25fb091e9be54ae5df8f623eafd9613a1749d304ca15ac3411212c789d7f1a7a0edd50ad6a2996b15d8a1a9c27441170ca85a5ff2689c53b50be3abfeff76488eb9e580b84ade3d6c27cdf9524225482f44248c68bb1843b8c27446041e94d0fc88844edf1aba0a214d2df681521883809085dbc36066d7e62a92979dd3655eb5a26715db83ca52e34242036e3cecd8b6ecd8c62c5f4755abaae884b4e47f4ee6b228887e028c19f789ba122f091c7b780baf98b29bcebf22ca72f82f7f0ba03b218ee3ad112144f261dc8b03f489f030abd57b916ee24dfc7ae10d33571f116d0b74a1ef2aff8c3cae815a83958965cc19e1b827564f17689079677695ec5919a33287d0ad3320ba1f7ee95784b693bf703591285263931369480aba07a5676908f48f4495c54c497ffe93aaa71a9b665c1ecf771919bd01822f7cd24d09e1be810a029810aa88b7c0118b76b83ab228d5b469e39bfdb8341a4bebe50e4d7be937ab780c2daf911eb9e5e9dc945b28e245e156969c3988de51c757b29912783ad2e009ce7376348ac8b8c47a5215fe177eedd489bbe6ffd73f72d1488daa9401f39c49c8a8c00e8a0436a9d40c03c16a6efc30ff91f0f0bc55657977c662a81a5d4a3c9d3f6f6b12aeae0971b75147d37b9be5c54c1b9771e3403fffaf8a6638a699db7c88636a6b952f00edcd34dd35f9cd62069671c6d997c2d5b3fa40d9c09a79f5a7ba2dee3a7c3a17699dcbec202449a74c0adeea486aaa599e32349b2cda16642c7c554cf3ac741cb5cbc5a3906ad5f9ea79a9fba7b4d642dd264f5ac016ea5433e730da28d818869fdb74feaac764688fe91b4d8ecd5ca372cf6420d01fba7abf424a0aaacec8674a38be343df31782a85a7d2daa96dcf58ba9508a372153a94375f54f35a54d30c7550c3f8327e9b8ff6a8214759063b15a2f50bd6c233192ef827599c53e2e1a7775fbf429f4402223f0bc07d5d43aac337fd8fc29537fc324aaf00d0ed3652e0b16ed5da890e11d5316e01659e158381f5c9270e4c401efdcb1f620b833fe58cc8f4f1eb7b0cbf48f4d3790d382c7d0dee43281bd209091163cf7a03856d0ccda43e7e1a09a46bb4f855468ccb6f23d578f9f5bc9ad2019a5a3d026a23f1dab604850744c4e2e42b392be7e60f21379b90c6fc64aa07064758679495a8086ee83f9a45005211c251b4aaa8d79a18155aafb13bd1b2156830478babfa271c72fb762b90e7f25d22d791a5295cedee7ec6ed4fbd25e1f6242ae8926e20e2efda1259dcb050f2f15a2aa04a641f50c24fd712ec4e58b04bd89b31c093216855bd673e8d5b289159b2ee33b7966161d6e32ba668480e5eb4aee528bf670cfebb9c4bafd9ef2228157227e7d3fa240d8f9364166ad9e650d70488a2e4d1671ba6d92e95b5b695df27f98437492d3a26e948bec8402cf3b442da74f0e05926bd3489eaa6fc8702d387f9b128b74d3d69923702ac19093cd30cf4d3d07f9e8a107d825a097c7e04c688c15d85b20046e2f491b0346167b0f51d41fce0edce176a5bf1c4b985e84d89f21e809db5a57844db9085be87779cdf3fbab8335a8dc0c23e4dc97345aa1f8294ff28487b16ca3a4bd1298dcf62e92ddef36e86f7a753e8faa92556ffd03fdbe6c6ede074297243562acde692ae3fcd83fff6ff64da8653b50a0ecb6e60a918fcfc12603d6f73b538e861e81a5ea736be82a69c6b862585dd068633d3107179c360ab1bc15624893ef04d5027d31746e117e27394b05f273071eb6f36fe455eb8d87b8b22b48e02be291d87fe5699d19319903809e3c814ca0339a72b1d35b585c98cc72fb3db6efb9a87449a325441f62b6d4675b9fa633be5df3e8efa8dbce9b6de907dc25fe07fef3b0a8f72b3ad8d6e829967e988bace33168c1362d2c14a5c80fcb45fa597c1a86b7d64387e35ef517179c8ad54f510e333738dd6498b8629b3ec72be5b7dce9993eda263d534e648c76da5b96879ff6f532cb9faeebf181646c4ac855145ecbf19509634f606a14bd876fe68b9315451f55e4ddbbb9ae3a02d9f404805db32d567098592457912f22e9de11af89d7a33535ccc46b5b8a87f6d18e0824fe190d051aaa1e2476827d998d4ccd4600e7ea95db91a6e6333c2fa0e1c2fd7c25e9894c388330c6795c20c449849814da38a8b4b4c9d7a2cc81fd52c6168837257925452c0ad982a11653f23d60102931491bfa96f55e5849d57d35b488d37303e0910ad838d6366e1f1f46a75fbc3dc83ea7d61c187ac118aa9ee3b8cdc928015b5b6228292a3fe5908b2b8062209929269821341c8cb66eacd74ce8f17c30d1d218854db68c73ace9acb6753c4b1f25beac592234bf6e63eea5787c74b60b04c0b9e4a5c16e4b8290eda57eef9c02d4c4f250c596a9794886c42995ed97dfac8596c09b181987fa0e242f4a9aa09ba564c96295010bfd49c66ba7a6fe8380b71fcad232b6242c42f1d4252f045419507ed06317798b5398307856d493be580163b19a0de888e2634b14af5e7cb2688d6fac50395e484c89ac1946775908d345f451c007c7b40996c407092e4bf7c37a5244df2a9d9fd7caf899e61a34b80ae34d707dd38288224d849130a589f56f92e7513e7c306583b2a717c599e7fc9c040a9ba5fdca930c89ee91e6dee2ff37c4c8c8887c3146ed4b93f06e767aff266b01e2b85fc3cd614c53f11f512f76b717d4100fdd43802fe992743fb64aebd5e35d8c1edcb1c9f556c8eac9cb1e222cfba70137cb3477d9b36c63cc6cd78f02009b748270d89519670dbd237281f9e1da15dfefb4ae29949e2382958dc92d2752cf9d3a86a623ec30a7fc5077098ada05979fc99a0e5a0f1cdcd08b3b4cf699642c58d8ca6c51002b954b6fee4e1f8ae1e63220b668b67ed9b3c71af443273996a93a9b70e620f7e0e1eb0892d49675b6031b65ae07a60269b1bd353b05c0df2af6cb1a300a018772a5ef0658391175b439a982adabd54b1b7752dab479f58e6283609f4afd7c5c51944d557d9ea8bc2a984e2da5498adfea9980c9bc2da6a95eff4eb7d77d2fa61eee91dfcb313dde23258374c285814c8453adfef5f0a2fca7abb7e8bb77dcab74532f095b25d50916ff0c6ab556ea833096bf8380b76dce501644f3f3bbf1ed6ed88b1053ed651d694c7804f28fc69f4ca3669d09461ff6178b2b99c1de282918233066cd22f973b1f50ddb16c3ab074159055df9812c9f9204702b9abd259bf808c3db65e280e5402cd6f456b410175822ccab5a064d56abfafda70d948cf71efe340842685d1828143bd1fa7a4de87bcf0303005f866f716772fe33701d40b8635f090b5809a9c76b89dcae4d0fd742e662456c1102b202144ab7f416d3a7af1b489339ee3507269dee0f3c4bf1af1ac07c2f4563e1aa317bdb1b5f57f3400c1371cb571a012391ea7c64ce0a177b68885499e092d3e8cbddac5842167aa65330cde634f39cd85e588c4e6119dfc877cbcf8903b85b85248b0d4a3517c975334ec86c47d7fe2805739ffb79b74dcdd7f18481fb944fabbbca6292f45749754e31d496949bfb102e139a5623b3a9077e0a5c8ecb5ee5148a5af36189771e074d4bbe07548b42594858d1e48e9bdb5e271a1f1418c6ebb4727235547129377354930be672724a18aa7be337f685c38bda91837c6e87e50185c9d416078aa6d16a5c158dacd992a89731e757d04c6931c0123d6d3f29b84f35c2f1d4dfcfe3e7fc7aae45bec41069aeddb69ac39479415cdf83444c5bb8c28ddb900e2d2b5dfbdb7c6e5231901216e92afae5256f14371d3b48f9cb0610449e1fce145f7dbd7f20445c83b86377609b0098fc091bac1a63579d4521b3a5ea1a02e67f2b2ac2466e1cd8d01d578edbc7663a8d962ccc844f8fb188f29b71d80942b804cb3ddcd56239942dfd1722c48fbe275e8265ee3ebc9ef403b55a01c0077bef67be1508f37e67a536e686077c935bb443a970795f649a5180ba66a244bdc4281c32a80436876097aa95de244d152d843c8946b6d4d7e4dd718cfbd32cddc59171b6acb403d42dbe557f13ab61b4186020c81e5ee54d0793b392170873f821803079336c7e5e794c54aefe1a027b7b891f7f9ae1e012fd32fdb76068f1a930bb77f6f7291245d7c6d19cbfca80364a5147f8fb3b3e4adee06405a95e36de3f8186e4e240e4c987cdbb75352ebd8d78133c302e08090440b135b4455ea2816fbfb61d07b6fff8a12884f05f557c4f850ca30df3454f66f99c361590ac27b3f752f158548411814b2891756a8214be1b2d1f102092bbfe418b5a8ef206ae4363946d782fcb2387306165900859f11565edfe3eddda2cf4f8bbbab618ef22f2e8829289d9bcbd6e0d506aac42f445f1c7a2465ae13fccc50f83f208a346f7ce5508c485bf03b890a4222d52e1d6e197556a9440a8672a76e62e35084c80963abb5750d1a10a1b9b819dc91037316ee3282bc9086ebfb897b5d3d63659b2894d3788bcdc4afa4e1c8905cd0cb31ff5749ecda08ce1051be61ec1af012306e5bd27d719f50331810bcef91430b58a33416f8f74ed575be5a334d24d5d20abfdfc20f72badca4903e0890425526a147c01120082f1cc4f657ac5fd570bae6a3140dc06e535a6ae8726583d8ecf01c747dde9ca0d472a729bb850706a234f32797f8b4f1f2c13e7f71d3ee17a953a41ef9341968d70554cf7b93fe2956325927f73cf8b3b1ef4cfbf8e1224d6565e2755967333db52ba85191498298157d5ae3b11cac39500c4390d7d413b0156e359d0d78930e11f454654007b40ec72b2605707cf2d54d7ca032c4b6a7f6a7145ee9d4d636bd638d614918870e68a8a70d556caedc1fe47b777e34bcdb00bfced322249b904e33cfa5e011a508485c34544534a4b4f9849d38f87b4da471576a9508ae79dd6035fe06972e1839b278a5afe634ec4469085387e3c807cd85504b846b0caf1201f39cdc96d28c2d54872e37b283111cff2f82e30e0b5ba7488237ac23b14c26e5c321579cfc29623e7c8da8d6f967a85794a77200be743120fc3fdce15e1bf1250eac27d9351b9b800114ecd7f1f981cf05a3eb354cc9700712c468959df31034a7c6018eea3e97394695f04fe9db2362d9a68a026e0dcee106b0dde0af89e2718b5f25eecd9ea800816f5590d1a92e4a61542ce408efc1b225dc75e26b8364dafb01526f67edb120f0924880d5b216b0a4cb672c207198d0d984a29594f24d66524ac7bdbaa99f22ca26da86a12b53112e605f5f5b90e80a95a671d618fa9e718dc43ecc04d14a5ae12a3f7e8707687117e434f339f16f0d2d734b1a80c9a5327a7fe1e1098a4b99b3038d6697b478f2cdf503909bcd71e079e0c0d44df0fe08ac678db63667ad50c03a1c6dc67e3260bb3de45a6b5e74c9bdb3109fd2d5eea14d312bee5813abc13ef271e2a539ff550597b69ef65750c260335196de0e2234bb38f9960b80454835793d1fd393587f9cc2287816a3ac0eb4cf4ecf5efed4b8f7a7196e4efa78eddce124d311ee3eac5e82190ed415b07611dc528cf5b6f4f0d033f19a68f9f690aa68957a899f08b3a84cc30984340b1380b5f48651f3f175f37be500cb0aaafa72013e87318016f92bbde1fec5bbe55ace998fea101c01bd6321785636c15588b9a2fc8965a8d5afad02a426d88dd8cf01f6876d4eb2e6bc7cf3afe3a372d7d03d4196359f1bf0b08f70daa32c9f4cc8c3e28474c4fdfd7178e5a1a97468842e9c67848b2522cf547b42f17d45d25406ec568be2756e411445f29182cde15bb2c5d13157f9816a26081b04aa7b48a7eb22a8368873c2e733ccf62f342d204000c214ef10df66dfec6ba7d672a92e3f9a22f06b82c78a799a8e74ef1453a31b4f429f505e26b57ac5e71719877645381aea16f6223e1f5e195e36cb90313f0d2b8d9f5e15020f55371c064c4538165e1c163a60b89eab18d032d9f4db83449f07b00383e5da806ca5fa9e4c1f1f362d3cfd4d747e6709bf00ea5f8f0b72839f6e09384b4e06e055f7037442662e194cf6e190c08de84365d95fba561e435687fc2d707e7b69388897c18a9ea36e61ff9a747248f8c71daedf333ca0a7acfa5c654bf36f5b28bd16d09f328556241a7b81c6239d8787e1d2cae337015731776a44d6e8bd99846b5782ecd44ab7d559277ced359fc14992f02d6aaf57398bcb724d2ede00b3170c8a5d1df0ad333a45fe8e6d5c490b5b9d04bd5e3324e5490e86ce978990ae9b1e1fe807356e24ff99b7923291318f92add1a4406c0274dcede46b261c49ab33f0717df96629318cffd051b3406832bca190dea01e5233c33cafa8592b48b8c21f9d75ae75291ef02a5a5bca849c035dfb1566f5d9463e104107837f1928ed41c6d6c95f4feae9510bd3691322f0398aafe78f8496d61035b655a7754c0c631e367f509090960cbccc827b7b97a66f1fe1ee00b8e58197f7a9a961c686e178ff3e85e5976bff1e3dd3a927bb28672606ebf06ff59b45d70489bae9b044bd2c336c686cfecc7de9c3804009feb4b6cf96a6c3ea0fe9dcf48078b2335d63f833008aa85494c98423ca2f68d14b245f15d189d373ff46234c8a2c15abc19f39d90235e88b1c584b3ee6083e201ece6ccdb07cf07d6bc117752259ce7f4ad1162fdc58a2181c8383d8283e7f31b16b72de71db7c085aa6fd056eb85c2f3cefef81ec69769672b0c7d6f56f30dd468332ca3fb8de2afe1b8062d14d83d8bbf25c48e4ce0d18917bd9bf730c13706f41ca3f1d527b9327ff3c8ccdd0e50004a0de3413da6f9e850fc5aaf6d3610ba6670ebb21bcd901f6a064b3f872f5cb205bc51f449c6c9cbf456bc336108042c5a5c18b4b4123c266857dfd6791eb2309228a4dcb3b947a19729a21c1db50eaeb806f982c2d627d047ace3b0035c817f544fdda87941f128dbd20db6124b86e13ad3a656482d8c2f3950db1d5595d7fd23dd551c65c12fef11e35209cd3915d3d79b3c1f4a696f876e8716ca13ab2df88382365f262b206abe89b374816a9ae16deb53252bb46dfa26dcb452c6a3b0dacc5d8cf3ff8fdfe0c90480c721e190730f47b6500fcfb06e719ebf9af4b9650e57afe7fb910876053c9e530ea14178432f448a2e7b928a1a6a331e2233931c044a264e8ec57117cd158d419c0be13657b7fc2b72a9be76405b51bb16b6687a507b4d182588cb7b7593eabd330c12cf7a1b1e6ed428684a96a947deb6fd01d40febe45b54c0934d6d5152c3abe97ae728ce598f61e8686ba5262de206ad46ffc0c5d210a2b654d117bff3740fda9ea58af634392e827afcfb19d07c53ee10cde63c37fbd80e5f29aa6c560e9d3246ffe44c9c9ba4ce6133554b58ce2f2de469b636917541265e07bbfc95db49238699f3875e3d784c11d78682cfef8859cc3939901490cc4df193e8d21f1831992ab7a21c14b8a5c162702c65e70ee8d4217a1073f2ddf5792546a7e1b32ebdf7c48fb1d0c235ec6349cddf6b7a7d599982f03117ebaa95e7ef3867ec6dd749a73fece65d60af278aea80a3d3bf9ff10634c4103b22d0bd9bf36200a0fba8611e670895a88ed51c39e926209f5d67dda46ae7b1f2722f966d8dce931ebe63e2d200d38186291c2563b25b99ae9ff3c173697902ad87acc21ddafaea1238f7f015ba0b92432e4404e1647c375177c0aa220770b4dad6586de46e6147ef8f505652cec8869863861a2055772e92e5966b7c8ff46c093988178588de0a25df707562efbe5b0f18fe52db5dd61d0b49fa270586943359939216a7acb65565138de2c5b1bb19e7a5b082db0c8bf01f6563d764eed9e4ad68015fc6f2fc384832173ecf213f75f0cc28b7c40fbb4fd5a77b7b991c30d050f7afa25c7a21d04b470ec8429e3e4da543ce7b0ce5496ce5a349c12a6c82ea3b8ff66ca347e733380efdd78a4b2a1c57edafd005a6ab5f8be10b51fd55913fc84d8ca1126f9d15d7edc393e30b20325d18a590f92a0525cad130cc5e95f31357a4ed4235570b42f90977c4e854b091d821f87040046d65df7aa882780bae5c3953685e53ee7a574b3339aab504235172596730c40ee5172307b11557d48134ccc431affdf6c0a882c9a943c36fc9a47f0eeffd3ea884b904a80264d8b41b11d4ce93e27c22c3a3a2c0f56fc2ec19487ec49c928640c60fbb031834d1baeb05d8713d5ad0e3df53488b60c35b22cc7ac79b12943fd91522ac2aeec3b4cbb0a68e546455f31187b209a7ecc73e8b57ce615189ed5c66a9b4c82daed234072fe05010602003e6c9a36f0e20cf18e8c0e584dcca53c38ccd54e16813c39cb6b9c5761f57a79f9c4f5df49084441891dd7650de5a5ed847d9420823bf4e5a01fcf9d71e1758e2878aaa46a8bfff2807f9e5abcacf35d2bfc668be260fc6ddb2d51136d30879f333325240a570a69a1fa5ba120ad0578aee73c4888d3bbc5bfe9e391ae1c17ebe52b7eb81f4ab113f84fc364f168c20c708fcb917d9ae924270c41b7180926a0a95d28f4fd37d9a3cd8fc9408984d75f70279ca9c908fc6646d73f880e7a0f497b036d0f3c80f6d167f2db17b93fdc559155b297ffd7982b500c1bdf2ce1380d7a69d4298d40d634340e12fd0db956c028b969ca5b85b3922ab5e6a8e262b5af2726a7c35e5fbc380f6eb9be553d73913c5df13ce15848f6a93fea752dccbc6dd6cd3d483e61309d821d6a3f3179c9cfd223a8cbc57718d549849c4d20385a8233d0f840846bc77862426e8c08af9bc9f2a8995fd76f43d4a70f0a2c5c194de360879008f885e319361827beec9146fc29bc6d3c5cbf4682fe17408b82b133dfd6e4ddfdd3abd9fbb053310cc4e1519b6e82826c4a3312b1b8f6c8391cdd992fd89df8f9d4891f3ee79a074c583ea0e882cd632bfb08fc56e586714234b5b5e01d19897acb26391e17a652a5705dd649a7b1d0948c77cba22e1036816590627b7726d53ac3badc4dabfa7dcd30d5274cac44e68adbb93848acdcdee7c0a3c2f6fc4e5848e58c2cfc7fe7d1753988240485baea9eabdfd25ac68e01c158ccd8485c0f3f06f846b42d3d1150f30e40d401c7c3b30f2b743fd481ff054031339f9204066356a933efa8833e7736e2d15e7bf441c058c762e2a0efe33582918493de47ade206da404f1b76c85b81cb2c7ed4c4ff6ab10bade8f31f46da0d5d37e121e6fafa1d72aecbbb9adbed8759a54fcdc23c5a6116ff174fee6f675d76687e6bd3c8a2f04cb3876001109560a046e5ce504bc6d3ce9551571347a55b6bb53320850750566f3b01d79dcd65472155083c32e7dc06dcbe25025caba1af32ff69e6f624f062cb0d1a07d437e45db24af6fd0f59c7d051161d906ed932b728b280b69e4a1ff6b7bfeeef8f338487aea8b7bc21316952783d0aeae04c28e75a9dce5ec3f0b899e404f9c952a774d184661fd5c15b7f253567433c52e1a05c1e73a5555b112cd747672417868f9f50d3eac47560cc63396e2756d221a382e7719cc6be0c6d9540d960fe723de6b1e30862198ced832bbd1f8cf62ca5ad8f0bf591ea4e8a273f891573702776f338b46ea64e9fa2216e9bfeec9b0cf7cf6cb6c40633b8716b54625aed33c21f2d441053ee0e8a183b266654a89e77e85e95dca3a79a2d56453e346b6318ce7a29520a2ee5f0b530b5a116dd6e6f05d2e2ffea98d05a326c7ddc570c74860fcbc81dbe83d921e543214dd1d9ef56c7afc7b2ebeec898111fccbe1c5c1597a96a91f6d3bf9b998eacb74905f1ef6db69d99a02a13190e3b58e67899f38f7d9c77f0ecd05782cba5dd0e2dcd280ba26d39a20f4325c00af2e0a06c4e7c61766a8e3a36c60faca27f0e7f7c35095a2bdb645b7674ca3db101de12dac7eebe9ab6b1f3a5f5f0aacf6602c13a9b08f15ad92977bb12941c32cbe4287eb11abdb6277fbfd6da3c6dac4e60455d886d014b865ec44f544ca3fd3deaa1b90a96ba1713508c8027fa9389f46ef2b9faef19f32389e478418a1e0e08eaf0a5c8ecb2db06d3f30c9ad71c543db5b757b0cdf745bab4e2f92475e7e1757db640eb821c67f0694d9fa96ca5de3599c84ef0800004592f7253b52c238c9c53c5c54a7dbb4c06f42315cb882602e8dfbe4546e7c67f8a89371b0f196a398d78ca0d6e1af2e31ef0f9f03977bfe7b1d388157e9daa6cf39c2f81e469f511cb242568b108813ad2bc148efd94353ac34d8024c99f84b40c5ad1a4e54f8e8dad22c79ed0d24e8b53a6fc945059da7c399d5f403a105cce2301620bfb9b7f734ca689d5847129b41c93cd76c5ab167631d546637c324068a6303c87f82e8fb43a767b0a0ee597f90021d60db17e08d79856cb0265fef36d94b6c6288671a0d7217d507e6c9f5f58fe741da69883ce7e8f2b51a6fbf63ca32aa70a43d02b6b238097db604e2f37ef5f5d1f1707ccf51a2f59f1b235d3517cc6c667dcd4b360b8a6c000900fe3a216ab8dbc9f3932cc266355ece0657d9040aff7bd913401c07ea94946a11fe0e2614aecf268765462af6232483da69f46c2360e58f7549a78ddf5d45a08cd30f9fc100cf43010902c1ea32c7a47a3c71c01565e491a0f50794bd049fa6dc3daeb32e7017fec064ee11276e100114dfd410e2ac7d1f1a75405824dde4a8c4af3dfa8a0a8efe579e030c2f56054e3d8487c711bd541e1346e8b842c8da1f6d77365d6ca08d9c48ac435787a8a0b82eeb4ff808940ec652ada4c36e003cb30ec6ce2c8ec872f0f7660775a9b0a9e919f43e7df5e76cef4dfdf13d7a16f7c15d6abe49b4e953f45552ca0acc8666fad73b06ae590fca6bd04e62d1b461392191c85bab8d93708003cbcfd17cd16de1e742c17a8879adc40c2f875030f15ceb2183c7f5c2799305fb457ce7a2f404137a71f5b02ddfbe3cec530bf9073cdcbaccb1f93a2315a7a707745bd8f48ab9272849fe393b18924835407f34159d21fdee7a714ccb774b6af6b40a429dc75ef5ade88e4487a81877b5b9c2113e61737269aa7f0cdb9116e961fec15617c091583f71ab71c3b7882b404a19bb6aff670c4c7d4579c232d9d96db0653f6796c087f1fe7531f2dcb95324d6a6dd21994cdb0580247dc80f930d5455930c637d48f06ef22ebb252bbce3f64035aeffb62baf8d0267e7bbd722379b1125bebb9fc15cc20dcc9d8cc93911cb739dddd5bf1a9bbf4b967d19843f765ee0513f77a1f80bcfe0620be672519cfe8ca73c1164fbb7f3e4b810ea56d71497faa600c23632ea8c1376f2840c02a6bea1c10188c14d4a5be7980b5f11be9cd958a8381319234563b1532d570af75288fca650d0ac744c18a2f96d4487dd53479119289f7551fc01f1b3a8f403481551ec49d3e3239bd81e7d1b03762861382f0066775a42da1eb2b097778224ef7fc522a63a67082ade49f990b79a48ef6e5df69ce223ceb78653f831c06b34bc8190a1cb380b66a5236d0af948459f47a03d1d89dcc27f98d2bd1b174384505f4c164a55396d08dddb86035b029d392fb4703046b1c0150a82b98fec738126f3a43dc74a51b553865fe1c70969aa1da6ee9efea27212b54d36aff70031fdb79f9210c414ca9868dfb40d95e61e5a0295579a268389ae83877edf9cdc8da49c64bbf975782e7f5d5d2dd4e71f9a1bd9996101f1acc6c9991a00713d8f303582383f0a955d9c62752c17c6e99da851d7da7cac2e0d71fafd4de0129697919fd4292cdb075158a26f51ef76a2e0a889ca38d51be7933b23b36b692abdc30792f5684a836ceb3b2873c7de8d6e63f141c043d1254a1c07311a534fd059de01c85719c2d07859fc3b2a0676e9815bd35947a55073d249bfc5fd99bfed3092a19e86aff6b96c59a2cf90164863cdf458f189c34d24ef26d74227527bf6ddfa2bbce4d6c01c567fb2730b574a1e826c20f48610dda67aa44ee04aed1479da905c1a162f213498824f54239f61e25adea7b73f1836f422fb17f298435e3fdcbe2d45fc967b8f938e6a0b2910b0bfe8d160ff913cd3d94e4552bbe07b5ef3b0ccc0d2013f40adf30a0a64f1ad4ac538dd636607e8a7eb5d2087222fcf8cebae8ef5f6548712fcee1e128f81a1a66bb2d81cc112ea734ca80264593e6d3b6553df3afdc60052bfc2dbae842c874e8232a4d89b16ba3add6e7398011cbf080919262c9cbd1d73a7d0847a72da8f40ca471a655a58170b30222f1f4922150ae11c0b85bb5fdb2c067cdfa8ad8e9a128741bd533cd32f5eaff9b91ddfb06c88ba8fac4664fc1bfee5b6a443912da019e5ded5df7d478a93245103a18f556437e6b81ef1174b17b15ba602cea792594ab9828fdb2b28249617766fda210f1641614e8dec8acd4bdd4dc573039f9d12968377bb15f69ccaf50542d432e254d60f05acdb9468fd749faa1280ed9d0d7cee204e823bee4c147c259a217cd0b13c01c927275aec618eff54f01335a72e0ddcf63816fd4faa6fb67cd304970b844ce0f00245bb6be05250f479ab9e57f4a08f429754374d69d8ca99ef818967255a684f548d3f7fb3cf908c66735e4bac17682e1177fa7f8733e313fe65388c16c560b56adaf4d75e081ced72b61124756e52f6d1057284e8991b58e0114324e6c32016d85224125b86437f4b96d36dfa23e72ac3499115af830fb06ca8079cda91fe363fb92f93ada41d28a8bcd4235a2c4719840b987244616262774a4cfbf12ac55566b981cda004157842f0a2e82e36665c5d4caced810f0fd7ec360778144df7868990f1bedd460197eee762a3733b1cba7186d4e27902fc9ed89ab176edcfc3629f99e07bca91ed8286ce7244d3844497e84e25e0e612151402af7e40270915fe77a0b3ad0633fcd77aff8c36a80295ea2f5b2c35ff65327992b3f1e26ae1e72937c213a4a131a9b210864c553617ebf9f2708fa62fa61205dcdaed1d0fef88827748095f9bf5f0ba19cf143fa6b9be6739a384ce552b4411ab08280eaebf079f1b6c44c1b117b66d5fb6419d0dad5394c73cbf4c9294de47dc1c137b817dfca044e3ad782030fb01707548af357030c429b327d1f3dd46b619ea1042080787515c7a0cca1929cd0662bd2c2c77337fe6ccec0101bed25b58fe1e985ccb96acd9b143405260c18ff615adaab5a58a998d01e0ebbd09182351acaca204989694c1ff594c413bc4bb8b1a71ec00c49b8a8b5004e0607ad12b17a5c799d87892125c5a1264f1c444ec6e75ddb915ae6ae60d8e011703c4125dbbb6c7eae5bb4e3733f6c8cc6700d752245cf8d10944b9ab64b6fbaa629fa5480282917c38cc7379f361717fb08299979f100b2391ae1b258dc3fcd464882a3cf094acf13d09c81d8f23053926a4d25cd9008dd1ad36b4c8ec7939911a8e96f6d689b1642dde18d0823b5b0a7188a4275851bdfdc4159ed9810cd4a9220c4657a2defeb61aa0a2ae827d14346ddf68930d15d9b6488590d6749cf01f31d54c75bf016f1d7c1cf6668e86eedebd18eec93b758d13c3b5d27757fd3a2b2bc799fedb920288452432fd58f0de32d7a4ff2cda53886a45b751a34aaee193359a50c3d2598628831d8eecaf68f0a492aa0a1de7df82a428de2069f5426cd1f1b8bf941c3ed4574fa0953acfd445e251eb22fc49250ad7c46ec0ec439f7105501e7eb265983cfd8d2fe2d3b1a1c2b970e6cfc2ec46192d2eb89af91d3f47113213e059f037abd65770c5cf8f42a3e6da0e60bcf7b6ac7909d5d276d5b086ab799f3aab985a508a0af940b5dea36b05b4a474e784f13151b936391d098461428f03caff3376186cfb093621e166835b22726741f31125b399cc31b5be032fdd5e5dab10a8cf1a98a8ad31178771b6f6273f452fe5787903fa1d819c6063583aae2b8075c85009ab8f2e40f3d322899313686b0e71a0bff2a3dec18f945c595828afaec7700e54764b1634eb06149d961588b85e2e2d8eea8fa5a3b2eebd0078fb21e988f860b337c67fe871e391f2e7982fe5f04319f32ae668cc7a029e4eff481b4cacad97be6e79edb09acb74e706566c5aca260fd80d0da07832c038992a89e2ff2606968e48ad0931688901e84d0df84f9ac031cf64d0f4d16a8ceadfa20fe19e68eab6e195a8323dae3d4eb844cb7bc2713d467f94db06d654970c339214685aadacb18a5ca0d1e68cb18376c661c0b7bdc8df392cc6822ec005dc67593fb9c33ea7043f9d9ac8fd9d5d2628296e2aaf6839b1f440e8a6f9366711db1723078310cc6ae5fd22cc01a2bc71c00b19b3966193733b706d0cca8a8b325dce8affc93c99a29a75dc0ab451beb547a7e7e6a092511938ee14b13c48d3dd1788c688d1bf627fc9e3acab57c9ad41998ef7c65c5a794889753b2655c8cc853e1119856087a31d30be09addc598746d3412542323bd02af674994c787d23c4f05af8a6807720f8e46b24026e06e5141866c845f3b99988f9eeb6ae87250f350836ff190989c83a12f4dc2a5e0b946fdca141e3ee83c6c63d1d25cfeca02145fda8f76d4b2592b117cdd620d6e3257457fab2e4d14966d21c0dd7dedd7bcab874bf4dbbe7e2460bd94f529552c8b2a764782c3522a59e8646364a4a855e7e2c953c896e47eb1ae43258a2204e58e69cf8c31e1c72c50f5e46999df828bf4e27fd03d0100ca6d0e3872f976553b5404cfdfc4c225a4e245497bc3c778990f483a1041f5900432047240ead578ee939babe29b6bdc90b3f4742dfeef103702d344a7c7bc698aad0a7b99ed022cb210bb33e12fc893e1e69b8b1af3dd99f13479f2c3948e6ae232c11e14aed10863c321dd641d0e0de0cf9699be9f5fccaaddc98ae9a706013189156abf1b689aee57fb7812a809d9a6cdb17c3e881c17451efe6c5c0d77c11edd3dfe9650ce6eed6606f271c811635daea1e8251ae11249e996c3289e23c3c358afd877868c9fc20eade00ee85b130f51a97f3554dbff84a76c90c337d4eb2b208d6c2ed6da3f003da6c3a7c81c3dc10abe59460f2ea37f934f7eeabcd69be0d9b496fb0560a451240bfdb501bfb2bd558c50d42368671d35ff2994c2220dce753af51d92b20ab6617352cedfe81b23951fe1f6f67f85d803549da375b2ea0fc58e36c7a6b756219d697f320214bb4881378824ececf03cd2dcb848c9c6d2d3e20f4724847dc95064dfe4018225875bc3aa0a8df2ca579a6ab8121c1cfd72f82e541dd781551cfb170f15f8d0499c9f2bdddc077e765e905189087a8372bb7c842e5791fabe3af178936218c4357aea0f9da65da3b1d222012d9684c5601739d32ae6e4d0c0516978ddda7ae6ca19ddd6646f5e6082a1ad4f568a9c58efaecea9c6ff5ebb3c23c2f5614c920a3c76ce929c1a73da4b226157eaf9eb9aa111a417ebf838684c8cf3964773ccfd5388841cbfa062d31475e9db460dcf98dcfa44cefa8f289760d0e7ac058a35727356448a8a0a928b1a3c5537ed08d6832cb8ac816272e8380253f7d5dee4d6b4dc1e73e2bedf3ef73e9c039aa8f6f04053d2a7fe4b7399704834a87b62c76d90131372e47f6fb4374f2e6a7ec1ddbb4d31d9c9d99889fefd7adfcf7f3607ecd8492f9757ead502a9a8986903b50904e89b1ccb5e7721358984371e09f1f73ee88b317e7343190cc447948825d2a464115db5ba5bcc263f28123754bf400f58d744ae6b83d0b9feeac2f02cb8b1efc3844178f5c29b4a84d4ae2269742c13eb2638f3d00b910bb91be8ebb7e2aa935fa18dc00f933e1d0aa690c4a02122d4000423ae8d6042794360dadaabfb3666e7d418a8becf84ac65f99e18faf257cc2b74a4b7192e8b8de14be11ece20e8445453c9789a2d30eb226b74fbfaf2c01f00017b5adb804e75c12e2886cf23d838b7762e4adb7987df934be0218bd747c4df73849b2b7b4325dcdb0d961dd4a94d9686f34cf5db60263055fd474c9e20824ba61c6efba6436b3f45a50bfc0ad6a1eda3c5dc047e7a5513d958d6d5b44a36122f2264e77adfd46eaa926840a3a5e00f9002c929a653da8fe2cc0344927e1fcdaf7bef0cfef9070fc8248c8d1fcaf1c6d0a8e6fdc59f4a26ebe01464da51b30113430deba745854137b04f9f5be901bc0cdc345479ea8853322ba02509220c3e61ed6c8b2d4f8899b438d1a1dcc8803da7669a3ae1cd43e022527bf99cbf7d6c045cd319fa8cfdc36b03f289b4320d0fa6c08c1c43778826b738f2377273441cc294e3be12ad77c9f887a16f07681f5826e93faa3385fd07c50f458f533e7056fd7ff349480e52be38e5d2287eb9a5b9b52a6d791edbfafc7f0caa3d4808860c55389c288562b2dc22ee73fb136de5090945e52d1d078f34728b6650e4a5a40ae08074339b3dccb7dbc994ff7c1047897e6a861c54c632fbc5c66d6faf1b449e63642cdb7938abd61cef86f40e63387c3e1e1f43bc7a99c5e236360d4938c5112fe6279151abacbff7a45016e19bca0bff67bf33420eab8cab1204dc67177e68c0de51fb8b6cce3711f0ed851556b5c2c05e7d853760606e29d78846780b711c0b38fc5daf9187a4f5b432c784f5569ef15b1f66463fa1c685a8d9e1666ed1451a2327b785875183a829740dc32a634104c0088d0aeb6ce183d35fad3a2f796cdb0cdbce0f1dbf12075b2bbf03def0c9d179f6208b8261aef6b2a4c6a0e65d3ef78972413c3533f9f1514f393ebcd41f4ff7b78abee4684b29dff0054fe5cd1e25f5f475d5b52b2a10b0a0177900d5ad10ace6cd7f7302681657878e23a4b3c753289d62ff1e7c8b8b1ceb3d722dfee4b7ac00a604cf275d042af6a3a05d44f6af88e304f66a6e02c52370a679696fe288633112ebb6165afdc54c177cf4c5b3b63942dd22b24367edadbd39e8237cff713243c620f288d24992433deefb8a351672e8ad3f3637fdc493c9003c1d48fdc5199f9f33368998d3527f90de3f4a22bfdc315a1a459175b8f9043b032c1a29c5a906a92f107b5cda37e5f73c4805340ccfb4600cd6a65766360114e1f5c5a253e9c843d6ad382e02e59246d0bd4159c7e64989f1dacb2236ae8a40cb1fef57c2bee621329c51d258409a2f0b9b174ce48a7719a688fca17f12c8f770632a6df08442bf4129a20118084969aa868603c340b79670cb50f0b2e12aa77cad32ffaf0fe1eaa64d461c6c64f6381ddd09644e862d224617d3fe4e1111b50c037ee75c3d7bb7126e6f71df5b593bee0ef0877978b89aa2d006d42df4529b3f14f43d0e4c764a50fe635543cc46b516b9107f106d1389332ee97263d6e08700ded226bc2c0be23d1eaf9151b13230a31b3b29c913b1e139f6fddcb971401e29583127585b99918a643a7827fa4266dfcd2dca32486b438669c4d4a8e733856e9ac7b9024d308c3f2a2c456fd1dde5f91abb8d55ef0c05fff437f17bff63ed55211e682ecee4764782f81b6e42e9cbdbee9b0adf6ae2f355c6aeaf4b1f27a1adc117a3c7acf63c5fd14568779030f0eede12a6c4d806d2d67766ce27ee0005c11f9ab77d64b090b43653c41b9f51aa7542c418c870fc96ce096cbdce45af742db3c3f711a18a5071a92fcf1bf210c9ad4b08bdb3cbbc3be24d472bf9105b6196b37a80c2a046effab43e539d9230ceb7ae6e3a6de80f4fb4c92eb14bc5fbe7070da8fa7695867103f7f5b9f90eb167fc881509a7a7c90f48f37af265e52a24574644736a719dc68d13fa1a1740283606e3745a6a28c3aa052fb79b2db5f9e10d4cedab9a856abd82aa3cf12a2f7c1249fcb9e2d8762fb61c17c82730f523f7ab63de36e180b48d31f251b8b7aa7a70338b5b18512623692408f61787d01b01e8ae37d4b7c275c88bb025df569b23400cf21ce0a8384a597339806d3cb9ad04fbe8f87e79e23a4cbbd1ecd92a89eac075e473fc9bb3439fa19a4f413585eac88844140943f72dc511f113ec4344b80557ce57820fc9632b278e1adcb92817aabecee1506b544546cf44eca438eee93f3935763f29105a85118b80dd77a03543ba913d07463c7d15a8615c942b372555274aafc74967459f2bcedcfa551068feae8926f2dc90dddf8cb92f5d1db4fe209fbcb286a4e3a535f36d08820113e8351f1c34c9947056ef7592f71f393e2f33c0bdecb208b46e15c59583305a30d2e521de89749824f9405f41d999f66acd80269d76a0f67d244b150b6544c10ec4ca8bc8896e1bbf04a312e92a5a0ed7f655380198f13e15eb8443197233e43115f95e9d3274914199fa2540b360de5cb0427a68414f0c15901db58bd848e08903d99b46b4919c6d5e0f1d91c204c054b0975f0df716fb52168e132e82be707d5775c64a513751fdc190a3628f7f8d3a861e368698fdc005ae9ddaec883c3b8668ddad5e502f7b94d8a7bcbb28ae49826d399af86c8f858f85366cbf7f0eb6810bb987273ea0effabaf71328eeb5133c62ab100ba6b44a5bed0d580259cbf391ab7bcd1afc2d8b4ff759f2720f1155b4bf4b52fcf4c20523406c5523b31fddc01f6663d2f32a4e346b6ebc5cf4ee15bef1623025bbea97e80f7d9258f0385cfffa33339020b4467142f29f777500a459f58a55e3ae5852d9969aee667257a650dbed10759c068b1b61d9401a0214963367bf7af4aed74752313b480664788bea1f1e28e95d33435a6235f9ebe8e5484655703f3a0af052114cca447285df38e2f46c495c03b5513ade73d3704e24b1acca3e703593336f5331aa4d36c22be25eea2609304ba1b5a40717b7cc26dd998c58d2ec15d4e27e97ce458b48cb8308120647e0bae3f36e2e720578b9ebd8070d17790fc304d6d89622d44568ecd0889ed851a340d2b000c0b1287567ea8f67797ecefaeacd6dd4e48f3fe91667f5387ac9b9fc73a2a4113b82e3b8e144f307dde0beba8132fe14c6f1e8ae75700e57dae323d7b38229eae4efd3fbe968839416024fc41bd2953223ccde6e67cac56f69a7723f157ccbc8056743b3588c94ee991c5322615cae90bafef6d5a41a8e78b28707ae546d991cd84af9ae4525f1e6d75acf1f366f803f678a75ad966bc1340682837d9304a8219141f96abcd019ed85db638b0bfed85dbbaf4dcd5fa97ff0691b73539f36d2a037a243d34a97e44741fd126921d02fe76c7bb67d5815349fa240ec695c5e4337a742d3a9bb055bd541cafc4f925663233bf88e866ea8276f5c9a285162afd1f889978defedb4f98845a652a1a18eaa31ce890418134ac3c07b148642100eec48ac17e21c73f90b716e612e3fd104bf42ae51b9ea81d090a7b37360c9be8315e5f5e5b6c5743ff8663331f7f0f48da7afe3fbfda3b4c65c59a3cb51180c94688d0c94e98dd427b20541cde38527abb23b84a4750e9e38be86d17996481da9fe3fd2b94bd3bc1050d7648a4395562dfcc8d5cf63eb37225cff247e86006cb58e5b7bc969349b1dc3cec6cd976a9817dff7276a8cddfa13c18c1be37fbc167b5521ce503711b33899b0a4d59e7ddd9efff2f58cc4c0006c5e89ba162ae5202f6867cb3ab57c78a99c74b33e62508e7f8bbf1d81312f53e81996bc5c96afa73956d9dcd023d530e11d97248a1ce0572ef46649d865b68215a99d74b6c7d97bbf9ddf2577524490db3acbe764e17d19af7cba417d0f8fdd7e09300726398817550faea50587c0d8f2e12ee98d313cf8064e8056f83d839659a0f7e7f5eb9e4157f19e662e19ecf4c9cf823210eec0b85261ec868e6944e6f3699890a3aa93048e948fb876c11641cdce9588746573d5ea8999dabbe25b3e4fb7dbd4c23d221be653082f30e0bf560d8825fd80f2ee015ec17c15420ccb1ab173747e3ba4b9317c2703d3b951a966af4f53463e557d7fd71a7c7a6e2eb761112ea202cc39487bf9347151fe7e2043c637786eddd5fbf6b9d18acfad51f2d3d880b836a2daba7c0b3b4464192ac5431999daeaccb87daf70433652ea7bbac350d8c1171e66d00e5927b815764a46929cdd574625cc7a671ece4b807d22e0cd77f607bdae97b65a7fb1343766d7873fe98ea6244fdf194e20ae4221a5a6c90327da3db46702503c89a8526960bcb313ee5d7079fcaedb9e9dba6277166ef6ec2488976574431ca70ce43e8861b031d969dc96f4a535b0747f19dcdf2c9c26a262095499e05c629bd6e684420e82d536f03a22715fe2127096d3017225a4d5e1f141665fe82ca77b25fa5b8d2b4cfeada030b0c437acd26512a39d230022a33592d8f0eb3de8ec95d4525ae6402f40e717f542915aaa214d63a2ff19209d319a7a6f3cdb4ff2fc46ed4bea073757b5f89ac60d11c354fc2a922b6859d7e8d5535c9107eea3c8053b3973afb2f588448ff2eaa3c88ea3913bd2cd604da68339154ee3194fe9a97f64ee1a004f255b8d2732a1dfdb393ff60de821c4fbe68b122e13b760b4f466c6e4a63e065f5ddf226de9d297a400762a32aa52de6f562aee9cb7a48f25ca55f2d322ab43847fa15a0be46cb2830d0661bb63a1d44684e4f20c8de02defac187d7d7599e0b344e871f9b590c22f913562d26cde4be5cb55d9430fcb7ab5c67a0eb91a21b97f1c986bd99d96a8919207227ffcacec69d9d3d472e606010fc6da085e9020a778d954958f30add53051b127e63f771a42dea65c11546156af2a9c3a352abb4881eb343443e43a2b1099e8119ada9a84f86842695d8d48a8a1ed41f1489bdb276e4ff1a50fece1d632895c8717c96d2d44404bf1e401ab95f871d2a378a5aacbbca048ca87216081a2fa50add3b8dbd2f9cdbcd3226423f3253d74b535873a3744e31c825bde7a5dee555cb2eb8b206d4972f0ba733ee9e46ed72fdf3b4253ab52650e20f64fe127c4d2fa5df688f8f70eea176ff4bc42a68adef77a2caeed006cbe793e0e14b3cc7fb4ef2d590cd902c9c9521fadc66697868486cde680e30441a6d2e80e20dcb09b88ad9f7d48151ee0ef8df84c2f9ca6e5915b855b267eca36bcd763976654dff05821caf89aca29856abe3a1d2657b03816dcb2f28a82e0dc273463f5cb63a8c91c102d755c417f30ee94a441bc69932018d0140b309e7df91a98b2fa642c6abcc17590dfb2e86ab377c3da7b8bcecd71e86c13e77d5c7c8b919c22a2573ed5f54f4e6035a38dde63ee36eb7458854b69e0d0961844d00b056358883de4abab2f0d10ef72d2055d5977287c747575eef979523934d477a8635c0f1b6f449cd4846270ab0d35f751e00469f9b7dad8d597270db6612cce45902de93dc7204db070747fed36930336e08373b112b59b67b5753fd5863c75a7634b2aa184dbf572079e6ef50e9a819e8ba54492c44fbfcc569445615f8e388fb9fea1647587958a89232c0ed7bf564bd51c93ac4dd57142bfbc450cd49baec2cc18d893a903f06fd1f2d10a0936ac0471c9b9bdfc65d70527ed8fad695cc58455a292a78fb9c9fbff8372bba701b5b2eb6ec52368f5bd0586aa06a4a8592a74b31df3b81dc46914e782bc50b856faf2ff5e198caa9c77d4ea975d53ca90c4b025bc748671f5a9af95f6e210bc3c458417da18a2a23b9155c58122a1eafeac09882c9a6d4c6dc4a0b5a3b4ee35c7800eb774b8f170e0e6d2b38a462e813e7433282ecad66775e5a22d0d954502b95ff2872011e31290d868f88b7245546f4a39f495c2f38bc352a246ded0f04d6c209d95946034867a146e0004f95ef34513c8ae4d644e8d5975c16161aa8089dc6b0950784d504bad6429575e2273902a7165e4bb50d79f0b56de6718c9a6be4a369aa8ae667fac630cf4fdb3d28deed973f7c56a34421b2147370831760261113a0b0e10c0bec7101702526b08f73697cf5de04e1ff40aa77907e656922ca13e3116daf51814376fe060380692d66bf723a75aa8b1e80674ec0a174a1964de6e9c21cb0d33426781bfd4448c5a7d35db0159c31a4164977f54c3b628790e20953b7bdaff20958e3066c5d1a37264aed4c0b636dc8032d17ade07befb517a8f7a761d9185d3dcdfd6447e40811901de6285da66c0a436389666f5f42f205ff2e2a6d98d94194ac3a93c524b94225aeb31154318dbf897a7e3f947e520747772c1ec1dbcfe4c9820da48afbd54321db6252e13ebc3a5dad35e6f684fd04d2d449c5232516f03b5914dbc075554b9f205295a4f5f89286bcf3c3c4c27d83d3f0a856c7817a3515531093320d8899adc67e63693accac3caba5fa40db30ae051fc789d9b3f83915764b7c505a5804a34a41902e4ed693fe736fad87e928b8798ed09117afaee2aa9c5884e4002ed7ae4dded983f8c570ca7373f16540f0558842d1799d8a29c04bc1f7ab6d7a84c89660163f2c09e006402b7f30c5dc8371227192ab113422d992afce35732f19c41b81b7c80a1bfde672870244d4b45836e185b48748bbb6702c72e1f97300bd8a61fd5e6211cfac344882069f1d4d5be6ead03ea3e76cd95dc98d5b2c02c2426c64bc6f7cd2089f369803e695e0dfa770df7ee07a8be89d6d8cddb9601042c5d0980e0ed45e5ab1a88e996231f1ed6e4988bd2111ed0b0698119d1f754ab372e4bcc64e8d700b3318aa2193361fadf7728204e08787bedfb5e08c2a847b2e0afd6aac8a83ebd2b8f60299298ea61b32ce6a5551593bc6840a4464f6af8402170d2f7ec22f3c171dfb18e95da950f6df97b15fb53242af147134fca14bbb2410ee72795139d99283979cf59e5ba3dd96b8168ceb502acf8c180a44df44d6355011075a89b1a9218021e09e8791e74fdd2491be37427b25903616113a43ea76156b8b84264357144c8b686d0e4ee82c7af1583ccb0aac8f2725f59d6940274d9340bc67a886bf8b019a018dffb1e42eb2bf2cb84f7cc3f6c132e347c49d98b1983362bc2c409c80f25102239a685007921080331f27086717625ec3d08c6e200a9031367a2b3fcdfc54fe44cdb00a9496e95aea577fd76ac3ea5b955a0cf53dd9ac8948b56a15c67341aabe180c7bea658af0e025a5a6b6580ba9a4d3e71618a407f2ad6e6669989fb6dfa313a5ac6a55adb3bb27324e61c6bdb7f02ecf8844f03f09995957e13a88835af961272ea52b96922e7abf1289d574edf744d0959da592f92539394b125bdf1439543c0d23dafd84b84ae26ad9d0ea89a532a3a407c010b3d2de0fd62ad9c6533572c8fd6e414a7ab95635e58675e104aa2fd2c48ae1a03638d413be62ee66beea8a38774be32691ec04428705ee490ed5d0ae8fae218c69eebbce35d6bc37f29a7856b696fb7a7088dbe6debe5172492fce6b16f4a906abc8fcddf74dc5a6a3cfe35b514360368ebcc2a61de0528e4b9db552f131b5901a65ba22ef5d74157d53a71593c91bdb3ef625dfd7d9f876248a050f1c878a12e0bdf7d304ebc4265ee674df0f3a6c74ba323fd87eaad9fddb00ca28be479368c99bc3136a154516bebd3f72f6dd1cdd599f367f2a192364baabda682701832abcb5b360522530c45974e63508bf4ca10ec9a7fb47bd1254761d7c2500580a2c70996ca3cc1f53a5d7b2c35036bc372b1198838737f5f51b941097ab13cda77df6a16c0b67fda4d0a2c1e1d060edd858e1f95e1171a4cd1b39ec5701296cfbecb850492a85f38fc595701aa65178f41de51a7a31566bed160495bfacc8a2033a3c21830e0644065c924ae359c6f67cd4fe185b64c3d2a3c1b024a2c42a3a90fb9eea0975932ef5cdcd0bafa4f1d1349d73cd941b9a83748201ebaf87acc0c47375b017ffc1f8200883ad5f8c26ab5e3c3c034b7c40a2454e0c73c4a48847da44efa249121b8f3c8379b46d11763bb9e3c25f14c7efc17eea945eea12ff3d2aa4ba17aa80671ef76792f8e5b9174c9e208a1343360068558f2e9a42de29c3bdf07c85354f113324fb44fb2e227ecb7e20c7689e4b346aed9eee3602de43180e93606a2a174d904d21cc9ef6efb973585f5bdeac6a3093340584948bf19480f14ebf240ed511d4b89ff16c194795c8e528582fb08d71aa773adacb5314204216486b85d93a02b8489c68b701021c8df68abc39a277e40f56dd96389bcc100b86d64022cd60e57b51c70519a42ea41c6c33c8eafacf0d1fea4102f778902f7ee395a19359e914dd9e63f54e244642a2016d76da9555e76179f96b3fef69a594a338166f78fd9b94c0cb2a1de2fb1ed796711fce2357fdfc2863fe14521f3f8166d9eae5388862b766ce1189ac1ad40f77ba4235dea2a71b9741a8cbd85e0560fce76e4d8ad8509e763c8be5c8b8f1e43a34a98770e3d39207c546dc8979bf42da3adfe07d55201db19a741597056361c4666aa738672b08bcc6232f0b18593d61a0e2818da7a3aaa8b320ca8f82c79a58ca2a5a1ae2b365b37396c4c1fccc02e1384a9c80a51a9f62d1ee4478076889c16a61dd24483082042cf80265099d8bf32d9136c925d0f4e7113d64376b830596b9eec486524d67ec86725e0ff826e85723969dae89d46c41004be083349778c35cc9cccfa65eecad896c4f1cd336838224b2ed627033bbd26e4a6bafcf0592d8187ba7314930da14a05797770298a1a0326ffb94fab5ba30fba480fd0953792ad96ef477f45b220c37b90433a12f09506b2731e048c649d0537234a7932cfc5b7f043e6e5a657773dae20c852ac3f8ed65157a18d9faefe2399216028203ab9d6f9427ee5bd24c78666617120d75d0f6a01bd1731819b89ba9ba18d0aaa9829945547276a1fc4c1e5c188dd0597350e58182cfa053bf780d78c10755681e5bb7a4a914395a0ce74e986073b10c9cb0a9b6852ce6dde18e89f6aaee69770da81beefad80f200a5d5384c56a6b75a4be69bc44f1d69adb6e79a448739051bc33e39c8e300594df2aa14eab97df876b8f1bd6573f19056167b23f3b9dea530be6d045f07eab784909da2f5d7bc4592039d726d11f25bc18b1497621a591f8275a05c92057c2455f587c36400c34e4fdfa231321dc41c31f32ef53910011878423a71feb754d300809a64c064c2af90a325637925fec7d0bb2db982afca705c1ff4622995cfda70d6f6f7a44eb4c1b64454c69e73a6c81e172cc941977f396ded0f33f129a0b31a16906e4abfe4bc138a556a0365e3af9f22a16f58b6b2f671436196ba3a026836de42721c9ebd9847e09d947274b9b8a83ea525a949903c4f44709be122431e40b1aeb32f378447de1b861de1992463785fde5e90e1d872ba727260889d4948ddbe20d4f5709e2b953cc3d3a13f9df9b8860454415656df084275c7a772f9a4d9689c6067a24ef2686f857924cb204e71460243a7a0ff10b9f0c1fd961b2d93053cb522d8cecfebcf31828e9b933dc571ac0e7195be56f1d3f2722bd9f01592586df717c3558acc81325bfbba3e5e538819c9f8ceb64b1d86216598b24ef5269bfa3ad34afacb12dbd5100197b7aaf7a3caefbbada4932a6b20a10d9bcef590fc4ba38a53a7057188e55d5b96a2cee4079c71cc2bb4c8db843dc1e58b3c98ac3507ea7ecc94ee7867fc38cfe3113e95f1c993846aea50c4adbf2331d584eb1f07d6efef1bfa641007e26fccee5c37b077f0eb502a796ddc1a6796c411b51ddc954a383fe73858790ce53774560a22441a5a1e1da71baefea7e4a7712bffb2f95033b27d7f9b11bd493e51fcd30c87b75328c01c3d36222eed4857b90c783e1df722131d46d9b550ae08342d2a6797253c07dbe5197dfd960ce0f32121ba355d7124c8e22f2a8d00e47184f6d94e77378386176923c846a58479b7e400ba866e23fba0a02e78bf8f08523079a2ea6d846c033b2e2e69c69371d9515824756c9f886db8ebb4d418e0aa721ea85dc071b3777ac0a6eed321ff66b276781d5c12014a663692f715de8b6011548be5bb9e0a415f9f4ce8b916ec7eb9e18365ab1ee7d3febe7029666667f357f02ea3c258c7d3dad8b7f26ccdc9c220dddfc038f08da8ed90f8cffea24bdb944adebf732799ce8f22b25490df2781ab213ae9ef83b8849e387f7c6c9d21d20f57f8f261e268cc5185e5783c2625a992731330e02b50e3480ee4b7556f3ece3c40a6fa6aa2e887c16479d4057409ae48996438d85c03a270ddc7c3a55f2a90a8bf61a2ea410d3fb09e77efddfd8cb32806ec0d6fad19224c2276f4edb99f332e8c45b72aaadf7b4950ee2041278133eafe31bc992d8f10bb287e20a2bb0cb05c5e68e87c1b7ed16eecaa6feae670b9424ab30512f3f3030bd5b71e5b67b22fbae0b7ad94f1968b1cabbe96ed953c9b68c2e1e43d8bc1fd488655e3197cd3230efcbe09de997b6d2788b5db0db3719e7a17aeecb2bd08038c933459408d051a1ad9b4f4c2817dc406668fdd89df58f846db5381bdb60257d5943946b68eec48ad0bae271763ac02a0c4c75dacde8e69a68972448b252bbc6a94d25efe9e1e019daf6f19eb0954d87131bd0417afa775b0f38c2b693fda78f064fe3b2d23e4cd522683c779177f6c8013a12747e4248b35c34ae89a695f63a41a0a065aa84de7dc6ccff1e0ee0ba6a17495769a687f70e3c73b71b58354ff4c0f0ebc44544f1ae541d85e55d8f54bb2c9af132e6124ccb3b25cfe9d4406f8f3e8fc174467b7b1ce4b11e399ca5fde9919c76fcc403a35ba5163340fec25e44519c82f2684cbe42cea5ccdf6db6da6d641cfa40aad4468119edd9971c40375d7860d6385b54b46d6f1b6e607ad16951a99653809094f09bb029139de3d101681a5004456f855e11cb51b5facc4b7a1ed0a18f88088b0dffee428257b7fea0404d437f2c2db0538162f1b8c6b20288094d30373122515cb8f2a8dceae18fc349b641bbde32916141609a070551c999f7a6178776b71962d26c56586eda0ea039bdb51da4591cd8eeff968683c1e54270a843eb29a9d8845075aa5bfb2132a77be44142ad9803d5d0379d579eeebbed1f640d813bcc2aa8ca6464a26077a0dbff381f5c295bd556d4723e573bc462d0df0fea4c01d2b6f227ef0e5fd4922d15f7abcd407fdb2b6fa6603fbcf7969515e17a763ed1aefc03921b3aad4a6ae38fb929898ec54de73eb9c2977ee819ff09389dbba0e83042b8b13eff0a2328b4866236a5119e5f8274076631be8c42abac0408d9e30453701a3ad3c23a769c94cb7588a4fd6cce88c9cfb7080854f968eac13d7df4dc7faa417a06ecb86b54649b24ae9810bb49c2c52ce30784499a0156a963f37916814c3c4ac8f62b151d93512265eb7221ea5c2a5b5a59d849dd3b32ea6256127c29efbcf81db13cf60d4fc4b6d8d8411584270ac8fc87a8c91c3164aa351993aae22d46193dce3579262e16f55c0432a7e16059f02fb0ced2d13b1cc74b691aef873da16e9e1c374b39f40c0f1e36d52aed71b189b5d63e2a361e4572b38a75e2379ddc07370e5e321bd05623a77dc3d362f581ae62fe4b1e98eae6e949e7dca8672f709e65c954e9e4958f68ea8a94e405b0f392b80482763cb6b0ee0feb62f9dccfeb21d3b2c9b1803eeb65d960a7e14e40a4b7c1152af14d5e314c56c4a1bc4455986ab095930040c9f9098ae122143e3babcc985f891168ed5c91d79f5f3ab796cc8a8fd00127774f65be1ce4abcdc588a2c5f74c1b1f6e952323b12ccaa1238ca9411d85853280a2bf9c942b24abfd877dc7b43637b8a1c7fe06560151a74a9465461c46030fbccd13d600a1d23934ae6397284034886cd945c22aca8e702a13b79a3ab39b0d0a41218e53121f7445ef8d7741e4b8efd48a80a436d35ed211ca704dfc29c2634484be7c5f925a748eb75bbfcafa554ec6fcac5a2fe5ef8c0528ca2cb7e31078a3c1eb9dba6ee10d3cca249ded600e40f66d32dd24325a22eeec77d28bbf19a9029e33e1026538ec96681dcf94e0f0fe470a393a5e3091e7087605028bb191f0e262475e2be4c08b421bc0fad3a6ae715bff1dd599df773205bd843940645d0a6d04366a089d8f48a6ec7b81fe3c65b9baef2e2e923aeef242f4368c6fb537f937c1a7038f49d21c3b8cf7b7b65fd5b5902e2d20e49560820838edfbb53ee639d50db9c228a2dd9dfda483d655d46ba4c6ee6af70f612341770b2f3ce55c82f3b923a60c9d0a6b176ba2eb6e5b5377a729cbdb6c70109f9f0e663ec65a51c0dc33137a456f0959c787c9eca9e91779878b70d18c15779e7237fc3efaaa74bd543a7190284bad8afbee61e531538012c96aae5a25aa598d0747d7cbadf467877828ed105653e16421d13a003d7ab79ad11edc7fd9d8a214cfe59d8734dacfe6247eaf691fc7a4dd5936d31702691272ba39c84f78fc5f04ba919af85c25c1054151022b5600d3cdda69d4df59fa03abd815fe73623cb3da17af22f513c951f93c24219b856538b7a5640a6202ade9ba474a7ce1fe5023e91c568de331f1095a4521764b6199af75d3950cf39a2c9b33e99d25a276aa6ba836059b4c8ce9b00127c0af6e2710a4738dfb15fbd66c4f94dade9817c534e1d06624d718f464b85bd9106b0c3c97b604a83297dba155f4f7b700480a44c1bc59abf9ba9af44651ae75c1bf668595ff5cd04bd2291e40ea5d3c8e781186371205733a5a67a575c82dc607ef56110a7e921c4d5a3cdae3c42882a1feec1891ea4c1276965d2edfaa3137b97b048b32c5fdc11de984ab4471935e3fdc487b7b4af9e5d51c5fd6500b8f6de397c19f541ae9681676cb88fbde0f122c934db6e5ddaadf9869815da8b7114cddca30954942f3be042e304c88fead37ae272106656b837a604e02deb1efb618b008b8e1ed255f835f5533e15e049e2172d7210d0ed6e27e09980d48279c78fd7524f12f30352ce0ce58b13d9592a32e9c4b7b8a9698e051fa4af594f434599b328d9832c5ae0f9da6d743440e86d9bb5f2dc5787f051e43c85815604ff14078d82fe0e58e3d89854fbdd3b54085f362aa34abd2013573d465f128d2424513e14c8541b34d2f409e13140f07ac8f0f8e4dc706fbdbecfcc95015632016d11d42182b2cb2565168b53509f599bcd33cab196e2f016669bad509aa257a9e7dfe93c464992e2ab93984efb50dc504c1475acf05c89d7f1786ee1fd6f2f3308965873eb3441c4c5d6054622618a0b0747f0b5352b09161666ced5d38eea0552b2eb01d5e1d43e8b150af98d2b54a5cdaad916dae9e03a32b78805058f8449bff008de4ae21d3de595b106a98d7d83f27f5a39f7dee52716937a1e97039c2cd3a78e4ab4311863ae3f9e5ee5a001796badc0156ce3de154e81690d170e27fc2a729b8ad6e0185590ee326d3e87bcbc9431a3638d2d43d9480541bd65afd78e3bfbc07cdcf9eedf1ceb9cb38f160e657a4d84d718bce33dc4aaee418a9f4c9b5bea8d1d825a03a702e9ad28502abf12b5689f86fa00d256119864e5f76a945d56f92e989fea9465ac5bd68fb7e81c357d4415bd3ee50354970561cef14cbd21d0c77b0b607cb06e650bb8dad21e2e42804d4a2a53beaa80d3ef71d2ee9467a3a927bed1abc5aab559b88ebcdfce46a48924d1a18819e1056bf713b56ded49844882823e6e20ce66bd75b104b3bc318002ef223c810c067c372fc0ff652e3e53794833d2cbfaf943290a4413f3aead7db4af4628baa2a3bb25e0630ff9f9ed109b9902f5d5cb8c12590da8f5066a74d9353b58c9bb37d3c29682c06c2fba8114fd2152fa40aa6363007e8448dbaacd0c4b612ccf210175f2edb23500a7d046be0d48305a687b0f84c602d89e334efbe2c407dfb0bcb05acb5810649caed953c6d4441b9b4693d22e0b24394075725e900b89ba8df5dc715ccf01c4adf9ea576fe863d5b311588e7776b56f6a57532a57d28b3ba97983b995548b832c4e20572a3e2af41a2c85deef4c3c440bf27bf5cefec435794de490410eeefc7e779e00b2811e3ec9ed61f6ba470f5c5f5b39fdb862ee763ba544972f4680cede5f70934c80f9d0cf824047a25555331b6be4deb6bee4b4f21620976a506cdebf2e1b88230a5b9b73cb774b9e3d253f32841502829a1bd445d1b4b6797c9f78018de1c0afd557e346b689b6407b3c6b50dd70cbfe287b4b69e59ef65a5cc0200fce0e3c6913b6bfbde22d3e5003bb9d9b7a2697a2e70eea58c535ae0287789f47f0848e75b0992754a547e71bfaa950d6802a6b4d729282787ac9233970fc74446aff5421952e47fa12bea74f0adbaa406d949f179c7d36a33074d77bc5e0bf744e508d535868a10ab427e9f55ee532c0159c2ee2118e3dbb7011b5cd4a288b2091223c7c67c5cada8dcd4aa7620e1724fa5dad47a68c35c307470bffa80b85cf249494a9befb4c19f0abc888d525ec57b7661cd76733c23096a7eb774aed0a72733d09be7e1d23142b9e978be4d6de9d40c0210a41f5fc4baa758895e867a405eaeb9b4aaf7d6f5267ccf7699ae3eaf9202178c5959373cec4492cbeb54a40b1fd70ba4868ddcb05b73035221a85e9da9321e67b34da0cca783e73b988d07701eefc7c539ef5a2a10e90d26038cac44e2504baefbe7a8f4771259bef783081b6fbf54411a385cb93e6f7cfc3ddf7ddbd457f3e441f1d162d132eadef48072e1c0aef402ae5bdad4821f7d4fd5da9d470f8cd685c39c9f1a293346af99961a9da06d112f9ef988b8e0583625bb9c764c462ee9923733df3407b0e8add0ee86712243d164ad6627ca599d0a84fce0bb3aa1e2cce13a454e1ec341d5ab4b2205c56c6de50702766c8ce5c5eea8b635abd696b0c05f70f9688a003f151ac6753718c6dbf73e6e3e935e2e5a0c5879b133541d87ffac47f291cecaa9a3945fbe58f343de3cbab86107dd41d28211811260a4b72e623e5fa394b0b3c5bc910faa490bb4dbc10cb7b04d808ec50685d85642c9130b098a410f1487a1620708cd65ba77a879923bd3fe8f4c2d4c92d59fe03c0e50ab6cb4552ca8dfdf561ecfa891e2e911fafae14318dd164acefa669a119cf4c9725c4ad70ea3dfb2bdaf7dd3e9b9bcc768cdb61e5f5cacdaa8bfaaba743f4d59632907b3a7c5e9ab6d668c13d91787970a99d32b50ca96f84de1b6e58e8f7f3262d8188d9679e9e3464d358e41f64e93e9ef13b41414a14e70a7f1eeb215cc62c3cc106dc31e24caf39de779dd17560e5efcb7e82af22060fc758403106a89b44b98d278b474fecd739b74225816c39a2cb2f91c4508a67ffc0659ca15b1e20840f716317d6e2ad1a473263de55c8a299f98bfb3345c74428a3ac1f08de7e669de58c5985ad368ad92c5f91d92529041f59cdaddf4c17a6db0e8fb88777c441e6f0b0317c8f63d82dcb4c9c147ec6839ab097378d0f2653514632d401a7c4574317cbd097120a494c4388d97de72fd9afe0c0cdac0c0bd190458f1bd4fbd89aa9f447ca8e1a4642bf3539cebdad46622224491c608e43864adacb4b4113d12c1fd224b680ce4390c8444bb6d6303b05df6c88943624ce9128de64e9baf02218bd37bc7a7bf39a4bfba2f9f60ba7b710084d6a0b39eba6cac8358683dc191ee3a516a21e253090c817ea07ebbbbc5b4691dfc173ed1190104efc7b200321a171ccd762d5497e636b1f1ff6844359872035ab1fcea84566b123f958b0ae57382da0580f97c1b1874cdea137744aaa7f5a9947ae673bbf22974c6f27f8532d5bfa8bcef7bc965fabd5ecec3b859af1309ea201768b43ffe6fee829405618c1cac16a79765aad8c1fdc2b8a99558af19fc08bfff51aa056cb2f2a32e68dd61e28a228618165f2cb8422fbdd7d657012751ae17240ad4819ad1d05b25118bc1ab4cd3b5337761c5bec199d9eafc6688157dc51d68b6704098649667be411ee1aebeb0ffc4622da435f2522341566aefc25b35d400804e6fbd8c6fa6a9a6c4e174e40b6ca36515b7708ce1a0cf9de2cd4fb93e9ec51d72972513b669ba616edf77acf76b435fb4c6154e8fca8d6c449449999167c3bcdb51ba88be9e6761f1f975c968535956a0a4104b8c9218a73aa3c9009b8fe65546f83357b19adf5e291fa62298ffb58201f9517ab0de1719319f66622e66468ab60875ed40275110d9acac954c591c895bf255879980435b226dc7b343c3cdf4531c834feb5dec9db5298b5a5a7d0e5e3ba97b75896c29aad732870655c6c00a12b94e95e54ebc260a6ca4e943a10aee61c6dd430d61c14af6137c8610e812045efa1ab34df8ef424a3774fe098f3b410cd6e8428580a9afc284da9c85453820764abe6f1e3259f3c2be27753e07dc01c3600fd9f128ed255981b4539ef49f9871a1ee7977d98a71268b76d6447fce266adcecbb2cad9c3ff922a1b091316378255fd87da5469b88e6ba7151949b7ffb5449555dcb31628642d598dc4a965a2769158ddb129537db72ddcb44d396980fe2a2ddc31e5167cfe836bc07e072d24c081f80f71cdda81d1ffbb2741b58dce39b9029a08db3c030bca687039d8cba4564070e02d9b33442feadf518781a227e8df018606ad10fcae1556594791042d645163531d0a859f2490e3c0d43af1cdd21c69c5afd1faa882779f89fdd9be873bb49117ae4efae9a8a8be01159b054cd0ba753b0370ca1676930905f3a479258e35e8b166d0d7f1da2ac1cd2b770678ffe41c00aea60056f6b24d8b21b38a4f27cb8d3778d4b1654450d276e5d61b8aadb9d21312665681a154ac1a49748cc08dead32b710350211091e7adae1af2fe85d0681cc8710b84a4c4d46adf6c09cd72a0085e73f1cb760e9abf476645c6fc5fe7291a345b18d7e37d6ebd07e20cf5fa3cc5134131ad053c2a1c5fb1129a2be7d66f23e43404d4224d34c0c232a547e6e82ae15d4122fe2016a1fc1e490afb029c19989957b3eceda1cd30d4883992a425548e4c5f8fbe160a60fd44c4504c18ae344a643f2b7c62f23259af350da4ab6454fc9fbe31169d1e2e6c9e58b411a93a2d8f4d33e0144afc6eea5493e2be51472e744c2661a8841b203773b0d95a3a0355cc2b99631990bfc27b32713092f5faa9b12c1dc5c6da4572498d74daeb8afee9ae729fcf101e57e1404b01e189b6e3db021605f1d34bc00cf75e8d9a4f10650b9e3a7083e972282a86158d4f02656b098b688408663d90b981f41dd0f13d67c89ead61f555c1b5578a5b403718f7a83f3b83e5932492e54aa6280d0e453405224ecc718f7a4a9ebd8642637f42811ee8878e6870edf9d4508c1f38dd2723c75fdd7d863c38a9c66c9a24cd3fe78bed3daf2b7dbf6ede3f340213e582a97656553f57f7488d48324303e9082f69ed19420ff0c710766072436f04750e62f926ee53764de10868d6a98ba1b8f4230ffb512ffd69010b156a885c740d02be93f02fcf40ae1f599ba84a0340ef97d59b3111d908df7778bea0cfc049fbdd67bf6bec796dc29686f4246579cd610b3ae640292d693f9bc1b8711ae51f974596cbe7798039598f2f55cb0412d3aebf8b929dd353d9fc6e89f514ed0eb770bb87698d39ccf902dc65a1e35e7b98c462533276eaf4d5c865916451f83ee3077a6fc0742727f7aea48b39a172d015574114b1807bea6bb259dea030c202afc15e14e967c462f9d0ec767f041b6248d6f1e03f0786f6fb3c5a242700300feeb3f595b5a1f21fa857e359d2483e3ea919259a82c574e3fcce6c57565d606fe3a954b2548f971f9832c7268d143dbd699911b5ba7ac25698e9ec1818e61a2b3bc600491f1b70cd1b95013a5386a3a5440131ef95fa893ec87da47b38179122245104b3aff31d989803870ca17db4719b8a83a2c4edbf9ee0ed221fb3981514d3bfdf1eb94d53fffd71c398677eae59ad4160be2551950859037b03071560c7a19df073c96945e5a77f98ad43ca6018d509bfa7153d0d27cf4f14b8ae48856c457153a2c7fbc4d7f576b09575aa4dcec72c99fbc9b212a91e0bde0f5b61a8b5d434562611916f63fa25c6b4c14478ec39145bd4e1cb6db5aff206c7a01a6ba295b48fb5a24eca4ab3735c9b50cffd5bbeaa8fd88ab997871b44677bec6e60e6be8a4cd28ba0e0cc1495cd6d9cb07a3dd2abf05d1f0466a99db27e165723ecf766274ebd5ca8abbbf46da4d07e3df014f7c67f8a5b38208a1d7abd06278187787d5309ac5661adc95acb61b57f4aec837573590a260cc3daeecfe001535ff9583e80fc00e5bfb6131ea1c94c2e2a7bb23efb8917ed50836c0c577ef607e73c7c41d59c126db088dcacbe005fedcc1f302b0be9e5e2eb444c83b845d734e1fdd797b7b4ce7db4b5872c3fb48e387c3bff501184fc66cdde6dc59563b03bb14b4970e70d30cc450a63c186930971bc59d6cfae6bb2d84b657a8c20e58b6d83904ad70855705bed686815cd18133615027f8cc6895b4359f6fd2872c9a2ab89360a44cfc1fb7567e5785b9e02210e5d79aeaa165eb5e4f12a560712af3bed96d3c6f66715fa93b6ede3844c2c98874cb7147ca8e5530e595cdc2ecdeb88f5120dd44daf27b5315c4ceea9f8f328c0a515a0c3172dcc4b3df1236aaf8437c31da1ea881e829cc2445fc52fe65823b55636fb7838463633bb6de100dfdddf56043bc24709936eaf59a3a7d6efe3df58cc8c8fc00f800456e9cd1da5c9a581142a54b347c51d2dc3af711375a3af1176ecf13066449c174f58dd3b70b4b1cd7af10a91b9cf2d73f6e916e684a700cd2f675f6a07ff82feb80e7443f9f7762de0b6b8c0e1b8ca5e5d9bd3beadea457648bbc26df1f6a388ffdd4b60934f7ce9fc6d06805de96fba8c5915fbcf46b3e48dfb4156996ffd2bb460996a9069a5ca4e21990a7bfbddf0c8bc945ca969e9e675f8431c8bb18158cae64e8bb03ca3ba9ae6b441bf6ea2c08d7a451c7632388418e91e7d65b2e6613c225501b38fa87875e727ab37b0368bacdda1e00bd7ddcb284649e62a4bdd007f63df63793d95c8bc9a00cfe9a43283195d01f4911c91b76f15420ec218e5d259975cf10c2aba43a47a0727ba49e97bfeb23bfcffa0b8b983bb21d5151f3a1dcad85bb9edad29c67e875bd29e844a607af6c16881209e5ccc382204f25a99f50c9de0e47227373f99f25438381a885fdf154d0907ae4db1014ad22aa452db595949725abab851db6381e40c2192c13fd78db7a66da1de5b8a333a369fc5f8e07c6e5c3fbe7ef6be54f8cf90174d9ce0a4f2fd549fa7125deb634b37f6773913b1b84b4eeefa3f05d4a5f15a8f8d24e228bd778ed7b5a77961142d1584006693abf21f55bb74b3145dfbc31cb31d6564cf4cb3ae13147b1719a84e30db910fd617ebefe87d2e729e134b9cd97cba8f7aec2519f565d6e1761c720a76a7e08e499af69a2a85792704f63e9a91e21317913619452ed96ee74262ef1dfc1bd1dbceeac870b2cf9dcb0d77a6507174f3201f1af90f43e3a4fde656b46889317bc95dc7a7462e7dc6af3f1bb2f832c9981c8de4db5aab0b0a14246d0ecc6927de42cb43dad6414c34fcaa8728aa30aa7193712b96d4822e159de10c82d7c6a079d2fa64041bff5074e671d3a1f1d03c07815a8c9f4d2792421662dba64ddf2500cb94a3a26a18fa4fd08b55b3d884f05cb4282105f512bc0c2c5235da5dcf343b13c104f8af4d30f96986b1533a749e16f12bd07f3655011e1eab053851a843233945234c41456615388a6dcbb0cd6506ee4dfab9c7bd00265d250606df462d3cae6c127ee5f7fc52b8a66a1f44aaea57959b27db9fcc5fc634d0db50bee0b9922acc50a738109e212e17bbb4222753a78709c34cc790c70c66accb3f924671da2ddc8042b7a4bf8e16dbcbc2938117ae15bbb3ef6167765f9df5c9524bca0dd4d1a723ae67a2a9fd3bfcd9430c60880c1671070ece89f4490066b2219a07ddc165345fdbe5c8db2640a35f186f4dbb61a81c96c6245d0c0303810fc9edc75b94fcdf5e325d67df43a359d4ef958dfb88dff9787579358c03b2635aa0e2edd6512ca33e83e4e2efac218e31cbcfb0973066295707ea1acecd28f83b33eda3bf01d94ef67fec6e736f39bc645c1e36c95f984640fc03656e08424d1f2f68f86414c987760d535405520559d730c317ea1d3e65f3c7c0b33865b398f7190feab2b6ece1057c3f58f8ff27272d80757aa7bec35046593b663fb7c8f0fe2c2a57ebe6df5c8a32783082f3ccf07944e142fc5f61b1467e966e88a3d298bb9837d00128f640b6f7c2b0bdca9f9a352efd472138aa5e481db7ffe56695671ac5e7979cb07ab0f3e7138682b274e635b84393dab6b19d7bfbfe08c538709db304fd57749e1d8879313d91fc0de5d45445be0477ed32799b219d3e708b9425110f8302d73d514a6f1d0808ee6a2e667a09727372101144c0c5a36426771b3d6dee1325e1f53e98a182560d0876cda56a03eb8f3f7d5bc52f49b899aec3bf2a0885fd2a0284ca30301b061ca0fcde2fd7ad78cf12adc26ad9ee5934323cf256402c967a15a139f0bb20ddfbc530e82dfbf1821e9aa523eba54cd303b4c691473f53a61b24e31119701c1ba791e5a11a1199d1d7e73760ed7f0e32320bbb150855e3aab2a24982b6e9bab319e1e0896c4e3657833a3eb4cfc150f255fbb0af58a268cbdbb31e999afdd91126e12ec2122eaae8430cf08cd71c598137e3cf3ee486d9a6ce6327e09918d9b21af50986f549dfe6784cd2f62dad5b7f6602bbc050c2be97af3481d4edecd76d1d2a3126f594d4256ed037a9960abf5271eba5611ef80240186ad443ff82317f3e8f1a7a79d11ef0e5a6d628dc5fb91b500aa6e5abec3ad03688ea54595adb4c45bb3c8e988bb09c8dc871860dd90add877cae9b94b1a650ef7f9ac6f250c62abce6531c8b51de83f72f46343c971f896892c9e98fe5d36dd0e8c89c1b6282bac79964fc1e10d2e04623c9f6a4ce6e4436ad970f8969667466b412583885f10cb66583df7724c9a13e49ef3ce6858d366fe9b8132cf04ce8c96f757f6d06c7ca786e8919609ad5374ef4d0a1f92ed6e180272e2bbb11280db7f3b6dbd1e36356bb8cdb83e5ce306ac0cce92da124f8cf7c3d7582abd9cfc72b3c02bae44cedf4524c2496883f0fb2bacfc3a8d98a6e302bcd8fbfc2dab20b782c01c9ea9604f3f432da1cd0ec73755716d13791b40b727751ab0ceb78e746aeaea669a918fca474a849733158a492d87e46400f0b9c83e4807087538bf21a171855322de3d952a66c31a2727d362b2e2b1e0460d3f8e8793b3fedafef5fc8d1ec3c57527d0f4eefb943d12e6f37e2ebd97dbd6afaf915f7145ed63dc32fbd79665ed56f74fc93e148736900725812dba3bda7ba71bba7c912138b5a4049b2ce45f9f800e91dd9d09330191229b8325c173b96d804361d99564aa98c1260eadf84e1eae7daf840d305e8a505c5aaad2412c944923c438d35339ea3a4dc0ea2c7282f036ddf8a94696e3fe8f6b4af2ee3033663b586c04840e26346f2d635b21100012a8413fc57d7a2ab431e8a6ca2147e5d3577c26c4a833cda6b94caf58483deed8d5e189602e4ac6650f77658f26b9a97227ae5b8d2954a7db5c71f7acf502874f8c73c790a9a87eddc17ed04fb4f01fd8eee86984f4b3effea79e892c21b2a6605f019301f6ce36b0f1e0b0b4de5f2b590a7816c824a859dcb8e716e6bb9e7df6e39aab6016330c2f273fa6fa5aca615a62cdad80e94b850fc69dea759470d36cedb08baedbf46c2a365962b9ab5f1462fd9ad5add0e8a7733221d4e06e97e58e56665c6d49e61dd2a12ebce01a3ed5fd13ae46b6121ab863b577b912065ba9ce5b5aa8b6656cd8704f9ae8b47699b3dcc1d0990fbc66bf8bfae509d3f59442223f6683c14a2f4868953958c909155cf93da875b398895bfff94f055d5fe63e8396fa4fdba2abb794b5df07998cf8e9becbd3b580717bb61ba7f77e94a3545d4aee3ab0fec08b023e9d2538535d2a976fb483a58df8f7a870ca7047d8e306a09532f5ffb4b740aacf5d6f63c149033d87418badae7259223c99862483d118550725a220a9e7f4f8dfa0d79838b71b4635ca888e5cd9f48300d84bcda439d69adbdb7072dfc4c81fdc3a8ca6991b87e2540c7dcfc95ef50ce2424453e810e944e2b502b86e5969df9991dc22c676cb975379a7cd539292b13e4bad9ae9e3de6fd74accd45030291cebc42c3daffda1ede85e3b30dde0942242c94dbb26e902c42d581304f55b0a7f0608a3ad92a11dd2c77c12e3453cf524458d0ad5d30a47e0ed65fa596a8863a3c4c9a6ea3185c270ea9c3a41fcd54642e10ff9a0b037e27c4d0a0fe210171775cef7203137a140976199a48c88a7d722fe0f446dac6d24f83db942ec509bada49e3f9bc8e96447a708b44c810bbeb7ad4f841255f5fa1c04cf75237908968bdeeea33a1bbe03adbc27cc0bf26742f55e8d89d3f0c5b722026523cd639881d54e3842272f9c7117e3a96a7bfdb8d6143b97c848c8de93470e06fc540872048824aeb978573ccce140af4afdc5933523f73de546afe5df7129f8e83606428cd27ea45a8bebd2f0c277969227bb685c4451e59f4757f129112cdfa57f587f0a6c2884e685b89796fdc01e6a2f1009ba13870617aca60aed0087145a5a541f88c897eec2d40496917191faf09af1d1b3b515e30687ea1dc97e323966c9f5b7d3c6039c62cffde1c15e0ba136d030338492e7bb8fee691b96613c71e4a55a01a988eaeea9865764d6015c3900972f7bda2229c6ff657a2f13de0caef76088a69615fbfe1bad58b0533d390296c6fa356657107d4a1e50acc03d74df811c7e0a35ce97ddc053fe757c16f57bea8d1b7572ef04e8fc8057a70a5970e7ac21dd408a9d4411f6f95541c19df958c8a83d266757a985e3fdf7b365d85d00c7ea24057e6ed751e6f64a53815b41aa137e5d3f569b66e6c39483364099c340c26a9c3a8e855b0cd548a90100f8d18e2f8362f97958e3b08b4b2607d1dc8569f1b15ae6958fd0ad453b864962fe6b4450b164b641eb3b302e1342e650a5515786b2b411f0a2d79c44420667167dc2720d55b88f049d6cd394943fce509565f5929a666423af3d5c43a45292457c2d74b426791993a0c85b3a17dfad26b6081e8ca80547844fa8792ddee9f7690faed7cfe06f6024d8ee939bc684607c2ef430ee29698a872f59e54250f1e31df0334f7f126d3edcdfe50f68de5de10e880e00f09e8046da21beb70b1caa21762cff6a401d77fdaa65d19d5d5e94057585af6c5ee5af641d1ce7efbac158b1afb22df2df997bc97d9e6978eef5f9446ec7d1e9c7d1543c397e14755b360e71ca262302bb44ebb2f2253596204225f0f968253cb43153c559b78dd69c85fb3dcebc615b09bf48dbf71bbd02f3f9b67f7a0174fe09d2d340e4cf0917df41ee6df136cb4c93fe633c020146b47f75baf8743e7ddb31594f75bb54332ec8f48f2fe1f86aa30fd0b5f63f09b3c02a2887be7c164ee1f4dac538596ae42ecdeae8d4afd6898d9cb1af08b011a29047c4efe5081a61ffe54d27ae608a00007fed707d44ff81855218a215d73c451ba191241ad1b8f8eb7bc52a5bf9892e79d1b3a17d61e07fd4f44b82405f14654394a297121b4cb3d4ec5cae4758a6c9c123a7ea5cba7c10da553604229f6f20890d561da1d9c9e6eec97111abc15af8e3c831216d586e2eaa95d204b0ef449409be3c4b98413478e8642f5225194fffadcf25900790ab9fa41d2874ca3741986da02d906e588eb4678bb46b0afc96ee664f54b73fa5fe7c4ec86d3e597fb40165c72d2da61f7b2a04bb617ba1cb546aeeb8336e818bea93ff41c9b4d91a4cf9c563854575905177f8da1a26e5eb77625cea0d4bc56932d720fcd87ade486b8a95bc342f5604b261e103e1cf97090ce865039b0c4fbaed84e04993d5999890e7043556850c9696b48f318d8ca7e735d81fe638036fede3643d377f8778b4b33c42bbd9a9e3e4d1d64a0e8c12391a8f782d13eac7f08a0ebcd1318ad7c1406626a38176153231c43fd8847c0e01af6feb6e311dc046a56b13fd8ae5ef2f70f1843084d6cc6f6f970b53fbe894be0b53ba5b528236786e9bfddfdeae1e89e0bd3eaa96b7e02916e6aab7563984e2b7b18d49acdf9443f4dc2554904309a961280d3597bb106fb4c6f67a47d9fd6ec48f46894e303e42848ea2ed3563fbeacbc2fc31a0fc50f049a705429ec9074c5482a918c7973626cf79876f3d19e875831a2291f9c0c5e1b60ed991c3362e7920a9a13590e3fbab268b514b3df0020499365f6fe1456a281053896f77820b93f64ed96241a5bced0238dbe0468b139e4f57e011ec781de6a6fd73c021bfd229ee809658115ed4970f726e6c5b18a56da7f0a9d547e31c4c4fb69503cc6eff4c1457c27fff1cfbf6654a504d657bc2fe37a037c70d8c904f40b2b3f23cb67fe48b847cd5bc92666b30aa38ba5df615c374158361cbd95a7da5221495d2a5e0b75bbd864cb869fa24d3fa29eb493828c4ae52be354f29dadb9d0fa3f796b55279422e142ecf5393321a71aa55d04a91d37844ba68468f8ba9957fd2c76d338fede76a5c9a538328a77f12fd01c61618e6da4bbb2855d10517eb5e59c21c1308864e530aeefcfef99a7037a96ca76374c430e1f70ea3438fb61abda2a8de55d7f31cad7b5a14dd1247a5d9c91ad53007e3f9a2f082bdf56f0ae6309450a186b73b375993cacb8d055717480e4114c6e9bd4d0bb87a28d1483395900105e84a08e7fc8efc8f12ecc0d646702256e5fc006a4f8b7089fee4d7d875d731d33e23b9ebe9a3eefe292b4e5ea257a30cc7c00586997145ba0d42829296d57952b85e7d7f6dea48d381b2d89e807771296ca0205e96519313c5c56be461442fd654013fc90753e579d5eab24dafb6a90fb0ade6b9064313e3ab6b73655113ba183f0e7520be510cd1a8846a447d416e1ee05fc3a37a8f66490af35d25761ae8f74d17ff4e43a487f2559f00ed3bc73c6b930d6341d0f1174d9b16fefe9ad24bbd4551f5198e639a2da78e0a9c49d389cb6b2d05572b1f2b35c90811c0a68fe2a67b8abb9294c45736e10cbd0b20661a568b5b4e5fc34ed6d4c9340e1101029b2718d25d89251cf880924d0678a1bd31600e2ddca11b84df9307c9b644765415f4579c82b4f074d98db18c75b173e57814d6889283dd3440afe42d8b7bab311cc1e7f4a3e1ad392513db88c51e1cc8d5fa8e96e0b62d72e3ac65ab0018cb4614c068cf68b95f6ed6ac7543ddb5cf224d6386bd1d4be3ec6c36a59401cd08311d30344638fa78207f0eab385b4bdd0cb4dcd58e9aec155a1cad9215e28e174928a5b7ce574c415cb513a51963dfd639728e8de0eada0ad8efda97b07dcd156b4ebebcc6ac6fe066e1509e90d537e09d1f72aebd0120c70c96c6125c52390a841bbc7a790236cdc3ef63fe0e7c479c1b92b3725446a4e9d2e04aa6a0fb2b43e95be7a96ee33d9b6f2487dafc6d6daf2ce7cfb015cfe7d5f019857304d284a6d7d26aafe0e45797d697cdbbec7354a3af006a15033eb72e50243521cdec0ed4875b9afcee2e375dc7bce473ccd61e5d92c5919e0947bc6505329b70ec043ab4f4e5840284d1e2d4ea841725f983f4834669efec8a46f3a5741894ccb64ed5e3770cb08fd58d9a0d75df9c8fb65a709b1304b73d0f0a98d854ca51b209a7dec0c1706fffa5ebbe2f752b63851140ba3136c58b27c27059a7276fc88ee5a7389d38fed8704139a94b8283047d522cbcfdb70ba68259c8785430fbfc4c2602dd2bf275f7f904768412abe7593692bcae54228e6643012b5c94b9869451e5116bb1c207c7915a479c753d772455bc82a1ccb8b0cf59185d6fcc0cdcb763f7bb5c6daa29c14bc4855ad32781f66a694cffffa9cabe718d8f7ffdf54fc1d228572396ab8f450dc0990202fb6966740e2ed99abfebf9669e064cb913784f2eb0fc35c10e943f658c65e188944ed7967df0fe6d2096cb6a3ccc873ea028886e9a4d067b11c80b0e5127476090f1062cc2a8f0668d85962307c85578860d48bdd52cc8a299880a86a452839827f4fb3567a372b15badb00e2e3a4c28f0e22cb0d4e0fc062f99fcceb36cb7935af66678e820f2d768cba7eaf0d0053aadf1ec5defc392864f1a5375f4e80a415f489959c146d240a3ae11195aef9402e21666024bb2434df3030a75edce8db61eb5be362780266c5e43a735342db170a98e065462c0effb17c9f1e6d77a47380780f88612379aa1e4b4b29bc16c72b44db9f04a0050f1c30ef29e0b1ce8a6a310de8af092bf584abd7c4999d89aeda045ed71b4aa1ca8cef76c7010ea3f1cf3e5ac779c715458e7410b99cc2e61a853aff2bb0509c00b02f08e75191a1d4d332d3cc217a00d223f87c95b099b38ce65d78e7deeb6cbb4d450c8d87f93c7422cf1dd0d173d4c75ce9525987e7e1a52434ace8eeddd076591c8aa8ebdd6c39cf33cf3f94eacd0d76d08652198122a8429b231db14952962106c4c52ee655f02df52b5ca7942bbfbd22e6c68c9854f58433f4e4c3fe5e47da154c59867c0e3d06a9a571b7bf83c6ac92b476b4229c62805cb2445a936e0caa70213b22e2a5c23e2b4a153b1ad774c3c1ca84d92aa8bae569b02e4790d49f21bcee6e008fcaf79adb6d007aed0dff1bae9f9121e75cafbb0e368aa2dc53cd27028f40a36fa98836d26f3112ae608177dedad1ea0fa192fc7b871fd8924ffa085fbd1f18226a2cd2fffd1f5d88d695cbbe682199c39a8dffe7ba4eea7c6905d788e5a7f2601cdf07f88d8952c83179114810db1637d9ae7b60917a48b4d2b347599889cf1f9f69ea8776de631858ee9fc1b194d138677262fea4655b8f0719818e513f80fc2f3f365c75e75e7ac3ad0c252bba62446e06e76ce7b2ed319279ad964fd5dbf10384664e31b5ed64abf3d36476701b5c88f6d562bc17160d056a37605216bda2d13fac7a2122c26c4e795db2f4995e52a168b8d4a9e462c91fd323308e53da3811eba624a2d30687d03e90db7ce3e3ae0a804928adfc096677b57751cab8cc09b6859469a332c53747c7fd7921ee692bcc156d2f04193831bb0e8d8fc1af08505d96ab638a1cb0e4c82316e1b01481b8cc29cf134c5e18c37898242528e1a4f9d1f2657080dec8584479f27d79c52fcaa50abb426e880f1c1bc1bf7985e583ec477eb0263791c6e831e259cf4a4564aee9b549f724c796385aefa0f285c9911096230332a68edeaede814e0acd85858e620a7208c9f636fb475c3710929adc7ca7ac6dea019cefb8fd0709cdcda44f77fae5ee0bf04f81d48d8ed22221e7ec50e5f22a7256239806ff0943d49d47dee610d6efe95c43e446f4693300bb4ef0cb1554de6b5bf28eb35623f636a378c8af23adf2a27a480a5069f7ab94d88e6780c3a4dca87d8c67d063730f48d963f1756c89b9a5a1e248abefeb9990ddc74090be22fd21a960c2db0632ebca6383014bbf499202e59fef9a2e985cce0cc2364be7fed0bf6fceae04f553f3f55d80f89d8c6e56c2bffaf386bf07cab40791544992c5925a7a3e4563c8d6a8db9a33df393dd59fc59b580edfa06d297f47afd62197fa65fc9a7d90128296bc2c87cb2625d0b90c81c246a338128fcb45eace8ba7cb1c49dbc8cb65e1e35e5476e5db5ad143428f710819f9967f242dded6ace12bae8c11439062d4f72264d1f2d8f8b51d2025216934d9d8c4c80c5f7231e9d1b0a3f6eda8f176de445628023cc6f6aaa7a6a664836e216ee04a97a198869e3a9edd8d05323e0e86de3ef7aeafe7ddb61bbc4f2903b2935586b6b320cf77fc5671f8dc078948b7e985b38a158139e34a1ed458ea1ad09553ac54cb1e5fbe6c7d91500f320899ce448a3ec1f3b6f5fb5681677205c7bf6a07b773d528669540ebbbf4dbfefdf75d186a6f414792f4881f0c20033c09aa2f28cbc62f58f6538b072b709faae3d1e7755e981d44584e58376f882065cb6a5e8438c9945ff0f9cdb7d1a47dd233e3926e595da7f78b118335ace643fa3b387f9284ae341e24b77c9572f583b4d9fd7c14e563acba5459207d89370d178a555923cfac03026e72e2a719592256e72698300d136f6850f028b73fa8e007f0260b3354b9026e09482aa80b8dbfac3df16a5c149b83e5f1948951c53b96342b6bf70090f3fa680a4a182b2d1750d10020547aacb10efbd2af8901f8bc9a0a7bf843eaabb297395f895367e0da17e475a9fe0c97df7db608dd67a324a0c6c6a7628fef77eab499a76d4cf5b67a53f57e0325a3228a9d276753a57305c497a3517a05602b4b32701b9ba2b0abde5e6e0d472924b39a71cf10898b663689959938c5f8f26712ad2ec8fbf24e497937c05597b23bc8419e8f26e3da5d8ee0292d7729da9f1c3d18a4c9ee46e3aef7f7f8e58208e2668f69a52a58c9557fbfc4ec0e3cbab39764ba390cacb9772f4840bf91cab49f4b8442fe4a7d322fef2c8131a111d47b8a19af736831cd8bd2433f102919c357447f445cf3fe33bc134861893d3c61bfe18024bf158af1a1412d5b0adb30834c4abbe87c4587c9dd560eaff136033386c1a6ca6147faefc2cd37b6496f60c58e342807ed6e13b2e3275d8a67a13b0bea819ad8a9aaabb5728b5e1767655f33170b432a2c8d8f4ed1447c4faab8200c745d8ca530dbd7c44b923501905b4bac42a65a53f0182e0d9c0819d993da7cdbefe3617add666e84919037e051418b0cc112a46991e61beae8101861bd6749e05ef74bf81c8644543a1e08f28d338cafec7b53010a79d948ce5e2f8b495c98212313c53c09b1880d9d5de00b42d44a2ec96d4cfa9a32a3270195599777a0b4f2212b269ff0b5351230b50b801856c39c115a09abe0fd78d9d595bd890c182e73641bb27cd8fa6c090a8997966967e67d14e362c5e63ff3c6f8b90b11b5839af4cfee192779d8097f18a00623b5a0b10dc70c4774d4147352a95ad0974cc5859fc8fe1eff22e11cfcb854aa8d740e7d06a4f5d854e916d1d57754b0ad8434bd35439aabe38563abf5ad8851f825684ed4a3516f796e407218bb9e808426f96d92be3f2107045151ee81b4ae5692f3a2c711beb99870b8214c9e918e1b6920642a93f1c64ced8817c7cc9ce6b1bf4efed5fe5b4c0595a29c5f2ca1a288f2c40a1bead4452ea72d1a1180ab4d2721f7a4e4da43d465a7bf9453e195fa814d6595d99daaeca85f58d74d9de96ec247b41a188f5d69d4e7f5665e5c54fa8b85e8aff7cfc46cdf53d0293d4699cc072e35099cfde708d1e8fa5febba21cd00cb8a8383bcf15265a3d0d523e59f243c5a8a3dcac72171afecede549db7891567a506c67382248773acc3ec5115dfde6c3ed0ee141ade1ac11f99c2e295670ea37e237bdb485ee5f262602e93037c445f5787da39813e6084e7f59c7662b2c36c0252e4f7d72d0e4bf4fb9e5271859aedc1c1a0a52c579d77068a48a63c080a37f9ff58939e16e0851f831a9495b64b78424f15f0dc4d2226d5893841364798c312c674e44f510e2444cbe3c44aa3327a20297ecde4ef71dcd3df398318c5248c33b2c0dcf0c213ec965d56fb9c1ce3f36cb4cc47aedccebf4b31a2b5feed23d7486b41d5f229bcba9f220839dd93c1df559f5a2a057828773eb69667456727c452fd593542bf6223257e708eb6c3199623967441253460d7f716b1c33333ac38944069701fcc035a8c8d1100b03b867852ef14ed23d9f56e464e1c626bc1575f90cefd67ae18b7914da0ce7f23dba86f8d693d4a739c0cf50811dab79a9a928a4f575267310d262b7077678d350c4fd06180ad224fe5785529ee5682084ba5d93dda0291c0ede0c42a412a5eb9b7a4d2eb38effebd7973c0067277b8b4e6df4b44284a070a0cde7d31232c7591e60ebae4ef98694ed0db0acfd95025a955a1ae7c00850eae20da2a13db1424795678a0fe1a0c8f01f63fd7eda33c17af5af1274719e0ff59e2318fdee4ae5beb43a6857456302ca26f4b1fcde868d011604a2e8872671efa81c7d035bd01faad5b5b6bdc29d382168c8348198e2ffbcde3af768e02f21c054d2474e1a134ed1236e412ce82699569ab5e4961f8958086380b6e539ab6a12ac28f0325b3a34de12e88e7cae50607b4020d33fc5c92e44f072a8da5fed17b233cd31f977bdf30b8f3528e67590560a04d6b2db87005008c70090197f8a20c02c7a1bb51242b32bb4253997c8578fe00473b60ecf3148a9b1d8c1fa1aa8e206679da811c88f2274465d11ff5b82e5084529cadf3b3ed03d2beefc1eabc4ca982863af794f80165064c12cf04aae4270bf61e94cd3436d2b0d82faeab026b8e7076e0b802cd6dfb7be55ab424b5796bc153471012a6561bdbcf7f33c636d41666bdeb99e66791742b11b31412d2209cff98b9ce5f79050cc244611b0c93a8e30a61ab05263bf59a227fd5a060b249bf30ed22f442042f120c13a217ae7611e3e4ee56e2a635b4610c9bb7a60405e9be26afea00f412addc3a26b421ec8cda839117cd1b00e3fcbbb056834fb76b7700a877c3099dfc46c0ba7ddd59187b6e75907909358e78c836e79df30e8212bb2579ffc52e298282f207aac6b58b93bf884afc8bd7715c6e660c34a113f03fcb7590179777d6d875e3fc51f1c840ad7a17d9489d4f151a68b47e1c93ba7ef88d41386ef6fa906e78fb85262596a2f2ea342bf58cc2bfe473dff5b02456fd6b92ed4d295d509b0a56ca7af1afdeba58a8b1edea5cea4d9da47c0c21e63047fa18be999aa80e0020d6f517d52496abe8d95fcbe6d17dd98f874ab7cce38e13dd4c2b512c8a2b666ab688ef8af5411bd4cb7f5cdacacccaee81090a07aca66fde900418a1cefb0b7664a0dacb61c1c079cece4a232a718ce65bd64643d14857275d65f91e49c215366fa7d27bdd6ea90779cee8188caae64d703b6a9d782d928c0b525965a9a91a6725713d05014b609c81cb62221d42aab366ba0399e1c7e4ea2844a7835b4447e2bceff73939636365545902ddf6a8ea936b5923532451533fe54d6e3c6ac32b2c30ee5cf8a54fe19428f2add1830453a3db5e58bfadd5c3c272e074c6c0a7bcdc7435b30dff4431f1874b710981165887e2ba4b85f9405f27cd29904f46db5d377221000121c2261e5c09e52467778a3377622868ba2996d571c8ccbd573be5c24e0f1a02fafc2fa3d181e37cbb593e81b41a1379343251e593b0699048ed3e3d988d720b983f80f1b7411a90abdf1fc616ec20f2350ac7d04794325db0d9d35f8f53b5bf6d69fd67a74495667dc75aed10e1442821d4549084d855ee02393640781f046e9ee327d9c6a37944ce826a6b5def90bcbda27fb3705914a300737c73cc8c68f521668842a4b58347bf0dd1b3339293f3ad3257f352d3dcc9a4f4403ffcc2e42f67cc950c0e6a69f2ca978665e119a2107ae5eccb01715310c92103dbbed2dbfffd3c92522f376e28b0ee79f159e89af518707d4bae8af6dd895569c8dfb177d5ac6409728f71c420be1e75da4aae3bc709c2ced2e679563e4298ba22df8ae463e73aad848641cabba757eff855ccc6fce655c3d0ce3d27f8a643244e87dfe38ff3e001db6d7cc2c030273c3d89a3eab0791044c43f38e93099ddfad732c96ff75591111ba579fffb6b3d74658d85045015b7cb3af454ceddaed910d43faeb27bb3cafa68ed9799ab82985e90d90f3bca7d46dfa82c03e0c2fa26b6d1a1ea410007b2faac69410073ea8985124214c72b359c59ff26e3c59b9a1a5b4aa88148b2a5e118115cc8d09dd86e99c5449de1e48a394e925db337dfb1b3e7d5c1d7acb046b024f7a611311cd4da43c8c33c7358d0983852033b509b7ff624b5587c6cb021b6ea00146d75cf697dc2bec0e8a39456025615ca4171364062c2465e2417900282822e84bfb804b59bdd68b6b2bf85a2fccdb2837cd29f397462b3b7ba1078aaff489bd5b5a331972fdd929e1febf8ffaea103f0fe2b0bade8d210498b64757232a29b71d214a837d6c6eb4871429b9d1ba73647d32743bdbae237d8a3bd84f5f5afac0f77712b6c7822d5a6b48e3e7b1605326532aa41ecae10a6ed62b9dde479f66a2c8d8e26586d65a3b211b30952d427341be5f70dc49d7312a8175d19af1a238f9be62dfcae06cfba1529b09aa8046f1711875d58eadf9ce4e9ac9ea5b6b9143da3f209d335bbb49e2863cda799ecadb3856af31e1914502307788160d3360d2e19228ba0b4184507a5ba2838348e6716646bd1a381e652b83f9ebb01cc6434c498f37b4ba4b7f010d067aac2a0a77d3dc37106df958813f4a593baf6650e502451768534a17ee6861d0ba22e5633059e82f377d3144dbe4220c68f5951bb344eeaf08c93e651f5245fff6506d4a8c16ebb8d4266e1af00deb5f6f05b3447fbb509433577f73058f23ef241ac7708012e2d3b24b15929c463a631061dec8a12cc1ebf152976aad2477b54e01bf5b008a263f77d35551a2f252b719c24907f1472e32e572b64c6398ad560439472201c025487b8290cd30bfa39211eaaed01a024a4ce28296c4ab4d8a2fe242265a246978f888bb1689e4d90932c2a427b04c7b7e037a1948f9fd7a85f00698be4aa26933589f21c8da08d177e3ea026c5d26419d18566bbc6b464deb29112c83a2ef587e72dfb023804ed8317079f3f216eceeeef02a6aa251bb37992712805c5318f36e0b9e893586890ec3bfcc82213069a51a2fefb3b03385731eb9fa9a790da95a5a95ad0d014900d1ac77f19127be644970a8cd1b2a4a34cb14e1beb692620565f7b4a2b76ed9e873050ab7eaf9ff07666538b6cc5dacddc6f8165d50faf8c59bbdaaf59f7ec68bcf584e9ee9413f898e30d694cc5ba6188f7c07f106987dc3426f1b24af8da5ae4884cac2901977c4941f3328a4519b5d4d34742e724a3ce9bd8ec23580119ab476b78e3b864c9fca84d50088e70ebca928ed9fc38b9ab6dfe42435eb4de11c604f1e79bba33850a62b6adb5e827ae67df5ce656b1520b0be67abe2459c3f69b8db3f77414e0a8e29ae27df33c927bcba0f7b1af91125094a566feba0ed8f5bdaf406126c5a667dcdcdf827da4808342f0b26ffb684998b3fcbf0d5ffee818f8a3653c932d67d269f4576d52912250e36d86e908ba45bb21438548971931ff8f6aa7763c25fad5ca611d1075c5540a6157f7e7261fa420b70b636e2d36c4298f15ac46eaffcf7631c8668e3efa4f473bfaa9b7aa6ec6be5430d68a855a6e2c600857b3bbd13a80444ace4e7788bdfafec0ae07ac370421b7a0b04b91df3408c26d019d8ac831cc9b87152bf6b718a5ace2fa4069573d9d61fa22b1a9db58e3ca482de4033ab733f141211b1a6d855e8c6631c4c6b46fb7be1fee34db16baa5b45cdb953c209d61cfe3740cefddaab2f2c6cd30da72a5aede50cd5c8e02c3528259bc617d7f6cb664666c02f171a376997e56829d6dd11492c890cea04f86dcabcc1cd54c9b5c5e9ad45ef7210eb016e173d9939957b9f477339a5ad3ddb9b87a0f51dc2d3097fe7fd96ab14279998f02b8b980b7fefc51b47ca432e192af31625a2d93b1990e560eab730908c11b74724dbddb9bc0d6a8ca2dd4c44ad615498737bca22204644b31e8f45fc3d703dbb3a514607c416f62dfd1c1565ddfec465cb4cc0b7115334fb20cb111799a847e1bbf2af50a364787d305c1cf45dfbe3b7a3b55b6c1816af1ea520197e4d5aff0fa7db5e01b64817f9bd3b5664eb64e42117316bdbcecf3f20a2aefc0c6bd0992ed3f091c0a8517a871a9e330aeac0ba2226865165f726ef6644b1adb2be2eddcd2ed13957dfaf2abd6d0d43f81607e27af7450e357d7286453df577ae2cc590cf3cc300f7fd74665faba36598594fbbd131fe5871cff390fcd5c1cd5941163e29144166d89eec5c8f9014c45b9599285090e08c83ec473a845f24e3eca395e030093fc8be090b536d860c9c434fa3a795f62231f5181b320e09dbb96e3beaf2896e2ef9a7bce8fb9d1edd3f326e277bd75cc37afca482ce2cc0fec3a4781a8abf1bbf9e2a3801e14b39703308cea3ea44ac307b913abeabaf44fd3f9642180609ab1c2e205c7d64adc5b5785d6f955f21b5bc4fcd59506ca56a9f077420dddb547651564d6e2dc9ec853f3bc796229dde882025087985b7db34aecf3201b4d684f39bbf91784678122ad1398e5b51c353c9a67e69d05c0844aebfec461630bf6f071050393a548c46b59fc2a90d4b51d6f757dd78cdb98c09eeee8479ad2b298eb06b4ff3b3612f53f164d7229e1aebb734d60e09dc3dbe677148b7227e9282dfbf994b5de313ef93f42885a2bf5c2f97a4c998d586fbd0f8846a1e26988e135154d17d18f3fd202a7a6b8f0136db555c6525ba121702047f08980792076fa3e985014fe3e86eb058aec9a045179d04abeea2bacf59a7e3396a6d2712d8a038ca23acd4203e7f66f9282cc3f5e6faee80bac37a6e25bb6a9645d6ab412b315e70b70d5a992778397e6e7f6dd35f7fe1e6ba7ce5779c0af549bf289609a61b1cc07138781dfad4fbc26a8ada1deda3b377eef3a42756a78990b6f85da775efe79d0bea80fe8446b1434c3accbf16392dd3e2006fea0f85324ed9004ba2cbefd00a0a3feb155f3c759e57142e6083353ca118aab82e5209cf70b1ad4272a8b4f7b71a1287e823342750ae94bccbffe3db6cd042bf5fc252d2df787ac9da312c89c62ff773d18b9420dc216d48cb8a6cb7146481565854519e56c35058e80f9868b66e2ddee4c6b949dcba0c8fd10abb20aa199238773ccead9bae3cc7aac75d086d0ec8d404b4015bb9a718deced7e955fffac5ac359c6d8915efa43ba18c992066fbe8d5dee890c3b2a467164b5db3689340ab96808bb60967de7ae5c92480a693664c2055555b49b884f6b0a3b78c625c0776b703036fb458e04f19dfc59aa020aaa8b3ade031732014cb47df08aa74c1ba5c18efd9ef093e83fab1a0d166af4cf09943f24bf630b1f044a214b58360190a29968688d39256597bb27ef2f19dc15731cb923ce5b85b254d7d94c5e217ab2bde36824ce172fed352925171e2c3fbbadcc48a3efef8b628045f80209b385dc7dfe776d6abd2b44bef06c8ab7087f8032005b17d2feff84aed34d6f38abb3a3e6e4d39a59d602616c5c54f136390c5ac7f59a6b2fabe8354cff2da9b62a9122a6f9b35716f9ef4c8c08bfe5f06acd8ff19e34659964d8bcc04135b006e6bfbfd86e1a4b63d90f4f2904352a5e3076dfc7f61185f76c15924447dbbd57249f207622fb10d0033659926445882efae9de5a4532940b6c4d5c225a5662dd40b03b400b9416fcdc15ddfd118eadc1d895416a0e5a9b6c8ffb0d8af423845eed6c1041b7156622b4e47c9331195a22a6d714373ec9421197a3d9270b551a47b305909cadf0f01286a92f775a9bc23ba7ef9847712a5a7d8dc9c5938a73c83f20cd021e229b27359fa97bc89ab82fc837373b501d3167b35b0fa39acbd0770d0c61a35bfe1dcf5d9000446e37e9d83f0f0bb38f7f45930d8097a3ff2ab37de01af0bce9008d46ed6124954c7c7bddb10fa3844fb9b0553359e0ecf9f23edc50e4fcbe943efc5f08709a4ff52fdee9400f58cd9cdd905f3d2338e102263b60fb9440cbc8b1bddc5dd78454d5959e34aa2fa455ab4dc74b6c13ef5635a49f0d68567a90e5c3446d53fdd20feacf9ef627ce392b4042959cd45f8195078c4b84744763af99d96abfa5ae0ed2c8efdeb954be49a65a429826e886306239d1c95b07312095407b08bfb3da5df36733033105ea7de88446ad951e80229fe5e18ea203ad639bc549c91f6364d1f2210e9db5323d68a1e620e7db75bf7a5481db06b9c68364d3a18e8a62b89033e40bfc55da507d3c539b81324612785bfb52f8964bcd3d3f962112aa97d9802ebe25c31699a2168b4bafdd9e89bed62012e5113b9d66acecda440e26dfbe2745febcc64505ee1c32164c6d321f69bb4be6742c5aeba554527413682e7a2f1b9c8a1b4f92944b90e398832377704df0ad281a1e6d865a2047e7a76b6c44e655f513ffc5b8ca337e028ae333ab65a60494ce6f43e7e252c9a4f0f147be03909247ca8bb4e1129ef3894903530a1338d7d2acc822c6cb2107726235f35389816769241a79efd7cad07d0809f2e06416c23c0b1fd49fdc033885d2e9fe2b2d8caa01687413702b67faa02946283a29878b7116a50443bf0b3a622b8dae02c280b31618b6ed6d764277b8ee85fd9c8960929007edc29b4ae509bf495b8847c274b86e57f3596723d050a66849fa93da512c76929972989711205d38855a99bda9fda53e0340d4408f26fc78f31047913b48a407f5fdb6b9cf7f7a642987452a4fd3b7ca0a998715824569e631266ea1dcaddded31d523e3d5790d1e70288806e262a2f2efbce311df10e8bfd6e941db6f9c8193bce8ca79aa74f210edb2e6c221f59011044e0512daef42d01bdfb6f0abc1b6398d0433b528b8ff612986c7e9e01e16951b3c0d48a5f6d170da51e70a3e17863a04de8de215db5ee1573c868f0848192df83b83fa7a0d20be40a97baf786f5f0e828627ead607f3d985fe55c91bbd59dd2d3d77c6a48d23ab9f61ba6a73a444598b058a80199cc9f31725d8fd3c7f069ae64b6fb4655acf756fc2ae9a0dda7f443611b5c289dd9edcbc040df09b0880440dd388cdfbdabd7c4dd7ec73d28585858ca1afa4b85226682615d89a94e8e521dcf08a439cb41a9924cb5b10dbe865387a051f87c1bfc13aa497269ebc4cdf25d8e8ab9b3a48c202e0a407878ee7be92bde3fb9fe8e5c683e109248f45ccf7bed18df186e951da81a5cf1d2bfdddda54ad1eaa3f7c2a2b49508ac767a30379950888b6957217dba2ce29d5e5d1752f1126ee7de6e5d534b398c037f70e17e9333b2c848c7a161e59bac8d9499c0fd4388d88a3322fa159904dd587c8b22dc9d5942d9e41096f34c24b1274cc176e0c97361bfb8f4741924cb5f7f3bc138939f34146ed412ee5ab77581d177a36abbdb6e834c1e086c81006176fc1e988d28026f68b7c723b6f3ff6c7f162f379ab9507f6db6e0af72fb05acff13bffbc5efc007257236c2612d7c2a067bad48d260696e0e88dd7b0ec08c5dcbe1bc7bc874d7503b1c3a3793aa15fb9dc94357c9f83962164c24217cf19c80f4bc16779ca3ecee25574555e21c4f922945017509e2014814f84c5b6dd676430e8e252b19cffdd6d796e00ec3d638f5a2a8fb75684c29073fa30d74fca6b7f0adbf8bbd37b47ec3f88670b837fc943ccf9a8e62ad77e7d7d3ff65f41654f8013616709c3dfea9552a68a43806f2bc1def2357b2b013148b88816f8ff3ae34515827fb350728063d604c42dd76da69e9070a2a33f32d7d9dc8d7edce32d3826e7995f754915cdd4735180ad9e4b263f88319fb90caed24aeffdb531b95be74090c15c2b6600f9701f1394d46e2c1c13d79b16eaf5a05cf0f7c9fa554948837b791957e6e94fea181643a464ea9b5037189d793e2947da19cb418158d1ad6740fbc082bcbc4f0bc774237fd0d845032f5daba457353dd375b5ece1bdb03118879367d61edec99f96eb6cac5f3a94fba579d55bac4fa357aeb0b2e1d29a807db6e4426ee7bb67150ad2a00f203cf175c2a3ec404d2cb1e549de07017f5902e332a74877f599eb213987424ae3a7796b8ffafdf83a3678013fd699b686696b28b4031dfd739083157ec8c14e8f29381aac995956a3a479b55d7f670d98761c7c809a04c18f4338fa505856c80b9f619f325ff63a83f59d19a0076f394ff390f653ae377bd8046cb3ec672086a02194c083c77a02674c059cf7cf8af742271af5c693ba767d6be74c9e5873c351a62096596921f4df603c1e46b4f3c9efa08fec7387df5b3e111003de6e25e1e8a70e32a55beb6a36e90c4366da50dcc996b725c33d458817643e4be949dd7b383acd0cdaeddd4ce62a463f61a235d05ae449fe341efbfa79783c0ebffd73c5f0a31a831a7594b121e8a42e3919af81740eb29a8c32d65c1775cfb9aeb3e5cfe22fca0de99ff0b139afdbf178fc67962c55b021d17b6429958bd2d73e05acdbefc3ddbb804192152d2e87c844d44a12c9688f308a5ff20e7f1cb9f220d08bb2251b55eca4a1c8e09b6ed4cee3febdbb0687e5f6e807c3a158748133f517dc067309c599d324bb9be74aad063fecd073bee429d7fb61fe57cc9fedf694432d85cfb92334df2fabdc04ab8aad4b57d74ab84dc956881de11675a095a75e53c24c4b4754306d68cfe0dcacc84b1474fdbd821ea2832d7b330596488389a182c9320b2bc731af755a023a59d571c0e466ac8d7a092ea8ffb13d6e160fe341d2c64aa05156873408d9720807f509b2af2afc3639cda96eb71f1cfc2aec84f84a02463af10456320e17100d8a5ae2cf7e6291395c55ba328fb7fa0707e4e82c1600256abc2b1cf0387ff8b75d1569a054a86fdba9ced0d4d22b85279a0ae7d1bc4492e2ad320e4f0ae041c5c9b254b951559248c5868e171994488a87d3dd4c9f1f6fe50f3ffd482904d2ef7df50ad6de1aedb72a266a35ac7098223c5d00c84e516744e811997a38287adf7d0e5a4d939156afebb591a3c1b8ddc01f619cd792ad0317f5407378fdaab34ab842ac58488f6d36a144803afb5db339042c68b6896e84b771d5662f88e3d5e5d7f677449caa9bc498da7e79628823a8f007db82da88e247375c7bee7b3ea93ba86d393f3565384de8f396ec92949237c9b9efdf8bc8e20cd4683dba9f3c56297fae960a07bf1a1d7d207e0f53970946307d35ee168db032bbeb518a5278dbaf4db981577ce74902dddb61d0850bdaf955992c500f5b85f57b3218479516b1a8dc0b69701191b8e55d8aa43734e8e3dae28adedfb131b83673c58a50e3186212feb8ec7c36e5f97cef38645a7dab7b574fdae009b07c168e557cb4e2173f506e4f2102e27821d5e769c7ae9e62874b9d6e6edc6c122c49003e64c7eea4f245d9e220c4bd308cfb5061a51013f36f6db4615359ce4d9e08b19a36b95dfb6b71ee8336a59a19ad3eaaddbbefa328c7dbc8fb8f9e0784621e5886cc1714daa812542e93e9c0e0fb7cb909782354f9e8ae9cafcd1d4844ba23f1ba917b55f23588fe0a42ec55bdb5fdfd0bc83cb40ac332fb631870bec38988caedc6abe45fd5851cc46d88d6fc157a2673ee7d449a82f74e124ad2590d30ceb703eaf60a48625c2d88373f2a2e91a9aeb08eb782ef0a15d044425f45be81bfe2f567d893b22007f53eba8c0dc382bcf0342ea6e29ef6b78e5b301380dccec17e22d2aad0b26a71d7b8d86ff97cef1e74546a92603c0eaf6157462c4591957ca57c16963b17c7b3c2c6d183e6e51a1bc5a8fc3075d8ab1d62c1b06f46a7a8deb99e7d5a9c828f6938427b917940015b4f9108e7e9503df6ef903f84c7b84b20ea7fae090719709d91d844cfe28144fdb714dd8d67d091fd8f1da2413d6f3a9cccb2a0e5357557fb54988f5b1d23610ccef4768dcaf5d0be44c2a7254931633f861c7742a164331fee8707fcbf9e9f589f0620a7976b0e883619ca0186ad410322a7b91f8bb3f5ac9b671d56cfa71808ff33a06b9345f353e64acbb4feb1276f095b12c65e9ed1e13dcc8823c6d8611467fada8364abdd36497d25d079ad7e8f09581f64f71d589e96ac2da47506a8b2af9d3acc2d3f365774e58ac47d877ec5640eec4564d6d16f69cca28cc98c9f48fed05c9d618ff9e5fae56eff26764429673761a3a1aac0d3bcac2ef781003404153dd829903ae935e6368ccd4e2ea80896f6da82d6549f881f2ad058e5160e199750023ac2232304956f07b22e8163b6502dde773baa368da6cc082ab53eff58aa6e56edb5b7054fb1bea5ff45e9037183511c5d7d6c584b0bf68d609c15c4a304d3f24f5fe179950c3ccf584065e7e2d71f393b0dba8a1fc0687025659447549331793ba21c3458c41a78f57de915b2ef1de5680f3a06e14c85469679cc242bc76ef25a6f71efe0c6c7b6edba93276510bce365bf489b8ff0f973e1756a3c84475c4e3fe90d16c9109afc4c9971c7332fcabfbde8e8445f1ae27a788f839ee23418ea6ed7de3a4b0b3f6726ba7133e372f467a6d1d0e20938e1935d40be62b9f10429d7d3b1a0e5acabee1afb188d6d1853db9c40c88d00e8fa6df2b1927ddaed0f0364eb908bb74082653523a7614371b75826c2820a9c3c8eabcc1bb7aa84bda17e47459b2b0405bf2c8e136bec32e75ded7680d86e3ae736a4a0ac2cd80cdf79df9067eede4118eab6815987651eebea1c68627877d1710ca59951f6d02af398d67c72f2280c350e6661cc234248fc3f8e0cedf75dfa12337ed6f73ba0a8dbdf08fc8270c1f651e2cd719c9a298a46ded5349b8158c8a8b67450f495ae2bfe44eb9b89972c3d4646a254882cdd56602ad6b84d59991d484ce5ce244617b5dacdc430b66dc875351b8b8731bd66c234949772e5d27d3bdb81d6ce6cc986b7770be9f32d85914bb2d982a6fbfd1cfadb38753ec8473120687a0c06269e29e938a67fcdf7ab1fdb633f042e4e358ef33a843a7880e9599f31b3de85c447a018c6c08bfd366d7810f11b1000ec313a3c0ac30f4dbdc336b12f687045b5b826ea70d60a1ee7be290e8b7e4ab6440fd979a6f37ea458ee75e4829e163be0461cc3e4e2ec22198c7946bba227f4265aed232d21b0e7f4f05fe039bdc48883bdcbf2be4d0aeeca50baa784a7fa70f5ee674ecbd3b348e792d2afdc88ae17852fc184d1246b2fae6a4bb23a1fe0c3c3651c825708f4a137c16520103028581b99a5730488481cba07d84f32fe5adec3555518f866bb485eda8a2ec49bb25face271110dfcc8f7ff665650ef61b78764150e22b113847721e0b4715de599ed599e73ef9dea76f69fd12a9f2de1a80ec3b2e72d9c09a71895ff39e2bfe79f5ea1c50375eaeaa3e2d75c816f1e203aefd39d00ea2e009e2504a5fa7b34c33fbe289a1e56c188ac9cbf999b57b7ef0e4beadbef74bd54261faf5713c4cb857d6d8505828b8786f4ac38e724fba2591813cfd0c7416e4d32eb76631b93604b19ca741e1d215c3c1ebcefdb8fe5fc4ecac32448b63a6e18f1600ecd731bf8b9b8c740da55c1dd6591ae77d0347d06743502e112d7655e01e9ae20dc5d671db8608bdc71d829cd090f6340fa71bbee79093b619780f696702dc32a1373b35860be23c59486f5edfe654f85b03053304573148ee1ebb818d811236c140e85a09a8f5442ba2a34e77eada8a83622958b9252a611a8ec8e7261aff8c1a18595395bfce241ebf5a2863028a6682d7e90d58cf1410547dcc045fb083683e97592946d1eef4c7e4bb6efdc5a94bc54427ef657b74e2f184b063cb6eecc6df4754824fa048bc020bf4160117d85afc687ce5b76ca31b41e839d2bd599e727193d10d9f2c216b2cd640230797ebf26b4f94a069d0eb7207def45b04c258c4feeab8109e18e706281a4636befe577be919d1b7cf2d4446f097bcbfbb4530ff65fe923d30918f6c3f75427db99c429a5b5361f31173c73e5b2d13ff9b6d2f93d963e4c3739ed5705b695d3acc60ba7495119d16353fe37d21eea16ac5e37434e2fe87600c9a20df1ceb1c8de012ae4cbc697a4b43df38cb2339e9393a7739341cfd150fd5f8caf647b35710dd4e09295c5b0424b70ab1a1f0450d9cedff2ead2a31ba906122ac4f91c7b238b906b0368233f658346753577874e0f037090d251abb9c05bdde4151fb74d6e14e2a31dc320386c50d6aa0e1538b5f6562904a778e154e6839daf91df7a475c002383fe8970340c3d6dd3b434c6b078089ed2db59ba2864f7151b85c31d75e52e861827f87e8c87c789a7d0ceedd850aa1f973e1768efd74f7e6daec62a26396c644cf9dbc68f3cde50a29d2b6202aa36237e528b0ca2d326ca0792290eb52a11caab976596ffc425641352bc92a666f95a5f8c9c14ab08c50425a48791f6d1e582d923f21c7fd67bd27b1bbc2ae5b9f6bcc40850424ebbd443f5aec215a1ec56be3276f985fab974b5a86a950dd12efca7ddaab7ed335ab3b20fe42c25b539f82e70d30659bd03340108dafa4a9dbdc4f2249dda53602d3d6166ea73e261caa4922ca1e72a01349dcd9c75cac59d44ae735d6316ee33dfce9913bf7f33d2ba50f4002fc6b5092c2d87c7f6ed2748706d9ab4ea393479dd9cdea4651d1ffa3a7a009dbebe984ec1432c6291c1a664340170ecb647ed47ef1d242a4fe5b990583d1bd789f0855ee4a051a6f22be1811ca990be119eedebba50cd1268424a81f6d7153b5c641c82a58471698e933a2dce9603073973e834d957d3a895bd2ef42018c53e1ced4765077dc3f1a3e595a8488308825720b089570d7218fb7a9a379dd422eb4a703992cc4bc439c30ba17e5b59813b1388ba624df3d05b9b42b35e43fc05c20cf48ab8a7fd056b8567ef24e87cbd6e9d1d9c0e07969a55519f7a1eec93443997bee758180710475fce79ee69546d9728d2c68993f8ae3e3fb4b6dabfdf996507a472f3ec490cedb7f7b052dab3bd1f46e47e27d0e785e51ed27faaf5db0b391a0e8d1db6d0809f612319f7786b2e855ddbd1c9487b2d312230eb6a03572650a988fe979dea6f6d247e2515107e562374680aa15ea67cfa533c17d4801b4d53f429fe206be0838ef94e4b938ef5668b7f7fe34eab4078a8e07e67c3947419330dc3318ff4b4a85ddcef229143f6315aee76047496be180806ac6d3e2c9b67c516b6d9f3fb8772b11a1bc0d52a1da6b283cf6bd8e42ecaf2e6d4afddaff460182183b6aa8683972b88a385a5412ea87f5bb842e6ae2c387f35805328ce3a76ba0484f5b50387824f01fa5d59f1a705dc1d25119fe0646325c2c63d25dc9e44fb0ed8f9042128a4c85e59ddde0756efbc8e5150c92c122ba43ae7f2f3cf05393061e1124b0418d1285b7f6644ae3604ea6a39bafb9f4d9e958aace1bb1a457fe2101f62c331a75c6e889368d794ba8e6689d3ce37207ea1e3bc5f960118848894e9059d2aac4172c0f0c214e227303ddff287eac5f23e35631205e5011c83e82ea729d05e44deb503f7821ab882ac23220b69d528249ab3fca897258ab17ed0a6dbc63fda07f39416002ee4621f9b9c32bb61819e6d0dcd14d8545c385b16f3bfe9d5319feb3454903154002262f6e5a8e21bc6c02dfe300a89e5f601cafcbfcd12982771941b3efbd6dbf0fbf017a827375ce03d9e6840755c166a290141bd3c7f86f4453c2003c2fd40eb79b4e896131be1ec8f3faa6ba2f62997c2f6ab42597a5781d46f02352ac559e7de779da183610037dc1dac9b108562241b23b7820e37279b08489c2522c791a63d61f2bb8e33bf1c5716d8fb5455c043213750b50f258f90126e5eb3dbbf4e5c749ee83bb31f0ec61f34615aa52c862349e16a1ff4beae8aa7c5f487f6aa71776ece1c652f454dfbcb003f87db0de0d291fb38d18e351034f42721eba91658b33ef73d98799b59f2237714ef4fcb0627ab9fe51b707753d476ecbb4324ee3329c44f857c0ca491a02afc4d1f7ca275b817fe30265ac2697dd6ba32742dc7712e341da9203b980db32f25ac9595b451a2c5ae142ca15c3fd36c9a5c3a8fdb745a828ad1fd236e124bd9c86415cc2ba5f41305f2f4a07b599f326c6dc2afcdfe134b656d5de85f2371323821ee9d0719964b82fc1d58a064d92bed4819d1ab0d1906ccc7b6b6f5696fffbbdf6f138bf1dd999f968f74c8a8a765bd3012f83453c32c04b8bdce02c8954fcfd37981a68dbe70f2748e61e0ad27c48d373c553314179478d33c086786971968bb23dbcf66cdf9feb5b9a0652546468b866aa37554ef9b4f01adc0b87d05d3d03dc53f7f08d675ed15e1512cb48d77aa6168cb778fac3aee4a8dc7c7085baab33a9be039c59164c416daacbcb85a1d8c28698e1fdac85463c317f5b3d476fd369296f92fa00a9fddb8539646c9d4c461e0e6278e1beef5b4bc08a7ab94913e41e72a1845e058d1efa9e411186ec526ad5abf6366c990f63e86f1e35fc871e9c7481f9a938616ffe960afb151c783def0c8c1dba263bd56587be483ce7b38b251547966a912cf594d89e7c6a0c9fc99c397b329371bb6d49dfbbdbb31aad206528500430e2e52dacd55d87c34adc5e890a9cb2c27fd2da0a1e52571eaf39664b7287ce73ec5260b3af1da92d3b588732b50ca4a5a56791cc261fb3c484458e290ac0ebc1dbbb8eda3b1c65dc179bfd4d3c2c3668b3eac9d091d26970e74cdade32da5dc16821bc94a1ac141429aef570b3328a3486ae475f00e3ea77c051ebcf4e33b0a11f194eea8104d4e4c75a9367f8a46eb4254d77e82e82f2dba561289206edb6420198ee3552f65fe24170d6772d22b7dc1dd6315c12de605aa0f19fa0f2cee2fbfae390f31ff8fe0de8e7f1ddf5d439cabb4ea6139eb9049d7820c8f492ab07bbf2f0462d54c147924181347cceb1f5ec06988651fdab5f4b671e1938c399b9514a6e1e2dfc4763e1747edba2ccf0b55a44d879de53c0b7728f3f645c99561f1cf79faea6011caa0acfd29c3ef59105d342df8f12fdfdcff286947886f3b734d17d97463e144e84f4f7df718df9264428b21fba6c81a7a19c9968ae209e1373d7ca117d6eb1b579c0509fa3446e34da7db62443ae4f184ee8b05067bc2e69c2b4e6e8409c8702dab99f76bddb5e9871a9dbf9817ce5201eb06de2b3e5ec4b6667727665d6b81cb1fd582bbb8c1ea326cc162bdd9c3a9194e5b387715673720c64e4971291e8a579216a9fb23e9f32ad388b030375afa984f6dc106f0d6bdd136a92e69616fdbb75038292063001f7bfb1c8daec8c9cba0a8b7e19b7992ebd6dac915ca71d94e5b73732919ccfb70f001ca9f4352493e6cb3b418e55aeac2148af8d89e53bd7b201425632b674331189175e2124a585b41a947ee710a3a37fbef1feccda0d1ea0feace7454734fe29d82c89fe99450d4f7466e34ff7758638aadc33ebc239c991ec52ece18039e78cd9f4a7326c5a83f411e519ad940653bf348bcc8079c94aee47f38dc7dd81bda9fb9f282784af5babbd7a82e2ff5d1313a93d12c99dafe3c4bf8235278fdad9a1ddb39df7822026d4b9d0f673f18eca77478e6842dd96720af016c45ea494633fcdc285cf06b28fe18a28eb646f7d8570701f792161c39af87a57daa71d38745cb35282ff996b90be905d8544a617d1d2e80137f29585089256b30071912237502facf284f57aed0c5d1c3ba7cfd07a85b863c1fa460f0cd871ee9870656bf1a23608d2a3113dd6385493ae650541dcbc5568151afff499555b41cd72d37cbed51f536a4b504bd638ec7b2ae09b32c16772f4f327e3a3d9faf4f341645f15c5dcea1d24d280f00d99a489bfb8d9c02516e79031da14dc538c21acf351257baabec368aef883372879e18d5b1fa251541ac240877cad9c43b9451e2c6e425480624012193c7c58a1ae6d4d73dd9d41f6e6adffa76a90bdc1b1d02a9324388b1553cf7e77458ff438107379bf73dcda27d98f3d5bdaceab98f2c1bd11d56339dd2115b2bf35d3016522ab1d78cc0b39da6bbca575d4877d0abf96901ba212b0a6d4f867a83be986d59d1e76c766363f9610ecd9100432240a6c8596ee32f5976f47f8120af8319a008649718d5acec1b8823688ecfcb4dad6f6193a89cf44d9e36717b72cb9a2ca07e7126dbb5ca364a8e378d68e35a34076a1621df80222c845481bd0c580dbf459289eea3420d9b14d4e5b6f17bb06767849a43b4ae706467a207b680a193afe751c044fafe83909fd83d04c146a978b9f1d7c00e0d93e3a0671d8fe6cbdb6537b80f2562d158e84574b54934fde51e75e556e1e1e106b25755a51fbbe0afed5f4030c93a97c24751015f85c664fe099b7fb7a5452bb1d0fb553faba3b363e231ea1350bcc861d9d8ccc97882d35f48c45252276351eb32c958d4bf6b4012820f5b843deeb4a9d826b5a444740f595026875d6a8da5377f0ad84de1e858e04e77f918d5f169d2e3c3eaeb560a8946923b4faa0907d7303e5a580948b2b8fd67e96775b41a428726c9836cf23b5e69281ee95038c9996e8c1720f92b24a157acba73de8ef2d19581ede9dda2fc786d9d3136636ab6920af967ad2e5bb5b959f8f1904ce7f0ae0585a3887de7362e6aae87a02566144f60ad8238685cd907619ad101ab834294d542b53344baa67d6bba43bb5d20bd0d6c86fbbd1f61697bd83b724621b039978062ae98307c74cef60cfd73cfff250d561288e1e0d65dab641589fbe9bc0ccd8b4990c62b10e1aac5e1aa2346fceb06d0bfff46f752f75a7378e6157bdd8a61b4f9b22a90a05f4efcbd42eaf9ce25194d38df3a814f3f304559a4b0b44585b529edbf9fb93cc1311f417d4c7f0c19aad113292cf1dbcb230aab169528d94b9fbf1ae4a278aa5de4853b2f048dce31d8ac0c3e1660623fd7b90346a9447e0b1b4e7855347da5dc55d5fc353cf172b64380a483e78209acfc8086642e629dab8c8cfbd072609ea5f1a59a9f9ab2ac0f2c9e503150e9421ea4d4cca3bc479d7d64531e76c3bcbde02a3f5552581d998f8de02c47f4b8df262b0cde6efd8f6b7b38a716e8230dad9627d427ebed38dac757e2273ffb3e0322782c31b9fa6e58cdf67644cda7251be2433ff91886f04b58e232f6f3929648777580a537861c0fb6772e9bb5b41768ee7d2db852b463df30e4358234290505ef7d1acb2ef3d215145601c51a025f3d21b46345363646889b241e32470137f28174e6fcc519a8b02811efc76d176eade58365770b6aff2a720df6019b9422c1f7dceea7559c917b345d126315bc5616040dc14179a656bdc7733913f41634da57e136e051a2fd6e948496d24aca32f18f98db23f894537c204a721204f79e99e1faddc18e8ece22a98ec0260dce41283f7c411d1c932abb3d05a2ee1017dca9b1e58f9258fbada7091bab7ef7d88e5612bf84ad6189d7b3cf7c820a05ff6ba0885769596ef4bb533f20312e424c672d1c195bebe3c2da63650750700026450fb7744b14734d65180c182c4cca54a05785e6b96d86fd34dce31a9c0056e9aab7fc4c70bb8aa7d91fa1bbe06b2a07ced50c52aaa0f5feb9edc504d69a917eef1d90c6ed2cf9b86ebee552484113ace792854381e790dcde1e550c2c183d07f45a7ac82c98a32570c4d712fd47c1bd55774cfd0b507ed71d679d6d236ed5d655496eab1e613d81c22de742c252eb97014be34ad3251f16eb39d81695649c6505a72e2a567358381e61aca66bd39e5076cc7d5fb73a80a555214d6feaf19545654adccbfd0d3d9a40465907545b0c78cbb1b8a0f68b39c6fb2c619987ed2c7c84fb102b050c83d93329e78cc892723fb701f025b4ef357aa255ee0f1271107d89c42e0a83e3ad8a3cb638f9da82128ee548dd34f83044185a368623ae3d07270824780dba058d4ef35eb5f82a6c77456ab1cddc65b426e021ecf4adc0e0b53e1ffb2986ed5d9cafad2a5d6be4e5acb6366ea1ad38ee66f469d1497995f2044dc41a051045e5ed9f56e40ad4ffbdbc17ba0b174a912e23a86b42ae7c65abf8055e83e9c4b49024da43820416cf8f9135ce4f0943616c336f5a92db475906e0ad5155e29d332be8832e2848aaf263aef37503015c7d43bbaa8092005c1873f83340a1d8fdb000e612d6af2833a31312f1c47d3117d623e864486262280359028eef458e9b73d2e9b74f9df989c923be658b09a1d4af767d415cf4f9e2b79f3983fa6a82aac84fd2773aa3a9018de6eb4aafc88e1d6a107fb9688bd12bf0f078335f8b6d4a03516bf9bc35b62536596e48eda6c5b6c1c9c815529b556d6346fce62e7421116a5de2867d15f433fe068a46ae13d0a7e15cbf18cabc741a0efde1dd163bb12b0344cf69319b5abea0b61c0564aacfc1920faab4c187abf564eec74ba9ea7ee8830173b1204d6651db25389fe71ca018e7d474a4a08b0062b7e84ad0f0d3a0816b8efdba534ea7c2e3d92270a2f67dc04a235bc7415799688e84e4064f10553d74493ffc72adb176ca1563efa6e1ad8ac4330b8b2c02c15bb101983a2d90d2fe366b4a69721f9a8f358ac76645e35824ceb4036a689286ba9c79a99eebb1549d97cad2b5c371c07017bb9ac6acf9ac7c2c0d723a7a100f06aa8f66dfd39a17a34c1ee97596681c7d5d7f0436046f85e9e4673dd4958a8d7e57a4f68af3837a455678469275c5ce155af403238e7450b2d434cac46dfb6712b3cfa62a0c0ca558010fd15c5831141f012b96309ae98097eaadb9ab5649a511fff80c9764d94640133b8791b44abca93e73f7bcc22b84980e16aeafad48e8e0052b5d3c0a8ff62544085a1fc6a204a0defc1179549b04d21083d43ec463bef958e3217c96a1f83ffc6cfe89e8707fa0131a41c3e5fa247768ecc3cf7a707fa640905d39467f93f23172fa2f4604dbf3e8b441a35adc1cd5189a6bd463e9dfe6a1693bbadff39a90d4239649c26ed7e7407df4fd367e6eeeff0f6b847d91820646d485b2769a55ec74c1f7f228e10d13cf78a559d7fbfedb01eef39630ead0a7a4c23128c1b2530d11414ac58e1ae243f5d71e1c4e99c906392b26ef571052426a5e1a1885e0f2aaeae36aa7a02a50c395e89b2ef468426486ea41d758233fbb0b3743b8757ff184a16e3f666bedd1ea44a610ee9bc5afc7b329e6de2647b4486ffc79249c1941f645c2b7a020965fd397098b9b1c635e790a6a6a2a7c593342d4139d89a8eaf4e76de42e68b671e95369c31e0e55d51256953c083eaa68eadac75c76cc0572ee0dcffe8096dc38a92c73688408182d602d420f5cb833eda35712a5b325d89a04c48ec9a2d70d29f288828a36b87181944d83be4d7810f3ddc5a730d471a976ea5bafd155edc19d842c8578e5c7ee4aed1e4a7b1d7fa190ee001ce08cb98b0eab5934c21e50653dfcddb694f3fd962b77437cd64fa42eac7107d020ef55e52b5940bc2e4a4c1e8f315dd4d900036b76184e2fad522467b830bbed905eaea75587c0bac937d15d8f5afabcf23940645690aa96e29142d40b2576e050a66625f55ca62700eeb069a5a1f370a253b5c8e8f270b5ec328cddf34ee100dfd18887366cf741eb58f5647a8a35616fa011dc445c3d5fbdd64b82d8be0f52566c51e773b5ec6905b44be15b07a480fdf247b79b10a9d4fbed06a4211ac79ef653c1c57a9c27e610f3c1ab2d178c5f178f74132105d33cbc3362d91098e1571fd25a40c9af90fc503a9485ddd3f399ea2ed04ff1f497fb151cd6e24e43bf9611f7362f018409f5d79b77f0d05ea63685bd57aa847e7aec000cb997c2a979eda89a0648416823b486fac3e9c9695c72bd6cf0f9f0fc22e93a50729b25bff68823dfdcdaf71a9828e1c4e7538cb47aaf418ad207eb5e8e44063aac90c283c2ef353f0d99ea9bace6f4eb11b00985d6629f669f047d91ebfdeab32e83e6a97b1396241c2529c0acf5aacb3e1f0e77796effbfac4fbbb6c978a3c107f2e9c9eb481993555803a5d292ae3a53b3c918ecedf3be8d7511d8a8fbb25de056da6f6e13487b68efdb9ab2288764f3cb8ae9fde0177600fe7346943ce02c894507ea17153091b068d76cbbd79dfbf843731a4f91c7e2ba1c9457e5dd35cc6556f7632693525c497036369c4a0ef44304e89795e9d218fea36d0ecbaf8cc9363d516bfc8f6d9f1825bd0623e6d8e9f8c38fcf353ed608dd545e4a8a944847d75585e2956e8c6ce970bb71ddfadf8a03dd13fcff81137a165b16ac06ac9253c2bc91e0ab50e26e40e894d3cb4e7f3359a079c8263f5e88d936d4eeb763f0664bb69ddea77bb6266540b60b5c28f7e3cf35ada90e4b943ce4b542c7b75ec947120374db2a3ce251ae3c5b65bffd8f86790bfb4ead13db5912e69a100a984d62041f1f2efa20480b12fc56a58b1f99820db07a28c9d6d866952e4dce938ee71ebfdaede38dd65d370b6a6ed459cf8a14121d0ff1824cbfa4cf2c408a9c43bc0f79ea7642dd5ccf8f9330222f0aec2bce12b717a9a84b4f26fda5074ba1e22e993b73c2ccf5c212798edc4f82e67aa900bb4b7c183f488935f8d086bb115f3f5f8d2bd76da9e65b91256ad1ee14a2b6b7d37f7f5b349e7e869d4d5d84666fb83a6569a8ae1c72076bcf9e119d6a95a89490f5c6ff95db1446eedf1f0215c39fb1b46fe1721fdeb8648bc8180bb53040cdb7d15355a523f5cf4693d4a68ad3b9c5b556590bba404378cb49ddf2c04f8d99e9d15763847ed7758f7f18bae055676dcb1e5efb47feab291fe1454678fb4e5981dd5506145561c91817141193f5d7f9c2d5bccda4bb1bd2a134a76c3b9ce51b02f37d7cd4ef055ed41491be48fdd5e4c85df7bfa98510f8174e257fdaa6918bded78cd6b56d4d26e284bcf3d5d21d3f0b8d49994cafaa4f8872fae3a972d7aff69c4cab93c80afd8e99bcf911d1bbc8c8db8d5520c744bfc9dcb2ea0a38332b65370b534d5255df1c3efd06d17506db1526f1025624c9feb0db9e6891ca073cdad068204d6390d514b3289d8c39f3e3506436d0a7f4eee1955707c2f2701f7309d4e37c4b88f97c9aa7e1d53aaf7f14985e2762c710917b3cd17be55fbac7165373384e5c0735af4e957befe660b8bf5ddb77f7077f7c762afb5a48ec2fb410614e2385a4615b910583b6ec3457db5736126e74a56fb8d5859dd5761744a01a652d120e1c152cafeb8559e1d2e6339bdba90537c803a954067cc4f96378a364daaa97b62e9c1df5e9ce8dd24fcbbd3942254ef1498fdaec9c64df46fc2dbec5b9c8f75633428d5d29fda448c045613a4096d0cc95c8f3a61ee1a5232f6915336380448aadc32b40df91ca5004feb2864bd05a2477a75b29b888942e0dd2cc1b8205a1c08843fff6eb5ae877e729f3e537ebf4cb4c64c465dd4434ca2bcbeb2352fe8d4115382ab9f6272a5c8bc84bef7e3df9433a10dfda4ba5fbda0f24ed11759b26a8057a325de8ca3fdf570c3dc3d42e90cb8d24bd16631bdc37a17398ab98d76a6ad2707860a1e27466cc1108905175c9da5f8bdae01be5732ba41e2ade4674533a77d5212fdcf9b3d02041fef06404a63f63b32fcd5188fd2fc68e8c8454b67e0ce8347ae959852ddd85e371571a6c37ef7013c8b5546226b98ce681d7f5797422bbb6a168cc3acfdb636ef6a6ca5e317fb469d9a73351e061b0eeb46778a240a87fd0966c1e2a7d1da3274cabff86b261349da2f11237598455f715b738f87bb5fe486a8737a62974531ef75cd955485001c73925b6f4ce180694a5758bbddcfa0ec8098775aa238b865144fd2fe57dd80d349d94b53c8e20a68ad92831e4ba1986fd0742b6656de2ed54a9f195efb6b2ca3702f41b07b2793f2896b6fd5ba985f7b01abd3c7bdf6a6de79ceacf57f223af08faa88bca35869f417160047a77eeb91b599e4ca09b74d643d1e7909b9c4b325de7183cb9c50f0163d0bb1b48b070ea661490257613c5e9f561361d8963f57e10db56f62e3ed619fc38545ba7e8f149902fe22f0fedafd28ad29479a5bbeddfdf213787c4513e8dcf76b72836ed91ad27f81ec149103b8e51286296b9c3d585374286e3bc9d871de06a90f876ca65e30e19c5cd0a338b108e157c7b85bcbd75d3b11b30adfc70b4e4b801fe5740505d858d14441b11cb1ffd9e678f4404b169bdb4ea3e0c8f384128b3d43ac84587eee4a1a0452f7b90545c2b5c83521b1ace768ca87e5e3ba4ce29978397b14c35b85df04c5e1929b33480e7c733d314716afa448b5bd0e39fe23743dd0c8c2ace99816f2237d622b1b53d1329914b40006fb9e8969cc37a390f1e9f097f445582e2f8b12a08390feba9af9ac43313512cc5dcc0cb7249851d6a75e64842784ad828e0bb1660672c204d41d4fb7f6410ec906eb1bf5654680edffaa32479e6ccd55ddd27e44a581553049758b3e561aaf8320f83d887cf9737f689bcc94f32c45243a0cf253bb47c32c6009d074cdb0303f1d8e0d92a082c3eee28b4270b85dcc2570811b91d0692caa22cd3a63d4465d5e7b39b3b3923b4baf152940b9cd909076cf4f4fbd1ecd66c865bdbe223c54a037d2785efae29cab88a359e1e6d8a9933b509dbebcb6ab0c6983d89a1fbfbe1a2015dc25673a521be2e004bc2ce393d01759512f46eec4fd91445afe7d4590f7f75ed613cd3d9d2a73e894929105e99edcbcc669f2c43856fcf001e1a618dc7034e19d812c6fb8a384102b58b101cdcf8ee89b7acb2e6930e590c2df43cc19dad6f3802398da88e21370f8a7d68b02f5fa4954c427aa25299d4e877cf6fcbd6811c14f608e13c5e074218a5c0e54c5d6781ca67674f19b0e7a482a67764a6e64671fe1045636b90f207f8c5edeb97b8d1c6c3463cbab72e301d5334c2f654b7a5ea0cad11fbb91071990087f54e2177440cdb3b0eb29c35351e399a8571b682495cf4526910a9d5d42a3caf85e43d07cb2ab05fcb812dd27ae8719b702c6cf3b89e2e5ff5cbad5e3d2636b34f9559acfd89403f20357a1250f3c6f894758bc556d105475b630c8b377380c4e56702d1c8b6b0875a6c96ac4b98fc02b47a776ff382dd80115661cda6396b4d7740c2dfe76e335f205612c651823de3be069363f92180f186439777435c01c15626b92898182cf96675dd88b1af90b1bc3b17434feddec1cb469f78392b270b5ea0273e8cd3105deab1093b3ac5075f02edb2fdc52cab248dce193a1fb001eab6eb9eafcc731f425b18122371060b0e2bd393b23e284e4cd1213ea0e7bb3ddc454b796444c803d98d814d66952b6ea4a886cc3728a168a935777939fdff360dfbe43615420c40f25f348d431f2319d9fb8a14654c40546d626a2d2033ceae406ef39b8f578f905a241852cb6cdfe65987077c3a5a4bc15770d650512578c03032e558ea981d31922b7ba654f3cc3c94625a88d35465c565ad53c69bc8a365cf7a763aa4ae8a60b8680f87000d1109337686cb47774b24a360700f778d440addb849d9b516160e01eac785a0922190a1a63d2e394198a461da1d975ce620cd214278a7b3834c3f1767e5572cd1fa9fd97f3b816c3f9a407f56f1c1fb7e2c93d1e605242fc8d611be3a19912f3205cfda079b2c142fd53373a5f9f73e5f669d752a6dcd2de9c35cd7cb1bd383899f16a8048c7df35ef6f8c1fc9c40baa102aa33ccd2392d4726bd67757c4556e5ddc3bda6b2885ee16b4454cc2fcdd636cf088bb0fb9370738d292511e77133f7c50d47e1c06f2342a7bc76a2211935530304467495087d47b9784f191ecd8aa19959f66551b0a201b04f4e7d974cc53be1a2bcc323c8bbb19bbee370d81f5e0207753c7f2efabdf1e4a2fcc08f9ce22e357a4fbe3de5e6d974d5cf6824fb5140367d1ec1c6b620d5c9a3989520e9aceabdc7c431662c3d69fa74130cf611ad888ee182219bb42111609a3a577013ae4ab8f585c0ff6285dd8765bf4dd3e096b7d2ba5493285c62bc4bcc2ce48454c99fe94b40816c4b7995b1415a2c7a0dd157921dbe8c69aab6510d514b8c9e564d10768eec835e9710fc981ffae2bb2a56c779a6edbcf5c60a7370b64c71cab4b49fde377fccedeab8e378d70801a18d1108f0c7523229d04f2be4208270ab3df75baae4a7c9869c9d004293dbc006f41f8ed3979b7f0e419bb1023b3b188aa900b445f4be82622336b6a5f06c87dee22981b728157e91f729468737b1692add2b3165d7f435f956f60c58881932a8692b20c9a2aea0b6b31d9128759de6915ebb55d1be9c4753eea48a1edce2859bfd097e59f95d48ce14f442923fda464dcb804de268bbf584cc70a3393d0f86333a827703a9100d0a132e134f178f9ebb91afc7f0ca813c13821138a89aef23b535911cfc75b97282301f280733484efae345df6970bac3d3c4d22d92e1bd4810d85e7765cc04bc30f3f64f4c57c55f897861ba2e771bd1e065defcb26dc61cb0dd327baedc7ab4f67915855b3f77ecdcbf67f0489c46a3013707cb40a63bed7c467e281d7b05e75426024522b222a69627f33fba42808a9239d44b365afa66fcad603e2843b92bf0f705913089985c354065cbcd835c400665630f055e4bdc0d0c27550e2295e6b1dc35741b04f10892f24bc84bb328468acb5ddf5db4c358767f4415742dabbaadb9e19329a4128a549100c394932c568bc2d5746a699fb9e487119ef09f0f60c4dfb7025048d0770756e448db2eacfdd69041bd4410f20b3e7cb0058432238835fc2e7f81ad51b0d5031970b3a4e32c4bd6111b8f9b0fbe1519b51b60c6a1a0c9068f81ddf54a9ae2b79253d76efc28217e90f23fc45c4a96261b6038f520a69c8ba87819d2d04a16c83102fe2015c39706bd221ed71e45593accccc0f24bad8cf6ad6de15885dbbfb924468489935e231a4e5e7898cf6d676220f844090636f5672b7055644b0e5f13b2449640a9091fa8cbe85ac706024a3c1e31114f5e628c5eacbf88158848210b55ed9d8f5f37feb3dbbfe48e22995e3c01a8e88e22670dbc97cae24894a864268b6528552d5a1b5f416a6bb2a85a0ab6f8361749118c75b2a2ce9ee6b6ef69128785162f9501fb684b15a476bfaf7f989610a91442114b3bfedcbe7d7b21b4fb71e3909d353d8fee6a46fd98401a2551576305a0e9ed0b630966ad5c9e20ea6dc268cc49e54d5b1e69502a49655d5e930a3765e5e0a808ad93bbd2e01d478cebac0dcb765c970c9fc0bff23e2fece1b4ec1c649acbd63ae581d2be3536250e75c4f0540215710fff45956eee8da6d48c2af0588dfe061094c592ffbe8b56970100e3bbc6f5582ad3e783f5826ae7978156fb0ce8b37bf85bbb594b3747b5516e7e1bedfd78b0304ed38cf9d82b48c1f6c4c69fc1432ab17abc0c69231260c5ebb6ca0f2d05c62441c451274c9cfdb9de3eebbd45777f759e15ade0e4e617b492bf1fa4ac7b0873c251ebb7b112ed91c6cd62ea0ab6cd9e0d3ae28de371a6f1949ce3aca92868aa6ff07df6d0753dfe0b89cea04c36cbe13e09ad9d3953372e4ba958cd75ba4be8eeb872c9e464920c47cea116f16ca34c3ba432394c3f7c42f82d4972bb9a862fb66654788dd9bedc54826d27d4443456489a34c0e1e93c92677214684ab216088a658c85aa328b301514c526f1ca78274c6ada38edfc303d126d7d6d2af61ab4e0799c07e8abf8b32c921a6e091b3487e3a91c3042daa909799a70cb45329e2e8837c409c809b5c9351e02d2be242e3392616640c80454646c9e1b63b13001c22fe1da641c23839f086a68bc8ad53f3f50085c73a912a2ce4ac1957610e1f3aa5482b844289ed4460f97da6eb4b6a48945181cb730ca15b59d473bb9647da5a07965bed94cdb6d85990700577c807a2d45b64cded232b26761b73700e2a6cc619e114949d913cf3dbecc5333181d051dea8cb820315b03569a8c7ae42a6f90b0092755beca3c3888582e50624c39a8bce02d558ee94e517ad9ca24b0717a824aa6640d50e1c205c2600e13fefa93139a85cbc3b9082a51e69f3b905bff8facb2e40b7f36708f896183d45436ae36bbd6f67f3927f47a4354edce4ebe453c8c756b3b14518ab665ac516e7520e3a0015fc980635657b4d2fc9e4c2ae5db596c858bb16c3544a6044800052ff5ea33bbec9018e9877baeadeac4347133ace154492c633a24919e4face67da200ff6117fa2d7fde3eb2180d197115568346382d71e08b6b73433ae21d8fcaa27de32cfd127c963d0297a31388666b13810718534075977ae3c5c9357281824df2d11cb8017b4cbaa73558df9ac50b724b611e3a1b049ee79f1dd42ca44417353e6171677c9a953d24689edbb98e69adb29e8e2c5feab22ab4cae5c0853e6ccb2b96823c705a5777c5cba091fed41f85fac8f1e7e871ce40bc0b3d9a997d8f25b1dfc6aa392729ef2f9434a5209db6ad31cc2c1a62f649c186cada7438af0b13990ea7ff9c5ad1a863ad9dc216e31b8a1e2194e68b65d7c7f3b6a11e54a0ac1094564201b08db0c366e513356d10fd9220cd11b99111c5b5b9ed6a225989eb82d320a8ddbb45169f55ddedf9de593538e50d1d32d487a91995b56e49c8fa6216c48d6784f6139d45df51bbad65830f53aa74668f1915cf233a4c2bf62b3d8caae203eef88e584930410315cdee5d465e8f0a394a4c9bc127c14e85d719208ab8f63f6f1debf3d7be7ca9ca02eca0c7bc99bb49fbb73577bc62ccf650d9fe64458a82abf6587cde0d50c6b04e4bd9f466a598093c507453b757f3acda762630282c91b75bca0fe8297daacbb9112356c44afc7f2d85d7e99a4f2aecc63adbac7d1cf1790d26906e51b0ce0e0d3abc0d938fd8bafd5b75fba1c9996d5aa586b7e9b63fe993a7af1f7cd12fab528279c368b617b8d3378bcf69438a5230cc9357b0a74238fc0b3278729d9b9c7f2fd2c0595eb9a20c77fc9136857075156bfa320510ee054d0c3c2ea774255f84fc23092bfc63999f022c04c5d0c62c5e69bb375b3124eb024fb2cd98915211ee70bc0446634657d2279fa15a2e322e79253db3ed58795e4a13d33e0c3808df25c1a82d06f7a026a3355ae1711b79b7699473f3b1e6c891fe443183dd38a0af97a6d672e283a8a2ba4e650d4b2e908fd23f98e396f555c950322ae301a283e278f4cec498c026f7d305db1baab465f61c75edd9a02da2d199db1ee87e32916dd9810dc2656e6490183e7456bddcc548e316c34e1e869635892cf4b64cc71c6a615dd07b98a5be56c004c11dfb884214cd23ecdc9f19d838df781f46bd7b2e315b187215c382213799b388c2ea747e839d46bad2d72dd3a3f3e7cbbb12874d3ff98a6e5dadbba3e43c8f3eac1fbee2fae03fc27694ba4fea0be51a03f3067d5a90de95b11b8f3a1a5c833011f2714a76329bc0ac92c293c03a95d3e483c2eff617e9e30beeef777b008033828549152f54b44de57c4f8b5c431bc9605a0e89dc4884977cd216ff4057e291eeef81a6461c60f191794fc2455fc14a269019e9c9b97e72281d9124a2cc4ca86c0303a335c9bcdc408df83c26627dab7fe2fc773746a7800494d6320764f5a6e5625171d895b2eea6648357813bd2f571e9efd04cd7dc5c1e88f7bfe800ba57a59fe9ba2bdaa537ca03bb3d58226631be8ede106453f1b3689e35860264a981e6d72f392f6dbcee6b3ec302fbb1932b89153aea0ab3e080e974b265d03e713164260bf7ccd1c0fe52be7d16be6c46a1a3205f9bf4c7873d277921d7563ac7b971a19a896efae215375169014036caaaedd16e7551c3b72ca85436ca4f500416d89dc51d5eb38d6c32f885cf74aba8b34cfc7424aec1112c483a2de1a8e99c9c0edfb9e669f839e0ef7f6d6fde57ca9cfe23b0123487d9bd925b989e95cd2ca188405d6835498a956673e5d929e56de5ac541ff8a92b62e5f9a7ac1746eeba62721185124bd4b2d38f519aca600b38a22b01a2c622dae252553714ef3224cfcc43b7f8065f6bc48ef48cce5981ae31cb44eaf74a13330c697bfb1edad0b32cc4c11c557dd404be08fd846751920256a060d42a4a1f2c89ed8957162e2ccf745cb1fc45894b6d2e5dc1473d59854c81904fb9ee3a6ffe3af3425a22ce76326a5ded0591eab6f308eb044b88e648274ce54512123d7fb5fa2247ed3b83640cdd1251e1aca0f320197d75215a6a11b3f4d0fed07f5d7f83662398eb0b95ebfd892f5334a22958121ce07230f899e0a7514c0c691538e891f31a01834824e4bef23aa82c6de6d77466bfae7c57136b24f823a22ddf70985f5eaf9010868e3bded674cd7abe275b78c2cbb04c25475732c16939a12030332f7134e2f8a99fd4f347fd47eb31d273630c974c834389ff570a5d5464d220bc1918403a785dda8ae566a88e0cc41b7483a8ee4a8d8ec35cc2a1f85df78cf2fcc2e9e1dadd4394024828412b75fe95fdef4f441354644a266d9f5c9e5c07affce972d06c303e5c65e497adcfb540b078d53b520b62379466c24e15c241e96ff032540c080e26134d2b8143909467b4395da10d8e9d746566bcafedb1a979d6ad3b77ee065cd4c452cae2660c01363bc834efe5321a21a24c82b745144d20ed9e8b16fa469b0a8e87256edddd9ef4b67376e70dcdc64b3dfbfc1c1b54c913c4ae05826f41819c078724f2157b25321635af6e7ede37e5c7869040bd0b491f9cf7e5a9acb30bd1060c7d53103a15f7f858d12648df4afce5344c152434109952df0765e5d387fd91b91c4aeeb28119887e6fe437a1d58838f794a8c2550f9728ee3c402a451625b13462564b9074f5034dc8aad458118081f24e4e52635c19a7b1b1a617da59b7920a7a6aedf3d7d33af072362ce4eb3d02dd8081a56b665e2bedde1ba9a829badfecbdcef4a25da8ab294850618079f51b08d5015d0f6266376ebbbe81482245828c0a872e90a7815484824240c1c79541162d2ae72a171b5219e7da3f28803041fcf77beff9371a442e0c157773ebff4000e0dcd0eda9e32bd67a613ce40e927f476d9f0c721b75444c8ed7f3ebaac2e71d7a106487b3ef46b4ab3940407430619a472fc37a35871599f05e207be836a637096a3626108643df1328a7ca91e4ea28da552df1ca08377215a631b64744e72fe1d58789a75b6bc5a74fb838f52b3d31aeff6f7906ccb6839f233ac10a8d6e01fa4a0d3c7e5a81b7a3425716314610e6b5e968df7130c2be2da20ba7fb518a933eb5d32ac1b7c99adae53f3802b09e1c39c4268a50be442fa2136bda9be8ab3dbf3eb88486fd59baca3a02b3e85f65cde2ed80a1848e9351dac37f835fcab74f8a0f4e43512b560bc515c184a7fee7f9d84ae641f6a3b4a0d6cfafa814570ace7a5241585f5e31996211228683ad0717f4b1b4f4da553d4f9862212cffb53675aafa544cbb90e8f83007cb257075eae4c6ddc29c2afd6ed19c6e493e2a38302c4749c37913ae06b18405477b5dcb6c7831ccc6d0b8299f79627e71dc910860bb6fd45dc618a54e7ecd6e8d814d955413ad286e88ac0b1151d23df3430c460c3bde3330f478855d33aebbb2ce3935bd211cd06ea4a60f13beefdb63fb27419f772997e284a6697c6cf2ffca6005b6851e458a6a78bd192583775771da34b87143498ad10bc2d6c96c8c76bcc3718b6fc2a67ccf8d4406c748ac0baf14b92ffd9e69d72710a6a148d924b76f71d5115c5dd694eead2dfe302926187cf15494c8a4d51744a6ed8f5109a2d1900c4fc0458937d3b508ec7773923fd1e5e6950c021a40f7d7c56a13fd0ebf27d57d8d09b33d93f5b9f552a1b39c59f7f85a8379378fd98e9c19491aadaf4766910a762fd84b65577dfb7d0431a2fc761a9df3b1c7ca33a831c5c5bc6d93b3e73d5d9cbe0d4c838088c81e87395e24c3c60afe4ef8273faefa5702aafb1f4e68b1eb5ad154336a58f136e8d07b012cf37f13d68dab3d2597b65ea3cbec2e6901e9aaf0de92eceb098ff794c8d77c1c18e8723e1b0ec597ece504f2c362fada6e429c2be2ef9e3f1c9803dfcd73bfda47ae92e22cb7547a7b9fab5d896272f73b44637a63a8f725e6b34db1bb2dc835718bd68de11a74295d73ac98b4899b15773d8dbc896445bd730648f69ac90c039023779cc5ec0c69a96f3c2ebb311266240ad78a7d0d62dda02d73977deb67cd38ae3b104eba30dcc1de6e922d30a4ef1c5c245bf8dc2342a1ee69464d1093b59943f19946ae5ef07a89e8cf9499d9ef631c73b6c1e3db998e9f235ce00be80d141f6e8f87026944edd658a9693bb1019c18cf3304a480abacb339830937e9245022983b7078d28191a3de7ba248a3110281e4e71789f2df330293ea5dce793e289e076a254cc5e56e5801322c808f885265c3ab7bf6f0228a4a571060b7d7a2b650e71ed2f2ad78d436f048b6b55addfd12601ba9e90e29fab16cb9a3b10b8b18783a613bd1f6a210e21feea4302e5d63561f29e71eb9e1a1f1490e6729ae804553e85fa8c811dfa756aa33b17b09e976e603b40d8835a35397b8a9687208c0abfac9e40e16045beb495534edfd09d54c2cf256d86e7a4ef501e383730fc7375edcd7835f53f28601409e1e708775637af9683f7fddbee46306c701951b01addd95a1c99e8d4dd5028bac81a1875b4a6859eb3ad4004d4ea68b5ea335b032ebcf8c71e00e104c1f41ab2e2cfdfa80e366ff58061fe5806178e0b113bb2582ed7dfee17ccb0df241ceebc5c4caa97fba660b8bc2d01f1faf1c3dbbbd4359b6dafac2e768979b771861cc8a293069a15ef14a96eaa98e6771e2417af9b6ab55142c584860c941f76a42bf03b5285a4bfacff94445fd5d3ea2c886abe7f6526345ea9bdbf36a071f345bf36fd7dbcd624b6f0f4b8769ee9700dd50940e7ed2e3bb51db643b6ab0437927e6f377b64daaf8f7a741dd2efc57443c299a6c0c3c877096175273a29f50da881c9a36c476f5886fe879b7a1937528885d853d016b62d19ffacfb40f06ec1e59144a33826d63bf96d0292c7c92fee6692b0f802be6c95dbc4de53009c79b7bea950e4e5018a2fb86dce7c14e093241a877b040aecc3ad558f8dd7bd1eb4fb197beed80832630f0f512cc1ddee64a6015e1cc67743568a7eb1804b45d81724d63cf4a54de4aeeb93fbb9847540097a46720f78c57f7940985f3958c265936fb1c6acc225a0cd7359440268f531fbc3ea8279086b10e31cbe63ea7bc392d8331d69fae3793dff2bb136ffca31604f5623c9c6b8d8d55a08261b2180c5a9cbcf0748a63f896f4c6965d299cdba5a8ca3abba0b0d7dba4c990bb61d8e6a3280821a6942fec03800e0101513203e96dbb3370176ef179cc9bd3a909665fc61b60cd2987440d0c8d3f7b2d0da90c75719eeacdcb1c8fdb831e954c46d34441a0434cc1c26ef9a68f213ef02f900e2c59bd6dbc7c25784136f3296ce788f22e8578b8fa82a2e39e83c920c8382e6a60614eee0f83a8983d394fe329465fd18535cb96290a5d8106a5fdf99eb9f69cf420e473ab8cb56f74c74ff6039c5ca49b2051a2b73332863d2327a946036b72131f8adaac63ca71b2dd3c6cde23c947ecfd9e346cf4e7637f2f3351cc752268fafc9032110480f758a6bff23c6d2f89e0ca78459d2c837780de7e7df13889854fdae81ce62c113e7608270da494ad1dfaf3be3fc346fceaaeafdd0b3a1d96942920b99dc367a372096356e22bd9e6c5e103fe05817f20659a9806db62ee1d20437143b8922045aad6365dd88fcf267fcc440e8ba314028b17a81e102f976542d8797e823ca3e7c1cd71ecb7cf1467efa10307645b5579c54a1faf91cf1770296c2e370a2242684f4c30bc29a5941ff27a2068be3583b3416486244032b40ca229f773516303a81fd4d2e8c97da61d25e75ff8566eeeb60235bd03e3ec31b16a851d9db16679905ea44d102e85aaa760b60602ea0efadf9966b7d3e8a05830034acb0463d6ab00cc4318b1e8267be5b98617ad9e7e4a61bd08270792f388e2292bb45b30bf70f423dc7fdee1d43b656a1db6b42aead168445dca91422a955beda844b411666dd5a9091f8fe6adab35033773c84bde6ca408b6916b18f28188f6a8ade96449ebabd6cad7beaf3751cbec8e701f2de042f69069960ba6d1ba299acea554db52a5d07d1c7ae5ce87eb4f3d080e2ad7cc9add5e0823c605bcbbf7051083f247bce92a8ce63bd1b87ceba61d909db4a5abfa0862b85f61c3e8debb3dfa42b6a92eddf8c880df226a5c726673b4f2e970be0d8bc355d37f79a66372e592f2b1f319759eebaae6e5e8d167f603eb9305b2e934db55ea8c3f4c34640abfb00287bdf5d1c2eeb71f42dbc59e3d2715c3f30c6f36aef37f50119bd3af1d28de0adcedc414f0b046f650e4155995e93a143a64eb05f9108830ca6e489257a4ba8ce7d1e34a67e5ee8355fba40d859d7956876ff6d4790c65602be877c2e4860d4652af517eda085b96c13e005f31d33442c8f7e060591009ae000d61f2f423966cf41be894a1abd1f07904020fe40cf03cdd2856d824e90fec4551d76d0789e6e57c664419eda588bfc6b564c0dc35cf0215002940a2af16d704952accf4182706f60c7a2ba05a82e56335864081b23cde330e26ec8c62bdcb84e9d4e47123b722e12da561ce908eee62dcfc4c557095a2cb843b07c5cc3118b57ee3b2aeb8e4a048f76201693b1682c6db30f80f92551603bca179eee3c9f6d86434cfa2d8adb7bdffb1dc5d6bd36e0ef35a09d9d0df88c53eceb822c61ab2d88fdebffbb318d489ef540b07334430f10279804214d212c81c1556e3a096124ac04ad00b60ce06fde29b42efee77b9b5ec23b010a27f4f80f55bf99ce8d7b59fbd79aefb6072b1481b0762ef7a9c34b554b9bc327da695f3c7181b98c40cec4d68e98c9c5e34b1096628c9d5daf13426e42338a4b45532d1ae782f1417cf8ea5a3b440712f8092ef62a5e5e2f574d7060a9725a24a89bd38401991df0ba9b4f4d59dd43553e7cbcd40f7c3a2e09713c3161b3d465f77969d4bd25d92f5a2e51d0f8d13f18729eabf8e7f7adce59ff86eeabfd7fdbf65a7ed6aa54764b3fa7357d6bbfaa3b8304760756e52a32417f8416aab70b267c3ad395b1e4d05c42d25475bf665e1add8be2c0e68100f7618177499055872e25f94fd707202e364e5816b6c24973272d2ec0c3f7a11e8ba1cfd40b5ba96d52ebeebc1bbbfae819bb08ae3cd2bdbf41660a1bd3b482a3284773b836cf48183b77a3276c16d33416e4bd18793159fcdba1b51ec3f7009b009a6a12e2b9ceba3085b9d1bbe34e1e70100c7a2a2b0fdebf9c9036ae5c064956017740924caef78e1355717941575eea55955783cb8a1cbb42d3b495c16b74acdefbc15a84815bc8ccf9208eb983ab60282dff923d7e82162340cffab67e52d3e7d1ceb65a81417164332d04d3bca52db913961e920837c6c61888c7d56fb215cdab90ebcd50b36ba094166839ec332fa48e9a52718020c7e78477d6e0d04d3aa51a402c59317bd6f384cddd444df1ce7b710b65ea9e89aee76012633acdc5b60aa4e572d30d64716042ee9497152b1bdc6b7d2c5b22489fbda204cb7bd529e99b7d97009f1bd234a5825fcbae401d0bf2cec49e08cdf64aec60565ee3896f8240f3512976da2280e91f2fb824a1d7bde5f90abbc6af08bf5b284a073e91840bc5950e8163ded26cddf90ffeb902c55e762b8ba557d3fd757250816cbd3b0c991038107f1dde754e27ce5efc5296ab47e20fb0dad6850d9004bdd741bddbab865129f0c06ad77b1daef6d42403efe0409d9a7b1bb92a6029016e04446311fdef95f920c0a9dcfd54b418f3b769dc6b5d0109776067aa297e5392effc1761e32845f6f579315bc134622c12f8c1a6fe780f36407e059ad4eafd561ced5bf661efb1ec0bf13d03a0aa6cdd8de995c7bcc214182f445e4107af6cb1cc68b09b41659bf34d1e7ba62b1114ab8013e82af0319b9a54726300457ca0ec7b8cfa5edf35b3b1fd873e130a37e5196f7dd4d7b4611c4c4169961dcc2d0550521c3d8a507cf0ccacf4590133a78534466ec84c903948bbaf848420ec6e793cefb1728fd1799a8e2e5ccc8511f49ce96eda9d34951c7b0f8fb0ccd926a2ce1606ee2e4cbe313f04a040723cf1110297a6a4e750b4f014e2e12110f649af0849902bb958e245a535e458203ec2d1b1a56c107b19496f51669c5a11186cffc1d59a294b04525d5cd56dc20faf2153c05d821956767e58fb1ab4188fb5d16467649094571ed7a1e6acf6373c917ef2f9f06f917473c94c97835752452d7ebc3b058df607f43bea5c0d979de829c0189191a2474d268d4122c290f9dc92fe98e3e4c66e8c41a29bc7837c8cf54ace5882443ef3e333fb59c010138893732fd4ce5ddb993b0b5afa472eee2276cbddeafaca2c6cf20991cad287cb1e548157c6d252e69d451676d8493fc778fefea4c48cbc94e7885494ce69fb2541470903ce61c8daa0286d216578452e436a13bfb86b941c53336dbe918d57f204bb6012a64fa1f0eb3cf24b4e0b999792eb5cc9d98df74bbaee7514534be9144b192e9283aeb8481675e5e5f2dc6f83922fb9b263256407fa0b53c1a2000faf969980b780ed7a80bc9bfbfbb02836de95ce24e2d7abadb46cf9553db06cc62239e1bfcb183f276417baf8841faeb93ff81f403a8fd4296918fb93d9d9a34505f54f09d01b0f56717466d536be3bdb74ed666ba2b1c412f0a05f321b0a48ff5b8eaffe98f5fb7804d6937d94932c95ce3644979484708909ffc6a7d427e4de6071fb361af55a7f6e3f964e942c88a2b7a31164a8acd4ceaca62ba496ca7c803c31d8e382e838c09f464e0e59842f4081caf22e548497f0003cd18d6f5095f61229c5db9f2ea9806059a543f5e3974a836018f1effeb297ccc7dccd9cf8ef9f2769a99c0a1d2385a72bffaab4c906a0d53a63637ac6d545035c6be861624ef36340515357cadba31bab50b9a062acb00da672ade85048cb661bde45c7d592183e800e1821f0405c2e1262b7ca6c44858cee64eab059a9406d9e8170e893f04eb1e3d72acc2ab62e051eff8f8ac7e3df31126e20d16330e7fac356dd46ff3325099349d600e1ec766c532da4e00facbd1e43333a442d0de6cb16b55c27bb1358bc0e29aa46609015f20f3d3a353ac89e76149e2cb3e17a18f455ad45f7b20c0eabe3d996418ca8e0f91e11a2b037ccfccba1735c54ebbc9daa29b66ad19f2f620327fd72f9e3352e1cd4f6b280f04bdc1a4ed9e9c981b047cf2d94c1746bc073d17d044e80bc715fe9b14d612cd23910f4e9e9fe77d82e38bd3e7f8e161b7479b279ce3021313c7fb70043732cc975efbaa035c2fd5b64d97b1d203d0a181d844b72dfaaf8b0832b73252bfbc745654ffa5221006d3544eab95beffbb1fe5b24314c81ded5ddba7c7e9c3970282494f7de211678036f468076d9a3132885944d454468a1ff0e6f7bd48b478bce0349c31b8a322080802b392f61af1a1424c4d7ede0b302c08a5317488864abbbb0be4f6a53eec8c337100121131145a526dee2b82ecfa62bac6416c7ae14b6ef5d4d74de62e823be3c898aee325c8b89f9f0737099f4a783e1a36be58e0c4cb0c4567dfe58b8e96bd68ad2932ee541a4e456fa38ca87a5cc3f1275dffd3be934cda759548624f87f17ff4947ca2e35827633ea8db6d13805e34c25c001147225840bd45d2ee921494e8a25a72369560e49a37b17ed3974e261af5326b959463dd61c15e83e0c82120ad2e7309c33cc7a6e8af0eafd7ce6b3a71f593c06fa65556bc91a83b5f1678b6c0d03aabd94751ae1a8b7b9136df9ec31db74bf853a1c8990896b2318628a381ca44a6aae2164c404df5aadbf74b2748d3d17bcbf7c8caaf9bf4fbd32084acb890caed4e900b1b01e9d67ed80ffcac5086c3452a0fe41bc685b38fb03138028a28b561ca584abdbebd05d20779ed18f9d736b7386d35b34b0154ae421561b7a8b9f834820e7f52b8e0a5447c36ed0fe9faab8259d8ccbbee032e9c33a71a490b1417d8af780bfe8201aa0300989ff50fd87632a0d40e517bf6ab0330d7deeb92f6d3743ffc77842726cdb52b0a6d8e4cae277abc0e660cf28ad1f5e62d3320dc44ace93f213e1c934a8f59a5d4aa2136aeeb678d5b9e42d567e8a76c3eb31640056e1bea1bb03b61adeb854818ddaaa1d0dba45504ed7e31f6792f89b9b99d606663d4b47a29922375b00fcd62cf9c0f8f9d87c316af91a1121d43d8cf553a517163934afcb20f08c1dfb3eb0e351be2133ad5f54ff55e030401ea1a51fafb1525cec11caacb1e96f96bf3ab4966ba8d9a531efd83bbe46912686aa1551bc31a3acf53062b583215b2163522e5af090a79178574b3dd9fdb713b7f60f5909b42acee702dcae4bf00b13f47f559f19e81db27a879f059951e4669c6ee1e8be11582183f84da180920bfa984be52d3c401af7ffca7f5ec1925e34f6431919cb1d344fb0cfd771d2778fe95efb971f2fd5f490359e29b7298d042c514c16725c5123f6ffeb23647e964c6fbbaf2ffb94f124ea372766f986c7e977f234d00e44aad69a596e770b3d907e17048494260d9fd08110d560bf5275fcaec0f1112f4432ae33476e6f47ead74e9c3e1192b462eb0e338ec8a0a93170ccab3f48aea02e2ed02c739291c154c372fcd6f1094a8895df8c2dcafaee8cfa0187345d6470b04a95af1efb10ac0f2454a819b457d315a857afcef2c6cf2e5ca8946b620e8cf6c31106e136aed96d80a0f399987d1890624bfae62c150451786d1dd92eca68198fa50176f463810b28a4ae14eb71175503d96c481cdc8c1d6c70f30d3b241ecd32f28759d95f42f74cd0305c8e7ebd4ba82621a8921f8657a28c7eab2e45c84e95c029d2ba43732902ba86c9ecef57472ed9ac0b9292df0fa7405b1141de700c173c037d95d64f0064e03d57308e561d483c534d6811d9b88a1cd45a2f9a6cec95be68f20c941f5a792d2428f8719732e7548835bc72827311a010b895642f18a8242da0a30a9f8ca39ee70734e74fd1d37659ef1738af3db31d33eb614b8f8d439ef5b8b7859a1b1bd3c38565d9ed31d599fa27dc0742f2e7c0930fb6327f08f2a3814594760e2a1b4a8b9015f8e10542c8da4d43104b485dadcfbe9dcf0e86c729bae26c60cbfcf8094cf34d632a43b075e844b6bada9682356e0b93f5a62213216e8721df30e2d87113a9674db7f9d7f6bc9f06e96572db610a93dd3d7d6933a3ef1d6e525dcefa27e616be63281948f8965aa2756172b1bfcf758ad344711c4387a4bf400380a58ab53d111ffa35ab31bbc302fedb62a0164829f13c5b04b4d256884ce32dc3e7843d9005c1b1ed579be90379f8f24c4fe551bc65a5a2e1907017fce0909b6218af0ddf7975bd71c7bad2f8f9eff9069326439d2c240dd7baa20a1aa96eb4600c36e62ed64b1c44e0307173ce98591d5cd9f133f02ceb197a2a745c7d4b9a65bbb8d6e3f6dd7f1a34f38e04e28dc0c0ef5db40ab096503ce680687bab56041c9c500e1b28a568e93c9c31a61a9fa4a41ebf6eadb1965d43dc3af0660f11bfb9175532c7a4c401225f341a07d2f3a264ee574f5d7946e8e27ce710299ca806adca60bee43e5bc4eac5e57335ea6a0df11986d88b26c74538d5147a3e231203d84016c003559c953a93464c5f29b1874129bc097f32425613db626f58668f8a8d3ca509fff0d6dab562d97974d20013795405ffc705cac39d3d6f644900492bb0a464cda1c93ba43a72d3c357a40cfff37b1f9b23bca346f4754795117dbd2d03cb1a830cabd6c416bf4e5f3af35e38fbed8f075c45c8b59d6b6722e95cccf1d008d2d322776eb0dca52e0aa7f06a155bfd1ef70dea70429d3b4693bd63280e9deed118b3e30290db8cabe3352b8ddc8164dc225645c951ff658aa339eaa943b8f443c0c905bfa8118a0d60ded240a67f069393ae7a7380337d553034f7b2e6fa7097c59547fce88db1871e41cb3bfb4a101441418b1512966e2538d6b66d9ea53b2b2bdfdb7f986d539db04dc6d1e68bb6555334824e4d0efcc1c0fb56c33460ad71bb1284cbba6ab58db28920172bb065615c63f45b7f816dd592238bd735bce2389e2ee8a2dbe8c89dd5c486eca2b33198c25f4231bf2fb968ab08ff9d16f7eb7033111e994821929ba57d7ad4c6090a1a4fcc9d45dc84cc88fee7dc89cf16a429803fc85f486b5ebf75e07af975778d750b42f8cf276a93c82d9486108f7372f4ad45a58b7f95b063cc5b331ce416a51251809b75fb801de325cbd23d33e0e8ae89092bc169f43069bd648d92e4a001fb68d2a5fe02630cf37b5ac708d388d8bfa5488dd8f97ebd7f28a738927cea68dad6a98818e2c16efd4d73988d4df6ef08e7edbae908a636680b1ec8ec71baef30bafeefb926721bd0b6e1822e7184c8603637ea642f2cebf6a1d9e4f233fe10057cdf8cf1b9f573af6d18fbdc5d0a10540c5bc0bcf1f0aecbc42062dbcb234779775397bfc21e1eee47a430f1e97bbcbbfb769a25c69b964bec0a4deb6a0af99e8e1063db8779826c2c91f3ad2350ecb1ad7aa6a60abf7e1f57a411290d193ca2a7ddaaf3ef2eeed22e0cbff68278cf4e2cff68b8eb2aa123e6386bebf4f8a9da2f85e65a0fbc5e753e7df07585eb923a80a51e155ca4ac8e9731f60ea5a79b9c33d00627ad63ea02ede79c17635a2eefe40291010338591066d3c2af0a313c8ff05a2bec17dac4fb296a98a2b8651b2bca98d38a4d4ad958b73cb198d63b50741c9b7e858bd2a33241acc212f313f530da198a6ea9da42715c387403b3a7e203c8cd97313ee8df86b90ecc04b61dd2933073122cc1c27bb9e72b22da9372f66ce446f3506f5c7081791497a300f6adeeb51e3e189489d90f115dc5636af799bfe7b758d8bb32110cf0d750d123000af503680466cc9eebffd2ff52332fba59b46b13b8506a03bbbee85d7659b8983cbdc474e2414baf8846717cd6cd193fc9399120b1074c7be2c7456a6acc063c3b897c8e3ecba402c9c9a9e5fa53cb747914e4585030eae38b02178d3ac44cd8dea380f5717573247a4d380c44baa71b74f4b816ffdb36dc683a815bfbd53192f01154a67622eb9b3c59443d790983a58a7b594feeb07a42d8add4e530a9f65c6101840b67ae7240a6518cb34ce42008324e361f380af8228d9710a45ac9224794676489442c4772e87b4c87aef46e36a80b2d943ffa52ad528069173d2b6a3343b5a32dc5a305f05814a239b89f9a033e8750b87f9a786250e407d8c239dac0bc46dc08568f95361502000cc09b23683891e68b9662282a5322386758aa51b5235614433ad1e8429c33846622b7785444a902cd26493b093fa4114c236c9c56cd5227c75bcd4915127a334cc5a95a81ed5d47152257075b25512875d81e1b2bc9bc6f3e26474eb8f5b79c65f5879abd47d8134d62c326a0a98f1757a8d13ccff398a93e5435a1c0be51c67783a259b9d8deae3dfbcc98e2eff7eca25f691f4b09a08d774ece1494883786a6d0aff64a2c822116778114f20447c897a2406a7b135f7763e2c3bcdf6a84680f730619dce788c90b5ed8ac7870998a6a9076de56d9d96b3d8ca2769e5921142666739bdba1318a74fefb4863b71e1c76321aed1540050ce72c372f14564f67af85e13bed9d651ed5f15b8cf50c22cbe39078f17c159cf04a40fd27f67f9ccf6a38a996dc59b62cc2a6be11db4bdfed6d49b69868e804d0dcbb67dd53a0c5b9d99b8c94a2922c92e3c69dd88f8d2b31d9a03667abfeb88819a04e5e8c8f291408c8e62ef185ef6cd3cb0e04c53ce3bbd62471869c709fc2798dd1d1a82c0f6d99dcd2a38b4ad0e2dba94952e3bf1e1956c1638ee4d0040dd695e4921e79f3e8c2056adec4f94bcdf8e6a60cd00a726cd84e87b6d05ce74c57fbfb18c30c8f86d664860aa29c0e4d3687721d21d0048d33620d281d0083038dfdb1be949509332249473b7767a0d6b597d1aad64ad14a1f352912d81a22edad1f70529acb705d7085e0f1df5b65bdf51435692fd7b841a834a6b910a9ad26be672e4bd642dfd5e0bc7c602bb698a0917304aa145c23dc91c7f57f32b727c2385b154059d923ad53adac35f82ac033d62109e5e3d52c6948bb6753c529432c0adb012c4d578ab473014c0dcc3574c25446b8d7e9d2e7ca4ed8c477ba7e61433c677e7f3568822b04a1bb031aa73797b2debdd51b1fa78245a99bff8a62a809f693393926ddf2d055232df73f8b536a2a53623654891678b4cdb32e0de70973eec52fd7b4b0876205f859c04a1b596afed8e322712e0531725ea302c522666432346169eb89f56fe190df2df64f36672b73361c81eaf1f0b9f72c08af62c2a98393f52da470463e7de01e929264d64ec8f4f249ea6254b92e03baf2142f3b591d69d960d34b9b2b558d4141baf3ef5a013d27483304dab1edc6a19d29f248f4d81937bce5632c43f38aec30dcb1bdd67f9ddeeb10fee5b18105ef39e1f0f23d21170a74d774200898a2898795b89b96646aec60433fdfce949d8cd56a7d17728fbcfdae10edea0c08c6247dd09121a5ea5f38fa5bb0249b6fae09e2c16b319bba5ed9a675c941e8ba2c30685c59692b7c445270fc6536397685a8159d9a4ccd504bb9a1537607d096843062de80bb321f249c29f321bbc4e2ee5925e02ac1dd5f519bc24bc888e56fd87292598fe993a25e75d6ef2227b19d3cc3561c6ea83a177c3b8e09ff8a00df3c51fea6800d1d0cc76b2c8a637c25f0d2732975b4338e908c3d105ea0ea8953087f18be0bc141416e13034d79a1294c05cbb100ebe4aebaa4b2e1735afb855f0aa0a342b33ac746cadac392e80053be6df65afa434e6fd7435cfbe0ab171c2dad185cc30e4ef944260c177ed3a06c9b4618252a696514bd8029f8c59fe1b101f7657e536d087815eebb51c4f8b3195c51e1b8ae0f22a79cd6cc46f5e053f39208324535fc2a98f569464c9aaa1e45a64df318893b3d13a91c32f1e2e5cde3d03e2abc25e9c4c6a022f2f58dcdb3b93edc9dff350173b03eb974384aee98362a832d057ba017abcfe7af34e3d64e5c78d55fdd2786b3ea573db6b8db14c97b05d74d1a4cde7a21c3f1e0b7cf5d09332217696141db3cd581fadbc92c01b647a1bc0723096494b2d3969df3ecb5ff95780d685b7fa2df88be59a044b95363ac9c5d52c848f1fadb5ba62e087ef0fd4904013c813da6dde0cd8deef7900c261cb33c436c320b2571028235b940fa4b01339a0d9e16e580bca14966f45fba4361c99bceace11935a564735760357f9061ab286aefc85674139dd9f0565486e7f339587a2e6a2554c93a6f246b8a7d58e5fcfb37fc98e0910d4921be8055fdf6a860f8d7f531b7e8a118e4fcfd419ee4f1eea61a9a6e0553b335fdfc0655f6146fff0171cf0955ca788ed1e90ad90dbc44e487821bc3ba3f00f00acfad9ac10ab148b515498009185f8ef5655f6779040f531218518f1123e355f049b8ec6a85b5e0e6a3c4e193c5828c14d95669106825e7a11dfb1fc3aa045f94faddf2a6e9c8365e7cb0749e3895b3f59ed25ef0a4b781557301b2854d7a9a049626d909e4aaf3a0224a53c1d0b7a6577c50bc4dda4838acc7a376a1bb53d80162f88ffa9403078a78e7f0b4e66c8d6d7e4ff972adf555a8688b465cee35180b9d45be4c4668d11cb228b287226f94c1dd1e2e0a273824a1c72edfa1004f9aa7bc24dedef145cf56baa1004522802f36201e998b6c9709cff8fcad9559c31a39cc2ceb02d072e752523021ed17d0b13be7210d1efb21236755a1c5fd48bdc9f8728866ebd89d2665500b67f88fcb49371cee9c568026133dc1c1fa5bfd77f75a9980a8b8e057cdc1ae3091fb9bb90909d13b4a5f881ade9746989f1a7e23db67a6e934d5790899f775e96640d9fff69a829b5891580a6f8d062f8206b58629b1c39abf31a0e4bc09ee94ceccc4ea5d5fc75a2497c9ec9e2b7e16b6f4261c378d68fa65915d2db6e2d1e9cd51884b289eabcd7151b581448e568a793ef12c91a34482248d707a2532fb1d85ffbd6d01501d9c817d0f7fe1333fc1eadfd5a87ecd9b511505238e42ffc4af6b6b706b1d6a8235737b27ded60472ae25ffd4b18ed2632feb4fadc2f0a1470bc2e55b2ae3f7b383360daf2244e3bf859a486fc32637cdf99ded6dc12b8d46067986eb52aeee637a48e5cfcf74196a9742018b6e4615e2550cac65b988d002757a19dedd58789d2540470dc3e4ea97838445da05c9e8918b29df1375ba198747b1d17d7d7c958f20f76179a5cf761f30574c73e81695f0d88359bfa54d2d5d138438991e44f3f8a04b0f28f63aa1fb169402410b824f77186f5af8c512c47fb05f41423da6c19d8253e6d90ef9df8dd2033fe5abf918832166253d62822810131490486adb3c2909c9ab8c6beadf81f2582786b904d817483d845e2ca6f14edbfb5b418d68b976a96ebc7b76006c1732abf7f8f2bbefcbf52bc2afea54da377a4b248166d75dc1072839044eff7fc763725975f66b3884aaa8daa24a8625f02af99d391a2978aa6a180c8186a96d9800968b8ebde727c8148fa2899a32dea66560289d7ab62071b5e0e0d8502dd8bd794150589cae4cfe0c4a47540894d5f4e78f90f24ae3d36e6edb062f099e39d4da01be0707a2a38c219be5c532cda5e9e67a0f8ba213b97c8008cca6588db9e211ccf3a8f1170ce96166b3076f5f2ea65899309b71ce3ac7bd6ecd636a63737ac76404211dc80987ee9338740d4b1d56385ffa3b88ff4ffa7fbc27a10ee8aaf1ee18e58e57a41534dccbac365f3c2269547f7b234acc1581f46159182a37e4c36c122ce1d273154c1a87695074514818b818b42c40a177cac2e9c6b50c707557ad49121c5a2622667d4c3911f0b25c28f4ad46656b52bc62a91accb50403912d337b6a8bddf0ef011cdbd530820644ff2736df6527eb8035777dedff576c750a65b3f7d699932980460aea8bc0b5a840374245c4d67e7689a25330feb91b1d2574faaf3ce65af392fe23e7499ad28455f9e995468a3d1812326e8dcdffe4ea1e230cf58438e75bfc06b340fd7b3ca72d79941b675d2004a69274d56173f91afec705a3565c74056b8be128e1e4117501de8b306af222771f8c44b4f0028f74ba0aba9fa5a3534b5e8cee65179a8c527be5aaf687193ee9def6e343efa82f95ca0fe6f23f9b63603229ca8f7a9f3186ec2f3140df7489b0066f1dcf2fa5ad31cab4d3344205541e1765d40da3e9a7c3b96cb0f678562d4d25c1bfe4e227f38e3cfb236f5f5edfdd03783338b8b934d9ecfbac1d23ec29eb65547a7d10f42eb1847a8a2d7d2b436de302716817371d29269ebff9882361a1efd114626d6be7413009a1a148afa9cc76f6fc3e91a46cfab6bf0eab3533417abd22090ee40450e0e6218bfd11b3e1b7bca01ac37f793305b5d5cf8cff3911409d4ccdaf379829411e5f40f9b0881648cc6fd2d1b78c8ca13fd01a6b23e7d27be48e1055490bc65a635796c2b429ce1a5e9d4caf6c97bd473d18e8bb0c3f7a0a1bcf5e65a7a0f2cd8775571b8baea6023c2a3c443a817ba04a3e4d718a3238422274ab35f865104f22e33c290cf648f3ef4bbeedbf843a2f27e36093151a3a2bdf496db4a9fdb2e88ef7b1135d5f1e6647eff04fa6eabc69872be76620bcc398b4630318af89c0b5af2b62b765927340225f2a687154763e0e31b065c43e5e72e7a19780125ad024e1770a72e90a03e33f4dd7e1cff38ec46b6d63fcbf8ca02bd2027788c23c28ffa6cf1c847d0b14892d12d834c31344d2006fdbcbdab4d8101fd4f5cff23c0bb7502204aee9a69679e8ca294a8903d26bb496d2b5a265b58ff3f15cd89fcd8c56ec6ded442a621ed4bc67d85e3842328547a470456f3695b7d30d244d53131abcac40e2623e5ed3bb04f4c2483359b5e2f4970cdb615f48d965e2c21a34e2c581576b02875ea4dd6c75b3d0610222e8649e5556fb8758c1679d6ffd821746d81dd72be5577a89faed98b7bf1afcc63d50b2da5d728b177f4ec14d07d309b6c9bd75281f2ebaf03392531c930b84c9375ec0dbc0940c99c474aa7ebd2db970ec3c40bf67e1a970b5dfa76abb3e27599da8cfd6ec1dfbef5fa79c284a187dc91befcdd1472aa161f7060b60c474928f656b5b4bc89fca9b4747cea9be7a8866d6f17e7130ed28606dd99776c46d0cbbbea762003574d1b48e4751d64a8aa54b9c33c02b2b94e0464b9b6b5619c2ffe55a7879e096f63171b8612d7d26b2e602d73574cf6a9fba2f325df8157887445efab0d1f273cd91ea16d31d652e92e778697955b0866107f7ca9f60d48898bea09540a62ab69b6c5ba78e65610468cda2f1d3abe1990c7c14e3e8d56fbaf38ee111670267043943df53a48cdba7b8a9f81203106320632f327eb9d4ca1dbcb0939780be2f6693317a4ad4589309c28f472f730ca56b39dd7d4c4082310cfe5555317e1dd252e55e6bcafcff96495796eda40eee4622cf9ff77677bd8be214c48a3cbf911d881c246cbbd5b75b7b1a4a6649b88df060bfa3ec241563d98467d62a3509ecbad8eb5c481b7b838c4e2aadc41ad58e56c74db30d3200c61a6a4f8a914a75831fa24adfdadcb4cab89c5a39348ec32b74286798fa95230d21d9455778876d6ef203d91d98ace65dd04d0b3fa4ec715cc24b2f0261271cada450e07a6a7777ac8c193c239b6cd78584eee160559aae453f99db2408f2258faec48f3216ee7fcc035994b74f84cea5f490b0274f6ab6122c39a472f53e5bb7437a8d48c1f093e4cbdf67acfdf3de6d58c1c71e6dfda0bfae21f6167b1045000606808bafa81290b066b1a6e2f6c0e86f0b682c53a6a798004e1b4282f7c767eb891c9706d66c9de2a5619c07a79de048e05e6d69e439e336f378cbeafcf8899c7c465c236f838f7755864fd455fccbb91282aa377c0ac08dc2f4d5452012c2ccf2362834d24aa7f1dc517665d101345e1cf8c89163d960201bdf93aec544007dcda04037b97d4abe848fc87b860568d168225da14678f3ca2b8e634c204ea8260bb10f59bc053076cf516c197962393bd90da91900344bd2fba92b7e5248f16346f710e53199ceb8a03f7dfebfc0d7fceb26f77c26e2397d805bbeb81b151fab26fcb0e70eb31e9be336013e5c915ae8a01489545c00a1d2a87d60bab962813e25576696f206e54d418d11df5b0a73fab9dc5bf0c8cf178ecb4d699904b16c7ca976f4c4a55797fd08a6f8b265569699d504d9c0f10608ff956de08ac273b1491e98159ff9e4e95c4526f6e4a7e58ef919ab6033401569f572312dfe599c31561e8d8a01f3ade61d73925a66e00f752452eb58c7047855e75fd0ef655ed5947a13c0b21600daca04ceaf18faafbc5695ff677c3e037205db3f2f15ac69bd1b789a761a826a8f18e69294dbbdb0df6498610c5333c941b3ff71504583ac2be3f3e55d8094cbdaea9aa9dfa201beca65b319f7acbce0f82bb84c679f1b967dddc87d73277e062dd76c92e476ea6292c4c8a58025b4a9dcd0a094e9205263204f29693e07725672c79f57312216567af1b0f6f512171404c2e03049b568f5512a4a1eba7d368a88a11d0ea1ff1a078081c74c2dd1f9099dac94bbbfab4028832ded038803eff5407342610cf2f557a73ec88942c6e9030997a5c7147daa866ad555b099155b7f54be1a1624ecb8e1b2d70d30f12e2530b6838659005a37cf0b57b1e0016edb57151a2c5393b3377a7045468ec195a821e9b75dda563a6c37c9e6f79817e732221e82da1eca43354e910dbec42de5fa289104ce88f477dfb1ed0f78afab290d6a50208d83a1e3e52260cf2698db3418d61771750211a439e1ed239783d807987d0c1cd360585de35dbf01415e4917bcaf6609fca0ef56c56017504f1e99279a2d1de2ea967a35aa23fafcce4da0109e6d1eabd63fcbbf659af7434fce368af9f080fe2af621b852a73dcb0a0f8eb174a8baabc126a7f35f8e8732b16e999bbc008651f332fe478d9384cd19c6034d92ef02fc5bd30951853fb4a8f9e0fb29c525f27f0f7b2780bfaf6ec7e40810b7c1d33044c35ebc74989bf3b5e523d1496bc2c218e2add492a688baf57ea7f9cff83fbf15c1840152919a3f8411141d8fc5ece857a4a672d29bf84bd65a266e2601ad10ffbb8c3404c49764198296141dbe41341af146de7aca1303435f54a6312f78209492b3581cbd17ce1084e6fbff76395368e586f18915ce3faa46ee3e8f828f0b73e7614ca407dfe72ce961cdf0ee1b4047da4d452a5e1cc1f26d214eb60847dafe3dfeffdbe4a602e8e28c394376dfc6756e604887bb5fe35521f05c3a2989f348950369e86fa0f27085702c143bf1b1820d5201f9dc53d923e44e09b53dbbfeeae228baa5011740e9f651d1fda7fcec6de786ba3d01173adbf2fe487bb8cd84afbb6e88081a69814e835a783e91262c6a8edf84a1f082aa573abf0570910cd74397890764c4a9eb8337c1acc4fe18884d031518817518ac9f3c87b73571e0eb8cd8e20011f22d972b898484e286d3cdf157382c1bcee86a268fab7bf2a7a95d43531a0abe29fc030614a2c563bb48cde76dcd86f0d941dd3d957e8445cd3f78e3596c081aa4a11b20a9837aee0ea828c8ed83783b9fac1273472ba634120afc8e6aa92778ebb5ab01038a7cd25108aa812bec9e37dad53d523e271ccf28e44d9a807c6fca4d832d87180dc3780babcac49333a750c8a42ba8e20fad05235cf5b18deef32ee4449449188c31027a54ea6904de943fd1ea2400db9b96927b1b53ef9db53cfb94897a866a98008f93324e65f012bb840291f53edaac5defe5cf1cab7371c1737d1f2e976f17527627d9a4d04686a07128bcc13baa204c56b76c1ca4676005ab5541f3af1d89df7a77ed047a36a3a77cb4f0e93ee7853784eb56070cf65840da45d4e3edb57d5f772ba2e98f7e95bea3c15c7a7dbb845f2b1fdab46197833871a0f69f8c2314a641b11e6d8fa410306f9604be04fecbb3d3d371bcd100fb194c1616fd6e5438144da9ff0a6c46a1c2cece196a3f71d62b3a4caa4a851cbc6eff4aea69cbd614bddc5aea9ad68f4e64d0b1c9dcab8e17c9b07a82abc083478541a53b8faf01fe83bfb131327e9b87d0fc223a442c43a4bd73608d68243887d2a1a83df67c8a3647f19de3dfc6ac8b422d90e0a7e2a0862f3680ab2fd93a9551f8b764acb916db9af58a5f043fa435f17b99ff756b8d4347862bc7bbd8c58014814a40c4c6d03ccfe9c4d38ed6a5ee697e588e09f69cf945230aa6b56fa9e02d7a814aebc7582afc43ad9c1e9ef087402315333ef8adb79477ab48020a952e80cf35c0b1f9303d9151c826c0953dec38af91e776725baf804d4342273a3cd57519b72314c5e2f56e875c7c159e8393d32d6300138332a1c4e2ef3df6da7d0e8e4b58d3f03571db6efd67495206e24579258966668f658ed75917daadda9df54ff613e159f8b8e2f2466bfd1518cca9350198ca49702f733669ded0c873e9da7da6290224ee901ae9462a425c9aa2a33b8caf427349f474956c7fcf61a2fa648e3d119807d0890c78f90bed9db1fbbe250a248af391ac906c8085bb87a136ce3b5ac9c68d84d4ebed45c157ffc8849d9f0c9f96ddf6171575924d63fe81c84bf67a76524585fff3cdf950b151aa78ea242e5b0a8248907acbc44a9bd352655228ef26840dc26ff264e273d2bf4c2949ce15db282f831b1269902354424b8d13c9d25fe45fdf5777dc936fb2fc218471feed0b2f8d5d342f15340d2faed348d524f42e04ae82b3a254a2e1b05982490e29460dab949990fc5cdad7bcdaa8e300bd8fc59a70fd0a831c4757b4a9c0b4d2de2a76e84dfbbdaeb6756536087c507c3550bf545dfcda7881e877c4d8690171c5ba2f9dbe68fe56591fb7be6a7e4aff322150b22c984f844b47bcccbc355e818f480260ae3dd531677c4ad693705e9ab18dc3c0808db497fcf33c67b7f0299a4d848afa19c738872c788721a261feffed61e8295ae911b7dc2ee9416873379a311aea3e8f53ebd585021098a71072bb2bb57cfa00022203f51e367d4edca4995756f51c715ba934ee3a20e8fd30f1486e3ff07e4c2f4c553e02f307a3e6143d88b863a1cd001bb91550e492c2f581768538693ba9a4820feac9343bcff27a913563b757e8ae3325443e2b33c6bdcf86debdfd992935db5db21f52f5bbc0f2ab4fa21559aef44d00a8db86b3282da212128ad9e29befdcce2606d0a63639fb9b56a24bcd26c9d600873d42b4a5d47219aec16ef6e193bea131b862facf226a8cd1b43653729f7fae644474bd761dabc58690f507be4fc81693606716c483d87b66551353bba48077af185d2ce5276a20249e71c84300c4fe8774e208d6d1270c6e3802c2b075d225478d8c349501b5466f7c6e17a3814119388667352288be35d06fdee2499a1246583aadca3c839f07caf511ef664530c3fc45f5fdee997e5991528d22e70dba2d27611bb425a0b882266f736f15410d568c3cb0e4eb8d236dda3ee2cefe4e7cf27c777c577bf6cc8991db35cf5f5276106b58fe0fa4fb42dc0d9be9d9dc00115952b1a91383c6e991a5795a9018e3b082bb9ded54bff86de0510dd1558e8a645c054c61f27702caf8aafac2b23c5251b89366c71234b9da9f8cba70eda515c9f5a9241b3110c6d5df89a58a69c7b761887589c84e53bd8b6200240dd8caceb35d91de766057b76646fbb2b0873e6b68dd7cf82edf103f152de081206d0adcc90fa6a137d3b0ddd1ad6c0fb406f904499773a2c643a3518435f2e5eb10535c6b178c3ed085ff8fa922a4fa9563c3439ffefd30c9a30fdb1c13919c64286fa7418c67e69cfdc456d47ff66edbdf7d4874985b804c020cf1aeaa8ec43ef2a94ac7b482f7b83a76656ac3e00c1d96ffa5db86e07afe477c3dbd4931c06e7b0c58f00ea2caf6edceac499622739e2620c997ceaa8551ea85addbbd1a2862d3af2a3162ed11abb32f0f4427781728f91c7416f4c6abe154f9b5cb121481cb400912ff11d86abb264784fcb6dc9f13492486bc188b44fac21aaa84144a4a613dd8a655082fac2a85437e8fac652f3d8f604ee8ec0a23d02e66c12c8e9bd2f0a186e66b90c80f4d494fbe158fa19e0ede4dcd2d5d0991793c06906b6551482ae214136a73b1e0affee1a58e06d5317ed3294f5ec24191ed4f7aeeb4a9ec984b8d4ca3bf4428f004742a7da2344149625ccf571afc3fe8f9c590a64f4dc6c947f61bca0515cb56d3d607c420b4fdd6924f4ef5e28b74a255376a76e5f35957126d8cdad27816a096850c4ce099300f138c6babfbeccaf0a43ac6e7155d7acc3d89eeb61fc03c20be520bf485cbb49a560a72af27b6b452769e6263368c5b1338451643761fbfe4ab2e1a75d4c44257f4ba0ee3ce897685635fcdd1ee26136165940ed9128a83f66372636779f6de67740e912b89006ee6b644d9544dabb0b454b72651928dc97caf1301d50479a22d6a17fac7e54d2e81efda3dee6dc7bc2a4bc1429868452fc4755f9e7f84e0ca3656dceee49bd6925434a7ff971418e2913467592690874f4d71e56f38e05122e43468d17becc77f42e358dd4252e0a35c46c90435c330013ea771c4d63db780b06ad4398ffe8d3766a7b22887c7a0722c062efc95f20eef6f17ba93beb7fd58f528fdfe7685569ee505afcdab5f66b5f4eade16f4c83c22875d16409e480b94d10a3ad3fdf8296433c1471b2fc95daf2ef72c4f4026d1e8af519e457093cca54d644f7fe21f7fc72120205f1d80ec9400b5e0688c409f0312e15d5463a2528a2439ee695ca67e398c36db2ecc07d8c1ad26af6abd4d00321c9b38f40c77f8bb1e00125fb36b56ea63667f85b7e317a6d33bb095c44792aa80df783eea51dcac92143af51ccb6c48f4e2b68009a72d5f87b9b8602ec7d1768ea58f8c5f475e9cf596b94deca336c92cc368b5ac79d6e8b362aa2c73872f548c67f976b74d7ee839f5a7ebcb943d84fbc6a7da46e76d4f280d33c477a25ec326f9c7a38804874d084da74b660f05189207008fb1f39f0a8b7476e80d6042170f3660de6f3c7b44d61875bbb146ad1aef60de9c942868231da6f851778397be27ec6a0c8b7f3a627060dfc7b8c596f2738f2466a504a04cbdc3bc3d42f3a64e6e458bae30edcda8c94524e6edbf68e773642cfc7f38adea5777c46f112f46250ce9d55b844889eb9bd6220b8598291362944b378783632b3666fe0425e9ad8e2179757792d8ba8fc77a74985459408c099ea57161651d9a14b15cacacc26b4926d718fbbc890c0294e9ab0bbebd82d1a7ecd9d202fcb941d20ad969f9ea45e73da962f60f952bc002e5a312597b34b2f5377a9e95f3440fc798f62c629fc01cc964b8bb3dd51181fee8c2606470658af53fdaa27afccab6df063763847ab2f4dc02a85e630cb390ef8bf7edeb80af78a9e35fed358faa3a34fdf7a8064982693f969020f0685b0d54095e4da6612fc4b0ec9ca9e58ef014c9f1f0ebc04791696f6f1a397047f9cbee061d8ef327974ebb50968e320b4c8cfd5b503511d9122ef8658fc14fe92917208bd9c5a697ea902898203b70677385ee4b389b98fd4cf4fa92d49e4e6b7b8eeee7bdc2307d058a4d7d67d7c165bcf08b370d8bd2f76a58f2afefeda8e5c3704f93129660cc43a85ed60cb0718de2edd77171a0da4b1fe6d2cc92ed72a216a3696c51f2b6b6bf49bc3eb13cf6b11bf447e47802d26b4777d783087a14b5e3bbe7304fd0926a05ed32103a0d67dfb6ddb446035701e270863f4c58640bdea0c71db9f5959eea157071f708120e773adaf6e24238a9a299dfd907d412d63def0fe0d6e2950ded3b213bfceda7a411b43a3fc25f8390f341eb124f1ed7635b4542092dca3f98b6b37856f8e99315aadff2786bf7608cb536cdfa43cb423e30263104ef203b9f8643dea0ea112a0d5c0430bef57aa32a2d2cbd42abcc720f7d5e7e5cd3c2668afae75b3f41b3196ef87460c34316ff2566a0a33ba6fc45f897e2751cf736a73e2721925944a9aba3701a1d8c7b0f554940f3ee65d01f9441fb3445265698af6417b0c77b1ed59a249db06e8b4dc954a9c8f4629d2461725ced2c18afd15a9b28e4ac1a024032243d9351165d9b926b71e243ce97f4085e8014f6f21106b52e70ef6dc7943c3107143d2d1e937fa91f3b4cfe9d535d74b0365bd6dc014b9c7e1b35f20021593e8db87276852f7da27824f705574ff05137fdaa9ecb87994518bf9554840a7030d88a9b49a9a70dd840adb8fe416c11b14cd5575f2711809cb2817edddaa61aa8e66c041d6b1c46c95bc2a924ecbf1d9e27c55035548e48fbd7f76686c84acf21e20ef4f33412b38825f9b3ee29341ea1439e9b419011d3e9555ce9373d191d917eb7200987ea273e03db2546ebd387243fd6acbdce96c268b6d0809d7fede9532c9244888d42f5ce96141842519e4276416317d3ea3f9a058daa7669cb06cc214e59d07706795d2d2871d51ad9ee832eb27bf119b056c30888529216ff250c05e135efc2c303163fa09596054e71268c0b9ef16a31c57335022d15573bb56d6d3d5f18ace28cbb856e0cb55313abb17661b34f83df798ca12c94f3282a2ebde76526b58961612f0305bca60e3c14791f483d7d39da47efcd70fba2cd7ba141349b7af1cff7d654f4002b13758ab9cda85d2d61ccf9b82a3112d313023d73700b6cf0641b821e4835a4f9512e32592ee44d7409d88703991c103cde68547c0202878630b15979ff2f9e43861a61f14290fccd0a02416ffea3302e4212525f5a4b45a5b67588d3f4a320d08499a70ea435907e93cb9ceab16f650d17ba2e90999bc1f137c957d16dfc7be6bf36c7f49bf95395b810e2ce70a15e8dd0ae13a6956e2e9d41ae03e918541186bad2fe7badb79d068f7aa55ed5822f30e0b22bb04936419f03dbd5fcdfc4e6d871f0ca49b6badf579b134ec659ffd85bbb9fc6410f71ce3961cb666af82d4c0ce07bb035845f2bb0b795eaa1cac2cb4fafdeb4c0b39e8205cae31849404211c3dbd7339e969bda1b73762c9260c0de79d95009f98209d941eb2b337547a4c51e6e787043f3e28b40df280d49da36b9ca1be1028d91511711e5382424c4790eb6bb86e34b74eacc7ceb2f28b14f3dc1d8f4ab886be58702e70c26b90bdcef192665d4cdfc3bc6f2665b6ad40f51e6c4cf7f233bc1f7fa74f540363341b64b19fa58dc24b6dbe5e0ac702d5b13edce2783b471abf692f71761260614056d8e2e13b3603a7170c11a034e6ea6a4289df832f9bfdeb9c9d49d7823c9b27b9a6fc1dee3996c226d839ce242af2cad47806a9f21d054155eaa0fba99e3b73f4545d2e89778dd23894e83d986971f102b9e31f8171e5a455ff69fd33fda9e0e91699d385e1aa60e58bcc72576fa197ae5077f6fc85504f8dde729d3cb4472b0d8bec63613ffae4b45f1a69c4ccd95720c3634b6a4c5aaf42dcce6a314ae1db19906f565bfd44f25fadb5476c19003357cbc69e61d60e23958ebe97255183cffc3402daafc5f33db67673f22bd2df5a2414dccee579353b56ddf0242ff916db9eb088177022f9be3b2b4af07ba347c10e059a21aa81f1c4f61bcc64514c285ea554a56ed104734ff70a81d3794f3ebfac3a0c516775b3ba137b14f108b3321f5a0faec1de5a7d5aba57d7b602bc2ef73e98a22f5f0d76a28e62cabe61b08cfd51fc9ab26c7f8436b0f990ee311fcad965bf1235443f8418a400f777bdc7163be6c0c1387c7cf8fbfc675c237dc893d12ca7c33ae0b03e6e7499754a26606e4bfcc3af2ef63c32a458032faa63df47a34a69390db5c12b6ea6dcd15a40b209acb00ec018879ba5bd0881952bdc6e1cbe852fcf58bd3aaa481e8f7a9948f16ecbd7bb48bbf2c9e090b14e6003e777ec020046943d2305e294ac2e04fe557a34c5fe46bcdb83bb79b3daa722bb5f3dc36fad23cd3cbe53b81ed6d6270a38eb5e2b26b728e9b169f18bf02a3ab252737078754e287be371da19a1b1b4de7a3f27763595a211fe005ac0a9bf2130dd611e785b2705caf3fe417e10d1636523f12a1c409958ff04888874d73023cd898091d9bb1c7f39d6fc926c79bfbdcccf91cc116838c32da94fdce392fefae203d15c7bb95527918e3cfb4e8a007c3a225907a40d8e85ad179dbf272f00f8afcc564a79adad1d580538342622ad30e7e9b75e9c1969aa8f45a32c009d32c2820c9960e2f551709e9dbc5e5f1044c05834537e3a51644149beab95aeafd7a556bf7d7e60f37c3febfec9de713f6c9086fcdaed16ec6a8278fe07d24c783ea2dec1099aa5886bc22a6458ab8b4a221b7bf3e6c32ed0e8ac5ce2d339d01e15f37746c36a04c971c6947dff8dc5030d1fd1a9c7d969ed579709b60b759a750ad84e5203e1caffa6902f329d01c03eb1da0ffd5f396a50b1df6595cf0cdfd2634e5f66d8650e3a3b526f642a154a7a4e531169cda72033bd9d3ee13640759ecbf9cad1c198e7171c9e4cec8f5a085eab08f20d6c29cbb70a8349bbce6e09cad77aa3a9cabd08bb49bbad4310ca6fec89b1af44525906e36860c31b2dc93f2f71a521f411517c4d7a01321643f3a1c72b12db130d1adafaa61e94e7c46c639b10fde49ba51c68063c596ffe05c58e03f58daf2957f824092ba79f6eb1d83e8f2bd388203f15a66a448e44f4b1b709e0d3b694e9f03d16ee9aa7cac9eedd093d49cba82768982ac78c0705cd7857793705b10b860a06e0a05d17d8986646fea72182dd184bbb335aeaae01bb29fdef5ee8ad7fe9e94a7cc4e98b271028289dcbfb6a1be28390d349fcb8b40aca1bc193f58b2f5bfc814189ae9f3eb53bc7c49baacd1e28f25dd83ec843c3527bf650b13921c4ea6f28bf8d510df6fe61da83b72037eede9df71a3bcbf073752ef49aec330883b3902fc3aea1fe818d0ab9dff1924ab45879fac17f855ea4a956570007f60030e514917fcae645e58f9f112ddb3fe15a2dadbdd458630faf0ef0e31c3c373eab364687c2f66ec7f231fb91a868ce0384484809b07b2df9b07d9a44bcaed763d6a46da5f9fb3480ab7228d97a346c2018ca7317f778a839d1ee1ee74152edbc842b1172217d6597d7e84c57d66b2b7381542baa8e7775aaaf2fa55e03917670d2b3aafa1cfbedfa47f174cb2e35646493df2077b98ebfc0c59a92511d1aa3c7ec3e055a111b19e302e63fe1f7f8d392376d206f01dc01783eda3d17c61410ecef84673b900c7f95a1ae1ac3cd736fd0a8cc8b16b60afafe439e5763f437e64876b105249664bb00c3b6e328e109b7c4dc5dac9e6d3581350fd70a43daca1ee85e6767a893afe4f336103aefaed77f78e70132c01889702bea53251951b25d37029ea4c9cb6491415a7a8ebaf79ffc426368baf7a35f4659afbf0fa6ef71260d469ebff9621b5ef1f3ae00f5196a823d11979f01aa386ef8ab24feb73e2bf12c2644b06a67a413422ecc35d765e6ed2d33b141287d780173f4f78218eead0d72e9fc5944249ea4eb299e1f6a4fd88a2d4ef641073dd70d4fe59886680f07ffbf18da77ad27d8ebc5d614626afc626ab79cc6d49a12ada50bf2608d891bb7bea8fe964f78a826e50bc6ba722a67aea971fe68663fb8b571655e2f253703900b50526b00be3e24844353fba9b7290ef4ffc37fb512a02da9a8218f77b18c1b1c61bd0c52719396fcf43c62b1d01f5d64e4acf1ee71299f460cd4942d2ff32208ce54d7c56323cd6148e6d371da9cc59a06403b7daefee7e41388bd951ddb328c3e27ad37f458774653fd6149960671405e99ab8ec4a9d3fafe7dbb9059e2e0ac83a4bef03661a12fa5afb6c077bb0eca2e962e5a4895b8bb27b73c358abfe461c6b4e438c3a13efe13751e1272f64cc0554a42a6a486c7a4e0f040e8531cff15d0eed692d91c5714dc179e94509193ca4a7980dc8dfa3716d0cd1ff0b9e5ff3097fdb595fe9cd4cbcc171aefb522e416b9ea82f9221f77a8722de6bc69aa5636f37756b22e0158be56f31d4d4e54c4e138a23e736b3c9e494fe5a3797e8b721ddbba6dcf89c14d14d75a453f55a558f19fd9484a5381bc3838838793217ef24a7a877781bb9e9decfcab09c5c3a37931523b0c6e39290eaec1772e429583cec396d447499ccf8c9f716d9478b2f3ca655780795d1b9740ed87ccd339fb571dd9717b288f2263e799b43452785b5fe9beaa94b0a3e6d111486d0120557be0aeea7465263df5cbaa37fa3f04beae5eda830a4ee398858cd86936ac4c10f9683a67e7d57aa639152d84a190c2b3e9395bf62664f021ab389584bc62a6cac899b9228f923c515c7e99d32829dd50a5be7c42adc97431f21515fe70a4818922b4e9ba282fe685482431b6865f91448f21395f57f0c94f9f7c382870fa904ec316568cbecd85476c4f59ea07250fa67f1e31c253d2d5763351b9a46e82ac2bfdd8295c2527db16dea32411e7c95e94df66a86881fa2880060495f3b040fe3f31fab49a0bbb5e26727e34e5b7e43734d8040ab917a7b4218cbdc37c6c835811f08baa0bc9632783eef532a061a5a213b59a19389b4d0335c35745703f1b7e3dc2319ee056406788ccb1e1a863074c85159b545e11fdeda399d7cbe3e980a760ddc8bc96a075186b9445de84ac4604c3eb2e863e91866023cab8489e7383476c68034299797fb2e166095a469dcd3f227046892dd029a123beae06bbbc9b2a300607f5ef724b1c889a262c4012cf9626dd2e6aed094bd37c054125e026258c9d37e4266957d89e7d724b54b9d86c7d5612611cd31f1dfaa220c50bc6dcd7924850ee3693b28220fe7973c512314cc44ace3db8edeb46ae559f6df605473758dcad58dd2bca3f8933f6245522f26f713d017e0e06d4c56f102660900893d940d2a96ac7cf67d80433ca2d098f79da1a9725ea0f4986c427a586b1b1c3bc61e7577f0899a97cfb57446ad23d4c38eff07721b6f9a4f96db643f37fedae8401a0235f688cb22d99c1e98b0820c3446b317fc846dad600758c68c3c0a8d987c3aec0f2c5b2bb44909418bc213c6c465c94b33b08de818c5b5c19e5591f509dfabe77a0d71bf8e3047b5390ac7eb00c1e5e1a4bd5513624c4fdb5c1adc0ca388a21a7d1cc12adbe14fe35828954eac25da73dcc4135e1890b108314f4d4604c03ab0f32ffa1a2a412207d8df0ff1df4df36fb4ae27ba04769cb7a522a4f2084ed200240182869f7eac9eccef433471cb4e699d77b8a0646bc10c51fba8819742ccbb3ff038dedf0427e55c88282cff7e700bab59b6821b18e81fa1fa526920fcebe1b7b4bc0484b8ef30648e57393fbf12084b1ae562f86761d17f3660d19665b2c2ba5bf5581d2015d04af865f7b66415ce105611cdf5fea2b4966e98155acbbaee8419694c1f2feb8a008829440e788a45e97e4d65ac0b6ca70579a9f0c49216868ec375f459df24fae53c6f68de420f4e77044e6986c5271f16380b3f9d8d4a8a531c605f668f7e437516143914b716c5654bec4ac78155484e99750ef14d86976396d8a03735b362534d3a389b9f4f5ed4abf5c34dd79dbb9689db58b3cb8bfdb383759d067738ebf208a5d4516ff583264ea71dd7722c0d5cb6fa077d9e2c2559bdf897323c3a79ceccafcf1e42f92e7bfb1793f038aa1e29adf3d7bacc9513d00f96285f4caeba5a0d306d02fffa90828e4e3c593292519db2129220ed6bd2a625081a1924848f1a8ac752162e43cb411e69059d75023d67c9fbad67748d1b6ea3ec5bd4195450bf77e55d7922f3d3cbc8b3e0587cf4ddd1c9ad47cb7c4d9e53ad3fbfddf9afc70d5e05a6a13d1f6fb83ab171e7e926af95dc356e485b935f3d2dd931bf2c4b8f54f4207b3c229622deaa74dd3c52e2e7c852a3e9d6f156fb7aba2f18500bbe912f663215e8d6df140733c2793f181659d320532ba0120a4eecf1b09543629d0183217388ce87542a7e999d1caccfd5093b5b919339bbc183696297c0d421abc69f941b8107e1956e2b842d7219592f80060b48e440ea0573f1218ad5d7628bf7f559277ddeb172df33fb5afb93f1e7225b1f1acc0e8b373dc171bf899014023453f73d0bd724d8d9b5cab0825258b78a7b13f83a92acbdf733fb68e4962300a4cdf37c4706c7206c3eebaa01f19aff01797e1df7d81c1c98811632481b5c2331cc679d2653dd58e393231d83c9a932ad72c0c689bb4dc0918e833dd89e6da66c180e3eb771b58a03577054ac104cbf7f956027c2c2bb46208ef4af56f8585fa06acf3e954e69aacc40846de2410733c05dd970dcfbb9e5e9d8e303c188b978462a6819cdc3c8c45579b12f87529c2d9828c158fd5ec3c2b5f5a5adfc2fcc0276412e853e9c530870bb9a8033ace9d839425677086d91ce71de57b88a35d8e43024f73ed407012b39ac3c3f741f0e5432e39caf315b5564383a1fb2d8003ba26fb8d55c7fc6664c235fa39538568c83e3c820c400a385dffd0e69a995bb998fc27e1cc7998836467c8861ff5d81141ee23ed02ad0eeeafb65b7187588ccf6191edbe27432c702a30e800b1ca4c9554e5d605ff070c396b57eefe2bf07a5ebc22b05ff39dc6c0f0d7b0ef8c36acf329e076405863a8439fe264cce5ea6de0f41482dfbf9791156df5209d1efadcb1469cc9383dfc4898dfced287f8a413351532b7c5fcfc836f7c04a83d70999949364c0c3e82b582287d80b9427443da02c568f95f7355a295d5270de0a02f15c3dfda173768a64c745f84dede6217e08121aff560e5d045d464ccdde00ae430fdb89c0d04fb63cbacf065a3dabb807e648ef6f1ccb2d17ca925ad6a39b4fff6b9892f4522a415d118f2479d226557f52dcea551a725b3122d15f216d545f0df9dda61820dbf2779540fb4ed5c939d8cf2c4dd427bceb21149a0dd62cba295c1db56d9d4463aa82121d4fc52e5207a0304c5d908db23b640da8d3328bc27409393f9aa0a37e5d90f085eff610dfb541cf6a116a5f25199cb412e374aac3217dad8f1f7fefaee96377b3535e2b3ba998104ea182277488f1f2c8aad6f53388433febc8e1e734d136118033ee42247e81cdf8e1f4fcc5c6a89a621facb784862c7b6f382726eae2d75017a56ad18f7e202ce18ce796e2fc451e1473a7a84df75c84d452fc0aef80368de03e9b902aec3f5525c987f7d07e535431063570c89bdf93fc20e0661ae71ebe9d39530d348a4393f19f0a4a5c08c6ff1a1f14d9e7705bc802a5396ef5f70fb7b47a06c16c2e07c4238f002b3c322f95af857e661c165193f845551bdcfdd583b2019040d879e468af3c5092399c3c0b56132e6db17c4e46d0a828771e03a95b47fdb537967084ebd9708b939bd3163cea5d82e57a6356c952c3c297189f3ec776d2713920a9adfb5115d1a27a0e76f5c57928c0ecb01ba332ffa897b324114fef613c4658edcf623edcd9c57e97f78630473d80d89e840cf26f83a3c4a5bf5160489c6384ec0657de3c0a86a16a683f72fa2d2abd1b77829444203abf6191b7c0ee91e859385842be1f506329e3206f3ea282c058c3252f0963f419ce9e4c3abbdbc5c45de27db781274b33b8b17471d4e6b4f4ddb79c39524d0a59cad1dceb86d9c5d2a8391dfc8382ef90234edfbde54d14d275e99e2e10004a7e4d71e081265e0dd818bbe2fab10c502042ab1629b87db9b51dafb8d591051943e609c65e334893bdb630df5881c9c0384a3afef8cbefa10ea0d4b72cec8d0aa5418659d0f79bb910db57ae1e92745792b1a16c458f31457f2f1251c2fc2f4595b1836e443b109a763d1cf086106a59fcec2a3b39f013c0fbbf07a93e99e7d7a0c2b56f5bf34e7a176bbc648fb331b5dd5da731089d3eeeafdcda2b1e1f11ef286082d467bfca7da77f16528584876b0cadd96b8dce8bbcc3e7ba6715b147ad4d158c23287afa1df1a5d5b70bb04e6337fd560f0667a3a36c4d53eaa0ecadf27ea2f5e3ddcaed7e784195e6739b303a1dfaa2fa6ff4b369a371c63b3d2ef869299ae1dff8460ed8865ac90f95a5a98ca1400f26160a3699b36a8560f5adfef7be9eeee6218fada8c1a88b32ac72989df91135653c31e06d95853deb9eb839bfa92dfc3a5d4e69bd2902c284e91969f303a8826d1634abb8defd1740a15015f3c64d5fcb4edc00ac04cd317c2081baf246adb7e9a29e2b98b27b6e44a783ed2d61a02a6121a46df020e520d92a55a174f2f223ddbae6398adb69a56d2fd58db3abe5666f8471abe6a010b03ccadf69e01f6634cbad7cf0e17caef8ef19632ae4f6f81f21770133dc9cd5eddc87e3c43f8f2664f6fd33c69ff39af80158932e2125a5bd8acd029ee3de3eae8fd135fc7acb9b4a181c5ebb1095ffe003c004ee2d19aa1596fcebc4287eb5fb7de8ac4455bc015d7fd1de43623f367915f44e708a9b5931dfea53cc3fd668befc825818177ddfc27a11cd3542dfbfd20491bf2e824ce314cfc17af042e1b3d60ebda118c2af65240c4a92f4bf41c232aabe6f1cd444bdda06538aea551eb4d9958a86195dccca3f193e7f43e980bed05ad080f4fe030eda5fe8b4ad7487720ced1f7006c51a884a262cf10b1781321ea33ec813e7e449411cd9824ac22939f394887c87bb20c29d9113a3a81e6a6712a7328f6bcecfa0a2db47d806222b8511f77321b34ef082a11a0fd6484479e3d411228890304f6c17f54bf2087f322586f535eea23d55ba1f22ce6d7f3cf2fe9607ceb2334b0b38e77c2413cc8485a36c153852c305addc8329b56169b05c8cc99299e169ec1894fa28e80c744d5c3959620f62e16da7c3f40a3e1ddb5a9345eddff3596ac6f01350d1281199932fada201989fa9bc2135aac1c3f1cc5989c61964d4a3bf8ac00bb3f60aa37cfb6ea731064ea5a93c3c0dfe9cfbc1dd8008ac9326b47c36cf2ed153b6a584b47414bc422db14467e818cade05b1ccc5dc73e631fef054750c0c5c5cd7760dc957cb6cc3718a92b51afa163fa0da4968d42f3677c91cc3ec9ac72bbb8ce4d3a05e538145e8e9fa9989266f0ee863ff0c34785d6bf9972ed436a4ddad49f31b5fd1ae011a3af8dc60d00b37644755969a51e556166d40fd3ebf1071628608852b21783e23d50e61f9e5e1e65b1e0ec65478e9bca0bbdcf7ce84532aa78623c17e26a7f42d3de01c80b68d3797bb21d0ea3f6304ff9fcd56433c41a2e725d729c80dfe3176df7a644e1004d17cb40631bc1459cb26bb74bfaf4ddf09d13b7e6f8fb786d939b02c31f800aff98e3c81b7c5c083c02f2dfe714869487e3054c409bc3a04c13a17ea037752ec1b68351ba9f7c94b61decdd45d84040ea4e8426b401aa4a5e7fb4694c820e97be52fe2dd56ef8ad934a7adb6fa2c68bbcd4646938c1013dc1da800f0fc7a4c96dc4b09b28f80b7c501c39b6ede8b61b346e1f8c79bacc8721723f918cfd252301c1b5645ef62da741c8f4899a5004e2d0f492530faa12f5fde70a803f3d9b3b582fc291613e8e478a10f352d28db174362b91f366d55d779239f9f96d0a146fef71a0d284dc3ac6437c7227221e481bc3108f564c0c35b28c05488f1fba5d5e597d15d02d96c778cc9cc91067f86f2cfef024257cf7f9de03ce01f73618377b3901ac4e216ea738be65fed375e8e95ab146f75c9b5063ba72011b7c83c313f4d682d8779ab25ce3bee8bd84bebd53c068e21c3def9a32c124366b9a82313ad576db46b7367a99a31c24350c77bafcc4bb30cc548be37aa763e55ff301d80329a96823bbf187d48a1714457a076602ac8ed4adc6e742d0f3fc578403ab8d30512c9b0e226ec7806b98ccabf8cc2788ee0d57403126be6205609fe39ebcf90fa110559a81cb5b0df16e95e50f1fced2446493bee588c950f9d918d37df458dfdd2bf4acdf69146d68d69b4e9d1603d3233e8bc7aec95515e8a65d20931e15a9fcac5b7f00c84670ad631022152dac9e6652e4dfa4e47d5067a0792d1b24fbc37f79352d3e4087e7ad7dc29db8c6ccccdbeec2f528215747aca042a96cd12c619bd7b46e90ec49bc87e47cd7751b68a10dced5be3a4b86e6f5636cda23688ece16ce4572e71bc2ffdbe1b72df193b6c9cd59fbd4f4fbad0f8925e9ea4f70b44dd21bfde40214d3d7281d21adb929acd4ab0196b47d32b8c4805525cdda197082eb890746cf616fe9b4ad5a4e15b27b8981452ca6062729c9d39c3ff716fe1165b693e85a1b837bcfe462d9e2feb9158e97a980426f322e26c05fcc581bddd7ad0987de4ea41136c9b0f6cf15c7421c32ea2303f23812c95e58c8af613a8a41c4436f2d5cfb6f148e3040b9b9f20317793ce8fb3f6191414047d399c1ad7a6d3d380422b3fedeae0126212680569dd6c4d6a769e0828272568dc968e7013c39307da04a6f174a6f8ba90078d054bb0f359cbda974af02b5122741c8a4404363bfb23f676e95345bd57f58374d3098deef872f5507ca9c6b29267c781f5a08cb5a4896fd8d9cf2514143a545dc7353a327262696a3402ed92f30b99f8e489eb2af98d7d4f2dbbb514329cdc611a95f0175ae01b93ae1b6b233a21edea3eebbd1c6ef59cdd6a4ea5fe1745cbc37a2ae55a2047c75f84b6fbfd5869b5fb2bd7f4e3df74878d2f281fcde8c7a2a15ff8544df2801c4993d60acca7600b74848c0e0b977b48afa18dd601bbb7d8bbd504b76eb3aeae6c8388b57061c2a12d3dba863722ca3c91604c0deacd35cc33ad6b7f0806fcb941a288aeb45f33ed3c7c8b74f40dd0964634f84136746e0cc57ec76c675feb3aeddccd471a160afe61d4503501f1ab91e7805f9fa8c77f911590bed29c7d2b5907d7f941a8edefee4c085ea18db72c3685a962ae9212e2aaa8188d385a61daaea04a085ab268ee54c82eaa135c1d44b39861d1f2197f8a579ff43f66dd191a1f5ff7d50e6f1454dfda89f8d19dfb8407669d2a351772eb983eea04fcf995b4b3434253d1df7fdb0653db58f2eee14c0733f8d116b98663395a839377872cd007ea85a3fab98a145658081b100c166d1627d6ae44998183aad40baf9656f479225597e94df14068c9040cfcafeedb3bfa3a2196bda80ad255d5288c7908a194652c64c17151d5e59c18032b722456996ae00cc2f91dc64422385720003b90736e3b18386240ffbc74631904442e89b92975e6eda362cb4364d790aa3ade3fe8dbc4e5e953ec7f9712cd1a0a98bb331a38cc831f1b8c1014d9003f04a37e8e9cb5d03bf868348b81baca9c677a13aad2871841c3bbf1eaba206a24ba617362af304b2dba563e2e4c3aa8723294748ae1a18eaa378c4202aef4342e4d7368a0003342e8e4ed655656aa2abd6c7b4bb1f8b47d53d97c6fca1da87e121408442d836c4fe6f30b75737db99b60eb5a51b8ff0fc895cc6da836760c267509a23471983c8c0cd035740d9cfba26139239238b35c638ee1d5626fc3c8409c59ebe0dffcf714df26e3b852467a24f38488339672c83f59c4e777e0776bbfdb6bcddd250f8333bef1fa86b78afc73d3d94ac7bacc416ee7d8742f1967be2525cad92b7e7551a0b5b9633d92a48915a3bf4fc7c2266495c7607b998fe4c8bef46a554240ed013ba06108011964a322285d7cd21d313dea53edbf65a4ba280ed207eb9a156ad269960227c71b90c2134c96dc3c044e3bc8e6fba70dc89724bc8799e472e6c1cbc2193c2b96158af50136a254ef0329036e2c2d657e6b6ebc3cb4b5527968ccb34f2464ff20cd06ca10a338a0cd140783f7bd7f3d1c66d194619f23884f5d3b2e39be85b70c5ff9ccfafccf4066051d96774fe1868bf533caa40b7320e70f24451365e0607b25af649f05dd25935f8f479938811d8170f56968bad3e6b7c5c58996b35529ccc93182c153086a303930c0e65959df2a18ac548beaaaf888f8b6877ccd79ad3de9731249b04da4eaf29d77cf37bfcb382623152f10053199436d91d9ac2d6516ddb453e6455ef0204bc45bf9621e140dfa12aee0b7b54dc4b69719160c3e8a5e268179dfa431d69fbc9f4c74eb6b0e4063cba8e80bb36dacbd1832993800fca00aa6be0d767b76538063d4d86a4dab963020d7982c29409e39cf7b32f9a54749d1b36186a7c5e8cfb3c6c198322b27ccbb102863e1ca158327298e756b9119bf3dfa1fef360348ad0a9ac71f83d43c05848ba7897c2bdd6f9a6b8fc980ad9f20f9dce2f732ac4b3e996c677b951baa62655ad5cde958fd8f2d1114fc264920715460e73889890a3d912f1718fe068458bb51823646f07f97e4962438f663483cdf514a3c61a15cf6a879d181ce9a16381f34d1041043d88c4a1234db5a0920552eafa66b4effe4647f089f40a682a0a9441497828268be96a1c657225bda063925180c93f51f6a521451c0c0f8b2c54254dde22cea4bd43c50a5b3fe83018b03f6155b38a50f602103876da07f46a0a27feac8bf4447796034046fe6859eb431e0ed0d1210a5d49ef714c117e097fe494857087cde49997612ccbeb74a89308e18390a0b6081d4ec532331da647e16c05bbeb164d7007ac6d6d51dca21883efe6a3a7b976e47df2becc05ebcab7501b2ee35b5acc70f501a65832dd58017c9468c304a2abf0ed9f27d431afd8aeb9fee39a6517e52da4d5ab8602ee3f7ce490f3978e2e3820b9b35e2593fe79b2ed6e89849fdb40aed8924ecfa197a8468da1086a84ffe7058b4fed267467952ea9539c1e94f061f977f6b976a84c984a07071ecb88b6b3c88e875c2f9da850fb69278e31992caa47e397d1f8f91e2fbdc822c2aa3b589edac049b6b65ad73f956d953fe976c3858a0bb70e72f0af246593ad764b7a32c2f0dba0555fffeffbfa43025af3c3db0c6ce5bb6a7008d5a039462788bd51c84df7a63978fc9dbd8d354a8559e2d629b376aa44b37477a3518f0434049a97ddb6ce36d43f1dc06fe6789588a0ba9ac79fd628eb263d4af5468de87e94f3908d643b92c8c4a7425cc16552cc6d180308c2eeb1fc0d6772e333746bfb61bc182d6c03d9cebff8a677a1bf01f9e23e61d83c0f4a7f7d78fd23d958728629bb11194780393cf6ec85aae7ba9b101099c49649d1c9bfb0993f0147f1394a078397b2b784d907c60fbb31ae88bfb98ab7534a8f04e3b422822038f19abaf8934c6d2cfc568d53a14f18012ec41f0ed4e3a6b520879778f7d336b0c5663e6059e05a76aa5cf144eb1f914a1bff9a90a2645c79c70b39eae9c2e2ac5955ce8a35eb1cad4b336e6d7207403e441b8cb1fae538034d201dc2493850cad0c7a2546f5a2023de0bf481756032b1f90cc07fbf1bb60170c2c1b05ac23d453bb02288f48d70ff8777b8407bef927ae3eeb7ad1dabd15033507f0aba320f9ff5adeeaf1f8a41c26be37e8e2447fa7ec555d264487f3b4f562cd1f884d20151f8190ee7d7ae3a46057324a4d34f4aac3e3445adc028c4f7f477629e81fccd2abeaaecfb0f3d153e5ce22632191942fc10e07a248828781fa6e7f752e6e32bae996460cb353551c90b2ac22699813cc38f9c5820f68c4488cc8b509682bf3f1d4753c016abd6c093c39c21ca2a0a2d9853254c2588ff101f65e87b01700b86add4e8e0aa405d8b5d42b355bb62241641e0dd10a1951f8920e5c40bd2822a912390c830e781342a24710db5f2cebfc62443e7ac4bff219720ff926dedf0b1e270f696c994b0c3d670c9cd13bce174689b430ced0ece043efcc09cc73002ff005488388d780a2f1a94264ecd0bb7776204ee1da100fe87877b5c953fae6305fb33054610dc7aaf9b1734336dbc9741143cf2777a0e3ef870ed31e9f636efca25c2d589e10da4dad40b4e6615c2f3c1ec661638cdcdd82b4f23ec5116cd0f99411371d3293c9d8497afaeabcdd05bf847786798f6f53393cfafde6348cb6ba1c45779b44d83b5c7456c03533adb7ca6fb359a593c9e1eb40c8da173f4a9fd98d0938b4a7cc34e74704c905914ddc4b523a9ff7baefb7cf399f7d37b90a2596953b46ab596393582d456dbcc50e6c3efc7840b68fc81e35c96901e55a2f7339231538fe98b06650d6a4bb03e343b8fe0b14125719c9573d98bfcf91fa3a39acf27700d85168c6eb780177d9e57611857fc535770b66536b18c2f86baea7c41840cf22812bdf0d86582b8122d38a508faec6871b80adac9052e643144f30987e5254b4bc7b86ab8039c0221942e211568eb08c466a6badcd172a2a94c4543caa904e4a87b931f81912c42ab09f4df0107d7f5dfd7f282f0d133081f14a688e49813b6908df3ac070eb54e8128e72d59147452bbb3ff36b902ba5dc74879e464ee668aa92bbe77208368997d2ff70af9ed4325961d70c23f9093d2d07dcc848aad7a83dacbe4ebe92668619cd4b5e1df21a51b75536b32a4d9ae84bc95f9ebcebb185c200b9e95b2dbfaffa537706e75f1105ec139becf81b1d7d5805bfc3b4bcf084e5f19d49d13cb05e23edbb0c2646174cc909d9a03b8f4dcb946dac47117ef70fbddc3c3620026421322e032d1f93960f3e1b25639580dbe127eb025d8250de8b9347ecc13fff3f7cfc6cf370f9f48d1d9bd94dd8aa15d7009cb225f311acd167f16f72cc786fcf73ea76e01f4920daf5642f1470d86f729b3d43eba0f061a7c3f1785588c0e8e0ba5b83dd97793be6147de2e05f0425945b2703ab6b43a567839f363af01be68ccb42749f17f927d9ddcaa30b3d5a35c1a4474b295dcc1d4aab1878c95afdbafdc038b3a5619e61ea42fe6213b5949444064efc6a4f6201ad0c5fc62d66deb4073270228988b8347e1f3f1caa040b723b6844699a8b34c926d5cbb713b154f692a1a1b2ac27d7178af674dfb992672bc0b3cad27b584ec763d9e867c6281a15ad21107104f7549e6840eff43b3b0cf6f45364fd03d1651f012a63bc188992366fe59ab3026a0e09a9c014d08f8292826a23fa46f28d19f08aa6a5ceda3503fbde29c758a4036de77c6bbf66b9494880a4dde68857a43218d8b72b318ef9e8f831426692eaced6ba7acc6c5961284e99f5d803a141b50a568ba5855856d55420c915e81387907e80f31d76b2e35f7349198710a1a3aa63cb24597682b9f66daf48d8d9ab0d82a9fec8f404861fc8a0b8b981ba08a9000cc77291168888a5103b13738805148bab336ab22c050c5e1d738c1feab43b44eec23e1429ce0765545be72dc07bcaf8028fa4ebaa0350c2c3d83eb76882037079b60fc77d1978dde39428780eb928a29bc1fdc484299c49e4265d86b08881d6b638469eebe6aedb46b9916eb458dcdbbd73880bcbcd5d737085f296bbafe8c517e0ba353a2f53785533b54cf26d291b11001f3afa130ecce2c964c1f349e172951f47a6c91822c403cca9ac5d48398be09b0edb6dcaf82aa5f869b49c59e48ea04a3a6b7cba529b4de78150ef1732d560e19ec2485ab1e49276cf768d29dc40523609181929c752041418edfaf0a106ec87aa9ee79591e9f5e28bd5df44bf9d1f82932cbef8c72d69d0b503821038cea2bf9eb8ad4425789bc85b29cc09f9799991f9632fa1be0a8c1603604c713b493208e2db1684f60f88e68e344fde0eec7c48eafc44eb81700fb754581cee7e588e5342ce8414c57bfa204723045da8b724cc01b6ba395f9557afd9bd012f3a9de92d0cb00e24483c01d40c3e5d8b0541673a8bceb1d57ee39c0e9aa3c433332b47fea330b77e22112bac5644be204fed910c080dd6e0e6210106fdd9ff3086feec7988d67149259bcc22492f094824c79ffa9e76b34ca6c5575ec6d67b0287091d83df0c777aa890abd44bd6008b6d0cb661d2be56d4477e50cd14847ebc5eb552f6df1e0f2a4192076fc8759cd007e1a5be84855820fe725e6aa7a33bd0bc9ffceaa52e31e2c12166a994df941171f168047fafa8624e8b529f87dd483980274fd12231597f83dd0c1b63cc117c6b051a5dd38d8f43afeb6aaed345e89935347afc840e3db73bc34a40ebb23638066350bc998bcec3dc9f04b077cce1a654ebdfa363e524e09e21aa45cec38231acf32fee267dba5828dabc509a4163e680361cd1be71f0fd4e8cf14ff6fb16f8edd09ac3bb2726f158a936df5846f2391e3c77b5927fe9fb82150c4d024fb614a0b4be9132dbd2d2a496c87e33b02f029903138084a1ce4a8db6a2464d870d887083b63dc766b10321a9d6dfc89ca78a4c5000c353883dfd6b99b4d8085243574db88b9a6db794b786db0ef662423ac5d0f650ac8c1c689aa98c651313c902b09dec9ac955be49349f8a33a21a39935d5c90d9ea8e469a094d86cb417914c4e39461b2c6de4dd40e8bb4bbe1aa178c8e8fd4009d68331e0cf657d5bd59da3c30740a1ce5c69c80a5330c0b89efd286b567c6083268b7dbecad16ba42ad983cc8598f28c4bc6566f46cf857cb2c25e90661994a1f9d598e5e0768705c6a5f7988e3594df305f595e94824f7b34b209b5b4ac3f445fd90ede8e8f3a7acc316d602378902bd905e0f19f020c5af61808de14ecee1d8c73e6e678bc3bc230a205a573292afa5125eb72d1de626b6e708578c6dcadb7eba8671105ac1238a0e0a2d2f287b2b496620fd9ed7d3e35938dbf61c17b5cfa9a6a3b0ee3e250c8ace6a253ef19f58f4e15664103430e92fcf8eb25ba8e34730e16d68b6c024b0f998503f7313f335b055f34fe3f82688770535526dee4ad333593361bfcd9c307a61744709b2cf3a38a8c3761516bd75df88d38b753c37e9438efd74a51feb11acfc9b38223f2098e617beafb23994f9d7baafe089b2fb03931c4b54abbd13b395214d10ba0af1b63b3c62ca1340fb3b9122514cfbcade73336b9eecb3ee0aa6f2cb61b8614d43028dc4314238c4ff6c12f867b9ffe2c228c37b261ca08768f3c25e5dbfabcf6cdc631a200224af58140a13cc842676933b848aea27bbee559cd51a11a356549256a81717af6929f335ba07be37de2964a8efee3d6a14bd469e15e403c63054b59eb89d93b04cd51105aebf07ab3188ddde276b9d221b52c5269174ef9c8d8b736a6221a363c4260c426689939cecec7e2089a0c90962721acf946a3cc641e58f703c6599214df53feb16afb8ad76707e054698920d871b1c5c27023c37333bdfe55aa111195b344723b7874e519ecae7fc414ad866ac270bb410e0ab1cee55514b994e60203f98b13d2ac251618c1b0f709426577ac8c1c486cec9711b7b6b7d80d3bd7427aafccc5d79257ce1315e5a085d27c344713c5589f0d2edbacf38a7bb3e8f9e6b7d7cd1439365c14a5756048224732ad6473a17f49160687336e7ef4a0e7660de193c0e5e3310aaf76cd8b67c59a24bfec81bfe5f3746792c4b3cd61c14354161e6ca1a9e2cb4b738dbefcc8c24f3292b82bc0d7be082344f95accf2720365201c06f022551627bbd8cf5078ff7ddee8b673922967bc79515ed1e8fbc30d3b5957ca598bf46ea44f9a2a2b70dd314d6b9bcc604c109d2672bf4b80bcf88e837b26e7ab7a0d16c12cde7ac9193373fd31442f9177b23b151e06855d193f6d4a6e73df17ce5263ef1acd8bf7e23022f88f8ca0f8e78e6aa942d6636611126a01e20586860bc35cbf7beb19d4d54e89356110d2737128f3211f8dcdaaba1b99c1ed071fbc9e458e2da78b463823c2472c155d085be3a76a10052d5f2848cbbfb3a06f5cd66bb5dc549ae65363c059b4be3a867a031310f7972b6519bd761ea23a4d7b35457c5d28f13fea4b3a2b9c1988a09ad2a62be2134b6cec0cafc653d528b90085da3fbc26c9b6c03f09d61825e4ead1acf97a795aaed36148d52fa183081715e225e7c9a4147836f721747fb829f7cd366aff6d893898d9f6152ce513cd841cefb1db305282f83107566805ecd5fb34c3add4133abebb9484475e4cf048059cc44c82d8ec6a01ea4fcf9c9eeb1dcfd7523f2af7757c481dbc60c4cce84b000c96155af6a8ba55675754f53599d66c7886f720dff30cc14cb0534154b0d4e67af96790dad63fd748f4ceeb1dd5d264eb0c8f07df9b46263b0836ef4e52bfaed339bcc5e7141f057398179edd20c6629e5eb7d8a3e773dbac4fc95d6da977cdc764e5cfea81ccc33f7d293bc618a129e3714bca28babe0860310b0fcb25a40c17bef8bfaf3b49f000cb0a6f2bf85917365ce80e0b0f38e6c3be32004b736d2a63631769a0807ec8fff07d1995157df1f42a5baab097007e4c5c473e2b64136eac0ba1664407f53262470fa3548f92fa7f8b54c5e508e13542a392e8534433959c27c4d2a4fcb8e92ea661e84297f336b278533bf8205f564bbfbaa53b9236727e83e492bd5f18e760eecf45148c224094d88a746342f06bb588b70b0a2620bfadbd4785728dddf3289bed17dde4588d6a50f14e2f974370d5728ad4c69ebff62e064c6b84a2996ea3359c8c263aab717e4a4322f24d5680b4d3e797fe3263fe2dd350133b0de297b1d72132b1c1f856f7b29807334aed518a55a92c02d3d809ba3abdc7d78ff7930335fd058f375996f4fc10bff7b84a23d3a3ccdb02c4b65b51932d4a1e3d8f8a97b9cac9560d42f1d18f4b4406c181ff29b7fdf6c9bc09b52717750a68cdde858f6079f84a5ae2bb2baa6812819fc5b6eee198e65acfc723dd2de3e81b6930ff34bd826b63784fd616b0fd6325ecdf1ef5852ad04c8ccc7d20f754f8e99a7632e625a4467d986f30ec4ac6ec2914c2b80a79358378c06eb3f8f128245b1a3ff3500a67ea107273ce07a39565567143ab3e7bcef3d684fce232f15140edf59d97460ebfff7f8ec8644731f59e0cf16ba620dc769c0700e33651f2502b3be787b2104d895df8a09eb85bccb21bcd8dd4091cc68eb0f91277edb70f94c875d6164fde19af4eac4b772a4fe55d331b6d6ea41b0519727da8f27dfce84b6d71e3e4012f1e7f686267a143c4c14847033ea92fcadf6efcc643315d72b92b8c4adf715b19edb55e3161f0671b29570424edfa0d3168a0f116a83b1cfc5a4ac7a260adbf4512008a6b099610524fb25b90a8549fe38d689243758a7bb96c4f209f082ee6862d2e9f1325058cec4e15a5ca30f2579da6d7523e45c6b0b0840991a7f9c58a27d9df84ab72a8a28288ade3318eb9f2fefea8cd7ca2d749ad4581a5d573393f9706b795e292b90993a22cf1f1444e598b570552e662da878dea19d254c2b2249c6da684b8eb20ea07e6fa1de63b9662568a57f8f07d25ca63bf3990371965ff3cb427adabff5d89641952dcfa6bf7ef17ae3ba6009bed3adb5c000cc85356d1e4fa7acd3219dacf7206f6065b5e56fff6a1067dd57a9cec6ff7d8a7c8b5f2b1c250f76fe91df40f77313d6a3e5bf6cf9d6b5bbe6efe5a699f6e947b7955f9913209e29b86cbebee90b09f33484c3321f3d9ba0bcef2140f8b9a09119acdad243861e91f6862a477bd6c044f8bb90cac08ab48c5e9bf697ce8c4c61856bb10052d17a2cba47a28a33ffe48c24a2fa654ab481d9f17ffd0654a5054a3c14a4d9dc9a2295f74b106233f1818c825002d45762d595fcbebb5cd736f7ee53f65c5615d442de9decabbd923b9d6f6b056dc087b80843872c4316515433c4e013b25ec31a32ddeb07f4136cbd95343014468a3979db71a82f4c896bfdec21a3e2e354f87b07e1b679995f0ddd08a4aefa368d0b1ccba3a2cb23c0ca8846691327dc293787c36882d58ff8253cfb47c24706af1707f84fd625f61355138d25eecd44d046a71ee1ce5b3d61705f115221f386e729c005e1ba0c8904af124d3f7b944b10ff81c99f6ee62aa4f5737b3abd35d9a84ed468b98804bcd269eef32a27384bd86473fc944eada927552fc176321bf28b4b4c2bb87be6241609ed01f69000c6f0a75aceae642c74b1eb564762f24ee2d16d4466374301a977adea3480e481b0dd1d0aff71f8bbc216a29881bce3ca7ecfbb2612c1347977edd87f76e36fd39358ba76d03abbd79afa9bf488a7892525fdc4e2c1a942d067d81f4d09195c9ea093429d29602a55f387e982674b71da714c214ac8aa7e1b22ea05e36edf9a80c5e01894f28df78507268756d0286b23d6e6f79b5b2ad5756195ac4a8834880bf147f65e1e84ff764712cbc4bd12e6499a606f19fe69a468babaaca6ddfa0a5d05cfef824137e732c5adb7f763936a19fd2e9053b23da5cc3104f8dd5fd2870cb5416c5847ec213bc0361ecd855304125dd243c6987aa1d8707080c38f8caea17750cbb6d88c7426d60c39da0a51c3c80174d24271f836bbc0e123d2e9877a5ebb149b9a66cf09d159dad013d9734edcd3f50e5518ef3ceb3b4ef913f090881385d9365b1c55fc84e6d79643eee9f9d35becad78f6205d4c35bc9bf230a151ff57dc707db7d33ac419d184ae948e50bb89448b2af2bd74ffa8e3efcfc7099067c832a1acc05a598d9931c96544c08e50342ee34a64dcc94302b5b2b4ca6df103f8172fcd7d47e29f8a3307175479349c9a8fc1f0a3f4041baa4fab5277143bf1c1792a80721bb0d74af38fc2f3f46e249df78c1532b6ad2f9ca200db6698192185e3dd5db80d2bcb30e59cee99fbf1cbd4dd0ef9fda173279409e773c335f8c158edf16fb1f9297f9fd9779e27f7e65ec6dba1e72d2c557be4ca5eed97b79df8451a6f6862a8fdbeb233e97efe5d5bce9d40e80e731c6bf5d2d7ce1cf4a32233c5ca31b16b8421aa61bfdf049bbd58db2ce1cc59abd0b6666acf2fecbd1cc4d294ea52f9290e1d94419287838bffa7a0891a3db670ca54ba2860ea3b9440a9b764165cab0b4c1b7398ff653250b0975fadf3e031ff70e03b650f43c90f75623c9aefad5a457f1c370c450594aaa6495160cb74ea84f451903d96cd787913af65af79f09f7ce6d64c480409c0a24a5a29ba423bed928c8fd514ba4e45e8d6c7a102e5b5ecd696c427df84155a39c1d88f0fa9cf9c5d7c3b0f2c245129352143ed3270dc86c1f5ba93188d101b4f14ef19c0578de27c8635c2a2a56070fb39e747b9a35634c92b2c30f502aaeebcd6cae855ed7bf27b1f143206fa30630eaac814b9c70a371d13098ff36fffc39e2a829a352ae3d86cec9b0ec931e66d66047fc4c5cc636b2b08ee71ca1eac306befd1f3a6a70445b2f8f4ec67ed32d92d5833a3b166dc033134ff5656c516c68de25bc5457749a0a1ed8ad4f5021d02bb6b0adf43f3dc12d952ee12f428cc6022e8c2e25507d869c5f8cd7c3f126cfb3b26e96eb44be0e0c5a00c29d7f00da14f6c480cdf8b6557cc9d3753d20e0b075dffb72ad2424c2f93374e29d44ea8dd0d56b633a4df1f98aa4e5e45900c5a06ec507c668b792cb49cebb29bd81ad5a1fd2403462fc4bd3478f5690a15d97bc87c1c9af8356045347cc10fd49b01d27389e9db7a5255faab0aba1464ac122ce400d6cfe39dc083605d221a93069a3b611b59c9648aa40da261e18d037572a161b6f9556ab2f419dfc258d8b2889614143daaa94f6b2cd635add669223a4cd633991e75f0293651bd15b9fb957b42747f07dc30d63218328a06283bb1c11c343a865ba223f54097a2188bca5ee43329ea4fc6556715b058b84eaf170aef04cb262b97bade08c322ada68c0be90408f95a31a12c76198c8f1cf275f642a1e76bb4cdffe58722c7ba572778c45be35de38a3e1e911915c1a499917a2c7a78b496300ab1783b8f6a569873aac85226ac97c8f16deee5c3f2f2c51f4bdac9a1b4ec7f23a490d627e1e524f9704fee0ec2ebba9d0ce04b678a03d0e7bccb22348d04a6e5b4ff3b94ed74e2f053e353f71cbfa037b3930fbd24351fce053489f63c29f0663f0db75a81dbe7d7bca452a2ca75706540a5795aba351d59da861e3712b6bc4091ad470adf546b7add79a507a25de573d0f1d268587ff0d599e6b46f5126f7e005aa5c172856e93f23cc0e3fd2f12c0b683ea994ce6dc7ecb29076600ceaad771b15e3bf9f56baed6a0f8d69679dcf24d7dd8d71c3a482a4fdefbf1f83740584492d57b36b4e55e6765bf44dcfcd0f773248b5cd81f7a93251caae9b174f24174ff0b7586be1f5d78d97a3f409eebc65c6aeccb4fd76efed478bda9e1005d9ea3ceaea766211c05ec859e4391e0b0a4ee3cf6b819b9f9118d4a409503dae7d273f83154d3b160b32eee3016043f8edf8a7cd38879838ef42423d96756a921c48b3d96ac28f0197e3e5f4ba5db9e1a4c8f245ba0bbcc6ca1e0ed2546004c815bfb845c48f87d48eab4ff94ba362f767b8b9da6e656033fd1e14de796371cb7b53470e90744819b7743d5d23f4cca5c6971059875a46983e9d1c2a4a88fad41e3a93aefb62c45002e1313e780970649871ef6a6b1157a15e7df6b306c26005e0ecb9250effce6522018dd66da46a418939a55722474447d4d81f4e0607efbf841c29e6f52b5688bda39490c113d28b8b9d590195676382f213cd13a75151024bbead10aa17e57d4ffc067ae468c3c6b585449d9c59ad018aa5ff34dfe88143acf32348e851155c299618af8ec68765ffba5035d8a7dd57402d7f9e0514f4839fd38bfbbfaa069e59605951dd85da8d9ec436ea81b430dea298f8041811b84d951340dbb6cc16996d5c8df282265f5e2f4e6bda536ad618fea341f1b3a7fa6a4b2f05eacbbd1396150f22b8ee7fdc72472070c800f9f82d442d8896d9b033d8104e3539f6e83400e89c191100d1c43dd5f8f78cdbffe399374cae7c205ec4b3c7228bb95a668745269544ab0a0adcb27f313995fa7c42bbdfb9b183f0448da5a75350a03026f8cbd84cf13f28d4f9017f0a62694afa45bd719fd02cf505fd159e4155719bdc4e5614c3e870225542cd217db10d1eb5949309e41761227d2fb3076b8b10e93086d431b446c26c4aeca533a8677e7429108f7d05ea110263fe01f9a50bd79b9902ef5a284c836a310f1f9c7a0011fe47a217b67d1ad773e880da6a82b0002d2ee9035c8b3456d60a3f6d0b515f03817d31b5dc182b83949c585bb7d21ce56421b45e46f59aaf1b32e9391d24f74b5d8145d5e41c3a226b8ec34fc934d797a4c4bbb6f5d406c68c703c45e7e674f9496dd661be4fd3b2c844b505c16511df1e2691ec4f1f4b26f1839469cf93e439bcb4caaf3c4c3f1b6fa1e617ab5c6e3d255a4e954d8d2cc7f1d3ae124447d02329db88c442f48411b01f43d833b6c458365dff7c2cba5ce13851e7b0fbb0d0c0d263961c6584022d7aef1d2daf559b565ac016af13648e32f1a47846a09e635789196554099552d4f9ee65d3b909989567936c3ac07aa7942273e88f7a872eb793ccb51d642911c207ef8dc2dee0a0427ae0e55bc6048d40ffdf6a980f30df1a0810823486facaf0b93065d87ec1aa87c48396d399ef3e15b532726050df2e9178ebf3eb64475a7833acf2f6d63da0c33b809221f3fe8858713319bccd0f4517d97a82a7671214ea1a50cd3704ae27d58f0285793b0f24733a78bbd60b90fbb81c5e5499ca387153d41cc40e7f892bc7409f875b65c50f898f5ba58abeb88a3c56cc014ba813abe2e0c002f0d06158150c521e979d46da20807e2edf9defa206dfc22c61f63f1ee796847384be1f7d02825200fc56afee289d7457273cf2f6bdb596cb523bb7fa2af6b6532a0046721d6c44e230878ad2a07a502e376e4cf11d5d54c39e660692ed8255e47da3799088b28b61d24c93d5cf1dc5864478f951ceee7b0b35838126e7aef3e3de9f856a5ac0afab07700220ccb31ccdc614633cd40d87e44ca40b307d52cfb19d27d178d689f8b7d8d46253067fdef8738c195c61885419e219d3f9e15988fb939e406fde5619ed06fb20763cdfd4282d7732738b0f7bc2f5f474f99562542f4b3a7cf6dfd0f35ea2b3eb3dfc529f065285293f8e9bbfcae67fd1b622f982650b52649014976af3afb882cb67073cb847f6735d6cfc086bf9758914fcdbe7b01b8f31995167f96e6d62f98e1a114d31b2ec5d9c7b4fd7f0f90dc3caf8011d989016be41323211f603472db100553ced465c95fdf98d63f8f3e4380eb608abcd969c3b934256524dd0108a52005fdbea7f1116bd46f5cafaed676e45b88df8c239034000fe2e1f63a93245e840105980634b50b0c23edd4b2371c8d5c12a7701f96ee6bb52937b5e219e5f885140520eda30400bfb91b03ed38b6f1b77b691db2f99b3ff3d342ecf442458039ddd4149faf9dce28a5c6b7e63c0f355997e787ebdb128471aa965bee85765c5902d2017337e6fb3ab11c237283201721fb4801e48f11c02df374b595b79f6b4aa1c5577282a0a158b5eb8b3a6b9ce2c8cccf914be58d4138cccb0bdbb1e4ba582d0c35cee7237641797e55e321ba1db09b03c66783823e3a283336ba96f3128b96568286737d7b9137beb606b5064822bcb76b52c6997a12754811ed926f971307ce556d2f68280be04a162e1223890827681f60f769e7f9e5daa465ee6c287e0bad340dd267965dcca8999668929df8dfdf8f45247f8b4b058901d9195db9339520f0cf92d40c4f8ff59e0831127d2ee18dd44c9e18e6818ed46c5e8348ea9707c0b399d75acf691d1439a87b2852740408d01082f2b6367e60316bf08934da203187d08afc49f88e3e433dfb24578fa7787b494db8a6ab0d3103b3b2fbdabaa8ed8d9f4c5a4e31d794289321b6c46585fc635ec1dad2e9b63410f3cb9f153047b1c58b92773b0c693e6aa5f4ab7f5707d6f18e41db832415c00dff562ec2d2d77b1796bf5a82203b2541a1c71957925ba1267e00d731f8f28619c8308a6078d65ce76481c042611dd2600692da3a1ca67bc12820ced3b6cd3f0456ae50fe16b63ad7d09405b85920df83b639da66409d6f4e09164af38d5121ce0215be7ea14d1908dffc4ff7262f82d655106d14d845c97f3241bba14c8757dcac52643bb282fd2db352c3de91d3c347ca93b6a65338129d064ebb75e63dd9141baa156cead0bf91695c9383f4f7280e69a2ea1247bf97a907beed97ca24ef0888c41e0d8d2f5214f577958c95ace5ec4e0a98c13e3f5f2993b0a12e2944f329747ff778d8e9226db7b2bde692fd4aee843aa4ad78cb404aa484609bb0349c8cdba4925c3f8ea7e9510a4121d08a4e457055dd66c131cf3a688bfb617c670219154252765a3f565378a1ce1b256f4c8da77b01e2a028b584c2f8e7d8acbf2f51522a89f240c28260c3d39f222f8f8d1a4538fd5fea57f2e4a507a39a35578fccb81ad61bfa6679f541faa86e0c96dfd92073da4801aaac1e540bfb373c05bd7dc34d0513efd3cd797c773506dbf956870cfe1008e8f4959df0a051686dafce4f9f1183b52bbabc647350daeb179f60e2d89cec15b2942d407157f2448a4a37be8e54d43af2c7b72ae216e927db0b0c601299c8bc8f0b3c55f236005c011ff423626faa5963b2a4be1785c9510c9b58f352558d52dbae70837042ec8f16a46eb3c30c50910dae90b54eb64db6aa734764bd708a7e9c4f2f5d56dc916336c6b350bd6480415d7a75870f043c5549ef886793a7a07fddbffb11beeec2bc9cc6e2f2f4bbbab72f39d027c477e45125f1f27981d85179bff5b968cc0639ba9bec638631241f4db7f8f0cb2cad997bdac9cf20f3779a1267cf75d8b1c4fe01f1ca65dfdb40ea5b44089b925d1f560a5df2b24ef88862fe0924c6a382cdfc11e0d0611db15a43ac41209ed4067c63eeaeecc99801c61ba06c66eaf140480b9fcb9a0df549c2e13cc9848f9a7092e4b418dccd54ea69b0a352dc2d020b8968415fbfe4c186c9cb73d46ac851762c83844d5ee7113bba4ba19e9e0b7242e5d1da4cd9875a699ed62caf5de84a7606b0d32af9c0816d421ba411dfa2a902e4fe1ee7fb4db5ccc13e79333e040e703d27a4baeb0e65848ca9bf4d09e6b30880addc38effc579d006cb46148691749b51bfa386626b62929d3dd0aab16008cc23be66cca30b70bd170ecd917e697a2dcc8586d75606e79b943816953a095e5db5db11f0210a5ec44bcce141b91741bc76d81b0e94938b690dd949da997be9ab597d8e0b32ba1263f6ddec1be2c1a9515cb664922a8490e3241cbbec5b4b0b97ce860bddeb2865c93ec179f02328f55e46b49990c1dd1154add74fa23a289f047cc78b3b7a32c24eafbdec81e549abda9d8c4a29eb5f0788a07c7176acd293ff75ebf58a0833d82a462ddb500c2b46dc0a54472b629af0470642524849f7410cefdb3d44f8499ac12d6ef9261429354a5c31ef70b81860a6d1f9dc31e8a84fd93c39e292c859c222e227e9b53830d6aa376ad7a728da0a739e642d6bed06c34cdbe26cb03b4ebed95aa0df02bb537db8c64f9a77f7cee3a9c687ad432026a386522f1ea62d7054fa22114bd61fbb092e52739641dca1df125623fd3410cfae2989db5374257b8f964cb4be3ef8fb4e15ce34644711715c697afa9ab046f4550e63a13907b3c0f2a2a781d84bbe7c8972448378667d49a48f3f5877868c35beffd8b6eaef696bed223a4c0b1c4b36a2807eb6eb90a0ebe62b6d738cdf08b4a9839ab508e1aac92b82834e0c11dd7605d5fe271106e8ed1843ee14012a4e796a5712da30bdd4f111b72c2c6715bc03efd52901449c843a8c60bad059ed3e8cd3bbc286ce5188768b22cd21f334118264178cd645dfd10b2072ca8a8b7f569d76176d81a2c0b181067bb9acb67cb1ead97d3b027fb509eb86970d039212e7d14c2692b34becd24851823882a240299b767d1baa88820dd87e0a614dcb9757cca51a1363fa5c3a92840a20856a9aa5d5612850d9ee4f2b6591040acbf15ce285033ebfcfb132f68e81dd5998ab208f138cb7c186143be7bbfe3b43021687005207573f02ea70ffbc39946ae1aea036a867e7ac04745bbabd3ec45b2acdf00239df0a825c4ec69ac7d687883e13d44ee3d4da2c5c9d4b160a3ad2f7750c5c1b8fe3be16e581a4118388cf85cbd09d84254f47cb4f8b5911688433d6b08f3d96a4c672f7feebb4aff31a7c2649c151de2dfc7bff178a83a5537b1cd14d2bcaf23c6bd7cfecb319c88f27be965a6b7f3914803599e8998ce8649c9f5340798ea734099f9414915123fc4b537880f0692f5183f4d212119b0ff04c3e4e648ebc78d48cb95f6db30f08bbbd4c73f63db858872331ffbb42c7b21cf605d64156cb03eb1514c82586c1c6c62c7d77bf721c32be91e1e4dd1aa691cd02d5bc1cf54db8ed3643bb47e6cb9ed59ec000e607335f8265439855136ba57a6d1b2427467445043934d3176b259d647e2a3cdd09d884335c672f54b7a2ea172da1ac350919008aa2fdae547a39b70ec6dc276ad1f7ae709f1ff96bc5832bd70e0c7033cb9156298f0544094fd8b8303ca26332fd8fefa6586ef2a9f37acd216a4fd98f9c0e51853575dc25645e1cc0e1b92bb9662adda8f694cb982cc80569a288dae2ec11c1589757657597333ad7277789075a68f731da832016ed5f127c38235feda2bad925de7971d83a8bb954bf29cfc099096259ef231388c5a948bed61fe66124fa40c6c2612b82c365485932b3d071575b05fd01a6db57f352a624f141a397a7240c7d5343bcc6eedff24048cd2c92a78701c410d30218f8291f34364750b0eafee676810a30966142244ce95182a4a0a9ffc2540021849645fb47557219de9a0cee748bcfd38440ddadfdf26465c88a5465bf8dd297b29d0eccf23f9ddb37c80d41f17d52271fdcedcb9eca4294f51a45621bfd51761a047bb0fa8dfef0cc663f22e44d224f7713bfe721a5486a9b3777fc0d5792b4134169b7a90c5670e3cf4fde717b7ea4f0dc362dc83cf0dbc2789ef8288d4667c850808cc9de09953236e28f7a9f33aa104651bb1bba1a4ff1d26f48b517788d973bea836f107fdc1ca7c2d863b48f8597db9e04bc9e4534e5113756be471c2d13e3e0153efafc7837c4056253f57b11e88d5a6e5bf2cf8132101e3ae489ae68d733b103fad0184023d2b5d01b2149c93a0cd5b9df921b91f36d1c1cfd4b0973c7887e4e7158a86f90ca0b6c6941a8bd336e5298aed8358bea3fba29e8faf2cb6fecd28dfe9cc77b86a0646a44306cf4880895c2a7349fd0f241428a7b213996b3164b0cbe5bff546ffdcde19be0b3434ef80322945d658fb7150e37b9e4f5ea5501fafd508578fc3428ca1da9575c464c13e2925763bb1b22acdd0a5daf56e4bc1544b7919da38a1e5ba237a82ae0733c871ba85f50b4abb97d07d33b43af0519c5c9d150c7e1271ea637bd9b962bd3103d5db0814d4447e64d4a5544ab32672d232fe76bf6fb159d9dc521f14578dd649b991aa80e411f033ed2b5cdc7d06164772a6be94b4451fbff817d212459db7cc7bc95c0b37f9cfcfce13c4bf73d90df0452c8a1c4d6c70f96dd7e22f2af92088942f214e652bb0abcb7a01c32d9fcda5289a17ccbc70b80be1751f5b5de28fce4ddd4f7f644bfc8a7cea83250262464e6ed5606fb6ae3474eeffccc577e634f640d30d28f0feec840f448d1e2241e0ffc643e38fc8bb5240867632086392990f700f5932e51f920df86f711645b799303769f2c6e76959459a8f7f70d4b45f05763b7128085da3ab6518b5d7e5899bde238f393155e415715bbc7eda19d20b75757b411bb417a32954afbb62a4476f2b69577fed3b50b694e16ddd2f9db2724f23288f8a32b08b5794729c5ac110887b73a839bf9ee12a84744db041c5c8ea89b5dbd6f6198d2d4006483185beba1f37ecded0a8150a1f2712738b150445d17e1330e90362c209eaf0915a718c26216b7aafddfcc5374c1966b4921d51281389f89de7dc13413613bb4efec87bbb4e1f43913298a60a9105687034aa98302f48373e029b7d8258a195a3f4277de816b6e1fea3df31a4f8038119c72c419448bf09aa8deb2fbe85268ba5272a4671709c2c58a682fd8c7ed4292cc4eb870ad7b1b16b4ce9a157a7edab4b369ee775421a0e2b56e892a0f8af8770e64c59e8dbccc5413896e812bc2fa173e330bca804cebe22035b4d656b45e14118a6de6f717a076c283a55eb46cb90baa2b00d9aaad625d8226b828a17652efa6b21739efffd6bdff72231cae51f7d5d1f47f01f651b881ca0ccdcab2964502d162e96fd3b92ec1d59a45f7a2e6eab0ca47ec7f62080c83a21091869fc73af8652850c96a074395ae235d6949b4aa2bd112d9da8825cddca82d51d3355674983e79fe0136c939c91612c38e1d129a3d77dc6fbaf975499d9011138316123a7954714f5d165042043534b377c06b9724e56638970d6b4bbf4778ffd20831848e00a9f562afea2c5329a0fa15c1399682dcbcee66eb6f46cf63da3b72e16158b485030e635ebfad1a6d2788cac88b535302b00491d547b22448dfb5f0108d965205d98f2768ea1a83795505ea634152cff9d25a8739c7b4b9812e39337718e9c3217d32187ff3e2634ca5d5f296b690b37ab02d0bf1b36d1184cd5c44eea9a3199d2dd4cbb52add08a78c44cff065ddf88a9bac4b2aeced10b81a47db0a9d0700bd415e420f3f5687fc8be01efcf8197374b459e6893a1e18fc7772c08be3494215645a532ef5d3ba7969a6cd26d29e6c9f561f1e9267c40d01ca8a8da546c287db910360866d0e3b02d757c4cfaee638c1ebf8789f750bb619c4d4304db2b56e129b6287f51f19b6b18675c2bc530b3b3e2cb24d1bafc00bcdf3c28dff28de63ed3f21e115a05ec0f48463f020b98e8f53bb0fa778a108144109548f6c16e6a61053cb69be66ccc77107b3a09a5bb296bb8a7840850e9d169207457682cbf52c78a292f815b57403cfbe06ef2e0a9b053bf7c01e26590aa931b637692f17981826a1a73079dc0653b8dd529cb080e762be24e65b8abead4006e887d7ade8df8e41f87ec4917f34cf79b291925a7333ac7ef3683c9533e467f5853f083e1ab2d5f3fdf30d3b819fb70d24ab60292d39a86671cc6ef1ff6bcb4875637c3d9e38def9432205232210e0876d72a4e9303e6ea1321725349c4a195340734cbc5ea51ca0ea2474a92ac8fc1217726cd30a76a137e4be1a5c03562cfd5e326f19a0b68af53e47bccc49dacaf07423d894ad364fb9fa2f6a29c4d37999755fe8fd9ebad3ae578e2c5f4d750dabb094954941373d82dc2aa38e2b269c21dab67a534f3fb0777fd86c0bf480c22fbce12e4d297e00f8924852094bba52981774631e29ee460d0552a1e01c7f971bd1807d2643928cb9a1e1c1c8aeeba5f19dfa466f61c828a38c4bbb5a9d138925c1b2b30acf2104f21a66bbf0569a62383e67f6ee75d6034205029aea65795a5e14f82b889076544544ce2a4a9b9fba2886bbf8deb987dae4f933872cba038e5271419067cc08a5ab371c40f973eae01f2c7c401bbb31dcda22a058dc24d436b622d364fd8b185d9dc72174e84d6298fba793dbff333eb6d7fba07f62bc93b6e566e43e58525640816e7191cb64dc7806f8f944e2fd01e7cc06d8a391a504cd43c3ae3b4a75ca2d6f1021fa849928885e5a86659e1fdf718fc6a0ef2c7a651485000d82829a42577fc12a3cbdefe6554a2406e5a417e228509e9d23c94355ce04c0caa08311c145347526be1b8067af744adc4602296e9b8b78f70d8d8b9d1971fec518e3d60d4b010d2b6bfb22be49c65927238b73cc499f20599e81dc085a241b3125bf33d177b6c4449b5fd874db2f54b3d09f5f845e18fcf7f34dc8b7a2b60b7cb28be6d563e8913e49908661b7e555a70fda1186b7c183211f4fdd6ac58942877122ec47f22ef20a6754e2da894216cb11af1344830a9c3dda114487bf82e0ee6ba5556f33f732827fe22dbfa6468bc776436a4b4f31ea874b98ed56cc5e89056ce0aa4a3f6216f362160a2a8a0767ec269b88e1912e5ec19b4765ae450d31f062e59dceb1c239cfc8c73351d5f6d95569f7784d66ae8b273fe87bb65a205fb6f4393cb60f3fcdfe7abedd540bb07f3be633913ade3caf6ff3d49595216b545d5cc64d67f8924eb87f23df52f720d9cf9e3154b40bcc066cd1a786efd84d6240ba981d57e4d6e00e13e16844bf32e1405f526977ed9f9019c20df90dfb4a48f52a2289713a955b4594d6f9b8b95cbbc5ad5e4b4ab32225f2880ff2abb89d7f8a2b2c8d62d6ed0f91af8fe1f61b94b15891196141df029a8bdd20818aafdd25c9f460f5970f99630c25882d49638bad626d28c33b74eeb1117892aea29cb9756d201a3e1c50e4c872ad3cbacf55ddda610ec52191eb7263e216217f30bf01eecebb1a04944dd696c95eec375e3b49d6da7c54e1ec6dbb061a49ea694424791b1940d4e3714e1364147294a171bf3cf854c94174034440a149784e52a8c254134f42f7f95caa81bbea211cb4363adccda5dd76b2a030e0d89f2b40502db121878b727295840d905824efc58a44a554a04f13bd6fd67a398ee317f2bbe444060930ba26be06401b014342dc2e9cf0a263a6997d6b50b3e11f78bbd5c1d9aa466abf71dbaaf396a8ac415e8355c1739826102a764e36444e5257bd52a27fdf64466b8be6a23c3e2ed0024041c46509baa99a582705ba01bcf2b764edcb54b226c6498001c888bcdc323753d1c910969f304209dc2abc0a1aaea5ddc1bf6f4d2683539f51ecd98594c70fb428a616c1d77cb5fd9dc27ae67dbe41f6f842bc3496b099271e2f400686692f794a2a9dc8d693fc0e8744fa0a1e661899e1cf74de8796e6a8233c492b33fc91c56741fe4a520c0ce93be33a32b50c3eb7849f1498cfa4e9c391c9171656b4800159dd07b73bb7b4cb02581a816fd4bcce1fdc8ddbbadec589ad7dd00a975751e56d6e1588c0c582db878f560ef2876aa6971706a3ae1597b6449e346bfbca1579f031aa6f4da9e3a544fb497cd30d1cace81584b9aedf78cac798f287849b7fa3202a41592a3417711a8d2150fff9ce1891eda28f1671351c3a293978ca4e1c5da39e67e0cbfb91c171c0fd0f7b01078fc80f89507db3bc4aa8da2b452d8c9756e06dc4000423a34145e5957214c5a08b01bbca87514df53535a1e84d712d376574135156cd3d981f50696c6c920f0642ddd1e164b04a2a050a7ab2908bbc903b7428e338c49cd51bcb6a8692d74a1ef6ff2eab4ad3b84133c4d714b5da838bc5687777c31d5bf11cfa096a3b2d4cedff3fabeaa7733f75a63ba0a99a0cd9d81933913000540ab72ec7051f958e63166c7e532965304f9e8f713c1c17bb7457707da8f6c3a5605e46769baaa9ba01270a13000629b49b98a2190b1630d78a53b1b5d4cd09977a933dc6ca0101734e209623d290aecd10c7e2bf78d415e00b50743c33d3284edf79ca5aa9b2a3d525d245fe2629c1eaef5eba8dbbedf44c24ced80246611c45ef5a2d000d78d0df5430cbc5bc855ff7c169051b4c92e84a2b0ae78b5b74f088ef0c18bab259ba81283280f8cb5c454467245ea38be40abf9ec3c1021ae8cf1df8dc06a428c73b07f38a01860abee77f0cb9b90f22aece6e39f83e8915da0d64a1c3a96b1214eb1941a83328f69224f4ab68da0d2a1d7bc83f0e63ae26ce28eb7ea91b1fd17b900bd1875505f87ba809a76dca3fd28d8498416312e0a9e3c11057e2e417ecb017e8124824f420b839c8a7cfece17e255ac0966ee391b131af5e3ac318d23a3f1d87951962c5697d01db62f8440f60d4f21122d798e4472979668a62a26b9ce19f0f3b70e5a54641fa67aed3cafd709f8cccf10f4d9a81c17d89dc3a63b913265034a0370fda57f97636611700e8ad7576bf041dc3efd011af013040ffb9677b21824ede911035d8f8c75a9018c4b680f6c42b1111bfde7443a98c1c2f24e7ccf5306161259126af6925cf37aa8aa62053673c0faf7c2fa50d5ecb423148a07b28254787e3a01c43b5a600a8669c48565738b5b7c4fc29633082a22121250e9f3af51695a147ed8141fd599df71d13f958617fda1c36c016adeeaf7d4ec5c499edd3ecba7286e58885457e903643e50ab80f791f3d680282d81e3726c028e47c1308ef42af6dd420c4bb25004b2eb17c1e7ab7730f5057afa812a0f3f670effeaeb0a92285f24d28a8e86bf58fe81aac3cf4057906b24c5e496fb82d401e458c516c8f98d657d697b0bc9ce52a1f78aba9e7b93b97fd782854d948e32c1cc494614047ac122cde04e70fcbd6dc0b84337185830602fd4c39dff9ee314febf8d3b006aa8c8125016943318b0fbb4d1751d80ddf85d91020aa102e34e5a6ecbc2311197619f379694f5739c63cb0f0e50ad7b4e0adfa64f906e5d03388ce45dce1fb4cd6b99bc18249019a23e3bf6223381c913815382cb7b260dd7adc124c040037c2dd49902ffd53e0849148b683afad02d8650b5cb304d0475742bad50ee0e685e516a39f65dae9654588ef486a4b602e2b0fa64ae60aad9a97bb6be99b47350004026fa96365d7b8ab5b97149ee4b820652e7617dea44222d58c7be1b14fe896c4f5c42bd557c6e49a5ee5b763753e1a398e5d435da96208bac11b9605b07ee5f910d4ef8cab634007d0739089595a6d1c44ad531f58fa378ab8b45137a3bc9575f08633b02de97c97ae6cc6bcf0a18d95b38a1450d485ada757aab975e7ef982318979b5006deb8c8dc0bc377123f84be07809aa9996134cfe4e80fbae75fcd9ddafe47dd55be7afa7bc63f8899d353ceab89fd98caf31c69b59c2bcd6351b1aae1d361f20d5de8f3b67e384957cd9ef0a3a76781efae8ea1dfb41d3b0f73362d9ce2d62e9b75d8f6976d8108708307d8b00edf900ad68545c140a49af17a406b07bbdd00f60ac57aedf80a4c0b32609c4021f3ab5e132934678d6d3d095c23abfb9a97c2d50b7ec5073f5f389db5b0db9e27f058e8d9c96a516041f5eade7a0ab1ff7f7e05f4594281d2139349faf268751e852e9be7e0b92a090383b2de27be780615e1408b5c98e3228a31e232dd62dfac19958a17ed586c94b9edd773c6c02cfeb10013beb682593a04082a4c1d467ce1abe88ac6874678ccf13ff749fb2997ee7499464aead4c559f296cc5400d0e75f77a76c33508209748c3336921a79fc54992ef7773b8ebdd477afe8f089de107cba0a8f32981dfb75f2f36308e70321d17b8cc87e218ad757508e5442b53ff034e03d06acba1bf23ef8d29ea2229dd3b80221d2c27aee65736328611072bb4b8051e9d70b30541ce2a2d25a56cd50b1574beada0f60c4b06587b4025cdf0ecb1cb3306b119fcfebe1936cd54bc63b046909f9fe822de8efed6c20bcf29ea8fb94299082708c7bd423b3893853bd16da1799f249f1ea147922d97ef42efe60d6191d97012dbbf42ae67534973ba586702e2a90faeeffd43a9f7727e4e923458ec3e9fa29a17baf33e543c0b23a8734155a793b8134822788345b44c0e4a5021f42261113d2a3ad69a15cb89e79e782dca59768959c265a70aaa02d3d006eea2025bd60ffeb0ef3cd912ecb1d4c3039311675abeaeab26275e7a7e5a02bff4411cd1652430ebf7c834273b220849591b9c686c824198b57f26cc92ab309b561549f2417fc2d44fb826f57ed5b2c7b0ab73311cf331025b65d1ccf4dcbedb99de558453de31c463a7fb8c340808514c8093108eb448caa2c935700882594183504387d5fa153be434d32e9944d8f417473cc39130e262a42a7759dbee1880ce7848a67f5cbb827d0c152e67868b338b09da5f2cfbf5bf9ad03ec2524633305772321b8bb23faf08ced55ed8acd2b57917fbde9de7f66eef3819f0a2a90066f8106648d15896d558f6775fcaa23719a0b9dd524305a1b6a1e60a55021514b27b7fea590f1dddf27f8c3dab004fa416bc8c415d053752025c94114983f7a3ef866bb19a729d4c29821a675d5f8232d67e9ae82074a95d451c2f1b622db612ee7a7a00ffc4a1802d8cb425d7a2867c20d39f4381e39358b2305c0281914f158686a163c8711c1222a043f5074f38675fb5423f504ab1fbb72510c89861fc7303e29cc3bc7f405444b195009981e8110c0fd80a0f9f9732b3bb2ea06935e24ec5592be5a7f10d59cc1a07ececc2497bc9f61b318f56e65647664e725c98507609c5e7e4e38ded7af7d2bcd40bf125eb75dfcc3302d515e9652de58a3151adb53223c8d021f5c48789c5c937f4dd801987cf4b44201ce6f45592a9b6160e2f27924f897c5e391dfc77c905afa08acc0acada84f4d0727d213236af201e4784cfa76882972eb4a167a5a7a3a4eb82cd199d3e8dd84f5c4a51c834adba0721fb4a1a817ba3abcb5958aac5bb0afde4ebf0d0b5f2cc4ee1da290018f0727f868f964b6aa464ac8cf1ea876e09ecc57a1c17ab27ff8c1a02f359d6c8d4b01559fadfe2e965a0a3134346ee8f0b1bd242ea574897491d2ff1b0d4b48309b749c8d9d1c2755aed326387d807a1604b75cc980d77e69edfde0ff15e2c655cd020ebf53e325af98a0c669d6051c2e5887d10340d4f6c4ef924fc37c9850c12d289de6332779eb11b203fd383c0338055a4972bbaa241329222139fcf81c0dca802116d81b38f04372ca6dd904f02e878af579cf5520541e56df0bc3e65eba1c282a8ab848f0b5df7b66c4562f41d8e542063aadaea21153145fcf4ab9d53933c5db1e5df0f15340b9e85bb2fc711e8540c717420bc0b20719faebf49a641cb35d758872cc79ee4c89f3115227fd1d63461bca798763b4b74889aa575d38faff7a0508b12888900db64e3a823550c97c7672a216654a95941f77788b0987ad3aa4efba4c1c41e9cdb0190aeb0042f1ed36c0908228b668b0766897e3a87f9e885eb008190219175b7ed499746370ee0b0daf4a57ef76e90fd447c25d906b51ec01aebab14b76f973d0c582a389c18599225c3f9c36d4333f9583cb7c6c05dbd5f415372ec7b64f102e4b6e41253c91f65f366f60e77bab5399efb3deda6d2319c4a37db79d769d32ddfbeeb4d8c70510d2d93de09ec36a66ae5f565c7b5f4e90fc4fd9f46c044e47baaf097c02adc6754c2036ee352c50ba2c8797514e6b10d30add0408c01870408e62f9bb6e137d98dd994be6520b8dad2f0da6da859ab70ef6e0c33897da52b7fcaf3e7dd3eb6c7d535b9cd4fb146339a4d0bf1300a7d6e13f68e71a57c280084e942729f52d3f688ee668f84796f1a0ada9fd08200f4265a87badb51fa415ef7aee1a92665d7c6419d8da979aa2a57adaa07d911c3de03261856502372d908255f8f2cb1a3bf645e61561de0d90685c16c72751c8b413e0a71c45345e441caab697cbe3186193d828e61ef87fc5e8304e963a6e31a9d6f32dd3b8f669806eee3657d73f4f7b245c5f7f42781cf72198947e0b30fc71527cc393255949fcdadcdc58a7ea00aa5cae5ab967a4ca1184451bebd51a048d0a4eddbb949918909a0cdf1525f4c8ddda1e313b9fc0cf4583723c9777321bdd616d6a514207eba1546f2c29b09472db92e363276b99c8306f35cfe2fb91cc7c0578c77234498cb19d5249f967a6cfe4d17a2a86e1e86c51ab960a96ffb4d78f7e793869405f1370b90cf9fe85e6b0444ab597fbdf4690197688e9e80b99bbadcd449dcfac0d82e42ffee5fca6455fb8279b215a9562b39ae4ba6bfde8f6f786d3693b6feb1c77e57b8501686c1e92db4ac9581aeedbcb6eb3bde8c35518de6dab23c670a1b1bbf83ad7e81d249ac0509c2f87115f0cae46b8bd376c017de553ab7a61ab31ffe6abbcc0c49822f942acf164694cde05188ff6f1b3d5a3c06d97a80822799385f23127cd28095862aa246a722db5cd0950e00c92f4b9cccd998431c9cae59e745710eb77155c34fe4f621d850fd91097a3a43a4ed51dbf64aa491c6b6cfee9c6265b4f447be91e587973d651865573e70d5e4918644cae58ed104b19bc561f1d4ce85b816fd339f60aa337f5c77169369b5655484984cd6240c0b929233ed8afa6bf6ab97610c2790c675e3098afdccc60a0b31ca0832133559e5f4d7f5897cfc23a0922422f4b35e5d79be84990fb71be1634bc27fd239a8ae5345e4d1ce084ed905cff3cc8af5d56283c92e0046f909f96cdd02309885908fab3b815ef257fdde60658316fc11e095ee7662d47dc279ef05bb652cf80eb79546059bcb24152b168212de1af3d2d9dfacfbb04482a820f5a42d2d1e62809d875b196ed8bc4d0bb142b095ccf797e598eb80659003f4487a5d477953ef1e22efd0834c32d2d69fc720ef36978ac808296abd92102acc209950ca171f6735ad6853069711b12d354be5923915b83b16bcdc71a31a5a589b9d35be83d41df3991c40cd9de5e55af73d84a02a947b750dcdd964c31a93c7d466146125f5f81a7511dd7941054158a8b3f0b90d498a293d7fa78eefd16affc226d6144554816947334a9d21b6e83b4f5330ce4710d93d4b5eae6f41a5e9abb6d31a4ece14f472b3852302ae1b0b7593950f82d4c42f86cdc05f737ab0f342a2d72d4b93344213c942afa7fa83398583f5c7fedd519391de4e00ed76ecd602070b0a0dc459813fb11e4a143bf7615e7cc5c061ce61db344dd42c4d70cc99a74354fcbda55c0ccd915214554e4d302a06fc5c5c7393b30c37d143cfdb6a38d34f3eacd81f64971bbcfaacbccb48226c39e792ff43cc249e099206294d24c3cd1ea400270e9cd767bc249d51079c562741c432432becb2d57aa0746cc7b88c9db7aeea7f7951a6ccc51d5919e9c9d5d9b2c3a35aee5e8f175665cce9ea66b2522802e266a2c1c76065e95dd102f4420113178f01869bc66198957510be1c137b1834eff4734f46139cf46a96f99b9bd8e267332884c829249c32937d35e1c0fc8b3affe234022bbc2ed41ced192872ab9c62d023ad22bd25a9b68d9f00f9cb666e41b75ae612738572cfb8c7c41d109be3898ad6ebaddacf01e1c9d0e85ffdb50bf79aa6c7e8f1cd6372c35e717834f436e8d1c1a038503f55eebaf1737172ee9bf607e83391ebb521cee39df7c8152b5d9c9a67d598999e8cb3cff7a8d24c23d9804945cdd8e266eb52ab02372cb47fd559c17326e90d6cd19c3be6d4e1fed9c9c10c0b5f83e2b79e359a450832443bf61164557a37166e2535d8c2daa26ca37995bc2a8fb1a77c44a2a208717084d5f8f59934d95c348d79307235e4318631f6c32025d8c32b515a44ce2c33ae32a29a2a74526dae0259e20fc78a2f7dfa6a9bdef50e577a48536bd8d76c5c11a617c20b1ea2a0dfd72311f996a7b1f86a865f95ce212ec3fa211bcd95f1c141d5b65793030d69ad7e20d0c51f2a588060e66036d771a6cd4619d3838e512eb80091424a7b1ae39827c74507b0afa2e91df1577d3cf3ead5338ae2e78b4dcd21d8f1273ee2927b0962961c3d02b2ddc4bf596377352785e209d64a152f8eb99be9351ec456652801a8000a525ec73e69b70b8dc61452a34c2a87ce9b63ce5be381619c6ac72d2a962c95e15af80e8ade79e85148366bee41484734cbf3d67d68081278d6cc5aa7c200edb879ea908a91e3ba0d18c3f3de0b032802d1717fd275c7199569cd40e71077d7791070eb285f729001ddd20d9deb0b84e57078c74c9dbd53937f552a4ad4fa548fa0d09a24627bfd769dbd9f45dc2248e9a50c317c4af0add42606c1c09f217749a9d70a177b4ee8218fe0c1a733234ad3facf216e5ecb996b9c7185248164934408d1455d91e2eed060fc8b3d732336da679d63001ae16a4c2d26cd1c7bac2ebfcc79a39441a75bc73b8e28c153dd6079ae42c563c501c86ee86564dd66c2e47ce4976c8ce738dc4e22e052fb6182e8deb774d1de9d953096c651e71a3c0c8ad0f722a4bc0c08eec8f28cf86800161f2818c0c6e3d97467728bc2cd50105a282bca959c824560a1a0f84873b65eef39a76c70fa80e4944c61adbe5b001cef9f68ea3b3cf5cb85d2ec5363f2d03636b4685d3e17ece57727c79c3d1a6ff7c920ac203294433e28806cad1c22b829d312249b93aaa05f7bf25953d42bf5553280a636647737b21f8cf1c02591d6beafeb3d14d7efd6b40193dd682a6d7fa8797e91045ca6f0f2a54da4440f2ef29c18ffb29c7288e84fdf96459d059968fa458aadfcdd349f958530d110622a649c5b65104b690af7048c3d9b8be59014ae49579b86cc60a539eb3b7d9b53483d5a4dcb71a5e6255af9a296fa091d1e87454dfa4548946b69a8fc7542ebd5cc4d7ccbee72defa9a5bc8b3cd350d9c272d1e4a64c39569457fc9d286289a7f28244ac8ebd7071505cd9ef33475720fb254a9ab3b6c2b737a870452b406c9b83c660d710b89c3b82cc71a25dcb7da4b77670b02d14b70e94f377eae2eea946f6c87fbb60141fa3c0ab37476212e7778f8b7c857a3cc6ba36b8cbece9589c25721f9faffdf7c086d6a157f37bb2c02ad05d0fa8ac103e1c31051deb59633101608a89ba17d6e743bf3158a7685389302c7641a38c0c322cfca02aeacced8af2965d50a5288d0ff4a289ab5ba33b3879f067a51bc204fc1198220e2dd66080b17ddd81985d7d944e0d6f5ac5347b6bc8bd05d0c5f29047f928b8d64c073e3f3d4a20e68f5ce9730f45fc6e95ca09f85e34ef7b298d09bf25bb2c1fc7ceeed034dee7c9f481e31cebb860b50fe4035db4c936656607ccae5f1aa470494b3015b5e0db77ff95ba7d79a6e732c230b845aa27b279628ce2395cc2b7fef1bfeb53d7dd420a2e8cf0f56e079caed2b0a9acff5ee599ac17f506889fba7e8f5fc682a337f088a3d85bed44acc8baf34f81eaedf4e678eebae8f0cc2ba0d216087e3a017d1816bcb50dc00f10fb32711bf83e1c1864948947c225bff6f2b052367bbf28c7bbb6f3456af6585eb3e083e94c5b6f9e2b19759e42dc8f9e5503897c27fbaf58ffb1688472951d6b92693a77cea8f0a443e0cb36fc88e6e84026e31eec9cef87dcb9f5ffb6d41182b92c6bcf5eade641f571f77589c3d9186c0f206496a56c0c8dc56aaa29df5834ba1b17a686cd697d403f71cd3b48026efed8b16cb1916dd6b35b90634d87f0050d9192d1ea95cbe785414992a44b74ae14295a9a8e57dd06ecb90253761803dc5e34219e3d0f5b82396b098b288e10e0a2f8bb456a0ed968a08ca2703d51dddf106395a28d1a84c725bcbbc5eaf4632e3f69bf69f152d34f93fbcdbf9b22a9699d32270e34a4dae2f5a9bb7be6207dfb3149fd769989bb031cb097246cea193fbf30e3be2edd4edcf00a494d86c25b71191b856c8e428b4922a1f63007d04c8375a5c71e9199d4b9106477affa96cf0262325e1d78e8f5484dad2f92c1a6f4d0e1ca183ba60c77655084e6796d8d042ab270b9ba3fbd68ed715361819c1edee36089a603195deca63be57e49bc974fd854cf0dac24f7cab35e1124f38e07911142fd5f71b32067c0796ecb8bc0933a3cb9c8fe25fafd1690dcf73df07490d5c2e81d8c5c2367f7144215c348bea99ed94e115d0418170c1d5b72bfd187187daf41adf8161cafb9cc6689b69f3a8d08b904c9063fa905ef67f804e1c0d2c2a11f4d25b20fc39b3996fd076f5842df58e6bdff72ac17a634d93ac6f717b0b81d3430eaa02775977053f9dcb135f0aadccfc2208562e926092af90dc42c3b89e75d7ff5b15384cc999f2cfe98f9b172d3464339f4bdef1bb882022f6820297556f54bc0041234a1659cf5c1e1f50da50c29feb786a7976772b6bc6e020caa7fac54e12abee7c3b0d979f8e94cbf07e668e22490a4316dff275ae160aaccb61398264ef21b3873c65d4478faf2645e3558ffb5e70e4b605fc5a72d764b8009268e5080f2bc97445cc9b0346d2dec528a5a480239aa59d6e07f5c47a643390b3ba263079497fe56c203da454b8019462f3162a1ead34799ba29a1f5df9f2f3cac88866515013bbf1590b38bf67931135b85ed4fdcd72ae4fffac92376eaae796d7bb37b84400aeafd391304650b718feac4b6ad14e489a3b8bd9927c384def3a1ca31804265a9cb0ad05ab2c3f80f0e395b989e6f82d58894801afb511369f5ba0fb17166e8c4e939c1c938eaa5d2c2ed15e4e353f67c2babe841b3304f973d4b4031fc9e1a75e19d3df4f221463add1fe101ae2a5c4a59942d75a2e3d6c7f306fca1203432757dc612e1bc1440bf666abedfc98068344679192a25872a71a31e3a90864347005fe073e7c4ebea6082df4385b027b3c83fc6bd12603c5be385a3df419750b72a09be24a94e75d1d8ad983efcc5a6bb6a106e434dd86ef40f9bebda9bd38eafc50fc666ad0f494902c0ecf1402dca8080d86868dc7f7ece947c2602d6d728e06624bee8c807dd9453bda684cc73f8175ef4636f822fee551740f20608eb9bb88d4775c6542f8e31f592512cf3e08259173c728fcc5177e6b6efb85d9625be0bb2ddb0def611a8bd2e22204eb8906c23f062a3fb79dec094d0dd45731b623f1f90ea3935e73bc369b7335d61241d0aba88cb0cf67a7f6e4ffd27a16d39739fcd2f0aca8ad3986271530f60227daf0a6c6579c6424a988c476cb0b32bb17d9295ea29fc32d5caa6ffe86b0456b0239bc860fe2eb7517eb6fa9aee0cd513f8517dc10d73ea330942399c89f4919aa47a0b6e21335cf6de52d2f3b0a9ab910782b7df5cf10144735282c23048e06cb37b6df36300a54abd3ee783a205b5826a64ec8efaba46a659d960c2448f92851288079c55e8b10f2aa36363ac1c6284253dba6ce2ebfa09736b55509b4766386dae4cc8612c218620ecec6399766a0ae16f9ec4217db09b9f249d4f1b20424c09e9cc3b93ae0d1bea1fa45c05eb3ece1bab475af2f1e1cb690f9173323a9bc317dfbcb9f50087dd05532c5b7946cf5293c9578f7f743235beb110dea4b3ccac157971611603c35a22a10e6f27667b28287dff711f109eaa02bbf40d86f4050b6d8fa068d0ba53deb0f574c1839836adac533186a833776589b8d20b1e8070d5391e2c89726f9d9ef9b8ab2c9fc6668afdb75a0dd003c02126e94d38a2abe29444e9cb05341e269b994c4920e3272b5e35a7aea181d411fee78aa77dc16e9672a725dcbf27307dc2ddccb996a636113054b9475ddfb1dfb9ce6c3663df540e3967b3dec885176e6fda8f2bfad05aaee0c908d6d287e2a6c224ee1ba575238844967c0e251f06fd7bf6144da427009d6dbc746294ea69b597d00455a374f3bcb70e50286269ffd96bd23a996f16cf1d9f505aee6f88f261318bc21ccff5f280d5521b8c8789210521e8334f07b049cde8090041c04d9fe8f97c30366f786448b7004069d2b60170893ff37d88b717ecb1ba792c9bb75b4e89e5c02fec947129de00807961b9e40b8c90a839e5794b4b41762d0be1a3ae09c5c5a3014f2ffca005c1b816d664ca2b0fc1ce5a4d2ae131dd87bf3bd77efb2f2ce44517dcc9ea1ee663eddc3ce02b3838775991de674a5fa309bcb5acc4dcc2c44325c4b1ede62a013619ad891b0249085e5f631f64cfe98f6178ff5c7978c713ecff1acb420052b03f15ae572deb3e820e4ee66597b35c0cd9012cd2289069b84e6b01b3c9ebbb6fe0b131dbade813c85aa759119b9060ffee957a10d86b961b9796a9f5380f62d4ad01d11e75b6887993d7e4b07ad4ccbcf5853baf41364aa57d5c2d64e90d160d5ebcfd5e47970119a6edd20f430289b2a3df0194aaad49392439d527d41cb05ec085d2efecaabd91ad14cf33d9552ec2080160bae968abe2ef0b82fc5348c34dfbf7e5c661d9dda8c334820a4615d5fab881f284dec6fe963fd3420ca4e181015a9fc15d2500a733d1fb006c0b9e76e0271299c26ba8620ac24bdeae60a64bdf1032a96bb14cfc3d3c40684ad9d02a88ad0831d55b869f467a214c78c2ecf437ffe9ace177d6ab751fe87e9fbf596019b3c8aaa451889322744d294253169a84fe6e203d13ecdee862ac7e502353e8857138fd4964150cc0f41095bdede524b30ddbab6ecc356f74958f501ad3482d3c362a2b2b3e04095e50429a026ee7cc55861165b1a4cd4ab7505479af08f9e8f3ae59702a7b7f0418c6fbdd33c0eb4cea58cf6c0a4152717473f2f2369f1460d0bc6dd36b5bc101fed44892a19cb0fd4eca3a9d28c1c9f7d60b1f23d059a03dc2fbec1925f05aa12c25c3b15cd711a98ee6de60215278663de76109124be997c97fde2010957685a369ee3b7fd7bc5bd37b12cc1d5237c45075dbf5af8732a764e113d485864e1d49e2672f956834e77f94119de28b0978d368ddee702471eebba8330caca790d6a532a57da81b493e21c5efbce7b7ba7287a982bfd87b15657f7288a1f8f34557461c97505d963b6b421df14ddab52869a91154a1da71b8524f241352de929b4f9952a495d7007ac042d393adea73b28ce33d9918231ea4b9c495ec5482f843ef32182a489b8e6533617c02e0b7445e92a38f40f882bbd7a31e8e445b21337ea3a6631f02c335a04860ff7ef4e8cb86930cab89e7599d5ed78324f8ef0b0946b794d009a9ad4a453f8b22f0bf82f6d58b9d54b466bd116b156960ffe229f98b8e16ffc93e3b668de4af5a0087a92615b1e1184e0a6760993080b510b954d9d07dda3dbb99143373f2731bb6480e51677bf31956511b1cba3e035f3e2a6a05fdc7eec9ba6a37f2e28f9d2ea8a170c6541f2fa565b42e9fdb6d3db48bfcebe4efe190b74c0ed25cc48f70bfec41b69adc4b43e36e4c432517cadcd6612d2d6d5565851852d47b5701550ff968691843ccce384ac55bdfddd15b2b3d4fd9d81a9121f5ade76e23e6bb8e3faffbb22ba3073ee8a8649a06b6f58454854b787af233d50bb39735004ae31cdcc176c29fcca0995ec2bff544ba50a5b89015ce31eced1bdd33399eb695f5266cca92b811696af0f05801d014dc0bb721115aa17ca6e122f395b66f02cdb7b265c1a5dfdb0d48ad386d377df27f5ba79eee70a8347ff967e23e9200e6117e899227aa849a20c94f70dc159c97ad3814fb9a2a09e792d2c2f5e85f62e5ed0654b4d9879810626d0491e3a8eade1b104a258f6edd60e863588672c1f0184fdb9d8713f1d959b482bc0fb9baf98e986977f357d4abf05af8871674299af9c49fb4ec156ab040ae0e5dac0765472b8c7de41cffe60ab836b828a75d0d78bc8733a60a9af904f51854aff3dc09c074e8f34187a62a306625ef9c626b220862b9ebce06136e6d9728101810c44009f843e243adb05a484e2c4610433d01058596ba146a887801e5f80a436a7bc68832e7d9a60bb69d6ee861a26a009174c4049448e104c51fc99802d81aedbbcedc4c423b90ba3ebe46b5c6f737d7bb6b062bff3fa8361003e1e4a8dd7f405ea52d12234d3dc8aebdd19ed0dada385f69a5b890cbaea9d99d53f04d10cc62a766dce65ccb4cf0dbfa0f78a88082580d267f62752ef44a30dc8a0e24fd462a60bc2640a5cdb8678130e767263f9e93603372b1662ae82ecf8bbcfc7f83ac2310aa82263d740a782b8515f99cc9241709b785b1bab736044c32ab4b39aba013937a84eb8c911a9da5f96c1f92913fa8c53bbf432249c132490d187802f7ef6abee710615f51b2c34e0ae6c258f5f3e934f1ca4439468c494de5addb5991aba083298a8fad811f329710537b8a9f48e5b0d585e40f8137002b7ec00e184197b420718ced220626878858aadf6a3e91c2ed35d592d0c9c4be28666c97ec8d28fdd028e29457fc43de82b7a0c78bbbbf42e4aafad57aa03a72937f650f1a74ae008fde0a3680bd01fa8a61565022dd3d99f1cc99b0dbe79c29f4b2192f8bd6042233fc94731fb443c5b3fd3f8a12a93f4daaa593e4e9a5deb8bbbae5441b36299583798b84a7a2fbf0cfa39eeaa9838e9d8e18b0e78afff7a979e7492944cf24dc58bb0598dd425c73738fc9bcc7d7ce615e8b5299e75c6b4817f39232e06f91285ea25184c69b8639fe3c3a238ad8f8b223028743e9e5b20a27c83a6343a715be4cb39d59c475ff22005fa6e360e054a2cd4907f2cdba4c841c8c5716659f146b62c118d7bf348ebe867e8b15b9feb7497e348894830dff993919a9d1c6b2228cab281cfc3e34431ca6944effcbd59cd66e0f885a9e7dee2ede8436ea4d54ee401edaacf0e16002c7d19d2e7fd31c1927135393818bc8f5dfe82841142a548434b98a7f2a161e3bea865c67861fcd3ae351ae8b892c4b275c25a2a7f178b7279807a88787efd7f1c249b02db080f1bc3e7ee9672f2d91143b1d0d414ef6a802c96135a9e74bbf15085b869994ffc1b9eb9c1dcdeb480b52d3fea4107123963dde0fd64747fe639368762d3ddc37449ff51567117cccb656241fd01d247c711cdfeb1e8695487aeb6bb53d907f1dc486cc93f6bd348ed083354f1805c47fe1e01560f27315ac35db19278631ef4951fa7b97fbafac9e0e938cf630442d173d0fb35c19d846938526a049b72dd803ad0b34abfd0662816d7a098cf353a2c19621ca1fc6b5a319e77fece7cbe11bd97e3ede38736590fd4b6e7939f78850548fcfb37b5d581859e0dd10ef018a3a4caf363b40fe27eea9276e026b798472e79fc77f083d0bbf329c2e4fab0ca66f9019af8c2bee7808a5249ef0b0c703b269b6a5afcaa4e4fdfa51a35d6d4b843e73753cbeb9a82319ddfdd13b9f00767f1ffb1901e509e9de8f989aed402c639947b770f40e66de09a124c47ae6c4d8455827dc12f96bbbe99bdbcae2266e8e81f66e7ebe28d0d514e7f0523d907c715a291fa1d044e154d10e466c9ea14a207e1cf2c0e3f1b3b78d22cbfaf65d176a3d850be3a0352e36e14d3c792fac0d85753fce3a10ab8c887a0e040016d280d0232d8a5a565fcb49b2ceb93f9a90e8052ab05f762174aaf16c1a3791a7067b3151480eaf370d615658a2d10d95e86cb32cade3b2dd5563da96eae3dd18557b213a8d6897f07f728a7d245106cd8f9c7fdf17dd75586ca5de85d47ec56a5f97e5fc4b9cc90d5dcc67fc2135ec0b6c22f0fe0bdab8c180db72bd4907dfe83ee1f636d6e172d760a11e635fddf06e9acb6042062d8d0b4e3fc23de987fca639b80e080d7bb421597d8d1a6b25e01a21183bd5ad9f20947e9133c792c35f7fc4d75ae4207f6135dc6ea725c44843a11fc8af9fd3cbb21d483c58fe6bedc29eba7df09c40eb3e3a160c6b61af5bdc7b692e64215f624674241d42147f1f2e24ed0faaa805c41bdb8e70d0133840c143939dc37799283f5cb96c122cab5ff25dcf6b48e931a7bd0282c8536bf2162f8de685a3ea9324620fc5f1b4eff0aabddf36e7cabb2bb444810bf87e40614a2234cd78195a2d0c1c0bfb2fa276f55c1bd7c40a6c55802d617bb88c9aec87b3c8e8578e769095d69e1590b0e93af63f3c65c506285dfd12880b1849ca5097c1046dfcd158914469c2036916e9b4936a1a948311855a6ba3a20bb68beae98f9bedb2cae6d8ad32fcaa2bacaa283c2065182ac006ecf1ad0d9d521e106788643550912a6446fbe61d10b5f3307ca29d29b2afbede3599f64eb7859cddcf69464a8f7ce52ad79557ae1059979c4e537d3f63ceee7f6b910c1fb8e28f91be763ca943ce50d96b5ddc4d9a41f14954172dd0c9278fb1a31ec5e56ef0eaeab0ea6aa0a9c019203a9185e27d90c75487b395181800df6cafd097e158e7cef2f15fc42331ab52bd4e66e64fa9b3e6c0e5dc2faced87e11e8e4a6a2a3ca811ef5282dfd228ea3114e8a1a351c67712e1813d0d80fbef78a9c19ed14f9531c5bbf1aba5e69e8bf63552a3e6cfe36037ff4054e14e0c5f39c1d94601811c75b00eec45246f669d878fa0b37711ec9a600975851aa90e22bcf0dcf926053a308c5fb518462232a78ec0477ff0b7fc38f81884fc91d50cfb1949928861a6a16e72ebe10ef0396b4602fd8cb137f3a67c19107c69964104dc15a6d287d7401b2e167c8f8b2364beb061fa878971a7a07a2c8ad3a7edd3db237b5f3d4cb83ac1421c9b36d74c581ca40761c07eced68b9690ad683fe1c95af20d2b7af0ce2d71fb5187b418bf44e2c871e3742374ec13b6d3a9fff643548cc0a749e5ab8b16be253f5f38cb881b6c937d6d3630ad1e0528d82ef8c3d54a50f4f12225cc75678bbffcb14213ce731af3cac3c2f96c06599b3e338b30c5b770671f71b44462729fef9505715a5e2f7d2c3585848861d3244f6621d128296b8e28c151a272cce2e634696e0193865cd17ae28bdaa17c26c2c9f0e08138a03fa6f37cc40c78185ca05f3b009eb168da0baa223b692889099a5b0e4a8c06c96b2d00d73bf27e5b547bba92b236ce8f30464b9660cac2d4be0b997b0cdb52aea162629428902c24ddc01e0c89e6c2e0bc7cf67d465c4b56b07731bfc683050aff03b71bd45e04b8eec024c345408a895cac850903e3650676c99f17320effbec89055bf64ccc0dba459a63a6dc1dc5c8976d0eee38058f47be25d3699b246e120ee771d121ec8a063d66734f33fa9eb60d5c1c60d8d733aa11ef57f8829899022b85125df5f720914fae24e8362a41b25abc13d7998db40314efc8a6434ef44c243aa16efb105ec9a926443e0ba1d260e880e9aac5a2e04ce2c80df867c0b21be997e73a98082fb5893b853a1edf4ceae6a571ed53a5d6859b40a36533c9c1b4d12a56edc3ede3006301a58997f6b9a68987ecaecbe845a2bb1e089ef4dc4de8c95fef569e62735d302bbcd58e546d540bc5d1210627bac4496cf936b8d16b7696c1a14b9eabac9492f8d8ad0f628dec2ac0882748b162380ac9759c6b8c208b2865a32d7c2b8986aeb0c7455fef6ded876263abba0eabe3f8455d27e38278956bf6a6b188296b22cf14447e5a7e1d4d9b60ee0223452d1b981196042d034bbbd6ad651882df42ba6ed41cbf398570ccbae85fffa68ffd6dd959c00db797f97ce473f767d94a5041e626bc7f52194837a19ace60aa4cac2bd03ed487d0d54f8f20ef434fc2ed42066f9d89f85a558684da1fd7c099f36b9e2a7da1fe8f9749cb5f59c55539a741b0fcec4421090bf5627511ab1858129289a6b19bb00b4af5dedd5731fcdff1a8ebfbf1e33705d46df4f8b779eb6e07a60d33be908ecc06ab1c60e38c4193df5bc20c3802b5e02668b89e08a747c26b23c8f4a9c1a892331b48e56f9c9af2f9c21332b7b6cd9d33224543e954fc039780ecddd4435f7853068a83d2bd3a6d7fb1cc8eacb7c69ca0c0b7772b7b487cb1ff52e255590fda75d8f99e8d1256eca5f805e6b9f9fd43bd69645f3c496fe8493ac9d07e83217eaf4d401e1a339fa82cb81b1b54495f7b1b95fa8a484ae7b108c840d51216c4acf016c164b7cf9e6a6c7d217ca605156a769deb8b535be3df9b744a1cd67ca4cc7aad6d33c57e6084074e3cd13734f18941d3ca62a9f487c1b11bf152963501fc9f3ad3ac5b653797e1d26b9ec4d79ecdbc72a013b56e3634b38daaf909ec394fc78af4ed2f14325ac3c0356f34e2b929a8daf371e3cad68ee7d28fd5826ad0c69583fec5d8fc8ebab122a8bd679bd4fc637ad9462c0e7066f22608ac39ee036df85f192be27a40f2eaa49b662334045a6aa0bc8abd31ff162f71a7c062c0bd2cb6de7713c41cbdfad76eec44ff2803f80e8194dc0113c1ffa44c5dffe2965a28067eeeadee97f79091599a74446b23851782e9dea24bc2a1b3e23540d591b8b7b68e35664a44adfb98643b17063f7ca9a7b13fee39eeda8da82cc2dde274229795a3f55744725185b9c2b9d81b9b38df2fc07b0b005611e1b8fa2250811c340475de7b11808ee19775b68226b166a964266a11859a7944d442ba4cc0e21102dab3bc3ad25d2b4b8eb9307a26e992972488380d264e9d51caadd38a63895292b142b68cf0a7e0e8c1e2061e84c4da5f4fb1e4a6fa356974210577afa870626894751e249782187d4b3d614e4cf43936d687c4578f50e5603bc627939952f89ffda56aca2926ab1f28fb05f7ba36b4ae91b42be796e06150db1add2030f23e0c34285319cb4e39fd4702aff4a4af513601c78994644c86c7c258c21a0a167fb302d4eab798f07d0330e966998b427634c3625c62ecf4c9c4a0676862e2075ca19639a42d8671a4f675cf46fd5ec05deb94980471dde483c42f1913df59112d33667553b148ef80a878276844fdd7f4e9879af71b799775c329dda271061a9ccb01a512be6a087448665e02fae55935fa7af38d53dfd86c3a9fefb12a71b3dbc93bacb8f3b05279e48168193de216cc8718cb6b568f897d03a1f311989d2f0cc2e7d7a961e6b315edd456937abdecdd7009bcc66ba9be304cceb55ae34039687b4ddf0b9e561b9551ed32086140f8649896ff93a32753e6a1910741ba8cc7fe2fbd1026752c4f9c0fb86573d8f613db028c64d618c887356a4b9b0cf67ef7f27a828cf3673147411cd02f46042d1a72ce0a1ca85ba35279f75a1e679a3a893ba227b6aae8aa37aa108d25804f8aca28f7b0334ba83ea56d9ef4e26f302caaae79998cad2bf037582d4c0817a89b9485b974fcdae5dda7510486646bcb1c64e36fe93da83431a0c279b477ba0a2148b5c2352da818ec4164f2197d1054f59dc5ae9d5a280fd1ce0482627de720e576eb4af9fd105e2ecbe88eff81be1751240b3786ecbd5c8d54c866111e77f0e0116c88a3209129ddc182db9979c72412e5c9c6fa89269bb0e73aa732b5dbff3cc7b46627312ce37de35efc5a2ea5ef0374900722c7dfeb4fee870ae198651d90fd4fdd65f16aed1a2656a2da2d047b8bb7e39c44686013f29de61922fcee8a9b15d5fc04e60dd81575c387748c763a6345d64c9313add11e817deb0f6d77ddd57ef6881c6019f961f8f8c9cbcf4768801fe0bc1b5a616a60fa1e36bbd8fc071905a0ecd878af9f49779faa6b2819445242b7b015579634b0ddd09294c6b9c070f13c011d4b0d322cb55f8041a91aeb40f4fe689f4aa4f791d31ab30b38204dc2d7bc78b146f7b6f5d27bcc32f2b3f02ebb3f8ec5e5e05654c47370649ae49a59524d6a054afeb44764c7e608a06ed9f14125dc0ba07e31b54c71f270030ce0c86108868951b8fb70fb2ce27d9f22672b40f75e4cd96b8f28417f9720ee08c403f886685fda03f7befc3a6adf67a37b495cf86662d0bee10ff33ca5e680692ab37eba45a9f01a2cc71d75716d5a5dcf44a5dca60a7be3a03b224179311a0586f1201046c518bd0e2936c3662a04b9b839915d70429f2ff7c3ce3a0898a65f4912269763349d6358cfb2beecd9c417de51b796edb52b22df68b1a2d79ec57b05c4c90f652ecffe20dc1eb28512a7ebb4813e5ee52c69cc20fa0be00b8accf3e2a319204ca1c6caea205f53b9954783e9bb1c9da16b3a142e4b61b89b22de93aa71faf2041a62fc14fde90ed661a2061d59eb469a5220737aeb71ec360349a121970eb9769b9ba0f114357cbb331945ba13128bb1ef21469d4dbe1ea7204f3640636b4346b98c88bb8ce05518bff7dcc1b6c438d131c27ed59a0052c80f54d7490fd98c2f8e4f4bce8d7fa428f9e6679fdb44f7f526fe3ff363f7f0725f1091e8a900f4855d71cd733c56ba58a0f9a8e6d8624fd149ff6fc271dd170397c8a5505911d2760239bdd36fee8979afa7d441f599a2e0f9840817afa7e0b760d7a2f39550b3f5dc56e459893e14ec16354b8fd6d7fce8973e6cd079d3e9229e0e9524fb3d48eddee6dbee1442f22e450ca5b8b52d7c1acd247af67dd1f2acdedaf793a0e9a1724534e71fabe2ab2797dee155a6ae401b405734bcffd899774e273be30a3909bf1722588d333fef9ff8a4f20a5913eda2a5b0dcd9830d7fc156da9a16b522b5c2af78c92eee2c90dcf612ef332996484461ab416fff36e416a857abf94cf6326606703740320b8f10f234834e41d033fd9eefd73516ed1736c355e3835669fbcabcd053b45756d112b1eb749c288ef4842a3bbbd5179c2c33bfae9da30b6a91b555b78699a343aff4607e0323ec00ae76df4ef2a62106dd3a1f03469fa4b68007162c32e1e5cc7607e54e3c68ae5bf840c3fb3f85d6c10a9c0b5b49ea2c1f7e9ef1d8f0cfbccec078fe4c9869a81e515fa319a19d9ec78d75b1f612c6d569bfdb6153dd3763a16fdb2565d8cfad81bfbe340ea01f2c48ee041c53727992bf49223f30fb3980d04955b8854b49a70cd0c0ab51e20160f0e7d75cd3de14e1a2e08f4a8ed15573a11409c0025101478a9fd6fd2dfc71779ef39cbe38a3c9f3fd95e336c64ebbc5e97f6e6baa906fd56d967baa6f21386be8c488b59a065af295a07ed1837c4c589e03410d622e91bc7a834a28797bb962e24eec510d616817e7ebf0f3b2d9283aeec04cf1c262e7938bddc9eff179766f96ee7547b0059f5fec460d6d7306164e9396f35fcee94545abc3271196944fce91e2465b3acd3a29203f89dfa49ca9a4292ce894684842b855f5f84631ef54b10a2bf72b6148bf9ca46d604273127903449535feef16616cd70147cec105d9e8d99fbe67720e3cb28b90512d0fcdfe7680b651521956e1ef53b51a5ac770835c0561640b0849d3a70e7ddb0bc431ab8d6b61214dfbfa8bbe7ad905f2eeddba317d9938fcbc7caf39b7e9af0ebed78f0a6f9b2aea1ccffc6421d99fd9d759af2fef939ba23d1088b7af38070305656d66bd13e5da7f027b9d50cdcaf27c59471096ace6b47f1a5b6f9ebdd5234d2988f7f5e2c15650230e5ec83dfc2ca2084690f50bd84d7dde9de6fc266bdf7ba3e6f396e483e6b1bc8ab805b0708fded766ffe08f6d4e62752726141d6feae5f8e018fceea4b133c08e83f704c20f67d51e59a0212e4fe50afcb659613737d3faf865340d43a7e35a4ed586211cb603ad41c21c233a4028a085d00ba1b457744e7961ba14c073bc5f00c32a7f77253422356083af2b505399ffd3c5ff075c00d05c99816eb79343d6cdbd3f589ff5371bf0c75ee10aedf8094a44c2a53c9fdd2a3517dfa28e8a5f8d78f929e61482728e8185adf38dabc8f22c3732c8a9da2ff5dcbd941f1c082c3af21b9c13d77063d2d461ab8b4fd5dc7dcd8dda57ea4d3822f783c505ddff345581566442250686041e371d3f73a3b0cff71d564543d6949048c506424d3d0105c519909ded3bb0319a44c8ecebb8169aa620394d53df59c86eae37961e3e1fc99ead4b20bdc0bf934a6df8a0de35ebf9814ec2bc48a9072acc12c304193ef3837b7a34ca6dc2486702358f9b180af6ce8dd470ac88db8e5107c22abbd32c6f0e73614541d8fac6fe5b0e80cc5f56412e15a801f0520bf7ad9d960ff89c49d37c208d8b649bd57c158f1d038a4d71bd3d69d08f3a79cd9f2714713deea9ad1c1dcd9082573b3fb8843b230e3a9bff569f94ad766774ee13fb1de48eb34fd7cc0c823efa9ba71719080a9b87abc73cd79d619e361c49431004adae42b91a45eadbf61dd74c024c1c144b244e59249eb84246108878e3cba9ed85f863b6dcc1a4b2344a99bf0ba76ee2b930a762ea4fc19d4d54b3aba38e8964eab1f0ad0e18d19f87efa9ee31f2c0906384f17fc168c9745e71c59d9e1bbd937e6ff7cd311a5bc58dfa270b175b05f4a6d22b81a2cbd3e4a3892d0ebe054dbe9a08f9238bfa2e5e537914517c8f066dc0400b926ce6cd93cca28b701857033f64a37d2dd6fa09b4d59d9b23dc2468c63c63cb9c9bbd689f05b47a7512de5dd2b41ad5c5ca8d5a7518a808de04c04ad95e31ba9c7cf8e7c5da478568785274e7e829b9e73312a336d308f6f13aa5e4ab35b929f4b44aab4c4a1bd54d9fc1175c52eaa11b7fb6a998a24d04c0d112d604257039fa7c19afbeb26bb17ff67a2d98788cd72d9e4ce1dd7f295ed995e04e61195e02a2875cbc93652b5c4baa7c81708c7988136e7b6cd9d1941277207d16627c190319ac85aa511421098c680ef32631e2ca748a6b8cbec004b3bd80c8d6f7e4b007dcbeb18462b7e234fb2aafba3b522a61d80a66d376fc206a17f39be49c673e5cc7530f7c553ca30bd25446ab474a519ecc5097c43d375f870a67c35ad613ec3bf2b9836e36cb58e0f347f8b8d0a2b8cfe5917a06d773f467404d990b73b856ad5dccfcec644dcc67eab7b326b2ac17495970b20b68921606c90f6786c71945b053bc2ca286633fd01b9b809ba976b24cb75dc157b8c72ca3a1b4a1f83de8683e70d5a3864e69850c0e1a797cc2cbd3c432d56013c6eaed0c9b50c00e143df16d448ed0e71aa13f54ee21474137dca92a50aaa0ab7e380dadbe23976f6971fc677de3da2f7291f1a4de9e93a4c1aaea6b48749a9c6be59879a42c4a82369dae7b8a6fe4740c6e4b1980ce663e01cbe7a8b689dffa9f0a5fa53a88776985b49ed146df0b3ba8cfcd53e0c318f2f167a24a0956dfdd1a8e715d6ea4a4e50f0fbcf2f50bad09e88536ba29e8e43fa465fd2201dfb6ab929bf2ce242edad9ec6617e86bad1a78ae2a1cecc28eb5792b8f3d7b02dd43e32f87600814dd82c1a0c8c8ab052507c90e63294d63bd857dfb181e49351bb2800d968c43d37e757af8a4ae4308519b3315e2a19c0ddb5174141434e4ae9d8d649e3c4a4dc82633f5fc04e278bc69037d2ba2b9edfc590890c1e09be0805805928f8bcce77cf670a6602f3e24fd420a76df469ac723153c65a33dce3f1567a4b6ea3faab9389553c1eb33bd6b2ffb71a5e9bfd6e2e58256ef6e54d1b74d2471407e8b40407b72ee77ce43251ee591e943a5555d88377e73d9e5ca03205672ecb8c441e5917c8b01f62497d0e1a5033ff6cac7f99b54149d4847f54db97a4a1e555ae23f9607adfc41b0496f6173fe1bb64171f9b96a6539fa31616efdb3e969ed255add1098bc46d8f7e3e45ade2fefb272764490aa788d29a9e5aa74baec6ba09f7316827abad5e8af573a7575fbb8b7bb5a65595ea1ac203484ac4c00b9759cd038289de478de774fa9cdb83c43adacc244aeaa68e24f50418eca412b2e1f0c8687087a42cd74504432af9d7e9e3dd16c3771e67005edad6e7c2c4e5602efa2f11a7c099257ceb526590929095070bf94bbe6333668b211fe8c05ddbc2e2c344defe42889390a8bd5935d25cc628024c67a7bb247778dd90150dfd40f404d1823faf3489da01d68e4ce2496ffd82670299295f0fe1538993e4e13aed21811cee1811588bacaa7161d5b4b549eb41cf71223777484644dccb8f002c9881f5306a5ee5069e3b7f8927c50a6dd63244149886ae2971c57f65dc3773352fc457c5028124321c638d721a931ece063b1b6c8acf8c5999be1e03f9d8b193777b1cecef71f09d3bc3f0218c6c5214c9360ea15eecdc0d89b5e49af6813564063ce97d73e05fb3ccec5e32cec06f72ba07b9164aa7426379127988130ef292b533f5c7745ebeb2d6e6f8caaa9f219f3780b6fd1ca4243a6993320afd37640537b61ca47645f2a2901ee0503a278f84b1e5de4aa356d9502a60ee882ee05033e06b55d1aa7c9b8b376fd1b71e6eff4ec4d90f7b3939aa8b8b996d7d2823e39285d8e5da94b263797b1b66c083b7b1ad13cb6b6c8c2da6f01db373d683e6e6fe35a3a60435f65ae93a698a8a3ebbfee1c03944dad9ea2a7f03d2e47305d775b3858b89bdaa5de141f104d7c2b2527aa34cd5e474eb997bf259825ac4d2c7629f9eff501ee606a7fc0922a8264da9028f6c9b6ca3d544dac7728528204dff59d4f9af59c838313d6c62f03077fbf68a39791e2b106abf725b189c43b0d0174236ea66d30a670f618385126e19c220e50c42b1b915ce112d13420207c8bd0f554b7150163ba74d05af5d96492d2667b2fb20a0e3a7cb14e8958afab9637fa59beb164b5b7948c699f55465be870a63ab2da737a0836eee9ab411580eb2d194fd17fef1f7789485a841aeb3ddb6063cb2594cb3f7e6221d28c80e4197cca5d136c15b372c21c9f6e6c8b6cc399928fe7731315b13b5fcb71bd380af4aed020e344db2fc9829fe266c6399ce0f2b43e026c576b5126ce4b5ad07722629ef1f3a4c1f070b280fe32039b75bc9757aad0d194aab5a67e3ebce6fe5aa06f2e173d6f1af503ec09f4594ea28771cbd9a1a14c4b2718ce2fd147c3b8cd60d8613fc6385cbe844d4d9603b33f814aa8bd36bbde2d19a0cca46fb06cb314b5665a67d8cf23ec2c30a2f317bd5098b0c81b6c311b42efac2d340f0f0e2b5019a4b4261d09c8832d0e54e59c643fa9a907201340846f6686106fe96e3f0f0bd66cb08c2a35cbe4ef811cff00f1315bbfb920e121ec2533b0ba0f422e9a5ad55af177ab51f2958976cf935ef36182571434ff278f7d7158047aa34f988791280f60681f31c225e1cda6f59bbb0a154f777960387a9cc47eb88218341da731281c697dee314301e99855956357551003a83558ce1426a4a604a1c11d198bdb344ce8b246ea5e4292603e006df65e3c30abc6bc8ba4c1799864cd57767188056773e60199fa2defa3c09ec1edc0da9303ef5be61891ffa1236dc49bcda391a58b810a7dddd6be5cf787b771a4c94c7a6e280002f1395826328421ec4e902644012eab487b134e622a0319322cb4ebe980f91b140fb52d30a9b2620cceed4ea06ebf799c424e19432f86c970b37f5b5380772853aefbe2ebc41aa78d2b410eed8bd981e6d02540510fd0eaa4f567ba693bbafef89a5e3dcc903566ff35b1fa70d28a1d3c393a6563cb3f69aeafa21ac1ff31d8f576bc4e3e23e785a67144c9907a248df8adbaaee3cd647725ea3a7ef9e66f5113e076913a930f13dde66764cf87f828bcd7c1e35c1ea5843a503e30873162a3978f07a61f92057d182a4e2ea12e79e75a3ad5c700bbe9b6c856e853da47a488ca608c4b353fe1e8ce805bb738af53f5a70f81ca6d6e80dc8e8ded5b6b4aa2b8f55db1002a2d541f7e3f575e84f0923e478713f767a6970c7189fd6631fa3854e065cc248243ee05178fe8f0415a044c3cab35604fa26a37fbe5374db3df710874a5ae267a806cf5fa597009a3fe673099e38feb57b60e6500091797c6cfefcfbb867bd32dbc512c1199518030d2cecf3d7db08fd7f165f0d39eec6b31b241b7261f2c9dad71cbee6c8ba0ca50ec800038e6b1290a2b4a45634ba30c271f316da179178f0ecd1aa0c4cf0190305041e202305e4968605c8ebbc6225ccf705825ffda11baff4ea472bda6dd62af0b4dee504ac0f27d2d167d4687bacfad74e9a2f29e9742cb2541851de07113fb25de411037f275aa583a5d69b08d6c3c503a9acac9e44e7f55653dabf8c773a1694b2b6c408381adf36bf8eaa6ff5874ddfca26e7cbc724fa4050d0d500c2e2176599715c8e6db5b3ca494ac78b9e1a634ba4474f19777e7452168ef5dfff55a456baa37c7ed82f00aeded59ea95a10f94e7ea18196cb790fb095d04b6c846f8a74c112c2c93b26dce0f4dc35e302e45eee7c0ecc95eb1aaebe608cb7e7f2b5a23b12a824adb145535362019565659264918f1ff0729a7f54b221b77bb9d500537ca03d9b7d3b5047e8734321a501ca67ffed171dafd5f941e8adc1d8b2814f6af9a364f496d828df87cb27efe99d32b2c7e75106e327fae48f6599649d65f6f1b3d66ad3fe4fba6759ade3387b189312f82a87830c583a26af92a6440825fd615c398ede443aae2c034e94a960a1b75653323398310300149aad9e92dd38f6abb0e454a90753d8c5b77e9a95e3a28d1301e0c4dc2c6676d88cf95cb2d7847adab7bbe01c6a8ea84a008eaf539822f765553dc163ba9b032436d61a208ff1b49e4cb739ab7fcc1529f07bbdbc319d94539b5ccedff0a3228c7c4845e46d92a0694c95bcb6abd838d5ca29a77bd8a3866452f601375bab0fa4465513912fca5e4ef07997ebeee14c6c3d1e8488582449903db2ac5207db788d0c7c60882dc1ecf870d3b03bfd8401eaed819bd3d29f8610aadc9c2ddcd7047bc0f67eb3e9713bcbbfed046463bf63341d025ed3f5a65c9dee1448ec60beac2f2cb7e8af0be259bc797e43fe6e6e084023d265d42651408c4c34b0d6bb3f1fc7b124e290e7ec503b710c4f18765ed98afd84e08cb675a594a817a5ef283f4d5dbe3643fa51b3539359b5a15eabf63f44bc62df1b15097bea0ff0e13fcca6b410b1a4f42672ae434207462e5dbbaf3394cdb2b4932a13243b6e35ba8db1c24e3f8b4e50a537f6acb81b8c0db20f29e5fa106a239c727ebbb6ae75b7ffb8adc8c51a3acad08c38129cc639b047c4e1ea04f26e4e567233b0625ba6de9200a9efbe3016f20b777bb9de75cb141b84cebdb98a768365cebc9439f6e5afe4e32f82cb0121a7541866b8226377cf53568a0559975c12c0d3503a533162ffcd655f37964475062c0a728ee8a33d2af23110f4a39873c42a9ce39ecb9dfda471d948a39d2dde8d0b436736427ec5856b3df813aaaa040c5fc0e0bdf459dc9f4f4cdf462247e61ab681fa5691a612258a050d5a1f8152b8b47e5fb7e01190470c792b87cbcf3c681a8737ab193b8abe333ec87f8f0f92e4d7e9a65a0f447e51331f589953b47bc82d4d9b8ad734f523ae83f9da7c6724a336e257f7f22dad54dbfc9e46a9e19fa6282a945a3583418bcca31c9c2153d3e0448c3db97ab8a93bf6599dab8db437017334552980db9514f9004e85d313f7fdd002b475457dcd8bd4a937ce6bb174f5d6fbaf2502a8dace3042f7fc59b9a67ffde95174582dfd70c2f170e7757c455b19356d96e9fd6cbc2969af8eda75e347f1bbd67f0f30d0c44159402435fc0624f4045243166e706eb118ab204036868b3646eed05d4f4f3bd79313ed9b9537e56ab60ca6d48676bbf4a9ad859944f12af8d19fe7d2d2ab78aecde81522ea7acd3a1ab2d7be1d807e2b93a864d003f2739d1f1ec017d285910dee7f6968ccd8b5cb4b1e8aa2e9c190d668a3d8ac75f6614f6902c60a75f9be9c92f1898b98875830ece349e4f8ca1ce8fb63ac8e3995305c28e03e3c3843b609681bc008535edc2bfffe51562086c6073ff43ef1c2778ce4f9ef84ba46f9eb50479241bf42be4228f87a20f7349f1f2e15f8d0320aaeac65190244ad5d9fb3388f3b74518ff067457f91a015d36646619f78056c57b40a0cc1e1a67cf3a880e6569c5065b57b55299c1eb87478e7788dddfe18ff4dfe56a522fb57696ce9436b0c1bacb7b11d070c36c37bda191f019df0b674d2d014cd9766224b24661f806045c7ede801b5425ba69d3d3083fc05fb1a8969caba9b06a06d92a8c98fe5e46c9fffe6222501e94472a8d1141d0fd177125a811ba4e9734e00459811c3ec65cb8cb8c883c0f4e3f49a54529fd1f29c99e7872335c23b84ae284fcc27b3c11b7cf6148e22d2861c77acad1a48bffff37aa842bc1ff6247d012d35a72a45084358f6d5607dbebd807c1f2cf29e2ce3b8cf01023a55b4ca1cfc8c6ef8059867cec51cfe71b353ae0911cea095b9aace95e2198d44eb19c864b8b3849c287705d44e241985de521c6173976a014d193d3623a1bf406e7616e43cf20d8cf462e40cf245e7bda65d2a2fa0f569f50b55222724f8ba980b6b31c9725fefa7f8f22200be38f7187e7a33e2770e914a5fc860a97cbd72db02b1d91b57479629009653d01d671f49c02700a7e7e7c20c0b3fbc32818a12111d518ad3c19143063f8699a806128202f3da59213b2423d15b5645d9dac71b64168286aced4986957226e380fb12552602c178ce06f8861fcfda37b5d11df681530c1c3d03dff2fc74409ab8a50070809162f9f9301716736d01cf17516b9a1678e2f80b42da207ed9ec2ab3ed12e9118afe87ec8738f147b26a7126c3df0ba318e801b9af2a2d01a3f6e117fb67c1be52c183294c7af0225d8fd3c5010e0cb5337545f64d6656dbc015b3466948f899c699d059d248ac381d9ad46360321fab918f41a92d6d8c85741758d7e03b6615f65160616f62938e327e39d14b1526db3e5eb4432dcb3ebb921dc3ac793fe99cbca02c4b63e49dd3c363836a15a79292c534b54f0a8ac0afb47a38948ce2c3635a8cbfe030d0686347e883fd53032720102800931618687810d9ea572ddb93821f9f94952edac3cffb476c49c3fd5c2269cc6a70bf85c5f54e392f00d311183104a646d5eab490fe6e396d2facb572b3f372ef0457731d47678feb3a85fb65645d17c599024fa860cd40bd3d25497f4c1ca451bbc167862c3e7a842f51fb5be93bca5fb4994466e39346ab56f3e30a4b6e3454298d9767f7fe911fdd5eface76a46015e00867b1ef081a29241c7c6c8ef65824986fffb8d2d7b8eee4cabb78a59a9fb4da685da57a3259bb0cacd8f314f519998794ff1bbd049f1b4569c10347ce271a6d223bf214b81734964f78de1217bcc3d209bf9aa87a189bc4e4dd4fa232b6f931484fc17dac4eeb2bae02086744647384324437a0f0de2ed4305b6c72f275f67b40e5b6901eeea2d1af31bffdff501784b8daf3c456eacf892b83a27a373019309352fca45894dbbb24118d00c18d1fe97194a888377ab80a6242d1502ff36af4ff112262ab249168a10dfed61dc7769243d296f8f91ba043ad2f1f617f7a358492244535c7e106a78334d48491b28f4abfba2c8cdcb6ffe1083c91817d5714a8973d22bdcde67fc6c6c7a6d3e3d2ba89bab59e0f2b8a9e6b20b81220b71a524d984f7573d82200a9333382a5ba8fc9e8e62f39eae997e5cd11e271855784c38d68defda39cc4f465aa0023e69f005ea46190bbd224b61d7412417d8182e3c3be48d4efc3f8797f3b5ae89cf57d82bf6aaee633000a4e2d1ab9d5efd1d7dbee63fd739bec09a7bfaac8b53eb09a10b244f807531dfbb9d21fe43f5562eb152094b73344fd00801a3b5fbb8f5f212c83b2e24a8431633d53004984ffab43856bb6aed8e592957da2daadf985dedcb9b33bfdef9fef87ed7f40771bfa98845654161d93d0359017c18a8e71b1213f493243eba4a54fc0d5eb86257cba37c1b95645fe15502c6d180b100deaf4ac9c16b553daa548856a17c7a94c4f4cd6fecd19326d276c794cfb28711253a6d17f0259314fd9fb67fa79309c522bbe07a919f75c42c5da94b0c33fcd11f51ad2116ca5f895cb9b173b9cd41aed6783c97416fe3c382c25254520bccc695f81354e1e2537cd12dacbe27c798c265659463b75c4eb7fa0904472939e9b4923befe35867a7e7537d1f9f9fd1e8491a4c7950e8d86c76f3b9065b2d861b01478cfb037a719dc6db082343b9b75b8ba989eeab0d23f23cbbc8b29577cdbb8a57b124d1f4e06c8b6bb501c855759d8c5a444c74d11c63a42e2e952aa3f4a24f75ec9017edc38e8c6c7d3fac0d83e5b86c444388802ba35d39dd025d4e4a76a7d70d2d56facd8c952ad1c710e4bbf3885276a3353d0d65d606509e5b3e578caa44673a59247070d566e382eedba619a08c59b9b303eaa8146d646470bad9acc194ba28bc35d59274fca728b3bf4928e8331a4e7a11b854f0fa3bd5a82b93556a6e02f84bd1d74b3531d8a071b2e5573712296b1c9a0b4f40772316416e74531a352691d56848cb41a02cfc6a5b290bf70fff49ceb73287cdb1a128f91fbb317a65fae6adcf4909c7273f85a6e64a415a63aa162bd0bb580c1a5c50a967d64bd8136c10dceb4d252c57d7061d6ad492697cfdace656592f5c4dc704424857327745eff362a4821367213523d668662ef0f8e5f793dc35746200302ad1c96deef9f17b0dfa885eb7e9907c022e68e7b2295a963452b96ad40c9dcdf89a207cfe26c51eff24599f3a16d0c59594da322fb6f68eda8a86722ed0fc597da71ef805e87f802cbc4780825e4894a4f3e801520fc286ee88f35f1bc4da7daf4749145281bd03608d3c5de5959e10ada252910b12fdfc26cc902a638c05a88ea0c563dcbda90efaf02d109d56c736557c9414caa22668de992a6f1df41ce9cf84723fafd00d9b2b580109603198caa74e2941da69cae77f650ea68de406c1d38990140fca4b733c35f9701507b3b7df640352527c21cb7044379045db044da6c3005e755124fa04972f4e3277c3f2b2d647a9206a448cd6fd1f7d3219c04df4fdef5e9b5e64a084dc90a879ac1580777d72234bf7858fdf9231b960803c6f33d112c13882e007d33b51cfd9876c0128cde5712d80fab5dc4105e7626996a8bb904c5d2d57b2d9929a253c2d040c1b141ed0cea579e0989ba93c9689545c2fae62a342378f5635b35b4a30c24f2e49cdbe8a9838ddc12c185790c2d6386ad9e88b614849970b07d9b05b05f5e60729eefaae9e4e53f42a76d26c7536e65cb2d884b8fe0f7e35d9886a4b240f869220d38fb159d3c24526019565ddf5e8792e869be74d3b8ece1edcf76881c5bf89156bb42612fdc89f81c7e339cc82f984e9cf129e5c7c494122b12f21496365aeb15c09bb195104466f995d3f2fe2d9f1b9e20ed7e1c9b0ed2bd3616479035d24926bfdfa49f1cb4a410a88d8dbae1cb03185bbd9a6879bb06d35dd474e95021b7422854d6fd53fb4c88d12a81f8b3e75a8552fcccd4d15a9ffef8fc2400ad069a1a048e58ff2c600a1ecc5b0843c74e2933a6ad52fc8707c87663f91596fde79f74c0c835d0b2c1010cefa843b09b9015bf65a229f31c6ea41a98f1d5fbfe938e56aa442b330ce5003bceb1727dc2c7a0c73f2cf81d62c98d1216316052e54f6a6e808fd515c88f43e12f639eb334e553645e562c5687b7fedd5aec83e43fdbbd10e05c2462af71f18522bed33bb210bd5cf5d582d6bbd0781a1b490b9d311ead1f97c5a406ddb53e1df922fe18dc596504cde2b9d1e2a9ca5bfff598f421669bcb61fe5803f0463c8b561b109d332c07f80016837fe9b919fc26661cf9f9573ba24f6d30ff1d072e33c3d0c8ebd34b13d087db08705c840402878ee8820925d308a42e30e6bf8c8c9a3e8a02a9094dec0cc8bf1f0c357c79d55cb04dbc3bf3cc2d32d1627f88ef533d126e40cbaa2b1edeebf195d69fac69673d26a02e8f19efac6fa8ebb3ca964a0b4c04c14fc769ca1b582f9ccc0f29cc04708500260fef212855ed78eefcd221393112384f5da0b0630336727e75cd9ac91c5e10f86edcce6572a73665da18f4ba142fc4cca6fecfabf39bad6ee0e87f1d989a1234630f9e7cf370317ba46ddb21f313855b1de2506a2bc98e636469446942f9de76e14faf594890179ecc25e7138629ba08d1541ab4fd7967bf5525a6c31bb77de7a2dd6f5d1c44517f71093d58bacce346fab6bde0fb19068423d4aca63c46314db5f99bb663325b0066cb0f1368a2cbdc3abad9d0f773580414a129c0bf9b5ac27d87992ae20420a531a4a7904091467c82e8b3381e257c4a36146f14c337deae51bf4eb27addee43530d8e4d3e11a09a4ca95d0968b061722097dd5aa8f872dc736c661523ee43ac6730a1e406d0e818fd21f0f928177d4f0050f0208216faf440ceea16cb19e76c7ebdd89a55639491d7ab59d359ae4763e19da6e54a88c48a02e000344ccf334681297d0f43c4303f5caab06b0f76f5242fadcc66142ed3774eb086f783cf1c675ea92abd2841ee5947d5a0196d74d21935974abd55091c3fdec727402317de526dcac2a0a681d44ca85e3e18eaf22484489cb79c063978218dd10fb9930071a07fa66404a33a12ac5fc0ef274f8edbe33aed499a3c0b96dee6ea5d8dfa2ab6aadb7b93b5d72f1c067c854afe6d3564ca8cf8aef4e275b4abecb17193cdcd64bc4a320111d3edfd1b076fc2d5fc6e5b988f75bac6606860712129208df06fc95aeadd111f9b151ba531b115184107363e48c2c7bfca056e18f784039da7cec6b698788595f90bad91121958c5ab45fa74d7e32bf0d9516c660d6024acf8641b5fefc4815342a9d0e7863ceaf8203d6157d6e04d7669f57ee78014503bea226d34502c0371d809f4a0285bf197c76f43835660f932d2758f2725253dd07132ce3d85523a26d11aa39a6da617df547ddabdf9c3d7f4899fa8dce480e806904f1517f09e8e209f60185e3ef39093ed17357138f06c40af97b584a946be477254e45691560d27cdc3b1ee5229535db67f7e047614d19a4d2f914a845c1798d05398c21bf8ddb581d3cd19a3a4963787d2a118dd5f17f449584c01ed667009c23ce261e99a9c167d21e0dc177e9f20efe8b08ce3dacb92fe88cf1626fe2a6b699041e06d6517ca30c008c6f3962902c7e1f14d157e68f674e6e96ef545fbcf29620000fb95374f673a3e9e12a01dc853fd0547f8e50bea33181469ab56604e0cd9e765447ead950e6d6c831c346356663ce102b75bba395d240e89be6b60b5b86032b9797ff156ff85ff0b1894ae748403a9ab096607ec70bdcbc627608b8304b3451e850d8e2a643985f3c3fe2b5249e6e287a78dcf452ab770e4a9b21e4a616f86ebead467646a15e93959b5684bc17d524793bd92a2cb6314738da7a870a7ef36d8adbbd804104c7ef41cd7a96baebaef7805a1ea9905c14da338875c609cac1dbdc10bed5fdbb181d715329e778dc7b1a60c53bb72f5e098b9baa65847695edfa4fc6b10a7d8275f2bea38956ded2111b55d2f406b4cf516f68c680d817c35f038b57c71ed8707055b4b7268cdf932fc416fc15567ee6cf837ecbb363a25d03835932391c815af45c2021183d8e8d8c21d07160bbb25d1483944fbe6df99f1e11c901207e29369ca695a67707b585ca7c18d42eb0078f0163184c6acb9b14a9e9f7f86c327b89b01bd96dda91999ab51b4344970e0ffd15185f44dbf3fed0c6fe81cc657f021d10fbd2ee77baf5a1f89ae166b77bf4728f57c4d2455898a010b21c23e3529bd81df6b16960a9623a7b32b093925a481a5fc95f3a775a71fded9e9f903760e0431dd66ffb29ff11e320f392204e19e8cfa16b0995136c23a354ba000cdf30b947d86b1115b3abf56d4a98642d6e6bef66f36bbd9761a61e2dc5cfbcf443fd9d469643a6f9a0f3c02e4058a378e02d59da45ee180a68b0fa77ff12b89d47be28326931b2d8715832bba2cc08715573fd53c11cf3da33db5877ad8789998a66a4b4a795297cfe9d544116e935e69bd46a8b6b423c989056996560cd585596143790ded1f7faf2edcd4519cccf1841a3a780e9d66776040e1859cd5ca679cae864a7e850f39b94c53cee11df9cb31c2118356e72edf15e9bc17884892cc29cbbe394adcd0e99abb42fe1b8f68a19d0275dcefa2d60583966052163be1782710236cfcba72152d4ccbbc80792cd054bc10d01ebb0dada40313b00d6c94f7ad3265c90959f3cd8546f714fa29ee40bf56bc3455743f6b540123202c41e19b955ab13bd957bd7b28f5dc37eedc1c232d2b67c13037fffd6532cf9a8b87c5604b3899cdcc04e1be959824311e85bc015ada411aed7bb7f33b021e8191cda993e9926643eedbfc914d653701aa7673ac6ff07834bae16710dc8ab01ccf770cd05ac102d3cd1e8e718269cb210dd5c0c8c5b8b74fdefb864b004d285f16dd6380de33e9d1809ba96b47c20b523e3640880ab306966aafcdd3a12c439800574b40c853c8b66ce4fff4e99a161421a5b516b99a084792a75d9290531e0446adf6e7a67b7561d0a2897fad9cfadca72e67124aac4856d38a0f877da9f0ff634bea473fae4c8187bbe0be8c01cac48e9bd1c698fb0261b6718b6da70dbd85882f47cb61c106a76f69faf22afa5a2ae9d33b8a30cc7e0d0e84e1a536e2dd9eba7338cdfb08ea42b89020d6f050a66a533bfd64eb98fd8bb057364d848e80322b328f51487eb105e8f8f9b2ddc087f04e2c490df04c409894177c876d17b541bcfe7855ed09abe7b9047d973953541a416cdff02e0e37688eed3bf8a500a8fafd53711b45ccab386cb3318dacbfbeebc5e964e0126d53c990fce22d4cfbb920d57996a54c86a8e1e80e8213a5555a255953c16e6c772eae4b0a62432cfa1097ddafbcde89242c13228a239cc70b5c5f6e2d97bcaa8a4e07e01481cbca8fe845e1532647c195a97847071105b1ab48c6e2a8d3534adfa02fcb82927655e9b293c40a203f26eab068281103df185ca52a00b3ebd593ce81988d3d6f0309ba6cb77dcc0ced723fe6e0582e132b408d30a965f95e1e54f047e929718d7ce84671ad537ae9253d30e4de04bd5bc94a3f9691987ced8eba08d84dad0c4811e5e8bb9bfef73adf1627cde6e2bc2b20d9947e1ebf322880f51692ac96e43fba1c15fae8c0724559284c0f22d6fb11a599f7e63df8d132daa19fba61d29dd547ef0aaba372a55737a4aaa955566566cef295ae74468198c75e9160f039c5a7a579a07b3974fc3a95b8d562ef3fc479a40d48d3952e32e073a8284584aa8a65f203eb9758aaa3dae9affa755d5c0926e7244b858d6e3808e3acce2fbdcb0758a06528609d65299b258e1f0096ad2698a0906d69637203da74bdea23a8e02294a0a4449110cfabcdcd0161dfd9d45abd9a75141f446412622f84d075800022a10653ab9b831f1c0aa850b0c1fc9afa5597bb66f329b4eb583cef8074f76ebfef8022b9e91d39966feb9ce8158abc383ee3bba4026c73e4b415d795476f0ce31fa3d7d355c3a05108dce2a7fe3b50c26b45c6b63d761d3a5ac8447c246c72e0230b341c35faaec03a5f099a6587ee3bbff716b4f890903a23d90c7ef6169601f1197539f609dac634539b98b68a1344a01e498cf417a0327d82c67adc3ff02e60f96d1dfd58e338f11ab0bbbf9a705c9ca6bb1c36831e5f3ce70306e579d70a456bd652eb7e8df358888db8c2d72920cf0bdc79f1c401af3a0906e84484be58d8921179d76a7ec6878691702882878c02a4b0266af129f1995c91aa6509e43731cdd71d16f059ef75b7821b29d61af10306245283dec7f9dc11368cfed6469610a575e26df70bbd4828cd402b0ea71cf3f03ed1b3c4b444ccdbe2fdc5ae4232a6f463cc1ba2b47265dcdd21028de9e7f92911e981d981dae542768e2e06be99007e744b7cd489210db588a912c5040c3d15088ba596dbd14ac63c5f79a0f80e5733459c1a77d0d8ccd86a18344cf307d73e27a35681590c81e550780eccac24a523fcfe382ead813a680aee27bc2c98e48c9b53379a871105ea216d41e98f0004fb286dc50daf8e6822b423ef7f3e9bef9b876051ba5fa2c8d47b891438905792567620111df0298e2897750e96450eb2db70e68132417ed0266a5f6573607b1db38a52058f47933863550652fbe0e0733e66becf9731343b7aac1bee6f9caf966cf5e532652f662d6bf67613dd4696e9c815d95843461143a26ec4c83d7640857d2bd0dc01ed77aad32fd5ff47d2df5625af158738cbf70f7430f446a82a4d98a2cf86ccb12f3f23ac41f3aeeb95a697222d2527d59a53e6dff12588e02bfa0a0623f58b8354adee9d98dcac66d2703aacb62c26d170ad4286eae761e5a6514c7ea19449c8d8c5326aea0e81bd2603e3699c9d617f20ebdd15e4e0b03f7dc5f83f6e5d72029038475b0c0b259a0ca9bc9d4ae69accc46775febad83304303624a1efb3298b275037f16d0641aa0da2b49a68105431bf6071f12b7f056a29f38ba846becb6f2afb12104ad5ca6d857e14cbe1658c4a5f2cd2c9d3751985d85e39b8cfefde5dc9cd8500961a4c5a656c3435f215b5fc431c981b5343c505b5bb1a92648ae7a24df9357354df884fb5bd7ed3fbc35d67ec053a04b648e9cb7f3194194514121dfefa009d98806f8df1c24b4992e87ac51259057436b37ebf0c0f6ae853441fb08d1341c76d75ea3f0858555c3b07d5da1e572c00b5cbc3858997a64bd2e965f19cbdec8b462e8e7758cf06374dbc90efe0936d935f7dadd4024eb8b2961b35cecc9c6b29c78c29c30750b01fadb1cc1db66082fdcf56f5cf49ff7cdd3abc41161442c5a7a00a142308a9cd2b7ef9e7b1c93640c5b0accb0ec6b579e769026789429a65b409f650cfef417ff51481915fc2817e98356c9c0d904e9333ba06a54a3dfce6acb9ab0ee0b9775f7c4df8f6b5a1b3147ace7917859caeff8fe73b047bb2023f089bfbc478c1a3703619785679689af4402d1bb9204ecd52d1140ab6d0798c5c2d4d8d326c9b0e866f5c58693bf23c486723de2519d6b3560d79121d686ae8cafc7f917042cf4e4187e253e1875c3e331bac46a14f015eef861d694f614f8a1960e75959ba9bb13d06122f6d7bd21d25b0c91c8a233a3995ea048b3caf43b500d387f7a4e2585e0b4718ea0a774d0cd1f9e28abc4760ab607d29bb5d2499f7144eda0a3978ecf13840735821bf77105f60dcfbbf9c46b67de588598de400686fa6f5fbe4d39902e14bdf76ea0b697f52160d1676b17f166ef4515057bbb3205f22cf43669f9c1b5f7be3719b1ed8eced746179364b49787c07e346adca5b6236d9de3cd4021a3a4acae86bc1bfaf42c312182d5b8cc3c3aeff3cd872f40545321f7aa49b356ce9f583788ad4422d95c61bb3f5b9d708178dfc6d67d531e6463d345cb8ae9c19dda34aa011bd4c01447d01f2459d3a23b00cf72bab335754e952cec018232a468c3373bac00fc0657aafc3294127447108bde730d622d6a2ccebcc4ec634c8d6cd28711204ec62523dfbbf460d296613e60abc7ef80c88085a136d2f387fb1acdeb26de960a86f099e6d9b2e926f1c4e6cc996227a151036337d0460bc66fc85689b1b695bbe0b20a53ddcee0ff765cb35d41c7fc7e4da69679fafc442be08341efb44cbbcb9c5ecf6891cabd6b545c2128edba6f07a1e5bbd7cc54eadbc1af79901715ee7082617b4e3143418e6d5a0b30488c6df317267e7b048896a5b30cd2b7f52d144d431a2599a0d2041e6ccc55a6f54b459137654bd7ad0083702718a718a7e1fe8b86d0105b46bb63041a5ed42c2efd2bc66cd29af61f193343272e53c13d2eb0f1630b1e3e0fb4cb109f4c21eaea58b5fdcee6196d0d9f340736796d78925085ae505fb6f049fda962a05f4bdf75e781fefa8a7dd5f1772ca86b9447e73cba9b60f46cab291b09cc016e492831dd1fb8c5e3393eda8d0171d2e05e7f16fa0734a2dad8aa883958ec0ffd174ea834191576cb47dd460b9aa352fab14a07528ff1102b00c303aadeefc6831d2d3f5499df407bd9e488e640485be42b7b779266f338d90e642aff784d6aaf1b5c980ffeb8b518f96f732fed1144d10245d6a893fbb880b509efe37fcd44166844d8d6ba1517b2377c666c604141536040d19607a59714c82c4899bcb722bb31b92b82a053ac2484fa54965523bdfdb5d9defdd7bc7eca94f41de94cd2f7ac5abbd8adf9952f253a3a76fbe07c3e4e6c930ac3b4a656a16fbf26ff3c9ebe8716cd1361ce1268a6d507840366420ef3f5fe209c35f78fe6fc739c3693073ac4cf38a5517e67b517327ee2ff166502280b2a401461d9d2d401a316e29a7dfeb4862e4104403635769d3f300e82a7fa681c3301231dc341e3e9f532917fa20925aee1a60429af1e21b4aa491ee1148f836ed226cc26c3f97067703c98c102ec67539c0497e1eca3846b741411c31fee877e823cc99a02e1b5c0895e0ae255a0425b2d3e34d3dc8ca33547bc2c6654971edebf03335c7b5792b825f7b911802d46346fc191611ac555e3ca78e33ff7948412a73f1cbc639cb6046d595695db37bbb6d0e4ba92539fa0297dfbc7f58c52a62bff5724783e7f80f7692299edc4a35452528012e7f393a4b66afceacc36801358e867f3b1a82441f66afd29e079ff269b5e7c22adf1ffddb3f1342b75d85dc521818df521910655c56ce156a831a66f8b2739d8f5fb7c4fb5076abbe7acf3e5438aa87739f3afcdda09a764bf42273ee0477499f9801c98328643252ba47df86555da05ba3c610daeb27e1c24a9bf92200e989d7b7c2cc0570900369816b27b3176735c1737a7af4ec50b6bf7681c1febf410f9f083706259c8b05d44e89252caaafd85b7d3a6f49309631c179e1388e14c23d2b76880cf3c504df59ed581c252109a83df17e963373298ffd22905259e02725803b93acbcf7980081a9574e3d260a6712c23177dd122392ea4402eae9fe88000f339eaec8048ba2d575f1fb6080300c4d1a2c75a5fc1ff4012a80d5fc92fcf2a36277d14200d3d524ee5d575a894cee80b078791a8ac5c0dc02a93b2c8399c34bee95c64c78b3e3004c75a1d9e04dfd16f6134694ff2c63767bf7994aa39ad26323ff22ad8acbb0eec34bfe880d9a0aa176c5c3505c229244548d7cdc08eba57a0c68b5e398c6fe7f90ed031e8c1854e579352a47427fefe0d6bce5c7330cbf9e07d8b3536f5ee06b5fc28fb0adad8031d75fc9c5fad5af382c2eaf3320f59b7846b0dcd14b9b54deb808361fffcf5dc22cdab3e38ce0b5d3e805ecb8671ed2a5fcf79a9543e051d93933a3e392ce234d50d5bfa1c9460b0a4ede14835996d66f333989908da5b10b3b163db23fa07917369d44128a89353e1d039fc7b312e451e6723130e1e8c545b8e1559a8a9a8fd4be0a0c6c6589129a731d224e4bb5bf53201a28e10e1079cb545f418c4ee845d447536745705c6f1cfa7f4180c8cf52f163562f894385d77e1cf2fb88018c82d4facc765dd6d389484f5a79b93f803d4c3bac468d9b82715571eb1b64b796644ed519cfc9865c91fb95c5b91d7d558a293073cbd19777c38222f4d41644183517bd269aa3d17f86268335a8a81fce97350f9f6e252d5547b68710a9c4d60c1b85e703fbbab02ab49919611a5a2ff2fca8889a3feaf1259508d422a894ccf83b392bc2dbe39c11736354d05b8c96e1468b5d29fc34fb1eac180cfc8f4622a227607036d6893b8cd9b20e0e4096e276ea9357c872b5fc54dd25ea6adf170c5fa586729761c2b023341811cc06ee3b9b909d3322d5fa1da4dd2c92809476a135c78a82d84746f53e35bfdcd96d4e36c30d0b3f7c63f3a91068719ede687f0a7a076ca17b7d39905e1d727ec4151e51ea1f6a232fb1ad943fdccae803ab5079655738372bf5c62a8e466299290a8bd2f1e081bc8386e14421dc94173454fcb08b90ccd7364e723e7ec203de17fba93b3a9a2ebab89931039cb37f29bff5b352393e39f317bbdaff9ca409c01d314df4dc6648c51028054552f6da87b4b3aeec82a308e57365ce7511425a3bdff6302b893733b857136a3b37ad190a10aae1f3247a5a143829798a73b55fd8732b2b4d1190b4b5f6d5af40a341e8a02e8c88b9ad721f2eae079e9e1dd72707e1a19abe2c8949231d843e05f64ccb53f8dc76eeb134384c05e51e7bb97bff4a0fb84cfedcebc5f4ad2ebcd50629868c175a84ca9680316cb62aaf2e69b079639d20341a5dbdeb38f7c4aed7f0ea8d759405233a6875e78c741bd68d30c83647e02ee56f2cb58957978f2238fcf199ce7e57d2042e97e43323819487cb7d65542b0154faea83fcfe12a8912cf17089f9105c881c21f8675757846760f88d7fe73e310985f0a68f7d2745cd6d3d63078694ff358991ee41c957fce96e495666cbff278fa6730c2107eabf65fcb492edc2ce3373f6dfe8a570cdd8364067e6700a7f8764d2f9f8f53c8bf60eaca2ed27c5a803d77ce1214a9dfa623506b00b554974ade5c20f8ac0099e28293ce2f46eb1635125224765032e2ab602aa673000e58cf9bfc0a967ed21a8c3b3dc7226cfe42ec8d2548f6b3890889abdc30451b37bebbea91c2885e3a4ab2e1eb1ee9324af49ac39ad3f43477c46b365fe7b879d02fe492c42ecb417f56b780a9126215160bf7efb62f91ad1f8d9fc4a86a68c080cdb8372d5eeafbc00bf8e82919e99a0679433a3fb5a9e24c220b4854540345269225301d17b7d45555ef5cca946e90d6e2f0f9944e9c4e09a525df877f3957e737380527d1d510567f503c1152b1dbdc15ad586a89fb98ed3eec9de20c6f4c0796cbba76e110bcddd2d0c0c519786f145f2bcbd7d6e3da111edac51e0918777ea0ef0c11cad421fa41e6c22521ebe29f5c3066d17d83d706d7ce0ab7551ecdf936b05ea8d84384373a8beff199f0175103f9f9f7ca3aa74b952f8f4c3850d42465a45badacf4c846a3ee823ce0b7bcff988ad9efa3f2ad0c9bb3bf6d03ef596cdfcf6488c47d367819744c69d66819d2a95fd4fc2ba90f3c3dae511f436d38935dcbc6e1d61b48e33e2d466e5591c42440c7dd075af67fdf5cec4bb9cbd5c696512a924bb558b77bdc48730f0f193e8beb08a03db005f14a12284f3b2f8478e26413701a9653da6fe3d621765079764e367d4ce4c9d80d17a6ebc61e610622f3005495c8c88884c91a3d995fe7f93696643028d8221618a06f7ea3714e9bbb23ed55da9dc3d44464aca7170e2a710a2b816fd755c21c68e407a595850e45f1181b1d4fd984ca9e1467164fe9a74eb3eb3b4fdeb993df663edb8f0aa6815b81a0121094327710111df190b13362d30e818f0037ed19bbb9e0111262019ce5596d0868716ffcbdd74e4e60fe72e6caafa507998f1e25878cba6d562394c719c24caf8d16564e233380702a36d8803a5d25d48d7fb497480274e66a61481be037004758871316bb6c80d75b0133be1168e6c72e6b3c836c035f754daffdb06641b8a5c84a8fbbebf449d627003057e23753da24c81f5b7cd616f14abc866efa40b660f375884392c031d6f47ee4a296cce4619df9f2769d7110aee291fc39e0d73a64ea3db6c078fa9e14a92cf45ddf1cb9b5e87f51dbbc3c558945d7221338b0c716c572c9c4556c4b23dc46557595e51a6e580af9e7f396abf0c7aed12c23ff024c46ea70439b36f3741a9cff63dcc5dad18684872db604467036ea6c78767cc8ca7ab2cd5dc7834454314bf9532c005997cd4945a41c6e589d28431edb5a39eea9972d75b01b9fd41ffd9ded3e77b86274b2a74751826f99af5662f87f0fa1c6a9fed9d91f55e9bceceb3b184e193ae66eec305d45977d028c562175e3db516ccee47e26b4a775438fe91ecbf4f202bd1123fa9f78cd2d5d380920f4f8b897ed1056dfd5cc56ca354c3b327f6c79e3dfcbadb26f84ed0f41d443c9ac1fb427188ee70ef5dfc2c4e75d3af1fb0e4a77e0c6aada6b375bb8fc9d9a4415608d61005a2784a7eeee4519f4e84503ad2587528f6a84e82fbb43f90143f88f845ce432353e1764e43f405bbe1c7b71752ba2bf20a751069df35252f9655e7e1929fa0971cdbd27e9c6c2a434b8f4b2bebb832b8d0dcaf5e6f7e20827f11766bf2fefb23cec4cc3cf7bcf1e1645f67b23358999d978f44439fb9f7224fd87a3329d4a6eb90efe3391c63f1691358b111db3e5096fd175adfe0e3e3b67d2760fa6bac1d1f9668c005bb29bb8bc6690affd7fb0eda77592ee11075c13591a05508616ae732d672eb449a48f757b169d812616ab1dfa0ed99648bc9517c6cb51dab823fece3722df3de042cd1d35a3abd8f6dfde91606026793b99698b4bbd3139faac200eb7e7901c16f392544fdff3f957c7f975b036e904a92948cec0c794566c00cb01729f30d359254b726c5e8b44f400549ce531f009e8990eaa0b38cd7e06fe66da7f1b233e91ff51af93adc92efac9c76c55d2a2baaf91bde1d9d7b9ac426b310494c9a40247328433e14238f818beb570f6b81980ac22ea9fd8fd87ab765c732900df90db57ce20b3d64f09ae26a3618788ec7d89ca10f3ca9fa33fadaae24a255d79b8daa188c8c344315ddd6ed271f2499f93960bf916b5f5de5f5e913306a94a48211b793c30e145d1f4f65bafd6e9691438bdeb5e682629b5f89a84638b32ec02e5c5a23f18d2c46f4893dedd6dbcb9b8d8140bd92e4326660b988e110d2b223c77428257cff1be0802f7a6fd37a7a68afc0b3980ecd87a7382094bc58dd7a40824332072521922ed2ee29b4be98dc6925c89fb4fbbe3838f0b912dbb44475b57e11e1bcb491228a59f6ee6743ea79fc4479f3fe92d34270f94ff5963b4ee37d4035b1afdc36bfe4ac985ad8fd833c4d417163b684f3af632f24176e7e11db64de4831451d52b2f2fb9a34db91a971e11af89c8f1a31bd3eaee7a465918551ddf27f4d9b8594334f5a7cd496462758c5222081a1b9c3ef80084912e5dbbdadd48f38156de83a88e21cf64683b1298e7d6151cf1b1c8c0a8c7d160757dc2ebbeacdde6695974283b7454e251c4d40a106959015b1ff32044eadcdfc88c6b6b58c9b08e4a9923e7df18105c080a093dfb5f268d710137af3e653d8aa01a6addd2c44b21d939cce3466fd67aebc9da5ba0ee762636fbaa15bbf60ffe5c5bfbb035235244aa3c679f756ab709a805015fd4947f7ee7e9f614216ce0255502b6cc0a52440c6fd970d3cb3191be52a925520adb7c063b3479b0b23edaf37d96530cd1b9c74b7d3db2f08987a942b92f4e83df74eae3433ccbbc5cbe41565b438ff7e9ccddd06c0ab16ff540603017c06b6f2a0a83771169456b1fe7a17904b9c48dd6587ceae6cc1fa470748207eb6b6f2fe48b2d97250ebfd617bcf3a58177a5ae235979d805f946489e525ce6ed3a84f2855aed5d7e0d1a25729f81fe38c2d5040e57967641c7f5bb6c03a7a62c3b5f533b4fd310d62a3d89937a9e0f7c9e699ade03871bb33c50dab72fca530803f29ba0cc3c810fa91a37861d3dc524eafd7aa357255caf0337e273f3a0e5dcb1746ec0030c507c13abf198485cf8bfa1722613acc4e54c8a736acf51e47bc716ebed04a9a8b112f2179287694d1cdb61c4122ee244d753046f0ebcbde6693e3c31f91082cc63cee13cc1fac16373293938cfff7524f05248bb946e3d5e630e696e4582edc2ebc71b7641422e0b4898faf6d849daebf5fdf1c909e3047b5a577e99f2c11cd1b53decc8e52def87ed901074e1a1d2683c23ede2b492afdabde8331374696e1f21b270252e4aede7b2b54af2edb78358f43c5040b66e6fda19dbb8acc14044e5727a1e6ee27fe64b1bd3025035a6d5e57f39f5bdd2e8153e0a2c385242551006404b6f97eeda227fa25e75cac285e67f181cfae5d3f755da9e43865b4f03fa7387c89a9678bc7072dd5ce076be277b938ee7577b06166d743f827927a48a8c71d21308a737cc6e99c5f23f8fe88b5817663acbeb8200b285b6ec0b53ce4a18656e1047b5bf7a5e96ec2c8aecd8e820796530d27f83bae8ebafd1f6d03395bedf2d5373a55aa79c553b34e987f067a6149760fcda07f01ae3ad011ed47654cf4fd6d9aa0667e59ca62e1a29535b0c0a1a4403b0b6d551684d578c9fa1928f433fb9118b3eb6bfde1180c102c8465766353a80c02d1330b39e209aa6b6a38de775008acdb0cbcf2331a86972e9d9d6fc57e1881d7cd592cc506c48f00bb19c13932270005ad89fb3e0609549144c223e4592033aaff1bcda47be5f03bd1fb13419bdefb48c9647447a98c5d66b185bb0c61d539eea7282284a775cb4b8459d222ba2e8170a60180079eee13245eb6e757159a9f7eef0e99e869f838dc3188d5fbad13b643baeba8425a36480e649211f34c29b1eadd56578010e1074445552af501d51057959fd8056d42ff9202e0964deecc7f5d64ea3587e08dfb98aebbefb71d56619531eb10d1ff45d2a8a1564e4c13462c50f005a7305f8727ed5cab32289e17d81f252cf61505590c96c06abad342232221c29ae58bef6ac9d7f284c94b50667c5aab03521b4068e62aba9fa0fb1e1061e83622635c182f3dfbe22d28fc3a08b35da186f1395c9905d6d412556b98645a2ec41e74cb7d863c707c2c1d9972d04702bbc3eaaf55aa9f18577d83eba45eede6b29b53401834606367acd69771174775a1d1155e1665a9b654ad86ae851fb4be04c8f652e5a80d7d4be7e012b54985985cb820f472240a147be2c52ff19fdf5ceeca6846b73abd95153333ca84c1be87968b832e632126f547854edbaac1fffeb72dd9440dea3481264cc9932f2075704377e59c0ec745fcd36964fc96321793dfc2efaffbc29975c96e8c7678d45c26bf693dd3e868abf15af72537a0f28e7fac3b42cc4411ed21258961dc517544b360a0bfe4e29b13eb001aaf44fe7ab1514da1596b759838821231de2205fdefa31826799d0d70fb804944a190d52752f4e3e12fd47916d8de4240d22168654803900f4a12e498e4824d79b23e9966eae2bf16b9ed63935dc0cc86a365ac44255ec8d5d07d4278bca6c6762e11321c92ba8a727212173c8a81ca02d911daf2087a24f23e7814ea7b187885cbe13dfca21588193921c0e0ba7e8130885fea1c71e9e325fd4254fc39aba68a61e74143f1a4a7ecbe210689ab6fce8b6c387d895d3ff4d210bc2e9d03679c3237530d5e41bccce5293152e3f3ed11b0a40bc5600a60b4dfbda9950147a02b5104c95e96ad0c118bf1a5e946925271c2f1d5fd682819a42cb3e8d2b453e3675e4d37ca6a1cd46f4cb565490e825c14781badb90193fb605938eb07df657079da06720b539e0e97bac47649767c3ee92cef68c36b93ddf0ea4a782f52df1a750ba1dc3c0060ec3b2996bac821b666101ffae268a7f19e72838e7b770621aef86efdacf1b2d45a8cb073889f621f4a2580d0d530bd5dc9cf2f31a5e1482dd068df922a41504fee5f127a3e47a56e84154dee019ab97650164380f77947b2c7bb0f7a17187780e76941c340d681a80c77dfbd231562a891bd86768c16e522eb159cbaa94322781007a0f4226922da91691ea9bba10ec46cba65b538e5033229ea9d9634b7646247465b227e653d03dda1f14055918e17e25fe93d7388e6bf04de6a03fa548288b72e3db40d8f97a1ff8ac87ec09078fd8199e8c3f262003da03f9058df28633043fd6ba2ba2fd58a220da6768d30ae3b340465a8f3e9ca8030ef6401595a4c2b089b5fef1da0b92005dd01e8fb7a7c26be57083f60067ccf1f9790299e80567f125f035e2ce09ddee771d47f9591deb02e2fc5469ca59ab2111b8dc4df71ac5e0c80fd34202567941f865df5123e25d6324c33bcbe5acd5d675b882e0b7f9dee3c40708ee75bcfc5c45116b4dea773cc227bd783a1f5a6bfb12430da5b6915de093e92dde2cf1e3331fbe2b5f265a7331ae4440681a4204bd4cc44edd053cad196c09d3c145bfd7279db98b19630891d8f0ec8d6c48e360d6c6612379129aa05b74d11d5c005cb16beb8ac02fe4189607bfbdff38d70d52009832ce255b90b7937ea8cd106b3d82de90eaa36472db78230b146be4a93fa4be7d6c5b9565d760393ba5a7c794485d71959b816dc13e52e75e7639801f10d511debdfde9f6856916b4432984aedb138e7f85a48aa230b4c975665a5e6cacfa4775876b06ad10105e7b2fbe94f6cb5487b66ea4809b70c97133ea59c06d677178d8ea2a9ba145e7bf31a3bf2e8d3132ce0a606e95c25958c8a87f916966ff79903b72dde36e71dfd50e4c7991c495fe1cf8f0284325a7f5b9489c48c40e2deccc90d85cc4ac4731d08f51885a206a6702f0ef24065dddfd2e5f844305199b12759638301c93df543eb9244f208e96a4df1e1a51b0463b604b75b25d61ba8c2e678d07ec6bd5a8dc527455ad4b5ffe5a2f6aca5a5268a7c681767d8b4495e2eaeebd8bfed2a9c3942b3a7768dbc12c79bf0e51bbaafe8c69dd409f74173c329402caf0d8a4261f2cf9e36c6d24824be64877cf8a1b4d8afd64bc2a9577f6b21290365b6662f948851577eba06642d17ef6ac5a232ba19d18946f0a9df4839086addfb30074b247c01b73d81179edef1d43d1e33c652acd151f0a4a482e2dae5b1b4345a145b725019f392161616afad3bc902ce1f4e8f981b520fdcce176ec0835b4ed884e75baa2243cdc70e742c40f0835a6879935632c0d38c4116cd804875c4237b6c618658417e4258789c0dfaa8b4d0cbca58df55935d7a04c2717bb834e7f6847635ed9ddbec4d7ebf03e8d370b8111bac13e88260d46cedc1c94c2374bf90daed66077a9ae01df32b27687cd83de75d55542fad9500611c813eab9a8232cbdcb1937cd5686763a7b5599083e3243500aa3334dbd75050eb10c937470564dd405001cfccfe0ddf56000893b0987f260f153ce0c7027319c2974b402234b26e46a277c6f376f8c42b62544d444068d087280d5d1e42b92b5560a5d3cf3d4c472f6e1ac10068bf47128c087280ffdebe9165085cf4d1ee74897ef637dd2f153046c78f925818faeb41469692fb1e07cfd2bf11e423fc97ebcb250f11d5502577ff75209c242fc5ff908f78ec0a011f6e38ca09f56d6af23ef5f63c153e5ed1c3706c48d3f1c95b26c4d750bd5e1724ef2cd7e656b56bdb92d873b5d77d90325485dee6f290569a5bcb40eccf7b9a194d56fb6f84ff4fc74adeef389637cf06d6c31a3c94c8964690a13a2719e8a681542365c9ee9fc3beb554278077263de71617a570147845e149457393dfa883af069668870efcceee886772ce1eef1a6af0780cf3af7981991f446c03cef9b5b4498d8f94115637ddafb6fa8a989d6164f9331cc1e5a91c5bbd005031e3303cf7721bf99a6af195ecc8b921241bfc4bd0f59be6c622cc9d149cacadadbd1ea90c11721f242d9b34bbc67bbfe54e5ef5ce44167fc4c7181166041fd7bbb8a97d616c3b712aa1254bda3277dfe692eff237965b1378b492358fc8f6af2747b704c72df0f5bfb0cb91fd6f7b0409cc7162f5d65358ff373906178a23955626a58c5299290e77ba5c96cbe54db18f1f0bb289462caa0325875dd673c76aca3cce82e03c7054799ce41c037663e2235da130c1f04c358f8f8f62ce1c54f1f49bba32649fcb18f5ad44a8e5268ff3a3bd3fc44c6736d4f1160cff13c3cf064a88bb9c36f7098500e3867b907557370524c3a2a45c1b56393f740bbbce74808e0ce7455a03aca61d7f8b4b4c892654039aba382e17a8badab0073fb9f735ba23d5c99fb2ba102ac3538047068ceab9670709f0a4e917056ee8d36ab05487b1db67e71320b6cc6ea97f7a2e1ecb8dd9fe52a333c21a3e7dc5f8caed7e9280c447530ef695a3602590c7969c49b0817b28ff2756f1c164c890e0383ffe2fd034b6fdf60dd4393575082720b3fb74fea2416cd766831792f7741020fa4392cc45ef3bc2438918a9fb3f5ff7b2757287c1dc331066c27bdec2db03855fc0f5482c8d28f5f2afbbb3b26890e45f3540276d85cb7a2e7555adffee84e6374ede08e03f446efab5d3f7d3b9822a78cfe6242571d011b836c389a51f74a7a718cd5ef8cc4017c2134578752b4a56616431766cbd5d8db23320fff751abdc8ca701ea30a7af71f3e22561efbcac3a6fa0c2b86e56435c8466d96c3ad0c8b3f416ab543d81cc5322f1326785bb9b6487edc051fd28d9a1ff4bc73572ae4d93e9fe998de56942b01babc8004d25393f06aea3b957bb37e465867180c8b4d6ef93f9cf49017511670017c7953477922526f6bd12dda05c4d709209fe3cd8740dcddeda63e9586081379efb38d9345f02c86a6d7c723c0f1c6d38cf11cdd40e82a1c070afc21723e3f8161be1b12ae78a75cf41af4c2dfa638a505d3b975f8fd0aaeaa83555b277d93da4c0d9e2aeaee0c2ad937a4a0023c2559d4687a8cf270639a4721cb871e18248842bb07f771aa8436f81728b9acad46f32f62bd3bfbea39aecb7f45c9285a2c4e4c1c80b88e8f6d3f9802eb26bfa3c955d6f6f7c4d0c451e7e02879d1d4b3ade2041b55344ab76359ca2b4197f796aaa9ba51820e5768eb39c18ef6e602a697ef6d4c0371931af5cd4a4f53cda1071531725ae4139eb7e95ae0c0402de14f7cdb169de4566285540e95e087817468e54afdad33ee98168898f10efcbd48aa7df58ff8676ff78c0dc31958e0db0592462ae71cacf7e880a276d4e944f5737c276527c69ba92f7eb46762f7840e846c9838ea438dfa6e273c459c3ee1c11b69f0b864c35c8c5e173bf21e4923251e3c072b9100a9f3e23d56f33b09959c62be29956e68506e93ee075902779181832c48e4ec6dfb379ca2a9e8299090a3b83521bd8e1d842170ce35aaab600ed5a4b4adaf81060526b86ae9667bdebd8ebb8627b2bae9b175db3fad729f0ae77bbba52feaf706d0eff2a65612e7f480f2d3da8847041185a87c370298d215c770ee73277abbd27e7e6dd2808d825631a2533307cc5376a5398b3048ab1d211ad46390a15c1ce68a7af24584c5227b01bd63151e038a9fd2825c4d55168300b31712d439b7b10040765d66ad933dd9a73537551ead7c2717378f68c954e2b600b40d02e8e6caef6f0520c0534b36409c0bc184e08e9b4fe68dda99f098d054b9a2845cf2a4bc097c4840186694b6cdddfbe0608542a61d53e691408090289bb63c2a02452ae2be0ef1d667cc615681872035cec5b0f2f4742e4ed6a4eb7ace3cdb46a7c818ee8e770ae35645d4384cbee2343b656a92b091e559b7296e2969e653147eefee73931b271af6f58070e9497649e913893bb230af8abe79cc9df3afd232b3552900a70d042416c3ebd844bb0a2a4156a6a9fcbb8563619bdf730e89f2bb79f0521bc7d3b92158ad4f1bf71d65654d55d08d38f79b4c9a9d29986f2edfd8930a68b730e6bf3872ca88ebee09fe6518762b71e7c4a25a61fc6e77d860825a8eaf92643f2ae33f50fc213ddf04f9e02d4f54697570a62702a774c4319ce092b427bc00f71ddca8c6b1965c999b1227803455a44f1a78dd8f98bb275be97efcdcbd844196a5940d05fb1c3429248d36779a9c2999c2b647adbb143d0cb26bf3022dc094daf90261fb87bd1b60c78f37d3743fc1135bd275c7c503fef85efe114ea06c45a67f90d9ec42d242eac6f48094f9025ef5b839e9ec55826ddff0ec168a626a677b8415c8daa672464aaeae840db0db41b4aff79b68e16b1d3be8e2bbbd172141baf762d3332db86adec0e05473d22fbfbe8fb9803e8480a93fa1d3df635becd02628e2964346c491b8f2e2d06309adfe00362993f5b77e4e336a3e84c833c72cafcc0f1036be32007a31842a1d17146c672b52d055fd89669ebfc5618d8ee4d30788213d588754398c018399cfe7cd48fc27878c3b1788b73c3f2aad5035834034739fceb122707ec6aec1f58da70b73c0658794dd4bc3034b75dbee9ff06a3aede402d60e95368a9a57c59b42c906cbb61435f6de7f064e8d9c2b44f85db9fb04ed0673ad660963f76ce898041cd64d99bb6972e9523cd4740c08c771ecc8b2fe6b163300cba40c1c52dbdaa52dc066e3cda58422a0935f3eb44268135331e90ce62fec281f02b673896df3e540a8154bf0955b6d4963a45e1c0c255a4a3a2f42300809a02c55c5e0b76765f8f777b54f83f467fe885e4ca3639c35c5dee9dc9bb41b04638d789af6375956bf4eb400cf0cb93d366a06ce2e9c76db4ad2886461182e9e76da8d41e4a7a8e648b9b161beef8473cb4b6830caf72b14f41eb9a48bcbf53c4a07a1901164f0da6c1a16988b830618da4cdf2c7fe6e232ef9829f85c56ceb148a3c45de23eaf38dc37f94af071977238aba33e74ca5ea1e4e9e38d5654bf1fb6fb5c09b9a9d8ec31240ace02f22bf2dfb6eadeae928a57431a522eba8af209df9f187664ada0e100188c13ee741a44d84d2fe6ed24f85718aba84609e0849c5c6298f5df109e7a7f66bbb626041961a899cfdbd7606a56e8fe4ce878a58fceb8bc1a3759b8c9db8c96f6482c13e6ab9482347c9de98ccebdbbda0830f1ee16e29f1f906e8627330675bdf0ca625c20e56c169c57edc0324541e619992fe42b1642c84d0f18b9c823e810964d1b9079af7a94a77eebc99f6c1d70e907320c894dca689aadb83a3561a39186fb13b6dcbc5f7633a4227e43ea3c33abef24a2d7367a264234e6b120db1366021066bc27386b62d0f74b5c3e84d6f8f260d3df5c61bfad8b66374857fe9a6fe05a182ca136c716b1267c5411d47c398dc5edc527005c01a13696d61c7723620331eca732b91ebf42839279270988214224652db47399b79f909baa76bea22c4a799404aa804ff73cb41806d336d8944fa6e552962215f6d9f717aeba553e2a98024c373c2b1284112c979bba24bfbe2f89ac8cd024aebb9d360070750b0185aabae4c122e0dfc3490be728d9696ccf4b4d56a7467ebc653d89e1ea03dc097c11162df4d16e0d8595699db04ec0a595f5a7c30c366e08c819768f61b2ee24961cd1b618e4ec31f5741e009bc4350161f9a725147046721c03a418aebca105ac1e044abbedb6a14936efbccb2b5fe02fcbf5d4dcd838d3c6224c294432d87e14cc892a2a2a8f4f4b5a5bb8e3f1f638e6112741a934efae4a2b45fd434e929ca423be8d10fa01940813692c5a95d26fb176ef24cb10cc4cd9f99eeb496f4fdd56b8e5cdb693d946da56999aeb95370a93dc83664ffe455aec22e3253714cc296c67e87a9055094d2956d4793fc0121fa70799fee1f09c3571ef2f7c5c1879169d988f00c187b17b78c06d221e829cf0f29bfbd6bdbf77a8beae99fe3b865134886a8c6cf4583a9b8e9994f283ec6545c4c59049bef81a2c3ff0477298fbeff9df35434f5b43d7dd1cedb047f89ebd7ddfcc7b92dac5448f71cfe6f2880951ed9a6f59357df416fa0a4fd812725c1dccc1115eb2ed2b0d4524f1e49bd54f42f9b5482851a9f9a6884f3b98959522c55368a3d28cbbececd0d81b63b501544aa47769432a334703e47bf454d5b95b24b751cf456c25e81d6264db47a20a4e55137ecd75ae96346ae4341e4850a94b765eaaa49b23f933297a1f1fedc739d909d39bf88d22d2c38ec2e47089851a864ac8bad7484931e564050e0e620a43019c595d454f607b2913cc7fa30ce98c62dc53b799a6eef71871a342413f688a80338bd1e4ac5275ed343c475311cb804507a5ca5792eb9bf75734b97b666e4e6a48602470e18a5f9afe731d49b8f830af37991dbc041b3ced8b79512357993748f498c5d93561b52116cf913f888c51f8d6b19026747abd3edb66dc55a84c50d0ee6951f090493d1182c1d7435f775d846e40181ca5585e0a4f6db14a942cbacab5029c3e26e00ef661bb32be72b4807512bb43dc1c162dd0dddc820a9a1dda57fdd7ec9e4803cc494754a324acb03202102577f6cdd6ecf158e33b919d80f9f0e6ae971ab973dae8494ac3607ea961f48a05567af390e9a5d9e1f611ddad6e12127a0597551e15a129c411cc5b3c79b79a9d201e7a45b865d820df9b7e7a004f4b55d1fcddfacec3a2c25e68f797796ce99f1c506855ae43fed87ce6ef1260d24fd6b926eb26fd3ad638cb04659e381cc1eb1857697f02b9840b090e48c510ef3e65440743abd547f19af7d7af761dc4226e4602161767900440de5ae29336bd9b661120a33531d067053789f748a96a95dd6aa0aafefcfd0bac50f652265d878f6be7298976d8d090dfd95d300be8b0e3a48f4f2f306e890323cecda3c99b1c7ee9c8b21748be420f0ebcd1d9e0d0c15442b856a2f04d78e97e1f4e7f1694425eba443ca29577cbeb1f82b709a17066a0c5cd9d635e7b8bed108b3a0770e67f2ccd3b491c9934ea0a5d022ddfe43fd4923c6e4da33b3b24aeff9f331c2838c6fdde8c51ea11689715209931db9a081448c8ff606d8253458ba876017865f94b77a9023b315fe66b9b00a4baa6e8491c7d0f19ec1fd6ea3f8f3980b635c202aebb6c111dd09044e74fa69cf35029add44607ee665420e9a0f880c008beec27d5f429c77307bae39408d657c1ef8d803585f0465b81ba69ee2f8d16b27133162fb1a103c045b0d9fee6091a816b9ee6f7db8c4b1eb2493ee1a0b5611f9c2f5b47d1e8328101c0877272ed9ed9547dc47185563b68449c7935385808f204ea032dc8083c391d3b7c8c281ebc825df9f450e0dd3cc1657a5d97e0ac057c46664be160f815a89bbb5d5617cbe551f435d01f61e3a2b10ea1923c9bd1e2b9daa3d5e667471537d4f1028672848a151221ac3720f9ee26af39f860e192625d38c4ba2ce7ece68d46a09581a395b82565ffca28d8c377156c30ff36de5e8d8c7d91c51705210859a5645db38b7b8ce95e8e9f76e47cb06aa3259458935a2b5aa99e207d34c5a5c08277cee8317fe775a5c4b6e6092a0aa00f5dc3acd67dd7d69c9f9b9ff9fd9233113477e06efc7ad98ee3294eb5fa939a65e09bffcbc21d569c630a476a566b5b6c4c9d7aec8a35b721eb8ac1a3833d7160a7bc6d53a0c54ac4da915a33f06b68713d8b978362d4448399e5ac8ee6b669beab3f8e55ca0d3213a2df6dc2934203b6f2a845aaec960c44e675c700955e53bec751e431a01433b9197196b7bb6dbc35058709610268870415fb9ff5291b0b75eed8fd75ba129737c95e9c352acd954083c1ff373a03c1c84e71a5cbd8ea4bee258ffa7bb03d7c50e8b07f2a6ed59081fed11b32df155edbfedf83b4426ad0f3b1ac96bfb77c85aeb80550f9e495a0544407b370a805a2cab4fb6a21f401c916abec430cfcc7383b0ec67667903f42d1caa912a9175fcbf976a88e36ea8e5fcaf3fb6a622764a267e9849b24e66d3a2a33191a1d9ed933c992469739a5f12c5756316db8d3600256d52f1582315f28c68ff2625f27f8ed588ba8fa63ef508679e611549e87c8ae8aa9b311ea8b5068fbfe2bea28c54fdadaedcd5f3975e7ff75b92ad1bcee46a67eed239d3a946034a6a9084cfb062b44a367f539d8fc1a9b53aa2629b22b76063a0e41a8824a50fd188a192f2e452ab60a22a35364c026b3bb213a4782332c9af9801663f35756dfe313b8296bfde964166fb20fd82d75a9a61b8770d71376c6dcb923855f3389db236927729852ebce2a1c77b0fe7b643033d353035ae2ee8796da94974f350de06d13a95749df9ea69728bddb5412e0b2d133a6bb8dc10fb822d53ae0c6016982e7448938a0615344fe2f3cb29770e6d4e90ffe1088eccaae924f4ea2f96282669bfc775e512ec5cd7661fe5895a43a3a3e0d0ffa33fd5345272030d770affece5402a3886e8ad8b3588ac5b204d7089fd84ec1dbacc64214e21c865982cc04cc72bb70ed0740e5b1da0d854f6502c67cfbb4fb7fc4444a0b5434441e962db12c2aedc93f1d72794daad766d513a7c04a51fc2cec9cad610a1e17de27be3bea6bbf5af0a5264b81bfa08d80d254e15fe7138c6c26f34bb096971e62ba9e0dca5ba7fa1044b0a4364b88ad8d23e7ba3004815c1371ab0bd20e2ce89bc1bb4d3a94e02d086e65e05f64b2faa70e4579428984efd0839a6e8f1521e471810270429c9423308479c587f8bee5b1a44eb95da8f0d827f4c2cf473635e515e4223a5efcbf5681b464ca7cee17b5798056a837f7636c037cd761ec5cb93974271258bda2f2fe7a5428060246dbe052847fe7f129e3e36bfb2973962f890899877ba0ece3540b3c84e7a7c79e07b15fd48403d5cd6b5b5a735c1b35717c8de6ac12fc622848accb36ea7bd81537f2511d1dfb19c5b556cd93f63fdb6ec031ca69d76467caf3bd9cb3d9e85f9d62282478a654405986b5b2cbe3b5f70b94d1164601e79cb1b5ba7e6735fdb10815e23a86c7d7bdbb6b5983847f9d53e6c424ba72911b604dc7e83c58f2a3b363d339fbd578e36884b399058c0bda597ca75bd2025e5b8061970c7445046f8977da93ee859e8ae95e0b1714fa776164086b41b027b723b07489ee7a8558c6178d8ddbfb04e98fb7334e9e0c60d393b0b19148273634d71eef5046f0eab923ac7165572c88cf3d9f6204b113bd776d7bd212e51e23cf6c52b3820243b59ac76af5a70284b8aa8c867c4c81e2969ab68f660f03091235d337ae88d244556139e7837a64ad0ddf4158a4946b9d282480eef3c16226e785cb277d106f851527ef6a2371367191fd474ed00b27015cfcc6ceeecfa71aaa23cc8fb5b6731d309df3ee6338db09eab174128ebec418e45d6f8ddeb25b6d272c3b06230d96340a589bcce6e6c0411a24e972c14ce2f8b28b1cef6722c0f26a682d80059a9f3292b0ad1b018b1d0111ac39ede831f3017233d06e4b06e7713dae175a731446c9e2ead81aeb380b695d9c25d6640421695dbdc94e1298e9467d88c22bd5009e742e1b7460d06c0a8fed1968597e0914946926db29e347748d07a55b724da5ec158f776af345379813933103494d6196a85f7e62ef9fa1df9462b3bcabbbf8f8208f70178a9942f6e00a04b75be1b00fac329af906420f4ff2ff96ecd8d6593444745433eebc4491a6211a822df15166bd039f583af83e643509e1aaade0647a921db35e9de270549e41b7a1a9f37eccbe2dbda1e19096e5de74786510fb908f9d7903a093fdd2a4d144c4809b71052619424bc8efbcb82ae9b4c8c0642fcb8d58e1ee17d8d5b7145322bc31b7a4bf71cb2db4fb6715e4a7670e74ea2786bdfb10607aa7d289bb3c7437503cd9dcda04db26db056e0f7d9b93bb0bcb85b0760f8580fdf634ae549a564261524bda1cd5e357051d4dfdc7ed628523fd5f276f976f59daff77b41a3c7ec41742c1a7d17352202e3762b0e267e0c7e647e14508620e10723d195bd86b7fef86f0d2bed793ff412dfd391e934a26cff9782ffb3bb1b880e7c575aff9a109add3ad030b116fe67fa63b43fd616e00f711fe9c17205c0d38b4e92578882bb7ad069a4a26b9064bf15b50bb7e8f310b9c08e024eba1b980a9bc76094281f8ffb7d32711979f905fe79de4b31b3b329f6118c86fdacfa67f14fc5d4b3fea6819768707fac88a3ba1d926be9896406b2a78d09ce147f46ccc3d189ed85ea14ec38366ee9aa0f0ab1695cf83d3f5617a771ea1bfc07f39e3cd0b86223d1199e60a5b1361ee0ea1a91d1996b008e1b9ee89e7dd977fada984ed4cdcb3f8c916ca76638fb0559e7b1e57381eb4ff4c4b5f3e773c703bc57b07426a15b554aea171fd5a65ca288baaf2ef93b32ab3cc08401592aa9e923f5b4ab499506205167435e74c1b7f5c7b919ea2eb27ddc7ab2195626aad0f81f2b540e66b74d7860b01dde2947bc4c5cb2e165bc73cb37155c04d1640740a598a38b2cf5275a88e8d1f301935d9081cd588d421069cc3a2df90c7456f974ac87db6285c4a6dd844697fbd28aa31d20e6d23d2614782023e54f8f4659e6e01ecc6521e9633aeeb257f0cd20e4c48867958d2a78ad6d4a03a48dee2cb6f2a92a747c23321af79eb0d20b616265e76586d66afc0de72f3aaf948b8ce47ee5391b0c07020461d33d72adff3f633f4f0130b5a0b78f245b3567c1f2e6df159e3364270f9522b2cf0b289f41c4e167657c8a5762d7348a7589b6a636dde1faffe888b38d1c1f98952e917a9f46eaeee85128299280ca3fa674f4035f0668b0210ea000d2cf454ec6fe41eb1cb24a8ea8d7b0d8f63ccc7419d5cf29e381f4f07113b47d44c9af88a3de0a0f2416948f905561d233895f567f49de34dc55cbf8e8a7d50277560b89162d4f8d44ebeb8f7493a3be27bb0d19c34f9c48f33f3d67d9fc5b1334655c88e7409300cc96d17fc8acaff8dbe8ee8a97cf1c9b9f2ea56c5c41e940e84924b9dcf0add4bfdd10bb2f0dd76e64eaf56dfa7a535642b3e249cd0367b700d25ac1ab177f63067c6cbc20c1c80a03a2961d64a825e080c9e06aa7d567d6ae63f8135925a5bc35b0ddea14801746cd8d0b1f128d2907fcca8894b3e15414a50a05859cbd8eb4ef16126063d671c3f733eaa71a412a3b9e6a2eff6483902756ff93bbcf7a52ba90cb927fa871880fd37e29bfb5f09b089107f9ebdc8b229005b987d9a00b5cfc162ac36a4208ab8aed23366ed0466cf390ba20e9413eb49131499e9c59a9fba5ea5f03f7e80f467df059eb52236fb7844083b5f9024e742c99c3bf9eccf3d3fe36a0685dbbb20963142bd4eda04c6dc055aa563aa8a2a843f7ed7e0b4dba08eaa743c14c31e71475e62631d22e7502c29d2a3c365d387472db85d35bb133245af249abd28bc5ba63c498cfb83f257ce317b4daed395c2570e86d43bb3f4e707acaa30ef0a506ec329fd4d05132513de3cc55ce0e67a3d2264aa9dfef1f5af9fed86945bce1c9943ebaaf5462019946e66b99ac496b0840d772bb7c648359849c4d92f3fa3234b396b8a95ad98a242a5178edebdc6354d9ecc7249dd729b19087127057b179dd3ca2c219faa677508da3587ec05c39d6a6ab35746481b86a18ba9db8fa91f0813679c048734f6f3bbe81c14be79e98ed676858b61680986610f0204fa052b45f9f56c88576c7e9ff40f91a140f43a43f35a25594bd6dd79468a78b51c2d5b85e6e0d7e4dad01a31f11f3d8c978e6d83bc058c3632f588175f5d7bfe17d3813cf0833ccf1d7f3c938bfb70200c3a7602ea3d85ac44420164a911ae0a9199e2278f782f942807ce2293907614c853f4d543c07dc974003b87da292b3c739b08fd3ac8a45f5253fc9523443da6452f07a83e964ee0e8dfc7f2b6c99e62bdf9046ea8eb9074944cfb8574ffa4d8e625fd99a47b711754b0b235b0b67951715b18563088ac30ec82ac1a103e3a4d988a91a9ace8cef04f8451b9435c826ce86a720b63309b13cebd6306a0d9cace456d90195ddf81a9b9c33eca1a7f94235a19dd3ed408e8afacf2b7a846756e4914b1da3a39ad52736d1e4ee2039f2e4ed161129307bdf8cb82c4a166c6425b0a491cf688064335a1175613a81b4ad5c0cf74c154ac471fe0c8b12d38204bdfdd5ab30aaac00f1b37048740f0be0dc85991954bbd209eb75cb312e880792f0f38c8cc6b56cd08d2fcfbf8db45010f05f241f759325ab837c963c7f83c80391d9c6bcb6cd3d8c799d850db28cd240e7a9f2caab6312a557074d4e453d19bfa171942f5c5b5fc2daff393395d6915fdb6587a196862466331b2d6db0bbec2c40a9dfb5b42f3333755eb68fa6a2825b794ae8be5905a3b12d4e847ef411155ccfd127c85f98e4dfeb6ef6e19450aa0a55f5b467477711f23ee825a0e67ad6d69fa8d28a227df0f48ace0659eaa7772732b95ad908877adcca88f6ae6e9a839284261bc5260234ee75fece74315c4699990f9a1f23cad173fd6ac4a709e2e83c1a91f0aa99d9eafd9e7dd918c0a10ce27c5e285306e3199e79dd14a0ccf1ecd08981e29764f6d8ca94da7b0c3fc7ae4ff896ff229b5fd6f863f01ed22b96d4aee0d2c8413c15d8d8f67f8aad73ffe27135514a0d8f8f1c99e63ee7313e93f9d4011a2dc84427807600bd8d9bbb7d8f2bf21a401f08acc8f66a195a32f43feea1a588dea46b2e1b07741f62536b9f6606274b2b46c0eae461ff3a8bcdbee933e0be407ba0ea876377f285501785f945107a9b2302127cc5c352766a90a934ed7d51f32ff5e42e7e7968d2b0e015fa09bcde8df4e9a0ff5b237ca8891fdacd9ef8c816dd701de0ec74cde3d83f065e48c8ed827f597f1beaf462563b500d46e687005a7f1fcccefa39739faac8114cde3718d9f72f8c308f774d6301f9f689eed791de73ba262d9ebe86c3ea0c10c719cbce60466e1bf78220107ad1e72901ee97f0b748ef97446f863467c30668cecd9c403f890803d2aa092855bfe3aee1266b2a4b406d17ee3fb914f5aa3704ac111cd4a67fe0684ac497c4c309bc9ea6954b9dcd1a50ed9cfe5b95c5af3d534cd65993fbd55d6a671cef9d8264af11c0bb964b2acadf057bec84f224cadb2150420238b39283b0b625263d11ad97450f715114289bce878dd9d4a56e02e7d4e2b21ae664729f63f77245e0ae688773903f67547e613d4940bf27452758edae0426db395ab0d0c5d2f0468bda4117bfdd6e13af1daf1352b37509b8288e1fbad13dc48205c3358f79c4703709b838b7b54586e37b6baadbde17e0dd2a148b6cd5eaaa9e25b3635d530910d30984b0300be87d2239d8545fd3b30bf222c8a19d84b6e9f672017500e788a07f2ca954dff6648fd6b4732d4944c4469cd2aab787d7d3a3d929613264733f44980c64b8efbe50942140c7e0d99b3cb911541545ff1f45e8979bf707a9d08f0e77478d4a4836fc868bdbfa2cc0a17e9959ada5ca7106a207028934f37afe5245a95f8df444c9576cc341bc5e6de506e12771b1e5c8de191e432f3e52342716fb8987eda4554358f1788f5467feddf14a74a7f6e833634f53462159b8764c65659ab0f26070ccc6338f2590937ea4409f5bbf63497f83ad487c9db28b77131bc7a3f2a32920f476e08ad2267cbf09a9bd2585544cc7642985d99ff2105c8933a96f8c2de76d58aeed87792fa716e650ed27b09dc541b8af861afdf335953cd6f1ed7dfb0ce0d5b3dec3dd7fd86fc38705a670b14fe1f1145da466ad9007de2db01c4f4574d04a1bf08acb405209118fef2a2c228043a66495c96974e90a36baecdaa6ca3b261d60ce90eded940f07c0a5880027c6b111361d0ab62b73dcf4a19bc5f1474bd2c2b7593beceb35bc07189fec1437e776364f0d2c9bb0b0d088e70fa1be55caf590e5b8633ca7ab4749d60ab549352642adb61650621c98112d0ff291a69090f2860076fe2bbb1debbb0692661ccc66f411dba7e3d253445d3fe81a9595509b28442e88c320d81ebff9a11f5fb8fe4975d765e511e2bc14b1bbf00a9fb4935014ea4564e6a70aed06a6b49d8cb054288d6180150de4050667b4f48ef24dbf9296762a1de6ee3b402022533997b7d9643a5b080b75208569f62613df97b7f2debd61d19d1bcede09707f0c2c0b1974b72ee18143b78c65e8794e069d9683421901c5755524af65e5add70f6e15aa560c1d4200cb53b7c320e132c9fb50af04a876812db29bdfba64034e12304c769cbb9d11e2a5186b1eca73c622c5f734c58f467d3ad56b414fdceff91c9356d11bc124e1e456656ce66a012b8da5baec39d237a9ebf79c797df898e179d6cbe40114b9dc576eb75b2e57c6eeaa28e85bf051fc466d2ccce06d12ac701e25e86081863c66041e7ce589e5c8afe1ac4b4567a0d6726365943de25c8560810c6e723c34271078f4603896ba21c3c75253fe7d4c50cc0a0a9b3f2f3ab528bcc9bf341979ca64b573be8c172387069d6bbeb586f3f2275aaf5476ab435b7494fd1f9b76246848c921c4ca3e841696a50bfb28fbb071e5e5f26d48c51a745791f53ffd1e6934ea67e75a7bae35c8501b8f85a40715eeed5a3cbfca1f343538de16fc13cbddfaa7a0ba4feefac096f5ae0020ceef0536de06c95e197e3813b340e177d90b926734f819affd4fcc2f78d8a4d0e2a39cfe8bff5e74e634146136d94daa8257367a8ee6d65fbdddcad71acea51287ee7dee091308fa8fb3c5a10a9c29d7a48748b1035adcd5c59affe7fc4d7e431a2acbaa21cc4cccb77c987d4c297a8969bd5da980a1f06e8e8311704ecf88a863eb42c9b0ac6617986d9f310fe4f568b324cae63622880d64b6bff1c21a0611aa83665e6a17aa87bb48832ddf4646c2b9de1a66d2dd8f7e91384c9a1e6038730b1ea36e7739da2ae45cb2bae704ac6ee8d87cb08a615471cdc030dbd8e5cd6d4a3d69816a685723e0df8122d10be83252013987e8e30929c504ed1036761323da86ee53ff6ca88c5ad6ef6c049618afd474e18f213eaaf02fe981b3d953f794d7524b71e955658ac61c990e8f40858dc1b610e50f6e6bba2bfdfca1632911634c4dec4befd99026f42783b5782c641ad1e071a47e4061c60ea4ad25b21c998f3117674da8759d45df606e4bcabc44d18277cf73a43d1b799e7369356cae4d0809ff06dd98b106b092ffc42f0631604cf2d3fa0ceee447d41a384e702e4913a487448be1f0d4837c6bbe3bfd1d5022dd67c67057b44259b5b1a1819c12bcc855e54ad6a0e48908903053b7c3522abcb0fc8e708cc289a6abdbe5a932a9e9b39671bae0395bdabf21558a8caf019160d158abfbae42873e807f22be6f8f5534b1edd01e37a12a15d28dc1a6318489eb81a43914494f5245367c4be722cb909debf40d18501bdae3c430e3593ac1514a4d9556360c024cdd47d64dc1d8de3510839690df735fe8e314e78a427c833bf2510bdbf2982a0e57a2af29ef26d58fa85a4f6c488d9200eafcd2753b1c8d0dcc0aa997dbf3f747fb8000bbf76c76a702897d103f4fe1682e0bf4b547e1d07e5ccf231f04c82cfec3e2c1f30642ea3bca14dc7a18dbb0bb353bfbeb394483f380319255b86331b0e668458531e035de1fdd90456af6a2a69340afb181b21a54330cf971841526c4769e4a287841beb2058e597319d5327e5795746169d0c035c5690482acc3f4f7b0b44f7b57bb59ff5a39802a676385457c86f24bf5dc2894d8820f969d2b2dd34b3d660cc2326702fd04243e08d1eacb79bdf72861b3701c5f16a8c540c0da89b4d849a7b111249bc369dc3bd26cbe2fb17df9563deac8353cdc1909afa4223dc1c4075b2b1f4e290909a92a868b62766fef0366c2d241466e656142f944a248f4fa73bda0a74029f9a02fbdd0875c8688843677d1dc8f8397ac6e1dc89f89c8906ea48f59453b6e12305514a7ca14af0a60e2cf3b8a964bb3ca14549614927cf30f2873f41922d30d085f52d05302ff468e32521c16d6c11f4cee5974e5bebf68b66b26ce0339eb7045cd354902357eb50e267c0563078a434d94c1a09c49ead182c4d4ae6c5b4168d57e0b8e600d37664559b213c00bd6407bc2765c91e1854d6790a4efe7a6261b458b41030a9903607c2992c9f10c88918cec2e858de13598ab6b9a8cdd3a4818feeb3ec732f4b92c4fb4fda0db25ee70ed787a01327541cfef573804bc80d2eab2682bac3e7153d59a625c96fbf1a061c99719d9d4b6f6f13407149c6c2808df5bc23bc17fe06fa40f6eb22b43dfb334c8c615b59ece7ece6c1b8f9531e255f9193ba0ff041bf8997b1655c1d35ecf761c5004e85d9b46087aca1070e2b8f3da6ecc3b3589b069abc0b3f9755e081edfbf743f434977d91e5b9505577b42dbe8990c67ee426bb969280544b509f4f0556fe4977aaa6fd9164873f8632d8ced08a068a9c7c0baa754a0670b31b2a17cf46fd51fd4a2463414c6b879e7afdfaf1343202b516be789d43c3910d202343b470e323173dc550d386baf4f138e51365eef7766880689be66f2ea105e7586c6db70599515e862a8db4be1c678a77a2d2946b9bceb276b0532790e7129fcdac4e15ade7e316ede7de2a2178ba54f68470df7b1dd348360598d572eab44719595f4e5875dcc3a4ba2c2ad5ed7311c31a939d253d6b99af18e276e31958e198cfa27b03675859cac31fb4f447c24c26bc2360bd0d7bab205894b08a28847dd0664b32fa1f152ea5962235576761ec9246ea83fc0d2e8ca640219c01ab7d989a291e59aafe519e0efbb5f84c1761564ee6fc9d442e7679f980a430424c83f2597b0c4d84ab4b9e430b30b948985638b8ce83aa56f7dcaaa60b4f306b38a6cc23e960f1aba060311e7c554a81f6e953b4b34e6513d4a5dfd18dbe265571896a35653e3c5a3270afe94177cc265dd0488f12d6c619048ef7192916bb885cb37be0190f7aa071866c07adebd1b0b5c0db91af9a729d0949683e4190855f120a67170e721526a8dea9facb6c18e40a69d58491870e20a36f4d1828d93713f52856c08d0ab01be46a9dbc48e473b53999cf85e790b14fd89892f440326f18a36bee5a10a14fe03b270ae1a49528b75ac5b068f90b785b0bb6595af46eb9e502a96c834bb76c91584dc9bc5be5ae266d03f425dbc551206d725ba9cbf33388e9014382eb8985be23126a3f296f08858028db0ee38a5f2b857bcbf30636bc4bab07727a53212fa126ddf6aa0ea3b5a903dd98938fa4e8c3177c8ea4602081dbe67b8938bcf860698f4bc1d0108958c9a91e7e375e1aa8f3c6ef5c070c36ccc09ff56bc7b8b0a7a2732bf1c94b7021b78b9541bf9016221a447a8e01b86f5e0c07d215c78a1cee1b3262cbd79709624cea47f5aee807429d3f4ad42f35b32d51e81059d2de2cd4092a6150d0b8a7cef7929047ab3dca1a5967b5dd5679c4dd1ec55ce85e4bc9e3b54b3fa46209aa64ddd80398ed17af00082f6a95721180494277033a0e196f8d746ebc0dc0edf4182b89423d302df49e13fab1e0450098356a98ce250f6534983b922284300f1d46621f8fd8c4a0099e0e562a3c969ce128b9e820960ce5fbd9fd2eddc4722614f80ec9d8ffcb3f67d257b52198c6d188982843de703b545940f91459d77b969a5a2b2c2d90d7ac85e31cd17d878e451cbe1eff2b44b852d7ba651c30380caf7938259c35b456593389dc05c0ec14a9826c82e0f04c631e2f4da93da526acf342d09485db0e5b7c377ae735062ad1407a810e5c83296ebcceddb6e0712d067eec924faea2c11965c55f5d9f40d8aa37a29322462820ec9fde44172629c598f491d08952d0101b99a0877e6869c07fe5bcb4c4db6d9509b684dc4577615b155e0d27f55bf1434dffd0a6b4fc60d9f84a37d484285726eca715c6b85141b04be69862bf88eac6905bd146c8d306385d5e8baf9023c38014918bac7edaab3ac5fcec846506cd6d7a5171975549c37a5a6c9a668adb692c6ff5172225cb0c2491d4541f06b80f5fbc5c8cd49815b9874665d7fbac0bd20fba7c454b65057d4aa311bb1567a32f1ebb36d3ef5c620c50faa66845d8efc094b6560903b3fbcc8781cc25d6cb946a76768e407d9fcc52dd1b18370312f84f3659ee676836e8e6fd21b45e8f0a39090555727ed9ae9a95ea387435b12a0d16486dd50ea55a7d7c4e7b4cb344fca1ce98271c5e9c24c6fb038a012252716f37ceb01a0663573c81e91e4c2855ced9dc124d2d57d9f5e666d1c6764af10de2b7761fcd510b435d1fdf09b6b3d05a16fb873a843cc7919636f47936c86c306956b7c79cae17fc393a85f36621ac1e79490a8411b9b4ddec8e4f3718e51b30dff4c869203b338f81f29f0927e40e8ef0d4ef80a8fae0db59209d047f2bea13f448a1f59fa0867ba0d19231d85371f87bfe2676323c00490a7371d2d5ecc36158d5051a868bd1203d66cff7e831eef083cba4b16d77d1c9fd0488b1dab0d35f9888da2a1607a752aea90c1ebf219d0b36a46236c6c855e5c892abd108133298945189670e73c1035f587f125249c31209a80dd4a0cb72f2ad972642dcd7d1ae2fdf968fcf951e697a37e89c4ae0d6bb04a7ecdcca1c4736e54d161e9235e915bdf88b70b18f309e21149d9daa0905b647c202937ff55fdb64e65de44f45560b28c72ea1caeda5223306fdb91e72e799a8582a66c8837ecf3be2c27cb46c49147ef5f95bfb0f6339fffd3108393ec0a84819e472efb364e5d03f9e262d1b82dc86be2ae2857973496aeab668297f4ff10ff9ffc7696aadc61d599d03110c1a75df7b62bd0cb20f1cb1db5f4449bb34d8deacdc1e2f957070591f173c74d70c48b919b3a927d26de14e5c5fd4860b01c11cd04e694a80e4104b8a4ccd3cecc61c41223378b442d3ca93b03833a0831c4b1268450de3e35bc84e3336aee93a0cc14e5a6bca832fa68382e2a2de735e77e16891766d78b285730e29c000710841d8ac0068cd1dacb9e8b8715537e98946bcbd4957cb174f64ad65b88b9066395294c8e56dd4234a28cf8d2003a97bf478c4de477a8910f5349ef0d0d1abcb677ab0429022cad1b5dad42a9af1d9f531982bd9370ab3f10ffe8b6ebdf6dfb5dee2f7bc1bc4f42bca12e5fb9a036a271d442b190f3cdf2c36fa3f77a642403f53b6b94a6c94c0e73300b983cd5f3ef1c4490f477f32fe23fccc08f3e8cac0f8224237f1186e021b87208503de4a5f7eb651122e5b86d6d4b849b2c115b23c6ff69944808397d2cd950a8aae7a44f9b077fe73ad8e49d6d8dc31b41b25b7aa06fadd485ae97ec29ac302d18144c1330ec1a22447dd58af3dfbc6e4664bced33023d6a4fb2f9827d9d484137fe510e06cbb7f12459a4490ef4d1b89c07fa88b05ffb2ed0680a6264a2b48cd1e83b7abbece6a7b040f595059f1a2b2bb9a5bb9dabc6d6fec0692852e57cec284a1d945c66ee8ff8a7b1909f052c08229d4344f77e1d24e8ef006fd113db0c081ddd33063f7b5bd60585c2da0a4c1d89c49c7636732c5e6ae229610226305954ce19dfc3ce874a85f3428069e84cd57f97149ebd36207a8f82bdf1b27dc393d84c69bd8f84c8b794243447379b89c7863da1b7f2ed381faa66c1e90d148d6c09f6039fb1761129f401f63cc9d440962d5ddc69d3cf493067cdfec14a55685601996dd8a082c2e8b5def9c4bb89beeaa09379f9b04952e2130488693b7c96d36cb2b7d71bec9d57b75e3c8cd7ba47efadd20cb29bc92f59ddc33267a5b5e288dc775933ea158c662dbe2119a7e98f743cc610af0f4fb34665ffefcdcd633705d2000abd596ecebdf1f5cd2898603cba675bc89fdc33137baa1303052c36581275b94b6a89436d1b621e35f1a250076431729f02c7f48bb31012fb22a1fbaf5413bb8aa6a8ff43c095aabb68e80942b9b81697afb73db74889320f495c5f587db508722cd338631f286bb45ec885194a7e5b98835d34d328fd20a4ebd8370f8c0b826c67c00ed54abb917321344c040fddbd17f5428309ec712f019d37eac3843fa9e9010cb386691b08e0b6d1118c23d8c5eca8aeb45da935e3faf3334ef8f83c57b67f1298844ae496b8d5c03756a60ae59f9f4c5b380dfa3490a5242ebbaa789134775191ba9b153addfc3ae58813052cf79cf4c1b4677e705bb8240061835087fa9640a437b9ea815eff8f7c6de611eef7c4deee1ae265ddc686c2d6221e27f1e00c5735006e625ebe0a4a684634f0711a8d88acc4332df85f31d691e191d4a23f4d97c0c011536425c779611c2c9bec87789ff7a1f6101ca639fd935d2370dce9659da5833e0ba05f4742567ef7ff42f65a6b858023da0ea3da1f5658e1bab0b1ded48195064f6c27ccf339f7d36206eb08b3dc98ce4bb7636ab4e3cd71836ee914a97cb718cc0dfa781782e4502909b6593eb88d963fee7fc909843ddb6d6aceefa3c14e73de1317f92026365650be7a018be02df6cd14f2286e74b9bb1d9b268d2281674ab5545a1a972fe873ab92dc66259e443cde10ae2637c37cd0dd4e6a8ab406485e777c06c623ff1c6ee985b483b0a0d37b2d47e25a27c2b8afbf43b061f2596a444ac821f2a634d8e3e0b1ccfb61d167ce03847ba13ebf1a056be525b91484a82852ccb36de6b43cafb7e93f24231532709b17847443f6ba034a81fc0ecb38171d4b42055c88ac40b0790c7b2bd155ad51d04bbc3263dd2ae9437ffcedea566e9f9ee823e564c76b8ea8d56ea230172e4e4f9ed61dc6234a79e67c3bcc0438fe5e1f82e3be30e2d00143a7b525816019acf5d6c1223438dba23a8596971ae7b63588c9286f0f36da9520d059e80f15095da9ae4c3030e8ae9f69144e7267cb16db61835bde924a49e84194e6638ba50a74d1b66853a5f368b5c09a837bd32ecd4d550fb62190b46ced6893cd353eadf01582889e35239df8761d8dfd95a467c517a85261dac4b28a1c436962e77a0e82931c32be7fe4d7290c3ff1b55307dbff25ed726d2ea8b3969b0188a45453cd5d7914549d43d6e05bef471272e333a7003a64cf4f9dce5225232c94ced373c0ad84b5a1f17e0ab95f1141a4db11cd78e294f2c3dabdbe58e8b7fbc7c2743fabd1877d05f7dde1297f558fa790708724706ff0a6b713174074022f5004c22ba6d5c8150623cc8fb780dfb03a44ac51337ddd468d243d7002193754a909f329b1e3be8f060003ee4c38a94f7d05deadba325f9997889390185f37dc2882aca101c950e604631ad4e1547805fce5a00e1519c270e8bb4259942a621d1168e63c7c534275dca02ca01a2459ca9c2a77f480bd903c30eb9c5e16928484ff5b9548d3a86c4b430f0d523a1364bc3b6f28222976dfedfc8952f1cdbefd91562946f675fb643723b192b55a6ed3fc368f7460a1b93a1b9cbd6bdf6a3eb9c7d2ffa6257da67a9a6dc2b5d51b0cb3ed928bc9e0c72f6ec01ee0967d89b5df7e8e1e51aeb2d35474e72ea8ec9f53e609425489a4801060cfb120a82452ed962bdf766c437afcf7aaa1822e58f5cd4e5e171936dc60e96be33761550ca28a21ce54d5484f96ea86a119c334a7a6e89490f9c331abbc4a40a2c0a9008509e213c3146b524e7c04a480a5feaea43e015989b03d21597fd8626c9bca54578a656ecd05958350db6609353bef1cd2b46a04a0537df7df86fcc69cd3a10f5d5d89b40e12c5968fbc39a126e65f12a9ca7e3395070d853176bf30fed6032caf49adf087856a53368b73893698a5a8e7e0958d39fd4a68cb5574915f9adb69a2a2c47d31ffc2fe20778017a3df473a96855864993dee8290b78f1439a8f73b7a89de6b23d1fddbe8068c195317183614f795a6e51bf7dbaab6a6cfa7a9dcc9764e1080769ce60b609818294e0ff9c83da6a5187db9a859805656f62a9d40f2a3626097e0cc3fe02af498c1b3d89fbd531293109b86c91de994146680d880328fc470fafa8484f1a91111ba04d6f8876cfea15df5cee0973d5160567d29474f8d613f424e69d19f07a26d5dee356d810a08bc4732edfafa5999328c06adab44e7bcdecb6dd14e7f4b6c1cf40fbdbb9ac77fc986c51a97a80dae0e4b9a45f04a6aa33e756edf4c27001a1f2126e8f8991db19d5f92df6221c20f64fc88ffde1f7b8269c0faf1e9590ffbf105391e167c39a14559d9a6999b57b995f5f1e1047ecbf5bbc5e87c35d5fa51ba2bb9298d84d16fcb6e84a1811deb54207995bb50d9d51b016ab19ab9d809d907164e1600667afbf7282ad9bae377471153696f78728bfaf697abb17a31793f8bc9f76cb5b793dd2c243fde42035a2652f12340acbdeb2897e77264c80bd9841950b7b059a34d1de24b7d20ce4eb08296e7b61486c5a3b51fa832e55111839f3f6022a9328d3ce1ea3a823256de2de3ea0c6f07ba5317ec3b69d020500eb2a0074904e6645276b9675deaf48b5fd3c5d817f059e21aab748475a7768bbdf4cbf364b02e20566a1cce4ecf9acde4a5686a1f34f1306d5f291670771717e82f1f4f2f8db7fd283b3967564b7ff9c897c28cae018e5bacd7d0dbbff98a377a5b1e0d9bc412652770e1a60d8687a0feae0e557423d72184fc2eab157d6d15e70fc54b225c6d016243240c5af869c99970024ff3edfbc9db426ce60fde161786496df48eea6eaf03653c28270d21809321592ba6bd83cb88c801745aa61e328b24f47efd706f0df7079d88da810669d7456b8d5b722bc8d4b3302dc5e67e0552985757340714f7f5eec7927c6caf0284d73c0e9cfb56d913f004976fd82c9f501caa640ed9a0455cd49af2304a2e58e5a8ec77f6144d6baf7f200d3967e836de0aed7c851ead4ab6b70f566eba9c6c68219f19dea40163d008baaf72513ea477974f6daee83cb49611f43662d413ced9778b02bc7d1ce70691d5578db0c1d99c5189b0cb206176162b8809649b71b63a648430e963b8866dd1731e6fb357e2465704facb09e37b44dc849538980d232b02ec66f36e0e18e9b007f749c5fe0c2b728daf069840b2e55ac707b88746cf8b49d17ec493d42c75623082b02dd2beb7a5214563726145e9bc2ee2cbb946eb2149b9e458be4db951e48db4a818b56dfdc7925c2206cc45b417f6b0edc3343967d32f0b50138816d1da1340a3227c5b14ae3847cf0c577939d0080e8555d32e4a6fabf29e5f2a77249e392d4a26e13d1d511576ffb55bab7e48722eb4297c3ae88343465e5399d797bf424e0cbcca0abfd9c176576e9d9c56decae59a2220d202effd7e95a12008ec5037334a8f61b225c0f087f0fc0146c5ea8a8fe919980ea34a32db680bef76d318d4f9827ac89118ded7a03297830d9eb87ba79e52deef8ff78a74ed417761fafcd4b026843aa99c8bed0e20b24c46bc5fcef8291654ae2472fb5d0535dbe4c5d9abdeba3143561cb7dc2c7c57c6b4be05ec46de419cbe3163d00626753f8640113c2a56bb9d14d0f7d928ef54ae19c451d80bdf7476caf96d0b1dd3d1bbc1133ef9ab57a96f2356b2bed9c5032dfb80241b019a1f4eee0f76932624ab1d4ae71c33f4f630b1a959cd8d3615c8d04986d2c1ff9bf5678bd7ed5b993c23f6dbbf3564fe84efa285b197e4f9a0bab2b4f59376ba5d18c0501d9696cbd25439ea3b019aeaad666a288e3e9d3761528b34ad4b37f87358602055d2fafe8053cc0dddac368d5aee7d774e32dfa8e5221cfa1ac3daa03cf3127ec4018ae308089981a8dfa427aae17910a832834c54c47309c3c796ae5e9ecb9706f5f8d5503d0c368c3786ed54bb73e7eab7d167c5922dc212961f248a6866425dedead8e1f7e9a43d04155838981baae7b7f6993e4015403035dcab87c39aeb8ee4cd2df0fa64c37185b7d9088b8f7e2bb2118d1e050af9b350236439b3f53605533ef6fb6ca73d7c83897dd2891ca6a4302ce776cf41aefa6ed52ca5db804d7321f1793cafb26d985e9c342d5d4f36232a6b70a39d1e8827de374d2716274f43e9a43564ae6a525817611a470e6d07e4ed363464d3c440d0e39ad3de2b6f4bf8875dc5791241b78bd66bd07339676554c1a5b201ed582a04ac980e0269f2fb5fb35d0500ff46353ff4fe958349b9e79b3219fe3d917538580396523ede18d9729ce8f335af439fc4f860dc21f6566b0d219306f90a1dd6c39083277d66a965bf244ef6e8ebd7467f35e1a81be34c2f9e13627e4fb8d7e11c2af4e1a5d330c86ece78f4d44587110f3c7f070ca0e8de89af5904c18cfb96769c3a56346d07e35bd5ff91c4ade05ad35faa4bd2ab2426c272bd6b5b9d0eba3aef530cd8e498c2fe8a5b9a7e17fbf159c54c24d6422625fcff2d2277271f1d593b0fd0e8106883d2de3a0f56402f7993e2f5a5246dfe0e527b45ea1f2095191e93238e3e8a698b7a94f2e4a3bf5d8c125baddd0e73a83bd5cf5a05d86011d8cc7e4a846ac6733065850be3ca56a12d425f6d4e10d6ccf5e2dcef3b849d918e37dac7456c349915d5485bbf45677fff132634fa060a554766635c3862a65438cae38e55209f46d5ae0c422334bfd43aa95bbb1a237ae053f319b4e063f919ad93e92cc8a3a282d2d032ba7f1fa8e712d52da8379c79cee125bf22b73a32e3e46ed58477c443abe47dc19c6e9d42ef7b08fe1032faa19f228871645052fefd57cf0d7b10b71e23fea91650d3d2423f88a7c8700e11dfd853e2ba58df866505ac4f8796e5cbc80788c1d6d065b1567f045654498f99255f0d346765004a09ec779b5db8305f4d427fc910784c5fa37a8f10a5f89b2097d9455af6e9003a3fbcff17c2e19ed0cc210d99b07c54c656f484e537620f96bbe23d18b81129ed069f298e73ec0c415c3cc2c4f06d3aed631e3c9fab4cdb5eeff6882e7e8cfce0fbab19bbe83943578b027eba7541fec6b770e16922095a312aa03c2471be6c7f2c3c522a36727a5924ccaebaa2ffa11cf3e96c822438c5101d55be50adf0e53a8a739ec877f67af84508c906a69e860c846c38ce91a3c1da1a2bc132812b6027f986102861abf7b3486e4b0af3ae108436b531a45e60eb0478745c7141b7ed248e31f95a69679587c5255bbd3f2da90b3b47398e2a46d9303fb76326ed415d8068efd38f72561e44ff3c767322705f863da579720d029f7b22add6db0ddf13f6b7b1095c86e287064c4bde14d6c07cd76846501122f4229015e86f099ba21500f4ff76413664c7740091d4392fdc11afc8f51f3ad7db1cde79066bfab752f40c64ad6a9de6e54f4492854b666ddae3827fd7fc21655ead475e82c21ee2078c49cbb1d4560084120da06077b5a0435e7aa51c7717b80bfd32a810673c721408d701525cd46db1bade2eec27b8bf296d315041c10453644cf80c66bb958eae4150efb2bcd59407f6844ff90165fd7d4cb98fdefac5562952e5365f148cf277ce574f951d03c75d6396d769c35acdeb43a1da5d05274065468e1f5f1c27b1bd99f1d3e7c3127d6b948a63d93cb89edf74198b9aacb9d636ec3650f517067ea1741cc7b264fde2e0d43514ed498d74e0cdd615b42ebbf098a6f7bb2dfbe1fcd6e7dcec27a9f05087894c7d84b567f00b19c9d34421080ff1724f195793c0ec771d09315e492a63d0532af8922afcf2a8b3385077d613660013a6442daaa8a2b6346be307b3f8243c5c12bb1b645b4c5b6f16b3e98a1ef83e9708e18f519f47171f9713066f433ca7275fdef9e7593b9321ff6fc0c265b1a3a2b502ea51778947ecbe78e9a64b69fe330a14da12f8f71e07abef8659ec8cc927ab442b5f590eb19e96b282e64ba69a500e80a1e0d146237c0b8654d44208f51ae0b5ea2259454506820636967600d6741f47d6a24549e598fd329e054e42b1168c1411f968283a9e251d5a7b32c3fd01cfaf370be061df77afc3f4e4799521d0de976f58bcfa4daa57225d22a025284e633424b2de9c14611b018f416eaca30f5aa8f60973ce40bbabe9a287035b62a3674908cc4cf255b41cb03085d3f1a8c35e2e2b7601a2aecf808cf5825e5e11b72f80f59af200389711eb444a1cb6f62200e6a9742a64fd5fa0c973b2660516005e75e29faab05ccbcab816df112bff70162a756504224286ef02cdf1a919a5da698d7daae65fdec82f528043ea019909f44d55e90c8ca70dea09af74cbb5bd05c962e1780b4eb485eb52d0e5f31798b0b324d5ae7d4533da44c5fbab405f123147614c28f3deed465873740e47800d42266a372abb6578f14b0e396bdc3c18c1619116a4014ef0d3d8dfa5e9c973e2908a49c63af587d6795f3f9e57b254bd86eadbbcd8b77e75093a921e3b6261704a8db4ea19616f7e73c0fa7aba6e043c15f9ec080d759cde6ef45673dec3ca230fb8a3c69611367a0cfe162d78f0ee635e9a9acde85b4533d18b5c3ccb3798971f85827f79e42bbf23097dd2e259b55c852735e264346272f167944536705ddedcb0890de1bfa70b9becc9b2593417f4b1fcf1fb7f876fd26ea75cb1fa9fe167eddf770949139f884dff07ae00ef6ea9bd7ba9d6009c4f9b6e6a7747bad1e2ae0d5444d336aa38f2d9b5b79b4ee304d5b98749cb5ac521d4ad44f3b4e2bc77bbe03ce6cf47654208dbd52d6f31268644f7fdd1a46d58d08a149ae15c2b73a35844a1b27433d00f6c28b7dc77276ca3aad99dd5f240ed234c33d9f33baf75b5337c10cb7f40d17f1fba4a7f94b02246cdc1a970da554c836e9d800a354d01a3ce7a77c3c1596ff885b7ce00a576100cdafa825ce5bcfefd367e1b6a738eb282daf43bf7c7e6e883bd3f916ae85bc440f4e9a9e27ded9ef2d15bd432e4eb09b1208af611337cf0a67e6cf2702f6c7e786537a0813e38de569b6600eb4a42c29391288b31fd29e6e72033e5620689dfa46661052ab1d8c68517c77a652f5c6e56cbfbdf3b36197c17f01cbafa22be695d533722f29a69b5179747b62d9444c1719e3d4add6fc1d55a059400b60f9578dabdd7cc31edf3e85dc9bd0999076090de305c669505b2096182a260c805899212b08c159974ecd98bd2935c106516be5fdb5a75c8f415884b5801f098ded2d66d952e68bd3691908c01d53e95de26110138c3561eafaefdf1655f87befef4a81f80977c2b09e95d46db27a4bfad63ad87bedccc340adac07bd52f4761d76c5c2993377c3226b04beafb4dd9552c500c286d79e06f3a4aed09599aa98ce9e3e730d617b22abebffbaaf5f859ea751220df395d5c20cbff53e7c7bbbb21b9f53071a61f99f735d832bbad71bbec86c5ce48252b46214be961853c47c710e48c899cbe16e975f3aba6e9523466c77e844cae6ad3bdfcb477d69e5bc8d6e911838949b0a3b4006546929a68f13b2f67eb823bcbbcd73eb72949e987be765491a66c9f4fbae7f89f17f06cb5b0244238f884507bc904a9733157552382c7bd34d712257d883770bdb6819ae0bfb915ce104afb6199825a230a7d5a67cf3be75bddb7d4dbd110ebace70ad0c5d998cf2f6c2c249c9ca710af9e57133b4f465e692f994772dda8856961ff6fa18afa8c16a13f8abdd782e73db1393cdc664a8f9e02740232529071cb69d3a56ef049defcf696fa4612a28ebd208fe3364b17b76d15f7b02b94dbe357b4de8f4e1711013611a2ddaa8d09967a4e7fe0152a4e4d5bd009111a2e3537512533e85ab876c59e815429d2c4513d121e2c88cfe0bc9b75ddc728a7536487e5b21457390a2e6396a42351a6fcb88f6a280ce9e601aa30523a71b5f448a5357ee41c010e6d21bebf931809f556cd30463413289946da31d23536155d5b0d6114e31a1cdfcd416edf24583d84e29a6a217ec469d5c2d9a26d3f9a02933aa819f0b0d28e7afe66955a2255ac04d39ec43fcb4859c47c5cd3c02fad477835e8bf4ec7d3a3c51e497279c13733aa93b97046890b1b02df7ce59cd50ab9aac8fe324cefdde067d601633b5cc183271785cef0cabfd9a36b8faf188977be16ac5b8eb8134b941dacf7a504e864c05f8e710169a6030570fc5b6c572efa9e7670188da10b1589b0e973e5f8dfed576d05643406ece8bce9d72f64f944979e4ed43f256e85fbe69a5479ef54bffc48ede39f5a543e0f9850d9777a41835974ab01aac7dca5c82b77e0110c444d21e4bdf899d1888ffc8677d6956587e4d071258c54c6dbb7eed060887c8fe42fd8bf76e34bed56ff4c05100f69ce204c8b9d8f81e62986cbe5eec0d7d648043252e48fb4ddadd831fce60cdc86f11baaad3b40b2150df27c5d77a5a1a2f1bf17f3d9121aef14023e7c447024652a8849ee1d3a12043499b9820b705f4c183be61bf5a9a84c5f7ac2a0287d98570e1193b9074fa24e3b70847276ab2969ad18651761564536a67d8b9f05147a1b99117c91d58471c9898dfd0343173ece23b30a02a2674b1fc6f045e4df6df97990de2185f8021a4241769a901e4f49f44aae8f1e773d580324efab3614371fc1fcf9431154dc7697fde36a32d570986ffb6cfd952a1ce0730ece79b47de347cde71f5ff85c6f4d88961f01c00d567edd84b0516df8d8a71ba569a719cca0e456beef4646b5f20ce5ac8fa1207ef78b22d4cf3ddd41777e498948c31c00960a2acb0bbf6b767228fd55ec5766c011b8d21df437904209ef1585e14200d3f3eeb304a75d16f4d06a1dba3d961e72ddad0a852d55f18a01fa52b11536d5a396ab364307d00613325d2dd43a595699e4624546ed3d12bbd714a8c0f671fc1b8e5ac768d77a7b63b03cd149c985dc464b4575c2592a006e68c46514f8490b99359fdeee6e83a85fbeb0e21cfdbaf1dfefe0167c0f54691abb2fbdbe5778e83f9a2cefc17e85b2b6a11b3db60d4200b3744754f6d4b25ef99565c37588f97c4a17710c4edd7976bb7e0806af2ad5f20555a49a6f15c0bb917a3fa8e98930b4b5062a6df633cc3daf76509750574e0a37431e945067e52c4da0e9a6b391f23bda4f0cba66be16517a97799fef5428673668d4a41cd6f5b58c57b14852904960d0e8743e45953585d115cdcc23c8362056d8bcafa9a85474f1054e944b4150e2ca62cad040b12231bfe3e6dc6cee1f6261f71d80986d81d47e74cb1ccfedae1442f5dc483c325b9a043492ea1bac9e925599e03ca568d379635e20ac7ec742634a5d43b145c3be859c787340866e8ac2c37f796da768068157848c2f245c3e01617ca0a1c4c3f41480528f3fbe03a35cd6205727fee71ede3a1f5aaff99c570d60d53f78a9a445087e16f09dc052124fc67a9f495d2aec840077417d4fa0b7493133ca4a657e1e54585829084bad2c89625c70758573e44b6ef339d810002d438eb1d95502a0e4c466e0b0eec34ef62b074f9036255aa94362125f29c342ee8c0ce0e30dae06de61a414ce4dfa56c150695003a59855fa69bb21290fc032d87abf08f7718935cb9f29fe0905c9456e29c15879625ecd899d9342000b885cd7ecb01d98e8046d396b55630459a0eddef6242b4a25648b7281f027ce3c0361645b200989bc9ed207ad7c4d05b9ad4fb3f0af847efb2e340ef23ddc95899456d5a34995d9e1234cea75ca0dcb18d6c74ff58748154dcf3fc353e5d17b3506d5ffe6fabacda1d99f01ad1a20da04bdf486de6fe7313b54fa996052c17262a0b6dcd76ea2d66f504c7fcf859f11ad6dd6990dd38f270a22b8ab66d7b85c43383fb94b8faf4894591b3cad5e27371d9a7a8461f85be023ada73691370ca48d4d40bc752fff2db26e42ddb4a59a9b260fa10e81a9381321216ecf4411321cc5185ff979cf80ae32ac705ca79ea3b392c4172e464dea338fb65ff22bf48a474414672d6e1459aeca992a9765c8e4b8142906c85af6139bbeecd1ccf13a1f90ea8da3b9715c53dedc3bbca7554bd7df231751c2540c661bb6a1ea8706e06b6c9120eb23619e30862c1562e704e50f0171fd593dbdca5260f5e27e9d2006f9bce5857aab927889dc5ca2c8c349c9bb5183f726e42baeb59deaab1c3115134ab21aa1616e970027dfb85757f2ca1b872be4210c806d67dd1f3e45fd95152042922a5c7189370c9d5c9b202bc025c68811cecf620d2e72ccb7211991b008dacf973af6fc9992d1ef41b92e9bf9578af33aea2ef4cea1cd0268aa0c039ac962346999961f47708a44cd979b2169a182e53713b674975c67fddd68268227e8227a2ecabbe00f06da1fe58184a51d7c287f6ab6cd73acbf2820a93bb57731cabead7fcf96e1e0d0ff3ef182c5bd586ccbf28afa0b16c5493f3e2138c48dec255725d69510522c39931f83d66b5b48bd2a96d2260e9a015f16b24bde0f14ec08bf9c0541ffb16155262921b002fcc109b8e8180f7142b12d371ee51f1a311cf25e6af22d6ada7134013c79a6998dbfe60cf1dea9a17627c3a58edfc56619ce1017e123b7ece0965187b5da9eddbcd11ea89ce685e933cc2dbd2812f8eab1ee126342bf1fdef3cbbdbf428327d4d0c88cf3348024ea9848ccf80516e1bb9be80780b3bb37d35cf7e95dbe83bda34378ea61d678ccf2e15f3d431e2402b2453215be97cfa2807c48d7652b5e2247458e50ec94183c9437d1cd99ae203264f27509fd61f8e1c8aba8e458563f0c1cef4b72dc59a3e6a6bbd0dd07bdeb0e78c1936afe0625053a710ae32ed3ad3c4c7703c2d31ea2751ad57ce6c4dbab422e91287d1108bfd8d8e419ef14aa51bedb542232142a6a2d4f5fe145df18681aac0dc49a7e8765fac5007715c6428ea22cb5f98392e2d539b067237f19bcbdb5fdb1049549b728354dc59788b9749fe924ea8497a54a56e77ab84bcf63c954bbc8d441ba78092bee3cf3ac35fd3ceab8670b45686626abb30f221f4c26a5dd918a01283eb7b779521a0d80c898bccf33835dbf1d1efcdc504e67513b1b6eb7f1859f16f1f51ea81206bf7516764e6fff7ca1525ab6549d2e23754cd300b012876465b901f492191c27e9fb23d33824343977124889efd36b797202fa92ad95ef341e76ab8c51930f07c0a63eb78d73ab8bdcc9da6b411c1efd7fbce2aaf8cbec385cd85a62ab046fa7f96402b9f551ee852c30aeb81d06850b8c631ee98b85c204ad6fb135dc1a2bb8e2a1909b02b0b2c3e02074095dcd3c518873e97448f123bfebe5f25d2270fcfaedb70f8ad1247cc7e27770ad4492101264425dbaac99a372d3c1e9c67dbf90a9f474ab912e0c7d363a54b630a5894c613eda6e7ebfcb6fbb1d7742c2949491e0081bf4a29f7640326910de23a2a6c608430f126880fb2261e09a01d60589e7d7c31a7b2680d17c798811c54f3b2d6a624690da590ba764db77af7743b71d016d08aa1ba1877fbeac44184e94237fcfa99a741d51b1eba1440ffbbfbb0d4c6ca5bd6f21d334046d087dde3f720fad218b256b3af246f78454b0db80475dcad6567c200c7991ce0b9502518a1d07a82f82ddbd1121ef9ecee735edac8cfb6dffb9d5c37769aee3abcf3793c6bdbba657cfbd8700ef5e25baed17cbe1d9622b4e4b4e4251854aeaab040cd97a0d454c1fb91f0109fd435b86cb87165c7f3dd1bb989e24fc7910c105c6fafb07118b9bfb1643483cff71f7491f786691e87286e7228ff36113aae9245e490e6733cdae2c0b409605fc1230261422b7599791a82f2fa2f7343e2d7ed6f2aae32fa890a8b6373c791a352c3bc8ea285a46e965e7c8cb78d47c0d2383cf1368fc389ed08f48682b4ec084003f9c684f1c0e46449b5ca34e2c9a8cd723d073babeef0c7ebf00c88d744b36610f6376a9b60d561e76f5202b7da3b362cf45d3d5151cc170aab83de480c7e78e376ddc8df29e5f09a4fee971a333aa87f0a99e02aa1abd366e0a25f90d0c73c79099993642f62fcde6b1988cdba46fb8fd093fd00c6962547298fee2fffc76b2c5be577df25c0a3c5e432405f84f86608df6588b2c254b433bfce23b427953ca5b35758965b8d0a3c767b6b0b973a4f70c219d97ec85188ca28ae023ecfd6c58efe9feaf37f7a578024633fdf03b8810c3015de43291c1a37e07a10d41d250e0d79b373eea26bd7297224fd75edaebedc5d0d169a91e1cac65399a53aef7ff05ab75828e19868e3efa9eba8dc7aca1482f4b605c66a1edbdb4b77308e0373efb9181e279ae5e240f016aa9aa51096d5c98acee9fffb31ebe5f61f4f76c17e64019dd9e9fb9964f531747fabc2dc020fe18f1462cc42ec56e182882904316f1cf31afd2bf77bd4025ed794192ec1224e62bde0aa192e3d60cc6bbd4e0b95257372fd3016fbf1fe642f852b4ff0318fbc64ed9853d5ee3085de9790552d4d522ef39dc8345f48657b86262f399a8761c6c7defd8030e9f9a48bdf8a8ced4ff2fb98c43cff5ba59186355ed4e4af2d7a2bb8ab37e53b897f9bf7cfcd9cd99af97dc3490704ff6ec453c98e40b394803ec098ea65f9096ef02b8abd334bd34e55753553e51e8df7c208d861b61483a5516a3244702cf3affc9eb5dfe58a450276ac2a5e77012f47fa07162d0e6a1af39ef9e2c18825b27bfceefe8137aefcdaa0847e767a0c57ac16f00ed988d98b366bfc71bdefc362bf6f30bb3e49c48a58941f1e27ce441e927ec9cc7f72d652807d855b3caffd77cea8f8225b209df1012477e5e323367a74611387aea90501157667c8e0dc72790ebbd88697bfdd400d9185479ee64d1e47fbef6127f537429ac8f293af14f433ae22cff44671b8bd5c059feefa404d6ae92680774410b5ce883e80e20b1a9668c81c1a581c9c2a4176675290a062ff2eb3caafd93f8d0e41dca03d7832b3262060f71b6c357822fcdd0780e13f963cbcfb2258084f80bbb6f67c839beaaf81fb00f6a0c396df4f5bdf71f995bb5fed680620a08013300610785b057cd7651e5b59464e4f184d3f62445f1e2a3dabaf113f2a94123b6761d5d04a5f36eadf2163b81c7276b55cad79494fd9ee70fee190beb6e5baf8fbef3771b627bcba6b5e13cc729a10eebb14622d2153776de616e94db4a760e0c0c84c9e0e1f87ae28bab351a82ed39cb7b48ca81665aeb007d4a5c34818aa32e3079f1506e970170078f64c7b93d2b1eca9eaf120dd7cef12df98d29b5eaee5b069793d50a30ba0756228d2c4d406bca89d8cfd176339d1779fe8ca889812eed1355e0b4d0fc130cfd827e179684f88a45c6334dc8a2382552bae52d395615d337353c017c53f70c810c7a9b98062a43f5d6903b7feef1798efbf9c515ec6c7fe5ee668178c6481911d9192218ed99bfef40ca3140f93c376c0e2257f664537c3b351ddacfb7aa3f26fec9e38c2a86fa660fe82147c7d801b2ec8fdde0d17152723ea86debeb51e2cf9f1258384d59a6c23434d5f6379a576ac0d5a22b508cd069812ee25632def1849ee18f164f30d8dbc0a1d01cff9b6f21ed478b66a04effd3a0a721833d15a0faabfc55e97c0d4a5e067b74e6f2619a4bb2b6838f94506f4fc9444eb8530d8db7a4da7eeb4b63882c46a21647ed82881ad82d7cf05bb0472fb609fedf242ef97cbaec2de437f7665df29979483125e36d764915e14bd3e3b0f39a8edbdd0b158eea39feb32dbe371f9f210d9bb65fb3a871ee77d97ab631469f49d6ffc4a91aa1d711e09170c9d1b28999e4cb8caefb10b498c142a76e875afd6ede93c7eff99165be66d30e4244f41260a9bb1ad39539dcce8482afe276d6dcfdc7cf5239ff841e078858d3ea746d50b29ab3aaec747c58caa4b06cdff65bb47c7b88e027c4e4e155e49bc0179164f53f77e2db705e269dd5c1b2e2d894926ab2531da295179e8a908a1b57bc20d0e0d21c49d3d0ad13741f4932a208038d762a4f69b5058cbb00153bafce27553bbd2cadd03c58071bcc2634eb5a4e9ecd2f39427f195fef9da6735d58933773a116f1d7a545b7c8e359a4e49a9499e6225f5d0171d3c7c9e1699f56392441e3cf68da0c97fa71116d6205dadd722870aa1844f194167a82bc7111fe1c94bed74cb052bd52e6f290b8bc9fe35256f398d1fa3c3c00b338689240917443871e10fad360d5e6106d6f180875e941e77c5f6695377fbb36a4af316860203b5c2922c50e682e87968b6a144d1420241b006970b1db3bf6ed9960ae175f337b5d4ac83eb8eb2860b6c0dda479a1997bfa607d14f6e76d212496530016b92378ec3aef7cb5b5fce59c3e09647407fea5feebd3f185bd1e632cde2a7e47e6541876b7930654febdfec8ae19655da580794e3cc546e219b5ebabb2ca1de2eb7023a0822a738faf6c1dfd138f150d961a5e80466b782a1ed20bbfc5cc749dfe5b30984c4483ff5c7c5be7f527a1889578b74175fc54ab8dbdc71f826d87aa146bae094099fdd401c77b92c2fe7b68c4a141d04c74d925d9a80860218d50cc6b04ec495360438c1d3efe2854c2f613c9e36893bb5898b05a326ff4d765a1578ef0b5461cf4a4e7e007d25e6b70c70d0fede9d69a1790edab608e49811a3272c5fdba9581fa485c1c2997c52c9a8c125bc821f96a3eb6c62ff2fc932fa05362d914e749bc6c8266381dd1e53da92e157204b6a618ac8b6b0224ac2007eb461d59172b4bee1eac1ba3e33fa372778c452524953c9bc6326f64f827e4e7ab9cbc62d2210a9ad690bf218413b65aed358c83c91aa2aea4f8f603f583f56921dd33e7190a7ee992464a19fe718c7703cf6c98036d56008bdb66c84952ab9e0ce80d0ecbfe5f79176621bca1e330816c58e13e79afb57266ad6411145e89569b1ab6013dafec2d18c204e8803616d13286f9c21f31bd2538243dd76cbbaf661e493d64984835621d1117e43526a9d2d8157764888c11fb274669de0c15e4f3b6a619333757760ba8db20fb11037eb2cbf5ffb774b818c8577851a0f45ab76019c786828dcae51eefe7c2bae22d61d43d69ebbf01af222ab5b1966b20c15c5c05c957451316aa12cc73a76307e996b36b81cd5b5e84d6d153d2ff303bb0348be68eaf31816625e21ddd8e9b440cb375a6be21e2f781e2d9947fc49804b4e21309ae550267c397e4906305677ce236ed0dcd36d997be5dd536d725fc20dc3072acd78abe8bb93986025dae6a44c0fea1faffdd25ba3a80b6085a42f5fedd3e9fba6b0911963a9433c8ba4d1db1faa5283c0f62ded561822a9c249af2a4ced6f8669e1242cb0823b0ebcc1d766e5ae7ed7488fa546f952c05ca8243b596c82f85a345eea6002ec4cdb5cf5de56349e476582c56e9c10a65c95c0de17d4f6f3456654be1de42b7e9673c4aeab1ad21fc516e327ebaa02ab42d9f665198b3a29428a467bbce57218ed0a6583a9a507552a7368e74d36f57eba1a42057e4f25fdc0f7c0129adcb32b71ff86259b0019a35afd8163df3a79563f14fdb2c045a94e8f87121dfb37752454e33f618e799a12857745bac90f46c2ff52383df7c19d3ae6db282adfea1a60b1b0cb876da27bf83d2d6cd056d2300c37df7c67445c24e38f2a0937b90ed46a93baa833935b9756770e8ae9657ffe563a1da826e7634a0eccc2679195e6d583b2d025096fae4e748e00d5eb6e697fb155abb2a8eedc3584dc6f1864f7b7f0afc4954a0f2df13bf31df8747da95d66fe0175aeda37e4a41b6d9b0ac2fa21d10b85a2d024b18f043518889b306f74faddc745346eed00ab19683a5ddc6f6283609d0efebd2f5636d19e6ed1aa7681705143d9381cc948c84d4ce996389d2b0f3d0e94568b0319ffd46b04e54fdfbc3b62d24289ce083de765ee089493bfee289edcd607aa48ab49a47ce6d1e0e232c49726748831a8a2f6856f8f26b38a8c957fc11651f063db4bf5d868d0e4525705e812c7d754df527c6253998bc2fb20af2fbc7f10a9007bcdccc7e73c9ab344c1d668134e114687ba0ef856af4ab76de0d95bfdec53ba4882570b97fa274e7aebed545e3d42f895ded0714b3fde537922ed910574a0eaed7aded185f13262b301d55b77cc4a3761da7757a8058966f8f04b908f60b7e9d855f1aa05b8c112264b09ce3806f674a2f3712abca169f631e9423714dd49529facd119c97abb2dcff792ead6192f3444561d6becb485afc82f02a7fcfe2ed4aa6feea1d0c72e00f676a7ed07ffa9f401665c49a9dd7e051dea8c3cd9160f63decf3ccb56075c8ae2971851e26c58bbc8f30b3e3a12d2a436fc6bc74f30a852fcf194493141af9dc497d27c6e2f6af5c1ca9e2617d14793defb7678f82cf3ef3fe1ed7968181a0575cc59798e7599f8ee542978ba3db5541aaa5c0d1080efc14b55bafc6c55359d7eed4ce335bf84e9f22bcf72bbc6511a1520007c8fea90054bf732b61b1dcc4bd97d18242cc4c5ef0f99532c7961c860cfa4ae739b64f93db23707677cd6a933274d60cd4164e8bd3c328ae56d38c6269f9ab1ac67fe6d9551f8c22c77e13ce5c92fc8d753807fc817de80a7aa780ba1a7064ed963121bf7a85f6acf7b0f4b878ddba6d2b7791f85aa988495927d612ea4149961b4efad5ed1bd413de1cf6fdcc5dcd815909b0db0e940aad7ddd385ba136a5d44f855361eba207c2a3194fb1fb134bcf6bc130cacbe31a34e586bc076e89ca09572eecb408d3fe9af0aa104b135921f2fc252999fd5d5ff2b224722546d115656f617447c021d84a1b87ae2f72994b0a9ed2134bdcacc75fc33751a1b0137f34bad67fde27307e3cc1c3d54aa7ef844396bddc4167acbe41caabeaf1b8ebd491d4e8e594f159fae541b844858ede6636c63da224256431db7bf4e40bd66ec78fd7e6d355d78df457c30bfe5887e9de9cc91ab9e5c384c9a26cd890ea322ce871b9aeb5cc8d34396be903709a2d409407287aecbd25930a445723c84201b7ac07f13efd1605df47f93a66fdc0418b53e3015cc417e5f8a0775d27d7a0dfdbb81cffcd604c79111d66ce2f17246cbf090170fb521715285926833d5d90a8e78129292f5dfcdc6403697ff2712f2109b696f2a9a30cafcb076d6bbee60bfebd3a4b6d69c77bdf7968b2f979d00cf2832fd37a6408432aa92899dd99fbef6963d90b3dcc0c090fc64721184ec6b7b6926a8f4626c22b4f4bc7e7ed81004f92dec821a73e20dad8f68d389e9693fc28215c36706ad7ee42cde50be16fd5828bfda265598fa0b6d2321dff0f152a6a96744b6b427aef1946507b4ec286426b7f7773560ed73b66491be93d42738521b94f19c58dab21148175dae8ed6619a24cc4f855454b7cab3b2b1ec4279bb5bc4ada4be9844bdfbda1deb18e6d5e224ae0a3f2abf56175146aeb8329b69eb1f5d99c7a433dd1d95deac1a2622a594ebe1d9f51bc3ef7daefdd0cd7a2de9a7f3817f2cf8c645bd4507ee3bc371dc2ef8e9b93cf702fab446f7b1d6fcf38069651383b71f9a2ee1c1f880774a123f682a8ff785cbc2cd17d9ac8fed6ef98eae35c50b057021ba808d98832e8475ca2aea60f113c53a73cc388851526441ca682f3e776bff5e2cc50897cc4af30c124012718b354213217613460e5a5fd8f49b61dd29a0eb46028f946c7d4f853b550d7ec570b0bd26a7daf615265dda80c69ba4eb11e7c8893b5a924c8e27cba223230c5c5c510df93f6a93572fe8492b6e534bcbb5a9d199c19c458646f22acd93f3148d6580287e88e65c65de6d588199b7728a06aa86bc740fb4d0d3e8f658594270a960df31f61c4cd9b4d507dfc46f9382322906dfcd4988a298720dee6062279c1f1de98d23eb7ea5f49f57341a0b3d1812e47a836190013c16a32385c2359925b6eb8c611a7982c02d3b06804779610baa10165d96e597fdbd42bc7ba31a6c86f66ec3391a684cd63bda2cb7fda57efe877ec75ad4e08e5331167e643154c463d6e3df1d9ad558e9730c829712eb88e2a6e1a6cd4e600829a2aa37f7e4e22e04ff0ed9a519e427b4218796d93ef3d1dd44f1ae33bdf96956709a6247b572d62d9894e3cad8b7ee2190860a87c05ea9abd30748540ebd138af779886d0bbceabf3e3f46f75b4397b2b5df9da5594ad8309e7030976698cbeea2a5a2a70ccb3be00d42d96746e9bcd242a7bd51d482174a8b5e0f60814e41ffbbcec17495ace1b6574487b0589f5061e40455b6cb16621fd6b8ea7c5ac4eb30920596b3fecd5f92b2f3d2843748e2d0cd180b45ae47f2cf12eed5112823504e702d7bff7d6357a3ab820bdb314b11baec5844547e7c25a219bba9f0c950123ba1fbdca2359331d773260209560f1da2c6932e7249e712cabf812b11b3aa2e314a1ecb7507893a8f282918f66da6985e96228e94ea053f550dbf740248184f67aed64e63cf1c0c05ffe9f30f543b4bfe424f43fe4576520a4db7dfc607635bc19018f0a579bb7a26195c20941672006b02b3514c9a877a8c18cd4062a6385dc15c0cc4b119750150b2c23048f93dea406d70133dbf13b9dbe56425b05b0862add74a4725be4ffbd99ffffbab29480d588dabb0cd79dc3b1c6b863e6e37631e3d16e8b192667ff007d390567b6b7fcbc47cd3910b17e93336b1fce41f31961a3036def7ea1a1d264b21f2a82ce96b23e29455616cf0c663c33404636e91b53a19d28063ffa89a4c000a926bb4f80558bab3075523a820edcb1b000b8e3c3edd8a05c0b26d2a9d2116eaa72738982d2e468925d4fad3119b9737ac33d079b936358c95e6e7ab123b9c393d2d6585e4d9b4c56361868a3b6a574ceaaccbabe22ec874bdf35aaefe0cb4a0b7492dec68616282f988a85bd70e39499f95ab147526c9323fd3604065179148ec7936077c20ecafb10d4c9c3f9695c652941c0d8f32c7d5c734c46ae37e1df97586b422f6c414ac128016f53f5e3edf87353548151b85ec45f8ceaa17dd28e72784f629ecd19ec49a18970d90819fac296be522f11b1aad482268fe5c353762ff546702897c8791d4709302b5d96838613cd9fda35a4a41b556f4956455412492b8b649a528b9613519af8199b032136981e8defb6dcb2ff69bf37ba840c71fc4c56d94db0649f11b4c033ed598eac8f949816200fad4a19b9ccd6cba00274600e2a60208ecd24615d3b581be73f9205a7feaa5ee3e66f972f91e9fac2b00b90c1cedc35c058dee9818ae0a3073badb4e36639d0b7d9bcd844df0b620fdede46606a191d33c553b57706900cc57aa2e80e38b2868273538a75bf520eab956b1a7c05ca47069aba6425adfee7cd1d73b877863d869fd7f8894f161ff75532bb8bfcecd5dba81d78b5ffe55a9539305769f559b9b787ce0f7fbeb1cfac111be909a707a3194d7fb43614f5390b8d1e0da905bcc445894cd2bd38cf15e9ff84f190c9986df35fdc2ccc10df517d22168d3b33c15282e1da89d1060bf21f3d44dbf864bce1f5b6947f7f9c751f3f0d159fb777d31c990265e5f12c1ef1ab57cdf72a8338fa5ceea89d78f674eed90da01dbead7b7365a90f648aa5da47d8137c2119c5322fdd37fdfef693296529299b6819ad1d63dc753663a6ea0ce219d73a9d67cc05ffbe6023e9391711f60fa81da0d14917bcdcf17a9f1668b7de12ab954f74fba56208d774980b006b9864e3fd0e1eaa501958dc59bf9ea3b01006b3afdb330ec6dd4094126c23a69fc46751ab1ae0e97da8996e064027c93bd628c08767c8bd17ecb58d7d3b41439b4e3151707037b5dda698fc2a679d70c6418789d5f103b30a986d2230f5b34a0240e3e75050cb1fb046a14de86f3b8992f3c531470efefdecfb8fbbd2886b289ade66f14d28b0703afbe4a78b96f76cd3c11148ec6abf54a4a17df4e0abc1d4b3603961fd1ee26ff743da92b08b0ad62da9c221222341403f980a3e98f964c850d26a6655d9fa20dd4756b14cb8c3f4391e32d1f319374381760658d54dc693e10c4a8323dee3be1df61f5c585fe504b0abc4a95a7084a626cd3d53a13526896d9f7ccf9cf9c57e9e33b3016c2e16e6254bc4b0a4b6a5f50b153236573ab1911f808e6f6f26b76f0f5552810a44f02696c4a3e572dc6185fcbd4f791f6a7c5d944cc6484c454221bd196c121a389f09745aaa8e8260bf24247ac727c44be3f9bc9c59673fc5034b158b9b692e0bda1cd7312b459e018eb1ec2b10a8c49d9018a061bab112140e05a3c4007a9c8d4cfc6de125c75a798afc9e532fb8b77e526c50b1ff9a92bf4cfbfc923a4ce98d14bdd1ef9f119292c47b04ea3bc0e692894d6b23a9cec21e347947639796949801770d13af37bac4d75d77143dea84085c8aa2d4fa904389d11e78a0a162e935d37155e9da0a6392b1678bdbaf89a73ad432372016e99bc589e3fa5d2708af71359e72a8ba28c55672e4bfa749925956372d3bf460af7ccc247116b7e386e8ab415b1f96e09e2b2531e3ff525205a532ea19395b0058d0d41cfc63dba76c377682a518eff4d634bea4ed1ff0fcee822d2decba057c3af364f63efc9769c83a1ccc4be039524dc5514da8776071a54654f89caf9e0c5d0eea131925fe0d00a2cd007998c4a26b473c38df060e1f96147184e51e9e52735428f237d8a5598a7f0ae5104813c3025e64727c7a04217ab87b810657cd0ba5e009f21861492109aa3f5fc3def8edca3fa93a481e8a215c3aa104bb97efa24ba514f039b75c1c2d0100ff029a535385f1875a3d242779cb586c76212f52d199f3646bb26f844afcfba1cf2e959cda553022be7d90bde4a4e2a8b2638e70d55516b086df2bea1a45f2b87d494a48cbefd4877c927b17cfc0e5f5df813c988dc611d2e785e2eb71b9c547a24929e72f769860e40fcd82fdde65753594212f0a52d48c656ba090fa0f3b99ee8711e1bce57d8d80e0d3be88ad98c3498d79adcc0b75f9eaf33ee76dd46b1a3aa491a5c0d3235390f5b9fd2abe16e83930048506ed2251575a742378976dcc5efda85abe18808062bf0fcc6a136c0a1b3ae25053c98d6a53934fe26b717477d62d985f828c065509c7e287d35255fd47022b59f2bdd3609f250228e71a8d8a2062d0a2babfaff961020f1be1a6135f2b44fe3f38073558cfc23fbfd71293eb93af5bfbea1d41a5d4f0501702fc0eb4fc09fe560fe6a46c64559316ec7865ca87569f45267c3b7688032c75c428b718431883c4da2b7f75abce04cb7e64468d6aeffc71fb9d0cec66257e242d7e3a9c42dc14b6b3b1fe74fbd63a1cb706637da36732750172556c03f7af008188ad9abfb7d3a1a3aa86774a05fdfda9f2d4f63cab1e97158337089a876f536d99f736365269c5a2e2049916b8840ee56dabe17993e3f1a4002120b834a7502626d4eae9963d4affd2f836321a2874e24576effd75c4afcad5f5524b2ad33e5f833a90a0b55f8d66a3fa563a1bb80051545fed2517572296ecb0422e597de6224b3aafc8ee83b7c0af27f9384d65370317acfa0078586ca9edefef81b6da4b596b6c5d389ca7023c121b9d6d72f9c9e9ae29ca2aafe0025cd704d38ab128efb389760fd1569f7e794ca6b958289696193a10becfe96e2e1e606e9a222392dd130f274dc709e06bfe82b311946eaddd79cd96e5ea1b798172c34266b30bcd80c7bcf849dbaf3ad0f2653325ccc54288ace9c4b8b9b33c58e200244381e2799c45d907a7de920c55b272bc9990f00656a9eb0852920673e87fc44f172af1f88abe6bf1fb55c8b9e93037f7944cba01f7176179b7dcd7a3450d5d2b2ce99c5e19fc1f673862aae52f433f93faa93eb50c9b3886c97d9742d79e5ce40e20c5ef58d1b7711d1e3c85c99839271a8e00143f3a0a3e87d7cc7041ba1d7b2a199fb82100ae1458777c80449ccfbddc9c5a06b965101df1abe427cd3e671548587cc66a85e05fda71c3d4bdf06186c9f4f937d7ea60e65fedd036e8385b68785eae7d42f00b623657ffc38dd06475334fcb9a8466b21eb365067896c7ee28dc3792c3e9196c0a83e654feda78e01dfd91738c0d76f8471bff8c655c4e8f80fbe2f201d2fbf6bb844df557e27e5f34dd36d2e22d3848576d10ee23d348cae8a78facb64d2fd9b9618363a0832ad7e8562bdb3cce486fbd31364056f99b2c7cc20eb17932e4499666ba6a5bcc7e077205f26b9f490349f200825c0ba3659cb24f2b00491452c9aa503d5fec5e7195ac08c5d17090350f3f0b74d42d873091a956e8d828980fdd81d9fbd504bc6846677f41e53407b583d91f9028293c9e87667acbb9ef5f152e7ca0e0658899bb86401f5676bce63982691931df239cb99334fee4e430d38760b3e56708146f6fcbae393269dbab9f5f42a3d476b654eb33bfb983db009fe9db8c675db1a08bf80c77c1017c5f95d37dc974fcb3b4233fb1df5cd804c20191ca6347bb92c194f28584a526a6ccf28d6e7e4ec21b774af29a31cebd9bd1a4e7c8a97b4f193846c483d60c9ad5d31b537c1124891062d30bccd5824ac5861850e62eb4503a2ebee16294f3ee7ee1becce8073a3987925a50b84e5622093649b4faba75fcb77cd4ea0484cc368b8684f5e459ae7d6e7e0e2edcb32742e89eedfc27774eb359dd11dab6c7c2aeea18e083c3e036b9a673403d24b2ab3b360e9c79d21c72b8caec90c619d12bfa19f2408f1e652a77eccb417989c5cbf96d8b51f92cdb59e3480671c914129d7e81c667d00e7cd866c00fda088bf8158f08a90fa271e0509e80b51dbc610d89cd1297f27d04819960e1c8c2f0352f8003361c366e0558f8bc41ceebacd342ee3f10d3c8a281ad67a8673db5fbec5a221d2be8a75758cf279bfbbffdd859076bf22ff30e3456d2165fab61c8c83e3dac7ba85b564f362bb46ebddba8e026244e091ef2564851f5c69385ee8c39f83527ec35e77f66fa7c4a2179d827b7ff848ddd7387b8acda9c04fe427a03aa80d46ff099be417e80d7ce175eeb284a63ed9357d1515faf60f980d9b8cb51aa3d5ad952f86cead6b395b7badb340248528dd94b4ae67084ae7146bf724938bea9b1f0fade88660aff8f4eb75d9951aa0247b78a4b6a2a8b481d4683696f56720ef039a5fe7a85a717379323f14d1fedf8f3f10eab78c8919825b5f53c838b72ff29e00cb3d2b21d5d7ff76efa1f5d8b8bda20db17066554312444b412b194b7d46bcdba08ae2e7e302299e3326301b568111f5c25506a590e4ea4b025a40b667094409b94de0f651ea3294088317bbf40873264a0f50f828c31291d98243d7a230c6d3edd20f75b9d93afaf2ca5b9814c43b654ed8d9f7627f8a6e6eb14a67c85ad8f4ce25f11df60ffc1d934ccd0ef58e3239bff1c7014e17b2c5ff91830afbded3f4ee7d6b10047be9f66c8c4eff2cfc319a7b1313bb33988c2a65dafa4b1ac970d607180ffb7fe998b6acd6fe1a3945f102a5c3854c0ed37a367c5f29b14b1b1ae9f71f33ab43153fcc075efcd8baccfe38ecc960a4a31089b8bf5e876be5fd1d4142f964065433f04661c05203deac95520c9f6b7f192fecd58c9d256348ba740f2df02ba035ae1cf4897cb3ce5ed89ea8758848ac8986c07b193fafe34e7e4cc85a8aaea89657e68c7d24739c32a0c8d147cb5d3641cc8248ca2b883034ab17e73989273481df568417392b2130051a76dca97d57cabbd4d53085c8d58cf66db25e2fad3620eb1d12130cc2c802d4219dadba914bdc19ba8f3c4d03d786c0d9eca3c1b6f3e6b72cc825417afee60133ddddaf02b7f16ee4eba67e751fb76b139e3c8447f9a1ab0072843f8066531cfc0a54dd001dfbb846f577257c95942c8da7d7a97841d4759ac35e288e3a47bb14818340d01fea49b3a1b925aeef7ac075115b236fedb90bc0cbbf067a9cf9ed88dc9351d801f642a3b2e62c52bbe16a9bf663af9d41d5c6cd9518f0d13a39e3ffae5a999b9e21afd01a36dceb769b6ca8681d3d6ec52cafd7e73daa4ac5f263fa229e4b22d8c08a6634262e13d74d2901e2d0772615ef57e9bd49a99e3c3c63329744d7a23ff98d294ed812b224d47da4fecb9d7b8d8efe5c2d38d85259f2a52c75f21f7cefb7255410438940b079a535f5d057c6234c2b671ca886cd1d62d3dd669996593b0a8ee5327913382646e12dea2635cf4f93b9b97d85ea24852dc3f09da1f4bc627e23640e5201bd34c059b31b4f7c99543ced004b79e02ab2ec0e26fc5fbcf5cb542a632e138d5b426c5c53f9668d769d72591e5328a2dcbcad7d5378b6be9f35e8783fb00d54ccc5f0f8230ba80f686a845ced9d53c446facd14dd49abab18cb32233c217da74ac2dac0a07d06d4548c7693ce4d06660ddd18f3000e763a94fdd71c34423d0ec3de8de7a52aa4dd2b839d301e633c24af8335bbe33dc04b26797f80c1204874a40a1dc3072e9ae179813e7efffca75d3c6b79d2e44b119c23d4e646a8cd9fcbd5794b69c66a4d8bd5e38dd106bb01554e596303e834e63627f26c39aab9c40f0e05b4b9297d65d2dc48a0145740d9b8716caf11a61fd314e3b452b9fb7437914a32cdc500e9d25b2c54cd1dcb7d13b962c1e4daa5bcf8dde8b62a3ae7ba48c96b06d07b5c75e84659180c7fd0e4ea7e89251dabcc7a4f47605312b88842721c1cbc99f581814d23804e3c74720c8abce2f580ace5e084f8871b0b81c52c3dfedec3ce5b6f051d044dd021a76af63f8226d6cddbed337dd5729fda02e63ff27406f36f5dd19cddb185222ec79531a10d5a5082d3b6f24b2d7ba7b0f0d8023b223e4a6a6697884aa8e3600f9d5db0b90bcdbdeafe064e7c5d856d85b343053882db4c90dff99881332e14e6f8ce421926c19d75f2bd09362a6bee22d7e31f55fce5e7580bb5d76b01341afb2d58263204150d5a6bb4e46922ec31261bdac07b2195fd93f35be5b817c8b439ccfede0867cac5a16fef0df905b070b12d2ca4ed00c05f1f1bf95ad6ceae47aa8a7a1af10482be3a12270e79fb263167b7b5fa75f219fdde1b696e3bbc3805647ad58e01bba62a7acf05f93b40e54f2eb8a05921be672de662124a24f11071942d8ddb6547819569ba8e003f9f39ad8a00fe57a9170ca53c4c68c3ef3d5fc61ad9ceb405f70712b3a1c1d4933447ae02fd93ccde2d49c3f6d4748a7f510e40587278a3d1afe5301d3f3d9e6026084e60c3d1a2c53f606c736908bb04cc07cbe9fa2ff99bf47de98bb6c9e6088e2fe8155f1d309a09dcfa484fdfcdaa6fa22e610463f86e00f103037345d0eb45c964d1ef922d6612baa31321fe468154f5075a889ea0e7bde034bddf9bd3f920253a73239b9ea6c75be669196b6e0a376cc2263458fc2a76cc037598e99a956991726c3ff7e584c5d59fb61366b1808e586f8b1bf098c5e13c9512b61498c5e3eea872a793ed29f4712653be86f2b89627782871e2cd76385f930b399c11c1a1fccc1306b70888e5b3f467a3200682cde39e6b9753b40aacd9ca9810816546b053a8cfc3e3468ffabad31752901c2147bbc5558c4f23ea6132ef1e676f560117823984e379490da7518f413de61461423d220b21409e3b5313cbfccae513ad51cfae74fc2586b71c1bb1feebf5a97657246150f72defcb7d2ef3f69c6eaad4be986d9d12c11246436f75e017de8f2acc3d44fdb689ae1a7bcd26b22f2aa4f92cfc8ff58e72d16d413720cbdc40b6cb22ced0eb806e200f95889f41f1397858f4e3e737160c9406e4d7d44056734a0b6859dd80b0636877bcb332a90657fa99f1ce14deddea38f05570fc300f1d7430f04989621ae098ac210745f35c83f74e29b184ae7e63eeebd2af4cb3ceb8eb31c11f66a903d5d62d899fea444cb8af77023ce429ba9f97890373febdb054bc559c55c7639668d0a5fd5cc68f27206c0a1146b00d03b345923c1d671d347510f7275123b0dd6d4d7a475d7cea8f6fa08f16f4d136d2caf5c20c90dd0df90a8729c769494a385e0281e342563cae449929a88d006f05b35eb7543cf3dd9460f944826bb11ae9be8e15d29f1c08ff68452c660fc7610466e4a68ee9d8f5a03c7010e10f8633a7968d520e7a98bd4256cdb41b4b48744eb5ae86a5a7b6f31e65acf023be3c8a64aaa16cb2d570d29f54f1ab5ac734ddf57daa6e96fd59078aa2da3124fa30b03d71a6f2cca6c51fd50a7ca2f2d801bc706b0aa0b4d213da6fb1fa18a98cd8df804bc5961c8c0285d63b2afc04638886e206de05385684c43c557e4c10e5d427bc95d5dd988a710b7ab002e42cf795053f162cffe6360d92c081415c69eb3e90b3d5d3a67f320361aa5cffdcbf98e23bda4865db3044866af1d5ba225e3e29b8431967064399b96c04eab35790975a6c15012270fea7850bc09101a46f51968756a675150ce02ba091e4b1762bb93f9d1b44838b2bd148032d3fe6e9e686a49274c8885df49363a563d9219a1d8744f909757dcae6dfd5137ee7b7e05a3cc14048b3d8b0150d5016aec8dcf8e344e0d604835a3cf013c5fd6daba1c4017b05e82864e388fa841973fda5c880044c326f6e04969a3969eb56aa8e90d908e4b0f7a18496ba7f8bd4f7f405b4cf5c8015d85e976b33e947f97af8e6cf42907333343c6c184492c72ab5b2efff5c95323a4f14b7a8a7343093177c93f2b986226a8f83ccdbd8bd9cd76d2c59ef7f112935a7376046f22cce3692a03c186c639a8673522f3e109294433e1c70225dea07b126c58e511faf778aec0f2bec109f865e20fbdb7f95697441ace52eadb476ae659e9cc0d7e4890c507322a5fad2e55170f761b87dd0341e1ac4a184500fa237bc41a5c876fe53e7b3185c56461eb1e515558339e8ba9a832f71333a328bf5c4642126294133a2530f39227d1ef9773ff27c8dff0f0482e5c4df041f11dc8d17d08f9046e64cc2526010732f43c742934e8c03d8cfc93a0c4ef1139d80e54b762b1aa0086dab7c0aaf5d30f36ba5bbde6b9f4de072955bcc1231929c2ddd3a5f3ff014034954bbe6eb1328322ce5994dd635b8f90e27d3d3e037d18075f3372e5d6d8be29d0f46967c1e990c132d46737a1a33a9eac739d8559d92073739fc2a06d1409a434be8145bc6a4074816648c16783dd13595b36b1736e015761e387790254cce96df604a34645eef746345fcd22ece49f9e74a21732a5c4157957a35e8433c9d2b95487e2f41c921ef65a008a553842d8c241ca03094b9f40ac5b2e59a7ba296babc41059315b5b1ff55b96acb5a62e6d6e4b5aac9a5d5d40877171b579a42dbd7bcf12e0a0db3ec3131a3518b278743e5d73ddb5d7696c0bfa5b3baa0c3e3f002de6ffee61aea199dcbcdcc3d54f6a9a061ba99f7727941ac32be3d6cbad9c6023ababa50fcf09aac5fd5b53310004f21eae848ce18cf7b2f9402bbb89fb976066d258584e7e95706c938aed62b0ccc0d04e355adcb5442e803961f2da1351f4913550b8ffdf335ca15458de2d93f9135a88a88c1244b7b7a76b99e0787dd9e191ba76f6897fe9ad3da5fd45e9a2f525109c8f27af4dc0ba41f777e32bf207892d9d9183691be5b97860a8155052fe0c5f4f6ad8aa39ffb8fb4d3433faa3e52a551bc0aba366277348291a8c36b5955e5bf8fe9e5653fb80b5758e875cfa0dc667fa941877dfb6956a8fccdac947fe9efb7ce682558cff62a2db4dd0cb6a13938f7919faa768b7b396cf0cfd44b82ae962241284328770bb0c232be0b5b9e3b6acc4f31626d93b7fcb3615920b3b8327af9f0f94acbf1c1a48d3236882f8e03315a6368bee5c1221d6805192aee79e05bc355215a795db8d83d25c93612c6f27d00f89c44ed6e80d4a9800f2b325b9c24bf885ea08acdd233bccafe16d449e305b101cf05b73133b9ef6824e49dafec0b5da68ce5baf20741469f02beba4bbe7f070d76d979ab6dd9a5284dc28cb202f4a543863e3f2979c85615376cf166dda3534ed3c6e0e6d14cf5d4f9c2ec958aac7f18405d411d56854986582acae55da352d94f1c6fe6dfce08361d27c765aa797b82a07b4c736bf89e624cb22a60093794b5261aa147358f63deb3cbc35515edd0a35bb4931211153f15ab0a240c47afaaf076dcce68cdf0fc9d97540705b617430917531d6b2c2aa85f70295721f6d125c30c52892079c5ec7e96a5b32f17c97abdf4f9d1913b9c88152f4f2107c83238235fcd23d6e22530648238834d2f1373f8d5a065e5e28e438bb815485b4ef3b658d9ee4bc1dbba8043bb9d9cd96323e289a4c343df24a958134082e3910314a420d6b31bc78c45cca92ecaa86f63579d47c39351604643faa6ce6016d024a51eec2b42d4f1523fc2134a5a2a47a69fac508dcba27850de76056d7d700f9718e79779fa09e34bc796f35a900ae741dfc9543313b5123d1399af5bcce64175615cc368bfe08453fce1b09021fa72d1c5d54405b192d831d9bcb804906d3da253b44e91e2c18a7d680d73ad69696f6b5c849047a7f28cf6a770fa6f4ac7cfd5633580eb0883ff89d133af110209752783e7a378c56a5715150c0ed54e44fee3b95e68e93e7314f883152709d59898448f939bd9e49a4f0a969104c2a6f28d24681a591a8df9ad6707864299350a7bbe044fe0d3ea687a002a07fdd591dfe69768255906c024fa11c3d49eb68543a18d6e2a94b66273da10af6f97c7f8e3eedb7e147a2110cc723d16776b5f1dd1d46ca9c087c1b10155e79f679c51e336af26abcc17422dd60bfe3b524cd9e940bb333cd8f279d8e268848dcb129b8aacd359e0dfb2d95040a7fdd914bc46c128b9d4d4527e8b34311049a1aa95b9ca7f48b2ab2224c7e2bbadb75f87fca3c534c39565715cf43a50b76e92c611442decbaf88794b6f552dc5e16180638e8467c1331da30c02986b0266cc1119b6ab2d78500739a451c4fa371c8044df6a5891a16d59fcbcea67d02f6657ee6caec86c93ae9719e3f7e0f10c6cb564a0d3f0bf21847cdf580027559e52541b3b0c0cedcdce10e921ff103d62cdbdc606776894641413fe2e97ed983b0f1ddb1f7b5ab4a09f4679a76d726045e83ca2f4794d46c05a4615885848b743930465daa777b93ef5fe921d94aa99f5c12b78863451c3db6e512318b83b4b4dbb95aecabdd92cda5b31a4ccb0b61395de748f6b59ed682e2419fcce240e72c662f6906f3bac5cb4fa954668a70f4972d32a97abdeeb2e056ed0de616b78ee9fc828aa370e61f0f54c6048f41c23e0f174c944485437f7d4a6f16fe123fbea177762995973cbe1cf146c961f682d988939805d46dcff9e073d2ebd6ee78631139ff389270f52d36be617a720247839db892581a5763005ae512807f6883738eb9f5d2af090895ddeb2a6705e87942f9d9e363cf088bc569a025d4248d163b422a5851256fd793d369d28e055e438e8951bca9c73ec9db44194c78f8a5380856563be35205b8f37431fa5ed958ac5faa7c11862a8c91238e4dd001b5c128038a7dc5850858663c3f9aa94b23b1d082a23a4a9ce71dc0bc0644abc15d06b9b5c99fb1d34b600742fe7fc1f00ab4545d62137b33be8a592f7a11a6b87c89ef53fc671aab4ac1d6dfc2ae21246aab7accbd800933cbc588d1760f0bb4a24c1e424d5a084363c4c32616dc0cd0bde9d715f00de885c457445f9ab3eb39b754f1e8981dfd8f9507dc33081e94b7018c2847db6b771be8b220e4abd321fe1362a60e53691c3d30bc123f89d14dffcf14f05d170ecd04a9b53d6c039e0711c450614fa2bdadac77007668a5bcda94a0fb5a453a24263d3a1ef06fcf1a783f5654d2108aba6b4e32a68aaec503f02cc22091dcdd277e506af3ee6a67561b87978db5f9b358441a16294ad9c5734ca1afcd99b2a2151cd0382045a638285ac7739ec60533b3bc8e9b48e8c527938ffb968af4bd42266e702935fb557b494955cad42224086d3a1d267a716a8e096f54e7873045d6b8154bc780a496c99b0c9cfe9e1e096ff1072518a44d1836f7cf9bf720e18b9a960ec8d8504c060d11b092fe040610ae9fe8ee64e01146944dd80372095d806eb8ed360b062962ce9646cad9558d8b68446ba14388367d7fbd65e2b2368b3441636232dbc333c5d659bf2b961a88abc0a8d6fbc86926f1b7fd9344a998a02a10a98d056d738a634f7bb09114d31d519ca314b742a3f28db5b6af38fb99a551a2666eb222a074e9662b32b597ec24f21642fa30ac36cb741780555a5572d18056e08d26e1e59fb8db916900385ea70a1b60f80d9fee677a977ca78853c64c71eb774d63fc6f133ef508876d6b4d0c76b174d99c95386d5ec5515718f5bbc66a2915c4f0de2e92ef5f5d2b225b4cf5f0423cb19e9603daf7e1e1e3324118e4a04e71cd1726c436378f1534299968f17e5f3cdf0e7ac9c3f2751bdd9164024332a627b474d07c39d9f632f2ca199ef1662242203552c55d8ddce9cf623879fa2e717efc2f4d3562883db5b7cdcc6671c6750b85cffa2f71aa25cdb630392cb8f89b80d01c38dbd5d96918b3bc5a5243ecc847f68e289a43457e2b3f61efef71d5cfddb6db7953cf79a715179da77e9fbda08cc4e71093507c88f22a338c2b4591161ab598b5bc0410b082207f566612497ca118b7110d8184689297b2ceccc9e0429dbbdd3d9f438b755337784f3d87a2a86d61107618a7fee704071169b3f53ddd918e2b9ac18d38dd78be3e3a10d95c3efe67d97ba53638edd7ac37b642b273780082e77d492f29bc9d8e3380862c9fe72df7ae6da539322e215883ff1e88998a16e96e54e3d3858d8120f6616c35f60573045ff78152894ebeec4d66ad3ec4642bd3e44faf82f689cddac4fb8426bf9311a900392a5408244c848bc84b080f9fa34c47da4c811130dc36179e5f7e4a7a3cc4e262c8c98e57360bfde27d23878a986ac1dcb80b12317faa5280a7915a92e8239d7aef83a205fa5c54fdc773b704754936c5c33ab570f3e171c0b7e5a2f668cdffec34326e43c938b463c2dff731eb5c2aa3e0d006ca4b9bcb2c53ec123595ced237b18934a4a1e86e3ae3aaeefbfb0582ba6f092bb73a41f3f793c2d70c1d834cd0ddb9049e9afe3c11f3627527d5c254875aeb971ed0dab43e5a8419e930445b5cf5fe4ebc88afde1b3d7a14fd3b725d2d760a77652e50035bc0abfa748304e80389bb90fbf7d30cefa988c11feda6d851fec98978166a0112969d5bc12fc2041617a7732d51969d70e0a14a6915a50d4aba910b047cd45c8bd13bdb9e59caf6838d7dbaec34fe3502a9165ee39dac9f2c7e40d1dcccb493802ab091b39abbbe6cf37cedbec8a013c58dea741be5e8bb966c1030798aaf997292f5a70622e2219e5d30c390482f55e408803a95e3fd15341eba35ba3c2559f7329f46df2850ee96387047fc511b393d730d2be5af390a35103f15e8eed0526ce8be69b0bcd1e1e28030b6dbd689d4514d64e668f66dec1e4ecec55cfe1a535054b59c365447d750396a2e3e7e49b5f1373485e406f5e78147db0a2228fc29bafd15bada19602d78cf45be403c9b66139fd323f80af35f72c6497812ce9fe139d726fead18d3f2ecaa869cf6d1f8e2cb3e7fcfd0a7b296d657ecb3c28976185f9cf5c7cf7a627ee3ead680868e91d984fec4c783ef02d7eca6f4dd36801b112fc1ab8c642e85bcc5cc473b7584a52be064db0e1133066a8415a2c674b42eae5b5df4a60e574f1f275367ac3ab9e8ea97eca3ff6441e9059ab48ab8606559182ca34a283c8fe71f833f8353527c723b1e5f92de5e839e7ab2077caa7228f7b9e2aa9c53a8e6e491aff76d4232bb22b463944aa1f602bba1d72295c7960ba9e282cb6534a5bc7ea0e1e258e17f2e3fdff301fc9324d8c527759fbf0111953a7f555ff430bea744eee0b2f71a283c4df14198cec3c9b90142da9b71397ae6ebb3058e9949e4373b505690224342dcff22111bba7d216540dce7b9a2e3b90f4a2b80ed9cfb0d535c17fd8464bbe7eb80289854b1eb8b9906b69258f5b059606bd042c4dc263ed2401db76ae6dc2b0995328487f57f84b57cb123493cf3961e80f0bd011b57cbe1d6f1f3c9f79d037f285157731e1f272108685de7efec146a7c461b77673872b74385a17e906834d019be3385705efb180bc0c207aa7ea9002925dd0350f3ef4d69d255f915bd858cf86b826f49e38a0ca001a868f2d1984f2870c631cd78569fd1df4f0d0aad68373734f73656bf1fd2ee310c2d414d87ede27e9ac3d7e71e42f097d8c8cf9760af01cf9da69aa9ad3168adf42e3ec1fdb8a69998040008ac9165cd6fdc95cc4d9b385fc321bb0fbffd11ec1c0bd60ec565758937285e5d9c81b8c62855de31f643768df150451d384acdd1de3658c3ee8789ac86ffe7546068ef2d8cc26468e7d97d9424c447259d3fa9db4d74f2efcc2837de00e53ae8e7cb09f602a4282e1cc109d021a11d8e2b47e8aa808f6989ecfb678e3f48b8564486501daf496a11def969936606ab1ed1bd5ded0d1f313e68dd9746b0c611ae47174d4f4c1507c5c3788b8dc115ac48a44b615e32b0f5a8b067a1b2a0b6dc8223df5910b7e46f6cc68d7ffb5db96730495546d19a51f683c402fdd47cde10992fa1b1ef4d3b3a48a5a4dfeaecf5f1a611534878c6fae2792143d43b1954dcfeaab1a35d1f1155224a4c151e4134070537d564064a8ecbdd00bdce7365e0deb0a0161f97ffddb50a05ddcae2ec617bb534b4eddb732dae0622736465da6934d76b2d403770d6237103d258d3ab3c0e3f0db695e68eba0b44da1820425e0f4cd64a1efc38f4f6494b34ac44eac3c949feef64d638c5970e70c032f2fb888c4bfa318f2aff09ee1631e2cf0037e966051b2d3796333b4130d65c9fd64bdc1160314531a5b2dff5e9b47d449799e97e8d1621f2e89acaf0668192e709c1670d9fcecc2d80ae62c677753c22316ef3494a5d7654f05b472b24473acd2243acefc9c7a321528e223f0924173bf94b31ee786bfae7da4f7963b79ff7ac441a58424d8a2285c60a5ce531098a99d918a363b2a4671eb20a5f4107cb69f538d3fdc89698fed8355076ec5d14736aa115d7968afe7568ea84a57ce2f80566742c198df15150c309b8eced6d6384c9ff413c597553a771436f7878b7aa9084f0f66d361d5b61a8be585e8225a3109729c3af04e8841f6cdea2e087f9b95b70613fd80df99523a73f0189a6b2fad22d332aec8f06f8c91bd6a543fde1a663d51bb94b374007b4d474c370227cf91467f79950981de219e9e4bbe9e9062162242cbff47f45ccb573e2600323b594f154290dc6514b5e0bc87273280acaf5e06fdc4e1e2e79fb5d6c27858a73b02214fc010fd98aea45e7fea6eb213177ea724ae2e49d3e5b842a585097200bc3d154efc9f2c8fc6bf35977937094031d590fe6c82a1f5015da4b9bd5cf6114ce03953ca353ed5682721ce3633b018bad5874d552e68ca36df184f6a8deaeedf801b194113e01c541665406bbaa88318313d2bbb1ddf55aca7dd27ce3d07bbf113b5600d5ff0bb3ab3217e2cec291f6042cb31f605f4be34bf0ca5633e609053a9e2b0419a1ca3629ae52f9753c8e2421578d0e4417fef51ca487fbba55821c8eb47164c697ed39f017084b2153b35335b87728da2fbb1fcb8dd33e0cc866a6f2eb056110ad5de70f68a573d10bbcc646a3ff6a99e4bc1a6e29507a4cf2722da5a81ac4334edf3370edd2fddf19815d1263e0d81c787e159b5678c66ae2ea1de33b75e16a0a2a356c6749ea36611b9fcb45693f55c6cd76ac159fca06ac79c5c15689d5a6fcd3aa59045f775140a1cbb18943c0b2c1227bc983541884bbcf04192df14e0aa4141764f7f85fa33e8b322a03ddc7d25dc87de22db6c0d5e1e337bdc705dcc63d9d1d2aad14b724fddee6496347c75aabddada19c82d2bfa89399238bedb1239b0a95c85f7d31538d74799f8e958e4e50f6f2b5650f560463ff0e3a6461a4177af2d49d25fed52b0cdde3c5bdaa8450d796da2a1806453255af619c6dea10073d7caa57b9b7036cfecf6dad65e1b7a2ce31f380f863e5812997b58cf4545bc7fa52e9391241b69c3f8b0d53e69757a0451aacffcd9f11c2d3a88d79606148aa749873697dd13e6cf89ad0428fb616223c361544ef6bf15343728decad97ab6c1fae840a5573960a4c0c598641e2c0f2b309d2b4ed53c2251fc865b1fe09f405671f21359745219a6ffda325a091beab251ad065bef9fd799ae354a6d21eebe3a4e4c11e41dcf22ecd1096b5447a2ca69573fce2a116390446798a4a087f821dcc5ed4ac50418e2f103e0523e8eea0f82006cfbdd3f492362d4406e1d6f8df2701564e75ee0d52787e62adc16f235c0256cb9ab2b4ea14f45bca0ad8c6aac88964ef2df311cdd52d8abf715c9631da3d592d564f22822b095983df08b4425bf2280a8e59f8343f216d6cfcaf7878ccc9085e880bcbfd5aed21dde51a01daddb2d822566314970e88bce566ebc4d5885a3d8270c90ec616b08e31f8dabf753fd340ffd37e03e75de341ea48a815b91bb4f4691891b5c57f0a68397162f28f4071803b5408d21642ea1bf6b03970bc5cc026864137bdf5af5de8a4ece33327ecadb087538354761057a5f105bdaa867fa9e55c0072860c481473ce17948d4b023fbe23d8a75ebc19e02787401ab31bb0aabd121da35039e1c3ff76e1955f061a30ca6b2b84fb5ff9817ac96688dfcb2f26df9086f46d1543eadd6193d7df4d9584df8d07e5c71ef5fe32eccb79faad1fe3c3c4e0b3958fb36660ba7ca73b3d55309b10999e29a1b0c0a2f008e6b158e43e810b20ae3aef832a60b58e186c726bbd9c86808b156c697502dc98b45a0df177565e9df39cc8b0eddc83cfbbb938a5b9211240e4d43cf5416deade8df099261a020848f687b4b4d55c2fd2ec8c3cd0686c5cb76844590190ad91c2dd21e669dd15c9efa59640b1a29a79c20f2df7b987d56905ca078af94868e974ac2146559263a76a2f815dc98e6681d6c8976729c1d67f2c9a09da8680f2b2b8a5263cfe728091ce1e9eb2c0a58b04d29808e74ea18c7fabe78760b0f9dbb93d764c5370520e2be52512653fb1815f7767f8c25bd222e118cfcf447767603c14237d2b81f38f207d882be6dfe46e844d4405073790a3b6c9af9c8e85427ad42a0341ef1f5c0dcdd6915ab2eed3bc4dacea1cc71bec2e23e27be23c2e3500c7b16ab27b6ae144161ca218662c532f1403f5de59942aee7c8d242b39e79c3e03de8e4df16a8f02e37fd97539d56bcdcf5733910380a9c121fb9c9d03aef615080d45eeb3c4434028addc16cfea35b7296949696e801dcec98faec2a3551e22ca5d7d0110bd2131af8248ac5769517649cc91e5ff80eddc9a6df136e4e2cf2978ec9724c6f643b507c035dc72b5dc6e96c814753e49e28cb47aa7f721183b88aa6ef8018c4f1970141e114a0b495dadd9e490368e06f03cb130117be9a1a8e45ca0ca323d0adabc0b464360267ba9bd4945503860a57729b9721a7b136f82dba520a58964e4fe3f32815e53db609e88c4b3ef41662dcb1c4847fe4fb75f3943b7f812ce05cfad5f5959f35d8458de778c7f2da3dbee84d20f9bb97b07c61f13860fec050ebeea1b96e496500884fd7873b3be34bac9ee0f6e6231dde5a7056e162e8a09a2c5b143d760f85ba9079ef12cb7f3e520497ae0ba78462fb3af3b63e497269f0ea293b7344cd3b94621a9af44dbd1c99daee61c7bd9dda4866f92098952c1e10cb805b49092d6a22768507afeaddba4549868df3d9bac6ffb2cb75920d03e7c6df05be3edc40dcea05d7fe74a70f04ccadcdf821c54fbfb272dfdfd09c12349e289b78be0bf5287094c28a512ebf2aebb2fb9c43640a4e0694f651a805dd4d87b69a6558d5adaab2fe90e67f38302b1b3c54b7f56ed7981e8ba897dbd0b79285745374a5d9b8157ac59549418b381e554c38e0c0ebf987c0398e724dfe29d0c2123091eaaa9bc584629d7266dc185e23ba0a9d7dd0763cbe1d68148bed7e2df1fc8fbafcaaee000cdb8d6ef20453dcb828b82a1d831fa8e56bbe9f2868ba17f19d3efaedd52ead9d0772d27efe0534506a01a9a8ee9b380a13155e5f0ec737525e9ff3a7a6e2180e158e57c1c998bc32a5fb65fdeb1c73b1e2e88f3e5931b45d8383867dfcc6a4b24e1d16ec005e3e098a54c1c0bbd1a91452a44c375d068540586d0869aec513992263468839dc523631fa53d6414088915410136fe911231dd4e60166b40ecb5276679c5ce6a9ba06f9cabf5cbf69002a9b67c9cdd412233fc20527801e104e1f3aab35283d1493924b2af8e87ee4f4654d7fa3562905226e6d5d2084b93a1833e3e8a532a8c0e2d678801b5269637975491b5569fe318aa88bc94629d94275cbf93c08a7cc2ce78afe3ec86330c0f94e57d544e2f29f9e69140e3b590b2e0b125c3c4a93cec178002100a94489b9fd38f598ad4bfc5fe5dd7a9957aedd9f05d0a1e94326c9063aa03957d34f8752cd5a4820775c4e6f13cb0167c7b77cd7f039e4ef23c0d18163d1a9b7589eabab1403bcf016cededb9afac98fdb3249500d3e7c0d6fbae68aaa442f2779ed36b58e0ec95fc93826ef8cd4a51c9fe7bda26a096ee9932601d5ce7308dccb51534a1dd35c9c635ae4141c946302a61eaf47d364ec14f0fccb7635c3277756fab7546c5d83c51a5f195f04c638284f0572285808b2c6de7db5f00c61d9e8cdcae77f97643544616e65e44e7fcdcb4a90296f26c0731ecfed9395f5bc6032b36f3fa498d6bf346eaa36c3e6f78eec37b3f7dfc3314f53c3c2990fbd415809461049d20accabefea5a9a396526848189b17b22c5ba7f7be934d8faad005fd08bb63dc6ddb1511d74902f19f6b016d1900cecd5c86aec4d6b00072527bf2e1be896281c7522cd25d1dddc3028ce4844c188d40fb3cfb6c128f627e8950948dc009fcb37aa85986485020887b2262ac06ff40c5674b9438085e83b7495a59210090b25639af66a943f0cf132250648879659d703e8feb2a3c99234afe42adf0dfd8a41baaf51434bc81fa6539c971e59d8c01f3e5b41ad5ed422a0bc549a7e6cdfaa73b87166876800ee313a36d7ea0c50ee5c048bfc5d8c056c5b561b06409c48468edde2dcca17ba8e062712dd1643796acf02796aab0ca0a8dc48b354fb34e6badf67e773b9c9465cf86457cecc102a599f5eb0d846d8ad0e95bd20f3a3f0abde15e197fc23e976b3af0592d4a6b78b4007bc1a365bfaceace750cd1c2388645ff3054aaea3d4bf46bddcd625abb3c86a5d2c1a1f5e783221263de1032bdeadc993b9cbc6552b6c577ea10725519f583d21321f38e27908f1c95002f8bf761c86d0360c716639f867c0bbb30e904f4ac8d1b0c201ba75e89cc07c23153d42696934fd7bb5e587b31f616aa6ac5bb9661db942ef4d3bd58dcf140301a541560385221d65a96d1e5501c87d5be4203597rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpetsc-3.11.3-10.el8.src.rpmpetsc-doc    rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.2]?]?]m]x]c]]2@]:@]6]1]\.@\-@\r@\@\@\@\eX@\U@\@[[ @[ @[dC[b@[`O@[[ @[P}@[H@ZK@Z@ZZ&ZyZyZvZu@Zm@Z2gZ#@Z#@ZfZ @ZC@ZYY{Y*@YYYχ@YA@Y3Y?@Y?@Y@YyY;@Y@YY i@X"@X[XXlXAb@XXXI@XI@X X TX @X`@Ww@Ww@WW1@W1@WW@W - 3.11.3-10Antonio Trande - 3.11.3-9Orion Poplawski - 3.11.3-8Orion Poplawski - 3.11.3-7Antonio Trande - 3.11.3-6Antonio Trande - 3.11.3-5Fedora Release Engineering - 3.11.3-4Antonio Trande - 3.11.3-3Antonio Trande - 3.11.3-2Antonio Trande - 3.11.3-1Antonio Trande - 3.11.2-1Antonio Trande - 3.11.1-2Antonio Trande - 3.11.1-1Orion Poplawski - 3.10.4-2Antonio Trande - 3.10.4-1Sandro Mani - 3.10.3-4Orion Poplawski - 3.10.3-3Fedora Release Engineering - 3.10.3-2Antonio Trande - 3.10.3-1Orion Poplawski - 3.10.2-2Antonio Trande - 3.10.2-1Antonio Trande - 3.9.3-5Antonio Trande - 3.9.3-4Antonio Trande - 3.9.3-3Florian Weimer - 3.9.3-2Antonio Trande - 3.9.3-1Sandro Mani - 3.9.0-5Fedora Release Engineering - 3.9.0-4Antonio Trande - 3.9.0-3Antonio Trande - 3.9.0-2Antonio Trande - 3.9.0-1Antonio Trande - 3.8.4-1Antonio Trande - 3.8.3-5Antonio Trande - 3.8.3-4Antonio Trande - 3.8.3-3Antonio Trande - 3.8.3-2Antonio Trande - 3.8.3-1Antonio Trande - 3.8.1-4Antonio Trande - 3.8.1-3Antonio Trande - 3.8.1-2Antonio Trande - 3.8.1-1Antonio Trande - 3.8.0-5Antonio Trande - 3.8.0-4Antonio Trande - 3.8.0-3Antonio Trande - 3.8.0-2Antonio Trande - 3.8.0-1Antonio Trande - 3.7.7-5Antonio Trande - 3.7.7-4Antonio Trande - 3.7.7-3Antonio Trande - 3.7.7-2Antonio Trande - 3.7.7-1Antonio Trande - 3.7.6-9Antonio Trande - 3.7.6-8Antonio Trande - 3.7.6-7Fedora Release Engineering - 3.7.6-6Fedora Release Engineering - 3.7.6-5Antonio Trande - 3.7.6-4Antonio Trande - 3.7.6-3Antonio Trande - 3.7.6-2Antonio Trande - 3.7.6-1Antonio Trande - 3.7.5-4Antonio Trande - 3.7.5-3Fedora Release Engineering - 3.7.5-2Antonio Trande - 3.7.5-1Antonio Trande - 3.7.4-14Antonio Trande - 3.7.4-13Antonio Trande - 3.7.4-12Antonio Trande - 3.7.4-11Antonio Trande - 3.7.4-10Antonio Trande - 3.7.4-9Antonio Trande - 3.7.4-8Antonio Trande - 3.7.4-7Antonio Trande - 3.7.4-6Antonio Trande - 3.7.4-5Antonio Trande - 3.7.4-4Antonio Trande - 3.7.4-3Antonio Trande - 3.7.4-2Antonio Trande - 3.7.4-1Antonio Trande - 3.7.3-8Antonio Trande - 3.7.3-7Antonio Trande - 3.7.3-6Antonio Trande - 3.7.3-5Antonio Trande - 3.7.3-4Antonio Trande - 3.7.3-3Antonio Trande - 3.7.3-2Antonio Trande - 3.7.3-1Antonio Trande - 3.7.2-12Antonio Trande - 3.7.2-11Antonio Trande - 3.7.2-10Antonio Trande - 3.7.2-9Dave Love - 3.7.2-8Antonio Trande - 3.7.2-7Antonio Trande - 3.7.2-6Antonio Trande - 3.7.2-5Antonio Trande - 3.7.2-4Antonio Trande - 3.7.2-3Antonio Trande - 3.7.2-2Antonio Trande - 3.7.2-1- New rebuild- Explicit required MPICH version (rhbz#1757279)- Rebuild for hypre 2.17.0- Build for python3 only, without dts for EPEL8- Rebuilt for MPICH 3.2.1- Rebuilt for Python 3.8- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild- Complete rebuild- Rebuild for MUMPS-5.2.1 - Use Python 2 on EPEL- Release 3.11.3- Release 3.11.2- Rebuild for OpenMPI-4- Release 3.11.1 - Switch to Python3 - Use openblas always- Rebuild for hdf5 1.10.5- Release 3.10.4- Rebuild (cgnslib)- Rebuild for openmpi 3.1.3- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild- Release 3.10.3- Re-enable OpenMPI tests - fixed with openmpi 2.1.6rc1- Update to 3.10.2 - Disable check of OpenMPI libraries on x86 temporarely (rhbz#1639646)- Fix paths inside of the 'rules' config files- Fix conditional macros for MPI builds- Exclude OpenMPI build on Fedora 28 s390x - Patched for using Hypre-2.11.2 on epel7- Rebuild with fixed binutils- Update to 3.9.3- Rebuild (scotch)- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild- Use unversioned directory for installing configuration files- Set again the MPI builds on Fedora- Update to 3.9.0- Update to 3.8.4 - Exclude MPI builds on s390 archirectures if fedora < 28 only - Patched for using Hypre-2.14.0- Use unversioned directory for installing configuration files- Fix pkgconfig request on rhel- cgns/hdf5 support enabled (bz#1541616)- Fix PETSC_LIB_DIR variables - cgns/hdf5 support temporarily disabled (bz#1541616)- Update to 3.8.3 - Rebuild for sundials-3.1.0- Not build 64-bit integer libraries on epel6- Build 64-bit integer libraries on epel7- Fix Fortran MPI library path on epel- Update to 3.8.1 - Disable Sundials - Enable MUMPS on serial build- Install .mod files (bz#1212557)- Fix soname version- Rebuild for hypre-2.13.0 - Disable sundials on MPI builds- Define openblas arches- Update to 3.8.0 - with-mpiuni-fortran-binding option deprecated - Remove obsolete patch2- Disable debugging - Unset default compiler flags when tests are built- Rebuild for debugging- Exclude MPI builds on s390x- Enable mpiuni-fortran-binding on MPI builds- Update to 3.7.7 - Move petscvariables/petscrules under a private directory of libdir- Rebuild for lapack 3.7.1 (moved to 64_ suffix)- Option for Fedora < 25 definitively removed- Superlu_dist needs parmetis - Use MPI variables- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild- Fix Requires packages- Move petscvariables/petscrules under private directory of /usr/share- Move petscvariables/petscrules under private directory of /usr/lib- Update to 3.7.6 - Install petscvariables/petscrules - Install pkgconfig files- Exclude aarch64 on fedora < 25- Rebuild for MUMPS-5.1.1- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild- Update to 3.7.5- Conditionalize mpich-devel%{?_isa} (bz#1397192)- New architectures- Fix OpenMPI builds- Fix s390x builds again- Fix s390x builds- Build 64bit-int libs (bz#1382916)- Build 64bit-int libs (bz#1382916)- Install missing header files- Add the -O3 to restore vectorization over the RPM defaults - Remove gmp support- 64bit-int libs not built (bz#1382916) - Enable gmp and suitesparse support- superlu and fftw enabled - Fixed settings of compiler flags - Disable flags for "hardened" builds- Enabled fftw-mpi support (Fedora > 24) - Omitted PAPI (obsolete) - Omitted tetgen support (used with C++)- Default optimization level (-O2)- Update to 3.7.4 - PAPI support disabled (upstream advice)- Add tcsh as BR package - Patched for disabling petscnagupgrade.py check- Use Make for testing- Remove linkage to mpiblacs - Tests enabled- hwloc/metis (needs parmetis) disabled (upstream advice) - X support enabled - Libraries detection disabled- Fix library paths- Fix PTScotch- Disabled fftw support- Update to 3.7.3 - Remove module files- Fix MAKE_NP option - Remove --known-endian option - Use architecture condition for openblas - Fix unused-direct-shlib-dependency warnings- Use SuperLU on >=f25 only- Some fixes for epel6 builds - Add -O3 flag - Headers installed under a private directory - Use %{_modulesdir} macro - Use 'openblas' instead of 'blas'- Fortran modules moved into devel sub-packages - Some fixes of SPEC file's lines - Set compiler/linker flags against PAPI-5.1.1 on epel6- Support el6 - Add cgnslib support- Rebuild with Hypre support- Packed additional header files - Tests performed on EPEL7- Perform tests one-by-one - Packaged all documentation files- Build OpenMPI/MPICH libraries - Fix known-endian option- Disable additional libraries - Build a minimal PETSC- Perform test- New package  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~3.11.3-10.el8      !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""####################################$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'(petscbugreporting.htmlchanges2015.html2016.html2017.html2018-21.html2022.html2024.html2028.html2029.html21.html211.html212.html213.html215.html216.html220.html221.html230.html231.html232.html233.html300.html31.html310.html311.html32.html33.html34.html35.html36.html37.html38.html39.htmlindex.htmlcodemanagement.htmlcopyright.htmldevelopers.pdffaq.htmlheadersbagimpl.h.htmlblockinvert.h.htmlblockmatmult.h.htmlblocktranspose.h.htmlcharacteristicimpl.h.htmldmdaimpl.h.htmldmfieldimpl.h.htmldmforestimpl.h.htmldmimpl.h.htmldmlabelimpl.h.htmldmmbimpl.h.htmldmnetworkimpl.h.htmldmpatchimpl.h.htmldmpleximpl.h.htmldmproductimpl.h.htmldmstagimpl.h.htmldmswarmimpl.h.htmldrawimpl.h.htmldtimpl.h.htmlf90impl.h.htmlfortranimpl.h.htmlhashmap.h.htmlhashset.h.htmlhashtable.h.htmlindex.htmlisimpl.h.htmlkspimpl.h.htmllinesearchimpl.h.htmllogimpl.h.htmlmakefile.htmlmatimpl.h.htmlmatorderimpl.h.htmlmpi.h.htmlmpif.h.htmlpcgamgimpl.h.htmlpcimpl.h.htmlpcmgimpl.h.htmlpetsc.h.htmlpetscao.h.htmlpetscaxpy.h.htmlpetscbag.h.htmlpetscblaslapack.h.htmlpetscblaslapack_stdcall.h.htmlpetscbt.h.htmlpetsccharacteristic.h.htmlpetscctable.h.htmlpetscdm.h.htmlpetscdmcomposite.h.htmlpetscdmda.h.htmlpetscdmdatypes.h.htmlpetscdmfield.h.htmlpetscdmlabel.h.htmlpetscdmmoab.h.htmlpetscdmnetwork.h.htmlpetscdmpatch.h.htmlpetscdmplex.h.htmlpetscdmproduct.h.htmlpetscdmredundant.h.htmlpetscdmshell.h.htmlpetscdmsliced.h.htmlpetscdmstag.h.htmlpetscdmtypes.h.htmlpetscdraw.h.htmlpetscdrawtypes.h.htmlpetscds.h.htmlpetscdsimpl.h.htmlpetscdstypes.h.htmlpetscdt.h.htmlpetscerror.h.htmlpetscfe.h.htmlpetscfeimpl.h.htmlpetscfetypes.h.htmlpetscfptimpl.h.htmlpetscfv.h.htmlpetscfvimpl.h.htmlpetscfvtypes.h.htmlpetscgll.h.htmlpetscimpl.h.htmlpetscis.h.htmlpetscistypes.h.htmlpetscksp.h.htmlpetsclog.h.htmlpetscmat.h.htmlpetscmatelemental.h.htmlpetscmath.h.htmlpetscmatlab.h.htmlpetscoptions.h.htmlpetscpc.h.htmlpetscpctypes.h.htmlpetscpf.h.htmlpetscsf.h.htmlpetscsftypes.h.htmlpetscsnes.h.htmlpetscsys.h.htmlpetscsystypes.h.htmlpetsctao.h.htmlpetsctaolinesearch.h.htmlpetsctime.h.htmlpetscts.h.htmlpetscvalgrind.h.htmlpetscvec.h.htmlpetscversion.h.htmlpetscviennacl.h.htmlpetscviewer.h.htmlpetscviewerhdf5.h.htmlpetscviewersaws.h.htmlpetscviewertypes.h.htmlpetscwebclient.h.htmlsfimpl.h.htmlsnesimpl.h.htmltaoimpl.h.htmltaolinesearchimpl.h.htmltshistoryimpl.h.htmltsimpl.h.htmlvecimpl.h.htmlviewerimpl.h.htmlindex.htmlinstallation.htmlintro.pdflicense.htmllinearsolvertable.htmlmanual.pdfmanualpagesAOAO.htmlAOApplicationToPetsc.htmlAOApplicationToPetscIS.htmlAOApplicationToPetscPermuteInt.htmlAOApplicationToPetscPermuteReal.htmlAOCreate.htmlAOCreateBasic.htmlAOCreateBasicIS.htmlAOCreateMapping.htmlAOCreateMappingIS.htmlAOCreateMemoryScalable.htmlAOCreateMemoryScalableIS.htmlAODestroy.htmlAOFinalizePackage.htmlAOGetType.htmlAOInitializePackage.htmlAOMappingHasApplicationIndex.htmlAOMappingHasPetscIndex.htmlAOPetscToApplication.htmlAOPetscToApplicationIS.htmlAOPetscToApplicationPermuteInt.htmlAOPetscToApplicationPermuteReal.htmlAORegister.htmlAORegisterAll.htmlAOSetFromOptions.htmlAOSetIS.htmlAOSetType.htmlAOType.htmlAOView.htmlindex.htmlCharacteristicCharacteristic.htmlCharacteristicFinalizePackage.htmlCharacteristicInitializePackage.htmlCharacteristicRegister.htmlCharacteristicRegisterAll.htmlCharacteristicSetType.htmlCharacteristicSetUp.htmlCharacteristicType.htmlindex.htmlDMDM.htmlDMAdaptFlag.htmlDMAdaptLabel.htmlDMAdaptMetric.htmlDMAdaptationCriterion.htmlDMAdaptationStrategy.htmlDMAddBoundary.htmlDMAddField.htmlDMAddLabel.htmlDMAppendOptionsPrefix.htmlDMBoundaryConditionType.htmlDMBoundaryType.htmlDMCOMPOSITE.htmlDMClearDS.htmlDMClearFields.htmlDMClearGlobalVectors.htmlDMClearLabelStratum.htmlDMClearLabelValue.htmlDMClearLocalVectors.htmlDMClone.htmlDMCoarsen.htmlDMCoarsenHierarchy.htmlDMCoarsenHookAdd.htmlDMCoarsenHookRemove.htmlDMCompositeAddDM.htmlDMCompositeCreate.htmlDMCompositeGather.htmlDMCompositeGatherArray.htmlDMCompositeGetAccess.htmlDMCompositeGetAccessArray.htmlDMCompositeGetEntries.htmlDMCompositeGetEntriesArray.htmlDMCompositeGetGlobalISs.htmlDMCompositeGetISLocalToGlobalMappings.htmlDMCompositeGetLocalAccessArray.htmlDMCompositeGetLocalISs.htmlDMCompositeGetLocalVectors.htmlDMCompositeGetNumberDM.htmlDMCompositeRestoreAccess.htmlDMCompositeRestoreAccessArray.htmlDMCompositeRestoreLocalAccessArray.htmlDMCompositeRestoreLocalVectors.htmlDMCompositeScatter.htmlDMCompositeScatterArray.htmlDMCompositeSetCoupling.htmlDMComputeL2Diff.htmlDMComputeL2FieldDiff.htmlDMComputeL2GradientDiff.htmlDMComputeVariableBounds.htmlDMConvert.htmlDMCopyDS.htmlDMCopyDisc.htmlDMCopyFields.htmlDMCopyLabels.htmlDMCreate.htmlDMCreateAggregates.htmlDMCreateColoring.htmlDMCreateDS.htmlDMCreateDefaultSF.htmlDMCreateDomainDecomposition.htmlDMCreateDomainDecompositionScatters.htmlDMCreateFieldDecomposition.htmlDMCreateFieldIS.htmlDMCreateGlobalVector.htmlDMCreateInjection.htmlDMCreateInterpolation.htmlDMCreateLabel.htmlDMCreateLocalVector.htmlDMCreateMassMatrix.htmlDMCreateMatrix.htmlDMCreateRestriction.htmlDMCreateSectionSubDM.htmlDMCreateSectionSuperDM.htmlDMCreateSubDM.htmlDMCreateSuperDM.htmlDMDestroy.htmlDMField.htmlDMFieldCreateDefaultQuadrature.htmlDMFieldCreateFEGeom.htmlDMFieldDestroy.htmlDMFieldEvaluate.htmlDMFieldEvaluateFE.htmlDMFieldEvaluateFV.htmlDMFieldFinalizePackage.htmlDMFieldGetDM.htmlDMFieldGetDegree.htmlDMFieldGetNumComponents.htmlDMFieldGetType.htmlDMFieldInitializePackage.htmlDMFieldRegister.htmlDMFieldRegisterAll.htmlDMFieldSetType.htmlDMFieldType.htmlDMFieldView.htmlDMFinalizePackage.htmlDMGetAdjacency.htmlDMGetApplicationContext.htmlDMGetBasicAdjacency.htmlDMGetBlockSize.htmlDMGetBoundary.htmlDMGetCellDS.htmlDMGetCoarseDM.htmlDMGetCoarsenLevel.htmlDMGetCompatibility.htmlDMGetCoordinateDM.htmlDMGetCoordinateDim.htmlDMGetCoordinateSection.htmlDMGetCoordinates.htmlDMGetCoordinatesLocal.htmlDMGetCoordinatesLocalNoncollective.htmlDMGetCoordinatesLocalSetUp.htmlDMGetCoordinatesLocalTuple.htmlDMGetCoordinatesLocalized.htmlDMGetCoordinatesLocalizedLocal.htmlDMGetDS.htmlDMGetDefaultConstraints.htmlDMGetDefaultSF.htmlDMGetDimPoints.htmlDMGetDimension.htmlDMGetField.htmlDMGetFineDM.htmlDMGetGlobalSection.htmlDMGetGlobalVector.htmlDMGetISColoringType.htmlDMGetLabel.htmlDMGetLabelByNum.htmlDMGetLabelIdIS.htmlDMGetLabelName.htmlDMGetLabelOutput.htmlDMGetLabelSize.htmlDMGetLabelValue.htmlDMGetLocalToGlobalMapping.htmlDMGetLocalVector.htmlDMGetMatType.htmlDMGetNamedGlobalVector.htmlDMGetNamedLocalVector.htmlDMGetNeighbors.htmlDMGetNumBoundary.htmlDMGetNumDS.htmlDMGetNumFields.htmlDMGetNumLabels.htmlDMGetOptionsPrefix.htmlDMGetOutputDM.htmlDMGetOutputSequenceNumber.htmlDMGetPeriodicity.htmlDMGetPointSF.htmlDMGetRefineLevel.htmlDMGetRegionDS.htmlDMGetRegionNumDS.htmlDMGetSection.htmlDMGetStratumIS.htmlDMGetStratumSize.htmlDMGetType.htmlDMGetUseNatural.htmlDMGetVecType.htmlDMGetWorkArray.htmlDMGlobalToLocal.htmlDMGlobalToLocalBegin.htmlDMGlobalToLocalBeginDefaultShell.htmlDMGlobalToLocalEnd.htmlDMGlobalToLocalEndDefaultShell.htmlDMGlobalToLocalHookAdd.htmlDMHasColoring.htmlDMHasCreateInjection.htmlDMHasCreateRestriction.htmlDMHasLabel.htmlDMHasNamedGlobalVector.htmlDMHasNamedLocalVector.htmlDMHasVariableBounds.htmlDMInitializePackage.htmlDMInterpolate.htmlDMInterpolationInfo.htmlDMLabel.htmlDMLoad.htmlDMLocalToGlobal.htmlDMLocalToGlobalBegin.htmlDMLocalToGlobalBeginDefaultShell.htmlDMLocalToGlobalEnd.htmlDMLocalToGlobalEndDefaultShell.htmlDMLocalToGlobalHookAdd.htmlDMLocalToLocalBegin.htmlDMLocalToLocalBeginDefaultShell.htmlDMLocalToLocalEnd.htmlDMLocalToLocalEndDefaultShell.htmlDMLocalizeCoordinate.htmlDMLocalizeCoordinates.htmlDMLocatePoints.htmlDMOutputSequenceLoad.htmlDMPATCH.htmlDMPointLocationType.htmlDMProjectFunction.htmlDMREDUNDANT.htmlDMRedundantCreate.htmlDMRedundantGetSize.htmlDMRedundantSetSize.htmlDMRefine.htmlDMRefineHierarchy.htmlDMRefineHookAdd.htmlDMRefineHookRemove.htmlDMRegister.htmlDMRegisterAll.htmlDMRemoveLabel.htmlDMRestoreGlobalVector.htmlDMRestoreLocalVector.htmlDMRestoreNamedGlobalVector.htmlDMRestoreNamedLocalVector.htmlDMRestoreWorkArray.htmlDMRestrict.htmlDMSLICED.htmlDMSetAdjacency.htmlDMSetApplicationContext.htmlDMSetApplicationContextDestroy.htmlDMSetBasicAdjacency.htmlDMSetCoarseDM.htmlDMSetCoarsenLevel.htmlDMSetCoordinateDM.htmlDMSetCoordinateDim.htmlDMSetCoordinateSection.htmlDMSetCoordinates.htmlDMSetCoordinatesLocal.htmlDMSetDefaultConstraints.htmlDMSetDefaultSF.htmlDMSetDimension.htmlDMSetField.htmlDMSetFineDM.htmlDMSetFromOptions.htmlDMSetGlobalSection.htmlDMSetISColoringType.htmlDMSetLabelOutput.htmlDMSetLabelValue.htmlDMSetMatType.htmlDMSetMatrixPreallocateOnly.htmlDMSetMatrixStructureOnly.htmlDMSetNumFields.htmlDMSetOptionsPrefix.htmlDMSetOutputSequenceNumber.htmlDMSetPeriodicity.htmlDMSetPointSF.htmlDMSetRefineLevel.htmlDMSetRegionDS.htmlDMSetSection.htmlDMSetStratumIS.htmlDMSetType.htmlDMSetUp.htmlDMSetUseNatural.htmlDMSetVariableBounds.htmlDMSetVec.htmlDMSetVecType.htmlDMShellCreate.htmlDMShellGetContext.htmlDMShellSetCoarsen.htmlDMShellSetContext.htmlDMShellSetCreateDomainDecomposition.htmlDMShellSetCreateDomainDecompositionScatters.htmlDMShellSetCreateFieldDecomposition.htmlDMShellSetCreateGlobalVector.htmlDMShellSetCreateInjection.htmlDMShellSetCreateInterpolation.htmlDMShellSetCreateLocalVector.htmlDMShellSetCreateMatrix.htmlDMShellSetCreateRestriction.htmlDMShellSetCreateSubDM.htmlDMShellSetGlobalToLocal.htmlDMShellSetGlobalToLocalVecScatter.htmlDMShellSetGlobalVector.htmlDMShellSetLocalToGlobal.htmlDMShellSetLocalToGlobalVecScatter.htmlDMShellSetLocalToLocal.htmlDMShellSetLocalToLocalVecScatter.htmlDMShellSetLocalVector.htmlDMShellSetMatrix.htmlDMShellSetRefine.htmlDMSlicedCreate.htmlDMSlicedSetBlockFills.htmlDMSlicedSetGhosts.htmlDMSlicedSetPreallocation.htmlDMSubDomainHookAdd.htmlDMSubDomainHookRemove.htmlDMSubDomainRestrict.htmlDMType.htmlDMView.htmlMatFDColoringUseDM.htmlMatGetDM.htmlMatSetDM.htmlPETSCDUALSPACELAGRANGE.htmlPETSCDUALSPACESIMPLE.htmlPETSCFEBASIC.htmlPETSCFECOMPOSITE.htmlPETSCFEOPENCL.htmlPETSCSPACEPOINT.htmlPETSCSPACEPOLYNOMIAL.htmlPETSCSPACETENSOR.htmlPetscDS.htmlPetscDSFinalizePackage.htmlPetscDSInitializePackage.htmlPetscDSRegisterAll.htmlPetscDSType.htmlPetscDualSpace.htmlPetscDualSpaceApply.htmlPetscDualSpaceApplyAll.htmlPetscDualSpaceApplyAllDefault.htmlPetscDualSpaceApplyDefault.htmlPetscDualSpaceApplyFVM.htmlPetscDualSpaceCreate.htmlPetscDualSpaceCreateReferenceCell.htmlPetscDualSpaceDestroy.htmlPetscDualSpaceDuplicate.htmlPetscDualSpaceGetDM.htmlPetscDualSpaceGetDimension.htmlPetscDualSpaceGetFunctional.htmlPetscDualSpaceGetHeightSubspace.htmlPetscDualSpaceGetNumComponents.htmlPetscDualSpaceGetNumDof.htmlPetscDualSpaceGetOrder.htmlPetscDualSpaceGetPointSubspace.htmlPetscDualSpaceGetSymmetries.htmlPetscDualSpaceGetType.htmlPetscDualSpaceLagrangeGetContinuity.htmlPetscDualSpaceLagrangeGetTensor.htmlPetscDualSpaceLagrangeSetContinuity.htmlPetscDualSpaceLagrangeSetTensor.htmlPetscDualSpaceRegister.htmlPetscDualSpaceRegisterAll.htmlPetscDualSpaceSetDM.htmlPetscDualSpaceSetFromOptions.htmlPetscDualSpaceSetNumComponents.htmlPetscDualSpaceSetOrder.htmlPetscDualSpaceSetType.htmlPetscDualSpaceSetUp.htmlPetscDualSpaceSimpleSetDimension.htmlPetscDualSpaceSimpleSetFunctional.htmlPetscDualSpaceType.htmlPetscDualSpaceView.htmlPetscFE.htmlPetscFECompositeGetMapping.htmlPetscFECreate.htmlPetscFECreateDefault.htmlPetscFEDestroy.htmlPetscFEFinalizePackage.htmlPetscFEGetBasisSpace.htmlPetscFEGetDefaultTabulation.htmlPetscFEGetDimension.htmlPetscFEGetDualSpace.htmlPetscFEGetFaceQuadrature.htmlPetscFEGetNumComponents.htmlPetscFEGetNumDof.htmlPetscFEGetQuadrature.htmlPetscFEGetSpatialDimension.htmlPetscFEGetTabulation.htmlPetscFEGetTileSizes.htmlPetscFEGetType.htmlPetscFEInitializePackage.htmlPetscFEIntegrate.htmlPetscFEIntegrateBd.htmlPetscFEIntegrateBdJacobian.htmlPetscFEIntegrateBdResidual.htmlPetscFEIntegrateJacobian.htmlPetscFEIntegrateResidual.htmlPetscFEJacobianType.htmlPetscFERefine.htmlPetscFERegister.htmlPetscFERegisterAll.htmlPetscFESetBasisSpace.htmlPetscFESetDualSpace.htmlPetscFESetFaceQuadrature.htmlPetscFESetFromOptions.htmlPetscFESetName.htmlPetscFESetNumComponents.htmlPetscFESetQuadrature.htmlPetscFESetTileSizes.htmlPetscFESetType.htmlPetscFESetUp.htmlPetscFEType.htmlPetscFEView.htmlPetscFV.htmlPetscFVCellGeom.htmlPetscFVFaceGeom.htmlPetscFVFinalizePackage.htmlPetscFVInitializePackage.htmlPetscFVRegisterAll.htmlPetscFVType.htmlPetscLimiter.htmlPetscLimiterRegisterAll.htmlPetscLimiterType.htmlPetscPartitioner.htmlPetscPartitionerRegisterAll.htmlPetscPartitionerType.htmlPetscQuadrature.htmlPetscSpace.htmlPetscSpaceCreate.htmlPetscSpaceDestroy.htmlPetscSpaceEvaluate.htmlPetscSpaceGetDegree.htmlPetscSpaceGetDimension.htmlPetscSpaceGetHeightSubspace.htmlPetscSpaceGetNumComponents.htmlPetscSpaceGetType.htmlPetscSpacePointGetPoints.htmlPetscSpacePointSetPoints.htmlPetscSpacePolynomialGetTensor.htmlPetscSpacePolynomialSetTensor.htmlPetscSpaceRegister.htmlPetscSpaceRegisterAll.htmlPetscSpaceSetDegree.htmlPetscSpaceSetFromOptions.htmlPetscSpaceSetNumComponents.htmlPetscSpaceSetType.htmlPetscSpaceSetUp.htmlPetscSpaceType.htmlPetscSpaceView.htmlPetscUnit.htmlVecGetDM.htmlVecSetDM.htmlindex.htmlDMDADMCreateInterpolationScale.htmlDMDA.htmlDMDAConvertToCell.htmlDMDACoor2d.htmlDMDACoor3d.htmlDMDACreate.htmlDMDACreate1d.htmlDMDACreate2d.htmlDMDACreate3d.htmlDMDACreateCompatibleDMDA.htmlDMDACreateNaturalVector.htmlDMDACreatePF.htmlDMDACreatePatchIS.htmlDMDACreateSection.htmlDMDAElementType.htmlDMDAGetAO.htmlDMDAGetArray.htmlDMDAGetBoundingBox.htmlDMDAGetCellPoint.htmlDMDAGetCoordinateArray.htmlDMDAGetCoordinateName.htmlDMDAGetCorners.htmlDMDAGetDof.htmlDMDAGetElementType.htmlDMDAGetElements.htmlDMDAGetElementsCorners.htmlDMDAGetElementsSizes.htmlDMDAGetFieldName.htmlDMDAGetFieldNames.htmlDMDAGetGhostCorners.htmlDMDAGetInfo.htmlDMDAGetInterpolationType.htmlDMDAGetLocalBoundingBox.htmlDMDAGetLocalInfo.htmlDMDAGetLogicalCoordinate.htmlDMDAGetNeighbors.htmlDMDAGetNonOverlappingRegion.htmlDMDAGetNumCells.htmlDMDAGetNumLocalSubDomains.htmlDMDAGetOffset.htmlDMDAGetOverlap.htmlDMDAGetOwnershipRanges.htmlDMDAGetPreallocationCenterDimension.htmlDMDAGetProcessorSubset.htmlDMDAGetProcessorSubsets.htmlDMDAGetRay.htmlDMDAGetReducedDMDA.htmlDMDAGetRefinementFactor.htmlDMDAGetScatter.htmlDMDAGetStencilType.htmlDMDAGetStencilWidth.htmlDMDAGetSubdomainCornersIS.htmlDMDAGlobalToNaturalAllCreate.htmlDMDAGlobalToNaturalBegin.htmlDMDAGlobalToNaturalEnd.htmlDMDAInterpolationType.htmlDMDALocalInfo.htmlDMDANaturalAllToGlobalCreate.htmlDMDANaturalToGlobalBegin.htmlDMDANaturalToGlobalEnd.htmlDMDARestoreArray.htmlDMDARestoreCoordinateArray.htmlDMDARestoreElements.htmlDMDARestoreSubdomainCornersIS.htmlDMDASetAOType.htmlDMDASetBlockFills.htmlDMDASetBlockFillsSparse.htmlDMDASetBoundaryType.htmlDMDASetCoordinateName.htmlDMDASetDof.htmlDMDASetElementType.htmlDMDASetFieldName.htmlDMDASetFieldNames.htmlDMDASetGLLCoordinates.htmlDMDASetGetMatrix.htmlDMDASetInterpolationType.htmlDMDASetNonOverlappingRegion.htmlDMDASetNumLocalSubDomains.htmlDMDASetNumProcs.htmlDMDASetOffset.htmlDMDASetOverlap.htmlDMDASetOwnershipRanges.htmlDMDASetPreallocationCenterDimension.htmlDMDASetRefinementFactor.htmlDMDASetSizes.htmlDMDASetStencilType.htmlDMDASetStencilWidth.htmlDMDASetUniformCoordinates.htmlDMDAStencilType.htmlDMDAVTKWriteAll.htmlDMDAVecGetArray.htmlDMDAVecGetArrayDOF.htmlDMDAVecGetArrayDOFRead.htmlDMDAVecGetArrayRead.htmlDMDAVecRestoreArray.htmlDMDAVecRestoreArrayDOF.htmlDMDAVecRestoreArrayDOFRead.htmlDMDAVecRestoreArrayRead.htmlDMDA_STENCIL_BOX.htmlDMDA_STENCIL_STAR.htmlMATHYPRESSTRUCT.htmlMATHYPRESTRUCT.htmlMatCreateSeqUSFFT.htmlMatSetupDM.htmlindex.htmlDMFORESTDMFOREST.htmlDMForestGetAdaptivityForest.htmlDMForestGetAdaptivityLabel.htmlDMForestGetAdaptivityPurpose.htmlDMForestGetAdaptivitySF.htmlDMForestGetAdaptivitySuccess.htmlDMForestGetAdjacencyCodimension.htmlDMForestGetAdjacencyDimension.htmlDMForestGetBaseDM.htmlDMForestGetCellChart.htmlDMForestGetCellSF.htmlDMForestGetCellWeightFactor.htmlDMForestGetCellWeights.htmlDMForestGetComputeAdaptivitySF.htmlDMForestGetGradeFactor.htmlDMForestGetInitialRefinement.htmlDMForestGetMaximumRefinement.htmlDMForestGetMinimumRefinement.htmlDMForestGetPartitionOverlap.htmlDMForestGetTopology.htmlDMForestGetWeightCapacity.htmlDMForestRegisterType.htmlDMForestSetAdaptivityForest.htmlDMForestSetAdaptivityLabel.htmlDMForestSetAdaptivityPurpose.htmlDMForestSetAdaptivityStrategy.htmlDMForestSetAdjacencyCodimension.htmlDMForestSetAdjacencyDimension.htmlDMForestSetBaseDM.htmlDMForestSetCellWeightFactor.htmlDMForestSetCellWeights.htmlDMForestSetGradeFactor.htmlDMForestSetInitialRefinement.htmlDMForestSetMaximumRefinement.htmlDMForestSetMinimumRefinement.htmlDMForestSetPartitionOverlap.htmlDMForestSetTopology.htmlDMForestSetWeightCapacity.htmlDMForestTemplate.htmlDMIsForest.htmlindex.htmlDMLABELDMLabelAddStrata.htmlDMLabelAddStrataIS.htmlDMLabelAddStratum.htmlDMLabelClearStratum.htmlDMLabelClearValue.htmlDMLabelComputeIndex.htmlDMLabelConvertToSection.htmlDMLabelCreate.htmlDMLabelCreateIndex.htmlDMLabelDestroy.htmlDMLabelDestroyIndex.htmlDMLabelDistribute.htmlDMLabelDuplicate.htmlDMLabelFilter.htmlDMLabelGather.htmlDMLabelGetBounds.htmlDMLabelGetDefaultValue.htmlDMLabelGetNumValues.htmlDMLabelGetStratumBounds.htmlDMLabelGetStratumIS.htmlDMLabelGetStratumSize.htmlDMLabelGetValue.htmlDMLabelGetValueIS.htmlDMLabelHasPoint.htmlDMLabelHasStratum.htmlDMLabelHasValue.htmlDMLabelInsertIS.htmlDMLabelPermute.htmlDMLabelReset.htmlDMLabelSetDefaultValue.htmlDMLabelSetStratumIS.htmlDMLabelSetValue.htmlDMLabelStratumHasPoint.htmlDMLabelView.htmlPetscSectionCreateGlobalSectionLabel.htmlPetscSectionSymCreateLabel.htmlPetscSectionSymLabelSetLabel.htmlPetscSectionSymLabelSetStratum.htmlindex.htmlDMMOABCompute_Lagrange_Basis_1D_Internal.htmlCompute_Lagrange_Basis_2D_Internal.htmlCompute_Lagrange_Basis_3D_Internal.htmlDMCoarsenHierarchy_Moab.htmlDMCoarsen_Moab.htmlDMCreateInjection_Moab.htmlDMCreateInterpolation_Moab.htmlDMMOAB.htmlDMMoabCreate.htmlDMMoabCreateBoxMesh.htmlDMMoabCreateElement.htmlDMMoabCreateMoab.htmlDMMoabCreateSubmesh.htmlDMMoabCreateVector.htmlDMMoabCreateVertices.htmlDMMoabFEMComputeBasis.htmlDMMoabFEMCreateQuadratureDefault.htmlDMMoabGenerateHierarchy.htmlDMMoabGetAllVertices.htmlDMMoabGetBlockSize.htmlDMMoabGetBoundaryMarkers.htmlDMMoabGetDimension.htmlDMMoabGetDofs.htmlDMMoabGetDofsBlocked.htmlDMMoabGetDofsBlockedLocal.htmlDMMoabGetDofsLocal.htmlDMMoabGetElementConnectivity.htmlDMMoabGetFieldDof.htmlDMMoabGetFieldDofs.htmlDMMoabGetFieldDofsLocal.htmlDMMoabGetFieldName.htmlDMMoabGetHierarchyLevel.htmlDMMoabGetInterface.htmlDMMoabGetLocalElements.htmlDMMoabGetLocalSize.htmlDMMoabGetLocalToGlobalTag.htmlDMMoabGetLocalVertices.htmlDMMoabGetMaterialBlock.htmlDMMoabGetOffset.htmlDMMoabGetParallelComm.htmlDMMoabGetSize.htmlDMMoabGetVecRange.htmlDMMoabGetVecTag.htmlDMMoabGetVertexConnectivity.htmlDMMoabGetVertexCoordinates.htmlDMMoabGetVertexDofsBlocked.htmlDMMoabGetVertexDofsBlockedLocal.htmlDMMoabIsEntityOnBoundary.htmlDMMoabLoadFromFile.htmlDMMoabOutput.htmlDMMoabPToRMapping.htmlDMMoabRenumberMeshEntities.htmlDMMoabRestoreVertexConnectivity.htmlDMMoabSetBlockFills.htmlDMMoabSetBlockSize.htmlDMMoabSetFieldName.htmlDMMoabSetFieldNames.htmlDMMoabSetFieldVector.htmlDMMoabSetGlobalFieldVector.htmlDMMoabSetInterface.htmlDMMoabSetLocalElements.htmlDMMoabSetLocalToGlobalTag.htmlDMMoabSetLocalVertices.htmlDMMoabVecGetArray.htmlDMMoabVecGetArrayRead.htmlDMMoabVecRestoreArray.htmlDMRefineHierarchy_Moab.htmlDMRefine_Moab.htmlindex.htmlDMNetworkDMNETWORK.htmlDMNetworkAddComponent.htmlDMNetworkAddNumVariables.htmlDMNetworkAssembleGraphStructures.htmlDMNetworkCreate.htmlDMNetworkDistribute.htmlDMNetworkEdgeSetMatrix.htmlDMNetworkGetComponent.htmlDMNetworkGetComponentDataArray.htmlDMNetworkGetConnectedVertices.htmlDMNetworkGetEdgeOffset.htmlDMNetworkGetEdgeRange.htmlDMNetworkGetGlobalEdgeIndex.htmlDMNetworkGetGlobalVertexIndex.htmlDMNetworkGetNumComponents.htmlDMNetworkGetNumVariables.htmlDMNetworkGetPlex.htmlDMNetworkGetSubnetworkInfo.htmlDMNetworkGetVariableGlobalOffset.htmlDMNetworkGetVariableOffset.htmlDMNetworkGetVertexOffset.htmlDMNetworkGetVertexRange.htmlDMNetworkHasJacobian.htmlDMNetworkIsGhostVertex.htmlDMNetworkLayoutSetUp.htmlDMNetworkMonitorAdd.htmlDMNetworkMonitorCreate.htmlDMNetworkMonitorDestroy.htmlDMNetworkMonitorPop.htmlDMNetworkMonitorView.htmlDMNetworkRegisterComponent.htmlDMNetworkSetEdgeList.htmlDMNetworkSetNumVariables.htmlDMNetworkSetSizes.htmlDMNetworkVertexSetMatrix.htmlPetscSFGetSubSF.htmlindex.htmlDMPATCHDMPatchCreate.htmlindex.htmlDMPLEXDMComputeL2Diff.htmlDMPLEX.htmlDMPlexAddConeSize.htmlDMPlexCheckCellShape.htmlDMPlexCheckConesConformOnInterfaces.htmlDMPlexCheckFaces.htmlDMPlexCheckGeometry.htmlDMPlexCheckPointSF.htmlDMPlexCheckSkeleton.htmlDMPlexCheckSymmetry.htmlDMPlexComputeBdIntegral.htmlDMPlexComputeCellGeometryAffineFEM.htmlDMPlexComputeCellGeometryFEM.htmlDMPlexComputeCellGeometryFVM.htmlDMPlexComputeCellwiseIntegralFEM.htmlDMPlexComputeGeometryFEM.htmlDMPlexComputeGeometryFVM.htmlDMPlexComputeGradientClementInterpolant.htmlDMPlexComputeGradientFVM.htmlDMPlexComputeInjectorFEM.htmlDMPlexComputeIntegralFEM.htmlDMPlexComputeInterpolatorGeneral.htmlDMPlexComputeInterpolatorNested.htmlDMPlexComputeL2DiffVec.htmlDMPlexComputeMassMatrixGeneral.htmlDMPlexComputeProjection2Dto1D.htmlDMPlexComputeProjection3Dto1D.htmlDMPlexComputeProjection3Dto2D.htmlDMPlexConstructCohesiveCells.htmlDMPlexConstructGhostCells.htmlDMPlexCoordinatesToReference.htmlDMPlexCopyCoordinates.htmlDMPlexCreate.htmlDMPlexCreateBoxMesh.htmlDMPlexCreateCGNS.htmlDMPlexCreateCellVertexFromFile.htmlDMPlexCreateClosureIndex.htmlDMPlexCreateCoarsePointIS.htmlDMPlexCreateCohesiveSubmesh.htmlDMPlexCreateCubeBoundary.htmlDMPlexCreateDefaultReferenceTree.htmlDMPlexCreateDoublet.htmlDMPlexCreateExodus.htmlDMPlexCreateExodusFromFile.htmlDMPlexCreateFluent.htmlDMPlexCreateFluentFromFile.htmlDMPlexCreateFromCellList.htmlDMPlexCreateFromCellListParallel.htmlDMPlexCreateFromDAG.htmlDMPlexCreateFromFile.htmlDMPlexCreateGlobalToNaturalSF.htmlDMPlexCreateGmsh.htmlDMPlexCreateGmshFromFile.htmlDMPlexCreateHexCylinderMesh.htmlDMPlexCreateHybridMesh.htmlDMPlexCreateLabelField.htmlDMPlexCreateMedFromFile.htmlDMPlexCreateNeighborCSR.htmlDMPlexCreateOverlap.htmlDMPlexCreateOverlapMigrationSF.htmlDMPlexCreatePLYFromFile.htmlDMPlexCreatePartitionerGraph.htmlDMPlexCreatePointNumbering.htmlDMPlexCreateProcessSF.htmlDMPlexCreateRankField.htmlDMPlexCreateReferenceCell.htmlDMPlexCreateRigidBodies.htmlDMPlexCreateRigidBody.htmlDMPlexCreateSection.htmlDMPlexCreateSphereMesh.htmlDMPlexCreateSquareBoundary.htmlDMPlexCreateSubmesh.htmlDMPlexCreateSubpointIS.htmlDMPlexCreateTwoSidedProcessSF.htmlDMPlexCreateWedgeBoxMesh.htmlDMPlexCreateWedgeCylinderMesh.htmlDMPlexDerivePointSF.htmlDMPlexDistribute.htmlDMPlexDistributeData.htmlDMPlexDistributeField.htmlDMPlexDistributeFieldIS.htmlDMPlexDistributeOverlap.htmlDMPlexDistributeOwnership.htmlDMPlexEqual.htmlDMPlexExtrude.htmlDMPlexFilter.htmlDMPlexGenerate.htmlDMPlexGenerateRegister.htmlDMPlexGenerateRegisterAll.htmlDMPlexGetAdjacency.htmlDMPlexGetAdjacencyUseAnchors.htmlDMPlexGetAdjacencyUser.htmlDMPlexGetAnchors.htmlDMPlexGetAuxiliaryPoint.htmlDMPlexGetCellFields.htmlDMPlexGetCellNumbering.htmlDMPlexGetChart.htmlDMPlexGetClosureIndices.htmlDMPlexGetCone.htmlDMPlexGetConeOrientation.htmlDMPlexGetConeOrientations.htmlDMPlexGetConeRecursive.htmlDMPlexGetConeSection.htmlDMPlexGetConeSize.htmlDMPlexGetConeTuple.htmlDMPlexGetCones.htmlDMPlexGetDataFVM.htmlDMPlexGetDepth.htmlDMPlexGetDepthLabel.htmlDMPlexGetDepthStratum.htmlDMPlexGetFaceFields.htmlDMPlexGetFaceGeometry.htmlDMPlexGetFullJoin.htmlDMPlexGetFullMeet.htmlDMPlexGetGatherDM.htmlDMPlexGetGlobalToNaturalSF.htmlDMPlexGetHeightStratum.htmlDMPlexGetHybridBounds.htmlDMPlexGetJoin.htmlDMPlexGetMaxProjectionHeight.htmlDMPlexGetMaxSizes.htmlDMPlexGetMeet.htmlDMPlexGetMigrationSF.htmlDMPlexGetMinRadius.htmlDMPlexGetNumFaceVertices.htmlDMPlexGetOrdering.htmlDMPlexGetOrientedFace.htmlDMPlexGetPartitionBalance.htmlDMPlexGetPartitioner.htmlDMPlexGetPointGlobal.htmlDMPlexGetPointGlobalField.htmlDMPlexGetPointLocal.htmlDMPlexGetPointLocalField.htmlDMPlexGetRedundantDM.htmlDMPlexGetReferenceTree.htmlDMPlexGetRefinementFunction.htmlDMPlexGetRefinementLimit.htmlDMPlexGetRefinementUniform.htmlDMPlexGetRegularRefinement.htmlDMPlexGetScale.htmlDMPlexGetSubdomainSection.htmlDMPlexGetSubpoint.htmlDMPlexGetSubpointMap.htmlDMPlexGetSupport.htmlDMPlexGetSupportSection.htmlDMPlexGetSupportSize.htmlDMPlexGetTransitiveClosure.htmlDMPlexGetTransitiveClosure_Internal.htmlDMPlexGetTree.htmlDMPlexGetTreeChildren.htmlDMPlexGetTreeParent.htmlDMPlexGetVTKCellHeight.htmlDMPlexGetVertexNumbering.htmlDMPlexGlobalToNaturalBegin.htmlDMPlexGlobalToNaturalEnd.htmlDMPlexInsertBoundaryValues.htmlDMPlexInsertBoundaryValuesEssential.htmlDMPlexInsertBoundaryValuesEssentialField.htmlDMPlexInsertBoundaryValuesRiemann.htmlDMPlexInsertCone.htmlDMPlexInsertConeOrientation.htmlDMPlexInsertSupport.htmlDMPlexInterpolate.htmlDMPlexInterpolatePointSF.htmlDMPlexInvertCell.htmlDMPlexLabelAddCells.htmlDMPlexLabelClearCells.htmlDMPlexLabelCohesiveComplete.htmlDMPlexLabelComplete.htmlDMPlexMarkBoundaryFaces.htmlDMPlexMatSetClosure.htmlDMPlexMigrate.htmlDMPlexNaturalToGlobalBegin.htmlDMPlexNaturalToGlobalEnd.htmlDMPlexOrient.htmlDMPlexPartitionLabelAdjacency.htmlDMPlexPartitionLabelClosure.htmlDMPlexPartitionLabelCreateSF.htmlDMPlexPartitionLabelInvert.htmlDMPlexPartitionLabelPropagate.htmlDMPlexPermute.htmlDMPlexPointGlobalFieldRead.htmlDMPlexPointGlobalFieldRef.htmlDMPlexPointGlobalRead.htmlDMPlexPointGlobalRef.htmlDMPlexPointLocalFieldRead.htmlDMPlexPointLocalFieldRef.htmlDMPlexPointLocalRead.htmlDMPlexPointLocalRef.htmlDMPlexPreallocateOperator.htmlDMPlexReconstructGradientsFVM.htmlDMPlexReferenceToCoordinates.htmlDMPlexReferenceTreeGetChildSymmetry.htmlDMPlexRefineSimplexToTensor.htmlDMPlexRestoreCellFields.htmlDMPlexRestoreClosureIndices.htmlDMPlexRestoreFaceFields.htmlDMPlexRestoreFaceGeometry.htmlDMPlexRestoreJoin.htmlDMPlexRestoreMeet.htmlDMPlexRestoreTransitiveClosure.htmlDMPlexReverseCell.htmlDMPlexSetAdjacencyUseAnchors.htmlDMPlexSetAdjacencyUser.htmlDMPlexSetAnchors.htmlDMPlexSetChart.htmlDMPlexSetCone.htmlDMPlexSetConeOrientation.htmlDMPlexSetConeSize.htmlDMPlexSetGlobalToNaturalSF.htmlDMPlexSetHybridBounds.htmlDMPlexSetMaxProjectionHeight.htmlDMPlexSetMigrationSF.htmlDMPlexSetMinRadius.htmlDMPlexSetOptionsPrefix.htmlDMPlexSetPartitionBalance.htmlDMPlexSetPartitioner.htmlDMPlexSetReferenceTree.htmlDMPlexSetRefinementFunction.htmlDMPlexSetRefinementLimit.htmlDMPlexSetRefinementUniform.htmlDMPlexSetRegularRefinement.htmlDMPlexSetScale.htmlDMPlexSetSubpointMap.htmlDMPlexSetSupport.htmlDMPlexSetSupportSize.htmlDMPlexSetTree.htmlDMPlexSetVTKCellHeight.htmlDMPlexStratify.htmlDMPlexStratifyMigrationSF.htmlDMPlexSymmetrize.htmlDMPlexTetgenSetOptions.htmlDMPlexTransferVecTree.htmlDMPlexTriangleSetOptions.htmlDMPlexUninterpolate.htmlDMPlexVTKWriteAll.htmlDMPlexVecGetClosure.htmlDMPlexVecRestoreClosure.htmlDMPlexVecSetClosure.htmlPETSCPARTITIONERCHACO.htmlPETSCPARTITIONERGATHER.htmlPETSCPARTITIONERMATPARTITIONING.htmlPETSCPARTITIONERPARMETIS.htmlPETSCPARTITIONERPTSCOTCH.htmlPETSCPARTITIONERSHELL.htmlPETSCPARTITIONERSIMPLE.htmlPetscPartitionerCreate.htmlPetscPartitionerDestroy.htmlPetscPartitionerGetType.htmlPetscPartitionerMatPartitioningGetMatPartitioning.htmlPetscPartitionerPartition.htmlPetscPartitionerRegister.htmlPetscPartitionerSetFromOptions.htmlPetscPartitionerSetType.htmlPetscPartitionerSetUp.htmlPetscPartitionerShellGetRandom.htmlPetscPartitionerShellSetPartition.htmlPetscPartitionerShellSetRandom.htmlPetscPartitionerView.htmlindex.htmlDMPRODUCTDMPRODUCT.htmlDMProductGetDM.htmlDMProductSetDM.htmlDMProductSetDimensionIndex.htmlindex.htmlDMSTAGDMSTAG.htmlDMStagCreate1d.htmlDMStagCreate2d.htmlDMStagCreate3d.htmlDMStagCreateCompatibleDMStag.htmlDMStagGet1dCoordinateArraysDOFRead.htmlDMStagGet1dCoordinateLocationSlot.htmlDMStagGetBoundaryTypes.htmlDMStagGetCorners.htmlDMStagGetDOF.htmlDMStagGetEntriesPerElement.htmlDMStagGetGhostCorners.htmlDMStagGetGlobalSizes.htmlDMStagGetIsFirstRank.htmlDMStagGetIsLastRank.htmlDMStagGetLocalSizes.htmlDMStagGetLocationDOF.htmlDMStagGetLocationSlot.htmlDMStagGetNumRanks.htmlDMStagGetStencilWidth.htmlDMStagMatSetValuesStencil.htmlDMStagMigrateVec.htmlDMStagRestore1dCoordinateArraysDOFRead.htmlDMStagSetBoundaryTypes.htmlDMStagSetCoordinateDMType.htmlDMStagSetDOF.htmlDMStagSetGhostType.htmlDMStagSetGlobalSizes.htmlDMStagSetNumRanks.htmlDMStagSetOwnershipRanges.htmlDMStagSetUniformCoordinates.htmlDMStagSetUniformCoordinatesExplicit.htmlDMStagSetUniformCoordinatesProduct.htmlDMStagStencil.htmlDMStagStencilLocation.htmlDMStagStencilType.htmlDMStagVecGetArrayDOF.htmlDMStagVecGetArrayDOFRead.htmlDMStagVecGetValuesStencil.htmlDMStagVecRestoreArrayDOF.htmlDMStagVecRestoreArrayDOFRead.htmlDMStagVecSetValuesStencil.htmlDMStagVecSplitToDMDA.htmlindex.htmlDMSWARMDMSWARM.htmlDMSwarmAddNPoints.htmlDMSwarmAddPoint.htmlDMSwarmCollectViewCreate.htmlDMSwarmCollectViewDestroy.htmlDMSwarmCopyPoint.htmlDMSwarmCreateGlobalVectorFromField.htmlDMSwarmCreateLocalVectorFromField.htmlDMSwarmCreatePointPerCellCount.htmlDMSwarmDestroyGlobalVectorFromField.htmlDMSwarmDestroyLocalVectorFromField.htmlDMSwarmFinalizeFieldRegister.htmlDMSwarmGetCellDM.htmlDMSwarmGetField.htmlDMSwarmGetLocalSize.htmlDMSwarmGetSize.htmlDMSwarmInitializeFieldRegister.htmlDMSwarmInsertPointsUsingCellDM.htmlDMSwarmMigrate.htmlDMSwarmProjectFields.htmlDMSwarmRegisterPetscDatatypeField.htmlDMSwarmRegisterUserDatatypeField.htmlDMSwarmRegisterUserStructField.htmlDMSwarmRemovePoint.htmlDMSwarmRemovePointAtIndex.htmlDMSwarmRestoreField.htmlDMSwarmSetCellDM.htmlDMSwarmSetLocalSizes.htmlDMSwarmSetPointCoordinates.htmlDMSwarmSetPointCoordinatesCellwise.htmlDMSwarmSetPointsUniformCoordinates.htmlDMSwarmSetType.htmlDMSwarmSortGetAccess.htmlDMSwarmSortGetIsValid.htmlDMSwarmSortGetNumberOfPointsPerCell.htmlDMSwarmSortGetPointsPerCell.htmlDMSwarmSortGetSizes.htmlDMSwarmSortRestoreAccess.htmlDMSwarmVectorDefineField.htmlDMSwarmViewFieldsXDMF.htmlDMSwarmViewXDMF.htmlindex.htmlDTPETSCDSBASIC.htmlPETSCFVLEASTSQUARES.htmlPETSCFVUPWIND.htmlPETSCLIMITERMC.htmlPETSCLIMITERMINMOD.htmlPETSCLIMITERNONE.htmlPETSCLIMITERSIN.htmlPETSCLIMITERSUPERBEE.htmlPETSCLIMITERVANALBADA.htmlPETSCLIMITERVANLEER.htmlPETSCLIMITERZERO.htmlPetscDSAddBoundary.htmlPetscDSAddDiscretization.htmlPetscDSCopyBoundary.htmlPetscDSCopyConstants.htmlPetscDSCopyEquations.htmlPetscDSCreate.htmlPetscDSDestroy.htmlPetscDSGetBdJacobian.htmlPetscDSGetBdResidual.htmlPetscDSGetBoundary.htmlPetscDSGetComponentDerivativeOffsets.htmlPetscDSGetComponentOffset.htmlPetscDSGetComponentOffsets.htmlPetscDSGetComponents.htmlPetscDSGetConstants.htmlPetscDSGetCoordinateDimension.htmlPetscDSGetDimensions.htmlPetscDSGetDiscretization.htmlPetscDSGetDynamicJacobian.htmlPetscDSGetExactSolution.htmlPetscDSGetFaceTabulation.htmlPetscDSGetFieldIndex.htmlPetscDSGetFieldOffset.htmlPetscDSGetFieldSize.htmlPetscDSGetHybrid.htmlPetscDSGetImplicit.htmlPetscDSGetJacobian.htmlPetscDSGetJacobianPreconditioner.htmlPetscDSGetNumBoundary.htmlPetscDSGetNumFields.htmlPetscDSGetResidual.htmlPetscDSGetRiemannSolver.htmlPetscDSGetSpatialDimension.htmlPetscDSGetTabulation.htmlPetscDSGetTotalComponents.htmlPetscDSGetTotalDimension.htmlPetscDSGetType.htmlPetscDSGetUpdate.htmlPetscDSHasDynamicJacobian.htmlPetscDSHasJacobian.htmlPetscDSHasJacobianPreconditioner.htmlPetscDSRegister.htmlPetscDSSelectEquations.htmlPetscDSSetBdJacobian.htmlPetscDSSetBdResidual.htmlPetscDSSetConstants.htmlPetscDSSetCoordinateDimension.htmlPetscDSSetDiscretization.htmlPetscDSSetDynamicJacobian.htmlPetscDSSetExactSolution.htmlPetscDSSetFromOptions.htmlPetscDSSetHybrid.htmlPetscDSSetImplicit.htmlPetscDSSetJacobian.htmlPetscDSSetJacobianPreconditioner.htmlPetscDSSetResidual.htmlPetscDSSetRiemannSolver.htmlPetscDSSetType.htmlPetscDSSetUp.htmlPetscDSSetUpdate.htmlPetscDSUpdateBoundary.htmlPetscDSUseJacobianPreconditioner.htmlPetscDSView.htmlPetscDTGaussJacobiQuadrature.htmlPetscDTGaussQuadrature.htmlPetscDTGaussTensorQuadrature.htmlPetscDTLegendreEval.htmlPetscDTReconstructPoly.htmlPetscDTTanhSinhTensorQuadrature.htmlPetscFVComputeGradient.htmlPetscFVCreate.htmlPetscFVDestroy.htmlPetscFVGetComponentName.htmlPetscFVGetComputeGradients.htmlPetscFVGetDualSpace.htmlPetscFVGetLimiter.htmlPetscFVGetNumComponents.htmlPetscFVGetQuadrature.htmlPetscFVGetSpatialDimension.htmlPetscFVGetType.htmlPetscFVLeastSquaresSetMaxFaces.htmlPetscFVRefine.htmlPetscFVRegister.htmlPetscFVSetComponentName.htmlPetscFVSetComputeGradients.htmlPetscFVSetDualSpace.htmlPetscFVSetFromOptions.htmlPetscFVSetLimiter.htmlPetscFVSetNumComponents.htmlPetscFVSetQuadrature.htmlPetscFVSetSpatialDimension.htmlPetscFVSetType.htmlPetscFVSetUp.htmlPetscFVView.htmlPetscLimiterCreate.htmlPetscLimiterDestroy.htmlPetscLimiterGetType.htmlPetscLimiterRegister.htmlPetscLimiterSetFromOptions.htmlPetscLimiterSetType.htmlPetscLimiterSetUp.htmlPetscLimiterView.htmlPetscQuadratureCreate.htmlPetscQuadratureDestroy.htmlPetscQuadratureDuplicate.htmlPetscQuadratureExpandComposite.htmlPetscQuadratureGetData.htmlPetscQuadratureGetNumComponents.htmlPetscQuadratureGetOrder.htmlPetscQuadratureSetData.htmlPetscQuadratureSetNumComponents.htmlPetscQuadratureSetOrder.htmlPetscQuadratureView.htmlindex.htmlDrawPETSC_DRAW_IMAGE.htmlPETSC_DRAW_NULL.htmlPETSC_DRAW_X.htmlPetscDraw.htmlPetscDrawAppendTitle.htmlPetscDrawArrow.htmlPetscDrawAxis.htmlPetscDrawAxisCreate.htmlPetscDrawAxisDestroy.htmlPetscDrawAxisDraw.htmlPetscDrawAxisGetLimits.htmlPetscDrawAxisSetColors.htmlPetscDrawAxisSetHoldLimits.htmlPetscDrawAxisSetLabels.htmlPetscDrawAxisSetLimits.htmlPetscDrawBOP.htmlPetscDrawBar.htmlPetscDrawBarCreate.htmlPetscDrawBarDestroy.htmlPetscDrawBarDraw.htmlPetscDrawBarGetAxis.htmlPetscDrawBarGetDraw.htmlPetscDrawBarSave.htmlPetscDrawBarSetColor.htmlPetscDrawBarSetData.htmlPetscDrawBarSetFromOptions.htmlPetscDrawBarSetLimits.htmlPetscDrawBarSort.htmlPetscDrawButton.htmlPetscDrawCheckResizedWindow.htmlPetscDrawClear.htmlPetscDrawCoordinateToPixel.htmlPetscDrawCreate.htmlPetscDrawDestroy.htmlPetscDrawEOP.htmlPetscDrawEllipse.htmlPetscDrawFinalizePackage.htmlPetscDrawFlush.htmlPetscDrawGetBoundingBox.htmlPetscDrawGetCoordinates.htmlPetscDrawGetCurrentPoint.htmlPetscDrawGetMarkerType.htmlPetscDrawGetMouseButton.htmlPetscDrawGetPause.htmlPetscDrawGetPopup.htmlPetscDrawGetSingleton.htmlPetscDrawGetTitle.htmlPetscDrawGetType.htmlPetscDrawGetViewPort.htmlPetscDrawGetWindowSize.htmlPetscDrawHG.htmlPetscDrawHGAddValue.htmlPetscDrawHGCalcStats.htmlPetscDrawHGCreate.htmlPetscDrawHGDestroy.htmlPetscDrawHGDraw.htmlPetscDrawHGGetAxis.htmlPetscDrawHGGetDraw.htmlPetscDrawHGIntegerBins.htmlPetscDrawHGReset.htmlPetscDrawHGSave.htmlPetscDrawHGSetColor.htmlPetscDrawHGSetLimits.htmlPetscDrawHGSetNumberBins.htmlPetscDrawHGView.htmlPetscDrawIndicatorFunction.htmlPetscDrawIsNull.htmlPetscDrawLG.htmlPetscDrawLGAddCommonPoint.htmlPetscDrawLGAddPoint.htmlPetscDrawLGAddPoints.htmlPetscDrawLGCreate.htmlPetscDrawLGDestroy.htmlPetscDrawLGDraw.htmlPetscDrawLGGetAxis.htmlPetscDrawLGGetDimension.htmlPetscDrawLGGetDraw.htmlPetscDrawLGReset.htmlPetscDrawLGSPDraw.htmlPetscDrawLGSave.htmlPetscDrawLGSetColors.htmlPetscDrawLGSetDimension.htmlPetscDrawLGSetFromOptions.htmlPetscDrawLGSetLegend.htmlPetscDrawLGSetLimits.htmlPetscDrawLGSetOptionsPrefix.htmlPetscDrawLGSetUseMarkers.htmlPetscDrawLGView.htmlPetscDrawLine.htmlPetscDrawLineGetWidth.htmlPetscDrawLineSetWidth.htmlPetscDrawMarker.htmlPetscDrawMarkerType.htmlPetscDrawOpenImage.htmlPetscDrawOpenNull.htmlPetscDrawOpenX.htmlPetscDrawPause.htmlPetscDrawPixelToCoordinate.htmlPetscDrawPoint.htmlPetscDrawPointPixel.htmlPetscDrawPointSetSize.htmlPetscDrawPopCurrentPoint.htmlPetscDrawPushCurrentPoint.htmlPetscDrawRealToColor.htmlPetscDrawRectangle.htmlPetscDrawRegister.htmlPetscDrawRegisterAll.htmlPetscDrawResizeWindow.htmlPetscDrawRestoreSingleton.htmlPetscDrawSP.htmlPetscDrawSPAddPoint.htmlPetscDrawSPAddPoints.htmlPetscDrawSPCreate.htmlPetscDrawSPDestroy.htmlPetscDrawSPDraw.htmlPetscDrawSPGetAxis.htmlPetscDrawSPGetDraw.htmlPetscDrawSPReset.htmlPetscDrawSPSave.htmlPetscDrawSPSetDimension.htmlPetscDrawSPSetLimits.htmlPetscDrawSave.htmlPetscDrawSaveMovie.htmlPetscDrawScalePopup.htmlPetscDrawSetCoordinates.htmlPetscDrawSetCurrentPoint.htmlPetscDrawSetDisplay.htmlPetscDrawSetDoubleBuffer.htmlPetscDrawSetFromOptions.htmlPetscDrawSetMarkerType.htmlPetscDrawSetOptionsPrefix.htmlPetscDrawSetPause.htmlPetscDrawSetSave.htmlPetscDrawSetSaveFinalImage.htmlPetscDrawSetSaveMovie.htmlPetscDrawSetTitle.htmlPetscDrawSetType.htmlPetscDrawSetViewPort.htmlPetscDrawSplitViewPort.htmlPetscDrawString.htmlPetscDrawStringBoxed.htmlPetscDrawStringCentered.htmlPetscDrawStringGetSize.htmlPetscDrawStringSetSize.htmlPetscDrawStringVertical.htmlPetscDrawTensorContour.htmlPetscDrawTensorContourPatch.htmlPetscDrawTriangle.htmlPetscDrawType.htmlPetscDrawView.htmlPetscDrawViewPorts.htmlPetscDrawViewPortsCreate.htmlPetscDrawViewPortsCreateRect.htmlPetscDrawViewPortsDestroy.htmlPetscDrawViewPortsSet.htmlPetscDrawZoom.htmlPetscInitializeDrawPackage.htmlindex.htmlISIS.htmlISAllGather.htmlISAllGatherColors.htmlISBlockGetIndices.htmlISBlockGetIndicesF90.htmlISBlockGetLocalSize.htmlISBlockGetSize.htmlISBlockRestoreIndices.htmlISBlockRestoreIndicesF90.htmlISBlockSetIndices.htmlISBuildTwoSided.htmlISColoring.htmlISColoringCreate.htmlISColoringDestroy.htmlISColoringGetIS.htmlISColoringRestoreIS.htmlISColoringType.htmlISColoringView.htmlISComplement.htmlISCompressIndicesGeneral.htmlISConcatenate.htmlISContiguousLocal.htmlISCopy.htmlISCreate.htmlISCreateBlock.htmlISCreateGeneral.htmlISCreateStride.htmlISCreateSubIS.htmlISDestroy.htmlISDifference.htmlISDuplicate.htmlISEmbed.htmlISEqual.htmlISEqualUnsorted.htmlISExpand.htmlISExpandIndicesGeneral.htmlISGeneralSetIndices.htmlISGetBlockSize.htmlISGetIndices.htmlISGetIndicesF90.htmlISGetLocalSize.htmlISGetMinMax.htmlISGetNonlocalIS.htmlISGetNonlocalIndices.htmlISGetSize.htmlISGetTotalIndices.htmlISGetType.htmlISGlobalToLocalMappingApply.htmlISGlobalToLocalMappingApplyBlock.htmlISGlobalToLocalMappingApplyIS.htmlISGlobalToLocalMappingMode.htmlISIdentity.htmlISIntersect.htmlISInvertPermutation.htmlISLOCALTOGLOBALMAPPINGBASIC.htmlISLOCALTOGLOBALMAPPINGHASH.htmlISListToPair.htmlISLoad.htmlISLocalToGlobalMapping.htmlISLocalToGlobalMappingApply.htmlISLocalToGlobalMappingApplyBlock.htmlISLocalToGlobalMappingApplyIS.htmlISLocalToGlobalMappingConcatenate.htmlISLocalToGlobalMappingCreate.htmlISLocalToGlobalMappingCreateIS.htmlISLocalToGlobalMappingCreateSF.htmlISLocalToGlobalMappingDestroy.htmlISLocalToGlobalMappingDuplicate.htmlISLocalToGlobalMappingGetBlockIndices.htmlISLocalToGlobalMappingGetBlockInfo.htmlISLocalToGlobalMappingGetBlockSize.htmlISLocalToGlobalMappingGetIndices.htmlISLocalToGlobalMappingGetInfo.htmlISLocalToGlobalMappingGetNodeInfo.htmlISLocalToGlobalMappingGetSize.htmlISLocalToGlobalMappingRegister.htmlISLocalToGlobalMappingRegisterAll.htmlISLocalToGlobalMappingRestoreBlockIndices.htmlISLocalToGlobalMappingRestoreBlockInfo.htmlISLocalToGlobalMappingRestoreIndices.htmlISLocalToGlobalMappingRestoreInfo.htmlISLocalToGlobalMappingRestoreNodeInfo.htmlISLocalToGlobalMappingSetBlockSize.htmlISLocalToGlobalMappingSetFromOptions.htmlISLocalToGlobalMappingSetType.htmlISLocalToGlobalMappingType.htmlISLocalToGlobalMappingView.htmlISLocate.htmlISOnComm.htmlISPairToList.htmlISPartitioningCount.htmlISPartitioningToNumbering.htmlISPermutation.htmlISRegister.htmlISRegisterAll.htmlISRenumber.htmlISRestoreIndices.htmlISRestoreIndicesF90.htmlISRestoreNonlocalIS.htmlISRestoreTotalIndices.htmlISSetBlockSize.htmlISSetIdentity.htmlISSetPermutation.htmlISSetType.htmlISSort.htmlISSortPermutation.htmlISSortRemoveDups.htmlISSorted.htmlISStrideGetInfo.htmlISStrideSetStride.htmlISSum.htmlISToGeneral.htmlISType.htmlISView.htmlPetscLayout.htmlPetscLayoutCompare.htmlPetscLayoutCreate.htmlPetscLayoutDestroy.htmlPetscLayoutDuplicate.htmlPetscLayoutFindOwner.htmlPetscLayoutFindOwnerIndex.htmlPetscLayoutGetBlockSize.htmlPetscLayoutGetLocalSize.htmlPetscLayoutGetRange.htmlPetscLayoutGetRanges.htmlPetscLayoutGetSize.htmlPetscLayoutReference.htmlPetscLayoutSetBlockSize.htmlPetscLayoutSetISLocalToGlobalMapping.htmlPetscLayoutSetLocalSize.htmlPetscLayoutSetSize.htmlPetscLayoutSetUp.htmlPetscSFCreateSectionSF.htmlPetscSFDistributeSection.htmlPetscSFSetGraphLayout.htmlPetscSection.htmlPetscSectionAddConstraintDof.htmlPetscSectionAddDof.htmlPetscSectionAddFieldConstraintDof.htmlPetscSectionAddFieldDof.htmlPetscSectionClone.htmlPetscSectionCompare.htmlPetscSectionCopy.htmlPetscSectionCreate.htmlPetscSectionCreateGlobalSection.htmlPetscSectionCreateGlobalSectionCensored.htmlPetscSectionDestroy.htmlPetscSectionExtractDofsFromArray.htmlPetscSectionGetChart.htmlPetscSectionGetClosureIndex.htmlPetscSectionGetClosureInversePermutation.htmlPetscSectionGetClosurePermutation.htmlPetscSectionGetConstrainedStorageSize.htmlPetscSectionGetConstraintDof.htmlPetscSectionGetConstraintIndices.htmlPetscSectionGetDof.htmlPetscSectionGetField.htmlPetscSectionGetFieldComponents.htmlPetscSectionGetFieldConstraintDof.htmlPetscSectionGetFieldDof.htmlPetscSectionGetFieldName.htmlPetscSectionGetFieldOffset.htmlPetscSectionGetFieldPointSyms.htmlPetscSectionGetFieldSym.htmlPetscSectionGetMaxDof.htmlPetscSectionGetNumFields.htmlPetscSectionGetOffset.htmlPetscSectionGetOffsetRange.htmlPetscSectionGetPermutation.htmlPetscSectionGetPointMajor.htmlPetscSectionGetPointSyms.htmlPetscSectionGetStorageSize.htmlPetscSectionGetSym.htmlPetscSectionGetUseFieldOffsets.htmlPetscSectionGetValueLayout.htmlPetscSectionPermute.htmlPetscSectionReset.htmlPetscSectionRestoreFieldPointSyms.htmlPetscSectionRestorePointSyms.htmlPetscSectionSetChart.htmlPetscSectionSetClosureIndex.htmlPetscSectionSetClosurePermutation.htmlPetscSectionSetConstraintDof.htmlPetscSectionSetConstraintIndices.htmlPetscSectionSetDof.htmlPetscSectionSetFieldComponents.htmlPetscSectionSetFieldConstraintDof.htmlPetscSectionSetFieldDof.htmlPetscSectionSetFieldName.htmlPetscSectionSetFieldOffset.htmlPetscSectionSetFieldSym.htmlPetscSectionSetFromOptions.htmlPetscSectionSetNumFields.htmlPetscSectionSetOffset.htmlPetscSectionSetPermutation.htmlPetscSectionSetPointMajor.htmlPetscSectionSetSym.htmlPetscSectionSetUp.htmlPetscSectionSetUseFieldOffsets.htmlPetscSectionSym.htmlPetscSectionSymCreate.htmlPetscSectionSymDestroy.htmlPetscSectionSymGetType.htmlPetscSectionSymRegister.htmlPetscSectionSymSetType.htmlPetscSectionSymType.htmlPetscSectionSymView.htmlPetscSectionView.htmlPetscViewerHDF5ReadSizes.htmlindex.htmlKSPDMCopyDMKSP.htmlDMGetDMKSP.htmlDMGetDMKSPWrite.htmlDMGlobalToLocalSolve.htmlDMKSPCopy.htmlDMKSPGetComputeInitialGuess.htmlDMKSPGetComputeOperators.htmlDMKSPGetComputeRHS.htmlDMKSPSetComputeInitialGuess.htmlDMKSPSetComputeOperators.htmlDMKSPSetComputeRHS.htmlDMProjectField.htmlKSP.htmlKSPAGMRES.htmlKSPAppendOptionsPrefix.htmlKSPBCGS.htmlKSPBCGSL.htmlKSPBCGSLSetEll.htmlKSPBCGSLSetPol.htmlKSPBCGSLSetUsePseudoinverse.htmlKSPBCGSLSetXRes.htmlKSPBICG.htmlKSPBuildResidual.htmlKSPBuildSolution.htmlKSPCG.htmlKSPCGGLTR.htmlKSPCGGLTRGetLambda.htmlKSPCGGLTRGetMinEig.htmlKSPCGGetNormD.htmlKSPCGGetObjFcn.htmlKSPCGLS.htmlKSPCGNASH.htmlKSPCGNE.htmlKSPCGS.htmlKSPCGSTCG.htmlKSPCGSetRadius.htmlKSPCGSetType.htmlKSPCGType.htmlKSPCGUseSingleReduction.htmlKSPCHEBYSHEV.htmlKSPCR.htmlKSPChebyshevEstEigGetKSP.htmlKSPChebyshevEstEigSet.htmlKSPChebyshevEstEigSetUseNoisy.htmlKSPChebyshevSetEigenvalues.htmlKSPCheckDot.htmlKSPCheckNorm.htmlKSPCheckSolve.htmlKSPComputeEigenvalues.htmlKSPComputeEigenvaluesExplicitly.htmlKSPComputeExplicitOperator.htmlKSPComputeExtremeSingularValues.htmlKSPComputeRitz.htmlKSPConvergedDefault.htmlKSPConvergedDefaultCreate.htmlKSPConvergedDefaultDestroy.htmlKSPConvergedDefaultSetUIRNorm.htmlKSPConvergedDefaultSetUMIRNorm.htmlKSPConvergedReason.htmlKSPConvergedSkip.htmlKSPCreate.htmlKSPCreateVecs.htmlKSPDGMRES.htmlKSPDestroy.htmlKSPFBCGS.htmlKSPFBCGSR.htmlKSPFCDTruncationType.htmlKSPFCG.htmlKSPFCGGetMmax.htmlKSPFCGGetNprealloc.htmlKSPFCGGetTruncationType.htmlKSPFCGSetMmax.htmlKSPFCGSetNprealloc.htmlKSPFCGSetTruncationType.htmlKSPFETIDP.htmlKSPFETIDPGetInnerBDDC.htmlKSPFETIDPGetInnerKSP.htmlKSPFETIDPSetInnerBDDC.htmlKSPFETIDPSetPressureOperator.htmlKSPFGMRES.htmlKSPFGMRESModifyPCKSP.htmlKSPFGMRESModifyPCNoChange.htmlKSPFGMRESSetModifyPC.htmlKSPFinalizePackage.htmlKSPGCR.htmlKSPGCRSetModifyPC.htmlKSPGMRES.htmlKSPGMRESCGSRefinementType.htmlKSPGMRESClassicalGramSchmidtOrthogonalization.htmlKSPGMRESGetCGSRefinementType.htmlKSPGMRESGetOrthogonalization.htmlKSPGMRESGetRestart.htmlKSPGMRESModifiedGramSchmidtOrthogonalization.htmlKSPGMRESMonitorKrylov.htmlKSPGMRESSetCGSRefinementType.htmlKSPGMRESSetHapTol.htmlKSPGMRESSetOrthogonalization.htmlKSPGMRESSetPreAllocateVectors.htmlKSPGMRESSetRestart.htmlKSPGROPPCG.htmlKSPGetAndClearConvergenceTest.htmlKSPGetApplicationContext.htmlKSPGetComputeEigenvalues.htmlKSPGetComputeSingularValues.htmlKSPGetConvergedReason.htmlKSPGetConvergenceContext.htmlKSPGetConvergenceTest.htmlKSPGetDM.htmlKSPGetDiagonalScale.htmlKSPGetDiagonalScaleFix.htmlKSPGetErrorIfNotConverged.htmlKSPGetGuess.htmlKSPGetInitialGuessKnoll.htmlKSPGetInitialGuessNonzero.htmlKSPGetIterationNumber.htmlKSPGetMonitorContext.htmlKSPGetNormType.htmlKSPGetOperators.htmlKSPGetOperatorsSet.htmlKSPGetOptionsPrefix.htmlKSPGetPC.htmlKSPGetPCSide.htmlKSPGetResidualHistory.htmlKSPGetResidualNorm.htmlKSPGetRhs.htmlKSPGetSolution.htmlKSPGetTabLevel.htmlKSPGetTolerances.htmlKSPGetTotalIterations.htmlKSPGetType.htmlKSPGuess.htmlKSPGuessCreate.htmlKSPGuessFischerSetModel.htmlKSPGuessFormGuess.htmlKSPGuessGetType.htmlKSPGuessSetFromOptions.htmlKSPGuessSetType.htmlKSPGuessSetUp.htmlKSPGuessType.htmlKSPGuessUpdate.htmlKSPGuessView.htmlKSPIBCGS.htmlKSPInitialResidual.htmlKSPInitializePackage.htmlKSPLCD.htmlKSPLGMRES.htmlKSPLSQR.htmlKSPLSQRConvergedDefault.htmlKSPLSQRGetNorms.htmlKSPLSQRGetStandardErrorVec.htmlKSPLSQRMonitorDefault.htmlKSPLSQRSetComputeStandardErrorVec.htmlKSPLSQRSetExactMatNorm.htmlKSPLoad.htmlKSPMINRES.htmlKSPMatRegisterAll.htmlKSPMonitor.htmlKSPMonitorCancel.htmlKSPMonitorDefault.htmlKSPMonitorDynamicTolerance.htmlKSPMonitorLGResidualNormCreate.htmlKSPMonitorLGTrueResidualNormCreate.htmlKSPMonitorRange.htmlKSPMonitorSAWs.htmlKSPMonitorSAWsCreate.htmlKSPMonitorSAWsDestroy.htmlKSPMonitorSet.htmlKSPMonitorSetFromOptions.htmlKSPMonitorSingularValue.htmlKSPMonitorSolution.htmlKSPMonitorTrueResidualMaxNorm.htmlKSPMonitorTrueResidualNorm.htmlKSPNormType.htmlKSPPGMRES.htmlKSPPIPEBCGS.htmlKSPPIPECG.htmlKSPPIPECGRR.htmlKSPPIPECR.htmlKSPPIPEFCG.htmlKSPPIPEFCGGetMmax.htmlKSPPIPEFCGGetNprealloc.htmlKSPPIPEFCGGetTruncationType.htmlKSPPIPEFCGSetMmax.htmlKSPPIPEFCGSetNprealloc.htmlKSPPIPEFCGSetTruncationType.htmlKSPPIPEFGMRES.htmlKSPPIPEFGMRESSetShift.htmlKSPPIPEGCR.htmlKSPPIPEGCRGetMmax.htmlKSPPIPEGCRGetNprealloc.htmlKSPPIPEGCRGetTruncationType.htmlKSPPIPEGCRGetUnrollW.htmlKSPPIPEGCRSetMmax.htmlKSPPIPEGCRSetModifyPC.htmlKSPPIPEGCRSetNprealloc.htmlKSPPIPEGCRSetTruncationType.htmlKSPPIPEGCRSetUnrollW.htmlKSPPIPELCG.htmlKSPPREONLY.htmlKSPPythonSetType.htmlKSPQCG.htmlKSPQCGGetQuadratic.htmlKSPQCGGetTrialStepNorm.htmlKSPQCGSetTrustRegionRadius.htmlKSPRICHARDSON.htmlKSPReasonView.htmlKSPReasonViewFromOptions.htmlKSPRegister.htmlKSPRegisterAll.htmlKSPReset.htmlKSPResetFromOptions.htmlKSPResetViewers.htmlKSPRichardsonSetScale.htmlKSPRichardsonSetSelfScale.htmlKSPSYMMLQ.htmlKSPSetApplicationContext.htmlKSPSetCheckNormIteration.htmlKSPSetComputeEigenvalues.htmlKSPSetComputeInitialGuess.htmlKSPSetComputeOperators.htmlKSPSetComputeRHS.htmlKSPSetComputeRitz.htmlKSPSetComputeSingularValues.htmlKSPSetConvergenceTest.htmlKSPSetDM.htmlKSPSetDMActive.htmlKSPSetDiagonalScale.htmlKSPSetDiagonalScaleFix.htmlKSPSetErrorIfNotConverged.htmlKSPSetFromOptions.htmlKSPSetGuess.htmlKSPSetInitialGuessKnoll.htmlKSPSetInitialGuessNonzero.htmlKSPSetLagNorm.htmlKSPSetNormType.htmlKSPSetOperators.htmlKSPSetOptionsPrefix.htmlKSPSetPC.htmlKSPSetPCSide.htmlKSPSetPostSolve.htmlKSPSetPreSolve.htmlKSPSetResidualHistory.htmlKSPSetReusePreconditioner.htmlKSPSetSkipPCSetFromOptions.htmlKSPSetSupportedNorm.htmlKSPSetTabLevel.htmlKSPSetTolerances.htmlKSPSetType.htmlKSPSetUp.htmlKSPSetUpOnBlocks.htmlKSPSetUseFischerGuess.htmlKSPSetWorkVecs.htmlKSPSolve.htmlKSPSolveTranspose.htmlKSPTCQMR.htmlKSPTFQMR.htmlKSPTSIRM.htmlKSPType.htmlKSPUnwindPreconditioner.htmlKSPView.htmlKSP_CONVERGED_ATOL.htmlKSP_CONVERGED_ITERATING.htmlKSP_CONVERGED_ITS.htmlKSP_CONVERGED_RTOL.htmlKSP_DIVERGED_BREAKDOWN.htmlKSP_DIVERGED_BREAKDOWN_BICG.htmlKSP_DIVERGED_DTOL.htmlKSP_DIVERGED_INDEFINITE_PC.htmlKSP_DIVERGED_ITS.htmlKSP_DIVERGED_NONSYMMETRIC.htmlKSP_DIVERGED_PC_FAILED.htmlKSP_GMRES_CGS_REFINE_IFNEEDED.htmlKSP_GMRES_CGS_REFINE_NEVER.htmlKSP_NORM_NATURAL.htmlKSP_NORM_NONE.htmlKSP_NORM_PRECONDITIONED.htmlKSP_NORM_UNPRECONDITIONED.htmlMatCreateLMVMBFGS.htmlMatCreateLMVMBadBrdn.htmlMatCreateLMVMBrdn.htmlMatCreateLMVMDFP.htmlMatCreateLMVMDiagBrdn.htmlMatCreateLMVMSR1.htmlMatCreateLMVMSymBadBrdn.htmlMatCreateLMVMSymBrdn.htmlMatCreateSchurComplement.htmlMatCreateSchurComplementPmat.htmlMatGetSchurComplement.htmlMatLMVMAllocate.htmlMatLMVMApplyJ0Fwd.htmlMatLMVMApplyJ0Inv.htmlMatLMVMClearJ0.htmlMatLMVMGetJ0.htmlMatLMVMGetJ0KSP.htmlMatLMVMGetJ0PC.htmlMatLMVMGetRejectCount.htmlMatLMVMGetUpdateCount.htmlMatLMVMIsAllocated.htmlMatLMVMReset.htmlMatLMVMResetShift.htmlMatLMVMSetJ0.htmlMatLMVMSetJ0Diag.htmlMatLMVMSetJ0KSP.htmlMatLMVMSetJ0PC.htmlMatLMVMSetJ0Scale.htmlMatLMVMUpdate.htmlMatSchurComplementAinvType.htmlMatSchurComplementComputeExplicitOperator.htmlMatSchurComplementGetAinvType.htmlMatSchurComplementGetKSP.htmlMatSchurComplementGetPmat.htmlMatSchurComplementGetSubMatrices.htmlMatSchurComplementSetAinvType.htmlMatSchurComplementSetKSP.htmlMatSchurComplementSetSubMatrices.htmlMatSchurComplementUpdateSubMatrices.htmlMatSymBrdnSetDelta.htmlPCFinalizePackage.htmlPCInitializePackage.htmlindex.htmlMatMATAIJ.htmlMATAIJCRL.htmlMATAIJCUSPARSE.htmlMATAIJMKL.htmlMATAIJPERM.htmlMATAIJSELL.htmlMATAIJVIENNACL.htmlMATBAIJ.htmlMATBAIJMKL.htmlMATBLOCKMAT.htmlMATCOMPOSITE.htmlMATDENSE.htmlMATDUMMY.htmlMATELEMENTAL.htmlMATHYPRE.htmlMATIS.htmlMATMAIJ.htmlMATMFFD.htmlMATMFFD_DS.htmlMATMFFD_WP.htmlMATMPIADJ.htmlMATMPIAIJ.htmlMATMPIBAIJ.htmlMATMPISBAIJ.htmlMATMPISELL.htmlMATNEST.htmlMATPREALLOCATOR.htmlMATSBAIJ.htmlMATSCATTER.htmlMATSELL.htmlMATSEQAIJ.htmlMATSEQAIJCUSPARSE.htmlMATSEQAIJVIENNACL.htmlMATSEQBAIJ.htmlMATSEQDENSE.htmlMATSEQSBAIJ.htmlMATSHELL.htmlMATSOLVERBAS.htmlMATSOLVERCHOLMOD.htmlMATSOLVERCUSPARSE.htmlMATSOLVERESSL.htmlMATSOLVERKLU.htmlMATSOLVERLUSOL.htmlMATSOLVERMATLAB.htmlMATSOLVERMKL_PARDISO.htmlMATSOLVERMUMPS.htmlMATSOLVERPASTIX.htmlMATSOLVERSPARSEELEMENTAL.htmlMATSOLVERSSTRUMPACK.htmlMATSOLVERSUPERLU.htmlMATSOLVERSUPERLU_DIST.htmlMATSOLVERUMFPACK.htmlMat.htmlMatAXPY.htmlMatAYPX.htmlMatAppendOptionsPrefix.htmlMatAssembled.htmlMatAssemblyBegin.htmlMatAssemblyEnd.htmlMatAssemblyType.htmlMatBackwardSolve.htmlMatBlockMatSetPreallocation.htmlMatCUSPARSEFormatOperation.htmlMatCUSPARSESetFormat.htmlMatCUSPARSEStorageFormat.htmlMatCheckCompressedRow.htmlMatCholeskyFactor.htmlMatCholeskyFactorNumeric.htmlMatCholeskyFactorSymbolic.htmlMatChop.htmlMatColoring.htmlMatColoringPatch.htmlMatColoringType.htmlMatColoringWeightType.htmlMatCompositeAddMat.htmlMatCompositeMerge.htmlMatCompositeSetType.htmlMatComputeBandwidth.htmlMatComputeExplicitOperator.htmlMatComputeExplicitOperatorTranspose.htmlMatConjugate.htmlMatConvert.htmlMatCopy.htmlMatCreate.htmlMatCreateAIJ.htmlMatCreateAIJCUSPARSE.htmlMatCreateAIJViennaCL.htmlMatCreateBAIJ.htmlMatCreateBAIJMKL.htmlMatCreateBlockMat.htmlMatCreateComposite.htmlMatCreateDense.htmlMatCreateFFT.htmlMatCreateHermitianTranspose.htmlMatCreateIS.htmlMatCreateLRC.htmlMatCreateLocalRef.htmlMatCreateMAIJ.htmlMatCreateMFFD.htmlMatCreateMPIAIJCRL.htmlMatCreateMPIAIJMKL.htmlMatCreateMPIAIJPERM.htmlMatCreateMPIAIJSELL.htmlMatCreateMPIAIJSumSeqAIJ.htmlMatCreateMPIAIJWithArrays.htmlMatCreateMPIAIJWithSeqAIJ.htmlMatCreateMPIAIJWithSplitArrays.htmlMatCreateMPIAdj.htmlMatCreateMPIBAIJWithArrays.htmlMatCreateMPIMatConcatenateSeqMat.htmlMatCreateMPISBAIJWithArrays.htmlMatCreateNest.htmlMatCreateNormal.htmlMatCreateNormalHermitian.htmlMatCreateRedundantMatrix.htmlMatCreateSBAIJ.htmlMatCreateSELL.htmlMatCreateScatter.htmlMatCreateSeqAIJ.htmlMatCreateSeqAIJCRL.htmlMatCreateSeqAIJCUSPARSE.htmlMatCreateSeqAIJFromTriple.htmlMatCreateSeqAIJMKL.htmlMatCreateSeqAIJPERM.htmlMatCreateSeqAIJSELL.htmlMatCreateSeqAIJViennaCL.htmlMatCreateSeqAIJWithArrays.htmlMatCreateSeqBAIJ.htmlMatCreateSeqBAIJMKL.htmlMatCreateSeqBAIJWithArrays.htmlMatCreateSeqCUFFT.htmlMatCreateSeqDense.htmlMatCreateSeqSBAIJ.htmlMatCreateSeqSBAIJWithArrays.htmlMatCreateSeqSELL.htmlMatCreateShell.htmlMatCreateSubMatrices.htmlMatCreateSubMatricesMPI.htmlMatCreateSubMatrix.htmlMatCreateSubMatrixOption.htmlMatCreateSubMatrixVirtual.htmlMatCreateTranspose.htmlMatCreateVecs.htmlMatCreateVecsFFTW.htmlMatDenseGetArray.htmlMatDenseGetArrayF90.htmlMatDenseGetArrayRead.htmlMatDenseGetColumn.htmlMatDenseGetLocalMatrix.htmlMatDensePlaceArray.htmlMatDenseResetArray.htmlMatDenseRestoreArray.htmlMatDenseRestoreArrayF90.htmlMatDenseRestoreArrayRead.htmlMatDenseRestoreColumn.htmlMatDestroy.htmlMatDestroyMatrices.htmlMatDestroySeqNonzeroStructure.htmlMatDestroySubMatrices.htmlMatDiagonalScale.htmlMatDiagonalScaleLocal.htmlMatDiagonalSet.htmlMatDuplicate.htmlMatDuplicateOption.htmlMatEqual.htmlMatFDColoring.htmlMatFactorClearError.htmlMatFactorCreateSchurComplement.htmlMatFactorError.htmlMatFactorFactorizeSchurComplement.htmlMatFactorGetError.htmlMatFactorGetErrorZeroPivot.htmlMatFactorGetSchurComplement.htmlMatFactorGetSolverType.htmlMatFactorInfo.htmlMatFactorInfoInitialize.htmlMatFactorInvertSchurComplement.htmlMatFactorRestoreSchurComplement.htmlMatFactorSetSchurIS.htmlMatFactorShiftType.htmlMatFactorSolveSchurComplement.htmlMatFactorSolveSchurComplementTranspose.htmlMatFactorType.htmlMatFinalizePackage.htmlMatFindNonzeroRows.htmlMatFindOffBlockDiagonalEntries.htmlMatFindZeroDiagonals.htmlMatFindZeroRows.htmlMatForwardSolve.htmlMatFreeIntermediateDataStructures.htmlMatGalerkin.htmlMatGetBlockSize.htmlMatGetBlockSizes.htmlMatGetBrowsOfAcols.htmlMatGetColumnIJ.htmlMatGetColumnNorms.htmlMatGetColumnVector.htmlMatGetCommunicationStructs.htmlMatGetDiagonal.htmlMatGetDiagonalBlock.htmlMatGetFactor.htmlMatGetFactorAvailable.htmlMatGetFactorType.htmlMatGetGhosts.htmlMatGetInertia.htmlMatGetInfo.htmlMatGetLayouts.htmlMatGetLocalSize.htmlMatGetLocalSubMatrix.htmlMatGetLocalToGlobalMapping.htmlMatGetMultiProcBlock.htmlMatGetNearNullSpace.htmlMatGetNonzeroState.htmlMatGetNullSpace.htmlMatGetOperation.htmlMatGetOption.htmlMatGetOptionsPrefix.htmlMatGetOwnershipIS.htmlMatGetOwnershipRange.htmlMatGetOwnershipRangeColumn.htmlMatGetOwnershipRanges.htmlMatGetOwnershipRangesColumn.htmlMatGetRow.htmlMatGetRowIJ.htmlMatGetRowMax.htmlMatGetRowMaxAbs.htmlMatGetRowMin.htmlMatGetRowMinAbs.htmlMatGetRowSum.htmlMatGetRowUpperTriangular.htmlMatGetSeqNonzeroStructure.htmlMatGetSize.htmlMatGetTrace.htmlMatGetTransposeNullSpace.htmlMatGetType.htmlMatGetValues.htmlMatGetVariableBlockSizes.htmlMatHYPRESetPreallocation.htmlMatHasCongruentLayouts.htmlMatHasOperation.htmlMatHermitianTranspose.htmlMatHermitianTransposeGetMat.htmlMatICCFactor.htmlMatICCFactorSymbolic.htmlMatILUFactor.htmlMatILUFactorSymbolic.htmlMatISFixLocalEmpty.htmlMatISGetLocalMat.htmlMatISGetMPIXAIJ.htmlMatISRestoreLocalMat.htmlMatISSetLocalMat.htmlMatISSetLocalMatType.htmlMatISSetPreallocation.htmlMatISStoreL2L.htmlMatImaginaryPart.htmlMatIncreaseOverlap.htmlMatIncreaseOverlapSplit.htmlMatInfo.htmlMatInfoType.htmlMatInitializePackage.htmlMatInodeGetInodeSizes.htmlMatInterpolate.htmlMatInterpolateAdd.htmlMatInvertBlockDiagonal.htmlMatInvertBlockDiagonalMat.htmlMatInvertVariableBlockDiagonal.htmlMatIsHermitian.htmlMatIsHermitianKnown.htmlMatIsHermitianTranspose.htmlMatIsLinear.htmlMatIsStructurallySymmetric.htmlMatIsSymmetric.htmlMatIsSymmetricKnown.htmlMatIsTranspose.htmlMatLRCGetMats.htmlMatLUFactor.htmlMatLUFactorNumeric.htmlMatLUFactorSymbolic.htmlMatLoad.htmlMatMAIJGetAIJ.htmlMatMAIJRedimension.htmlMatMFFD.htmlMatMFFDCheckPositivity.htmlMatMFFDDSSetUmin.htmlMatMFFDFinalizePackage.htmlMatMFFDGetH.htmlMatMFFDInitializePackage.htmlMatMFFDRegister.htmlMatMFFDRegisterAll.htmlMatMFFDResetHHistory.htmlMatMFFDSetBase.htmlMatMFFDSetCheckh.htmlMatMFFDSetFunction.htmlMatMFFDSetFunctionError.htmlMatMFFDSetFunctioni.htmlMatMFFDSetFunctioniBase.htmlMatMFFDSetHHistory.htmlMatMFFDSetOptionsPrefix.htmlMatMFFDSetPeriod.htmlMatMFFDSetType.htmlMatMFFDType.htmlMatMFFDWPSetComputeNormU.htmlMatMPIAIJGetLocalMat.htmlMatMPIAIJGetLocalMatCondensed.htmlMatMPIAIJSetPreallocation.htmlMatMPIAIJSetPreallocationCSR.htmlMatMPIAIJSetUseScalableIncreaseOverlap.htmlMatMPIAdjCreateNonemptySubcommMat.htmlMatMPIAdjSetPreallocation.htmlMatMPIAdjToSeq.htmlMatMPIBAIJSetHashTableFactor.htmlMatMPIBAIJSetPreallocation.htmlMatMPIBAIJSetPreallocationCSR.htmlMatMPIBAIJSetValuesBlocked.htmlMatMPIDenseSetPreallocation.htmlMatMPISBAIJSetPreallocation.htmlMatMPISBAIJSetPreallocationCSR.htmlMatMPISELLGetLocalMatCondensed.htmlMatMPISELLSetPreallocation.htmlMatMatMatMult.htmlMatMatMult.htmlMatMatMultEqual.htmlMatMatMultNumeric.htmlMatMatMultSymbolic.htmlMatMatSolve.htmlMatMatSolveTranspose.htmlMatMatTransposeMult.htmlMatMatTransposeMultEqual.htmlMatMatTransposeSolve.htmlMatMissingDiagonal.htmlMatMkl_CPardisoSetCntl.htmlMatMkl_PardisoSetCntl.htmlMatMult.htmlMatMultAdd.htmlMatMultAddEqual.htmlMatMultConstrained.htmlMatMultDiagonalBlock.htmlMatMultEqual.htmlMatMultHermitianTranspose.htmlMatMultHermitianTransposeAdd.htmlMatMultTranspose.htmlMatMultTransposeAdd.htmlMatMultTransposeAddEqual.htmlMatMultTransposeConstrained.htmlMatMultTransposeEqual.htmlMatMumpsGetCntl.htmlMatMumpsGetIcntl.htmlMatMumpsGetInfo.htmlMatMumpsGetInfog.htmlMatMumpsGetInverse.htmlMatMumpsGetInverseTranspose.htmlMatMumpsGetRinfo.htmlMatMumpsGetRinfog.htmlMatMumpsSetCntl.htmlMatMumpsSetIcntl.htmlMatNestGetISs.htmlMatNestGetLocalISs.htmlMatNestGetSize.htmlMatNestGetSubMat.htmlMatNestGetSubMats.htmlMatNestSetSubMat.htmlMatNestSetSubMats.htmlMatNestSetVecType.htmlMatNorm.htmlMatNullSpace.htmlMatNullSpaceCreate.htmlMatNullSpaceCreateRigidBody.htmlMatNullSpaceDestroy.htmlMatNullSpaceGetVecs.htmlMatNullSpaceRemove.htmlMatNullSpaceSetFunction.htmlMatNullSpaceTest.htmlMatNullSpaceView.htmlMatOption.htmlMatOrderingType.htmlMatPartitioning.htmlMatPartitioningType.htmlMatPermute.htmlMatPreallocateFinalize.htmlMatPreallocateInitialize.htmlMatPreallocateLocation.htmlMatPreallocateSet.htmlMatPreallocateSetLocal.htmlMatPreallocateSetLocalBlock.htmlMatPreallocateSetLocalRemoveDups.htmlMatPreallocateSymmetricSetBlock.htmlMatPreallocateSymmetricSetLocalBlock.htmlMatPreallocatorPreallocate.htmlMatPtAP.htmlMatPtAPNumeric.htmlMatPtAPSymbolic.htmlMatPythonCreate.htmlMatPythonSetType.htmlMatRARt.htmlMatRARtNumeric.htmlMatRARtSymbolic.htmlMatRealPart.htmlMatRegister.htmlMatRegisterAll.htmlMatRegisterRootName.htmlMatReorderForNonzeroDiagonal.htmlMatResetPreallocation.htmlMatResidual.htmlMatRestoreColumnIJ.htmlMatRestoreLocalSubMatrix.htmlMatRestoreRow.htmlMatRestoreRowIJ.htmlMatRestoreRowUpperTriangular.htmlMatRestrict.htmlMatRetrieveValues.htmlMatReuse.htmlMatSOR.htmlMatSORType.htmlMatSTRUMPACKReordering.htmlMatSTRUMPACKSetColPerm.htmlMatSTRUMPACKSetHSSAbsTol.htmlMatSTRUMPACKSetHSSLeafSize.htmlMatSTRUMPACKSetHSSMaxRank.htmlMatSTRUMPACKSetHSSMinSepSize.htmlMatSTRUMPACKSetHSSRelTol.htmlMatSTRUMPACKSetReordering.htmlMatScale.htmlMatScatterGetVecScatter.htmlMatScatterSetVecScatter.htmlMatSeqAIJGetArray.htmlMatSeqAIJGetArrayF90.htmlMatSeqAIJGetMaxRowNonzeros.htmlMatSeqAIJRegister.htmlMatSeqAIJRegisterAll.htmlMatSeqAIJRestoreArray.htmlMatSeqAIJRestoreArrayF90.htmlMatSeqAIJSetColumnIndices.htmlMatSeqAIJSetPreallocation.htmlMatSeqAIJSetPreallocationCSR.htmlMatSeqAIJSetType.htmlMatSeqBAIJSetColumnIndices.htmlMatSeqBAIJSetPreallocation.htmlMatSeqBAIJSetPreallocationCSR.htmlMatSeqDenseSetLDA.htmlMatSeqDenseSetPreallocation.htmlMatSeqSBAIJGetArray.htmlMatSeqSBAIJRestoreArray.htmlMatSeqSBAIJSetColumnIndices.htmlMatSeqSBAIJSetPreallocation.htmlMatSeqSBAIJSetPreallocationCSR.htmlMatSeqSELLRestoreArray.htmlMatSeqSELLSetPreallocation.htmlMatSetBlockSize.htmlMatSetBlockSizes.htmlMatSetBlockSizesFromMats.htmlMatSetErrorIfFailure.htmlMatSetFactorType.htmlMatSetFromOptions.htmlMatSetLocalToGlobalMapping.htmlMatSetNearNullSpace.htmlMatSetNullSpace.htmlMatSetOperation.htmlMatSetOption.htmlMatSetOptionsPrefix.htmlMatSetRandom.htmlMatSetSizes.htmlMatSetStencil.htmlMatSetTransposeNullSpace.htmlMatSetType.htmlMatSetUnfactored.htmlMatSetUp.htmlMatSetValue.htmlMatSetValues.htmlMatSetValuesBatch.htmlMatSetValuesBlocked.htmlMatSetValuesBlockedLocal.htmlMatSetValuesBlockedStencil.htmlMatSetValuesLocal.htmlMatSetValuesRow.htmlMatSetValuesRowLocal.htmlMatSetValuesStencil.htmlMatSetVariableBlockSizes.htmlMatShellGetContext.htmlMatShellGetOperation.htmlMatShellSetContext.htmlMatShellSetManageScalingShifts.htmlMatShellSetOperation.htmlMatShellTestMult.htmlMatShellTestMultTranpose.htmlMatShift.htmlMatSolve.htmlMatSolveAdd.htmlMatSolvePackageGet.htmlMatSolvePackageRegister.htmlMatSolveTranspose.htmlMatSolveTransposeAdd.htmlMatSolverType.htmlMatSolves.htmlMatStashGetInfo.htmlMatStashSetInitialSize.htmlMatStencil.htmlMatStoreValues.htmlMatStructure.htmlMatSubMatrixVirtualUpdate.htmlMatSubdomainsCreateCoalesce.htmlMatSuperluSetILUDropTol.htmlMatTransColoringApplyDenToSp.htmlMatTransColoringApplySpToDen.htmlMatTranspose.htmlMatTransposeColoring.htmlMatTransposeColoringCreate.htmlMatTransposeColoringDestroy.htmlMatTransposeGetMat.htmlMatTransposeMatMult.htmlMatTransposeMatMultEqual.htmlMatType.htmlMatView.htmlMatXAIJSetPreallocation.htmlMatZeroEntries.htmlMatZeroRows.htmlMatZeroRowsColumns.htmlMatZeroRowsColumnsIS.htmlMatZeroRowsColumnsLocal.htmlMatZeroRowsColumnsLocalIS.htmlMatZeroRowsColumnsStencil.htmlMatZeroRowsIS.htmlMatZeroRowsLocal.htmlMatZeroRowsLocalIS.htmlMatZeroRowsStencil.htmlPetscElementalFinalizePackage.htmlPetscElementalInitializePackage.htmlVecScatterFFTWToPetsc.htmlVecScatterPetscToFFTW.htmlindex.htmlMatFDMatFDColoringApply.htmlMatFDColoringCreate.htmlMatFDColoringDestroy.htmlMatFDColoringGetFunction.htmlMatFDColoringGetPerturbedColumns.htmlMatFDColoringSetBlockSize.htmlMatFDColoringSetFromOptions.htmlMatFDColoringSetFunction.htmlMatFDColoringSetParameters.htmlMatFDColoringSetType.htmlMatFDColoringSetUp.htmlMatFDColoringView.htmlindex.htmlMatOrderingsMATCOARSENHEM.htmlMATCOARSENMIS.htmlMATCOLORINGGREEDY.htmlMATCOLORINGID.htmlMATCOLORINGJP.htmlMATCOLORINGLF.htmlMATCOLORINGPOWER.htmlMATCOLORINGSL.htmlMATPARTITIONINGCHACO.htmlMATPARTITIONINGHIERARCH.htmlMATPARTITIONINGPARMETIS.htmlMATPARTITIONINGPARTY.htmlMATPARTITIONINGPTSCOTCH.htmlMatCoarsenApply.htmlMatCoarsenCreate.htmlMatCoarsenDestroy.htmlMatCoarsenGetData.htmlMatCoarsenGetType.htmlMatCoarsenRegister.htmlMatCoarsenRegisterAll.htmlMatCoarsenSetAdjacency.htmlMatCoarsenSetFromOptions.htmlMatCoarsenSetGreedyOrdering.htmlMatCoarsenSetStrictAggs.htmlMatCoarsenSetType.htmlMatCoarsenView.htmlMatColoringApply.htmlMatColoringCreate.htmlMatColoringDestroy.htmlMatColoringGetDistance.htmlMatColoringGetMaxColors.htmlMatColoringRegister.htmlMatColoringRegisterAll.htmlMatColoringSetDistance.htmlMatColoringSetFromOptions.htmlMatColoringSetMaxColors.htmlMatColoringSetType.htmlMatColoringSetWeightType.htmlMatColoringView.htmlMatCreateLaplacian.htmlMatGetOrdering.htmlMatMeshToCellGraph.htmlMatMeshToVertexGraph.htmlMatOrderingRegister.htmlMatOrderingRegisterAll.htmlMatPartitioningApply.htmlMatPartitioningApplyND.htmlMatPartitioningChacoGetEigenNumber.htmlMatPartitioningChacoGetEigenSolver.htmlMatPartitioningChacoGetEigenTol.htmlMatPartitioningChacoGetGlobal.htmlMatPartitioningChacoGetLocal.htmlMatPartitioningChacoSetCoarseLevel.htmlMatPartitioningChacoSetEigenNumber.htmlMatPartitioningChacoSetEigenSolver.htmlMatPartitioningChacoSetEigenTol.htmlMatPartitioningChacoSetGlobal.htmlMatPartitioningChacoSetLocal.htmlMatPartitioningCreate.htmlMatPartitioningDestroy.htmlMatPartitioningGetType.htmlMatPartitioningImprove.htmlMatPartitioningPTScotchGetImbalance.htmlMatPartitioningPTScotchGetStrategy.htmlMatPartitioningPTScotchSetImbalance.htmlMatPartitioningPTScotchSetStrategy.htmlMatPartitioningParmetisGetEdgeCut.htmlMatPartitioningParmetisSetCoarseSequential.htmlMatPartitioningParmetisSetRepartition.htmlMatPartitioningPartySetBipart.htmlMatPartitioningPartySetCoarseLevel.htmlMatPartitioningPartySetGlobal.htmlMatPartitioningPartySetLocal.htmlMatPartitioningPartySetMatchOptimization.htmlMatPartitioningRegister.htmlMatPartitioningRegisterAll.htmlMatPartitioningSetAdjacency.htmlMatPartitioningSetFromOptions.htmlMatPartitioningSetNParts.htmlMatPartitioningSetPartitionWeights.htmlMatPartitioningSetType.htmlMatPartitioningSetVertexWeights.htmlMatPartitioningView.htmlMatPartitioningViewImbalance.htmlindex.htmlPCPC.htmlPCASM.htmlPCASMCreateSubdomains.htmlPCASMCreateSubdomains2D.htmlPCASMDestroySubdomains.htmlPCASMGetDMSubdomains.htmlPCASMGetLocalSubdomains.htmlPCASMGetLocalSubmatrices.htmlPCASMGetLocalType.htmlPCASMGetSubKSP.htmlPCASMGetSubMatType.htmlPCASMGetType.htmlPCASMSetDMSubdomains.htmlPCASMSetLocalSubdomains.htmlPCASMSetLocalType.htmlPCASMSetOverlap.htmlPCASMSetSortIndices.htmlPCASMSetSubMatType.htmlPCASMSetTotalSubdomains.htmlPCASMSetType.htmlPCASMType.htmlPCAppendOptionsPrefix.htmlPCApply.htmlPCApplyBAorAB.htmlPCApplyBAorABTranspose.htmlPCApplyRichardson.htmlPCApplyRichardsonExists.htmlPCApplySymmetricLeft.htmlPCApplySymmetricRight.htmlPCApplyTranspose.htmlPCApplyTransposeExists.htmlPCBDDC.htmlPCBDDCCreateFETIDPOperators.htmlPCBDDCFinalizePackage.htmlPCBDDCGetDirichletBoundaries.htmlPCBDDCGetDirichletBoundariesLocal.htmlPCBDDCGetNeumannBoundaries.htmlPCBDDCGetNeumannBoundariesLocal.htmlPCBDDCGetPrimalVerticesIS.htmlPCBDDCGetPrimalVerticesLocalIS.htmlPCBDDCInitializePackage.htmlPCBDDCMatFETIDPGetRHS.htmlPCBDDCMatFETIDPGetSolution.htmlPCBDDCSetChangeOfBasisMat.htmlPCBDDCSetCoarseningRatio.htmlPCBDDCSetDirichletBoundaries.htmlPCBDDCSetDirichletBoundariesLocal.htmlPCBDDCSetDiscreteGradient.htmlPCBDDCSetDivergenceMat.htmlPCBDDCSetDofsSplitting.htmlPCBDDCSetDofsSplittingLocal.htmlPCBDDCSetLevels.htmlPCBDDCSetLocalAdjacencyGraph.htmlPCBDDCSetNeumannBoundaries.htmlPCBDDCSetNeumannBoundariesLocal.htmlPCBDDCSetPrimalVerticesIS.htmlPCBDDCSetPrimalVerticesLocalIS.htmlPCBJACOBI.htmlPCBJacobiGetLocalBlocks.htmlPCBJacobiGetSubKSP.htmlPCBJacobiGetTotalBlocks.htmlPCBJacobiSetLocalBlocks.htmlPCBJacobiSetTotalBlocks.htmlPCCHOLESKY.htmlPCCHOWILUViennaCL.htmlPCCOMPOSITE.htmlPCCP.htmlPCCompositeAddPC.htmlPCCompositeGetNumberPC.htmlPCCompositeGetPC.htmlPCCompositeGetType.htmlPCCompositeSetType.htmlPCCompositeSpecialSetAlpha.htmlPCCompositeType.htmlPCComputeExplicitOperator.htmlPCCreate.htmlPCDestroy.htmlPCDiagonalScaleLeft.htmlPCDiagonalScaleRight.htmlPCEISENSTAT.htmlPCEXOTIC.htmlPCEisenstatGetNoDiagonalScaling.htmlPCEisenstatGetOmega.htmlPCEisenstatSetNoDiagonalScaling.htmlPCEisenstatSetOmega.htmlPCExoticSetType.htmlPCExoticType.htmlPCFIELDSPLIT.htmlPCFactorGetAllowDiagonalFill.htmlPCFactorGetLevels.htmlPCFactorGetMatSolverType.htmlPCFactorGetMatrix.htmlPCFactorGetShiftAmount.htmlPCFactorGetShiftType.htmlPCFactorGetUseInPlace.htmlPCFactorGetZeroPivot.htmlPCFactorReorderForNonzeroDiagonal.htmlPCFactorSetAllowDiagonalFill.htmlPCFactorSetColumnPivot.htmlPCFactorSetFill.htmlPCFactorSetLevels.htmlPCFactorSetMatOrderingType.htmlPCFactorSetMatSolverType.htmlPCFactorSetPivotInBlocks.htmlPCFactorSetReuseFill.htmlPCFactorSetReuseOrdering.htmlPCFactorSetShiftAmount.htmlPCFactorSetShiftType.htmlPCFactorSetUpMatSolverType.htmlPCFactorSetUseInPlace.htmlPCFactorSetZeroPivot.htmlPCFailedReason.htmlPCFieldSplitGetDMSplits.htmlPCFieldSplitGetDetectSaddlePoint.htmlPCFieldSplitGetDiagUseAmat.htmlPCFieldSplitGetIS.htmlPCFieldSplitGetOffDiagUseAmat.htmlPCFieldSplitGetSchurBlocks.htmlPCFieldSplitGetSchurPre.htmlPCFieldSplitGetSubKSP.htmlPCFieldSplitGetType.htmlPCFieldSplitRestrictIS.htmlPCFieldSplitSchurFactType.htmlPCFieldSplitSchurGetS.htmlPCFieldSplitSchurGetSubKSP.htmlPCFieldSplitSchurPreType.htmlPCFieldSplitSchurRestoreS.htmlPCFieldSplitSetBlockSize.htmlPCFieldSplitSetDMSplits.htmlPCFieldSplitSetDetectSaddlePoint.htmlPCFieldSplitSetDiagUseAmat.htmlPCFieldSplitSetFields.htmlPCFieldSplitSetGKBDelay.htmlPCFieldSplitSetGKBMaxit.htmlPCFieldSplitSetGKBNu.htmlPCFieldSplitSetGKBTol.htmlPCFieldSplitSetIS.htmlPCFieldSplitSetOffDiagUseAmat.htmlPCFieldSplitSetSchurFactType.htmlPCFieldSplitSetSchurPre.htmlPCFieldSplitSetSchurScale.htmlPCFieldSplitSetType.htmlPCGALERKIN.htmlPCGAMG.htmlPCGAMGASMSetUseAggs.htmlPCGAMGClassicalGetType.htmlPCGAMGClassicalSetType.htmlPCGAMGFilterGraph.htmlPCGAMGFinalizePackage.htmlPCGAMGGetType.htmlPCGAMGInitializePackage.htmlPCGAMGRegister.htmlPCGAMGSetCoarseEqLim.htmlPCGAMGSetNSmooths.htmlPCGAMGSetNlevels.htmlPCGAMGSetProcEqLim.htmlPCGAMGSetRepartition.htmlPCGAMGSetReuseInterpolation.htmlPCGAMGSetSquareGraph.htmlPCGAMGSetSymGraph.htmlPCGAMGSetThreshold.htmlPCGAMGSetThresholdScale.htmlPCGAMGSetType.htmlPCGAMGSetUseParallelCoarseGridSolve.htmlPCGAMGType.htmlPCGASM.htmlPCGASMCreateSubdomains.htmlPCGASMCreateSubdomains2D.htmlPCGASMDestroySubdomains.htmlPCGASMGetSubKSP.htmlPCGASMGetSubdomains.htmlPCGASMGetSubmatrices.htmlPCGASMGetUseDMSubdomains.htmlPCGASMSetOverlap.htmlPCGASMSetSortIndices.htmlPCGASMSetSubdomains.htmlPCGASMSetTotalSubdomains.htmlPCGASMSetType.htmlPCGASMSetUseDMSubdomains.htmlPCGASMType.htmlPCGalerkinGetKSP.htmlPCGalerkinSetComputeSubmatrix.htmlPCGalerkinSetInterpolation.htmlPCGalerkinSetRestriction.htmlPCGetApplicationContext.htmlPCGetDM.htmlPCGetDiagonalScale.htmlPCGetFailedReason.htmlPCGetOperators.htmlPCGetOperatorsSet.htmlPCGetOptionsPrefix.htmlPCGetReusePreconditioner.htmlPCGetType.htmlPCGetUseAmat.htmlPCHYPRE.htmlPCHYPREGetType.htmlPCHYPRESetAlphaPoissonMatrix.htmlPCHYPRESetBetaPoissonMatrix.htmlPCHYPRESetDiscreteCurl.htmlPCHYPRESetDiscreteGradient.htmlPCHYPRESetEdgeConstantVectors.htmlPCHYPRESetInterpolations.htmlPCHYPRESetType.htmlPCICC.htmlPCILU.htmlPCISSetSubdomainDiagonalScaling.htmlPCISSetSubdomainScalingFactor.htmlPCISSetUseStiffnessScaling.htmlPCJACOBI.htmlPCJacobiGetType.htmlPCJacobiGetUseAbs.htmlPCJacobiSetType.htmlPCJacobiSetUseAbs.htmlPCJacobiType.htmlPCKSP.htmlPCKSPGetKSP.htmlPCKSPSetKSP.htmlPCKaczmarz.htmlPCLMVM.htmlPCLMVMClearIS.htmlPCLMVMGetMatLMVM.htmlPCLMVMSetIS.htmlPCLMVMSetMatLMVM.htmlPCLSC.htmlPCLU.htmlPCLoad.htmlPCMAT.htmlPCMG.htmlPCMGCycleType.htmlPCMGGetCoarseSolve.htmlPCMGGetGalerkin.htmlPCMGGetInjection.htmlPCMGGetInterpolation.htmlPCMGGetLevels.htmlPCMGGetRScale.htmlPCMGGetRestriction.htmlPCMGGetSmoother.htmlPCMGGetSmootherDown.htmlPCMGGetSmootherUp.htmlPCMGGetType.htmlPCMGMultiplicativeSetCycles.htmlPCMGResidualDefault.htmlPCMGSetCycleType.htmlPCMGSetCycleTypeOnLevel.htmlPCMGSetDistinctSmoothUp.htmlPCMGSetGalerkin.htmlPCMGSetInjection.htmlPCMGSetInterpolation.htmlPCMGSetLevels.htmlPCMGSetNumberSmooth.htmlPCMGSetR.htmlPCMGSetRScale.htmlPCMGSetResidual.htmlPCMGSetRestriction.htmlPCMGSetRhs.htmlPCMGSetType.htmlPCMGSetX.htmlPCMGType.htmlPCMGalerkinType.htmlPCML.htmlPCModifySubMatrices.htmlPCNN.htmlPCNONE.htmlPCPARMS.htmlPCPARMSGlobalType.htmlPCPARMSLocalType.htmlPCPARMSSetFill.htmlPCPARMSSetGlobal.htmlPCPARMSSetLocal.htmlPCPARMSSetNonsymPerm.htmlPCPARMSSetSolveRestart.htmlPCPARMSSetSolveTolerances.htmlPCPATCH.htmlPCPBJACOBI.htmlPCPFMG.htmlPCPatchConstructType.htmlPCPatchSetComputeFunction.htmlPCPatchSetComputeFunctionInteriorFacets.htmlPCPatchSetComputeOperator.htmlPCPatchSetComputeOperatorInteriorFacets.htmlPCPostSolve.htmlPCPreSolve.htmlPCPythonSetType.htmlPCREDISTRIBUTE.htmlPCREDUNDANT.htmlPCRedistributeGetKSP.htmlPCRedundantGetKSP.htmlPCRedundantGetOperators.htmlPCRedundantSetNumber.htmlPCRedundantSetScatter.htmlPCRegister.htmlPCRegisterAll.htmlPCReset.htmlPCRichardsonConvergedReason.htmlPCRowScalingViennaCL.htmlPCSAViennaCL.htmlPCSHELL.htmlPCSOR.htmlPCSORGetIterations.htmlPCSORGetOmega.htmlPCSORGetSymmetric.htmlPCSORSetIterations.htmlPCSORSetOmega.htmlPCSORSetSymmetric.htmlPCSPAI.htmlPCSPAISetBlockSize.htmlPCSPAISetCacheSize.htmlPCSPAISetEpsilon.htmlPCSPAISetMax.htmlPCSPAISetMaxNew.htmlPCSPAISetNBSteps.htmlPCSPAISetSp.htmlPCSPAISetVerbose.htmlPCSVD.htmlPCSetApplicationContext.htmlPCSetCoordinates.htmlPCSetDM.htmlPCSetDiagonalScale.htmlPCSetErrorIfFailure.htmlPCSetFromOptions.htmlPCSetModifySubMatrices.htmlPCSetOperators.htmlPCSetOptionsPrefix.htmlPCSetReusePreconditioner.htmlPCSetType.htmlPCSetUp.htmlPCSetUpOnBlocks.htmlPCSetUseAmat.htmlPCShellGetContext.htmlPCShellGetName.htmlPCShellSetApply.htmlPCShellSetApplyBA.htmlPCShellSetApplyRichardson.htmlPCShellSetApplySymmetricLeft.htmlPCShellSetApplySymmetricRight.htmlPCShellSetApplyTranspose.htmlPCShellSetContext.htmlPCShellSetDestroy.htmlPCShellSetName.htmlPCShellSetPostSolve.htmlPCShellSetPreSolve.htmlPCShellSetSetUp.htmlPCShellSetView.htmlPCSide.htmlPCSysPFMG.htmlPCTELESCOPE.htmlPCTFS.htmlPCTelescopeGetDM.htmlPCTelescopeGetIgnoreDM.htmlPCTelescopeGetIgnoreKSPComputeOperators.htmlPCTelescopeGetKSP.htmlPCTelescopeGetReductionFactor.htmlPCTelescopeGetSubcommType.htmlPCTelescopeGetUseCoarseDM.htmlPCTelescopeSetIgnoreDM.htmlPCTelescopeSetIgnoreKSPComputeOperators.htmlPCTelescopeSetReductionFactor.htmlPCTelescopeSetSubcommType.htmlPCTelescopeSetUseCoarseDM.htmlPCType.htmlPCVPBJACOBI.htmlPCView.htmlindex.htmlPFPF.htmlPFApply.htmlPFApplyVec.htmlPFCreate.htmlPFDestroy.htmlPFFinalizePackage.htmlPFGetType.htmlPFInitializePackage.htmlPFRegister.htmlPFRegisterAll.htmlPFSet.htmlPFSetFromOptions.htmlPFSetType.htmlPFType.htmlPFView.htmlindex.htmlPetscSFPetscSF.htmlPetscSFBcastAndOpBegin.htmlPetscSFBcastAndOpEnd.htmlPetscSFBcastBegin.htmlPetscSFBcastEnd.htmlPetscSFCompose.htmlPetscSFComputeDegreeBegin.htmlPetscSFComputeDegreeEnd.htmlPetscSFComputeMultiRootOriginalNumbering.htmlPetscSFCreate.htmlPetscSFCreateEmbeddedLeafSF.htmlPetscSFCreateEmbeddedSF.htmlPetscSFCreateInverseSF.htmlPetscSFDestroy.htmlPetscSFDuplicate.htmlPetscSFDuplicateOption.htmlPetscSFFetchAndOpBegin.htmlPetscSFFetchAndOpEnd.htmlPetscSFFinalizePackage.htmlPetscSFFindWindow.htmlPetscSFGatherBegin.htmlPetscSFGatherEnd.htmlPetscSFGetGraph.htmlPetscSFGetGroups.htmlPetscSFGetLeafRange.htmlPetscSFGetLeafRanks.htmlPetscSFGetMultiSF.htmlPetscSFGetRanks.htmlPetscSFGetType.htmlPetscSFGetWindow.htmlPetscSFInitializePackage.htmlPetscSFNode.htmlPetscSFReduceBegin.htmlPetscSFReduceEnd.htmlPetscSFRegister.htmlPetscSFRegisterAll.htmlPetscSFReset.htmlPetscSFRestoreWindow.htmlPetscSFScatterBegin.htmlPetscSFScatterEnd.htmlPetscSFSetFromOptions.htmlPetscSFSetGraph.htmlPetscSFSetRankOrder.htmlPetscSFSetType.htmlPetscSFSetUp.htmlPetscSFSetUpRanks.htmlPetscSFType.htmlPetscSFView.htmlPetscSFWindowGetDataTypes.htmlPetscSFWindowGetSyncType.htmlPetscSFWindowSetSyncType.htmlPetscSFWindowSyncType.htmlindex.htmlProfilingPetscClassIdRegister.htmlPetscClassPerfInfoClear.htmlPetscClassPerfLogCreate.htmlPetscClassPerfLogDestroy.htmlPetscClassPerfLogEnsureSize.htmlPetscClassRegInfoDestroy.htmlPetscClassRegLogCreate.htmlPetscClassRegLogDestroy.htmlPetscClassRegLogGetClass.htmlPetscClassRegLogRegister.htmlPetscEventPerfInfoClear.htmlPetscEventPerfInfoCopy.htmlPetscEventPerfLogActivate.htmlPetscEventPerfLogActivateClass.htmlPetscEventPerfLogCreate.htmlPetscEventPerfLogDeactivate.htmlPetscEventPerfLogDeactivateClass.htmlPetscEventPerfLogDestroy.htmlPetscEventPerfLogEnsureSize.htmlPetscEventPerfLogGetVisible.htmlPetscEventPerfLogSetVisible.htmlPetscEventRegLogCreate.htmlPetscEventRegLogDestroy.htmlPetscEventRegLogGetEvent.htmlPetscEventRegLogRegister.htmlPetscGetFlops.htmlPetscInfo.htmlPetscInfoActivateClass.htmlPetscInfoAllow.htmlPetscInfoDeactivateClass.htmlPetscIntStackCreate.htmlPetscIntStackDestroy.htmlPetscIntStackEmpty.htmlPetscIntStackPop.htmlPetscIntStackPush.htmlPetscIntStackTop.htmlPetscLogActions.htmlPetscLogAllBegin.htmlPetscLogDefaultBegin.htmlPetscLogDump.htmlPetscLogEvent.htmlPetscLogEventActivate.htmlPetscLogEventActivateClass.htmlPetscLogEventBegin.htmlPetscLogEventDeactivate.htmlPetscLogEventDeactivateClass.htmlPetscLogEventEnd.htmlPetscLogEventExcludeClass.htmlPetscLogEventGetId.htmlPetscLogEventGetPerfInfo.htmlPetscLogEventIncludeClass.htmlPetscLogEventRegister.htmlPetscLogEventSetActiveAll.htmlPetscLogEventSetCollective.htmlPetscLogEventSetDof.htmlPetscLogEventSetError.htmlPetscLogEventSync.htmlPetscLogFlops.htmlPetscLogGetStageLog.htmlPetscLogMPEBegin.htmlPetscLogMPEDump.htmlPetscLogMPEGetRGBColor.htmlPetscLogNestedBegin.htmlPetscLogObjectMemory.htmlPetscLogObjects.htmlPetscLogSet.htmlPetscLogSetThreshold.htmlPetscLogStage.htmlPetscLogStageGetActive.htmlPetscLogStageGetId.htmlPetscLogStageGetVisible.htmlPetscLogStagePop.htmlPetscLogStagePush.htmlPetscLogStageRegister.htmlPetscLogStageSetActive.htmlPetscLogStageSetVisible.htmlPetscLogTraceBegin.htmlPetscLogView.htmlPetscLogViewFromOptions.htmlPetscPreLoadBegin.htmlPetscPreLoadEnd.htmlPetscPreLoadStage.htmlPetscStageInfoDestroy.htmlPetscStageLogCreate.htmlPetscStageLogDestroy.htmlPetscStageLogGetActive.htmlPetscStageLogGetClassPerfLog.htmlPetscStageLogGetClassRegLog.htmlPetscStageLogGetCurrent.htmlPetscStageLogGetEventPerfLog.htmlPetscStageLogGetEventRegLog.htmlPetscStageLogGetStage.htmlPetscStageLogGetVisible.htmlPetscStageLogPop.htmlPetscStageLogPush.htmlPetscStageLogRegister.htmlPetscStageLogSetActive.htmlPetscStageLogSetVisible.htmlindex.htmlSNESDMAdaptorAdapt.htmlDMAdaptorCreate.htmlDMAdaptorDestroy.htmlDMAdaptorGetSequenceLength.htmlDMAdaptorGetSolver.htmlDMAdaptorSetFromOptions.htmlDMAdaptorSetSequenceLength.htmlDMAdaptorSetSolver.htmlDMAdaptorSetUp.htmlDMAdaptorView.htmlDMCopyDMSNES.htmlDMDASNESSetFunctionLocal.htmlDMDASNESSetJacobianLocal.htmlDMDASNESSetObjectiveLocal.htmlDMDASNESSetPicardLocal.htmlDMGetDMSNES.htmlDMGetDMSNESWrite.htmlDMInterpolationAddPoints.htmlDMInterpolationCreate.htmlDMInterpolationDestroy.htmlDMInterpolationEvaluate.htmlDMInterpolationGetCoordinates.htmlDMInterpolationGetDim.htmlDMInterpolationGetDof.htmlDMInterpolationGetVector.htmlDMInterpolationRestoreVector.htmlDMInterpolationSetDim.htmlDMInterpolationSetDof.htmlDMInterpolationSetUp.htmlDMPlexComputeJacobianAction.htmlDMPlexSNESComputeBoundaryFEM.htmlDMPlexSNESComputeJacobianFEM.htmlDMPlexSNESComputeResidualFEM.htmlDMPlexSNESGetGeometryFVM.htmlDMPlexSNESGetGradientDM.htmlDMPlexSetSNESLocalFEM.htmlDMSNESCheckFromOptions.htmlDMSNESCopy.htmlDMSNESGetFunction.htmlDMSNESGetJacobian.htmlDMSNESGetNGS.htmlDMSNESGetObjective.htmlDMSNESGetPicard.htmlDMSNESSetBoundaryLocal.htmlDMSNESSetFunction.htmlDMSNESSetFunctionLocal.htmlDMSNESSetJacobian.htmlDMSNESSetJacobianLocal.htmlDMSNESSetNGS.htmlDMSNESSetObjective.htmlDMSNESSetPicard.htmlKSPMonitorSNES.htmlKSPMonitorSNESLGResidualNormCreate.htmlKSPMonitorSNESLGResidualNormDestroy.htmlMatCreateSNESMF.htmlMatMFFDComputeJacobian.htmlMatSNESMFGetReuseBase.htmlMatSNESMFGetSNES.htmlMatSNESMFSetReuseBase.htmlPetscConvEstCreate.htmlPetscConvEstDestroy.htmlPetscConvEstGetConvRate.htmlPetscConvEstGetSolver.htmlPetscConvEstRateView.htmlPetscConvEstSetFromOptions.htmlPetscConvEstSetSolver.htmlPetscConvEstSetUp.htmlPetscConvEstView.htmlSNES.htmlSNESANDERSON.htmlSNESASPIN.htmlSNESAddOptionsChecker.htmlSNESAppendOptionsPrefix.htmlSNESApplyNPC.htmlSNESCOMPOSITE.htmlSNESCompositeAddSNES.htmlSNESCompositeGetNumber.htmlSNESCompositeGetSNES.htmlSNESCompositeSetDamping.htmlSNESCompositeSetType.htmlSNESComputeFunction.htmlSNESComputeJacobian.htmlSNESComputeJacobianDefault.htmlSNESComputeJacobianDefaultColor.htmlSNESComputeNGS.htmlSNESComputeObjective.htmlSNESConvergedDefault.htmlSNESConvergedReason.htmlSNESConvergedSkip.htmlSNESConvergenceTestFunction.htmlSNESCreate.htmlSNESDefaultMatrixFreeSetParameters2.htmlSNESDestroy.htmlSNESFASType.htmlSNESFinalizePackage.htmlSNESFunction.htmlSNESFunctionType.htmlSNESGetAlwaysComputesFinalResidual.htmlSNESGetApplicationContext.htmlSNESGetCheckJacobianDomainError.htmlSNESGetConvergedReason.htmlSNESGetConvergenceHistory.htmlSNESGetDM.htmlSNESGetDivergenceTolerance.htmlSNESGetErrorIfNotConverged.htmlSNESGetForceIteration.htmlSNESGetFunction.htmlSNESGetFunctionDomainError.htmlSNESGetFunctionNorm.htmlSNESGetFunctionType.htmlSNESGetGridSequence.htmlSNESGetIterationNumber.htmlSNESGetJacobian.htmlSNESGetJacobianDomainError.htmlSNESGetKSP.htmlSNESGetLagJacobian.htmlSNESGetLagPreconditioner.htmlSNESGetLineSearch.htmlSNESGetLinearSolveFailures.htmlSNESGetLinearSolveIterations.htmlSNESGetMaxLinearSolveFailures.htmlSNESGetMaxNonlinearStepFailures.htmlSNESGetNGS.htmlSNESGetNPC.htmlSNESGetNPCFunction.htmlSNESGetNPCSide.htmlSNESGetNonlinearStepFailures.htmlSNESGetNormSchedule.htmlSNESGetNumberFunctionEvals.htmlSNESGetObjective.htmlSNESGetOptionsPrefix.htmlSNESGetPicard.htmlSNESGetRhs.htmlSNESGetSolution.htmlSNESGetSolutionNorm.htmlSNESGetSolutionUpdate.htmlSNESGetTolerances.htmlSNESGetType.htmlSNESGetUpdateNorm.htmlSNESGetUseMatrixFree.htmlSNESHasNPC.htmlSNESInitializePackage.htmlSNESJacobianFunction.htmlSNESKSPGetParametersEW.htmlSNESKSPGetUseEW.htmlSNESKSPONLY.htmlSNESKSPSetParametersEW.htmlSNESKSPSetUseEW.htmlSNESKSPTRANSPOSEONLY.htmlSNESLINESEARCHBASIC.htmlSNESLINESEARCHBT.htmlSNESLINESEARCHCP.htmlSNESLINESEARCHL2.htmlSNESLINESEARCHNLEQERR.htmlSNESLINESEARCHSHELL.htmlSNESLineSearch.htmlSNESLineSearchAppendOptionsPrefix.htmlSNESLineSearchApply.htmlSNESLineSearchBTGetAlpha.htmlSNESLineSearchBTSetAlpha.htmlSNESLineSearchComputeNorms.htmlSNESLineSearchCreate.htmlSNESLineSearchDestroy.htmlSNESLineSearchGetDamping.htmlSNESLineSearchGetDefaultMonitor.htmlSNESLineSearchGetLambda.htmlSNESLineSearchGetNorms.htmlSNESLineSearchGetOptionsPrefix.htmlSNESLineSearchGetOrder.htmlSNESLineSearchGetPostCheck.htmlSNESLineSearchGetPreCheck.htmlSNESLineSearchGetReason.htmlSNESLineSearchGetSNES.htmlSNESLineSearchGetTolerances.htmlSNESLineSearchGetVIFunctions.htmlSNESLineSearchGetVecs.htmlSNESLineSearchMonitor.htmlSNESLineSearchMonitorCancel.htmlSNESLineSearchMonitorSet.htmlSNESLineSearchMonitorSetFromOptions.htmlSNESLineSearchMonitorSolutionUpdate.htmlSNESLineSearchPostCheck.htmlSNESLineSearchPreCheck.htmlSNESLineSearchPreCheckPicard.htmlSNESLineSearchReason.htmlSNESLineSearchRegister.htmlSNESLineSearchRegisterAll.htmlSNESLineSearchReset.htmlSNESLineSearchSetComputeNorms.htmlSNESLineSearchSetDamping.htmlSNESLineSearchSetDefaultMonitor.htmlSNESLineSearchSetFromOptions.htmlSNESLineSearchSetFunction.htmlSNESLineSearchSetLambda.htmlSNESLineSearchSetNorms.htmlSNESLineSearchSetOrder.htmlSNESLineSearchSetPostCheck.htmlSNESLineSearchSetPreCheck.htmlSNESLineSearchSetReason.htmlSNESLineSearchSetSNES.htmlSNESLineSearchSetTolerances.htmlSNESLineSearchSetType.htmlSNESLineSearchSetUp.htmlSNESLineSearchSetVIFunctions.htmlSNESLineSearchSetVecs.htmlSNESLineSearchSetWorkVecs.htmlSNESLineSearchShellGetUserFunc.htmlSNESLineSearchShellSetUserFunc.htmlSNESLineSearchType.htmlSNESLineSearchView.htmlSNESLoad.htmlSNESMS.htmlSNESMSFinalizePackage.htmlSNESMSInitializePackage.htmlSNESMSRegister.htmlSNESMSRegisterAll.htmlSNESMSRegisterDestroy.htmlSNESMSSetType.htmlSNESMSType.htmlSNESMatrixFreeCreate2.htmlSNESMonitor.htmlSNESMonitorCancel.htmlSNESMonitorDefault.htmlSNESMonitorDefaultField.htmlSNESMonitorFields.htmlSNESMonitorFunction.htmlSNESMonitorRange.htmlSNESMonitorRatio.htmlSNESMonitorRatioSetUp.htmlSNESMonitorResidual.htmlSNESMonitorSAWs.htmlSNESMonitorSAWsCreate.htmlSNESMonitorSAWsDestroy.htmlSNESMonitorScaling.htmlSNESMonitorSet.htmlSNESMonitorSetFromOptions.htmlSNESMonitorSolution.htmlSNESMonitorSolutionUpdate.htmlSNESNASM.htmlSNESNASMGetDamping.htmlSNESNASMGetNumber.htmlSNESNASMGetSNES.htmlSNESNASMGetSubdomainVecs.htmlSNESNASMGetSubdomains.htmlSNESNASMGetType.htmlSNESNASMSetComputeFinalJacobian.htmlSNESNASMSetDamping.htmlSNESNASMSetSubdomains.htmlSNESNASMSetType.htmlSNESNASMSetWeight.htmlSNESNCG.htmlSNESNCGSetType.htmlSNESNEWTONLS.htmlSNESNEWTONTR.htmlSNESNGMRES.htmlSNESNGMRESSetRestartFmRise.htmlSNESNGMRESSetRestartType.htmlSNESNGMRESSetSelectType.htmlSNESNGS.htmlSNESNGSFunction.htmlSNESNGSGetSweeps.htmlSNESNGSGetTolerances.htmlSNESNGSSetSweeps.htmlSNESNGSSetTolerances.htmlSNESNRICHARDSON.htmlSNESNormSchedule.htmlSNESObjectiveComputeFunctionDefaultFD.htmlSNESObjectiveFunction.htmlSNESPATCH.htmlSNESPythonSetType.htmlSNESQN.htmlSNESQNSetRestartType.htmlSNESQNSetScaleType.htmlSNESQNSetType.htmlSNESReasonView.htmlSNESReasonViewFromOptions.htmlSNESRegister.htmlSNESRegisterAll.htmlSNESReset.htmlSNESResetFromOptions.htmlSNESSHELL.htmlSNESSetAlwaysComputesFinalResidual.htmlSNESSetApplicationContext.htmlSNESSetCheckJacobianDomainError.htmlSNESSetComputeApplicationContext.htmlSNESSetComputeInitialGuess.htmlSNESSetConvergedReason.htmlSNESSetConvergenceHistory.htmlSNESSetConvergenceTest.htmlSNESSetCountersReset.htmlSNESSetDM.htmlSNESSetDivergenceTolerance.htmlSNESSetErrorIfNotConverged.htmlSNESSetForceIteration.htmlSNESSetFromOptions.htmlSNESSetFunction.htmlSNESSetFunctionDomainError.htmlSNESSetFunctionNorm.htmlSNESSetFunctionType.htmlSNESSetGridSequence.htmlSNESSetInitialFunction.htmlSNESSetIterationNumber.htmlSNESSetJacobian.htmlSNESSetJacobianDomainError.htmlSNESSetKSP.htmlSNESSetLagJacobian.htmlSNESSetLagJacobianPersists.htmlSNESSetLagPreconditioner.htmlSNESSetLagPreconditionerPersists.htmlSNESSetLineSearch.htmlSNESSetMaxLinearSolveFailures.htmlSNESSetMaxNonlinearStepFailures.htmlSNESSetNGS.htmlSNESSetNPC.htmlSNESSetNPCSide.htmlSNESSetNormSchedule.htmlSNESSetObjective.htmlSNESSetOptionsPrefix.htmlSNESSetPicard.htmlSNESSetSolution.htmlSNESSetTolerances.htmlSNESSetTrustRegionTolerance.htmlSNESSetType.htmlSNESSetUp.htmlSNESSetUpMatrices.htmlSNESSetUpdate.htmlSNESSetUseMatrixFree.htmlSNESSetWorkVecs.htmlSNESShellGetContext.htmlSNESShellSetContext.htmlSNESShellSetSolve.htmlSNESSolve.htmlSNESType.htmlSNESVINEWTONRSLS.htmlSNESVINEWTONSSLS.htmlSNESVISetComputeVariableBounds.htmlSNESVISetVariableBounds.htmlSNESView.htmlSNES_CONERGED_ITERATING.htmlSNES_CONVERGED_FNORM_ABS.htmlSNES_CONVERGED_FNORM_RELATIVE.htmlSNES_CONVERGED_SNORM_RELATIVE.htmlSNES_DIVERGED_DTOL.htmlSNES_DIVERGED_FNORM_NAN.htmlSNES_DIVERGED_FUNCTION_COUNT.htmlSNES_DIVERGED_LINE_SEARCH.htmlSNES_DIVERGED_LOCAL_MIN.htmlSNES_DIVERGED_MAX_IT.htmlSNES_NORM_ALWAYS.htmlSNES_NORM_FINAL_ONLY.htmlSNES_NORM_INITIAL_FINAL_ONLY.htmlSNES_NORM_INITIAL_ONLY.htmlSNES_NORM_NONE.htmlindex.htmlSNESFASSNESFAS.htmlSNESFASCreateCoarseVec.htmlSNESFASCycleGetCorrection.htmlSNESFASCycleGetInjection.htmlSNESFASCycleGetInterpolation.htmlSNESFASCycleGetRScale.htmlSNESFASCycleGetRestriction.htmlSNESFASCycleGetSmoother.htmlSNESFASCycleGetSmootherDown.htmlSNESFASCycleGetSmootherUp.htmlSNESFASCycleIsFine.htmlSNESFASCycleSetCycles.htmlSNESFASFullSetDownSweep.htmlSNESFASGalerkinFunctionDefault.htmlSNESFASGetCoarseSolve.htmlSNESFASGetCycleSNES.htmlSNESFASGetGalerkin.htmlSNESFASGetInjection.htmlSNESFASGetInterpolation.htmlSNESFASGetLevels.htmlSNESFASGetRestriction.htmlSNESFASGetSmoother.htmlSNESFASGetSmootherDown.htmlSNESFASGetSmootherUp.htmlSNESFASGetType.htmlSNESFASRestrict.htmlSNESFASSetContinuation.htmlSNESFASSetCycles.htmlSNESFASSetGalerkin.htmlSNESFASSetInjection.htmlSNESFASSetInterpolation.htmlSNESFASSetLevels.htmlSNESFASSetLog.htmlSNESFASSetMonitor.htmlSNESFASSetNumberSmoothDown.htmlSNESFASSetNumberSmoothUp.htmlSNESFASSetRScale.htmlSNESFASSetRestriction.htmlSNESFASSetType.htmlindex.htmlSensitivityTSAdjointComputeDRDPFunction.htmlTSAdjointComputeDRDYFunction.htmlTSAdjointComputeRHSJacobian.htmlTSAdjointCostIntegral.htmlTSAdjointMonitor.htmlTSAdjointMonitorCancel.htmlTSAdjointMonitorDefault.htmlTSAdjointMonitorDrawSensi.htmlTSAdjointMonitorSensi.htmlTSAdjointMonitorSet.htmlTSAdjointMonitorSetFromOptions.htmlTSAdjointSetRHSJacobian.htmlTSAdjointSetSteps.htmlTSAdjointSetUp.htmlTSAdjointSolve.htmlTSAdjointStep.htmlTSComputeCostIntegrand.htmlTSComputeDRDPFunction.htmlTSComputeDRDYFunction.htmlTSComputeRHSJacobianP.htmlTSForwardCostIntegral.htmlTSForwardGetIntegralGradients.htmlTSForwardGetSensitivities.htmlTSForwardSetIntegralGradients.htmlTSForwardSetSensitivities.htmlTSForwardSetUp.htmlTSForwardStep.htmlTSGetCostGradients.htmlTSGetCostIntegral.htmlTSSetCostGradients.htmlTSSetCostIntegrand.htmlTSSetRHSJacobianP.htmlindex.htmlSysADD_VALUES.htmlCHKERRMPI.htmlCHKERRQ.htmlCHKERRXX.htmlCHKMEMQ.htmlConverts.htmlINSERT_VALUES.htmlInsertMode.htmlKSPCheckDot.htmlKSPCheckNorm.htmlMAX_VALUES.htmlMPIU_Allreduce.htmlMPIU_COMPLEX.htmlMPIU_INT.htmlMPIU_REAL.htmlMPIU_SCALAR.htmlMPI_Comm.htmlPETSC_COMM_SELF.htmlPETSC_COMM_WORLD.htmlPETSC_DECIDE.htmlPETSC_DEFAULT.htmlPETSC_DETERMINE.htmlPETSC_FALSE.htmlPETSC_HASH_MAP.htmlPETSC_HASH_SET.htmlPETSC_IGNORE.htmlPETSC_MATLAB_ENGINE_.htmlPETSC_MATLAB_ENGINE_SELF.htmlPETSC_MATLAB_ENGINE_WORLD.htmlPETSC_TRUE.htmlPETSC_VERSION.htmlPETSC_i.htmlPetscAbortErrorHandler.htmlPetscAbsInt.htmlPetscAbsReal.htmlPetscAddrAlign.htmlPetscAttachDebugger.htmlPetscAttachDebuggerErrorHandler.htmlPetscBLASInt.htmlPetscBLASIntCast.htmlPetscBT.htmlPetscBag.htmlPetscBagCreate.htmlPetscBagDestroy.htmlPetscBagGetData.htmlPetscBagGetName.htmlPetscBagGetNames.htmlPetscBagLoad.htmlPetscBagRegisterBool.htmlPetscBagRegisterBoolArray.htmlPetscBagRegisterEnum.htmlPetscBagRegisterInt.htmlPetscBagRegisterInt64.htmlPetscBagRegisterIntArray.htmlPetscBagRegisterReal.htmlPetscBagRegisterRealArray.htmlPetscBagRegisterScalar.htmlPetscBagRegisterString.htmlPetscBagSetFromOptions.htmlPetscBagSetName.htmlPetscBagSetOptionsPrefix.htmlPetscBagView.htmlPetscBarrier.htmlPetscBinaryClose.htmlPetscBinaryOpen.htmlPetscBinaryRead.htmlPetscBinarySeek.htmlPetscBinarySeekType.htmlPetscBinarySynchronizedRead.htmlPetscBinarySynchronizedSeek.htmlPetscBinarySynchronizedWrite.htmlPetscBinaryWrite.htmlPetscBool.htmlPetscBoxAuthorize.htmlPetscBoxRefresh.htmlPetscBoxUpload.htmlPetscBuildTwoSidedType.htmlPetscCalloc1.htmlPetscCalloc2.htmlPetscCalloc3.htmlPetscCalloc4.htmlPetscCalloc5.htmlPetscCalloc6.htmlPetscCalloc7.htmlPetscCheckPointer.htmlPetscCheckPointerSetIntensity.htmlPetscCitationsRegister.htmlPetscClassId.htmlPetscClipInterval.htmlPetscCommBuildTwoSided.htmlPetscCommBuildTwoSidedF.htmlPetscCommBuildTwoSidedFReq.htmlPetscCommBuildTwoSidedGetType.htmlPetscCommBuildTwoSidedSetType.htmlPetscCommDestroy.htmlPetscCommDuplicate.htmlPetscCommGetNewTag.htmlPetscComplex.htmlPetscContainer.htmlPetscContainerCreate.htmlPetscContainerDestroy.htmlPetscContainerGetPointer.htmlPetscContainerSetPointer.htmlPetscContainerSetUserDestroy.htmlPetscContainerUserDestroyDefault.htmlPetscCopyMode.htmlPetscDLClose.htmlPetscDLLibrary.htmlPetscDLLibraryAppend.htmlPetscDLLibraryClose.htmlPetscDLLibraryOpen.htmlPetscDLLibraryPrepend.htmlPetscDLLibraryRetrieve.htmlPetscDLLibrarySym.htmlPetscDLOpen.htmlPetscDLSym.htmlPetscDataType.htmlPetscDataTypeFromString.htmlPetscDataTypeGetSize.htmlPetscDataTypeToMPIDataType.htmlPetscEListFind.htmlPetscEmacsClientErrorHandler.htmlPetscEnd.htmlPetscEnum.htmlPetscEnumFind.htmlPetscEqualReal.htmlPetscEqualScalar.htmlPetscError.htmlPetscErrorCode.htmlPetscErrorMessage.htmlPetscErrorPrintf.htmlPetscErrorType.htmlPetscFClose.htmlPetscFOpen.htmlPetscFPTrapPop.htmlPetscFPTrapPush.htmlPetscFPrintf.htmlPetscFileMode.htmlPetscFileRetrieve.htmlPetscFinalize.htmlPetscFinalized.htmlPetscFindInt.htmlPetscFindMPIInt.htmlPetscFindReal.htmlPetscFixFilename.htmlPetscFormatConvert.htmlPetscFormatConvertGetSize.htmlPetscFormatStrip.htmlPetscFortranAddr.htmlPetscFortranCallbackGetSizes.htmlPetscFortranCallbackRegister.htmlPetscFree.htmlPetscFree2.htmlPetscFree3.htmlPetscFree4.htmlPetscFree5.htmlPetscFree6.htmlPetscFree7.htmlPetscFreeA.htmlPetscFreeArguments.htmlPetscFunctionBegin.htmlPetscFunctionBeginHot.htmlPetscFunctionBeginUser.htmlPetscFunctionList.htmlPetscFunctionListAdd.htmlPetscFunctionListDestroy.htmlPetscFunctionListDuplicate.htmlPetscFunctionListFind.htmlPetscFunctionListGet.htmlPetscFunctionListPrintTypes.htmlPetscFunctionListView.htmlPetscFunctionReturn.htmlPetscGLL.htmlPetscGLLCreate.htmlPetscGLLCreateType.htmlPetscGLLDestroy.htmlPetscGLLElementAdvectionCreate.htmlPetscGLLElementAdvectionDestroy.htmlPetscGLLElementGradientCreate.htmlPetscGLLElementGradientDestroy.htmlPetscGLLElementLaplacianCreate.htmlPetscGLLElementLaplacianDestroy.htmlPetscGLLIntegrate.htmlPetscGLLView.htmlPetscGatherMessageLengths.htmlPetscGatherMessageLengths2.htmlPetscGatherNumberOfMessages.htmlPetscGetArchType.htmlPetscGetArgs.htmlPetscGetArguments.htmlPetscGetCPUTime.htmlPetscGetDate.htmlPetscGetFullPath.htmlPetscGetHomeDirectory.htmlPetscGetHostName.htmlPetscGetPetscDir.htmlPetscGetProgramName.htmlPetscGetRealPath.htmlPetscGetRelativePath.htmlPetscGetTmp.htmlPetscGetUserName.htmlPetscGetVersion.htmlPetscGetVersionNumber.htmlPetscGetWorkingDirectory.htmlPetscGlobalMinMaxInt.htmlPetscGlobalMinMaxReal.htmlPetscGlobusAuthorize.htmlPetscGlobusGetTransfers.htmlPetscGlobusUpload.htmlPetscGoogleDriveAuthorize.htmlPetscGoogleDriveRefresh.htmlPetscGoogleDriveUpload.htmlPetscHMapT.htmlPetscHMapTClear.htmlPetscHMapTCreate.htmlPetscHMapTDel.htmlPetscHMapTDestroy.htmlPetscHMapTDuplicate.htmlPetscHMapTFind.htmlPetscHMapTGet.htmlPetscHMapTGetKeys.htmlPetscHMapTGetSize.htmlPetscHMapTGetVals.htmlPetscHMapTHas.htmlPetscHMapTIterDel.htmlPetscHMapTIterGet.htmlPetscHMapTIterSet.htmlPetscHMapTPut.htmlPetscHMapTQueryDel.htmlPetscHMapTQuerySet.htmlPetscHMapTReset.htmlPetscHMapTResize.htmlPetscHMapTSet.htmlPetscHSetT.htmlPetscHSetTAdd.htmlPetscHSetTClear.htmlPetscHSetTCreate.htmlPetscHSetTDel.htmlPetscHSetTDestroy.htmlPetscHSetTDuplicate.htmlPetscHSetTGetElems.htmlPetscHSetTGetSize.htmlPetscHSetTHas.htmlPetscHSetTQueryAdd.htmlPetscHSetTQueryDel.htmlPetscHSetTReset.htmlPetscHSetTResize.htmlPetscHTTPRequest.htmlPetscHTTPSConnect.htmlPetscHTTPSRequest.htmlPetscHeaderCreate.htmlPetscHeaderDestroy.htmlPetscHeap.htmlPetscHelpPrintf.htmlPetscIgnoreErrorHandler.htmlPetscImaginaryPart.htmlPetscInitialize.htmlPetscInitializeFortran.htmlPetscInitializeNoArguments.htmlPetscInitialized.htmlPetscInt.htmlPetscIntMultError.htmlPetscIntMultTruncate.htmlPetscIntSumError.htmlPetscIntSumTruncate.htmlPetscIntView.htmlPetscIsCloseAtTol.htmlPetscIsInfReal.htmlPetscIsNanReal.htmlPetscIsNormalReal.htmlPetscLikely.htmlPetscLogDouble.htmlPetscLs.htmlPetscMPIAbortErrorHandler.htmlPetscMPIDataTypeToPetscDataType.htmlPetscMPIDump.htmlPetscMPIInt.htmlPetscMPIIntCast.htmlPetscMalloc.htmlPetscMalloc1.htmlPetscMalloc2.htmlPetscMalloc3.htmlPetscMalloc4.htmlPetscMalloc5.htmlPetscMalloc6.htmlPetscMalloc7.htmlPetscMallocA.htmlPetscMallocClear.htmlPetscMallocDebug.htmlPetscMallocDump.htmlPetscMallocDumpLog.htmlPetscMallocGetCurrentUsage.htmlPetscMallocGetDebug.htmlPetscMallocGetDumpLog.htmlPetscMallocGetMaximumUsage.htmlPetscMallocGetStack.htmlPetscMallocResetDRAM.htmlPetscMallocSet.htmlPetscMallocSetCoalesce.htmlPetscMallocSetDRAM.htmlPetscMallocSetDumpLog.htmlPetscMallocSetDumpLogThreshold.htmlPetscMallocValidate.htmlPetscMatlabEngine.htmlPetscMatlabEngineCreate.htmlPetscMatlabEngineDestroy.htmlPetscMatlabEngineEvaluate.htmlPetscMatlabEngineGet.htmlPetscMatlabEngineGetArray.htmlPetscMatlabEngineGetOutput.htmlPetscMatlabEnginePrintOutput.htmlPetscMatlabEnginePut.htmlPetscMatlabEnginePutArray.htmlPetscMax.htmlPetscMemcmp.htmlPetscMemcpy.htmlPetscMemmove.htmlPetscMemoryGetCurrentUsage.htmlPetscMemoryGetMaximumUsage.htmlPetscMemorySetGetMaximumUsage.htmlPetscMemoryView.htmlPetscMemzero.htmlPetscMergeIntArray.htmlPetscMergeIntArrayPair.htmlPetscMergeMPIIntArray.htmlPetscMin.htmlPetscNew.htmlPetscNewLog.htmlPetscNot.htmlPetscObject.htmlPetscObjectAddOptionsHandler.htmlPetscObjectAppendOptionsPrefix.htmlPetscObjectBaseTypeCompare.htmlPetscObjectComm.htmlPetscObjectCompose.htmlPetscObjectComposeFunction.htmlPetscObjectComposedDataGetInt.htmlPetscObjectComposedDataGetIntstar.htmlPetscObjectComposedDataGetReal.htmlPetscObjectComposedDataGetRealstar.htmlPetscObjectComposedDataGetScalar.htmlPetscObjectComposedDataGetScalarstar.htmlPetscObjectComposedDataRegister.htmlPetscObjectComposedDataSetInt.htmlPetscObjectComposedDataSetIntstar.htmlPetscObjectComposedDataSetReal.htmlPetscObjectComposedDataSetRealstar.htmlPetscObjectComposedDataSetScalar.htmlPetscObjectComposedDataSetScalarstar.htmlPetscObjectCopyFortranFunctionPointers.htmlPetscObjectDereference.htmlPetscObjectDestroy.htmlPetscObjectDestroyOptionsHandlers.htmlPetscObjectGetClassId.htmlPetscObjectGetClassName.htmlPetscObjectGetComm.htmlPetscObjectGetFortranCallback.htmlPetscObjectGetId.htmlPetscObjectGetName.htmlPetscObjectGetNewTag.htmlPetscObjectGetOptions.htmlPetscObjectGetOptionsPrefix.htmlPetscObjectGetReference.htmlPetscObjectGetTabLevel.htmlPetscObjectGetType.htmlPetscObjectId.htmlPetscObjectIncrementTabLevel.htmlPetscObjectInheritPrintedOptions.htmlPetscObjectList.htmlPetscObjectListAdd.htmlPetscObjectListDestroy.htmlPetscObjectListDuplicate.htmlPetscObjectListFind.htmlPetscObjectListRemoveReference.htmlPetscObjectListReverseFind.htmlPetscObjectName.htmlPetscObjectOptionsBegin.htmlPetscObjectPrependOptionsPrefix.htmlPetscObjectPrintClassNamePrefixType.htmlPetscObjectProcessOptionsHandlers.htmlPetscObjectQuery.htmlPetscObjectQueryFunction.htmlPetscObjectReference.htmlPetscObjectRegisterDestroy.htmlPetscObjectRegisterDestroyAll.htmlPetscObjectSAWsBlock.htmlPetscObjectSAWsGrantAccess.htmlPetscObjectSAWsSetBlock.htmlPetscObjectSAWsTakeAccess.htmlPetscObjectSetFortranCallback.htmlPetscObjectSetFromOptions.htmlPetscObjectSetName.htmlPetscObjectSetOptions.htmlPetscObjectSetOptionsPrefix.htmlPetscObjectSetPrintedOptions.htmlPetscObjectSetTabLevel.htmlPetscObjectSetType.htmlPetscObjectSetUp.htmlPetscObjectState.htmlPetscObjectStateGet.htmlPetscObjectStateIncrease.htmlPetscObjectStateSet.htmlPetscObjectTypeCompare.htmlPetscObjectTypeCompareAny.htmlPetscObjectView.htmlPetscObjectViewFromOptions.htmlPetscObjectsDump.htmlPetscObjectsGetObject.htmlPetscObjectsListGetGlobalNumbering.htmlPetscObjectsView.htmlPetscOffloadFlag.htmlPetscOffset.htmlPetscOmpCtrlBarrier.htmlPetscOmpCtrlCreate.htmlPetscOmpCtrlDestroy.htmlPetscOmpCtrlGetOmpComms.htmlPetscOmpCtrlOmpRegionOnMasterBegin.htmlPetscOmpCtrlOmpRegionOnMasterEnd.htmlPetscOptionsAllUsed.htmlPetscOptionsBegin.htmlPetscOptionsBool.htmlPetscOptionsBoolArray.htmlPetscOptionsBoolGroup.htmlPetscOptionsBoolGroupBegin.htmlPetscOptionsBoolGroupEnd.htmlPetscOptionsClear.htmlPetscOptionsClearValue.htmlPetscOptionsCreate.htmlPetscOptionsDeprecated.htmlPetscOptionsDestroy.htmlPetscOptionsEList.htmlPetscOptionsEnd.htmlPetscOptionsEnum.htmlPetscOptionsEnumArray.htmlPetscOptionsFList.htmlPetscOptionsFindPair.htmlPetscOptionsGetAll.htmlPetscOptionsGetBool.htmlPetscOptionsGetBoolArray.htmlPetscOptionsGetEList.htmlPetscOptionsGetEnum.htmlPetscOptionsGetEnumArray.htmlPetscOptionsGetInt.htmlPetscOptionsGetIntArray.htmlPetscOptionsGetReal.htmlPetscOptionsGetRealArray.htmlPetscOptionsGetScalar.htmlPetscOptionsGetScalarArray.htmlPetscOptionsGetString.htmlPetscOptionsGetStringArray.htmlPetscOptionsGetenv.htmlPetscOptionsHasHelp.htmlPetscOptionsHasName.htmlPetscOptionsHead.htmlPetscOptionsInsert.htmlPetscOptionsInsertFile.htmlPetscOptionsInsertString.htmlPetscOptionsInt.htmlPetscOptionsIntArray.htmlPetscOptionsLeft.htmlPetscOptionsLeftGet.htmlPetscOptionsLeftRestore.htmlPetscOptionsMonitorCancel.htmlPetscOptionsMonitorDefault.htmlPetscOptionsMonitorSet.htmlPetscOptionsName.htmlPetscOptionsPrefixPop.htmlPetscOptionsPrefixPush.htmlPetscOptionsReal.htmlPetscOptionsRealArray.htmlPetscOptionsReject.htmlPetscOptionsScalar.htmlPetscOptionsScalarArray.htmlPetscOptionsSetAlias.htmlPetscOptionsSetFromOptions.htmlPetscOptionsSetValue.htmlPetscOptionsString.htmlPetscOptionsStringArray.htmlPetscOptionsTail.htmlPetscOptionsUsed.htmlPetscOptionsValidKey.htmlPetscOptionsView.htmlPetscOptionsViewer.htmlPetscPClose.htmlPetscPOpen.htmlPetscPOpenSetMachine.htmlPetscPopErrorHandler.htmlPetscPopSignalHandler.htmlPetscPrefetchBlock.htmlPetscPrintf.htmlPetscProcessPlacementView.htmlPetscProcessTree.htmlPetscPullJSONValue.htmlPetscPushErrorHandler.htmlPetscPushJSONValue.htmlPetscPushSignalHandler.htmlPetscRandom.htmlPetscRandomCreate.htmlPetscRandomDestroy.htmlPetscRandomFinalizePackage.htmlPetscRandomGetInterval.htmlPetscRandomGetSeed.htmlPetscRandomGetType.htmlPetscRandomGetValue.htmlPetscRandomGetValueReal.htmlPetscRandomInitializePackage.htmlPetscRandomRegister.htmlPetscRandomRegisterAll.htmlPetscRandomSeed.htmlPetscRandomSetFromOptions.htmlPetscRandomSetInterval.htmlPetscRandomSetSeed.htmlPetscRandomSetType.htmlPetscRandomType.htmlPetscRandomView.htmlPetscReal.htmlPetscRealIntMultTruncate.htmlPetscRealPart.htmlPetscRealView.htmlPetscRealloc.htmlPetscRegisterFinalize.htmlPetscRegisterFinalizeAll.htmlPetscReturnErrorHandler.htmlPetscSAWsBlock.htmlPetscSNPrintf.htmlPetscSNPrintfCount.htmlPetscSSEIsEnabled.htmlPetscSSLDestroyContext.htmlPetscSSLInitializeContext.htmlPetscScalar.htmlPetscScalarView.htmlPetscSegBuffer.htmlPetscSegBufferCreate.htmlPetscSegBufferDestroy.htmlPetscSegBufferExtractAlloc.htmlPetscSegBufferExtractInPlace.htmlPetscSegBufferExtractTo.htmlPetscSegBufferGet.htmlPetscSegBufferGetSize.htmlPetscSegBufferUnuse.htmlPetscSequentialPhaseBegin.htmlPetscSequentialPhaseEnd.htmlPetscSetDebugTerminal.htmlPetscSetDebugger.htmlPetscSetDebuggerFromString.htmlPetscSetDefaultDebugger.htmlPetscSetFPTrap.htmlPetscSetHelpVersionFunctions.htmlPetscSharedTmp.htmlPetscSharedWorkingDirectory.htmlPetscShmCommGet.htmlPetscShmCommGetMpiShmComm.htmlPetscShmCommGlobalToLocal.htmlPetscShmCommLocalToGlobal.htmlPetscSignalHandlerDefault.htmlPetscSignalSegvCheckPointer.htmlPetscSleep.htmlPetscSortInt.htmlPetscSortIntWithArray.htmlPetscSortIntWithArrayPair.htmlPetscSortIntWithDataArray.htmlPetscSortIntWithPermutation.htmlPetscSortIntWithScalarArray.htmlPetscSortMPIInt.htmlPetscSortMPIIntWithArray.htmlPetscSortMPIIntWithIntArray.htmlPetscSortReal.htmlPetscSortRealWithArrayInt.htmlPetscSortRealWithPermutation.htmlPetscSortRemoveDupsInt.htmlPetscSortRemoveDupsMPIInt.htmlPetscSortRemoveDupsReal.htmlPetscSortSplit.htmlPetscSortSplitReal.htmlPetscSortStrWithPermutation.htmlPetscSortedRemoveDupsInt.htmlPetscSplitOwnership.htmlPetscSplitOwnershipBlock.htmlPetscSqr.htmlPetscStackSAWsGrantAccess.htmlPetscStackSAWsTakeAccess.htmlPetscStartMatlab.htmlPetscStopForDebugger.htmlPetscStrArrayDestroy.htmlPetscStrArrayallocpy.htmlPetscStrInList.htmlPetscStrNArrayDestroy.htmlPetscStrNArrayallocpy.htmlPetscStrToArray.htmlPetscStrToArrayDestroy.htmlPetscStrallocpy.htmlPetscStrbeginswith.htmlPetscStrcasecmp.htmlPetscStrcat.htmlPetscStrchr.htmlPetscStrcmp.htmlPetscStrcpy.htmlPetscStrendswith.htmlPetscStrendswithwhich.htmlPetscStrgrt.htmlPetscStrlcat.htmlPetscStrlen.htmlPetscStrncmp.htmlPetscStrncpy.htmlPetscStrrchr.htmlPetscStrreplace.htmlPetscStrrstr.htmlPetscStrstr.htmlPetscStrtolower.htmlPetscStrtoupper.htmlPetscSubcomm.htmlPetscSubcommCreate.htmlPetscSubcommDestroy.htmlPetscSubcommSetFromOptions.htmlPetscSubcommSetNumber.htmlPetscSubcommSetOptionsPrefix.htmlPetscSubcommSetType.htmlPetscSubcommSetTypeGeneral.htmlPetscSubcommView.htmlPetscSynchronizedFGets.htmlPetscSynchronizedFPrintf.htmlPetscSynchronizedFlush.htmlPetscSynchronizedPrintf.htmlPetscTellMyCell.htmlPetscTestDirectory.htmlPetscTestFile.htmlPetscTextBelt.htmlPetscTime.htmlPetscTimeAdd.htmlPetscTimeSubtract.htmlPetscToken.htmlPetscTokenCreate.htmlPetscTokenDestroy.htmlPetscTokenFind.htmlPetscTraceBackErrorHandler.htmlPetscURLShorten.htmlPetscUnlikely.htmlPetscVFPrintf.htmlPetscVSNPrintf.htmlSETERRABORT.htmlSETERRMPI.htmlSETERRQ.htmlSETERRQ1.htmlSETERRQ2.htmlSETERRQ3.htmlSETERRQ4.htmlSETERRQ5.htmlSETERRQ6.htmlSETERRQ7.htmlSETERRQ8.htmlSETERRQ9.htmlUsingFortran.htmlindex.htmlTSDMCopyDMTS.htmlDMDATSSetIFunctionLocal.htmlDMDATSSetIJacobianLocal.htmlDMDATSSetRHSFunctionLocal.htmlDMDATSSetRHSJacobianLocal.htmlDMGetDMTS.htmlDMGetDMTSWrite.htmlDMPlexTSComputeBoundary.htmlDMPlexTSComputeIFunctionFEM.htmlDMPlexTSComputeIJacobianFEM.htmlDMPlexTSComputeRHSFunctionFVM.htmlDMPlexTSGetGeometryFVM.htmlDMPlexTSGetGradientDM.htmlDMTSCheckFromOptions.htmlDMTSCopy.htmlDMTSGetForcingFunction.htmlDMTSGetI2Function.htmlDMTSGetI2Jacobian.htmlDMTSGetIFunction.htmlDMTSGetIJacobian.htmlDMTSGetRHSFunction.htmlDMTSGetRHSJacobian.htmlDMTSGetSolutionFunction.htmlDMTSSetBoundaryLocal.htmlDMTSSetForcingFunction.htmlDMTSSetI2Function.htmlDMTSSetI2Jacobian.htmlDMTSSetIFunction.htmlDMTSSetIFunctionLocal.htmlDMTSSetIFunctionSerialize.htmlDMTSSetIJacobian.htmlDMTSSetIJacobianLocal.htmlDMTSSetIJacobianSerialize.htmlDMTSSetRHSFunction.htmlDMTSSetRHSFunctionLocal.htmlDMTSSetRHSJacobian.htmlDMTSSetSolutionFunction.htmlSNESTSFormFunction.htmlSNESTSFormJacobian.htmlTS.htmlTS2GetSolution.htmlTS2SetSolution.htmlTSADAPTBASIC.htmlTSADAPTCFL.htmlTSADAPTDSP.htmlTSADAPTGLEE.htmlTSADAPTHISTORY.htmlTSADAPTNONE.htmlTSALPHA.htmlTSALPHA2.htmlTSARKIMEX.htmlTSARKIMEX1BEE.htmlTSARKIMEX2C.htmlTSARKIMEX2D.htmlTSARKIMEX2E.htmlTSARKIMEX3.htmlTSARKIMEX4.htmlTSARKIMEX5.htmlTSARKIMEXA2.htmlTSARKIMEXARS122.htmlTSARKIMEXARS443.htmlTSARKIMEXBPR3.htmlTSARKIMEXFinalizePackage.htmlTSARKIMEXGetType.htmlTSARKIMEXInitializePackage.htmlTSARKIMEXL2.htmlTSARKIMEXPRSSP2.htmlTSARKIMEXRegister.htmlTSARKIMEXRegisterAll.htmlTSARKIMEXRegisterDestroy.htmlTSARKIMEXSetFullyImplicit.htmlTSARKIMEXSetType.htmlTSARKIMEXType.htmlTSAdapt.htmlTSAdaptCandidateAdd.htmlTSAdaptCandidatesClear.htmlTSAdaptCandidatesGet.htmlTSAdaptCheckStage.htmlTSAdaptChoose.htmlTSAdaptCreate.htmlTSAdaptDSPSetFilter.htmlTSAdaptDSPSetPID.htmlTSAdaptFinalizePackage.htmlTSAdaptGetClip.htmlTSAdaptGetSafety.htmlTSAdaptGetStepLimits.htmlTSAdaptGetType.htmlTSAdaptHistoryGetStep.htmlTSAdaptHistorySetHistory.htmlTSAdaptHistorySetTrajectory.htmlTSAdaptInitializePackage.htmlTSAdaptLoad.htmlTSAdaptRegister.htmlTSAdaptRegisterAll.htmlTSAdaptReset.htmlTSAdaptSetAlwaysAccept.htmlTSAdaptSetCheckStage.htmlTSAdaptSetClip.htmlTSAdaptSetMonitor.htmlTSAdaptSetSafety.htmlTSAdaptSetStepLimits.htmlTSAdaptSetTimeStepIncreaseDelay.htmlTSAdaptSetType.htmlTSAdaptType.htmlTSAlpha2GetParams.htmlTSAlpha2SetParams.htmlTSAlpha2SetRadius.htmlTSAlphaGetParams.htmlTSAlphaSetParams.htmlTSAlphaSetRadius.htmlTSAppendOptionsPrefix.htmlTSBASICSYMPLECTICSIEULER.htmlTSBASICSYMPLECTICVELVERLET.htmlTSBDF.htmlTSBDFGetOrder.htmlTSBDFSetOrder.htmlTSBEULER.htmlTSBasicSymplectic.htmlTSBasicSymplecticFinalizePackage.htmlTSBasicSymplecticGetType.htmlTSBasicSymplecticInitializePackage.htmlTSBasicSymplecticRegister.htmlTSBasicSymplecticRegisterAll.htmlTSBasicSymplecticRegisterDestroy.htmlTSBasicSymplecticSetType.htmlTSBasicSymplecticType.htmlTSCN.htmlTSClone.htmlTSComputeForcingFunction.htmlTSComputeI2Function.htmlTSComputeI2Jacobian.htmlTSComputeIFunction.htmlTSComputeIFunctionLinear.htmlTSComputeIJacobian.htmlTSComputeIJacobianConstant.htmlTSComputeIJacobianDefaultColor.htmlTSComputeLinearStability.htmlTSComputeRHSFunction.htmlTSComputeRHSFunctionLinear.htmlTSComputeRHSJacobian.htmlTSComputeRHSJacobianConstant.htmlTSComputeSolutionFunction.htmlTSConvergedReason.htmlTSCreate.htmlTSDestroy.htmlTSEIMEX.htmlTSEIMEXSetMaxRows.htmlTSEIMEXSetOrdAdapt.htmlTSEIMEXSetRowCol.htmlTSEIMEXType.htmlTSEULER.htmlTSEquationType.htmlTSErrorWeightedENorm.htmlTSErrorWeightedENorm2.htmlTSErrorWeightedENormInfinity.htmlTSErrorWeightedNorm.htmlTSErrorWeightedNorm2.htmlTSErrorWeightedNormInfinity.htmlTSEvaluateStep.htmlTSEvaluateWLTE.htmlTSExactFinalTimeOption.htmlTSFinalizePackage.htmlTSFunctionDomainError.htmlTSGLEE.htmlTSGLEE23.htmlTSGLEE24.htmlTSGLEE25i.htmlTSGLEE35.htmlTSGLEEEXRK2A.htmlTSGLEEFinalizePackage.htmlTSGLEEGetType.htmlTSGLEEInitializePackage.htmlTSGLEEMode.htmlTSGLEERK285EX.htmlTSGLEERK32G1.htmlTSGLEERegister.htmlTSGLEERegisterAll.htmlTSGLEERegisterDestroy.htmlTSGLEESetType.htmlTSGLEEType.htmlTSGLLE.htmlTSGLLEAcceptRegister.htmlTSGLLEAcceptType.htmlTSGLLEAdapt.htmlTSGLLEAdaptInitializePackage.htmlTSGLLEAdaptRegister.htmlTSGLLEAdaptRegisterAll.htmlTSGLLEAdaptType.htmlTSGLLEFinalizePackage.htmlTSGLLEGetAdapt.htmlTSGLLEInitializePackage.htmlTSGLLERegister.htmlTSGLLERegisterAll.htmlTSGLLESetAcceptType.htmlTSGLLESetType.htmlTSGLLEType.htmlTSGetAdapt.htmlTSGetApplicationContext.htmlTSGetAuxSolution.htmlTSGetCFLTime.htmlTSGetConvergedReason.htmlTSGetDM.htmlTSGetDuration.htmlTSGetEquationType.htmlTSGetExactFinalTime.htmlTSGetI2Function.htmlTSGetI2Jacobian.htmlTSGetIFunction.htmlTSGetIJacobian.htmlTSGetKSP.htmlTSGetKSPIterations.htmlTSGetMaxSteps.htmlTSGetMaxTime.htmlTSGetOptionsPrefix.htmlTSGetPrevTime.htmlTSGetProblemType.htmlTSGetRHSFunction.htmlTSGetRHSJacobian.htmlTSGetSNES.htmlTSGetSNESFailures.htmlTSGetSNESIterations.htmlTSGetSolution.htmlTSGetSolutionComponents.htmlTSGetSolveTime.htmlTSGetStages.htmlTSGetStepNumber.htmlTSGetStepRejections.htmlTSGetTime.htmlTSGetTimeError.htmlTSGetTimeStep.htmlTSGetTimeStepNumber.htmlTSGetTolerances.htmlTSGetTotalSteps.htmlTSGetTrajectory.htmlTSGetType.htmlTSInitializePackage.htmlTSInterpolate.htmlTSLoad.htmlTSMIMEX.htmlTSMonitor.htmlTSMonitorCancel.htmlTSMonitorDefault.htmlTSMonitorDrawCtxCreate.htmlTSMonitorDrawCtxDestroy.htmlTSMonitorDrawError.htmlTSMonitorDrawSolution.htmlTSMonitorDrawSolutionFunction.htmlTSMonitorDrawSolutionPhase.htmlTSMonitorEnvelope.htmlTSMonitorEnvelopeCtxCreate.htmlTSMonitorEnvelopeCtxDestroy.htmlTSMonitorEnvelopeGetBounds.htmlTSMonitorError.htmlTSMonitorExtreme.htmlTSMonitorLGCtxCreate.htmlTSMonitorLGCtxDestroy.htmlTSMonitorLGCtxSetDisplayVariables.htmlTSMonitorLGCtxSetTransform.htmlTSMonitorLGCtxSetVariableNames.htmlTSMonitorLGError.htmlTSMonitorLGGetVariableNames.htmlTSMonitorLGSetDisplayVariables.htmlTSMonitorLGSetTransform.htmlTSMonitorLGSetVariableNames.htmlTSMonitorLGSolution.htmlTSMonitorSPEigCtxCreate.htmlTSMonitorSPEigCtxDestroy.htmlTSMonitorSPSwarmSolution.htmlTSMonitorSet.htmlTSMonitorSetFromOptions.htmlTSMonitorSolution.htmlTSMonitorSolutionVTK.htmlTSMonitorSolutionVTKDestroy.htmlTSPSEUDO.htmlTSPostEvaluate.htmlTSPostStage.htmlTSPostStep.htmlTSPreStage.htmlTSPreStep.htmlTSProblemType.htmlTSPseudoComputeTimeStep.htmlTSPseudoIncrementDtFromInitialDt.htmlTSPseudoSetMaxTimeStep.htmlTSPseudoSetTimeStep.htmlTSPseudoSetTimeStepIncrement.htmlTSPseudoSetVerifyTimeStep.htmlTSPseudoTimeStepDefault.htmlTSPseudoVerifyTimeStep.htmlTSPseudoVerifyTimeStepDefault.htmlTSPythonSetType.htmlTSRADAU5.htmlTSRHSJacobianSetReuse.htmlTSRHSJacobianTest.htmlTSRHSJacobianTestTranspose.htmlTSRHSSplitGetIS.htmlTSRHSSplitGetSubTS.htmlTSRHSSplitGetSubTSs.htmlTSRHSSplitSetIS.htmlTSRHSSplitSetRHSFunction.htmlTSRK.htmlTSRK1FE.htmlTSRK2A.htmlTSRK3.htmlTSRK3BS.htmlTSRK4.htmlTSRK5BS.htmlTSRK5DP.htmlTSRK5F.htmlTSRKFinalizePackage.htmlTSRKGetType.htmlTSRKInitializePackage.htmlTSRKRegister.htmlTSRKRegisterAll.htmlTSRKRegisterDestroy.htmlTSRKSetType.htmlTSRKType.htmlTSROSW.htmlTSROSW2M.htmlTSROSW2P.htmlTSROSW4L.htmlTSROSWASSP3P3S1C.htmlTSROSWGRK4T.htmlTSROSWLASSP3P4S2C.htmlTSROSWLLSSP3P4S2C.htmlTSROSWRA34PW2.htmlTSROSWRA3PW.htmlTSROSWRODAS3.htmlTSROSWSANDU3.htmlTSROSWSHAMP4.htmlTSROSWTHETA1.htmlTSROSWTHETA2.htmlTSROSWVELDD4.htmlTSRegister.htmlTSRegisterAll.htmlTSReset.htmlTSResetTrajectory.htmlTSRestartStep.htmlTSRollBack.htmlTSRosWFinalizePackage.htmlTSRosWGetType.htmlTSRosWInitializePackage.htmlTSRosWRegister.htmlTSRosWRegisterAll.htmlTSRosWRegisterDestroy.htmlTSRosWRegisterRos4.htmlTSRosWSetRecomputeJacobian.htmlTSRosWSetType.htmlTSRosWType.htmlTSSSP.htmlTSSSPFinalizePackage.htmlTSSSPGetNumStages.htmlTSSSPGetType.htmlTSSSPInitializePackage.htmlTSSSPRKS104.htmlTSSSPRKS2.htmlTSSSPRKS3.htmlTSSSPSetNumStages.htmlTSSSPSetType.htmlTSSSPType.htmlTSSUNDIALS.htmlTSSetApplicationContext.htmlTSSetCFLTimeLocal.htmlTSSetConvergedReason.htmlTSSetDM.htmlTSSetDuration.htmlTSSetEquationType.htmlTSSetErrorIfStepFails.htmlTSSetEventHandler.htmlTSSetEventTolerances.htmlTSSetExactFinalTime.htmlTSSetForcingFunction.htmlTSSetFromOptions.htmlTSSetFunctionDomainError.htmlTSSetI2Function.htmlTSSetI2Jacobian.htmlTSSetIFunction.htmlTSSetIJacobian.htmlTSSetInitialTimeStep.htmlTSSetMaxSNESFailures.htmlTSSetMaxStepRejections.htmlTSSetMaxSteps.htmlTSSetMaxTime.htmlTSSetOptionsPrefix.htmlTSSetPostEvaluate.htmlTSSetPostEventIntervalStep.htmlTSSetPostStage.htmlTSSetPostStep.htmlTSSetPreStage.htmlTSSetPreStep.htmlTSSetProblemType.htmlTSSetRHSFunction.htmlTSSetRHSJacobian.htmlTSSetSNES.htmlTSSetSaveTrajectory.htmlTSSetSolution.htmlTSSetSolutionFunction.htmlTSSetStepNumber.htmlTSSetTime.htmlTSSetTimeError.htmlTSSetTimeStep.htmlTSSetTolerances.htmlTSSetType.htmlTSSetUp.htmlTSSolve.htmlTSStep.htmlTSSundialsGetIterations.htmlTSSundialsGetPC.htmlTSSundialsMonitorInternalSteps.htmlTSSundialsSetGramSchmidtType.htmlTSSundialsSetLinearTolerance.htmlTSSundialsSetMaxTimeStep.htmlTSSundialsSetMaxl.htmlTSSundialsSetMinTimeStep.htmlTSSundialsSetTolerance.htmlTSSundialsSetType.htmlTSTHETA.htmlTSTRAJECTORYBASIC.htmlTSTRAJECTORYMEMORY.htmlTSTRAJECTORYSINGLEFILE.htmlTSTRAJECTORYVISUALIZATION.htmlTSThetaGetEndpoint.htmlTSThetaGetTheta.htmlTSThetaSetEndpoint.htmlTSThetaSetTheta.htmlTSTrajectory.htmlTSTrajectoryCreate.htmlTSTrajectoryDestroy.htmlTSTrajectoryGet.htmlTSTrajectoryGetNumSteps.htmlTSTrajectoryGetSolutionOnly.htmlTSTrajectoryGetUpdatedHistoryVecs.htmlTSTrajectoryGetVecs.htmlTSTrajectoryRegister.htmlTSTrajectoryRegisterAll.htmlTSTrajectoryReset.htmlTSTrajectoryRestoreUpdatedHistoryVecs.htmlTSTrajectorySet.htmlTSTrajectorySetDirname.htmlTSTrajectorySetFiletemplate.htmlTSTrajectorySetFromOptions.htmlTSTrajectorySetKeepFiles.htmlTSTrajectorySetMonitor.htmlTSTrajectorySetSolutionOnly.htmlTSTrajectorySetTransform.htmlTSTrajectorySetType.htmlTSTrajectorySetUp.htmlTSTrajectorySetVariableNames.htmlTSTrajectoryView.htmlTSType.htmlTSVISetVariableBounds.htmlTSView.htmlTS_CONVERGED_EVENT.htmlTS_CONVERGED_ITERATING.htmlTS_CONVERGED_ITS.htmlTS_CONVERGED_PSEUDO_FATOL.htmlTS_CONVERGED_PSEUDO_FRTOL.htmlTS_CONVERGED_TIME.htmlTS_CONVERGED_USER.htmlTS_DIVERGED_NONLINEAR_SOLVE.htmlTS_DIVERGED_STEP_REJECTED.htmlindex.htmlTaoMatCreateADA.htmlMatCreateSubMatrixFree.htmlMatDFischer.htmlMatDSFischer.htmlTAOASFLS.htmlTAOASILS.htmlTAOBLMVM.htmlTAOBMRM.htmlTAOBNCG.htmlTAOBNK.htmlTAOBNLS.htmlTAOBNTL.htmlTAOBNTR.htmlTAOBQNKLS.htmlTAOBQNKTL.htmlTAOBQNKTR.htmlTAOBQNLS.htmlTAOBQPIP.htmlTAOBRGN.htmlTAOCG.htmlTAOGPCG.htmlTAOIPM.htmlTAOLCL.htmlTAOLMVM.htmlTAONLS.htmlTAONM.htmlTAONTL.htmlTAONTR.htmlTAOOWLQN.htmlTAOPOUNDERS.htmlTAOSHELL.htmlTAOSSFLS.htmlTAOSSILS.htmlTAOTRON.htmlTao.htmlTaoAddLineSearchCounts.htmlTaoAppendOptionsPrefix.htmlTaoBRGNGetSubsolver.htmlTaoBRGNSetDictionaryMatrix.htmlTaoBRGNSetL1SmoothEpsilon.htmlTaoBRGNSetRegularizerHessianRoutine.htmlTaoBRGNSetRegularizerObjectiveAndGradientRoutine.htmlTaoBRGNSetRegularizerWeight.htmlTaoCancelMonitors.htmlTaoComputeConstraints.htmlTaoComputeDualVariables.htmlTaoComputeEqualityConstraints.htmlTaoComputeGradient.htmlTaoComputeHessian.htmlTaoComputeInequalityConstraints.htmlTaoComputeJacobian.htmlTaoComputeJacobianDesign.htmlTaoComputeJacobianEquality.htmlTaoComputeJacobianInequality.htmlTaoComputeJacobianState.htmlTaoComputeObjective.htmlTaoComputeObjectiveAndGradient.htmlTaoComputeResidual.htmlTaoComputeResidualJacobian.htmlTaoComputeVariableBounds.htmlTaoConvergedReason.htmlTaoCreate.htmlTaoDefaultCMonitor.htmlTaoDefaultComputeGradient.htmlTaoDefaultComputeHessian.htmlTaoDefaultComputeHessianColor.htmlTaoDefaultConvergenceTest.htmlTaoDefaultGMonitor.htmlTaoDefaultSMonitor.htmlTaoDestroy.htmlTaoDrawGradientMonitor.htmlTaoDrawSolutionMonitor.htmlTaoDrawStepMonitor.htmlTaoFinalizePackage.htmlTaoGetApplicationContext.htmlTaoGetConstraintTolerances.htmlTaoGetConvergedReason.htmlTaoGetConvergenceHistory.htmlTaoGetCurrentFunctionEvaluations.htmlTaoGetCurrentTrustRegionRadius.htmlTaoGetDualVariables.htmlTaoGetFunctionLowerBound.htmlTaoGetGradientNorm.htmlTaoGetGradientVector.htmlTaoGetInitialTrustRegionRadius.htmlTaoGetIterationNumber.htmlTaoGetKSP.htmlTaoGetLineSearch.htmlTaoGetLinearSolveIterations.htmlTaoGetMaximumFunctionEvaluations.htmlTaoGetMaximumIterations.htmlTaoGetObjective.htmlTaoGetOptionsPrefix.htmlTaoGetResidualNorm.htmlTaoGetSolutionStatus.htmlTaoGetSolutionVector.htmlTaoGetTolerances.htmlTaoGetTotalIterationNumber.htmlTaoGetType.htmlTaoGradientMonitor.htmlTaoInitializePackage.htmlTaoIsGradientDefined.htmlTaoIsObjectiveAndGradientDefined.htmlTaoIsObjectiveDefined.htmlTaoMonitor.htmlTaoMonitorDefault.htmlTaoMonitorDrawCtxCreate.htmlTaoMonitorDrawCtxDestroy.htmlTaoRegister.htmlTaoRegisterAll.htmlTaoRegisterDestroy.htmlTaoResetStatistics.htmlTaoResidualMonitor.htmlTaoSetApplicationContext.htmlTaoSetConstraintTolerances.htmlTaoSetConstraintsRoutine.htmlTaoSetConvergedReason.htmlTaoSetConvergenceHistory.htmlTaoSetConvergenceTest.htmlTaoSetEqualityConstraintsRoutine.htmlTaoSetFromOptions.htmlTaoSetFunctionLowerBound.htmlTaoSetGradientNorm.htmlTaoSetGradientRoutine.htmlTaoSetHessianRoutine.htmlTaoSetInequalityBounds.htmlTaoSetInequalityConstraintsRoutine.htmlTaoSetInitialTrustRegionRadius.htmlTaoSetInitialVector.htmlTaoSetIterationNumber.htmlTaoSetJacobianDesignRoutine.htmlTaoSetJacobianEqualityRoutine.htmlTaoSetJacobianInequalityRoutine.htmlTaoSetJacobianResidualRoutine.htmlTaoSetJacobianRoutine.htmlTaoSetJacobianStateRoutine.htmlTaoSetMaximumFunctionEvaluations.htmlTaoSetMaximumIterations.htmlTaoSetMonitor.htmlTaoSetObjectiveAndGradientRoutine.htmlTaoSetObjectiveRoutine.htmlTaoSetOptionsPrefix.htmlTaoSetResidualRoutine.htmlTaoSetResidualWeights.htmlTaoSetStateDesignIS.htmlTaoSetTolerances.htmlTaoSetTotalIterationNumber.htmlTaoSetType.htmlTaoSetUp.htmlTaoSetUpdate.htmlTaoSetVariableBounds.htmlTaoSetVariableBoundsRoutine.htmlTaoShellGetContext.htmlTaoShellSetContext.htmlTaoShellSetSolve.htmlTaoSolutionMonitor.htmlTaoSolve.htmlTaoStepDirectionMonitor.htmlTaoSubsetType.htmlTaoType.htmlTaoView.htmlVecFischer.htmlVecSFischer.htmlindex.htmlTaoLineSearchTaoCreateUnitLineSearch.htmlTaoLineSearchAppendOptionsPrefix.htmlTaoLineSearchApply.htmlTaoLineSearchComputeGradient.htmlTaoLineSearchComputeObjective.htmlTaoLineSearchComputeObjectiveAndGTS.htmlTaoLineSearchComputeObjectiveAndGradient.htmlTaoLineSearchCreate.htmlTaoLineSearchDestroy.htmlTaoLineSearchFinalizePackage.htmlTaoLineSearchGetFullStepObjective.htmlTaoLineSearchGetNumberFunctionEvaluations.htmlTaoLineSearchGetOptionsPrefix.htmlTaoLineSearchGetSolution.htmlTaoLineSearchGetStartingVector.htmlTaoLineSearchGetStepDirection.htmlTaoLineSearchGetStepLength.htmlTaoLineSearchGetType.htmlTaoLineSearchInitializePackage.htmlTaoLineSearchIsUsingTaoRoutines.htmlTaoLineSearchMonitor.htmlTaoLineSearchRegister.htmlTaoLineSearchReset.htmlTaoLineSearchSetFromOptions.htmlTaoLineSearchSetGradientRoutine.htmlTaoLineSearchSetInitialStepLength.htmlTaoLineSearchSetObjectiveAndGTSRoutine.htmlTaoLineSearchSetObjectiveAndGradientRoutine.htmlTaoLineSearchSetObjectiveRoutine.htmlTaoLineSearchSetOptionsPrefix.htmlTaoLineSearchSetType.htmlTaoLineSearchSetUp.htmlTaoLineSearchSetVariableBounds.htmlTaoLineSearchUseTaoRoutines.htmlTaoLineSearchView.htmlindex.htmlVecISComplementVec.htmlISFinalizePackage.htmlISInitializePackage.htmlNORM_1.htmlNORM_1_AND_2.htmlNORM_2.htmlNORM_FROBENIUS.htmlNORM_INFINITY.htmlNORM_MAX.htmlNormType.htmlPetscCommSplitReductionBegin.htmlPetscSFCreateFromZero.htmlPetscSectionVecNorm.htmlSCATTER_FORWARD.htmlSCATTER_FORWARD_LOCAL.htmlSCATTER_REVERSE.htmlSCATTER_REVERSE_LOCAL.htmlScatterMode.htmlVECMPI.htmlVECMPICUDA.htmlVECMPIVIENNACL.htmlVECNEST.htmlVECNODE.htmlVECSEQ.htmlVECSEQCUDA.htmlVECSEQVIENNACL.htmlVECSTANDARD.htmlVec.htmlVecAXPBY.htmlVecAXPBYPCZ.htmlVecAXPY.htmlVecAYPX.htmlVecAbs.htmlVecAppendOptionsPrefix.htmlVecAssemblyBegin.htmlVecAssemblyEnd.htmlVecBoundGradientProjection.htmlVecCUDAGetArrayRead.htmlVecCUDAGetArrayReadWrite.htmlVecCUDAGetArrayWrite.htmlVecCUDAPlaceArray.htmlVecCUDAReplaceArray.htmlVecCUDAResetArray.htmlVecCUDARestoreArrayRead.htmlVecCUDARestoreArrayReadWrite.htmlVecCUDARestoreArrayWrite.htmlVecChop.htmlVecConjugate.htmlVecCopy.htmlVecCreate.htmlVecCreateGhost.htmlVecCreateGhostBlock.htmlVecCreateGhostBlockWithArray.htmlVecCreateGhostWithArray.htmlVecCreateMPI.htmlVecCreateMPICUDAWithArray.htmlVecCreateMPIWithArray.htmlVecCreateNest.htmlVecCreateNode.htmlVecCreateSeq.htmlVecCreateSeqCUDA.htmlVecCreateSeqCUDAWithArray.htmlVecCreateSeqViennaCL.htmlVecCreateSeqWithArray.htmlVecCreateShared.htmlVecDestroy.htmlVecDestroyVecs.htmlVecDestroyVecsF90.htmlVecDot.htmlVecDotBegin.htmlVecDotEnd.htmlVecDotNorm2.htmlVecDotRealPart.htmlVecDuplicate.htmlVecDuplicateVecs.htmlVecDuplicateVecsF90.htmlVecEqual.htmlVecExp.htmlVecFinalizePackage.htmlVecGetArray.htmlVecGetArray1d.htmlVecGetArray1dRead.htmlVecGetArray2d.htmlVecGetArray2dRead.htmlVecGetArray3d.htmlVecGetArray3dRead.htmlVecGetArray4d.htmlVecGetArray4dRead.htmlVecGetArrayF90.htmlVecGetArrayPair.htmlVecGetArrayRead.htmlVecGetArrayReadF90.htmlVecGetArrays.htmlVecGetBlockSize.htmlVecGetLayout.htmlVecGetLocalSize.htmlVecGetLocalToGlobalMapping.htmlVecGetLocalVector.htmlVecGetLocalVectorRead.htmlVecGetOptionsPrefix.htmlVecGetOwnershipRange.htmlVecGetOwnershipRanges.htmlVecGetSize.htmlVecGetSubVector.htmlVecGetType.htmlVecGetValues.htmlVecGetValuesSection.htmlVecGhostGetLocalForm.htmlVecGhostIsLocalForm.htmlVecGhostRestoreLocalForm.htmlVecGhostUpdateBegin.htmlVecGhostUpdateEnd.htmlVecISAXPY.htmlVecISCopy.htmlVecISSet.htmlVecImaginaryPart.htmlVecInitializePackage.htmlVecLoad.htmlVecLockGet.htmlVecLockPop.htmlVecLockPush.htmlVecLockReadPop.htmlVecLockReadPush.htmlVecLockWriteSet_Private.htmlVecLog.htmlVecMAXPY.htmlVecMDot.htmlVecMDotBegin.htmlVecMDotEnd.htmlVecMPISetGhost.htmlVecMTDot.htmlVecMTDotBegin.htmlVecMTDotEnd.htmlVecMax.htmlVecMaxPointwiseDivide.htmlVecMedian.htmlVecMin.htmlVecNestGetSize.htmlVecNestGetSubVec.htmlVecNestGetSubVecs.htmlVecNestSetSubVec.htmlVecNestSetSubVecs.htmlVecNorm.htmlVecNormAvailable.htmlVecNormBegin.htmlVecNormEnd.htmlVecNormalize.htmlVecPermute.htmlVecPlaceArray.htmlVecPointwiseDivide.htmlVecPointwiseMax.htmlVecPointwiseMaxAbs.htmlVecPointwiseMin.htmlVecPointwiseMult.htmlVecPow.htmlVecRealPart.htmlVecReciprocal.htmlVecRegister.htmlVecRegisterAll.htmlVecReplaceArray.htmlVecResetArray.htmlVecRestoreArray.htmlVecRestoreArray1d.htmlVecRestoreArray1dRead.htmlVecRestoreArray2d.htmlVecRestoreArray2dRead.htmlVecRestoreArray3d.htmlVecRestoreArray3dRead.htmlVecRestoreArray4d.htmlVecRestoreArray4dRead.htmlVecRestoreArrayF90.htmlVecRestoreArrayPair.htmlVecRestoreArrayRead.htmlVecRestoreArrayReadF90.htmlVecRestoreArrays.htmlVecRestoreLocalVector.htmlVecRestoreLocalVectorRead.htmlVecRestoreSubVector.htmlVecScale.htmlVecScatter.htmlVecScatterBegin.htmlVecScatterCopy.htmlVecScatterCreate.htmlVecScatterCreateToAll.htmlVecScatterCreateToZero.htmlVecScatterDestroy.htmlVecScatterEnd.htmlVecScatterFinalizeForGPU.htmlVecScatterFinalizePackage.htmlVecScatterGetMerged.htmlVecScatterGetType.htmlVecScatterInitializeForGPU.htmlVecScatterInitializePackage.htmlVecScatterRegister.htmlVecScatterRegisterAll.htmlVecScatterRemap.htmlVecScatterSetFromOptions.htmlVecScatterSetType.htmlVecScatterSetUp.htmlVecScatterType.htmlVecScatterView.htmlVecSet.htmlVecSetBlockSize.htmlVecSetFromOptions.htmlVecSetLayout.htmlVecSetLocalToGlobalMapping.htmlVecSetOperation.htmlVecSetOption.htmlVecSetOptionsPrefix.htmlVecSetRandom.htmlVecSetSizes.htmlVecSetType.htmlVecSetUp.htmlVecSetValue.htmlVecSetValueLocal.htmlVecSetValues.htmlVecSetValuesBlocked.htmlVecSetValuesBlockedLocal.htmlVecSetValuesLocal.htmlVecSetValuesSection.htmlVecShift.htmlVecSqrtAbs.htmlVecStashGetInfo.htmlVecStashSetInitialSize.htmlVecStashView.htmlVecStepBoundInfo.htmlVecStepMax.htmlVecStepMaxBounded.htmlVecStrideGather.htmlVecStrideGatherAll.htmlVecStrideMax.htmlVecStrideMaxAll.htmlVecStrideMin.htmlVecStrideMinAll.htmlVecStrideNorm.htmlVecStrideNormAll.htmlVecStrideScale.htmlVecStrideScaleAll.htmlVecStrideScatter.htmlVecStrideScatterAll.htmlVecStrideSet.htmlVecStrideSubSetGather.htmlVecStrideSubSetScatter.htmlVecSum.htmlVecSwap.htmlVecTDot.htmlVecTDotBegin.htmlVecTDotEnd.htmlVecTagger.htmlVecTaggerAbsoluteGetBox.htmlVecTaggerAbsoluteSetBox.htmlVecTaggerAndGetSubs.htmlVecTaggerAndSetSubs.htmlVecTaggerBox.htmlVecTaggerCDFGetBox.htmlVecTaggerCDFGetMethod.htmlVecTaggerCDFIterativeGetTolerances.htmlVecTaggerCDFIterativeSetTolerances.htmlVecTaggerCDFMethod.htmlVecTaggerCDFSetBox.htmlVecTaggerCDFSetMethod.htmlVecTaggerComputeBoxes.htmlVecTaggerComputeIS.htmlVecTaggerCreate.htmlVecTaggerDestroy.htmlVecTaggerFinalizePackage.htmlVecTaggerGetBlockSize.htmlVecTaggerGetInvert.htmlVecTaggerGetType.htmlVecTaggerInitializePackage.htmlVecTaggerOrGetSubs.htmlVecTaggerOrSetSubs.htmlVecTaggerRegister.htmlVecTaggerRegisterAll.htmlVecTaggerRelativeGetBox.htmlVecTaggerRelativeSetBox.htmlVecTaggerSetBlockSize.htmlVecTaggerSetFromOptions.htmlVecTaggerSetInvert.htmlVecTaggerSetType.htmlVecTaggerSetUp.htmlVecTaggerType.htmlVecTaggerView.htmlVecType.htmlVecUniqueEntries.htmlVecView.htmlVecWAXPY.htmlVecWhichBetween.htmlVecWhichBetweenOrEqual.htmlVecWhichEqual.htmlVecWhichGreaterThan.htmlVecWhichInactive.htmlVecWhichLessThan.htmlVecZeroEntries.htmlVecs.htmlindex.htmlViewerPETSCVIEWERADIOS.htmlPETSCVIEWERADIOS2.htmlPETSCVIEWERASCII.htmlPETSCVIEWERBINARY.htmlPETSCVIEWERDRAW.htmlPETSCVIEWERHDF5.htmlPETSCVIEWERMATLAB.htmlPETSCVIEWERSOCKET.htmlPETSCVIEWERSTRING.htmlPETSCVIEWERVTK.htmlPETSC_VIEWER_BINARY_.htmlPETSC_VIEWER_BINARY_SELF.htmlPETSC_VIEWER_BINARY_WORLD.htmlPETSC_VIEWER_DRAW_.htmlPETSC_VIEWER_DRAW_SELF.htmlPETSC_VIEWER_DRAW_WORLD.htmlPETSC_VIEWER_HDF5_.htmlPETSC_VIEWER_MATLAB_.htmlPETSC_VIEWER_MATLAB_SELF.htmlPETSC_VIEWER_MATLAB_WORLD.htmlPETSC_VIEWER_SAWS_.htmlPETSC_VIEWER_SOCKET_.htmlPETSC_VIEWER_SOCKET_SELF.htmlPETSC_VIEWER_SOCKET_WORLD.htmlPETSC_VIEWER_STDERR_.htmlPETSC_VIEWER_STDERR_SELF.htmlPETSC_VIEWER_STDERR_WORLD.htmlPETSC_VIEWER_STDOUT_.htmlPETSC_VIEWER_STDOUT_SELF.htmlPETSC_VIEWER_STDOUT_WORLD.htmlPetscADIOSDataTypeToPetscDataType.htmlPetscDataTypeToADIOSDataType.htmlPetscDataTypeToHDF5DataType.htmlPetscHDF5DataTypeToPetscDataType.htmlPetscObjectViewSAWs.htmlPetscOptionsGetViewer.htmlPetscOptionsGetViewerOff.htmlPetscOptionsHelpPrintedCheck.htmlPetscOptionsHelpPrintedCreate.htmlPetscOptionsPopGetViewerOff.htmlPetscOptionsPushGetViewerOff.htmlPetscSocketEstablish.htmlPetscSocketListen.htmlPetscSocketOpen.htmlPetscSysFinalizePackage.htmlPetscSysInitializePackage.htmlPetscViewer.htmlPetscViewerADIOS2Open.htmlPetscViewerADIOSOpen.htmlPetscViewerASCIIAddTab.htmlPetscViewerASCIIGetPointer.htmlPetscViewerASCIIGetStderr.htmlPetscViewerASCIIGetStdout.htmlPetscViewerASCIIGetTab.htmlPetscViewerASCIIOpen.htmlPetscViewerASCIIOpenWithFILE.htmlPetscViewerASCIIPopSynchronized.htmlPetscViewerASCIIPopTab.htmlPetscViewerASCIIPrintf.htmlPetscViewerASCIIPushSynchronized.htmlPetscViewerASCIIPushTab.htmlPetscViewerASCIIRead.htmlPetscViewerASCIISetTab.htmlPetscViewerASCIISubtractTab.htmlPetscViewerASCIISynchronizedPrintf.htmlPetscViewerASCIIUseTabs.htmlPetscViewerAndFormatCreate.htmlPetscViewerAndFormatDestroy.htmlPetscViewerAppendOptionsPrefix.htmlPetscViewerBinaryAddMPIIOOffset.htmlPetscViewerBinaryGetDescriptor.htmlPetscViewerBinaryGetFlowControl.htmlPetscViewerBinaryGetInfoPointer.htmlPetscViewerBinaryGetMPIIODescriptor.htmlPetscViewerBinaryGetMPIIOOffset.htmlPetscViewerBinaryGetSkipHeader.htmlPetscViewerBinaryGetSkipInfo.htmlPetscViewerBinaryGetSkipOptions.htmlPetscViewerBinaryGetUseMPIIO.htmlPetscViewerBinaryOpen.htmlPetscViewerBinaryRead.htmlPetscViewerBinaryReadStringArray.htmlPetscViewerBinarySetFlowControl.htmlPetscViewerBinarySetSkipHeader.htmlPetscViewerBinarySetSkipInfo.htmlPetscViewerBinarySetSkipOptions.htmlPetscViewerBinarySetUseMPIIO.htmlPetscViewerBinarySkipInfo.htmlPetscViewerBinaryWrite.htmlPetscViewerBinaryWriteStringArray.htmlPetscViewerCheckReadable.htmlPetscViewerCheckWritable.htmlPetscViewerCreate.htmlPetscViewerDestroy.htmlPetscViewerDrawBaseAdd.htmlPetscViewerDrawBaseSet.htmlPetscViewerDrawClear.htmlPetscViewerDrawGetBounds.htmlPetscViewerDrawGetDraw.htmlPetscViewerDrawGetDrawAxis.htmlPetscViewerDrawGetDrawLG.htmlPetscViewerDrawGetHold.htmlPetscViewerDrawGetPause.htmlPetscViewerDrawOpen.htmlPetscViewerDrawSetBounds.htmlPetscViewerDrawSetHold.htmlPetscViewerDrawSetPause.htmlPetscViewerFileGetMode.htmlPetscViewerFileGetName.htmlPetscViewerFileSetMode.htmlPetscViewerFileSetName.htmlPetscViewerFinalizePackage.htmlPetscViewerFlush.htmlPetscViewerFormat.htmlPetscViewerGLVisOpen.htmlPetscViewerGLVisSetFields.htmlPetscViewerGLVisSetPrecision.htmlPetscViewerGLVisSetSnapId.htmlPetscViewerGLVisType.htmlPetscViewerGetOptionsPrefix.htmlPetscViewerGetSubViewer.htmlPetscViewerGetType.htmlPetscViewerHDF5GetAIJNames.htmlPetscViewerHDF5GetBaseDimension2.htmlPetscViewerHDF5GetFileId.htmlPetscViewerHDF5GetGroup.htmlPetscViewerHDF5GetSPOutput.htmlPetscViewerHDF5GetTimestep.htmlPetscViewerHDF5HasAttribute.htmlPetscViewerHDF5HasGroup.htmlPetscViewerHDF5HasObject.htmlPetscViewerHDF5HasObjectAttribute.htmlPetscViewerHDF5IncrementTimestep.htmlPetscViewerHDF5Open.htmlPetscViewerHDF5OpenGroup.htmlPetscViewerHDF5PopGroup.htmlPetscViewerHDF5PushGroup.htmlPetscViewerHDF5ReadAttribute.htmlPetscViewerHDF5ReadObjectAttribute.htmlPetscViewerHDF5SetAIJNames.htmlPetscViewerHDF5SetBaseDimension2.htmlPetscViewerHDF5SetSPOutput.htmlPetscViewerHDF5SetTimestep.htmlPetscViewerHDF5WriteAttribute.htmlPetscViewerHDF5WriteObjectAttribute.htmlPetscViewerInitializePackage.htmlPetscViewerMathematicaClearName.htmlPetscViewerMathematicaFinalizePackage.htmlPetscViewerMathematicaGetLink.htmlPetscViewerMathematicaGetName.htmlPetscViewerMathematicaGetVector.htmlPetscViewerMathematicaInitializePackage.htmlPetscViewerMathematicaOpen.htmlPetscViewerMathematicaPutVector.htmlPetscViewerMathematicaSetName.htmlPetscViewerMathematicaSkipPackets.htmlPetscViewerMatlabGetArray.htmlPetscViewerMatlabOpen.htmlPetscViewerMatlabPutArray.htmlPetscViewerPopFormat.htmlPetscViewerPushFormat.htmlPetscViewerRead.htmlPetscViewerReadable.htmlPetscViewerRegister.htmlPetscViewerRegisterAll.htmlPetscViewerRestoreSubViewer.htmlPetscViewerSAWsOpen.htmlPetscViewerSetFormat.htmlPetscViewerSetFromOptions.htmlPetscViewerSetOptionsPrefix.htmlPetscViewerSetType.htmlPetscViewerSetUp.htmlPetscViewerSocketOpen.htmlPetscViewerSocketSetConnection.htmlPetscViewerStringOpen.htmlPetscViewerStringSPrintf.htmlPetscViewerStringSetString.htmlPetscViewerType.htmlPetscViewerVTKAddField.htmlPetscViewerVTKFWrite.htmlPetscViewerVTKGetDM.htmlPetscViewerVTKOpen.htmlPetscViewerVTKWriteFunction.htmlPetscViewerVUFlushDeferred.htmlPetscViewerVUGetPointer.htmlPetscViewerVUGetVecSeen.htmlPetscViewerVUPrintDeferred.htmlPetscViewerVUSetMode.htmlPetscViewerVUSetVecSeen.htmlPetscViewerView.htmlPetscViewerWritable.htmlPetscViewers.htmlPetscViewersCreate.htmlPetscViewersDestroy.htmlPetscViewersGetViewer.htmlindex.htmlconceptsadjoints.htmlao.htmlbags.htmlcomplex_numbers.htmldm.htmldmda.htmldmnetwork.htmlfortran90.htmlglobal_to_local_mappings.htmlhdf5.htmlhelmholtz_equation.htmlindex_sets.htmlintroduction_to_petsc.htmlis.htmlis_coloirng_types.htmlksp.htmlksp_solving_a_linear_system.htmllaplacian,_2d.htmllocal_to_global_mappings.htmllow_rank_correction.htmlmat,_schur_complement.htmlmat.htmlmathematical_functions.htmlmatnest.htmlmatrices.htmlmulticomponent.htmlmultigrid.htmlnormal_equations.htmloptimization.htmloptimization_using_adjoint_sensitivities.htmloptimization_using_adjoint_sensitivity_analysis.htmlpartitioning.htmlpc.htmlperiodic_boundary_conditions.htmlpetsc.htmlpetsc_snes_solver.htmlpetsc_ts_solver.htmlpetsclog.htmlprintf.htmlprinting.htmlprocess.htmlprofiling.htmlpseudo-timestepping.htmlsnes.htmlstride.htmltao.htmlts.htmlvecscatter.htmlvectors.htmlviewers.htmlhelp.htmlhtmlmapsingleindex.htmlnonlinearsolvertable.htmltao_manual.pdfpetsc-docLICENSE/usr/share/doc//usr/share/doc/petsc//usr/share/doc/petsc/changes//usr/share/doc/petsc/headers//usr/share/doc/petsc/manualpages//usr/share/doc/petsc/manualpages/AO//usr/share/doc/petsc/manualpages/Characteristic//usr/share/doc/petsc/manualpages/DM//usr/share/doc/petsc/manualpages/DMDA//usr/share/doc/petsc/manualpages/DMFOREST//usr/share/doc/petsc/manualpages/DMLABEL//usr/share/doc/petsc/manualpages/DMMOAB//usr/share/doc/petsc/manualpages/DMNetwork//usr/share/doc/petsc/manualpages/DMPATCH//usr/share/doc/petsc/manualpages/DMPLEX//usr/share/doc/petsc/manualpages/DMPRODUCT//usr/share/doc/petsc/manualpages/DMSTAG//usr/share/doc/petsc/manualpages/DMSWARM//usr/share/doc/petsc/manualpages/DT//usr/share/doc/petsc/manualpages/Draw//usr/share/doc/petsc/manualpages/IS//usr/share/doc/petsc/manualpages/KSP//usr/share/doc/petsc/manualpages/Mat//usr/share/doc/petsc/manualpages/MatFD//usr/share/doc/petsc/manualpages/MatOrderings//usr/share/doc/petsc/manualpages/PC//usr/share/doc/petsc/manualpages/PF//usr/share/doc/petsc/manualpages/PetscSF//usr/share/doc/petsc/manualpages/Profiling//usr/share/doc/petsc/manualpages/SNES//usr/share/doc/petsc/manualpages/SNESFAS//usr/share/doc/petsc/manualpages/Sensitivity//usr/share/doc/petsc/manualpages/Sys//usr/share/doc/petsc/manualpages/TS//usr/share/doc/petsc/manualpages/Tao//usr/share/doc/petsc/manualpages/TaoLineSearch//usr/share/doc/petsc/manualpages/Vec//usr/share/doc/petsc/manualpages/Viewer//usr/share/doc/petsc/manualpages/concepts//usr/share/licenses//usr/share/licenses/petsc-doc/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fasynchronous-unwind-tables -fstack-clash-protectiondrpmxz2aarch64-redhat-linux-gnudirectoryHTML document, ASCII textHTML document, UTF-8 Unicode textHTML document, ASCII text, with very long linesHTML document, UTF-8 Unicode text, with very long linesC source, ASCII text, with very long linesC source, ASCII textASCII texthttps://bugz.fedoraproject.org/petscutf-830717fa4fa475e63fced937925e8ed32f04d77523df6caeac9cb50393204ccf2?`7zXZ !#,r ]"k%f9 rFKFv7ِpz}GX_c8$ڝcxf? f|bt1OR[H:TqٟT2#Z]TY<ͤ2?^20l?htgZJH(t?X1+e. #ј7n:q}q ~im&>~`p9?ˬFTQ]7·+Ǿv u)x'yU?W~8}i3(ՅO F<,ۡ3:|r%utB9 . >[P8sA6#!^)>ʒf! \Om>ș8L%;͜]X)l*_<2i=(ѕ,8LJ[e%TKq| ٵʈ*SA"J:?/ta΀pϬ F8DQRAxXPO855+dTx6XRF2A͛f΀N(XÊoXJ&Kx¶'*v}PT7v*36Դ_Ci;JmrBj>Ppg+9lO' !/2ƹ h!8מ1`nC[: ]`| i-4,X,JggH`o߈q&z=a6{g#f)Q06 ȍ_O8lKsfR 0)RJG|jy1736W ("ٌթ >27}Y%=ihjr0\֋•H,GPfi#.r+h [oP3G]NLc֘*iW+:."3wN{ IKyXO6TQ!CՃ >GDtXKΚDk1nV2R%qQjA:R45ߓK|yR>oKжbzvW1sraY6ڀNP<6Z~x?$M}W`e#fkC{|O( 'yZ u|dW9 `n|/z>lc"Rz{xMl]nc%^KFeZ""zt _E3U/1LhxB#y5չWVrlj E *9pVI@j8]g:ZI_qvRwvcNU „ Da0 @bJDUfn#j&l;W<+5@sڞT'Ǔ~6eub}Wbn,сCzګTJ$%'+H6{marp >XYc9;Ѽ(h>RII7 gl8 [-LΞr(:Ma ~/cw(N _ x5EHU,aOm̛LK e&wAચW*T>=W:83[5K#1M 'OPH:+K<eVuq*pPţ(8̖,G'QfHHWUWe* g:^2_ kuf>{U//?|y_+ y)s`^ Eo=8ELz<s^iފxa @0SuYI'p#1}dwr΄z.6;H,nJέԣˊ6Ӡ6$E\uHvOJ+~jHܵMZA\S[Ι(ȎʡODru`h$!["vq>]|UDOD-јC+s:ù^6Wވkn>K6owW7~b ً֮&Ν?;lk8^.2Ud4;xndPlb?? ؍*QNW3`(152IJnajwU( BY(y b[9;ELi}k;뺴`&>+âѠv8ہ:KY^΢gy 7T>aP$6G?{ԘGW̔%6m%)._A>)k0Wr#/钅=|LL !wnA> kI(nx)'/ -]Zi欕R⤧zEn0ۖS>r EFYL5$iXC0kVX)L ᾦ=̫pFtF43 %{f>1}0Q2B%CŬqSCP\ u,J 9]>+2cL@AW #LJp}1Pu_Y2~1Ե\&̽bG"P]xݭgERϝF016>>\SVхr8}dryLٮy<TCϾ966hvtoXvQ^Cq.uNh}UXD.l\i ^6 mH8Z}>:]%kMn)!GSZߪHߞ*@<,YE/Nุjs Es1uts!+\j-.BUq̳s23+\dhyy?Z ۏ3}gm.J!sEdTT{UkY.(19khh؆%־?+KXV۩]~&4y *\?AaF 2Ze5"RergX\\q|f/dRK̑>QX ld4fAwc*t|7hJϗBO*3H'V[Aѥ ǿdq?{fj 1q7Us/&Yc/˓Ο\^xQT)N:CtmQ І*L( ʂ~ihc AҊe3o 9=f<8"d6F2wWԌFrYV2Y5\,WFdGCOiWVv5ŧ^h/J0-5nn6"~1ZQy@*q% \P:}29iMެCA#H]Z##[Ye`#%աhk \DL+w64O7HsJ^Q@B+n}70*;?%ZٹQn D쳣f2KZ}͚oۮdOn#`HayccW+KZ|B?k@ x~QB{BPqPfde++ 9^FC{~VY_m1,l^ȟà8Bf"jჟ﹓e1\(kÑx('ަ$3&&[خ*>nEzsԭq@ h!G`ja j߲ˮ0u͠0{HQoFՕ.3tPQUrB0:H+gZrƝvA`¾؍@ b`=)i^5aY=Kc2>fĘͧEKW͊]0>NS0,QdʮhQd M| sc };'nULore.)K"@:ņUXRT L ʥ7<kpkgnVki+&YLZ.y,PZd6n@ĥꯥ.}}7rj KũǪv|w#3zJ ooM ;?jYHjntY5=hZ^OE$cdȫ!I%|~EAUv=']aF񟁃FЈ/%]P k҄ILD#-^s3|_Wȩcza|GՕcdnߛ=g>f{\n`jz-VA7X>\)J֓8ԇԖTa}a.kDFqT8>pen*;WsW:żd3îZnAh` ؊1s\+GUƭT59p+)gD2$B(,VCW9dPz 7'L7yu8 yXV]U w3 YwtFH~sMi[=BsdV0X|7^ 2zS$会~vu(9aZTQ='* 袑b@_4m$5/5=)m*I@/u\ʊsI_` +HZ@Ve c-c\U~o{~ <>3N :T# aWhťuΞcfrA-~6T+ ;puWZdQh:d-H/?u,s(0pXa^0p^ ybnoɟ$?2KW~5AG 4a}O Է**39We$ FҶ'~~V6gQIT߈n֘ӽ8Q;NJi V_j!Z&whӎ h6&dNkehv"ݱ_f'W6󃷷k7$pG6k U˅ľ% )CZY}*c8i" ¹]0AT]V6d9q2Gt(hۂlh?GW[dX N }11(Zz?}&߇oܙ[๾Z%Cn`r$Vuh+zm"ϒ%s#<:t0q } A3umJe8mMJwRnGa:hQ@[ர K;yC(Q,4GUZR µ@=)sU🔢I3qEdڟU[ $ eA߸V{p&u4m4:9# D@@ҫD=.*cCH ^gvIK' \Pc ā\jFXfX"G=_ F47sCm9y6PQ#'Y_M~Ha1]y(7ذ0/Qnב-+z] 0xGUHCp F/" 9K`6,ˋuE %VBY^O\Ft-2 6ohiv|Pf1ؗ4-#"u;,V }*Ypd%?_dinq_+o| /pE7 Zfγw MD-jQZ`ۮ[v1^>C69ڜ%3zcEnF"YKU/ XB9@3bk- ^TG- $ cz^3m`g_EhRpNdEp8Si70uP Aʢ;J lٛCSUceWv͗ uv+J S7.۽5M+ bCe{u"(rv)|WK'^ѱ¦3_aAV3 4iӮve.w8r4Y:"4PW$wA$Q+!*Ũ7)\;UiI_>Χ !Fj$S&xL;:8m֕%3˵ks1`u1hkNi肩c[@ A&ax[2Z4/nt£i4r36`Ԁrf7ow{@'y n TЇ/*D>՘ OKkcˌ*[ $4^ZZ4wQ/dsb8*#>! P[N&@ tRĜf݇eѩũv*uz2+D:Cxl,q[3^v6IjK2y41~ȏμ'ѓ%XbMS~R4!K QB:KB$<:7fё? u?R^, #+ۦ'F(afX&*%rɏY*m[Zj7O<$:X#1\P/‡ͱ1ȋZ?I%,$p 3ڎ9X׸Şl& u%ify\XHY본cm㩰Rp}Z4gzwݛ*BuVXaҀwx#c2[\,֠3r(]Fb߮]#r_M /Iꤻk@4H Qr L8@?ޅlc:؎hL*3I֌xm,kHh)g ;>첼hHBrtj&Z,q"v6$gu8-L[Cڀu:zVmqϾG*{DP*{O 񃒥obj I݂'Zb"&S\hA8lwSz mӬ66eAR3zk.lקdߴ!IŢԢM}κ?z)& l/]YbR)q[cK7&(-x&ηta#"#k6}Fup ݜu>SlrzCc޲g|5w9}Zc4ヌ߱}\5jDF=i=DΈ_5LwbJ?¶Td/`#M?ExXSQ $ hVF*= //-W"l=f,2A v@%OuO4f^` 6_9"[V5SYMOVbf #Ilf)2<(mQ Y@PG%gf s̒)(wpDzPƏ8JaRX2J_9u !-W:  + GzSz&.0>7 @73=&#I)P'ZuJwjw'Y1XѲAʝpWTfswË.9Mҵk8wURID.knMjy2 kh/Q*UT7H ViDccOWfd?{h H =^r<jmLmiL 3MD">Z\KiE$["-`w[dQMOHȑOUGAtlWѴSt:=eo,mMr (fk인 EacMX|6C^q%^3B(< hBx!(mWQ,yPڞl3ό%mZCDiT6)5LY O4"Bg=>_aqZIs)r+F"?K}%VI?1:񏲴G,j΁{TyIXxgL}4Wg ת!։(T W'~IPkuZvF;AJ`QAcMF8s$H˱#K'z6fn+5N1y9AnPeW,iζUT # jb:]3X륃_: Yc= v5"j6>v@D՟T@pGSEO[}vt݇m/nA#A9awWz '2[>o'Jxr2hږg!HU'}-'LՑ{AH;e {ܴH,kk06"␋_r،}vvOB1K#dP콆 42r`4.^82 >ɤ?fZ6OAD6S-1`CGA/X*zL2 QPJq"MD;X;0-l^*1ލh(v>tzϙΦz4lSWwy#{=o',%&zqrwQU/OkqI5Ev7%-?hAp0/MUb,z^ aʬNf<2, hv$$YިkD9'd*瑂3:q-̯eqrL.d[]wVn8wWV=QD[h@\>N!o,f;IEm侚`pL4_3ipC 8_A{yu8V|Z4$ n)Iqk-&dň-|t}§uo u/Uiq5_HʕA.#U.=j($,;z{;ι,HMyp|uF;T#tVf`J6}1bG(rpa}]0dʱ&sU,])yM>}tZk+>|g:? [e=Ph,;[CsF3E?‚ Q6OZm+ 8 )W-^G #p(6Ku Lx_Q\v_LF7Y [NYuWMCK3AA W#2=_ǣĎV SJ8l>ƮZk2iF6ukp*7m~>s\@.2@9̆rϠ367iAs0"{_6d|G/r ׈14]dscG_bBE6׀/Ee(n\J°)stD81G ꡫAd\,2r E sTgH*InE"MңAM=AnꄍY2@Y}r^uQQ(3ޛ63/AX$x2,CMYbJ1GK,㊴Nv&$R׆sԌ>wR#@""{{T@ spWm`yg'CRos66,)틝Hiv:B R!X4ȿG'}Z-2ŹH?cI,Zb[ېջ(:x}S ;Cw߬RZnbL[ ŏ cea zsNAι=d7 ?} ӜlaOXC_d~PVE^/Ǡ¢Su4=agz;2I4zW:~Pd z+b#tPGH%q2,o)~ٲ GGs8 dkFbjZhU|,(Ù\;sY`ַK5v#u2"ona&b,5ELslIAcmL\^8%=NIf2RVg$0}Rۄ 9t?ڳ8co7b qÓ }ff{ ^h Wfq:S[C*7CV].j+J!LalAz] Jlҍ_z9%e? c'4#"I}b<G;_Lh,Z ~f\Ac {)=4axȨoT.EC7 nz6J8ܛ8p͹L6ҡ-{9~ S'Ңlj#8?_ N0-r0#?4zj!a׉UI{lqJ:S A(6 oQ$s0Jb.\_.+f<3XHO@6ׄM Lw={pZ(O_ `Tnluu>CwEw2 /IBZ@^RIo2rԨM$&JO].캝 z zuVsGD1>L^(d@lU]Ռ}dLMOoV1eMxxdC3#U ^#dmI$ C0WfJVj>l=l|GqJ ,6&LjٱWnt4=0:٦3f^x1Y)Y#13+%я+b&*)͋pgDn {h0lQUկV8XbE*0L,&ԥ{%o24mw.(:'ʋl;{ϟLQ(60@TSm3I[1;NV)LH 2{uk@N{Shє=w*0{d"`ъOnr۲682GNgޑYC`춥r'>L?_"ٕP9Zʪ]0^UۋV1RElF[n ߬v *YأG%ջvrH7l+.^6:52rbvHT֋z*@AE"ur hiȢr9Cޞ-.6Ȏ i6 O:DПnr4F>=PW>`Z|qq3-+,P1nOā蓅ȈL,qcpvjCwEz/qSl0t(On6Q-mzec]E54ӝFVYA朰eR9DPDlJf4 {.3ae7?ҔRp]9l1J LtuI[ĀzX).KM \P1) Fi7ի%uaol9"?]ـMk8nʉ}RS,&;"߭a߹btpAlM6)5/~F?Oj/A85$B%͆i Xt$+?N:Ff_Qf!Lüwf+QE?T_կL:~koNsJ ڄ&tӍVmj%LScDVdnBԴʾWBHvruBD+XD!\hi'r>5N=͈"`G)*B+:;8IPpRE_{ ZJ+B#TSfˬPjIe4*42z5CYmI8M-ΒXĞq)}DrDcsݕF*f^~WbooJ-} ##yљv ľГp:p]}/f$Lm<Ɛ"1zha \­OwlLqj368e)9ྡྷ4Xt!|riyhWqF_i} 3o@!@卥2Amd??]S&7:/v\Xj$xoMoR^JVgx"MɁ)v {N (46(챵<׹/كDĂp_mC b5 #'jGY_ he`pç2#f~.y:nh&9ى'Տg0q"ne%*S|Ѿ v<-;c8-!|W"v6~wfp ݨSNtEz@GfnUʆ#žwALO?ֺjHưYt'TwHY\ eQk-:5Zu$ ]5 X_. QmB)rS/,VB FF N/D =Yd\Mq̰R TJ(ЀoWgau$&F 7ӉW *}:]aI}xXAmS.$G)X=c2yo|y-q*jB}Y CRkv⼙Ͷ^៖Id7oei{MXʲ¬He} ؅iF]ۧ7/QuLY;oY&jDH]%եʯ>Ԁ/΄;yWPí[5ɔ(ɊPKvٮBl;fdU׭= dZIklN[|+C+H#Sgo) )7 睌#ޭ1zZZXUw^jszodir31OvJHU4- sT4(z My^f>zI-v{na2]q>]Df*NڡqE Wd1WᏖ8؛p7]Gx{OOSq撥4s 2rdczcJ\,z/;/nM zuٳ Zm]%k4|R2j7iz^Rg x1u&f/>r.Ą}ܛt"!ѪV׬mI[ՀR+*H)uqA#%2$_VDNp]P;EȌт6;Їj4\4=(̃ xQk#@q1gg m5=
9lx· ˅1u=ߋ._]0k8v3G.p[[ƌ:rcFOD!IideKQ\m8b!OOt(vҦ|(ȔNHv#Ac'!&(M 53$K쬙0%/{\`3BQX]c hfZPJ Ee/{5pUC4iwǏE:'HU6`E37eyJU>eJ%U qah:1;,X=m%0Ɵ>9Srz³0&Q$ .C̡W&EXNOYU,phUH1kJD1bg)j:)ט[mơ!eBz~v/+$M]a X4*,r{OŞ s{!Hhhhqس@N1g E{CUțsq^qʦsU@FݫFԶC08'f#vqq>4 ",j}x #?/h=;&}ޓZo",)AؘJ!ŕ剤|.ҐFN/ϐ xt?Yzi$LlӞobW#=/RNF3 }zL#.S-jé kFp@>B&,ibkºdNi˝{@ieTآD\}5JTuFHVZZ"A%d9#3<==i1r}ƆZpVˊQazpԚS c$y`a5JРۣ_K+xd$~ד`CA,Aߡ鏮=`, QV$JScGf/ OC:]:c@K=jyP n<0l$%$-f|@Av e!Y. 8tWZ)l8['fyvmҪ4y/7jޡ~|D^.tNH((u&22N-~I?כ0uH\ѣ"i"2>mm 15=!,.K]xG 1b:~s43gL敠Jvj)ysٯ4K K+f/Lێzwt-otR8`zqDA"8DdՄ-Z NL{ބRk N?DŪ'| x'~!ֈЉ-"26趲AQ W{$3(i"J>+φEr͂ ۾| 0ꗌEI6X3p[b[Xe1-}. sdaG+,`TEc@tk\pƹ6W/NBBUGUT-^ (%^NjX.f$%C'MVw d7{&/˸ \Gw{I>I5s;2z7qy4J% @;_8oaQ*-(_'jYJ>_qm 7[' 4# `%56== fwŧݷv!r4,Qc?y[+a$9GrBC @|\ k?7+BN(%S- pBʠdsG-"V$VzQƂA(`pwsܔBrMD=:(f΁XFoշ|ːHI덥f<_u rh貶zً| bCjSN;'zz:Ǥ _/eJJloɌ@wXOJFjIrr6L+ӿwřV<+ X>( ],eC )赅$?'=[ۡa[dCoUOю&_R1B_M!mߝ%o4p9^ԭq WTӭp)Bh@ VRQY6/em5NV{E`kC|Vi (لS 'gVy&,)jiJY{12sNC+@msi2{A:=o˂nL3r GoL1Yឤ6܊pGM&96MG:X:-r]{/?l;cؓ.5A-΀Yt|~(ܤ1SӴTZ$1ѕƌn\+65]1X2:F I7Q֍mME#-QZg*_䍑ی?rkDy!8!hvB"x,Q<¨LNF:AJLp [mMV^0y*A5 a?)Et\1'FeEgoʢ}Ԇ8E.|lڛϭ IǦo'6 eS@YAF1SM#)u+/⶝PDuJnQG\]yq?BCQ(uM5Nl$"տjNW&]4N<$> HK?XTTm{ tX_բ& EE:nnkiK5s)Ge $5e3T-u %RAng8a\A vxVC)1Afq>^SHmDùm7ɇ P'?)-V6!yeYGb1z T㩤kP,bHϽQ瀷`+h_ {OBGORx?8}σ`?eXKqՀ`jݔl Q+rWE,1Ա%hڥ`ɑBWL@OK+RB͛5mt+NTV `Vw/lL-*iX]%KxQfJ.wC;w/](qZ8lLgnR,R]ak SK<9x 7Fɼ9Ww֪R\q*E2"G!>@.vLM$]U]ƙ/z^Ӻ_%[H1Dcc**rf F WUu7]oagDM֬?MWד{`*X*i"Z'R}'>e2/79u$`"*v*qrN`(]+ru9bIb-E@pҋ(JvdTEpDͶ;T SKV%"m]o0zy _qf|DKDcQ]-6{w::pۉe(QYX²FR>>?ɛiwDZ&yۯ̓Μ!yRNG1(ch\jes IvHβ-l3.g@S)kCz7B؛ Ƚ!P\SsGT:1Cyn3Zu$mTvո =Ֆ{ j鏣|oC6wTQSD.8cjpGut㪯B2"HzKG6 u;`bw;hNCމq'g,U_`l4"`opSA ɯ<=&؆zˁf NZG<(BDϱ}t|B ׳GGi~ - $ǘ@LE .hGVmWisiHB`eUm^üo(5qO4yдf7K^j&ءطZ챼{j~ ْ/l),G !|Ô*'e'T-rc[!HBnYl◻AǡAl4(EQ@ĵQl9r>bxU3 3wHqj˯P/Qe#aQ/40mK-36~4e^&t.MvQAKe DUc 3/gKTI^$L)A} UEܙ1XB룱s Yu >m9+pְh99O;%u.A?Xd|X@߱ rKϩɫh^0-bXi ޶ 埶r|hȼVr؉Fח"&@lNt&qZ"3 !$6ې0Ӄ.ћh8;Dn"!'>@%;+$}Ū((6\;̜iHU P_%I*rխ˩JF,6;J h$TpTB#;:|wR1Ն<O$ַ+1w9a Bߒ=2hmVn,u +91s?쐂|vCFTx Kd?"آ71 B)0CMRslJ`ޒ~>#]gE K!tXp2q-~'LҘļ@πZ_mQ,t-qAn_K3*ӴezHA^j4A J3eAI,R,#U?;߇a6϶tST~Wc^:QCt/0>Pa IY۷[bkdMW$QqPR:yG0vH@s9`F hc9H sDmX>0d+L`@OR4rKO e]鮕Inpx9l쨪qto5׋ȏ*BG"Lû)Db=lU'v2T&Qw(++f|4i$ds} ؔj'1R߰$PL! hT%f{zq0W!(5 僌 0.<[2t)<:]@ 6i㈘vjBg%AUBlqSSl%?"[`5TUc4(}ii.wCsЮV:)[f`c2ótO.xנFzbE8>v 5#8?YM\ bI.x0.lscw6 Q* Iu>EUjLK]S79R^ =lJ `̐e2[iJ MJm:W8~/qP@g>[;=dw&۩UH °a۷ v@O&YMG>;0QB@,jb 5P ROޕBt%gp0YTvr%BF۷=ITh]4`/Ft:AbaJXR} ސj%-4^M6jH&U?EM;=@̅r/s%U=e9¦޶X$n,S_2I^G'@eTTdFJ1 BRMm(̌1EvоS׳ۚ]SU`>@ @yLPi!OK ?z #]89Rx7G[Dվ_S._FpnAmK5\W]<6M=chC(C0nH)KvC"=F?H5 Foqɥ DKcl̓,)@׆WJP% ̡Gދg'͔_-^쓓BJ\x?Afϒ1k7)ʞYsڊ a&B9YUOQc \N<]GqIjV.QPuT=cKQ6_  #lqhP 2wt<%bu!&XWN>sk).C€ @,$8knU*ҵ{lM lywKh:[ÞR6M h`2><@S\-7G9k"60RU9Zm*0(U%t&e嚷ow*ra[25Rzi3::5tJN}r3AU}xc`G"(#?qcz_cѹ؄.|ʍV Jv&NH 5$Ez'>q~R-gz8)o?[E '-lM:kT)3`S EuR6 yzB/5}ޓ-*Yv䬈Q%t^byz)d{0 TPRf[7qje ㅬV[Rt %{3+[k&۳4Qg(*')j3 O!l̫؉uzfDQrJv+=ۤ7CL"BeHb!ƯM?d2o̺Z ŴE kjZ#n✔F6(:Om4Tf ${:׬l#'ʵ$ də|䃳+6?FKF̮|pFXo|V!c"Miǎ;1%.!UKޘ8iXԴX(RH*rgNxrrś[Rdzx]FM zܯ ?g=#se5zn0>=&\6qbjvz[o؉/. )OJtƨIL=,.j}2-z<{ꜬI4-w@(Z2t`eDU>_O3 -k]4|gT55nޱ$ g}%2GZ@Q6~_{!+*I'I L\IRo>7BƗEK&"{Aǎ׸N8d.㞩{ F6฻?ԬdΓ*lIrg]^lʆk$eLW'F7~ זzHPD;b=u6> FJ5 Kz`V)R6B>Sw_$ &:΀,J]ͩ[pEL uP+tQQ'U8*Yʗw_JPϙ̢ ]Py/`Cpjf 58K\4) Urn3uV{?W\l Vz3Ė>|'0:WAxIAFѦPtBpcH\:2I<{t14a?+AL=tĈjlteɉx@l)ս(RF?d٣n/[soL̍/T(Lrw؝͔buZ!#z)Xw3J5Nʘ_vr()`lBM|xFфTuRW`ԍ}|ޗiٯq)!e/V._W[u4Qq"u~Y[EC{N. 4 L4.s|Ajn/wT7s_txwC36Sb,v޵AgH~}Yr:~qQolx"w(F*#PHx*4وF(/<]L `S9%/|2,~d?E^.x&퍹VGw2*EsxXoX Q$Pf6%m˦& }X(VY Jc]}ߌ$rL> !6g׶ 48ޑ튑[%mz^+V`3t;PY~V*F z&GΫG(WRV0&+L!tm4N0KjtУ=c?(8Cdm$Hp( 11 )87Ay138rs$%mR|"]b/9EGU8"ù? oY'ʠB!V~h=luIUOX0ѹfl.ߡp&?QLxRйQ*OƚpےP@՘a?XA:lpUQn@M#I&v;^(Y~MC7 ; 5sj,Cn0H9&ʩek+S1Zz b;.H_sPArB_~^S)Jjl\v$XS ʪ^8qZ#ks;h>">l=W N\ /<-h,ZU^y2dlůw}fˠWKwH7Bة`9@[3t+Yџ;Q(!y y)NRCvacMyBw5z͵E5_I 0{ o#I KTM⳵3q:~aGREe!z.+?n[OMw%)H UtQ{KP!YlAN#i) !E2(tIAd;sEߊHKhaT[/O2`bXj!Z}G͊Dፈ5Ns Yq~2.A}wGAփ[e>w8r>n%Wk;W[)r "?@|pooD ?fmiI=~AAEX9V>mV=׋|kV{&& VG5mVKkѡ$/tDW*LM!jLS>bz~aPo^bv"m踫#gҹ70Ұܵydi'Gƥ_Y`G'ʜ8fl8RT"'PNnF~\|ZM|Yob]8{uD$e>[mL5Q9rʋ1_67vM Wq}e;8I@Z_F褣&RhqԯPfn! /fL/B<CUubwN;".vm1"LW ٪~@9tJ^GNcڱV4/O}dݱZ筭?vhﶝXq=FNwT`)>t|B[*zA$O&^p1V=׹+F/*:W9`G/Sy?| euײ!$7tvBjyVA)H%9'6y 0`)=&$n*QP{(7 ;gQ01H9#9_"w2Bw?OH9`R\[enk½BsWOY«.ld~{=A6%!wK/'``q}kh x%Ա#L$-g9qV,H&!%$QXrEQRg߸<u ,Ol,gcS9!ث&qʉW b>Ȅ0h/0֘NǪA&?T C8'#jfɸHOYr/@3o K8Lʌ 5K/: Jǐ,fCG}-JR|{VoVM>EAG$N:hs]ÚϏWֳ0e:6SVͼ6lgNe+jWZ￞eu\#fÁF|g^IN8O0t'=ˢ>@r[jI`CYDT1c'Ѻ\Ty+ k](\[?~juaԊADT؍K.TaQAlKi7Zi\- $'-_>m:T^{OǸ"PȅJxn5P;#zKgB_,d"~K>)ts+?I w*5W! !;o s{2E*ǁdFXEC tAjobXtN[tf]l%.tLK_o*o ߧ wK(T?ayG.< x.8SalTDi:ւwt1hh;"iXE-3(-h[epʯ*>#+(?EIⷤuHcy]́Nl ԏ>C-vɟ\mxJK֯򗅍"!Lo&֗+NMɞ4?dUx:~[ >r/'xPBs2n{I7NpyN&Č 6t/z-U5" Ap~>w7Ev-Jw5ko%2{s݊VM>j8yfS^~,<4R4Rf6\oÑ' 7UK}"PJpT; 0A`fy>[yyr2YXΚ4=A\Ͱ:+5Hz yX8s_17//ǠN 0)tp}ȅeH,5޽1 aV W^A7;6l+=[FrHTB~8 IwY9w$VnJSE&#k,SwȦf#/enR8b|+h(nJщɠeXB<33@sJx-V;Tf,~mЅQ9ȒJzA BNܦia2U =z '{N~l{V)6ZG&$M ySwn|;nS$67ZG̠ԹD)',,4@ܞ~<قb;%9fU?5f4FmJ.NXzIu{vm<)p)'J^\749ê!5todTozC"xFÙ% 3\KpM ;irY[p#"w噧K5mӤF|-۵v2x<1w ) ^" w6i',MgBri)oAOTbnYHa]n(5evc{ dk-я7sLtqkδ|k䠋awB@)q0L}fǐkRv# ī#%6ŕbG=h+/qLC W,JcxMhh/M=/6FA;ȉW%- \/@‹ aidƾ; 7pV~8I_jS  R.Nc@>?^B;mՋ7ɒ ? t4&L˒vZ~ΈNeU''{r3s+K+pc$UE}s?L?2ZsLrU7U,F(a*Csrk-]2D\2Bd=Mn Æmu'jR=uzڽFcC!jcُ 3#I/R_NՑ0 1/5nN?V8Zm㐒+B-#93^;R_DJR1/֡ Z!Hߏv{ U`bw`asdBf*a) ǃE/Dp1  MA׬'u,n9biiH3Nw$ty EyeTC a8fч wuͭ{ oEhUX (il8Pr%-kak6Cs[B*Ͱ|zDnxIJ]H'F]$!ܙnHrz楆{as31w[,B(4tԭ^çJFQLsa'Y#9ѩL/ 'c J*KPN.cG (f2Tq!hਕ'x.u'R]O#$g,!81ɻ #dHteߘ)u> F()t.'oDIH8 =4z tq@bIMOY/b樯ڟ<:WvDcH\a5= `ߦLʾ, e(_ aR}ȝrJ|{}Sf5NSI60s,]Ki3w.3wۀN0Աrƶ i7 ACItz d$-6-0Kɞ|JY?)u_-SH^^Ųz*AtF:T  hpPg1 ڤ+by" %$CO0CU#}ɨ+sfA҃y)u ;'zFVv T 3cK(-~y)p50¿Tq70(DԶn~zpzyN>GEZգ+l<.⽧L Xf eevoi|H.W8$켍= 8KGtT;-{ֻ ?s?\>CDlf͢C^5u aؐxl g_vwhD+2TC7֝UR|^r ~Xܞ4xA&KȴO1ְ-"oqW/>&7ͩ^6mw̸t3Xr͕q_I966:fY򰨎 dM"EUH7+-CFxJ4,?ܽY8;*bfp6K"JYjbdnFR=&%홭:qٵcP҅wPKZU[9c/ ֎u^u!ш5]͟a9_QɁekƳFcpWL+GAuS2< 2;c &xa$8O9nd5xWwUGʴZ# ޤt|#$ޡmuz X1!Z>;9 o_o4“־o᱉Եj0n `?1=2Vȫ}ou.Xb!_=t";̹@LE8'!ݖcT/-m%W S߹;hмj5{fivw(TܧKy.;Knna݄.ό[hU8VA_+^JsNKS<& Z>z3Gۘ18 i7?JِP4q\o]2 cVX:lj:=P)"ZTTn/ER/ũ唈{BNQZ|JRGRSJ9눧ʏA+~-IML" <{*I7Mf>rp7$L?|s4 ɤg Y)wTT8uB%:K2h>hSK|د:d5{:Ttҡ|-k9ެ3x ':K 2: S5]}f ms*U~>ghC 9_MތH1R~kI/  T!(GkJ|:\)ѩQ ~![Ij* ŝ&3nZÖfuylF:;+.jK}=8޺h?k 9+Y`\*\& *GAkeJ!lD9] x/@梠rAbLE,QTјLiӲ0zR,Me6Djꮪ M$ۤ^n 23BYSCţhuy7;1)a1k*C' SNXF% św;̬5 7s *W.3E")G8oRȉrk Uΰ-vΰaCN"F2P0Q\E@wlE$mT֔|e+}VpX7C VC7I…Do~!Icq)Fpw8##iHX{Bo0;kl)k2>$tT<V4b7 n4KSr^)0u)U#?ֺYjzTEzoU  QiQYޯ\ds:J(q)ΊFfYܗ5ǚ=T X1Kz_+K}Υli>-$~lcYM;DvAc,y+dc$+F+/hLyl.@7l@fLun6ߥY;fE qg_ ʩ3ԃyՀ;'VgM{fXL^o賭ucyG9:fOCPX#?",I_uY˵(ا~OLdGzqG W^񏮤_iUun6IMRٻX8(Acdľ/+&`.Y-eՃ%gMIf{P0qJHI12B&خF|^OPƚJ X)q\@^^vo&߽I^uƩJu+!A@,'$?%j,k`_7RԻ s|bwNG)?)F_Jhm'E<t08^, ;'AΒsEzJ:JnTȎV̂AS_ S}yN!+'ox$Aިb/*1q(8 h+>4X)lm<$Ts,$:]z叠6$uEf=\B81lrhpL.6OR72KT-A0W{*I@Eyʪsא4  ܔ$eƸ0F./pU\Yz&RG9^) )0kҌ7)cCziXߒ ᢩ.qapyKG?Sal,j=҇t.mdfߨ ys܌$3S~u+ A"K}^G~x/ik2N D!;A~Pj"rTpSF_Xj݇}aZTye5 W6ʺ>N6z^U~U_2k3Gi)JFǻy\+*^5{YCnڢ`7ߏYNAؑm,[>/O.3Rkn"2jSlC\1E-80P|r~m^' צ9,; 6!=F9zSpDclPq6=W-[Wh".NDѣYEIi1!rC_-asRU>Z↚ct&A⚊\lH_|qO8G%0<!ECǛ`ZqOcrB3FsApKqE_|1x wb0{Cʮv= { 4Va{]ٺ"~zơ/ATQ=S$HdUbv=u,n]BؙHD~c#Qeɯ增c?;LԈu{I a@6r1^@yi dr39N>sgSuT;[i>ay=Wl˞3)wc G=H1zFBe fuaۂ&&>]"zpMůۭlZl9}J4vJ`\̴ B56칽V?#C^iR&us!O8kC{as@3-\q8!*M-nq!xYܡ,ui?,qȩi^dfk "mam pBnt !QB%4 ά:~*ujSMo O6,P}yޔbTmk" xҫ ro5 ͭ[k3Hڍ9_L:|->~߁ԪDKC  9ᖚ֨7)D@o4 B/PJ(RI3檤}JmFhNoqWǒqPK W1 Z[8~E|32RoUAu..w'gWBƖVG,9tz\ف:պ _͊ JEw^@/H h%}GtĨ^.""]?\p^ Au^D}@#K .Ϭ;zn40vY&j"~8@d-f@#[ONi昵Y$hϙG%r:0Dho(O~3}%G"z˪%>Jp"Ns̓S!BMKqs yaJJ蟅"'͒-0ҠufASJ3Pg`ޘz#YTW#ʢ\wm=)`|RhݡN4JnLlY,ZE_} (>KgWjdچ5L^w'M$}sn/Ty)[.yW]SU檺D'os C9d x ̼ckt F'rgXGHpmtUT–}Rpa?2 ~6dh̀_ƞ`2 rG˶G LG5[B?1C~ XYCE,./[@Z>‘{qWҎR#L'\πB۵R᷎$H!0P8!l E+Ǝr_QCIt#+_4wh_ݙqb=h٢& 'Gܽ/Tw)cʙO%194>{;&u `q/p̦&|7l.3@̈m+Aԝpq߫(x[LpB5419pPObbćw$nyj30--OeJft;ʵP{8 A^Wj|nMŽɍCWݑ 6ۖ#yq0گ&~PnܨT!C),v@ (E""*ݶqg^akR; @-?,[Y;Q62CԪ SFb8}_EZ@c>x%w@W{} =W{27~Le KpU;h[ 89vǢ^{bʘ0^q(? 6vwQץ_: gm1zB.*-= wFi=!Tkk *e7u'WŨBюkOkO09/ͱhkŧ|Q6>Vʪ{Ӄbg]uiG0 Mec]BCk>Qgg;QnՋvP*`1Xt=Af@f RNGy:AlG/;z(^@['QiScvkv: fx;٢ǩ ) o2qg::jf.ߑ@M9s,ŽK[]* 'TۨqrlE7L5cdq\!_=9 b"gz<Մۃh"7{QoVHg?> ueSD&` _"F:vQH&mN)~߿[; v=g?pſ,L纵UOn?tdI=w =Sbi!ibHF"eϮ))_ R ^{?"hAqR=Zuu#fToր?l0th0bڸpϮFP[SNiy3UvM^"Dx zL~7NM66T`y䶬{ &^YَG@24zmϹ7Т6B2 h)eLjN}hƅ-?Kw-{#85I{4GFws13pmBԎ>viդ2GTcGg;YibXL #rnKUHluH{#%1tK bEB-*ܬU,0 k-\ێG[F% r!נ,Y7 ʵL:(7Ii΂A0y`W# ڤ5Z܄2 @GʠSu8GI9|g((%I!t%,@[?@ye P5*E,JhcPJ+t*=r7Hg7scM<7\9GَJ>rRͶI dsf&كs,PH0r{A-.*@?T b#zx缨|!r0Tӵh6љы\眖JdIOzxeLbWӃ!5%%~n*8݅bvcv) L(wB z>ʽtlʿд)yýr_bfN*^r#*R]G2Is 6.҆Y}r]DE@KM?KLA~3&`5;ۤ: P{} Dz9>MN]wb5AΒT*8=u/#mY 핧d`\;?53/f~dJ3_pU𖠜V_#'L,JN6}qWX`XRO:۠@YGu?-g-c_g'q-614a~_[<.n8L{Q.7EϙD?oI{NǖãiBBSʓZLi8K ʟPC0b?:2:ig\{q!D+H҂,G <?raWAZ+P rm^^15Iyؿ &i$t^"lx}X3B y7M S+JFFv@?i/IįI' o8X_\ܞ)H M0Ru,Ym6G~+W:c5dbI5! l'McѮe5;Ͽdb  ֪"BWU« ,Co_y0 Kkv-%5>q=1T`tAT ['W!ٰ~%H%K[B+}2QfwΉ sOLbTG{<,^Ok M/';7lIu\ 5QXhtWm黼;h^G8B[n]eaS*wv Ǥ "jf.Nx9_M|~LMz*1AGf&uxOKt&ृn($>"M~P/^,]'mw M)Gq+d7gY `z0g$lˁ֖N${WJ$òꏿ?Ӌb _+lsк*g(}_$Ja:&f5 y.)}٪ zH_n@J+@xe{" d9}x4_jJLܢR(G'h5\Kn0:VDžva!+ kf@gMMI>q`K19e μ%,*&JuŷO1 ]F_T?"v(>nǽ57Gd$MNjw?qA{&Eb~,Ԍ:E1[eptq͑>CIj sVwˣJG7/aʬڝK臮 WsSu_zۚb`ԦE?v?9n FUV] :zDq(VtB Psx'qagy3Ըy:M MC6hsZw jt!ѭ4>o[*}d]SMrmVZr WDn<'[''|9u'dŞR=F6@1NG&AORj 1 V 'rUˊqL~W ',1_@@6"hE^/$I$!ShdQtcw/|S_R5"Յ$Q碂H󁆭&&u_ (ʂDfB͟PX1 W[;@Jax FE.D'̣w Ɗi啋KT~faЌν?L S6\4( oindb(cdhD׀!;RXKep'JԽ@ct|QP#F_Y?{lu 4,N_hnJ 9K%#;*{EvyBuvVJOKT8d؄gg6,$Z:&B?3ZW BEHڸ%(߼PF@.@Y;@K7Pǿ٥YpTsFVfکH'AupOb,SDGKx$sHΨvhr0#TbӠ+,:'ؐJ՗`%I :CnUp253B~W?N􆮒1DŒ|UGҥ{ 1Iߪ'9K4~F3{WkeR Rq(|ͶV:@}F Ź1T6xaQل9qex熝1\=k\PZ4\iPfQUcf﷕DREO5N7H$XL/=̐rE~.Yh9{o*6{0'<s߈@ϓ`k횢͘) Ѣ|FQdVzکrie|^CpܮHkI.edK? $\&7Z/YU߻I۔iPYe~aϚ.L/[RmKr[7ټgEw)R#|| A)c(ۄSGybu[$F2m:c+aru7Xz~ju/QfJ" 1Vg.F-L1)Ju$V}LӁG6|kH\=`AIqvڷ#Y|:qL4l*/ pʓ(}tV06E*j蠈R¤>#[%Qrӛ#"U:tIU ~;эy_6@ N-Y0NW=cEc~u5 ̮$s__ʁs9+qMwRvSuw'"@!~z՚4ES?LAx0&x&絩O4JR6yۆ,% E\?XqTߓ5MxzM`A 3)G [j%3!L7$.KjG5(wlD0mũ*I҈D;'LcB=?rco[t*|t/*0ȝ QDe޼$E3P12hhc/M,$sFzNX[xpNjw= @{MD`h#=J沵-ZR)؟-wR' ЭIRcCJ/|Z>!ILo;m9@="ϜeIƟ_y\-ŬD7C>kTY&Ľ!c' A IF'Ws!<[ 0U/t,sl*sjY,XROlFOplǿ~C{QmbAλykͭή4F8-'uKx;'"s2J9͠AЩ[нpO妛D^]'tfD ⩓02s1-A%{*I/ͺx;::cF:aرgbЊ\k.XCnˉ/]{@~"$&JxRసDZMz1U|/}t#=D).Y7c9}✵1.c}:4fvɒa[=M@wкn k pC#);M]P&yXZm]V#VPen=qf9Il]mQxN9;XX|XxmN#G г!z#2ux0&ҿ7sk$H#.3_yx\YeFV<۞b`S`%B~u AbA›$~ ?.@LEyj %͌ )-= þ5bo`K`\~.?3X0Oԉ2BQpdnԒ[2-N;V0* %9Qp("*Z=M ofoO.^<\{&Z z2C)٣A& l(1FmZA'ef7}0XyK>1XR>Yay2]Nm}%8ZC_RZGq9m$&bJ ]{,'||#ԮԵan8j%N??h[b_]W&0e9+ W~U\&]6ū$p=D(f1^'돦OF RTudב}"G8 )f+! ,v.PG-dGDyRYc>·ur~g{ s\9dЧ lպJ?)ŋS8\?[ĸwILoJ~Æ +>1+'Cϼ`3;mf%{RO } Dtg j(XϪ gFZ!+6.S C}^ uı@~b4 VђWE,S1OG#â{5ݪ-/Ni8Lun2@Ļ[䎜 $T|GMT0{2}q!C{TTXG䯧M;:]B#27ub%ˍ\dQa(ʦ*Bw9̷*+ ~, Q=`w!<=c97tх䯱~jHt.GV.%٪-2T+MlΩ sNDC(8MOF!=/FFRVgb菚TuT3>EQ6nn)$ʡu qz-We0C~'ל7~BMAK ׊P [VjN(MqAö P0FGIZZ3w w?ir@.ή 2u2͵pcO1CNECABTZsh0*Ӫ 帾2Ӧ7J>LP*X+*ɅΜ:tfE)X ? 8cRUOz7֣kBMZͣæ{㎥7 K@AϤ@K/xD kڸ4S7&4yw¤)dmSW&[Z= iEiu˙%6h7H&}P/*P{S೉(xaV {Fʸ|:|2"M{d%=vxi"}Ϥɜ ox/7!PlQM]Znp\īpӊT-jʂ+܏LTy뷘xdqdrUXYZ;,(Eֺ\'~Z@:ӈj\[qv%Ǥgu-+ 1Ւ::]`]jX;pxk Qc|bBqpx(/Ydž4 $*[ud|;%dT5fA</u NP;֞>NyF&]Dk~[U2|#7_yJ?OREMlu<Ծ>/1-piicqWЊQ+$,BMMTjn-s^7l t1d-ayLn C,hq zPha)f1w?,|뭳2v 3H1sykz-M6/nOwQ%4DhX]86uZ+*F;n|i^pbڏTNVkj5!/X  ,*DK+:hynB$Y+8m4ѧ}"!3dZ϶eQ\blӣ&޳DG[@V?Uw |U#kaFљqv1:=^^8L+=qJ#w*` Rl(Qb";#L4Dd _GܤA9xq,y%zӔXn V84zQ̵b,d[ct`U(ɺ yO砣 X)|痦&`4.fQڛwVvM(xKjfCYCUioW0݌+:66UWW0؎1=Eh ZJ <hV f͘$rٝT3e= V Į13hfRj7q 2hAH zf.28)-$G lYKАV8*dOLFR ܻS4LZ{I;j! O U9F(>ሏ\]6#C W[ɬpUaτ)EG\iћ]ɷ}khGg:cXOǓA3$fML"QV'Cd ml`CV1G`̫)z:}-l*>p?Fw )ԄQ U>Ѭ:nAa.Rw]v, w|)y, !hj<$uys]$֖֙!)rNmIJd;S-*>-9K.I]w2 N-H|j Y()DE5~HE=,Bsk]lƜ,n Ę(iME,NEEPrMpL 3jq`}|Lskmb|`wV+|ŀBx V;owYL9Qٴ(~@ŒK ~ ȤN%ot MA|LD, e,hn=>Nu+: 15op=WF;=DeQI{ d`Y)Lv#->g1`2TeIQb6!')32`_4h7YA*Ț&]r*j[u⫯֪0 rEU4"byjzO4R0 ncde)Bãn Q1Do=m èy7qԭ#dh)<$TV?ԸuTb Tah9yGvL2XRJ6Fqg=]\y\9' 8؇)xI:;ZA?FY"\sc6{#AeB罰\@H `{i&0却Q87k$=<NKTp.2%##e *` 7/^1rNҽ!4Llb½W/ۤKW6 Uyi׻bMuAOa3YrYs н?|`}9:CiPzr`1,k+8* w-j_$,I9ՁƕJ?bGڜ&];ɫ^v[g&#@u w#O3I;/9[*+v<\i8T^[ Q0AQKƏsښ*/uՈ\r7Vy@gղ'yUm/<İpy;S<2ЂZ2O6o,[ZѠ0I7Rĸq1c~񎷈뒙"B9@$R\N !%L%i9v;;^'4s&6_]=p{0|{d}hVp 瘔"Xz:Dָv<h<Lt.2P7ivGz4 vٻPNAWY,8wq(i`i 3Zd0ΦȟR@-Z;KBռ5CGx>j6vq¶:xpvt@0~!Inv-[6steqDiC4r= UE/|ڤ1C5 i c`XW hԆ[/8|Fﱃ:n<p{ 0S'K<-V>=M?jKYthWC_[8HWmE9sm>2[2&9s?ߗшLIs#8F af=qTxuh?6CGFĩzY]Z,{G bI˿BmZhWE+3Qt6\`ds#bA+¯@ G i;S̘ fpyЈRdјNE,} ClˁsFnKWԻ?[A.6Xz+J6Sh8b 4 ؙ2{M3kD5"wL^=gn]U&p,! (AXM_[~SRQe}lIZ0+P> _fj\jRsнPv'i0ߐ ^OOcoFFJc}Ѓ ih!ȯj ~atyoznDǏ6#:k^6@Džb_JCUZ2vO\V[JukGN{z6o,硷d.3X/QIe8/0z%E=DEbv1(itO'KIjbd 3]CNtjr~kzcPϫTBCJB2^x^G^J?l .mwk@wB$^'҆rA.b)eի+=K/ւD>e:0G"io)c&N!:MiϾtv7_O!@c 07s G-Q>ek>O-\B҇e4N0m̋S@9.Ln1 +a̠65QihuJe0_:'NZ{AAԀES'#l$v ,4xrr9>/AP@> |8cIߑh5W>icN8p:.gfu2.g)g?Z .4eRo$E;5^|+O&Ԟ9DۿU|KN #3b*ƻ3gzxQyZQa&h #=R&(Q< h'ڱlW$^1@9iT'9zJgPf BxU~Ŏ!&d'B-n@W UqhMC75pUu}Z[Գœiׇw?_ čEifˍoԷ3q ezќq{*+ƾQ4dilrϱÉ\R0~&^~U2nH0V0sLau=Z5+qɰxUnfJ/lm&,Fi%ùv+։HǨeH+f&E dX 9%Ezn٪61W'V _ξN9rE\" 6/8X-ݜly !@]rdFWp*i'`UE/w4Y5s6`ٔ橌14_$iwi'jS/a3rS\9VpԯEK[f,}``ߨ*#/$NrdTVAF7-S{ 6!އ;SFI`6nH=n!`Bˤq"*,<1^m3Vլ|gPM%wb1vKnt_ "a%NF-нp_{?:#0\v=.1`,U^xy585z9K \ꂀm]R! wb͌y6%\_ 91|Pu|LM'`#rU;O3!.9hYg$ ^~;3elG k[)uͱ3ᵀkTE+աŮZ#,AY~ &(σ>({9kWN{M퀾(Dq4Y6MOdFrDݧԾ \aUh2j_ l[!<ifYtfcmטgre@Z~(B7%Oߍ"^vZ"ة;db@\DZ8%_IQ[ r1:'nhOnFy\"Fh4 F#B8{Oyړd8+QS׬x:dF %σc3UhŔ, 7 z_V,İGa/ma?M! ٔ>z+{W7Ag{s/n;, 3Vl#o2ΥD!+?Uww˫ k]}yQьuŚI ( 2L͕, 㢽a[8)?Ř>q #sv7ߓT'+&͒ORpnoɆ}%T_Wlu_+ɫ;y?PGnԷ]kdiT]>Hy|5D r\-]+mƣVq\\F2>s3/iVRiN_ksoGcO[H*QӀq' .}2jx9)Yu3JIU ^ \]C-MLCwcVK<.!Vh#٧|XMh e]1Zd p(mAWVE%@XϓZyS.$ M{WN-%F:܀|n/ 43WuW><՗UX?ȳ0%[DιrW-|M7C ئeljLB/շy;anqf7G;-tnI}~=uVNʴBW cO&REL]O!NegWhkog;|f?ޞY̅lVx@]u CqrG6Q> Le XEKL䍚lƫeI{=1(ͤbMinPY/֠UE=< [3:DIf뒀|d`lR/35? }'S rDo&MO b=4O]@>r 9l4̓wK ,K-yBr8VQ&/S1O6j.H >pٗ:bpjכ\Rw.峆Z$1~Ҧzl_ Oqt6UN͠*n4!t7>}0)b$Vd 2yyPkdbk\DًlKCohp'b $&5' 6GPp^IY 9I洭k1]qOQҘ!9}vӍ 8{{q-|)l;zT|ihx6(g~%iƴ| 8NV7 j#Lp&OBI52u<Njn(m+>u.+rݭ.]lpKӏY~}X8Js ׼?y7)^Xjgd2xZȫ)SyBzQŗ9s  += 5h qv󧊍‡qV]ؑ]aWDbttj4On`0z9nHٲ IE 9P**sj +e*wЂ*h~] }+$(ٙ+yj'r`[h02d]s~&\<'v1"GpQ*YZ^x Mshn;#{&K9}i ¾-tqq :+A 4RUKѱj86G+Qy2 ![凖%XͮP ŒM/}6 BbP*ßbCn >T,&Qa _pgw'DH[ә.!jy𩌯*Nn7ҟ_7C|S% ވ̮O٥ ҈k{ZCwֶH0W;Z &E,kG}~3?L >G :*Ah]F>4=zoPDxjJE/qoԌжN_25B .8#|5R GP(]x:=]!*܊o$k{J?Z ir`>ig~'Ÿj g࢈b|z/r h9ʤW7Ee=5" WɬC|`7`dF/T1XԽQqmNw}KwȆaihu(m: dJWD.b#ڪϝn]Aљz-&MO̿q+`jzINKBp}?-<8S4vE,j%k6ƃ`;8Aq'?!ֻUn},3|oT(ɝ A^o®NZ3'vMشrD pIYH`9[5? {3@6%tzX~U}6-7Ug<_sܨ,BpIEބiLTD(^'wxQsRVQ@Ξ_Pa NX$4д1om5urL7Q N'V=# ~}۴5JNJlDk:;tgY4Z$1]ikBr΀>-B j,VVG˃ C}|1eyͽ1U xf5M!!8]1CŰnG؃!KȤ_/M/1na W*5Zk -&zC)Fup?jV6mFR'#ߘ@B"ڼjCNc)G$CSMy԰X>7XI,wwiHxT}j%Î%gᴑ*<(Rl"{>(ߴW{aP}y[Tl#3Ho5h54E|pәD!#V!bIU?@} {ڦq/犜~ul8ȋ_{eTc;cl? iH8c򉆖V(؛c?.=ܚ@'27 C` _;7_`U{:BӠ Cs1ա7lgşS$LYG3b)JzZ䶛r 2$q=3S|T7TG:vO>zy\~=giKA3RR^P?M@̥^,@PU gD;&<_l籛,7K5y::ϏsH&\6=,>0۽QSSz⛜WA;e X9ԠەbPJz!TK<R{8goÒ0}a\gzɱMɞJ3  di Z ;!I>&Y-R\m}ҷǝE*Wd4K}Z4>"[ۘՔ1`opmw]+C(Y0dEQcJ $B?MrS|Xc {xbhH"HKQ#\BLMC^ hmEzφLX]_%j%mV{Xt *E`CMƼiQɝ.8bor ".tV ( ezf u4MSBcW+XETPVxU3#IAb! Fɗ&[R>j^s&6X 綡4uњvI<MRYZM3s+L¾7pG6`(v TPEER}>ԏ)9rlҞ;5Q+sT!i7+,5E9Eh='VeGfeЃ׶۳_\Tm5E=4 ęce|&_qG.8}$ \y͓,s"yIsf8z|> ݶv_ I [22yO|..pJG1)FBQQZ]6Rmn ;4٩taH%*BR|`D8O!"뷎7nLo7Ҹ9v'Z#7U$o9ڢ9&>Ni`+G/-M.ts ur#\|;8O~n5EzhIoa+P'ov? Hz", jw+7zcAm>;c }JPwJȻ%~myP2 ۃe\^ ~l [QH!|2Q g+G7l:5k͡6QƴKpnı)@ۙ48V!<6 v rbsGMQy^Uo7USI_d*8ܛ2ЋQ.kG@O{>rwlfK<) (T T&fcPV^=릾*&PW D/dnZe&g !ͷTcul<z'@)@wo5 shMx3zac'sa>pjb>Ѱu 40N /]@AbL̾iʨ<_ L58*`#= 2 "3ZQtBNxmhk(ZP兺f]"1Js:O;M=lbB>Ա̊N;+qEQדgT8HB Wd>工)Q Q"tY]\oTȴ} ZPT;Z#_D^03[?asDv4@o9^qZ'SBx_NbۿCpcE1vGOd"3Eo4=lI3i=d9By5 wcjHrszy5vFθ̇o bG3XIV .B>̃>Wk~gx79}AT~ A+R'l: 9i%Bw2 bמv7ly%mH!\ llQ߁UVǖ=Y8aǁ_Jtc1Yv\>FUNId묺Ⴊ+MHǛJ 0SM/ói.+ /g |L:*ةSD)Nm r@,oE>_m'R&Tf#,bX$T8K.ںEoz}([x+̼sK`Oum<Z®m`{TlgtEč˪j`V=8>4oK$ߐ??^=%ċI%nUːܪm]NvU?-7;|wCD^SJJ@e0L 86ViF#Aś&"^^ wX$!'2s'-B97qW’O LBb2\$xѮ$Kp*R7.KiHB֔(4mSƇ]qc# q`$ niC_-׼@x7GI6W,>}xvt6 XiXF2~L-_0΀ݥW(Pp޺InɓS.K=~l32dMֲc󘐺}YY7q7Bx|3J6ۮt:Y/U1e:wu餥W-N!^w=u! ^mcOfU}vX?'<x3h[2r Gxv1[h 84L ¨z+x"'\r?cƿڌ0 o赖i`)5$0lj ,_tCګ M+2R;!ʸ̃aQEO~K,P%Ga&8C|N`R6ϫwnV>0L.~_e,rVw7dqwRMH&t&ke e7&^!KLpqUu e/&Ѡ2Y-ĜpC٦!%dQT\yeȉQʅ4<"`Yi cʐ|#g8K]>{5jN'GS7ٴ䜁=uUZs8iѿeE3(ߗe$M -vF}%\L}ӿg2u|>.n=rN.gaC B\F[Vb/궥JD$ڒx ʐW]Y>lxc3;Bg=׼0 [6Рz S(w(8e}=,qKyjNWh#ieraCDávs97f |QnWmX׺ی<6L.~JZɯqU-B?7?j74* C+Ba|Qτ 1s׽ALŨ|#:lXV}oVsd7"MT>YdC/.N7sXJ>)Y+`8LPYƏ|P١4+7BbtE07m#p;ٯAѬQڙ*c~w7 ʝh-zLȘ*|lbs4;GԟWe4VaχU< %[_֘<bS>A}zV2*{ABe |7`‡伥ݮS@~o‡L#}KV'd*߳8Gc-LS]%/z'4x4" U#@cQZNnXy. :} Jg?#x~C*)J^uo h >pRݍ{Ue(?OqZ6I MY bEH2S_y6dÇ YwxV N+/?^Ӿ RL,C3{LxDm _{&@WOSg6~dq" Bz{8c M~B!lIeS+'p\&σ%0v\԰6f 󬋒Y!&ĀȢ;:S9\0Kљ٧Gt%YHED&% ٝ8tcCaT7c՜&m?=Cpea&kM@UsCMq e V英OID=^-kڮˮ#'Bࣲ.sJ)\|~/bw+zO\I+ cN䇾8@= /K5ܲ41S['Yoy"=EWd*'͝(Iz8^$/x?by/h]2Ў;pY܇~'~*uKIG*=xe-AhuDH鏫x+$Gi)R>}tU8ת#NfՙLPK2l0.P~!B$>\O:'loDz-;{V=f C`~>pF1;ݴLG BuNxLKQ¢pjb~#eQ``6=@Z{ pٺ&7Ώ2G~zHrkT$eBFV|abt{o.Ax6ą搼K_(C:{@9Tw>SzaEH#[O\,r {4̆$8 ݔÔ7~wE֓2mTrN+@*Vw."Q AYU$2 qVU0z-n RVbR*%R`WFOdZ)Rh.Eaݛ:.[NRjĵʯ 42fxP:N5()a8$ Uht^^69a潷}##ڞfp߼nܴ!3LSDmBA-t%}uN UXl+!8<< F^ eͳl!z{h -+afSH{ <t֨CHa dK,:[3a)ݛR&80 )e>2]ZTw"ox0fQnTBbwJ~g4sr*@fTMQ(pᰩ]evL lU~sӓ*axPl!ߎf7\Pn2oUܞ Tmt<(.Ŀ9;߄oEמ+uKh2OxڿfUϭ>bCZRu8tG;'jY@ ^؀<8O%j g^aiFE4NX6 $ۺFaǥ9ò12B,nԑpF^pDt6ri)A% 5&'I+KgW.ՠ|Y#1V\rz?PlZ K7c@&C"*6wސq"pf&kp] (x9M OO3Nb 嵋$nLMԟ>ub4M.4/Â'VgtOe>pz=bVsDitk\C PpRp=] kR'䉽m{.KMC(a{x▎ a@Zh+^E/9UiE`$"&:gCgڀ'FlԪ{֬tvi@&M{o|F^0^v~ocï3 Jy[MkuhVe:`p8q mn>b+ XZiCghtC>cFb]2v+]=|or.]ِdB(GكP 0V f4Ĺk@44yBU_H g:0x5vR!u.N,:1RhP4di̍MQ R%(;ρc .+XtY*[$ZY/>͇L |$ѤY hY`~2I$n+ d8N,UoJ;|m!NS?*&6M M #,ejQ!v8D\F? 9LrƳjq~A" |[]verӌ7rƥ%u1;$Vz ́%L3`@e`ɚYkN*?+Ƞ.k=SF0Gn[*АLg) 9?HY S<ube5#6H V勀#/F$=p1{TZ#9n_77ac ɼ;SͲaGt yuC16OI|=`MOeBrIz O '#joVv±bj?4"[r{rr΍;IM:騌s\ ^- t弎hB[tDG|k2˞i\:~f?s_ kj)\U9/$[ ca-GTW_dIh NXCƭɇp,R0zԤ>Q8> tpSL$xw;|'/Kc[iSF0raFNi jQ U^dOm=GY'e7/%W~eS^ bUJ䃴i)nJk:(*|F41Bq,eb]l\g1_W L:?ikA5svtu \ 2R-Gi0Et&_n8@+I_wc(>r77bnhtXe&U\k43O޺ܽH1n6LY5֐NNKNǨj?GK~ÒM\ _M"ѡ<_dKFt'ٌ̇4joywkTS{ 9'GxX}~~}pH_̩Z!..MTi=vy>y$&0/BzEe^e0 YpGI;;sKSHcgahvӖ[ٯnc7AvLh 2H-_XseꇳL5i׷n~3#$ xqr{r3Ì6O93pK^|ZX#,ն5Ź3qI[ZޚV$8dm;.Zf9cwėL4qFxdJUgXYW8a)LHzcZ[-9Kh;319:tD{SBL,/jKx![U `-v@IQ q$Xw48PV~!DJ3"P{MS:4f SX( ps;K2jYgj ٭`hLq:QcP%G|GC(أ5%7ܺ/f|c, gD!(1kh1gq$ML<^flCOOr{L*"9m>'StbX}!z(i˓ '=rIdt{莞ݰ3bB. x R.AnQ0ꪁEG%jk *8^†"2\6^}Ч {{꒖H蠥I|ƩJ)|nO /`|L靘ԶjuK$|6pVrJP`{@3),u*rfs"nsV1WO/] w7q%2_r}fRmF9QʪVt4jzR&|2vgl`)Eg'NF+m_ "AH>aӅ}rh3-$R2A_Ah[F"DXrv+v&r{jr!gn|_T @x1Dmx%s>>A_Gn+XRlךqwv X *֏(94cLdJK#WBVCȐNrJ JpLr\[WvCymD7Jwī^"g<`3{ݐMܰ *T !y&,U3,̀MM ӷߒ@\Yo@#c !lʩaLut氝-Sg6Uˤ u .dy5Þ`1~ʪ}2Q}4w>-:!ǧ6DqP2cy_AE%(BFQJ'=%hFas{r'+q^†5FO]<4Af1.MqsRŁ> (tɥRQ* B ]˪3X3X3:ke5p>3PAmcMZ"Źl= ;n#hA^15G6ކٝh=$+K>I煅2#ЯDԓ br;Y#$2/_) u>#݂tqt0:ע@l,I^_m{E+d."SO:P$H g_AOa yrHKj&㧳'|ցwiz;8?_p_eۡӄ뿦=< FQmۻRATvQ V[|ʾq+*3nsl3 #l[?O B,)1KK3~ԜLi5(-!QhL5oޖR[ o '^XtĔSrMd$UҞX2+t)wI 1W>:b/pG(3W#Th8Clb%ɐw%3S::B,Xo`:!s赧ړ}V'Kl|E&*³SY<[nǥbuG>MVMdkR Trq<&* m邮uiq`OȂTN/]tXfw>8$>Q0 .ț׀, diϠl'\کĖ["<Ѝ?T4@ƔpD+@A^YDp--n&Y&U&Ӿא #$ZZϐ㌐$TyU>^:@0u]J >.6D;i̸`E2:Yk=yG |N%FU_)kwjp)*u+#$oRײ/wϻkwbXuRB7-7GS*s{U , gdLaŔ?WiUFby' Óz&O$"~8%TH[)#VlvOD DFi^w%ӥBS.eɎ³ Jc= 4KJ&d J*W*om*cyW(VϿd&j{o7\_p8G=*Jx|?0 xpAə9ҧͽNN$ީ;E̚GFӖDՖ/ 3:@k=b7IǷ@h%_4 E;ғz[58(Qn_,(-^ud++S;șu wLC/7oGGzBSހ oN^.)&dyvAe T5PS3 T35k}f!OUS{Ո$tJR87G_(T) lO(+y*LI$9>ް*s H5c›\?KPI;=}hs>%Z_t/0U.+LB:lPTHD 㺍'58g iDth7ie̤q 3ayL+@s>{"j5+֊kU0ibTm!G}D5nC.$[*7qh훎hU"wΖ#nTj$vi~m>_6<ײ){Yc.Lb#O݆!/ֽ*3~,֦^) 3aRqb 27 ֿ{k5sbJn}HvEo'9; b%%oۦЃ =lJn1< WcΕҰxDܱ [4n|iR qHӈOiUfaպo Z+߸ +eI,ғ bӅ~Kqvn?ݼ6Lx8Aɠ0̂"ߨ[MwC՛/Ҥ t.?G2 ⎧WFN"XK*q|\(ߌ;,D 3!ÉNYF A1*`琕9µTh3`22_υ%2uY_E1)-u>1"'*‚QX$ :;8v0e<l];ې[ha~ ftRS ڲTT"8Bz 9ЧŪ+DߘvlE .:PS8-Mvlwu!'{%3'q٪+s%Z(:Ȁbd_Ac4^GK82/ ǽAD޺uzw`ϡfʶ-x M1?-rFM?ݐ.+x [e`X`.P07ʊ$娆!FqV;΅͂a_ݥke-]YlE9+ѷeitr q~_*F+e s9 ^6V~Q7Oؓe&9.n &w}e] "K 'G@P)EaThӥ>xpм6|c"Vþ)[0~F|3#M^ yfO-AZ-3<؜MɵF Ux@Nm[U?wɪŃO&3g$_(\qn< D',(UYП=hԐ:F~]/Dd ^CKt(?ձNj3泚/3*q|=ZgR/v( -Ȱ2,=ϑ {THHnA_:nLDQ *7q-h\ f0[IJ/Zg%әO$M\lp(?]U̦0+if7՝ƌh( v'jpP0rQlGFؿÂ9Pu~@Z7R?<'@keC~{Nď? {1@-AM|/W?eEYfʹg{eKK͍(toF"\ot/ 4)d ~N>;GعkB| ~G+D->Z)D}iV䌄DT1f9Yu_L`x .Pf(4ZHL"ng7l6CWd:h!:[#dDC#솼njOvtw1!BpغQuAo)"2P1̅I+( AF nœG;>'wW)2Ag!!vMࠧx'?u>#.&9^dO|6T+j_MU݋+4琗r#`$`I`4bx˲9Ɲ0D7T&^?d~;>- *8M pDڼ/_ AW΋5yn.3;D4ز)PH2~Xb+ƉzNv$Ld& FX͊v"Y`MV\\%ug }nЂ,) eE񈚑hL3Mbz0p&njc7*WG#鰁tB$/BEj~}Flㅅ%UɎh`CA!5+]8"6L[Ӓ w~(]̓y炭mqV ЏFkHR\I)Jws OݤnGeo}DR2$"Y=P=o1բcґX;rs3up,h6Ș &ؘmaqBg#į?mMZJXIkf8~\iΧ'H]RcwKY<ŝdXn.@keN>Y=~\Q6(He“(S~Ws? >(uGGcw rfV&U|曢jL :uUnh|$z"|(ubrF۴U 'n=ch*㻚ڪIʒ?(D(G[i!T;v']O~dzM7Ahگg[uD6*]aW,h9r|Lvge] ~ՏȌ˭(6sU)8XRcj^_{[t*z&7I]p?İ3JO8ޞe[y:wbk\Tሿ+ڡswV { /j2{ŴCKT+8xk]6i`X4/3Fч8ɱ,HsA8AYO*Xw*C\X2: {N< "D'(Sʞ!3n6r0[i5QWZba-*^lkyenLoՀbgI2p) de[R1iJ'zq_ "o+S3boeԲ.j')"3=Z35^ߎRE@DwЋ<"ـ@t Z3c>4=HD?,sVV͂GlOEU셀zG_qahځc=&2nRJ'@+h t?f{hX$D+!E'C52d5#T C7YH42+AjmMmnJv$i-ʹ,}6Yg j0SORbbV m3|pL.S;5>Cŏ9XϻpL z>۬*@DĦo2gVY\a+I"dg>\Y(K([tˇ2)D8/KS1V?@eƳFsκiXɵ@=V[5FaCC1 9coFϓ~v#~t;*ɿM)2['YsAc*K-3ޕ_ !Z8h`\GF /s7T`T>O T2g)1(N8MRw^Ase]r8FY)n"=Dr9L9yW:m[G  &`'kJW>N8`E&TI-{e5ݑ|=NϽRdId>KDi:vXdYdSr*©n/2rZitЁW1MG?M %DƼQU劃.׼d=9MeBH,Mb?'rƵ(' Xp|)aSfe,O }jhdRrlV}ӳ+leyFΚQJ ܅4QMqs`g.wvla1k&%but-|'h6LlU?P"-g#a-]6k>#8͎aLjQnvruvwOȯ/MzD4}ɬMZ(f"&*vN oq7by|3Aa(d)o V]yu<)OKӆV Ο%H1ӯ/mrf}f"^ʌEFG,7X"u;Nbz;ŀB뚋Qg-W&[zs.b0p?iJjLϕEN@:x?6inۃ᭨ql[nTyTíH zg (MW1GdqkS=m02I}`T1)|Zm8vmKMl?jF}eFJBE!ݤ ;d)\񌫷Nœt\@6C7<2^BxW5L|v3X 8 EMƋƀe뱽Aل8p9͙.7WTc7*p| E-/2.7_;^?Yz5x۹&)4VOS¹kbK~JKӎsĉv'6_3Ar-2Eb8,-$I Da(b rZfW4Hk͡3$a~2cC?맡Y]>id'՞Z/q☐Gf216xfG2ŷ&c~o{',\"Q^E"2F -c4(ԁ# vkQؒ](i)Sՠt>H C_FS[je Iw<5ͯry+N] Hw vJ J $8IvPC+ӆ`8`}|87JcRFZM#Պc?/}?IAIPqɴmgfGqPӼQT ңIZG6ؤ7fsJF|&Oqe]Kd21vrPSKl msh+zo0v^+kn!Ot3LwZ2&o0c( SLt8zGc7iK&"5~,ey)J]ǩi[SC!4Xoܷ{2 Q!+v8d]u1٩/P8^eėUG7*Ʋs~LZѩ191rLQ*,f@ 3y>w#k)/g;3:L6ZbeЖ_YXU\l>z | </ 7ԹVe$Ѕ>C";eJPÙ}fV0ăgl w]AJa+1qjg>;VAm3m}5U@6#rP#E\G cת+$ HF\Exx,)Z<΢CuBUC 7Y>̓/ PWKLFr?[<}~{_~:-M=lj6}%SgG,DˁlC[)cC>;8LRq"f*%d;IP>VK`LK|0HI!S;qj(9ɪP1'ΗX5 vW-;+S^L).Ӥ="j`Y;~K#sFNфb]:k^Z>SB#|]ק|c?l8B Fjdµk $'?WvXK6pi\n~-mZfel>'1<º!A\D%%cdH##H¡]ù\AX"<}{4^%?c$JFseە^ 1:R(vB]-r(A%"RCfG}Dvv, ҥ?r*GE|͐Ale dsI,Id:1S)7`LيA]F!A "V@aXRȁaHykЀFkGa$D<[#*wGΐh\ocB@(_*F&W[: C]%=x9pqɿm@T-Op>0_Ү˕\M ଍!{wxs[[X~6G3L*N1 i:)`r9zdAqZn8X1;=`ΐv8m<돁**5yZ m3?޿lz~]t]{1۶ސ%@>j|K1GS ʐ|:džv&5sB縏L)w.ňCl??vaGogAxB `FsY҂:JB~ OٰEE~]%V$b ޾ܪ쥩&z:BKE1%M(9fb %P?xfⳑГdc5^Q#߈ovcf7IB[ƞf)VE*kbco c<(t|V['8ʑG~!n+pC) 7k*q>7|ﰬFy#JIyRh6teEH[e:|‰[1p(D:ifjK-rVl9((fh*6{i !^M*$E5JE$ \`N{d|`2PU4j"v錎Y5v vuGݏ)SpNmuXs5:| +<gdV0~_ώM,&+/ᰊ{$-gU9'3#wQq(["BL+lى9F3 ]$1 6'X2Hpurȹ%⛘ r͊HiRp6HٱJ4W.0xM,g  ّ~4ҕ^pԋxQFb'J򓳱-=I|rЍ c]lF mIgـ%&o Xd@u1݇iKP+@ _!Y怹2U0|?K+TPi"~ fxUg] -9ٞ\ےOXM"V+ɺ>z]Gs.4ct7wp=?rn&Mpň~Ջ{UmTY=4ޫt%UHD4Yh>dKErHv싩8-+ z)bSЙm_1:N϶AX ,y q7 Giؾ60L{JXboMb^E?E$TՓ> \"% V5ˎ W>\i%_&!`H[r֊0+bګC;ۢ;m'Q3}$reD(ö$ sɜ~QgPaLΘv`HU`)BP?}X8LzN;Nj ˂4xEc^=F UpR+jsKd7 (N&*Le~W@:Ě&y[PyTWfj E(͠qJ9lg#HnwX/%AwE 66&͎ߵR3iR;Im-GPDW\BG[;YI/dP3'cUz[I ᑊPpJVyϷAc R><{̖x薔0=שZ}%< ~gINk$iȿJKMs w7wcT(:\ (6`u؋izl Vګl׽ ZAY46b#V"@ A洬}X[lSBFG2 >_1!kL,}7Q̀C*-ە{;eԆLkE7ieC0iZ)B`DsKswns =xWIi'(&g]ȐƴK6.KwChX&|dOy >EhĜyW;rMd+m(l Uao㳽z T=04ƃ9БIȲrBeX#F=oB{{BڜY{Pk3F'VօWng7 2E55%\HO([x}b}]%S_Ɗ+5ğzRF,p7AlZeE9q ō[\ ?C20utIMz0j^uE[?M0Qb:bQi3{Hq.|]a$ MV-oPF6{B:l7%*O)둊 Kf (Y8U,ny$À@Q;e{Voi`Y\NL(2 /1YD;j)3ZoWbbz:聖Sr[ԡִE"CjX\J=c~ ;erX[eEנbӪ^rP:`u!bezGq] aHntce=s?ϙ6[]ZYPotlilbR=#q.!q.]QD 0F5Ŧm$yF@=dRŃݳ1 +}N"{=tI[tL ,,UUc> џޡxRvNG7|e]qC^>ʌKPAe@P3R.]J5Dt8 A223I6 r Z>mNQRO $R~-%QD[M!q{<,!B4߅Ȥ׼sB%Pgqý1W\b8GIq(I*ed*Q/Е4@rt0% ȶϖ`^. ág nj{s#vڀmrrϓj+[ Ic ~Yw܄?kpBxglVH5A-#[HqXit{eQH\J< 5yo"9No-t_)(p n9*l]He_,B.M5. :;*72/VNx>َs2foB NQ0tMct_ΝlMn@|9Nc"DHzVR+ WVK73+ x։x~;80X7Q.1))匢Jt$pZ}ٛn$Ԉ[]gMۋ֛a9;sܵPg5$(/U&FNj!#dŏwxv~ k nU߫Ȇ9⧘C-)x G"$4;풎YlNDL1% pw>bN`UqOgт*%PO$AFѸ6tH— h#xk1G[q44Az'a>FgK +1SrҲVX˓N;%@M"d^h`C5JYǥ|L$cāf[h.3l_@ _Kz&XF\JRg= td ǎ2f5H*\`+[&VAH~8<tVUEtb}pY-I óp|ⱎx='b,w!]I{RZVС zo82mߨġn]KVVq7ҺGjEz"NB:*~3mTg4dk_KØ j`ƫlփ:ݧh2֛ $  t*?M$:{'.IҎW$çC3OQ=浨x{ Q ԃ R!X窐RqG1bch9ցKV^}Kmmdq-RQ.].B],h湪\B&{(i벉7k"@.Ц`v=&K+3p.E ,\~ n _ LaLɷW~ JMI?[4;~2pyBh4N\g~ygU]x }TI?fn4ͳwZ!ޑ-]9WNG  T>o) `M&=曾]6pUʼ*Sj5 6:oBX^c0xO,4ma)ϴ96D[ֆ۲}klau8\ qd c0Uvƅqqܔ]~}wuTQVNhn`mcid:H sÐ7јGUX5Xl~unpjfhEjCF7B)my,9&j}uA25#% :E9qțh"Dl^ > ==G/Uj#+=~J{J ;Ţ -4;6C% ox7cJ;95@_=Jԗ͙߭8 SF=PEl8Aꂐנ*EȮU/\T뭵 XqR WGp#z5Uɷ @kwgՔ0G9MK^ \YHO9XJ=.iHHJkôl<6,mB[S;A.ʭ_iDPiLW)` ^?;xd Mw?w Mp-hqkkX7|3V/W"$5@-Xlu2?HZ}lT&,Ư^3Éc5d۟Pg;xN./jAClѻ屵ڽN P)@Is .1 &-ɲ8ݐzVNL,~w!(j5'HĐDn? M4ފ^ÜT,[Q<D9$={Bð|QbU}#BKM79E1Ԯ]!$s K3kHEv3"DN`谭$zspPh(A>L S]̑s'7 jEClq\EldwKnz>yܱ Ǐ9Ke=u|!\>@"y٨Ы[`L>TPݷ!q(6)@]孌)]t\Agchm#D I=$Bg4UBj+l#  ({QCw"Nufo@Q &msSvbS['$d`7exq&xmLBK|)P wC*ʖ3QRBtKP=ʜ2Ŀtfi8 d D:}y;Xv\[@hB :R{{XDCL /+_"'$0zGuΚJh#^E]*"~l_ d, ~6H'&.v/6vÈ}dv4q>&K|]eh0쵾9lɿg$ݕ;MYe:z侙()P ;||S0_z?7~t)i(Z,vis[Kum9IJv*qٽZ6Cz1÷ \_ɧwB;lyF(]E6@ΞنUF[J.η&,2PC?o ~e"WL#0qM lmUi@>yi9FV *N`AfĂVFc}XS{np"lV.üu)0XK0pY 7uS]=".Haꄸ_=Jըt m )Cun$'}@B$_Z>ygYVu8$5_{wS5 phs}cCgrÉZjى4ɁxѼrk iKbS+=Sca$YHԅ~A2t@.I"ߒ$ ^tF0+)y(+N BEdDp 8lW_'+^+mzqZ*Hld.1WIGca~l$RĺhߣWq2'A*g'm>$3*iXfj}R9LG/&ॢfYtY" Ƭ7dmY2KjUS.20%' {U1[یcǢv' @4pu$!@u;m'Z=!ZdI6F=3@T AR^~}%vIAA8Xr˲ N6C&,oA{YB 8 ]9GBHx3|ZMT5'+c Uy EucCM3Ӗi2"du>RFD ]wGWK<[UQyQa7tQ-7 Q%;%l0"ȀzHCU-]WgVsg!qK4]_Qn/G9(&@hݖz/ k2Qؽ}ڋrqab*KxO=yZYVq )RMyvHӾbV;R7i+.v]$ܚƊnƺV`5f$$`;>&o C[UQC;qEiI-|/)s2s"7d%+>^Q R@0zg%Bxw+X $2*A_{uETEZЩjtJKهI5;V56awC6Ǥ267IiDNY}* EtOdKzٟ\u^}x#j#FIY2QGgXS'0M "kyN6BJD X㟅ojIV%O.c`Mrlq}އ9JIo>ϯ -(3(Gb-;F ;Y洛Lp E]iUFO\\PE 7"T™1Ďw mlU+EI#]J:תk"75%OI*@'r {d0\)+0-B)b0|;ydq6K!N[Z㲭{>7CSR}4;yfpFN#mho>a}_}vE4 _HZk/ZC:'"!dLLJ%6R4d8 n':5"Ӑk4{i{s j4mO C2>^ҫr=-H^K?>K(հC<>dOHjTAN<M;R*H !oQWUe0`^t!wAE5Y5 a*1@s XW})/~]G?M콒$؏`U^}G:wߜ#:R͞}"N-1x,Ү?&ij%.Fl hƮ!ug(_nd]6}~c+*//Q\L!5I|B[>J'n Z= L[+r5vLI?.Y =B픢5zXlo, 50W5kix\Ct񆑖F2Ճ3BlΘ7ϰbW X n0]r [0ƴ1Uej]C=. ט ( c5b/:"o*=X B"xPoɥZK3+>Ww bWYW.<= igk/^&*.)lP-,li4_8 D@*Zi*Nƻ wzJjm'& zC*?5W?n$WɃIht?͔8%sǦ>e}zou9~&=YtIKM2<_(DM7[ @{M 2q`\zYx>Hv寎SV`JV3c&џуX<ȳ 7qC^PA7f|:2ljLBY gX.Hj\f7zb{$+:P$-E.*= ;=gK] qK(kRWphF@"O[AJ@04u]fڥ HBMm 0Q(s刚SĘ9FUJQ,,ȠtC`lٹY|9#0<||^oZw=cH-4+$),/$\{dȘK*AjEEfIKm#( xUi[:4ƐհR;`Es_C{v)ҹȆHC# J0oʷnRPSRe=/Z.%V܄wtɎ ,p 3l]̌AqD s|3L{|I|0ge-[+'TB*u+mKN&k{>ŀiEa˥EVĥ26Al5ڠ̲n+1a s{9%yc/ ^F xz޾yTOi 5*Jϻ-Dq,ah5 8hb9൷vAQi\\p 6(RE^O[ʎ|>7v-+Yd%vr\#(6sb+UmBAw#4(^ 푝gT{YqRbЕhd0&;ojL_fVlyu5RZspnG2#gkK7b|5 I; k{,&u|$ Nd!b.j^?(\AY(VȧJ;_?iY9>?Gxo.( lU 0-e77s%M6goǂl;"{w1Pr/f7 EύRuol/eCHZ)mcio;WT_LCI&#K%n&֪՞1vDOH?c~dzs ;0crF6߉-Zbpv&i::v1hň!gcx`홚 IXNxH).(zՂHhƁa)Z Kr-9Dߟ NxJ]vA$x9T85WfJ6' {bWāhj6<:Dy2Sˣ2 NVh3<8z^CYg@qa@nw%H=8wZkм$ώ6𭉪_ziA=_ҹfm0ydbol&UI#;N0XN`EGTamEIK!s?V)FkLmEG8iIzYhԟx**DQ,#e +v3@C,MfTYUy3 2!;jH]D]^E\!8)X`wHEYW~ Y5ueb&֦=Z ០VW)4`A%JBV!S[Gk_๜oIkob \Zwq+cۼp/m$WaPEJ79{Kc'Wll| p`8YB㗣3RCgÝvS-6S,Sa=Gu}3Ѣ_+W[?vo9oiB +HԖ1^Unَۤ\5ՅE^HFx4o6طJ3N:;A-Z 8Qc yԷNGފ qدNQ?|VroU L$g{fWpn8Q5³H>p $+XQܷX~M*"XN:U.R8 `6Գݸ]T9AAWUa=<`=P{Ϥ94=u^ yVfX49ƞ9T2!#ܭzRO3 CW}W;am,IE8,]Fduv|HXOu^,#? `8IxZizSn?:'`.,7k?bD"'`?U_|`v3s̔iksl; e!uXQ!{dX>JSѐFؕ{9%^sAN3 *{Sx s, gW#T<wm⠣ov sO_f;>?(Y^^ֈvoٷa MCM_*F9|~9IȮY _^U<J:o_Sڋn)Sf6fB]1zBJoqx%sT%g`WҾWPՐo7deM@{r"JdϞ>Qe zm9a^k3K[GV-J ~l(, ذhᗥSRU$g|cCcD)u>fN-~ 9|+5ͧ VZaUҺ,(g}R==dS\_XGAPvypT͡)nHmAu&S,)7 ;Ӄ`{@~ ~29fZwP*MRx"2e?(G_ ;6.$3WC-ΦAN5E*T] C2UIu.;N۔D!3 }ajKf"u8Ոx Ljj\̈vQ]_OzZwc2#C\qĝy_<]'XAbަ}0ϪCB/S'=|qGzu'kF ~hh1ï{[9k)MU6l82ǔC@ bf1j&7#ȣE@"2=:b註y5Ɉc7C2rSؒk -7ܙ b~If[GzX|AU#b#66(Q=Yǹ37ī|`[}-oA4U%ln(4N4E)? H/\xFljE7~/P1ϜQF؛d~"N6 6bfcEܳ.CL?;0+{Hxe?ƇfɁp|!O%e>% `ђ$G~LB(Uue$yHx䪿[L~c呸9hBBnQv[*[3PPJ8~Gg޺$Qcؤhh| A ZTۺYx!?}^-xř$,;p ZzjiEO40ouArƞ!\FPv2w: X+ ʗf 43? 6֞ I-{bz*er1>>eYG9ۧFT>j5[QT~ yEo6+$oy&]w:`x]Ј4{Ig|Ge!.釮,1]ݠ8suiӂtm-}BojQ6cUnyi 1Ş ?{Ї >]:pNwPtB;kPdb n[jO'ڙ$&'_Ø%?wu\Mũ,Uw_==M \D=iJuRSf(9UFI7/x h -XяSilЂc#ci ."Uџ'm!13(w6\\sů*OSD O٪5#oG6(|`kO0u_= Q3{κ*&" ;͘ޠ&ܩNdzu&n pt6f )+j>9\<ļ*H4udA(jOs5-1A%Lf.fRܗ n'P͐~aS? [/}-%ɔYA^A XJufb~6CdY`wi6CU:̮oV:i-XJc5>bb}*1 3 )+ nI*Z#ie|57rqg9΋Ѭܢٖ"c+e5= 3hWhNq!QTq9檤zwWbkLomWξV*dz@i/aї4T}?@yÏm|4܅RXn3(֏os"C9 `_ G̱i4AIɓz-UQԙ5+m#xNV5ӌ(ŸK2ln-M ^ Vwµ/E<Ώ‰AL|.!]+RRVL|P:~h\ha 6kещ1\AtE1 ~9x*am/ǒ˱e}1gjgpAr,8$f-݅=FGOGm.(+8 6\:kHg!ui&n\SDFK}wб̨}`99EB, \Ygu1 @$zp OFVѧYl25j237!;Nт i=*T☆^E;ѕ K?M;-K)eYdܧ纚pD".)ߔILyo&ⴱ.Q05jG/ʧ5d $h,w"(5 =IB1. & E^Vj47q6æhRBSMf 0z}HžFFӋP:vG1ǽ`,X>n~ַGz3 CNնuEF8Q&/)@+)x[%<3؁' mtμL/*[2 X*(ӷ / xAcQ2=v|, $'8'WPc`¢b2 dMy,`gd5Xݟ?t1gp)kgtB6&Qn?(Gm/ /Dnۉ/lA*=&Z!N&4ѫ ʖ C BT6bԾ 5c'OI @vv@RfuJwx%M˱FYO=$PA)K J9%\7͟v$>'J[LgMDJ^v @^gyR| F+$P~zŀ܍yDdjVI8fn3(Lql“2u[ K ˆI`n@)< HG"b$ L/Jpx;egR^rÙr6_OasaoHDyS5ީ;Eɜ`6[ ݋ttsh($ݡnTw@)+ &b"&qj:g2։5.%irvx>II({5*[atMhn17_cHn)}G4pl)'S0eE˥ۈ}GLݣU )tS뀹*)ay|d_]a3fΟxp"ZР=Ik'J{;WYEr^hIgF<ͱXmifTJfo?EFajP'i.Zh(PiIO"dU]2=c GZ_p28 zn,>Ƣx3L+󣈹:(~]?qZhpK#VUs6E*Iy55OT.%wIgI̿]'mC9WHV6v`'o+YIɨv2hmG( wkȞ(ЄR&>ppNZ94E/Pq3N-Pg7 @0@"yK:9*!֖f _ҁJy}Lbbt]I{CY$ |-f}z*`'Yoh3.B[f8vRtVS@a?OUOeO Yf^٫7Q`k`fι'G=Dqh2l7&C!X9=Q2=\4k Y,gʻi)Y$^d fTB@xӂիkQo'7C;<(R{)!qզ=rZgW"T QxtHgoHcɗ_a!h4*38P.8ǪA\-LA{yICˇd=!mNE=WF+jJ-؊!Z3ids&pMID RˁS)6_ W1s†}Mi;df/Q#|0 vg=Xk|gfbR m݋IvQşzW;[[FDk,3[@>NW zz^>-ՠL[%T1L19rc@nHh^ZOscqQ088e4 1SxϿzijƾĤֈr\**oCɊH uGIȜ(vݐZ8542z-Zx#֡:?8S;-~ͬ4F2%SN ^$| p9Zw/ )?}8ϙMMPK^ՀOp-Kfܞ0q~ p|GЫ7x &EcE\dq&, y] |ܽyyWO?qm |]}Ob1}*=TGo{*NfUe+x:$;{cB܈7c5J Rh5]B>&l$Ǐ &\h&.Ʃ_ժ%W&A U[Q;Ǝ*&td^DN2]Ȃ dd1St^}8~{qL5).S≺ ~g`bqx>-_{MA] Eea[{ya#*B#쮯W?GDXa֢e;zz 6u -{nb!WQYwiGˊG9Aj20Ƒ "U^@ø)<%5.Y "RM~V9QX03c/1؂EE q*< =~zm`Mݹڛ3H?H5g6"-!]>VB) (=nM9lGׇ.CV=`C10U"%Twيm>\G{KR) )X@6;iAlpLZaTȜMx-3PnLڅe+^`On>$ϬzृW}#%pO6h(b"cԙkF$@AGm8X1k/!*KA%T=V(kF5r? ~H)M[4qqogk ,,A`[d/'3ϽzdM֑\kbX鈴~{;KGeP6 '#DWiQmx[=ZG0E0"JkOS/m{@ vʛ^&h20oсh,\APIc7k3CDŭGZGF5D9:Oԣj.:/HPq|Zq+R) cIͭ[x]iNYĬ,mD Q Uͣp-!6ds\?\BԊ'`E m*Ke4 ,zOchΐWߒ49F+l)?Zgv{NT3dq{g:F9|\%v=㜾P* A|3 LTlַqIGAes.2E x.Q@+=<5'fP:B۵zQ†EjUS,p#ƑY$/%=?_@!nu9LSnX']zAw($_l`+G,]N)` c|Jې$u ܭ (6O4jRf~uׯ˾I%p)3HF$J`:BɊ#ueofYYge(p9=VW=05c&46'F4*m9B4ױɷBc9 8d\듡IxULY ʼn!ʶBK۞a,%DnG?\-R Gz^MIЎHꦉ:ޯ "@6Qp%J}s)N1 R7WtA+;&_#j`R>Y,{#}vr0#er2WCõ0xG:!'H2ȓ./8W" !M Z??x hFiz4KcѤ~Ӂ-2:.e$\.PG)0UX@z%B:JWfy6<9'kS߼a72A2,ETpKj'K['w`kUR o ^ՙ\q{O<ݓUYmJ+>7jЗX)A?$cEوIVMav)7OPy|h0h8X%u`D[_zN^t YJ$};'yL~8If&ն^2seD9ǔ$RRWkUJ޿8At≀ꇒ &ǕPS$A~eID0e wgaHKQ"L5،*̩\׃sscـ^i`77x9#Zefƚ=Lbԥ>{,fvQ7 ×gbf:fqfE9~HMq қ 5ƴq(~HAp ezP꽑yPѲqy , ޡ8Qms4sXކs#U{aAo0Ie+Fk[9l”S\a6_?~0H(E{- 􍆗=ʆ뵰2~8wGFēm,:0g%Q^[rDUи|J @%j[Hџ= W+'k$^eot&s(7l`9k8-A)O{tHC?F&$+cIED!@vSً%YiL V\WbIfJvxC3G37O?LeJ'ysHNz% =/fʠ+Z>߲᠆ {yȕwLPxbK$Vi*SH1 K{ yp6<x#!"Y&7=fG oOGr6h%A%IEmo>}"QFCҶA#Ұ=AD#/ߩ0\#^3YKu'"[!cv.bV z ? ~":.h%OBD"} K'حݣAm*"+mNq!$f4`e[dxb$)z?f|oe6gbi5W/ڏ_8+eb]9u6WPt\뢻㱓/ڱ_)U?(-yL*{Ng|Iu-81[;5Abd\$_0-/3A:o_VXȟMDV\BIK+Y6 +ol8" m-&NF?R]N2ʊ[f&C_r #R57̹-ؗmoV^FZF\57J=鄵f[_ 8g9qПƙ#wQRF+6$G0؞Ys-ˬ!Qjj[ - i 're@\%~1Ff[GE!$q9WYk3c ٟ%=`0E_hw>aNME޳t5-5_cG S6@YE^(SRbKh]K9s>Jk'2n]я%gt{qp_δ!B~LUIlL]xt3Ɯ'i1UQE3pW Q0YMI@S̯afoJLT^ptlpyX"_yu6]n\NIoeflsƴҬP dŵYZO߲)au`JXG,\ 5`/RɱڪuoS~9NzmZ+H[RS(mr=wj1Cu!?wx&50b%rbtK ( R0f<ɿYƎpmW—D§ҢIoPZX-Qk͊t9?vp^DT~{g>K(˃PScZbάhUAOGW"w`e?wƚا;\Lٿ&VЄdCƏN3A}-(ޜU-eKj(i Y,G0A^y]UP$ Mn z"4YDt;" x&{D~Y)HJk4`jݞA6ʥDCqVJ b`5)bW>pq ؐME,9_ȢM\e?/c)6Td xiѦ2b$&#%K`wF;`~Ql~bN4R$6KɄvBὧ0{sqzAAV5yNL^牀حG+dVk n}`1(~l22BL-6BAY;%6 جsʞ0Ǯl_(Sj=Qhr`P/Vj^.эReLEUf< )V!ʞ|8՟27$\9h#؇]M2CF[lg? []K:2:1%7h9xscN0V2NX+4)a@ߓՅQ[(cZ%%y)NJ9L dj~~XZ_Sp-ej)P>| J7/ĴT纨 ]!fyraBgDE3|#  Xoۑdxj 4gP횝 ͡3rPaTzC*Yygȇ oE6)q'\ai=Myvձy .dRڇr ً[wZx}6#6jQphܓ`) %'S`ɿpjOq6F `C]o"FsEZ,"4%ruPu6΁#ԣ0VNns9Ɨnum $]m.3k Yg@/ ͏WdԜhLHV2ȵ'#k"m[gRxF5")*|B_e^F@HPz(hpkR3ZB=XB`(`:(U Ҷ'#\ƧZ`khդtdZ6{|zc:e ^UJQ$< ^mA.6ێS !ݠ )MhRh)!>/4뀲 U\Mo~%<_xcR:Vz-5K˯x(!%wyֲ2hۊF t츠Y8ZRڈ#>^6ℿGS.)gg݈ ^7`繺Ut;jmIsd1@Y?0ء}oҸ 5tM,t\eȳZ"{jRG8wç !|&i-d2X <iNA7y3M`uTHi!PT`\S#|i=򺣋PxՑ^ u[r|LnM^Lnef}\2F%[|^# n&E&#4BͅAe >;Z):rޘPH:Hp |VT@TE( :iܮAФ]wSlKyUp_G> &.L'2s1?U('­V}rѮò"4` u!,̧R &)Z] ɪd_U+f$ϓFo'-ذ**,'!Nfk %3(J0SSk#TL]%#':Y:2"aQrlOϟuQo(Ou*.aߛ.mէ@DQkF5dzhs:W#%4ΛCu-9+.8?ӨE׭{j@rJ.HacCfOD$]_،'H)Tr"վ^*T:&zf_VC?lAhg>Bj·JM :‘ AKu¯>M౞VyI{ҭX(i(~~x̠Ok$մ;2?h ~>)zW-4+~/K>OBWI<-xΔ[/SLՔ#4j7Hm;]Tu=YC&Xi aYz@ˬKXx-f)p6?@(fMźZaVl'=-Ńa Cr᧛ Հ$VgW5ՀSg~5X%JհKd>2:v4( a(? 0'+'+BOظ9(i9yR-%G C@{1 =EǶPCݐ.#qKoФsĆU3FqCbw"=M37%"mY+zkaƥ6B\V1j F^DN>(/4s58쟧xÌs;~iJ0f= v`yى@!BZLym jN}s!_S$N58E 21p,N1%Nc)g' jrvtvBmJ*h'pd?GL$܆ )c q!m}"ԬT j#84}'6.x8,lh =^RBɲX|N+4`,CSB4~Uʔ74GtSٝkSh+^eㇹz@Bv9aX)LRyTnH񕱾F"t쬀azbؓT@攄ZVG[VU\`LHX8 K)Rlg`sS3+q9s^VVnӴWUц{/O?GTHWTۯ3WAߤg_gu.`s&[,ޮ Ո xjOP A7 Hx>C`̕UNN\#Z2Ӝ5" AfC͚7S#xGp`K4TT ˕?j YZ