From f02fc91a770982bb83b6dc1b97d83caa3315375d Mon Sep 17 00:00:00 2001
From: Philippe Suter <philippe.suter@gmail.com>
Date: Wed, 10 Nov 2010 22:02:21 +0000
Subject: [PATCH]

---
 WISHLIST                                      |   2 +
 lib/z3.jar                                    | Bin 210291 -> 208440 bytes
 src/funcheck/FunCheckPlugin.scala             |   4 +-
 src/purescala/DefaultTactic.scala             |  66 ++++++++++--------
 src/purescala/Settings.scala                  |   2 +
 src/purescala/Z3Solver.scala                  |  37 ++++++----
 .../z3plugins/instantiator/Instantiator.scala |  54 ++++++++++++++
 testcases/Test.scala                          |   3 +-
 8 files changed, 123 insertions(+), 45 deletions(-)
 create mode 100644 src/purescala/z3plugins/instantiator/Instantiator.scala

diff --git a/WISHLIST b/WISHLIST
index fa1ab68c2..20fdc0402 100644
--- a/WISHLIST
+++ b/WISHLIST
@@ -6,6 +6,8 @@ PS: generate VCs for pattern-matching
 PS: support multiple top-level objects
 PS: use 'private' accessor to indicate what's part of the interface
 PS: support tuples (including natively in Z3)
+PS: implement @induct tactic
+PS: use a theory plugin to instantiate/unroll function bodies
 
 Wishes granted so far
 ---------------------
diff --git a/lib/z3.jar b/lib/z3.jar
index 4341ca8c2d4d45c05d10a50abf253962558b13f9..2405ab3028d98f39108e0c1e4a21aadb5b195138 100644
GIT binary patch
delta 45481
zcmezTif6|i9^L?NW)=|!4h9Z}u*R&3yjIL0%BxL9d`6Tl0}^0nU|^^+)(0u)0t*Yx
zh?@9CnOSH?)MhEh?@S=ZWC2r=%^EBcj4;mRaMp_;_GWFiKu!>2ay|b;Fbz^!F3<>3
z`CITFv&4+3$#;ZQn8jyAZDtm3WdSp~#g~B@(-T#hv^K}doZtfsYiipwgBa8Ad}Wl{
z+^V+{%-d{ebcYEfyjj3hffK}-96c#ybGzL$CXnfy3mlpGL5%5h`xz~!KaghTnZ7}W
znQildfa9!S)rC`Krspa$vu|D-wiRq5#QgfGIB}5t^o180EjCLOO#`dmys>;a#J1?F
z<IFH~oi}IHwS$Ex7dXmn=4+Gz8?;%sB?#<@>3XXfWhTp?<J!EU?FCpJ#E!L{cOa(r
z^q&DM+*~-d3nCww&m=NERgsy0x|Sj{*JkY*cfblJE4~H0mUpx9><eH^CKotrOy3W3
zzv=vCf*==9E}SZ}`PYU%u!iXls*JMJJ(ZY+Ht*UT1Ti~Nl}To^_O`cR_fOtfE;aqH
z0Hf$;uU%6iTEM~1v-gVt*nc3GY!*NF6KosECz_jWF3sWx+azErHC;l5nRnBp|6rph
zYii4EmV3$!jy{lEH#@w%2iCY*@$Ee(K?$_vB{lt{0HgS3^$%ykF5hm<%IMArvUPhc
z8{=*^kR98tc^Q|&UAq0R0OM+~Rp7+2{i-ly21KiaD&r!sGO!c3^Jy|VLEKn4Rc3p>
z1)~5&Qr?;g6cgOrS6VX)f?Wo3=45$c_U#Ys7&lshtekGm%jh@VUz3@A`^!p34OWnY
zrdRA@l-X`j&nU?ORsu3-dqz8>5eG<i``ms;PIj;aDDbvlp2m0<oM^W%Udq@3HekEn
zYDRaki?&znV$=a!JslLb+js9}Oace|c7+3sk0BDEB)(nY2;&xLimuX{zD9>xX!7(b
zq3x>Y7%Rc5wlBQMs03zB)@_m9{`d;x6^JK6?%&RFlhG3_xjp0#;|T~${sH4Ou#(BT
zE#P#-zWw%NMi#InBtUtd!(4vnE2A?+LT@#r=63I&jPhXTgOb<wP7Wq(a6o`UZ~J2b
zriYM7*=NoqGg<Db!1m9=OdJs1p!~DlOq}TlIDEDn$}{Of)Ph2EdcFlC=k|6*rt4tE
z+Y?op93i%V9Jp46nSJ{S6Q<8#4cqsbGsQua$y+lCz|+`vKYON&U=`q8wcW;vNr43%
zEAehjpCGO*aMajd<IkiEHXEF!w?BzvYG7g(oDsD>J(1}-FPIgW&vb(k%+e`jk_WS<
z`xP<$We#b~n(kN3q*l*a6LRzt`z>P?#fc1zfsO&nZeol#l@>HHo!p?W$gR+QSY>7k
zo0@T=m>6ph+Z2famoG|63JVr3a&hTty2r4SsYy!EG;Xn*qpV7mU|?WiTxjWh)8{@9
zKEM3_?sx6U^_Q3L`WJgO_G;|i<>zOfl-(BStRu!fxlZb!eo&^cgm+uLO{x5I)y*zq
zN3Axhl&J<^_>=xP+s0LS;sJ~OPE!|2c=x31xP4eVVe6`ZAk)X1ZO%7$=r`{?^T7R)
zIUB3w1iRMP><X2v_JLP7<SWLit&49j5&f{txo*EkHAhgk#%=ze1}E5^rPi+6ANgdi
z%e!_Ht{<lr=Cfp~FY)s5oN&!is-9_&iAQ#6Zk<HX+O9apOq(UGt2UK6<y$UcSLAK@
z!nkDF1U>e+aF14|>b(c*7&F;b<d@V<2vYcZ^c&ND(<gTo>m8RaR$gM_aai|||D*J6
zuWs>a%Kp%tQ1svz!xGyG@0zEm8<=^RGu!iBQroeQ`I6Vvo*<8-6aF=b9N5N~XY{0A
zTH!9UrsRvT3F`u{?sWUIa_<R#rz+-4SstfZ)#NI275*}>`_HK<7$m-c-}&FF15+F}
zaY^3q-gH~xE=y{#!hPPCMmzS&6)k^Iukk6zW4^;J)|VDbHcwdB`bA_(-h_QkChS3K
zOC%-~a(oJ%aIejT<x-eOze5)19>WQ8qDA%XCH2fpOndqZU$QR~pUwT!-6NdgpX~{8
z=UI%I8W*l}-r-lO=L-t=*zcId{8De~8ds(F4Q4G{ST1QVdgC{7zv`#AH}qv*H|^uR
zwA3M<_a#freeF}yjIvFCggjm=&TX2)_mXGHy9sTMzoM?T1uCs?`l7Rhwdo$)%i6-b
zF+b8Ymppf^mpu0}|HxNwrTr2Gds((IT{7`7Z8B#%Rqa&A6Exvt#0Rw}%nJ9pe~L~}
z+w{v`qL}R^^YzL<HR?s)%tm<vH9f%_wQ|@CYZsre?*8K)dbeWkn*R=6W*5stTg*(1
zG}|wn?pyKVp4QFSkf*vK*B>)nX8t6|_Gwb+_2`m4-mdoqU)9Geec@@b5e=$8SnRk<
z;F9o!Sqt<$>>YPSs6LOqS}H$9IpwQpr8&3$ukBpz-R{~RW^>;zYM96W^X!DUHWT4X
zZzpht%vjF*>t@&`{*{s^G@Ab?o$&Aaw0J@lLo9pcoK<oD3;%~P&%AX0`GjSQY#hzS
zex_^r)GMlcKAGPAsopWGUVWW$$PXQl<fB{JFX>M>=I~46lJ10gjZfN28c*4UcfF2R
z-XdC`C-O5{sl4OQVzyVF_Ge2=^d~M~b!uHtz<$mx#Y-H2DtNfEJq>rxN;GPh6aVQj
z@w?f@n<B5wn`?F~VDJ8u?(tb+Ye?dIv7e;@>O7V?-8UlU{wr5_8+=im>tB5U^IguS
z>HII5Jm&h|TJcYkvoucRx__5V*wOi{D|Hjh<~6Um+_V09hp$Mk#wH$_z^e4Xnxr$E
zTp|({MO&TTWBE7Y<%9F$e$r*BX<3rlGk=^i-Kb->$~&v<bAi*h59&qY{86*>W6O59
zPAN@zbYRD2_H|oSHm*=Sna!>ip|&ZrUVMZ5;;53|DADs}+q-LZYw!O0Zq@6P9VxQ)
zOq4<158=0BV)2n%@)GV$XnD2hytv-v!_wP0liANj%3R)&ez;U9S@2!$Hm*C}K0gnd
zvOTwZx3#Qe({-1=-$%HPeP{U5{G0X8{|9#b&!ygZ7W5vpRbFTL!aZg?Kex>}#yQD5
z`d8Ga*5p05^X=LhwC4C;mUVM2><rRsv`-cG9-Pr%=o<CCUdZl%<)7IahfO8EhfDle
z@|EMe?T$3}mB*yk$?mXwWYtnEdwk;-w#Pem1-v<0u=l8~L-fJJwnFbb4b)UR_cE@F
zmpE<R{a52(!keReS&rGocu#WuS-Q$BVa_}Cj2P*{zx9VJ+FqN!Q(kIn>H1`c-GhJW
zEeozz7u^Z>EatqfdS|s=+5bOt*V=6^vHo(daZ-5n`~BZfsh;0&W?q<ccW<WfVf(mG
zAJ$Iq{hgVSb=Ca*Uhx=%=a;^|Ubf@*8M{qoclWpNo%ZkQF5|+5UE$N}?&l<5*Vfq|
z|L;nl>ubF^@2W~lFV`=6U7u@m>E8|CnX+sa`SD->y<RW7OKF?)k45ffG5`GEUw5Ci
z_C}KR&M%v$e_wO&(VUNe^rKf7%isLwdD;3;WpDVsnu~9v*X_u>(YN#TCI7wQvm;;6
z-DUi2QGe}p{@NWEOQrQTmt@^qb@^%T<+h{StpDVm>)~EzS9f;J>G#sb)${8;&wr_{
z{COq(oBG!Cbp~GoV}Atyp1wWqzjM*?AJw14&h7YhRIpuIf0y~TsvoQ7&!1uc=f;th
z*6Z`C-uE8AA2+Xb!`G$#CHdy{zo&Kvm)HG1eq~A1!Qk?^%NMtqe_X0}J@tRgw)*_r
zKW^~f&%L+#G4t`hn!Nglr>pHx&$3H;J9%Bb?Rk9(v&|K+&TUHbc0aSTFs$mf<@}se
zXPI{9f33(p9(%j?X}I6rpD{&wi<deZU0R*)ms9?fJ-Fzd*UVj?kFKo0Q^-<sF21C&
zvb%8OUis)BCr%tcuk$PCQgrY9dzZUoznq(MGCOa^rib_Kcg5Ad{c<+ATyD?v_Q?Mp
z6?G4v#-Fd>UzGb|>G|6>7W;1>S-&Q~Z|C>3TkRX>Y`5E)b!_H)yZq0I`y;A<u?ufI
zerM0yU$?ft)4z4^Tfezng~7Tt_j~8th8kFAJv#h!&5OO}x6ggwCFXDc@6XZ7)w_J}
zR(@<c%D>0t>y4YT?$gd!=U;rYbNe3iL;ucJ|Iailef%#mn{BUM{hKqZerr|7|9O9y
zf2ZE-H!{^bmtMWSd7byhz47H|neVMRnyXj)WL3Xxss5g?udk<17H0Fc+_L*~JM+8G
zI#vIb&#&1&i>LbS#{T1bHa%*O%+0%N`1lp?=5^V%FPHZB$b9*CqsZ)UyJW)b_J#lK
zjh4TwN&0z&-^~Brrz1_5Ui1C^R`0&}#<kAY_<eUDt~$0q{@=L+?ZSS!C;uG%_N#sA
z`}=oN{=8@wHj}j~cwL?=zw<@o@@a3q?$o~synbb_&-Y@b#^(~{1-?HwX)eDn@})R%
z&O6N);YZsFXD)~rG%q{L`qx3&FJJu2-lUJY+ApRbd6u|#!S8L?uJwz}o|xQg@m5Uw
zaD9m5dGU!mwjN;Dzj&>FHShA-oWImJ2H0gh+~U6FyM2>=^owf4zRSV03UBFs$V>{B
z)ctTe*}~TSfpE(nZr1<v%%c7z@A|fK`cs!>cbS#v7BcQ%x0UPfp}PHDzsz4hxvOuM
z=F4Imd7<6)w{*8_MgN2PrJv8I_HOyMLg1@4_pjuK_4U&iOm4MZ`thQ3PRM$ZFS)xu
zermt)f7gP|E&JMCf9GW!eYxGWzI%4oZS$BD(z-7glQ#dJd*Hp`<L%uOzIR;M?(~2;
zsfJf*OZbcT8aMrW)_1eiHcHIbb)9w5<@SC1l5g`@EH>}@Sm<(L{mVDC4(<B`&n%y~
z=r8|^XV--n{f%?nUN7|cwV31k-43_y(v{clW$XGkN9faC@uH|%{N0bXeAU0!``uYQ
z`*wBEkJqM&|MQR3{Pg(HeWYUQv%_}})z4VC(*5NlZ}GXc;hgnsF25(W{t<4fi`r7Z
ze?fKEKkvt@V;-1u{yJTuyMOVye~GKN?XU0nS1$aeyzthq(nk&N%NN@F)!+DCd~m+{
zt>Wzu`mcOl@3OppiA23);`wX4Dk}P4_&Z!^KUy>S*lQ`r?E+u;58dzQ_<P%>I-7O>
z%n8>+UsQWvx8I#-Q*+3(tb2mF;~kS@T)SM3G(S_ai`V^8%vxU^oLl`~;IX>@i|OBz
zKC}FjzFRR*@z~*`O>%cUPS<;;pI={E|0U>dg`W7^zp)o?Che<Jd?CB*<G)oB=k+_j
z#V$B(zj||c^4x!FR{!IRHg2=+H^27Cz3ZRn$E0l^=07<ff3%{I`?u-!-v4%s_60xK
zFZ6c5*9CvBnmteKFU~s|R4Zs7&RJJ%SntRA?|4$pI^i!RjsHV`{Ewddw@&!8ch~;j
zBR_W3$DgQwr?l4gR`<VL(J!8c_w&X6+G@P1S8`j^o>UW~{Uo&GW2wW1+LC{#gg?7>
zz0c?PUEVG9asA3`^TIp7ZV0=u{`Ix#?-tcws+e@n?L&{~dDrK!9=(sa`|rVu1KzKH
zKRp!h&r!24uQp@pZ2rARe@yrm{JZq=-{i#q=`6J_>F*uu7yX~lb?au3cX-#wlGO{|
zxBkkV{~+B!H}QI7`f<*wf8zGDZpo5}$<az$bKua={$_jO>mN3YEwN|$b<p(BADNe>
z2KH6=j-R)jaF6BJ9J@NP-Y*sz|LyNw`jP8YR#hdmpWR*ReBW!e51S*G=(ATJy}$lM
zH0QrPj~rM2^}P}I;zw;gW2-$E&(3e2b<=uExL-VZvGtFRY^HtBd<TJRmD<ZM{;@uK
zu-IGdxY>apGk$Qb$#44a|04dKR9#%}7xN46uFw5*Pbzbdyqt05LhXa|K8JjJ!}WIO
zOV8Fk-jBO(bJg+pez|;M9`j~}d0e%R5B%T1|IGOlEB0Rax9;_izqXg&JN#Z&|K`E@
zr4#g;K3Zki+Mjp&CAH!FoTpv2eocROi+*~}p29yv-+23n;-Dq<O&=xyuSnW&nsDBa
z@!uM@m(v%{y=v+8zv;pK4?(Q<62C70SNs>l@p5xRy`ulY#}<A^oclHG=H<0ie0A@<
z^ndk1#z?Kdl?L<kYW;5Un<hFhsK0N&?!@|f2Fu2oUG}RI_QY>=c$u&K;rfQ-Q$AM8
zpSgZ#y67JEKc8Q@9hJAd(6{|<&s@Q`CtE5k-b=dP>rHrHep<A?hoQdZy4I({_&SB~
zm-#kZzVAFP`p@>lzT?k6rn`H5XRE&dgTp@F=~wiI@9m6re14xfAKm@Pd+Nttffu*F
z{<$f1>ArLQZ>{;MIeRklgCo}O(+qp_UF1mjs^_BBz3so6%{9K&2tWJ$XZMtUI}g-*
zAE@W=`uN@W#Ol57AJ0oZ_+Py=Y5l?j_qPPB?0+8q-haxYSm82;5B%#xe$@-GW$imv
zx4pr(>OR}+o(tFcUi?23`r+q=f2!xTOGJOXcf4Bjg6Z+&OV35>|1CABpT#2jJGbQ@
z?|$!v@-5$<=>^^DKHnqs(cs*v<H^}4%%5rhv*!DpTr_jhdfuMv|8>INY~=ZMd3}te
z|NDa#Gge8>Kkr;$H}m-UT@&uHf6TsQwDe!ljDAhKebW?bxvnqvlB*ZG@jacr`QP1W
zk)QSlYySOk{C9`vWnRMkDbGdg>(dX_>?vP)X@8M~eDeIK=kK0~Gl&lp|Ma{irT)ZY
z?WKQzAN``UcxzW2^W)3gy5@^2%gxXBXLz{T^|yHApL+YnC*nE(?MqUvXX`OJ_O?9l
z;rXD9y5_&t`XL`SACSv_7k=xu>~-cnlA@o)o&GIro^LtnzoOlpeY5PVU8;D_i0`hC
zzg2IN_<P~r+2J3bS9_!%_;dfGME$v@5~CZ-SD&(*?GU&AYS&*b#{YklyY|+%{P@tR
zRoBn*XO{cakKYWAe7@@M`TetRgiKHS_Rx<{r9b@t!}=#j=w+S4`U>Uxb$wr+8^mQl
z*La+0e&Xle2K(Rczt|=2@3&jN<$dsn@<m#4?FZ`vU#EXczwfd8;6B4uA8X}%u76z0
zWh?Y%?$Rjxy$1Il#Rop(wtM4av!cgd|I7OylmEP#eT)0^%g4K?e0yY<dYdnEZ%_K=
z1OM*ZD7`gL+}C{KcF61hOcLks=LbH!9Fh@#IjFV&_r37t+P@o*E5zCEa-8Y!y>S1^
zRTcl&=I#5#@atRsiZ5H4e!W%o`k$Ndes<``h1@;!n~i^33wi8kc>6kP*@=AikIxbp
ze3tI~$no}f3R`_X!%NNs|NpwS#<P6e=^>gg*HCf6P4xfuroZP`9Qz$N<NW8)-_t!W
z?C%cw`&;18&v$pb_Le8^sS554Kg%#be#M*RaZG>SxpMszxv@Rq>VKp91>091J6!YP
zzm<Kxf5S8NdGilHD%mJ;URv@0$;D^(yC>T0`y*3t&hpav!uwFWqjeI~lR`f#iyf=J
z-+Ssu6vOA|-R_~knP=#~4*mF9Xv6*0<sY7lrN~FvPha!=y@$eEhU(f4F(31d&Rkc0
z^^@ycsr`a4{|!&vKO1(dp5xd3pj7_)wC&Huf9(0@aN!~Ut+!|1ecRQ1W*)obhN5Q{
zA1*yCy#Flao8aa*FVEGKE4=u!yh5h2!T5m9yEk*PnfGP?esDE+@54#H-*@HSi#(%0
z;oKdQ{rP>;8~Yp#E<gS9^ZBx$cj6LOdbKUz)L@)(zOcgPX5SpiGJ&M>rYQ@g<R^Ft
zScGTQHwLv>eRAZ`-?+Ot@?Oq<>lZ2KEH5l=lKf_~-}u2MajvIz%ay~G-fWhcH(~Nq
zE8BAmF3)>?rntq%E1O}K^r^yIvaPLOD_IL3o}Q?1ZsxMB#Rp~b^8Gg09e6z_S4Ud%
z!jh(6GG8XyJ}CK79P@Q%>%xY>mFFFpBU)tgj}%CWTu!Lp@O;Od2g<gW=Y>mr`D`W~
z!Fc*0OPWr>GVA-%55CO0ah$(w##4hweFbNVZsfntoqwgeNq!B-IUc9wYG2bPSKU7N
z($X$}p0zyZn}CIf-)jimoA%T3`J4p{m>l=to}JHsM)$<GN|(qJ-pNZY@Fy!@m;3Ou
z+3RXU$=f-adVB1&4jruLEIZ5CBA;m_8FxS;`1O-Ay#lcV6HH%t9qbXg_wSdEz!atL
zz8<D-O>HJ`zE`~3)+v-VVWyaH+J*Ng3e$eI?XXSpReI|v-@?;BQI7FE$1|(Hb-t|(
z`duMM#kpRsPMGL9bz@~E*DdxI#&gr>zc2JF_;GOW&&6{a8<gdlIKq_L>TAuOH{`Rd
z-q#V3xK8;+&Vg-*_a5Z=TF`V*rB`3Mg01%ek8y)_!t9xfZ40a$jC<LZOkAS#b;nr)
zXWnl=Z6r_4ILCG=M&+C9!65%L3tsxQN9noT<|qm-Q2Xg@={P^$cDoDbkzD1==Xfmt
z7MGf?^a<X{Si1O5V?yoJGJdhyXW8m&V-0^wt%@;FzA9M4@?7jwBAZlk>a80Wn~jV_
z?X7)U__TCH9xXVsXLs8iMa6u-RmSd8vnm~&@{4-hp9#d+1&0{+uU~HY?9#;b;f|$B
z+NZvpzG(Tvd}gS#%)ADcQ;V~er{pf%D1RhKXQ!i5?}p?WwP3}|YQD`2P9Aw~$RXHP
z&&VOb+A6o*M(R$Jk(1vP^<y%V4Q)@%*5+m2VdT^^)n$g~iK(hjq`W0$C*6q<FzSq3
zn3Jj6s{MGylMm-*-+pUblGncBK%9f>v2(Lje`iiB+*}iMn7if}uYbANiNX~J1Prx;
z8ElTdlT)p{U686h!!Tsk{QQ{u6(RQbOQybPRjd!@T)WpGWmem@xBy4dsA@;n<eiMH
z9EC@CracT{FS|2o#<8qu$HW4?2TObTCq*1qIZ$E4WyY@&tZ`t9V27@ObSr~TX;p|r
z$Nn^j2<F;2Q4^OfoD~*#Q!I+Fq!pY_P4jI$$y;uDPiFZpSFeShTSes0l&QZf54~D6
z#c6WZ;<@##H~sdn@?z9C_?)R>{oqQ)RPh--4yhj`l`hFR8nmUHb8?i-*K#VdIJGQW
z`N|G~oELX1^L9ELPi^{Dv19Aw-HRsX=}Eu;`ory%-QnC7PV1C@EnAg%$9*T${nnSS
zKFnr*oV6ij^=;Pf(iXRalWf&O3{K3~|2BI|k+<nXw+qr*8|tkmWQR$wTJ^EPwACwn
zeT!*i>F2_rrxnL6xaJ5+O)S$FlaTg0(p~d8q0y<9m2bN_^Lc)ijUh?=34twIQ9BHc
z?mj#_{pqhxgCmU_=hn4XiBwc}{xmp{`?2DsnPB#XV-?d*>dC*~A?UG_@wWTBqi5FC
zN?O`&)E7CsnZ3gEFV`Q#Yeuc_bY2(#>|N$*nIqKZB=GU+rynQZKTh25;Kf~YtWl)a
zSDn{cCeQzbezc2>{gck=-#eM)g)NOv$25h+Mn|ubj5K|h%zNco;B?I{Cb{64&?6T)
zofM0uIjo{0SN#a~@5?l})OEpUU6s=rwOMXGJD4wU8|;(RXt^OPVjdzf_a#T;qsqh+
z1s4KXEB_R+dZ`N6bQNt<=Bre?cJQ-*e4C`X|MXd1Oa_c1(@%FXX=_%s+AaR}$vLXI
zDE)8HSHZQ3*00N>EoYm)*-&JXePo({n)2KelU}=>pD<m%n@L-}?{@ftRa$%vvLP}H
zwQ^i?jJJMWz;S-^S*@FU`f~awe@VSC({Y~l@#%%#Od>o!p5K37S$6ort2r~1r%&u=
z5~-i^tf5+U--^{*kDEd?ECgSDKDBGto_U#DA2R+u&{X~S1ao$UgSpuPw<C!Mcc(S4
zNVsCCKGof5#qr1m+m{{x@WE*<pV=R`TQU(c3zu0qhg>zX^Jdx1Hb-)?u{*E)nmCOG
z7vwZJs_xvJ7$&iE)t5aE!55#*WX!W$DU^4x=3mo<<MoR9i7vjk+C0~A2)UHT<_2zN
zylN82UHD5PvwX!4!6zC{B}P+z@tQEVF9>8VT501H`&BIDit+urQ?CqSq*rnWRJQDz
zRqbqO;FB*{DLVW9`STW`rE@~kA~N?}mJg6Dnx^nNIdh`S+4<{l&aHTK?#;J14h{An
z+mv>Avd3QDoA<B&N0r7F)uZ=b-<o&*+qCu78}@%a{_8)}qK8%ggC%*d=ZP>T{@j0m
z{|E86*-Otq>b|}r@&Q+k@+!gXLRNk6g59$h<?HQk`t1My;d`_Bf|aqX$%gg@WlW#d
zC9GR3r?k#Jw#W2=!SV7v<&Je-8#T`GJI9{6pQ0o8d7ap_hRRi~TMyOmS=qYvSk0W)
zt%qwgk~?P{kBAU@_Oz$;(4W*}yOQ!YZ;+euK3zxhvz^#A{?D^@*4RJGH!u_U>?Ss?
z>!$&?bX(<~*4{&Z5|3RnsGqjc=gex!(|3>FZ!ApYbH3bc$#cc&%wh@dB)PLUWX>c@
z%x<qtKGs$C@%#+kBQiQWB|dXYMAtV}3Ll%6D0lt_*O`Nxv<>-<w@H0Y>sfnvk7cs7
zAv=4{p*^h0vkmi4Mo2yrH`>PgIjm=Da-CqZwc-958@pov7>iGx(fs#&Vx49(yJ7z6
z2+?P6C9HdXruKv;*I6c;&S>t>HuO(<qwy@<NbJ}i+aHpjS06Y(L%ngn;eM%O%+F-&
z51gOzxcx+#^F7W#J(cMnjGtX^m~Z%==`rW$bv;`T?U7DiYq)>f#<CgZ?DolgAB{Ob
z&wG%5rn+&y;rp`@{AVT~JU=7;c!d3#-v-y@Kks{xe&)B~w633Ddw383u{`FMSjYTB
z^0V~8^E1Au=O{g6mYCi2)3?X>u#B3E-ZSQd|7Y;mGyPAtllaqL$@N42bI1q#XJ#Ml
zpE)1+KZBq7f3ls-pZ=d5AMBqgAN)U~AEZ+1PybJe5BATJ5B{IAyz#%GJo~@nHnM;E
zE7^X?fA;xc|19!B{h8y<{|)Ce{5xKw^h5r0^nw2~{6ShJ|MdS9`C$Jn_~8E;_qqNZ
zzr*+Mc#Ty35BXyDAM&4bKG;9Ad{BR;_~8E;)(8L3c;5Km@c8sNMLm<U#{Y)pAQM6A
z*?!0u^Z$_l%=E$jS=<NvXLcX#pS3=yKa<|{-|&0$e?$I;|AxoE3mWn_{x_V@`tNv+
z*$?^8AakEL{Wsjt`=|fs+XwY$K!(rf|98BG@khP<XX^w1XNWicH{37$r~hZ{gZeYw
z2mjB|XZfGJ59DN}5BASM*6(Nk)BiK+gZ(qr2lZ#(v;I$x<N9~JhVzH~=cOP4=Kslc
z_CMr5r#`4ZBhT<Zc^@d~njh4k32*psSkLjN-}1;tt~37`{~fPU{UQI^{lNbj>zV#1
z|Et&dA^-U*NE7q_<b7;^`hP}!uz&XY!2cQcAphF_kpFDKZQc5l?bs%-eP=Y*bst(E
zm@xVMoy|Nk!M`5t+MIq~&q}0+Z+#<&R2}!B_zKk@6_1|$tv<J}Bj0M?U4>flV>fw!
zG|JU9&Xir<nw4(;VAW%%ZyU81ePs60)3FJ2tT(B9aH_SwZ>nIgyhf3#(%!y|JtYsr
z+hn8NOzNy>aF?eX@9J=y#=U>t>j=e*KYIPvHG23fOD)v<leIKC)8+B(m3lRQKizOx
zv~d;p{(CPX_!oVgT@rJ7f}e_%>&^|%$AvnMnMcO{xSDue;-bc_*7)SoH%H_>9?zb)
zPU)5X#TBROx6b(GZ?f;?%P6<M>QbS*!-D>I9`kqGaV_wF=doow%s^EBqr#~mdfCoX
zEC0JZ-hO$9){6fw$-%L|SNwN*Y;Lo26^MH|_Ue`TMIUd6$85b)zi6ZOI)ktCGyY67
zz0Uc{{^AYO>zS|qzxU8r{2#sHzl*-|f8|)$FI=DO>o1AAtXKK39P9Qa>y!PZ*Bx>0
z|J<u2FG`>M?;$R@xARYbiQ>iCC;xl+EAQ(0(_bQW@%D-T9{ei1=KSd|;a^lf>HkDO
zm0eAL`b(HDPJL3pMDpVA6aPKtTQq-h{AB-i{tGQIdH6~FEBlLA!K5je+zKY$PuBmx
zQojfyT?!UbKLHZ)pZI^}f0y}c|AYT`+ByGQ{!h4fT}dn0_X~IU1^n-HyS~dW_<y~#
zlzrvPLwEmgj9PT@>bi&}t2>V6yBDe|#5$Vny4NaiZ5iffQdc}*TkvJ6%j1B8Ql~1(
zi$C6Ku9Nc+7wmODe3ifcrPHF1vqNH-C(d&-;S;@Xu;g;bvHXz2rHZx_GGwgu{`|PT
zQO@PD`N|#36z6)F@TpGce#x@v<L!``RuAJvg&8}aDbzj+pY`8E927$fpGEonRksp;
znR=yuQQ?c7pxB((^u_9x{Y49r*x4)oyF6El1x0lGvek2b`EOx=S<eNM3js$Z`^0sN
z{t5RwUk~;Dt1e}~^3AHH|Ab>*K)&BQ;gA1c^(w=k^MC#4K3o5(Uippv#nUJLdxQ(_
z1qD9qMeURSJ*Erpo%N^xi`Am*6aP<)bNk}<$^Me7OTN;7<yem|X`k#bUGC6R{;xdO
z?Tgtb`%BE7dg}k{mG3scnERxDiE!sSh5yQP9ZFPx%4fQLvHN6yN!{=AA9YX+tWyG!
zc0M4N#QK6saGb<?gV?oGKyI^w$hw0?nm{7IM1Icy<^LrUoC1u&k!vwEHu07H#UGvl
z;8ba`HMV~F%K!G4|F}!p|1VfGEo06ra3tonmM~osb$NWHe5>28o)={v>Y$9t!@ADT
zLtoj7^CdX?79PCH4~o6X{~>wOxiwqjQl^W#^4zvB4vP#+cBm=cZGQ33!{6CzVg`?@
zp7<qBm*q;a9VW_B&fVF3m(=SP{p_zV5&SwogU58;(JS?fj3>r{BFDKuTlMSw7n&aH
z7ylFPU3g+^=P&;fy-T1tH8cU|!RiU?7J#HqZSDW%Z&D}Ryt?a`ze$^3xarsVFDgB*
z2mSBV1BY3h2Pi!D&iLd1_y5Fa_CM{Ve*1qh`ec78)MdTGf8|)m`Y&Fe>@TIdtXKQ5
zyq7QIj>n^UCOz>ps-Dl=T)@qA`|=`L34zEJ@tGerS8QIPbYt5ViR3iTkf0yRH>Szt
z2gL}62KCIpXIZ^s%BM>$uI*08?`a&HHSN)<6(@tg>)gHOIIUjyWc=x;)9oVuvFBFm
zYt<G!j@*^CX^X^Zhl4kr_mpMU?_OeidcnJj8wToa`<ZXdt$q`*|B6_A(rVqUs#9+C
zO|y$&f4X$r4WaDJLJ9rI&bJ~LmaZ|$ja#`k)H5qcWK&>H=UbP|7a^IMlA$Yg&ss$Z
zeXaF;_B}A-)asOJxBN0zz0uQ+WBf2FES1YieapI%FDoyxXM1MEdS2PPbg8x|>$Lhw
zg%@sL4Jq)-d~(Tzd%upS#yX!lHLtJO{yC;#DdYTi&f7zE$Aau1Z=8Qr#aNeXmcg%#
z^X1jIvmSrbUB#g~MQpv;-gTC3^Do}dKKz&6x-L8O+R95wZ(d#s3tf8c(iaWiz0$8Y
zdgnZxw8m=X+lQCd?5fIbx8FAFv2%Csa-AUib=&LbezFgViaB|E!Yq;f=BAq4#J4f~
zur&7R>dyPDU1>Up_hOBH1W(<e{5g&@O^;4JIeF#t7mwr~s?{f4e||8wFw=17)PwIg
zTx;@(i29?`#dJ`0?WA-2y6eIcP8ZzPd2wUu(c6|rb(tUe>O{NO9$)n_NkJo&yExP(
zYM}~CmBanH4E2_>-#$)UICXRMs>n&4t`~Ol7g*eQ)ummnVdu;B{g<ruHpTZb)@4z5
z4e!`%$llg1Ula81MrP>oD`t^<oL0^{a9g(fuxC(6%*-V->JutXO6EL$?`QX^?ESB=
zT|&{No?*T#*X}Y|%~sVum#5!`Gs}^;PkxT%(!kRf=6GE5N}0Q>e)i`nVpmrFlCTqh
z{&w>33a6{b7r(Nb7qse|fNtxm3n3TEr(A!UHF@Q6=GJ(%g!#4)r|wUj|JbB<oyN&k
zI$J}hq=kCb&ii2dP4byb#MS4ET~5`mGksaScGY>)XSH?i?>-0aJntS_yDsdzWcl=^
zk(|E{vP<zfN8Aa$&G9_?m;a3y^{e)p{o3;O<C37;j!)iXne6J)Tictnc7fhk$@Hp?
zZx^sinBNlm(;j;2RDt$#jpnpa$IU_x>Ss&sjQPBE|2pIeZ(;b}uez;PEAeSXaTHe|
zx7)*alVW$*?Q}YJ`;>R?ZwDWt>C+;Fe6rZRqNetEW$Erw{JnM7?d8*sKP-ClyS=+U
z_rK<>|MK1|7AO6xJ@n<_u?-U&c4lSAPTFw2?YDo~9>bUq+urM}`{J|j>N+{m^1n@s
zAGPOvU2!9PQmKH;v^3c%ZbujV|MPV5BkRhLh`MeItqXT_{gSJ%?9+BCo_=H7!>FHb
zC-23kuQxEXiL&X`vE$d#kDgm4eezZ0ZJslA5k~dDH_7k38Eu+Uw&mBBf<KvCe$}|A
ztd{>FR?W%yyyeuZQkPR<{Ier$*KGO~SiCy^!|ar=r&Cs6U%4hOx?b;?^ch!<IUkes
z_BlFku3G<ggNZnQ_s$64=?3D$TZ%s#oH=^f{MMu1XGwdE#8<yQe^l!5&Wcy=U2L<i
zHm+>_`apQMta$weDfY%XhATzEEl&$}-S}2~@y~qIbL%I~`Tu}l>v_1>x%E$S*XXR9
zvyAV^;zMWaot}%|yn1fE*2$)du+Ukh5k>!QAKxhc;H}lv&xc*EX&GO*@zXu@+<MdU
zy6~Gn_oh5=4?P!t{#sE~&6nU+?M96&-fsGvbwya>&G*E@ry9ObBt`4{{tBKo_<rp~
z+Ku05?`O2V{_kh}VQ$A)ktjt2(@%aW*EjAjR5yCDeSenvq1|`>uuJ_9Rx1Db_QU-f
zPXp@<r{A7?L{ERN%+AyD^?%LFD(}SKd3x@C^7L@ut~*aZgx4oe-~8{9-gnE!*t%EK
zPQ?EEczXZF)4~5A=`H`mzI#t@(i6S<=>30An;Tgc36z`enHVX!@N}AX{by0pv)jX8
zyj!)bg}uI=t)kHBN$8oPFZ%IEnKm)zWfzEQTe;4DT07DFH2drKlg@^l@0hzN_S3#c
zr!;4^)_MKt%D?Dx`k1@f#pUsTdeyXk{h!k5)_PvXU05{5)$C&5`Ts@2Q%|Txm90~=
zim11-Z#>^8{MF}*e|5HWV(}Gup5hJv)IOdt&zN!M%!#(h_}}JvLf8Myo$X@al=b6s
zaz@KW$)48Lnc*c>nIDZ8iF$W$|FBxaM&|JE^~wvn<I5iY?p%6Q|Kx<=h`J{n{Kqf-
z)EB*XJa@;IAE~+(){Td~yW=lTTfgwrVw+Q5#{~9FtKYKf`l&sOweI<E5xa8Y?z+&A
zaZ3#%&%Xb<<dAFpr|MeY#HhD7H$VEc^!(4aa?9h`+;05WELz>A9jxvh*2A@)=km{R
ztB68NDK>Ut``YQ}^wI?%y)JyQhb60C`&FXu+|84J_yz>qc`tE(;~0{ez1ORvX&;Zg
zn8x<iYrRd{UoP*ee?C9yV2E>uweA;}kAH-9Zm@-)xww3T<4n(u22(zKv;On%`Hdwh
zq4x9sOU*8ET~en~qZzH>8EWidy5FZep!iRE755#Vsi%CjOmo;@#c1TM@BP<#<Kwkk
zg+C2`2#LknrCj-&BU<-ZJLFDyP)(D_{6nt-*56!y<6M~54|@)|Y@Yi2pEk<9Q~Kea
z%=^%F{)>m#h5tzM#phVxt+AfpQhq&S;>m~4T6Cm-?>9>_t63&*_<7$EwOZ?AH(J+*
zzB}>%M#2M?_Iwq_*}g1uUQ2k~$X;B3NS(L!^cLrZr_)8`ei$jdHM}b8$-BQo<o3jn
z^|EU<*KAoFIK|_lQfHEv=)Bt@)9c?{ip;p~E@FA{&RO|KzxRbq-RU-Y+I9EW?QYpI
zr2*cu#}41UQB~(A_AW7HTi8PlA(2(;9mgWBNA2vZS`aFG(5kuT^_2R&h;-AdnOQOE
zN7H{<ZTWGI`+4A6e)rC(ry<$urJH+p?d<K@+1aym=ap-j;cG=%-~F7Tf4u16HUFO<
z>o>-H_^~|c<ARBWPR2&NvfSO)Dz0c33sH6`l?vD-77}Z-e;R9Y*YoQeF0@wXzW(8{
z`2VI-p8xR^OHyW@JFofi#HPOaab`_n4?dp|>OREfy+%qmyL|DQ#g`n@O{YXZWj^Qk
zd7h5!-IZ6it$flO6dido&L-mCS@Gl7YX0UN4L`$DFVXgKLvdH@Tvb_vZ>z-QCi!))
z-2CGax82UoLFq?pyN^}1Ic$9Q&4A%pcEck9n@H|8&j0s*5Y*d{xTj{4UjL(~i%UG&
zS8gj+jg<DzeeJc`Of3A|Ww|=@|8pMQ=P+EOl@SqoX@l1C#I2hv>Xf1<urzz~h}ZW@
z1av-{aMO|X;p6(V-)_CyA^lSK@}+=923f3rnOjm<FBNeTns&+9G4HC+t*x!gFX%Z|
z)y!KWt8?kb5%)>Q`jz^n`Ys>+!6$G`yJ-5qbwO*N#JZNNKfai=ZnvBHCevO1FG{%W
zS54jHEw=COg9&yzy?3n+JO4UT+3x!IMa?|7Tqd{1kgq#y!kZO0Kd5)EJi%gj<ZJq@
zPd6+~|J+_~p=NXV$cz<>3>jBNbqfak$gj&t65;L%vzzna_m2|`(wmOUEz6eDIsPzg
zo!^;9!6lrVf3(avdUTuBi_E*d+pc}KGn!-f=;RK!%uKPoSA{1oHm7Gc$X58z+qP9z
zLNr5^yS5;#D%t7l8TZ`>uGBU?tDj-@<&OA_^I2PNZ#wfqZPLZG6*E2ce|yXb(dzi`
zaYxL9b$@7g=JgF154SCFxjRQ|p8PU~nklWjUf*BxVp-+nr04m6e7mk)Xh~iwGAH|F
zxp~7&k^5ICy+2gMvM%(IS-R}hyHVXaC9hw1ZGZLSh3oWVuWQQxD{5N2_#<!jX}@5=
zocg({S&b$vf7;K_6TPhTf5Vz~x%Ds2-AteGaaGOZKRS79ROY2?TK?CvGB3@$;1{*?
z{4LMuv%Bv`S!ZT%;a$4+;J@!1O0QP@w2HlU;BTGgoloIutIX=nYkQP)y|b2FoaG^C
z<e9@&zF4;W<3sKIUDIkjtZUECHp+Z>{(tYG%fYXC>yxeKWV*kdc&$@VeujIe%4Che
zgNs>g*IIA;R<qb8X|Kk?D}hdnx0IA9*{!H|eq;5s%7p8e{FBu+yR#M-7(SUGq&MZd
zX_xlpEBQfh|8VqP(S7P)m2ipulb=E5re7TSTqo<ZH%!>y|3qHpr>M$)q3hx?`*vUA
z3oJUJ-F{ZN<D6oBA`jn-2}bWG<UX0;TT&ZRbRsadPX4OT-=y1t1t$WF+go~NoT^#B
zc(GQc#-EJamvAl9=CZx!oPT|9B<ptg2A3C$`tsS>w!MuJ%V|69wRzi0zV8{SyEjSs
zZm*f}uWyO0?(NP~S@%E8jeo&bd*RJm&RL~O8FGz^o3Do*eS0GOM?KG+qq|?<=gPCv
z`QCG{^Re&El&94aMv>WTPrfL%yec_oPeJFxOP`(Jy#LksYvCjp=cU5DQ`>$=huiG$
zb91(Q&$`#M@QwSvFC7O>pHA4Z+G6?C=NYwy{zj>>JDnnJ4lV0;x1M}3RpyoUg$HlF
zoJ&_N6urj3_Rsec=k79($M?e8>cc8M#m=nwbZO1pTMMsh{W<o#<X_?Dhp~5S^Cj<b
z>MghG?RmZD=RC)`Pd=;-c|Ldczm$@dD=)c=&r;}Fa(>UrocThle%-(SE3@g>&YZv3
zWDUBWZkNrec>Vovbw=MC#^?LKo(_F8Yf0VlFPf9CSS?c7dfO_{<&~G9r%dM_#n)0x
zch#34`h1vq(>b|Utt-r5-nsGLpKq#IzBJF&Cm(*d2mG2~ul@HZbK9l#$zMM7)(8Dk
zTD)y}+wBQos`E{xpP9t}zx}Qt&oaa0jQpMZ7YzJ)<3H%ldi+iL%$dUD2mjX=&-uP)
z{=a1tEydnt-;mkA*ZKSY>$C6um;0e_ay-Ay(O}E=#NzrZdwsv}|9j@l!-~)QFUXWu
z_nw*f-R<zRA5U~mj?dVa_RQn{|M-l)=iek|CLh`_6{mFHuH)H`o#%JzPn@>*m+B;?
ze@a4ME|=CDJzD<8JjUN@(wC|AVZZik@h*LD-*74a$L34c?@XuIH7~iY^564izl3+b
z*Cp{kkuN9r>TZ7OJ7r$|kMyPWNjkMMp7-zm_V?OfxxMkrk`Mg91FP~}Ufx=G_u>3D
z|DySdj=ATZFKpk<!)obqVPV{JJ&m1*0s^vyLW<;?ZtY9dcrmwDBjZ6O$E(ykTX%b2
zIB$DCHbDBZg;4{Gt$g4G%bw13Z65bK>D7T%x8_g%chc{0?aR3;e^dB3Z>@j2{O<qO
z?9-1$-Lg;TuQ%Uw<=1_OVwsnDX?^R<|BBCgJmFzb^!F&|XC8dd|8Soz{Bg_P@|#@!
zU4vV$lfOg?F3nbdFlTO?a6!82-1>hv)9OC^ALgvk_N-rid;XMr|3#gZ4JO%bp7*6p
z#WpavC04_4&eVnR_iOGRkXrfh`S%OI?d$KJIrbs+{~vvs!{6VUNFAPAX0j(XX1Da&
zi5IpiGWX}LExxh%Y1L;xiTQ=;vUS?N6)c>0FS52IRZqRHEcV#3z-X`N#r}I;6V4r)
zU+w!n?8vL@CHbyX_NDy`Yk9Zj&X2VmcUKFWwkh0QE&OL~M@5Y`ll<Ax$=kz=^4F{7
z-(Op0UjL|z<GtGoIiY%$hxr*lS~(MBr$$_@3Y`0FZ=OW~&%EWY=N~Fe@IAcVwIE^Z
z!E8a-&)Yk{@5>a+J>+<aGu~*%eZKj!H_Q%Ycs@D4|Lu>PdD#-ypQ2?BF8ML3((_UB
z5`_|FtDn8$rSFR_Y;MVX`swn=HAO#Ly9A$};uh8R-V`>y{#Mwuw6*&-3%M_Nr6Td@
zzP;wZ(!MXZgy;Rg{LsEP_rA6g+nlC#qUYBq9gO&q&1q(NFX&S&Q;dgvnstrXeCr#0
z+0N5@ujIWik^8ti=Kr?^ttmgO=T=`9-?xk}e)ZFI(M`9vT&%wPdc}gHl^Q!<sjkgk
zb8z2}@-pL1!P1+8cRx0-cf6-@<KelVp+9=n4)Pt}?b-HPNphWS%!8S?KAII=^w^Xc
z!ZKT}eSdxLxq9n))y0$J#m=ssDyMzv@sZPUSN1)fE>kzd#oUhnqI|CS{7}y$P8<Jt
z#B&MkyPM(Y%~!5&`r2yFZmIuehvjN=_9X1vJo(#y*>km5ewItT|L=L>eE9tO-3wmF
zn~In;u-MkiHEG3NJJ-DAgT8gZu`eD*7r4J}7d<zf=k^zqle@pz+%kFPdU)?u6QM78
zmn?S_Uk`datJZmD#bTGLi=N*j{HpGqh%Y(xp5w8;)mHoBu)l)yeyyLGv)N;^U0mIk
z)f0Pfi@iMS`}IcUhtM}ZA(wVWKTV1~k|kO%=WV35&ZwqkTlwsNM<2K}*)M2M-x{V_
znb^JWn)&*KwI`2x?W=I)_UC%9P;tGg;B%d6wd4KuH&vAH+zWVmW9_f&Guj3JO#Sw&
zkg>R8rBVC-I!|+!FZ@-~HP_EpaLm|~F23&nnP0Il8qFN;hWF{(SEv4+=Ip*be`4I<
zT$|rw0rd>gQ!cfxwLaLfC1n2EsrP*3n8ZaMu^(V<{gJXGLuFCD@05;zrWcidT|d(C
zBK~rO%YP}kzu6_v?e#DJJU{jMyW{h>t^RYue#&<n&Yg?m{-23&y4M=~gLmqC6a8g-
zc7#4Z>{s8;U;18K>vQFTU%%7J@{jNP=4VshY`Y~?zDj&TPyPRx!g~wLkE9*GP_271
zTH15oI^VwBUuLzRh0gx}oPSyRy!5tA(UaLl|2|peT<l$c<b%YdujfxIpOBjC^8S&O
zy-i)e&4d;I6jHB$(7&DWcXCUcXND~2TGfT_-kYsFi?TnyeQCfaes=XGh3XZLCarsQ
zy-)bCwx{Er|2wYE&zY#IUcbuyfy1QVhf<&C-Za*isCspzTjRW-=e)cxF+XJL-={y}
z{uQ`oVoGd@+$Ou4d8e(Sm&MDeO<ME!Ezk6JrNG?ynRPRFOj@OzU;b|Q!7FE<Z{5HC
zMi*Dry!NJhsn3@l@Z(x_Yu@grgZgu(H`&KIu<rXDVDRqe=b#S~ni*wsT&vC<uV?ps
z_;1OBo!-3RSMIc>uKYe*{Zz)E>yt~@>7RUQ?_$DbAC<p)YL=&M%;z~-f!#lj-RAs!
zUglz@z`RKp!oHugJ-_YX=LKay{1P=*mei?N%}rySr*&i6#g!L?tVE+?vR=n0MMq>w
zM<i)$ZCyG|XO{cy#zfWbXBUpHnB?lX%R@V|KEy+OrfRoMiQ&eSiQRfaCn^(W&pH~}
zF5bUR%W~t5vJFqZB;DTk>~^lU*ljJv=xsOHvX|waOuFrNLQH?#ROf948*`;oT)T5q
z&u*Xm?C7?$1*Yxm%npW5SZ8)9R55mKvo?S1+BR+R*tJI#lUHlcs=pz$YsHoy4{mOL
zba`RPyoulH-`w2n`k7y7b<F8gw_4U{CB418X<5G8HM^wTYn$@a8mAt)wK6qy(gCid
z(2U4;>Jzq3j&R?)#(%y`nB~TE8IhXO6Sww8ghqv#zSL3<+dA#5)YV%)YkZ@wom@U~
zYiES|mNnHYB&9n`qfT3SY`rF!J$u^KrmVGUVZGB#=SA(96wzM4b&Z~M!JRG7%6%V2
z^Dp{gTdQN6&%ClcY~3|^y_@qF|0w@B-{xQ5ua<v#^Y$-0=JDrDu~@y``jtCH=h}wc
zkG`lJvrBU7yqz!B2T0ZIniupjHCue*wcV;~+tvrFU-B#x+Us_=*)C(ckNlR&e4U@?
z8PzY1D*vawKWJ~?ap!-5+o#vxsN5HHSM!th)m@9P8r6AZX}dFrKCsJ;@60v+-?z3(
zK2MvK@5{>zY>U6IcFzrnYYMHOb7ryBT+fHG=NI@^Z?*ca>v!q$FXIzGRUYr={{QCl
z?b2W8uc}Ra(5@FUPl)4Y_hyBnYab6k)e60RDEn*lj`Q=Eows+%nZ2#v{krr!?eO|Z
z3wC@K`0^&o*)iEO!1Z*o_?1tbwd-e1=&78TB9TAqyIpF9$JS)wx%FFYzRRBb{Cer{
znxCs<uS73<sq*2m*mJ#tm$x{WqFZlII8Yt^qPoVZ>-nzF^OwK)=g)tAj+E^xi>TOA
z?oeNoYbJ?%<AMbb?)UFl^77o)Dqp2VO9P(f2Gys2<XKZuXT9x#(^KESYg1nPR=nBR
zdA!f}OV@s}tt|nw1-H&zY!=M(+C{_ipWrH<z*Lz~xA)((1DQFu@&?|v$db00XmYPg
z@BH<w50w$0TkCF#nf>|MlvPu3ttOExVTI~3s}lcvd}8PAIi}8<`SOD6=h~y6zcc<Z
z?*3D#TC*#xer3yhue+DGdObZDz4YD7DAi3LKl7}Y?y%B&$bVfpRD0v9FN>zImkMrw
zA$s()_5$JQj}G$RJGWh%H}pZ&#_+nXuxO=v)x|$5;`W~R+4EhZC$VIy_9f;0ZS#4<
zr0a5;ugzO^_0#7a^=sX7=bqUjYgUn$!Li0DM(?F%yjkYr*-JU=SFF9aeap3+1DR&K
zGM{9c6}{c*vw8LPd8bXRcR!0+cGErkU;eDW|I21wUHkX+@|nK{D`(yPbt2yGY+bab
z|7Kxr)5|^f|0CSb+dtyDe)hcFrS-E9bNuU)TNi2mSk5$N;q0KRtjA{Ei(h>G%gd;i
z{@xWQx8Dl5%(m**sff#OSAUt+RL}C?$ZXQGb~(c<CAOipZt+vIi)@x%FJU~G-@oGJ
z0cW;ZlMcOKv+();pwPF8mu>myUQY}*JZW`x#>S<8lIQ<<t(0_Bc+Jv3)-~^{JpTF$
zavnRca#lX6ZL8>#%{u=CKAY^96_;1^Sz*7A_uuxz^Fu1V7H^um@zk~d>sQ$<47_<O
zqJHVga;`u8q1Q4)wq5RHOih;)-Ir|I*C>3kr*(aN-(!*e!a0)v7cw`02yxmY+xzy$
zpW`<-dtW{`h0i9q=2y;!%9HHrtG(LiX#UgVI&p#jR5Rnx|M%9q9OPCMxMNiLf1YCB
zg2R(N{`dT7b6KxH@&D{MN1XQOpS$C--}t^Pht=QC`bxX~4`Qkrcdsq~ZZiKi_tQ0(
zJI+0htlxfJc28$-LaU?w>C&n>j_L+(Jo9amrZDZ@_*vyy`Lnj7IY0jIXv{sc<t)oQ
z&!Zt3-M428AGx*Q+Uq&Jixd{utM~PuD6sltsTU@}bwEB|@yg@>95es<8<~{}oi47H
zohLHgIGxS3=`>^g+7IGStONgccsf-nJUI7V?7{yib}d;ev(t>%9qUh=bnExs+M5)4
z=HMnt?~koEI}`RKEK*iKF3F+dSAM2Q#p+Mp@jDKSZqJS|P!?SyGbj25Ps2}>ivHu~
z)*BoCH5*IL{NG&|m&svrd+MXlY)t{#7LWfQ+IxR_`gy)46Q&?GmHI#DB-B;(m)xBH
z>A&XZdi($1KZpN);LY?(rvAg;=Gm@xGC{^37sCzOq!-LxEYZB1Wm_)$;s3Lb7KHzM
zET3NMX(0F^w&kp6&%@OmpJy4j6)#r4l6~mM|KelY#ns+D`k%X7xZ&ge>}?GtoJ&NV
ze|~+Y*t4}orulYj&;R-993A^A>z!Bh+T~p4Ji))*;Lr3tyVvn~3;*BrU(NOOmX*{m
zmX)?k;wG>;d$mvDJ<0!4&*QY>+V(A?m-0N?6>1q@s;In{Siw(FO#~h_^-zPdrLMGJ
zkqgrIXjWY6e5&n9dx`jxrxUI@-{Q(NU*bGrUqgw|q*58|Y7V{Md58C<z!H6hxh*Na
z?Y}16a(=~{X|SZk<K~1v6W%p#k-1dm5v};Pt%T!}_yj+vO=%9b9&Z)DHkn8S)mtse
z@u>4CcZ}l8v|X}xLYcD_%S&z#b;U^Ig?3B6O{j8|;?a~1GE=c%vRgs7eT&?sFpu4e
zvQ1xDmrS0pCNe-isM=$%0&m+CK27OK@|R*KOmmLn&(vOWcLJZ|FQ!YL9@jqNRZ|a9
z#0gV0@4)}*RW^MW7iwyntCUGusjV(f`m}ZLI$ysxQ>My(VsoDJ>YA}j$oq58yL|q|
zyCzw`WdHwJub(&Yi}>TP>SK?uwXUkX)mPx18Y6onEwk^?^P*X{nja4@{&Dr7Y!K)F
zo$r!7&&~BW*mnGwL{8uv%MJC4C(53j+2H?u*IU2$I%X1wBJ2!)JUjjFT&lm5=Ruxo
zxjeo%tx59Nm=-O(|MJ9Ct~WKC4Y<30ww-~j5$<9WGwtcDoq9JgB4Ymiv>j*4&#gKC
z&oA+LS8ZhNh4so3d2@S2ZA>N^FRW$#y3_Vx-j1c4*)#mZ<pVew?!37Ad`Z0{N6X##
z+GEEh?0-(%U|0N0;@J1juaWl5-QRk@$=tEH#(d**!SmlgA}-1^XY=|#-V<{t>00`H
zft>a|kJt3yH0VqIlO!J{Z^-3zo#RI3t^C)ykOjni%8DGa^RCSPdeR_C>`cSo)OptP
z?<SvU+o=3Qo%d(LT9fwsfd=#3Zr5+}2^MvHK1abi`^0lA4g=-W8<^|d`;0G}A9-82
z$zDm(sA*?`{NX%VdCAAztT$gjo3XL7a?M#5=WY7-_aD!B@S!@f+fM4+&%T=U23?~g
zZCu5&j>}J3$f`+6r|&SIVYpr4_VYw(9|6e{Zv_Y2d_$(4%-d#4+U>Zw(j-Ov%!yC+
zK@l2XoHb6Uru_FjcH*Gj{C0-^nG72ap7?*aW&XR80><rrX0m(*(}hoQ{`&JKKDfug
z*xB!YjOm)wYk9k*SRFh5rgc14_F<lrYA&X6fBDAW%V$bf1-PkYzcX0ZZ@xr+#)lQW
zIW^l1%RNrap8V>}#|`%^)fj%}O{f*&RN}UpkzL<&>d5cwd49rzeEtVczB7M#sJ5tP
zUgy&#vp@e;YcSlW@OpZ_(K4gloc)sg&mIR%=Ul(w!eh4dx8@K1TQ(YB$$g}iuV<Zo
zNcwg9?d7vWPM=M^CwXkoMMeJC4-97>U6}K2C8z%B*N}C*OgftnoY}MahNAGjjCeio
z&$G@RWBOLVjWa()P5PyA;>{a&!q+bNq-mQZ-n@|~EauW1Cm|Uzf9A8q#o`NY7^^ir
zWPGyi>+BiVPcFVxt5ySEvfD7jG{Nk@jog!VpC1RDum4Xu=T};F<IMt1X{Qb6Pfv1Q
z*6>hbA+z5MC;M5=L3b-F{q|p;{WzsNZRVn&8Uw>QB}HHB+by%UY*vu|)>nSk%sf*=
zn*ZFavxcQwyRWxQf5zcdz9;8I%;r)x7U6>VoaHebWft#j%uVt?y>%0~A^cgiaEbJh
z8ZpV{w`XRF3my`W{MISS)nu2st8|~_f(->eD-tHy+aKt2JHXJuDmLS@X3_r?Hivf-
z?v0br?l`>0+=4UfO#P0P`<U8q&wjY?>`9|8rKB6xX@5%E&F`PgDWA3BAcx=nW}mu)
zv1$@`l0U=-PE>3;mv3*D_LJ*oM^f=!NlUw!z3~Pu2fp2U$-nGDSi{!%jFts|ZFirZ
z!@l}hzzj>f8^If9i_Nrb%!_QZxHE6U{gd0I4>>SQpH#A4P<q=Bxo>k7>$T%wwBNf_
z#*pUKQ2DNtWop5j_6~yy9lP5Zv?F9V)!rNUnQ}09n(6!K7Mz@`%G)St89vKp`rT^3
zf;s-X&-0#gzcb|$+rb^oR!JP%Eeeeb8+xOYPCbjeo60xgUD>2*QvDYd?kx>4xs}p!
zLipMAMBDeqd(4|X6r8t7J8@O^Osfyv_M3OHVVTD<8G|EFKG>aHaV1r)+TZF}!hESs
zi7Oxe5h-++PMEK2zDH2`$_q)6H%0P2ED!zut17w8ljUF2!7{o1@1gcHiOm{EcxFBR
zCc5Fi(qn~yLv_F2wV!n~Td#cku}Y$3-kn#^b{5Mx-f=tf|L`8MBkH%$Oev9nv;BRZ
zK)o58yHd2IAX~6dUdmjFv}f*aMH1OxIxMp)8g?&HQEGd0rzq6<>>>7g#%&5lee?MK
zU09$KQN#S^n!EC$58vKRP+W3>F?xH?#hHuS_{D-1zC<uvSY6mrvG%5vlSI!6yL!hH
zk2yBDPF%=zye>aLsdulFj637AXmP={4mZswPE@EDpDUK|SiZkQ`Mg|5&%sieWn~Rt
zW90?iKi3zh^zhEl*}Q~TZNbM4PmkS;-FlJ3;d$fYmoIg8OAB1yn>V{$thz*5PV|%e
zWAMfhKD`3=1ylM(K0dKJ;HT~S!^ZY#v-Jdq*MC}eNxZ(b;7Ier_}KZDrb`b8zkIO6
z#d5_qkM@)GcQ-rd`Ro0kecSf_<8$X;UVD9O-<}207v7hYm4APCeYv#JuIDUHcZ>fx
ze%~tjJjh?Or7Gvej5S9bB|G=7dwcW!Ex9v6CjU8ee7v)GJ_SixOx+%H+jjZxTSu-x
z+we{=zHxJPq5@0oJGmK8-%gYN)V|A~J>BP(@A22g<pyQu->ewwrNgaTrt>H4J}>2J
z%2)Yu$Ca70UmRPI+&T57%=E+Or6Q%-V+@>xwr*H)Om4n;e0WCZ#cMs!Oe<S6P9-f~
zDfjmwYwuL1UX#^#?TnwCXr1Qv^*7t?-0i<VeVPz6E9YRF`)MbO)&53C?{{;|2n_69
zyf|smGKF(O&TBJs<n6B6rC8M8nY2FR&f5&-V@Yo-<=As3E)v#p5BL)rz$8%jk3ahM
zi*B9Ax)E|qr&vF{r}`@?P;T{<bnAr8!nK_VM}(8N-Ip!l^2<Kx8BplqE`2a#Y0`vA
z-mHsF4L3PgIt4`s-t*H_udoiB<8hSnxQ^%Nr%e-&eB2<*A<A`4wCSqnO6N^N^{$oI
zBdQw@+cT#plvI2BiA?+2(aLLc?}m$d<eiX7JY_8cZ@zAP!FOoF-<HhkjW4oY0{=(s
zK0moT?vVAv7we|2_B`q!AbzN}Up<7us5&A{*vj;popwj}wwQ&>Q}qkmj@-)haXcPb
zqTk&=%fRH?yN?HX-Am+8%Z3=}gsrRCoLaAtDJ7cS9;&=uy<0Br<dR7~aZJ53dR}Uu
zCf(DiYSEZ^$a_-c7mq-r-sv&N7r94rt?=Bram)7Pi^(qWu^YclFc&FU^upw{Qr1NF
z;~D$RrzE#OcyVy^<r#YW4=MC?Z@O*h!*VxnX7l22OeLIUTx}&^%%pbT5!bQ%6<Xpd
zyj%Qxz05`H9q|o(6MV~x*1MQCR@;1tX3Y=M>F)Gmaq|h$<LGzi%~-kYvBtNfE?awq
zmhyWpm0kEHP+?Z$%Fw(m(&>GrR(`u~JX5K*I_D%-t>}C4<;~(|Ke6hMaefDQS6zOX
zS}5z?xvWy+dS{Kz+&d>8S=Bp)%sc*^;nl3Pix!&~ThwRHo%fpiphiMrtW`o~&XffU
z&F<A4FTLF~cka8>^ZK6K7D_H&w9)wGhwVFKwYE0I#TZ1yJZs2sVUMl5pTpjH_L1tJ
zTtzYSd6T~!6YQRSK=Wd!<DP;?lQLG$Ui3sPuBld7b#et~X@H3DGuMjShq;%1VA?WQ
zW9BLE70(yF2#Y&nU9WrU&7PiezbU?tQ#a4;lhn}@pFP)LuKmuQ-qW|G4o7s~j)?j9
zJ7KlhO`UUF`Spt;=KS{F!*JNgzEeC;%$)h{%_OVt&u<QN+lYlX<WJvnBDL_I_lHA=
zAJu5cZz*IgY<--x;%44*b@6G}b~uFc{CdzV@u@L{$4{exE!M8-%&*3Jh5ZE`F?pGq
zKXr=p7EX3OdiJYH+M7dy$!+}Kn~ciyb{Y3ugqWS0{`iB3s+f-CtB<MLu3<W}7{o4$
znNP}9pL#^MgVA*DqsQ0w^HmD#&*MIt`#^Al>A|lj1dn`f-_e_7nlb6QZ}SD&?=1Wr
z8_#gfI(C5fsLu0@SKQszpY#M;kJj%v+gbh5Bl*pH!ynax`#g$;^z@E(_x3(Ali%C5
z(c7=d_3^)>Pd9p-DSTyHzDTc<Z{=R6aN#>%KhrH0-HyI}p8C<ZP3!mi9p?7_i%OSy
zt};IVwshHtiT}SH4Zo~(Ii=(FZ0%F4s)8b4t2zJK$7ImPp7ZF;)T$5nG#+icT-3h6
zx<2yG@1I9}awff89lo)O^W&rqp^}O>W_6tW{xLY@-pZ3780r-T(iOPU3+KO44GZ6D
zv2f+Kz6je{DUX(<7P?E7FEDMtoIEGsORBrptLsP1)Q@{szu9QHVcCJcNk?mK8!G;a
z#;r1*@VGp^*}A`1^`1lPbf(WTf2!sf2hF}<J-6m@z4Z57IZ?jsNn%_(GT!ihyzF6F
zsBY+H>iJo8)oK5A%RX&UyWmmDv1x~VWue*+_WSAqg>`ikEreO!rS9vz6F)bDY1(Oq
zi^;AVe!sQVn%Bl9^5K0<U7ql4bB4v!BsBY+-21FK8XxK8uhA}>z<y24bJEpMvZB>V
zj#EM;QZw%fa@TWDJ@ipW@7N@trH)HW1iHJoJ_&j`C!)YgU$l8m=Tp8%XS$C*=c}-3
z@NbKZ2|gXAkzW!zk#%*?G-v0grISvHM<spy(sX)K+qKqd`kgy>*a^=noA|WJ??i0S
zd~V-8M=s6XaoVEXfdAE`C*Hc5M`9BXuwHztqnNbbB%%4uY2DQw^?Rc>B<4<FiO;<0
zxTds9%wzAVAn!fBRdOABZVBC$tekD3&nhPFnWFB^o|JoSv%?e9X%mlVU;gZn67H?|
zaa&;=+d98VXWmU??+B0UXLqWO+9q6_ZmZ_;HuvX@8KQG6?`WTXlWgfc$4i!7<=f_%
zO5RQ1UPdUqXFDyBB>QAdpj~~9YXi4T!b$b8sq<Kc^0(<I-b=LQcj4Q#$6-&_Iq4?u
zH7dqei#jSyzg8%ebUaN@x^^wO=}O|Xve*fgQ;dT%d#4@g+rp!ew!=>NN#C{<;qB|}
z#98{c-f_MoJjeRp^J&T1yHb@m`n`-)FuD9m|IyrQpB<i5oDM%?eYi5Y=3Zo8eZ9ex
z3uo6y>wJvO42n`d;BZyMTmF!4PYd(bvePDqbgw-w*{pxN$o%0nmm`fy%a`^voK|9T
z+<f{|KGV7t>>+2*N{U_UP1|b8QBtLQT_9_#C6~y#Eh$1-bLE!K+v#{Zm*rLlA5-gQ
zU1`p(CuLZ<@;C4CU2(Q*N?P3c?Q@huB3bH1R_JVssncz3<1n}onIq}8p~%+9^!58~
z6`Y$di!lH4($VG&N#tV6_14+V8M2anW%8lF(+nEF&1`nKU*vuIok+-;zy%)^z3ZJq
zUk1+V*m!A@?~22M0Si6_o)&5fb#G`qXFBaI%j%1Vw|sn3=*@dDOZlL~Yd3EnelD+x
z1q;4u)_e0GYW-?ax~1~iB)<h##R4m8&Kb1_sGkX3u;I+6wt(epcHHBim?svu<;}uJ
zm%~z@E0opU)^+bFZHq{1;*Q(7G|-<bq_=}zIM5(&Ym948>yZPT$`aPPnnxmhc%-g1
zecq+oZsFa*%p5Q!Jfdr5jpWqF4uU;*r|}+%aO43UsudFTO(0#haK}m3*Sx0%lh)>m
z%wG8VMV)tuK9}r~OJ!dgo@PDDePXk8aeic*K(er5h-~fgN&Y=&j|7x|i9Mb4Xo{fw
z%NNztmanXlp1RuV*S@E|NmGQK?_T8BJ>I!_vc;^vx|GiMzQMDltvI&3TAup0&MoJ?
zmh{K9EE~6WUr66l|Gq^sm#xw8yX9M_M7!CE2}fiX+G?IjGj-ekp(gdETd!?S7h`Io
zw^idRU&jS+rBCNDUCnS<b@W;EX)mTLQp^tL>vh%(K3ZYOG^Hm0XOlppsngyAb2gcH
zEtAaVVNkV?v=V&OV#qXQ&bA)4Bbug8n^*iv`zZ8i3n$Z+KY5iC6zbD`6c#*RvviJv
zYoJy~mg2@Jd!>I)&UP<4HvMyKINHW=K_GeWE2~*Ivl^;Cc5GfIlrYnfp~Ph4F3ydI
zBpAJBMZH%(;$`ZzIYA|2yFk)bPNpkcw#ccSuoC8Yk(v6pRYCfyz+0ul&aap3M1;>M
zELhq5HSJK2+2Mv&+pfhNnzGWc{#EP4qStd-Zlv)rn08+K+M;3Z)-dVYHQSaOl1q<p
zRz~i)b!vJmmuRrCv2|2`z*{d-2Wd;|Xz8y@4Hmg+eB9jqRVzt8WMgRHmf5DQH$t_x
zSxqb3{!HNihOYH4SLR(ydK9*L$EqE-ZtrTmVft#_>P4?huh|}1ANtYMaNGK?9E^SS
zZh<}P^XEyg3H+-Ou!14#^Ox;$z8zMkPKM`wuPGj}TbQ)^jPZq8{%?Y{w%xL6UfbPS
zA9XbR%;c=vSv%50Vy0HMMch{@3*2%jY<BvLuNEK0SN)Ls+_T|Wynmyj6u;(?<R?2W
zUfUP4OJ!EHsJFZ2-k*-*cZwn}cW(DNdiWh%#GQJJ*D^_KJNl0Lud`zE<F!7#tLcVz
z=&nsh?FV$HmvS41t#)B@zGM-Y5wkp%d*$Rc?*+;i`>kx6k!0)F;Ttl)uTk~l<u!)p
z7exBQ=3e|z{75ESJZY+{_HEsyn@6Ji3jJPtIOTMQebbC`*>}~sqe#d;qS(UjZWaH>
zvZ8rKZtphMuTytpH4K`vxM=-X)1;81-z)vjaId|3<fi+aho27ay#I@Ns{E2qfv0{}
zUbywfZPw-^5{s<d=BK{(nREDvXXyN8=Ql1BT5T1z^>j$NL{9B))9D7L7cb=nv(L!i
zJDp+c#Y^jg*>@a{a%)(8@zcBD_8pghF)ALqm?XaHv3T@(f&F?>^|yLoF?6qa`}=ZF
z@3iuzR!3~FCAL_Iu6^TIIzedlbcN+l3)6EZs$ToeS?+f5>h@E$*Nm7%k9sIDpVryD
z&wD|u(TNjQr`M`;ZjErey8Qyz>sIEBy3-QO+O|2qY8Q+oQ&Lt=y{6-|c0yp=wW!p&
zt{bKr{@OVC-I?Wwe;i-4nscL7y_<27%D1T3c}eTLFZM`x{@r2f^QPDER-p1n^N87Z
zT?`f6Y|~WU313Tjl-GB$N22rZlv1IMr<1lkc70@@tE=>Ho5bCWi45nX=BqeV_PpBW
z+FWt(m!e|XF%NTnsj``0%ag*7cx*S2`WE&&)I2z)V`6@a$)DV7K9Ama3vM@-dRJfe
zTIrEo&&0eelQ%`L%aX#6p4e_C^>6jH^_}$=ZaWWNWGIV@=3la-(Ya;+!9(*I4(?d7
zfloQk*C%J%_4Uu+ZF?rL-At`)%lX%Qzy6q2d8)pPzs7pRVwJ(O9f}X$i9SvI#Ii5O
zxXz@z`tmQ9sn?EbaCcnUv3(7DN4b*Q<{chy%InwM7yd1>@$#Q{Oy=8qe@%bX{#vHJ
z{iy7wZ4xdU9p<s5oj80guEl0?(DDL%5$=q@<hx8-%63B8FAg1(m}lDm=0V>@t644j
zc`~Qxcfa^CKdQKM|B}KrpJdwa+4cRtQzgA|+Qd5{+vTqr$+R{*|9EHLZJibC`bV@k
zv!mGVBiqww^}pu+`0+^lwKq#-B>y6tV9w~(9GiD-+_d7<d9nRl<<y_;I(9~DXWsRb
zt3MPz$ox?q$jzNRP32hBW7niRtJxpy;<e?KxgKG|m*d>ee3@19YTG>aG!7%NH9{P}
zYKv7LM)vA9|J2rKZgO<*(`KFDQrSFHug16asBgxdLW6pK)vNWH2llyM$!m>Wm_B{7
zG{5YbcxS^2<{A@T6^K2UF-z;ow&dwiA0$5=ztF$!2fNiTJKMiU=EY{slsX$Rc{S^L
z-F-P1#N^etFWn?}u_d4J`q^(6Pjkheo?4Zq#kl(J)f2yz+BOCnWiyChm>wZ|;MDca
zmpWUI2+eGLbbHZ)ZSRXOvWC}tN6o*~(6Dt*M91ybYxRGeKl$nPmOorm|7_=INjtQB
zri@ARb$iXtR%I8ii0{q2#rTs$?t<gS0`nbt>5{9pJQq&d!)LWPwRFOf`<k1#6--;+
zeC5+s*%G(i?Jav(=*Qi6+;p^BYTA){*J(du+2=~yPl~L#vAFnfDuab8^Q70zx7O7^
z_T9H)G0U!_3@xb)o1CxZXzwj3aCSerzP#kh*VHQamHOGHIx7!$TX`*B8??HsZNr9l
z!bR2lu5eAP`nrtgfcsRdhAXQd8?D&Q=<!8s;p8j#w)|2EDV@v1F>|$)eskE&)w||8
zSjd-4td3G=&N>_Vc9P?dgv%~h!&we(53;(#zOa6k+FaEG9?Y6fq2ZDt8SAoS8b9ov
z&fXJxb`s<5v!Q>T*=lpvWu>QQUYctd_H`%Ef#ZwRR;{`2u|SbcVc{y}#t(Pr{`sX4
zV(P`FV;CN)&>UwFzIBenkFpDj$)WnE8|I%44Lz+;Gb?M+t8%7?zulQ%H3x+L))P{=
z?a&o4RjK)1y<zy%S4|7^7H^!j^vIv-JG;_3K1|*DgE@A|&R+kh(nPmw!Rm{D%~+t)
zs=M3kL}r@D!kzWunXB&0Iu_6C(aLuCEF}5!J)24Xd#$rIHFvU>?F@5^O>UZGa=c{n
zgqa}K?&g{Tcf=e&t4MC$$avP(=+j#^6Z^})UEIr+GVF8~*MIn!t#Wq%sS}B59t$mB
zMrry~_)b_++0zqsv*Fo-o;!CNo|#_v3RISH{A?%L+MlAF`OnYoo4GUB*|od99aV0#
zbk1Twy+V~YqwM5~x4ao~_hP#=O$ANfPYL`{Vm9fSeo6|z@sbNN_nDo2cX4uU{ib+i
z4x5Re%9UAcTXbJ2zFkrO{ltl?+w*&Emn4+9X!E^htgq+SOnGqm_OCz5wo5u|rz+a7
zTW<0<i09|rYOl#E$0ykDS#C0=oA>9td6yb)C!ElKsma@I+xBO9wbwc8q!ah=3;Xu+
zSC`sk3Rm?ogiA9V={?N4SHR#1!-jt5T>=XC89u18_b44mVm{!x@tg32%zEaA9sWD|
z8S<qV$_fsMG0B)S7~DIn#q=OK$@YN|-;aIMO#*hER5*Jf?`Aa9lI!dq%DcDo%*tgD
zVy;fg&pfl%B+N9PZBN>|tX`g9hhnbIyLais(e^EDs}3102(E2dqNNwf)N97T8G2pK
z+xTGi8ZBown~Zf@8qKH9hT2Zj@m*El-xIo5kNKZL_}7^{hupWRty;8h^0V};T7gxs
zbeQk31+}aaG<soI9J=rIl9l_8MqK5REVvPK)!XQWcyZ|eeSTe1KfYXZxEd*0Pz<te
zV?WC&QwGk^ZFUwP-<gCN&z<r5Z0H^52HR(k%)d^2ykAV^=zhDRKku`T*k5z+```Ab
ze#gF|Kju%$-)SGOcmDSQ%-Q|>)W`c1;xC1R6f6gG_V3p}`oHdLMbRJi16SD?H2-~H
z{3D-X!XtaePrM94f7A~oF*k_(=lrmR(V^=<OT}ddg`@SLu=MyipW#PO82^Mv_4X!D
zY7};zQrIQL-m>?>F3B>Eu%_37^<7V28kN|&^D2m4`<xw-JCWtzZ<T~cUvJD1jdBU^
zizwK8rBBx={!M9^Aa`duPwRe{r2g#6MelwW&Hm`9`&?hp_PNdmSMixwo$pQTOcbhb
zHaYL6wLs#ijcvZe-Fd%kJP%k1ZQ$ytHi>F@s(wvO;o9p+@6N5<9oN6C@jX(--%+1s
zo6Wy*AJZdt+t<NKe|cE!c3j<1rx+$<vS;(WtFPQrwlasUns;?>#EZt5nOnV{P7yp3
z&rvUa>W{9Loqh2<zZK~Z-WwZbP3Jnwe$U7$^x%Ch$*=RcN+$)}=KL!B=dY(*?NX;)
z#Sq^2LG=aE^_*Wfb8T%7xc09@il?6aw8oYR^(}{PiV9!t4AA@WdQ#xq5RF~jol?!a
zbiRLIpRSrYjh!>#T70tFrdbR&E)C_svvt1oaBY~&p#D3%CwM7SjR!+b#_CO{{k0Bc
zGO6%in9-u6!jQ|Rppe~gOsYAwL7KxLyWyCCo@jy*V;KL18w=b2xZlW;TUd5_g>IC{
zEY^V6ob{s90(Wm&k#3PCzwpDswWoBrR&_1jryR1W=a*Oaug=9$cUx9?8of%_<??NH
zQwW*Z)75=(0bB7E6DM2E#kVp8_4;<r4q#86axU%!!xhC7vp#;<HB;-4UigKXeDc2;
zUI{xr{2b?exwGKTi!>MB>48?46`2E)6|;|}$EU9<m>uI-pMLaqMXS=91L}`dR()6#
z<CuOSy|Pt&1JnG;OG6gAty{1;mv{XK*02Yci`7FjtS%fmbAsVY>jcxs#$RvGUg~?A
zVW&_$51ZCu3)YY8FDGw1&F=L>hF4B~@0lot%}2T(OpEM4vBte3`WoMn{q8R(K0VZU
z;}^40%D#sJ_0t0G&tCYUK6pw))%1`@!9F$T)~so|wB+~9C0{Om63{FCHOWy!L6pa$
zYQj3}zif$jV|H3h%|Bqo<|%#Qwu;!X-;S4xe*M4lP3=QyNc#UDGj}S+I7J8xu&6pT
zY*5Y7Dpgf+T$E_Y=&~fvsc5r<S&=Y{c0%CAMWKONccThcOGkv<Ir`|@_I34F_ifEu
zEhb(g8Xgn<`jhqj&o-NFCRb0cwEzFT-)~-J+P>m__cx!LxwH7(&SQHId?=`YHpj{R
z#a_pGZ(IHPKOTLsvi+<kPr_e=idXrqeo2pyUsJrTF_(Xrd%LxJ`;5J;Q{oI>X5LM=
zS|P03C7h~M*BWaiD$JR<>n6|Zo|zUgw)Mi!xqBarC7)sOlKi%l?F+a3i8%%uXX=+2
zDeX6&Aj@||#`L*iZ_pa4%@b3W*k(KETPnPt;uxk@;&9i_bjEra9==OAr-@CScyINI
zDgTw8ud&NG_esQCYjJg>qs&8vIl@b(s+FJZ&@)(|%Gc2^-7~YzGc{#Srow9(4%xCx
zN9P*Wn<^L2K6p3g$<p3xqmE^YpCtGGOVX<}J*nDaaQ)&DRjtL_wb-oo&bU}}C&A!L
zOsdX7gWrcQ8=1{nWElCYATlQ`G19g3mczM2JCCYvo@2~?N_?8e=_!qDyZ+n}Jo@ZY
zcm2uf)6c~UthUHKccwD+Nw|)N{@m(C#U1OGigd3%5>s0*IXx_h!@usl;+a^B<xBQ#
z&}q}$bEfgo&(FQd2O~ow@?@mXX>xNv*VC9A8s&6c$zof<yOYJw=UQEtso1~!(WZkb
z=kKiWY+ITdBe!!^%gtvme@vUEtCK!oUwsqn(qgY?x+$A1Rg1sWy}5FTRrP5x*J*#X
zU5gIwbX84NJ*w5a^>}^Pv$JzU!=kn<a4I!UJfk-=yl$4)^eXL;@~O>B7IbdTu8`W*
zldW9qJs~-NX49V)_ulv3eHeDB^Z43>V$b3#D>oYbH{k!tVb!O0@ZKV~Bqg3~11Z7k
z(~l;qOYrNq?o~D3zLxLu)d**U!0x?E6}K<-igd2e^1Jr*+AAT8o(Wg8>ZhnKH{X6N
zVh6{bdOKfxkC(M)D*SSiXXJhfsC|{W_vtn5Y@5kFde_*^9w?}3Z2ZKz+h@K^YUvDv
zyH>Zh%vrD_w=<|i^;y7j4Y{*{GQq3)qmNI>ljYnccDYsab;KUW3mYYyzn!%@*X=hc
z^Tyhl%hs}9ymPr!J+6J%E!EjCmn`S3&roBX;&#Q=<?f{D<|&%@vNfbjrY)Uy<?gK9
z#)SndgCbP;i}&<j_*(XDxvPlc<gTStj6N6N7I@`3rzY8t>G8=qp2_o?!;f8*`Yc{i
z{Nm20J8m)N(}faNb{4(Le6qGkd-V*Fxm9gJ5sb3Nr=3GBS4#yhZr0vkzpV2|$Ej;k
zu@UvBJVQ&K)EP{-4@f$7m1Az<)AHGW_lZpBI-<JiX(O-5OxBW{MqOu|g!W8Pa-N)$
z6X`S2a_TwV1t)Ztoj7y;=qCFabr+&O^;*W8J>y#7?>_&^JtOI-xtfI{!RNw*Rv3TK
z@{BwkZ{`{OTGeaQ%X@3tCaZb$izj)xmRig&m}O#-Ss%3W`~62Mk?-EQPh{eq!ZdRV
zQ}2}7#u|*XT$oI{SuzAUH+ZQyXsa{0Y8A@3-*Z{D)_F<L`5*af%>$jc%v%}4^;tGi
zkijK)ue9mp!>>IvrJjDMI+ZBA|Ep4+w9B7!3s=9=sI&jCIo)4)fA5ki$)oRM`mB$>
zx9Pf{q~B~F$fjSvfM;KWQH7n+52r^Oi?{qxZMB+x>5-6EcUmlauwG6=Y^vfreckXZ
z$+TsbGauDY)z4o4Xw6cMIN!iIzJYt%UaZ#ax?Z$&u|{0EO!|t>NBJ-ABy~N?*X-hs
zi29T&x<*>(Mb%cXmEESMVUZ2nq-$>F3EavPxs@k$D^KiJo%)u$^-5drzRG-E63Cw2
z&YF2XO#5p?TK%M_Zw207_q$kkSM%2T``zENr)TVcC-nCEUBBO^cf9uXw3N<gmF+(^
zwJQ8_QYdG}PXCOZ@fnp48I=JUl^z+D5gC<7maE=8Bzi55+vwe@z*Xzlp0N^}uqoW5
z(#NAR#-q~7qcX^&(#zxLV)c5}r$Lg}jK!ARS@J&cc$Q^^C3Dd{!J>JhMe~G<=7|@@
z2^9U)d9p|2iAwaG!@pLuD(+twyvncpXWP*~p&gZx9Y1FaeC`tXyh`BnEP>DE@26e=
zTBLAo_A=F$b@A7=w}xgP=2E=yZP|ry{tI*GXFRwk#CzxVqQ+`>lY;j}%<gBe)Yaeg
zQQgZ~o8WleS$oQ@)msx=g))90xGq%lU^nB(x+x~|0&5SoFADwPv4u;%JM5wGMXegG
z=rtnUizDJA1b!a#T55O6$v$~u{EwEphr+*F1%53R_%&7F*H(dFy#l}V6~EjM%1A%G
zCE|W`z^~Hgpk}30Yi==Zz5n}4-TM_+&v)EkT;H=Jt3G9GrQ6y~5$__DuWyTZAF<dx
zY2$;9ZUs{FW9Oucly8<f`FPE_@ZOD85n@;B?ym^h7}gV-a%}rU18=!_&UVv&Q!8T~
z#VyN4W@)y5o8(mOy|6ZB;o>za#_KOVGA+~p{E9)Sd)Cyfi$)vg^}ckty>|z*Ez{=y
zTYELWY>C-ZZx~Sa-qNkyd)?=}1Mha9lF2-gyFTLfiZ}mU)uxs1eETc#&Gly?rFly&
zO&k1lPsirnX?&u0c5TQv1+TuNJ5Nuwo$*cl$+2+FY7Wa69$EPsl~?*V75f=h+FED&
z+?`tSW}{l6;Q1Z*)?F^#d!YAqgy8j!GU2g0!E39MoaSUGF3GO{@@+ZC+5oqOz9I{K
zpImT@>(~FH{%Nt;@?^WE$<9GqJ9#G9US+y^L~QB4D<u)49WRz~?ONHCr**kE!_nc_
z&5QGPotyLC`jf{J+3K4+JGWgsd1_vp_=XcMZ~X$l2|l^D)GzYXZ(*NHPLXTx8LWTM
zziyXs3mBy&oq3^SSo6AG^5#*oiglNxXYw(emKF@(_&}>{$2muz?%Eiu4k5jDCs()U
zXR7>G`P?Ru!W^c#)$RTN2SW2yIQ)fL)Ga;pogQzn_!xQQq~F|wXMUE=oP6u#BK_-0
zn@;O?XkNSRJB!uZc;bR0#T79eTI!Cmt^K8Q-nfb#@_X^twf5rTydT{zKkB<(esu5R
zk<WIx>8-<3-F$D~<q926S4Vw8FnVe7V##awo9Ph`D)L0v7FO;%UEKD-vbpk$rH@1S
z+Wrf+`&2c<+rKV<^HfYDX|0#;1;s>5twoV~8PmFp_V00C8>5%?v?x-0b;{Z`@AiaM
zX~*B>T^8qbyKL{=#msvzUcIhR|HZW9NnXL1tFLQ~moAG=k+xoK-srmZO=z3^ol4H7
zWf@#+HoN{=&GKLC;Qmt&k4r|TM!8P)ESV<q?p5r!sNmLx4~6#bUBz5;>FUO?7ZKVe
zYf4LBBs`nF=YjL*xz53NoWH1K&;Q!@N~h6kokZID<?H*mYzqG}ZCU>92$!BKYsFvH
zU*j%)y)&ri&D+n@mOd!GF2C7a$|~S%PB51|^Pgi&Z)?0T<J#5hC+idY#^=XupC25*
zS@!B)eOUj#ZNFy=2(A45;qKS-Z_c(cG^&3oTc~zmQijWhNP!$Nmf6<oAM|_D;*%@{
z{%u}8_10R;cag6OVw5cO1ZAdQsNNha?RG)BzF5no=1bW9i<<8)zLj?4GnyXcdRj8^
zna9y06OOs}mObfP<G%Y~+&s;iryr#l?ishMJ(;z7mekjU-io4kb&EAFuHujV_8{n0
z(M8201*hew1#QoE^_~2#GS*K&ODx-b;rTencTIOh+4hL;H@KWF^ZQi!l=Yv#O4s$a
z#LJ#NFSEbiZ2iHDg}&G7$|9Q1?K|tl^*(yB`P@^B&lLpyG@E#8duPbLvz6AChrUO1
zJxeG(_vVqw-rh?k6Aqru%D?2k;<8N%%dP|elr5Eo3Vlp(^?cdYJ6X2Z?+{DP@4t86
zJ+LZ%!e<pUJvuUUDgTSrWe$5^KEE_^(X(k=Pu=tMTsgmVbxB}-#f8dUYgVqm_RhKb
z=ikWWsd|F_7Vr7KdcJ+PaPnvO`3r-eZ#8|kb<bZ3b^9Pmu3b83(h}`{TLv$fcxL{(
zP_50ogW`93{+;9T>bXmh{qf%09jC5^Z9XvZugracKbiff_dTo@<IDd4bN#smEYX3i
z|HL&!UkS8|-+y@AHMlA6p_^F!ehV>GeN)dcsV(u_1tzXc*EEfFXXEA%N{JJnSQ+c`
ztTd0Yr-UWh=+oD8(SG@FovP>mwBnqz-!gh-*4f|PseJG44(|5<@b0mTOr=rQM?1d*
z6Wt~HFQ1)1XTr1sf8JAToem$@Jro_XTl&QUyANhp-|o7zYLQXuer8vVW^EzgU-eJw
zmVa1lu<4$1xn|Kr=TogmlYK6K>ivAH%y>`z$L#1ShI7@0gYLwhU0<~=_1!v;iS@7F
z8qL*;I99mFQ}p(u6v_M_bJO2$=~Ro&sk^s!_Ku^UcAi#?ds{B9{&cyk;@gtb3l7-i
z><#MA__lxNo0pSpV>d0g_P;HB`_H?c&ekVIx9bfH?RQRba6bM|Ft5BjZkc({(WGN#
zR~|i@yIk1p@S{(;*BrL}E)nF7s=jn?S%-qq>o4E-^>JL=vZN#BG#KqZdE@qbz1bBL
z@B1EozixjrzY^zy`i$nFn}MleXH__xm$Wzr9a1p=SXHeT^`i6s#P=%C{yr&6@-vxy
z()vZLbiGC)dvwT>)tZI;Pmjd59g#iNxqFIGxy9#m{-T!orT*0>uKa<!L%ZiKT>O2O
z^xlg`Rf|)<xLIdf#FgL4dUgE)$9HediLwX&*j(0^O)i{1H^i@?Xo>OEI6EJ;g#wld
zi-UNhG{j_87fxP!;bhQ@6m|KSg_C0!-WO~rQkq?qWc0lLh{CDPlX?3BZI%_-tkO(g
zR(MQjagSw_ahj&lGmUdIj*2`@-hD!1bJVI>4?|ZS@2_Q3`!vG>md+461x8k_cA>Lo
ziH5%wN^*Gd`pdT^X*;f@YE0x&owRTXciW`UQ+iLe7B?R|R5kzQgN>84S>v^u^`{=3
ze(Koz5VN|au~+J&%3~v{`8*l^HWp8ny5&4`Ym(<78O_ALDF(-L8M#kBwH7w5EZ&im
z68!A^RNs3x^^?oHaz2TbD#~SFyS03BUdFttc|n`E=B-Kg-sL|XjLIjk+kM|Rbngb9
zb+XD<0e4qzH&dDHEk3!#&{KS}rRZc!(c;@}UY8fncqQu<TK{9?w{@{cx5jjP+Q-|g
zW;;goPiG1BbPNp&m?{#Y${Jca@z=Rm`^t1R8LGG5o98@f2Uph8rl^$*!n9UQ<;vO}
z(D1eS?bIWD&yIinrhjDry~KFUo8eyHrcSC|ni7AL)jCXL+w4x+Gy1ugY+v)FhUuz(
zOFMZ_=jQCxwVBhlE{nWYKT9k!JM3q+uhX?zrm-*PEf>y}J=yl8R$Rk0{`9e~Q!3SS
zr|k7R6{nuMe)6X4o;P1FeZyOK(|-CU^U|qzu3GKXSGs%Q&&yV?xob<4x29jJop=QW
zZM^c=d;dG{rSI0pzBsn(^0%u?q-WLtXkE7^$~<h5+TC#P`n%!Y2z1@!?)6`#|J`2g
zTgZJkLh$y!))MDp{kx7oS6}<PZ1r!kl_)4|<!`h7@2r=+i;aEpZSA$(``(`vYXyIW
z+fI!<IQz+c?WbV$p0{uIt9uQs2i~%G@`ddFYUX(P@6n~z0heqwUdm0W_r2J>NwaFh
zYNKmwULTW7VlV#RJvD00&5ds?Hol+urds8<+{u0Jo8G@{lI@;xyI;_HM)a4md1>_r
zQ|o;;*{j`@pZuoZ^V{)V3Hq1M_xTH2cEn$}t>@df^m6APP0xQ*RO-DZ*{hzM|EeqI
zJI6e=A_4y&OM}*Df3n~C#NYeVa@C*pmnZ$n^!!&M{zU!N415143isA*&sb)3dcW|`
z&y)UCdj8v^QXe<T{=VqWzMtMMe2>0=HS?Wp|8CNLm6P$4p6Gjiny&KGJ9fhE(^qfn
zPiDE0Joj#D6w|Z~>YV!CV02pQUy-<}Oil2HylsD_3Y*^R?2TPxnO|-hKY7l2&vV!7
zRi0<Z79<r)`~F}PY<k1F*LFhZLms||(vv>$dj4orsaec@h%0W<ow{xf$LW<TgWhMI
z@{T#RUFB)?q))ojKPl~>-L+}S#-+JypM`#_d&F|zY46v!OZB}i=KNNDUUzb5e9^o2
zO~ql=&dm$|G-x<}kKQZ0TJv`7DSnlw?2|q*d;Y9<ysnvDWgsuCd}H6`=(%ZsZl(T-
zFsjp$v@et7{_}2Ar{VtDpX&O)zAWvv^k8z>_rz%Fwk*c<ZI(=YUX1KZ8=8X-IBGsf
zxXvVImblF0xAr84U%zy{-d+`2w$)l_-y{gy+qFJr{Uhz0tA9j&)7tm(yVgJ5YEk<V
z-F;Vd>ZQ6}*Sz7_8{G24bh`G}iG2sc^H`L&bvPUm6YRL5#3UH)qL9?hvE-%_)7_kS
zmR+}%m}Zt;zZu^zsrJ}6v@rGiVhM-8_rI8}*dFwJeOb~4|6>d0_c+?8t&;BN_ddfP
zd~RWCO-5Jw3SnE<v%feeEvw(gK0z)+vaB`eXw-TBb@S>OgU&OoOmEQjTKc#wNbva)
z>FLM6246@}Vtr_}cWcI_-gK)a&8jaGJgsi1_Wrz^x+JmS`o!yZv)3qR$-7A%_|LyL
zcDd=7xW^e5K3O2NCfQBqnxQh^Yp3p=hk4XR0}KjRzuTW7Iy+YM@Y1e_K}QS1TN|y8
z{#5$EGo;dRzI%P-&BYz^caHz_TB&dPf6Z3D{~9Oly*~99X@{`xT;$X{Ni=KAnt<d#
zqFHO!1pJI$a{J7)vONqlyiP6rm9+Qimy0W(Yt7f1>Ob|=@?DzY_d{gko0*lqE-RZ@
zwR}ss+19JquPoM(cQsN-yb<a(HB*wi{@Do&uTvm&>cWGqKY#qHKeFc8wL@)eGA6=V
zIX5>Z{+apl*R5S<GDUGe!!D%$(W|rRpK7dVt^XwcyK~X8<Slal&pk;fQZL&+<@vMT
z_<J#XuLW<eb&i`X{-H#AqvO3f-Q9IbpShpxS*G^O@^!}Sy7N)9wjbL4D&pL|qseF2
z2Oi(JTOpq{zSKs3X8#}kCx7(oPp@9TGUS`g?0tXd_#REvOJ}QFXs2^DKQiL#oj(Tk
zMs0I$8s5G$cY=KQtK8mmlk0a?3QY#1VlMf=e2;c~{v4)NJ@c=(@|uOkyvyRQPh`39
zKQ`ZdVZ@xb9xEmby;{;@wY~NA+w#fcZquhucikYJ^SPSQqkm`AN^#SV(t3sU%_?~l
zj_?}2<ITHs)}OQY+xkmZy|sx)nY{jmij-fFzi_)e>X77X8P3&9T0(;kX@xtL@6VpJ
z|LVVepP%UGWX`;OFT-u)jn^K`KfKokYOP=Y&TF^SHBa8xOWI0<4qJsYv#r1N`mKC=
z*-|I(fNySD5(oA<=W}mqI#T6+&~0VH;*k0cfm#K3em;Kvu;8t_<@2@)&h}oh4pj?O
zKSwP+cd=?;+1D5aI0}ApXq`%fynUVa@1#o%|5~eVFEm|q=RwAfh%6Agu~sy<&b)N3
zfq(FHLB$hwtG9=nK76hBFm=)gBhQMN-Z$>PU#6mym$zn3{vv;!Z9y-YpWd#o@_xNM
z<ftXz+c3}Fp_lTee!L^q7j`o|(8tmIsnt@o%v1l%G}lj>67G3wwaU}byzpgmeB#?f
z{yd%PyVdI0bwS$|^~<&|owe`DbH2Z&lm1zG*3VtCf8A<{*H&`*YnP;z?atj7%kcEg
zeT~wE%g)|-aUpN|mfNat%OY27ub#T5(@wkoX5Qs?*XB=Qk6Vv_t(pF4eoOv?-BaEj
z+!CVs+l_CJ6~A-P+u1q4zNn|Fe6W<SZ>W+M6??HiB7b+O%(=qH1+#k&=Nj>CKWS7o
zdv?j=NgI+(rf(|0B^Duf?e@O9FRPUe-%jzdR=w=ku335E>@L|I-r|h1uN?QLehYuK
zq<HRx_mk=s@2fiRJN>rDbgOw-i0N$p(sxBxDRV`b*sJxI%2yQEt-exnws!jI+VxNN
zg%{nwow-I!xU(WVI&kvNzqT3C9DAi^r%4pf`&|`jWTPP|H^uTx!t&PJJhOwo$#n^=
zSa;!e>a4uQ-rL<Ty`5N6eTQQy&;AW7rL;|EzZ86Pyo1Z6xPF`F*N$aY|7yNJ-MFO6
zC&>2MmH8ig{USo*e?2ojdj81=`R&==HB+B){uWth(!1-Njppk!!Le6oav56`iS^&!
zK40<eg}-)YYyaAX|27T+qrPu@q*Cp(<6ZmJJh>bD*p5Fnz0GvK<*iq0y5`i~Cu=`z
z?2MZnvwo*)LetaY`pL(Q@@CC4UlGcD`N8X{vlia8E4+DcLQcNNHuF1SXE#{BtEuCD
zX|w6!^1K~?UaAzGsp0;%%vZVCV*kIFW<^u2_J2G1r)u@;KSnQ?X|MWOvs}pg&5ieg
z^AyAEuSPfbMIL7LJ9BTcVYUCUH?}kT-j|lnHh9Cgbrb&uUamFPU(2SZ)&Dz`YNs%h
z-{Tqcq@NA{|5Yql{d@6bjvrPY?0-2`8B}Dh+@2ie_PDjL$A1Y7IjJ^$54`kz3PXbK
z9><mEO+HW8`}};;&*GDRcBcHhGoN98yBEWW3!MR%mdp>jkXG+|l0i}Yb#BJCAp8HV
z%FnVjVQBx1_0IL(jgz*%yL@Q73VYDEm$}=f72im6Kes&yhUzTu@A7}8ZIhm1k^4;Y
z5&J3Qj9Hb7gL0#;KVG*^ehC=e5l?oz&YzbZ%YS_N>B6?Y_?MQJ4_%7*kM&8+oKUg$
z-nQ(S-ugxR6?#wTdnkY6zSQAicii-3y1UFwZQFWvmrpa_AG_o!{H12a_UBucmB;wL
z3<}<LWs08Z(%+^_t!GX8-u%V5Vs@s7v65Iu|1Qs!^_j1N^~zQltCY4aIajc9_wTzR
zvQ`^Do?Tgfgz5Uus?)Lyt|aTl=byYD{pstpz_)iz=Uca}uRp?c+qr7?ddcGYmj>Ua
z_xx2&u5UNYw5xx0Tj<z^i>rGY1wU&s^El^)y~;UTwEDDBz$Tt4I?T$8ir??}qxE=#
zNBVlBtQ{x6wD2e@y0zTPlXckdIB9}n&<O#}ln(7BXWws{uy8KdK?Om77rxGh2J<i9
z!gU|ng}d~LOjLG#vO`Jl({7!lisec_md;zAEb_9U?Q#9`X6Y64>%Zug-k0!}UA&|(
zu#fNg*`<}|q*R~wybI}jnO&81Y@!6m&1Ks;qt0wzH={7<jD=>}oY@-7Ui44aI##}_
ziQTu_ipzuDq-MqTqfzc3Q~UauRxWmUrBP5K@Nvnx#rumGebv+a7k}f;xqf%imC9Kk
zeWw@BN|~c3xqRo%3n}+b`E;+TFSdGjYkfnPveKWw#c|Qam3!98+Kc-1UpVmn3BPw|
zg|w&kBgQWkr=>S8c>Ct|)LTox{{39!e*a_8{g3PHdKO(@cRACxF{W<a0e|f+X)=75
zG|n5z=$LPQ|DZVT`G=hM8zfU7$moCTtCoLYrJnxaNz7g0Z|gd8DpQ!{k6KN<_mI8*
z%)?8|s_L{po_k}K{%m%8?(-XZR@dHemmg=Fl(bCfBj5d3GJU`K?xpaZJ9I^Ai^#m{
zwB4)orj~!OdY)jY*7u<={;7<9$@9z)etD&S(?0ib+*^6t?8(-vFO|xf#2a2Mah<$O
zYxd?zaeG38Ke}A|ADh4a^_%tk4xRj$HS_P)O%-AFyT7XhOUabqJo5Ta`sDvsPdXm-
zdCIPAXsRsN5Vdt#S-)HB)sil&m5cmVt(dI!Dy93?j+6Vv%Umk?m3fzN&zg7Tw#nM;
z(_!CL_g=ZGP-^NC%NrEleC4Wu*Yxi_7o2u2czI#2m+s|V=YCIJyxR3u*2G;=GqTuT
zDqZJM*y;E4PpnP-f+elL11(K@7OFn_W4855{nxcN3sOQ|cr-G5f3Qv2;(DZE($>5w
zleY$mJazh<w7kH#cJsQ6ua(6fRkhvIyY}&Kzx4gDM*Ci;DsPSZcI8_6t>U80+tR+q
zTMd&M-`DN6U0`V*`|_Wjf~C3Fxn4eXx%=v~XD=_#kmU0fY!@q6T3UaEXPUWYKw$s*
zli9CUYu!F$t~6UotfY4J_VTUU&cs{aGV{!xy=0s3x^1)CPDTB=vZCx-M1t?BP}iqt
zC44u`?2^mqeiyRpy~11_y{~DWdn1GLr$uhOdA4iajOVlZ-l!hoxz_!)Oowe=+*5;i
zrJ4E@&rJ7t=6%TU_3?8*r>;#qn^^z*6NhbO)+6z+Varcm-}z*^_ovgUKc7ze^Qqv;
zku`6$HLoe0{kb<N+O+UVR{IYx&zhww`+|hxUy3>M==GI+WAW4S624;-FKqaJ=YjoR
z`PEz7;&(``n+QR&HOJ@r_a4|PSd~9@kMPqK3(WGRI~y8~fBiO5?BahZ_akPS^+~fu
zHlBU!@i4tC_~$lH#oNvt3xyirwWjUpJjFak=F05_2ffyoU%jIOMps@=o*Mqn*Zx`9
zsk#E68%wQM&w9>1{dw5Q;?+-fUS0e0Yk^gD;QRgs??PX0C=2*=pmNu}D3kY+*RA$g
ztGwqsxm!8rkI(yDaaVqk@K<lGd_Rj%uTPu4<fdw7+0Vt>Pxr=MVt;h%n#-P~b4{Br
z%{<q9;9Upnq4)0tU-{44^4Fa2WuE7*=zF&1ySE?z_)Ifl`(@Sn8E!J~`z+!cWE|HS
zzgU0o{ioydyYEJ4m;b*R6YL>;uhHh$lE-n+@6Ed2!hY^ZOzM5{oyUKkYF@w7-pTp#
z^iP7kRrL*ye|nEM3x1d8SD(@T<HDbfl^4FUmz_Q)*RXr~-J3f)?Njp}y~uq&*YxU=
z1M|-cb65#1mfzuRpL%bt2<vBy_;8<tHV5DFTn!bw$YaN@BxbZcs@!_t6-kqV*}wTB
z(k?L0bYy3eEOCIaQrKiCfH{o`Al8?}<MlkhRyecO-Z5;pn<)7u^El5hpR^0%M$P-a
zrC+GGN(tC*V&2?#clG<I?^cpu^k+K$|7N6d^}Ur^^@qMaJGXA!yHH5q;L;0qgSp<}
zFLa*=EIn6VtflU|?~TV~ed|kB*=jLX&w|SGW@TzQd~UjT%H-;Iz0h?_PE8HjnYnM7
zlKI;1`uRF{GiKE-h`bTQKGWTh_3QVl=*2H*Z@2zZImyod((~5tmF~;maEe44_|`kD
zoNaQOae8i3%4~(3YCn{%6-!dOSJwC~%4pgWmam`n$o0DQk;y6_RXlApV@zJ=+4U-M
z^htmDHuqWOwWl-HDwlcA%lyaT$1UslZ&#j`tH2Wdm%8=&9YOAQ9|-tQKXO_1<Cg-#
zCG4-0HJcuss0mofIxD^Xbn%)emSLY{UiUxP_)sb0(ygwI^NcT@`K@c9ckQ<2EYt69
z?WJuga}^`gmvnxQZp}RRdu__ut<Pdb@_lD)ikg(xnEmpwRokrmC%*4i<ev<G^r1I@
zO$_5k)yyx4G_3Y*+*g0HUZMEUr*FU7vgT$!(@uF_aR1}lk5|7c@XkAVZuO-^t?Do-
z-zPT~)z;)Z{=r*$x;8F0?seAr)yw#u{ZdL#zi_{NGqbvK-IbJ!=D|D9b(+sIukpU5
zbEJ0dy|}9%<KG^u@9g<6r2bFK-f{Ek(*29#mTycIU6Zj&|6+JVZ9(Hz-Fl(gpp{M6
zDspQV>E4rCKkxpnJ#6;JBWo2S=byjw+<0Q_`K(QG%U|3+#un;eyZWa|@ou*7)j!mj
z&t2?)HgmzhaQ6*-6}f@Tb_*_uf2p6Z@9@Io#zu4X-3K&IO4S%A&cEm-{h_#Fer)8;
zfaT}E*9OfwzT_9Pg;4Vs&9B@~8h70YtJgaFYrWhrzD0kTCjb7jeb<6*3+pPc9?|^i
zezCDLckRat$G=xzy89jJY+B_~?HHOJ9bD%+<Mp2AUsk1$?zCFAidqJLQujYUf61ES
zHFc}<e;xYbQQ}b&VzOE~<=f^jasDzd)4y*2waAAjWa5j9w*4<7XD!WNy>nIi`Nv-?
z*Um4STL0>r`+JS4e9S)Ib+m=v-V~l5ajW;+qSw2prum)^SjC<&QKLc9?}XRaH%})q
zOv#K~8o6V~^@7k@p$i!Ix@*T=Qult`clOHphwU7b>h{(s{a)T#99jA6&V{%iR);?I
z@ky*z+S@3%;_0_{H_uwub?~j+zC2}u<?A@p8Rv^q_+%4$>rbjIb>1b}=v>J1FR>!V
z-sbFai=Mf81x0MTRxY~oq2_gq&n0^`;g@#GvNHtl-to9OD<{P~T=LGH%tvoD>Lr#&
z#%V0Bjw+ZUW$YU>-~4PSL-`vM^R$BFI}etA_LjQu8)I^?|I=i@H)>9&zi*j0q4SOQ
z2YCjkQk`yT-_V)e#n<ZVtG-{V*X8c}_rE?mdCH~GWpUw>EDLts?4R;-(Vg2;aRz^O
zs2<MF=H_~nXH`*~v_0>NQf18{zw7M%uNg%veqVQVt#h2JmEpfdEMr#FtyQa<er2|8
zURitg$gO4HnlgU|e_Aej#XQt>OZaillYR$3Rn_KylMiGqJ=^=SX`0LKym~*buoq%G
z5?sHYI{DN6nSYn>tVeO_O#JOrSGW}W-kv#i?Z>9g%fv#qZhsWp%^i}SXgXu-IiACv
zf2>^2*E643e@O6dSNQSlFOhevW_GUrlINl+`}<eg-q~paQ`c^7x$yg3;+nuq5o^Ei
zo>{wha^9i!IS1>?PYJJy6Ov4Ejla3mxPF&v)ht^r?Omz$CfVs*9-Mh``C{?@9Q}@c
zLTj(GUvuT(dOY>7f9#e6a+6c#C+E(eS9<5wi-N}~Hy>~Q(iy%;{r&y?=d+mYPe#ew
zp0l2?w(z2k><#PcH;XryNPNAy_2P2<`*ri=TOO~T^O$vRObu5fi}SSFqHC41{3QZk
z>+2res9%%IsJPWp(W2mw_C=%b2mGzQd^aoKUwd0Zwl43>)bPb`FB<J#+xM>L-pcKp
zUUY=Nk12|YE%~u+*Ne+r%dff4zxp$zTer%tujXL;{B@U)e{*lV^)mM@|8IQ@@f#Vs
z&82<)XI5?QKhyQ@e%SKQ*XR5@bob3mtA`)ww_W;wF}%bsr~dN)wYRd*pW1dj?c#sy
z@_Ul9b@OcNCg^Eh^n9CsD|pl5=r<=Lf7Nfhxphk8<V|JwIv1rfS%=I2KD+qajhyN&
zdPRqOnPkr|=gl-Tw966aF_?4R_SMC|cE1Wtvbo#0Z~j&!+-w!gQ~U58<2Hte>#i+-
zD;OyvTUlpyZvOI0U#8yE^}m9&JL?!Vg*hbmJn$%Pob4d8p`*XC@}uSUb9zp!g{~Zv
zU!D5Dzkl<llu1^mC6UkT|J%C;2(g~r?UfVD)_3C5bh&DgGM=Jt4d<H^d+cv^Zz_LP
zmj7e!jxA<Yccz`*UMRSPIr_w_PrF_JKc2kx-OIl@)@p|e`y}ip$=>z9s-Rz=Jv;hD
zpsladn=kTJY<ohA3tY_iMZcK8{H?|nYxXU<r4ugf-_Kj>q<$+)<oTa9pC9y|jC#vh
z_9<R>sl%~d!rYO+-WxAtylDE-yWn3&>eXv*{{Qa(i5I(DzkKrc821|@<ttXG`nj@B
zU-y>(`padTyO*rL`%J>`ZPfj9b+I{f{<GI#dDV7EPr^fO_H60kgl}2)lM?0guNGY{
zUcS5d-hWRC*{P~G4PV-7{hAlt6%<+9Z*jI{!L>i~<&S6W$-DFW#j&p&+W6)3qOa6f
z^ZnhP^S+}l;KJ?xU-Qe(_oXdc8oPr3QK`beg{MC@9$Gx(-(~BneRG%n)?F38-K50+
zyzlKL*5>tE(>F#ucyl}DhDm~Q-i(NaZ{8~&KEjl2-p(QH-BNqebq1dpcRBBt$q5@x
zp6<MBwlwxZYd7oKb6XB2Zgjd*esY7SNrLIpcZ!FPzH&?47?GusW0jz}V8adf#}79~
zc&O`$y}r|OH0iFSs8Q`kzB4B#WVS7hIFz(e;M9W&5ju{SLhJWgK9zahaK@|cY0<j}
z8`_R_q`VY8kXYKI?DSy6nxmqM1rZ64UI<v|@CmkwXIrh|Z9E*r&8k>%RI#vgg2kG6
z13eZ#Zh;n0dmWYl38r?=-}*d_hg*J`Di+MRwa<iwulSNbcjMtZpArkyOB#z`aV)Eh
zm)WFyEafTlq{PX0%nj;qm(3UW$|)Qv-rm8lHZN{sk9EW0kTc%SN2DjK^}k!BTYTuq
zo+Ifk9Kw^?<;6GcJ?OJ%ehY`N@I$jU9^v4VZJN?c6$@wF+`75K+JdKrXY%zK@3w5-
z_27u)=PBFN538P(_ED5_Q&#)M)4ZCm^YD|IiH~}2Y8`%HV4bq!S5cycOnsU?PxE1u
z=EPg-XZR)5V$0f(B%a%Auw&YU9pX-p3|_`a+<7*^!sn5g+FyegiahVuOxU6B^vJ+4
zQsT~`2^MD<#nfW=ad#fBiAp@Bxoj<0^Wi4}i4}&K!83j&&0A{la4mP|;T+eeiUl)5
zHGFCe+t2^;J5+ot#Aj2n>!#o7{8t~=+clkxKgY9B(0EJB&hliZsiy=i&QyK+EnsoR
zr>KfU<{AG=-p0dw<W4(1F!=7aVwZ?eyQSWtCGu*^Ug-48%A`%;INYr%Kaaoh@D{Gb
zFNr}d2DMc_g#{@bcMeW?m>AS(@XJ8jVa5l8DgPG=Sn$l=Z^pvse9!vw^DDkQVgD^8
z_3AzA*$?kOd_=N&>)|Og=PDkymN2s6@wT&cnPV7N;V52Mwn5_XZW~Fnlg3<Zm*$BX
z=^7p|^_gQJwN;0OZ?VVW2L|6huMn{4xyN%kFR36^;?7OQ!u*yai7yf)WZJ&9dW!R$
z*sbky^WcFUwTkakC0s?H-Q;~dXIIs;f(;VYB4XY3A04`#?Di+>_|DkX@loINbOl5E
zMh#cR0tpMDXZsox<q``dCJL&_NjL~D`<FQ3u%=?cYNtmAP6}uKGQ|Io7iMbL|8%&e
z-T##}_jyg@A6)y)gx2jn%ziUA@$T;je-+<1e{b*p&aHU(w_Qrbk3*(D6+fIzeJadb
zc-}9a@bIDVxq5@Q5_Wriysz1@7W{DexWVsGcCY#^>02VYYZu*lDjXVI{a9!7w1rWD
zot7417uw&LRIkeVD3)<Gy?fT}*|$QtYeQxnSo(SHO0~zlAKi)>YZWr~S%#eBsGIX(
z;jOkgVShqqym1Sj=D=H1Q+jikRh;e3yR#Rq$}}_I<rFN{>(;osKAEfK!t=BHB+isF
z&wRqtr1@}FCEuPFtIWL2%*(HyO)WHDTj-k_YP0Ott7}djl6T%|sBU>*?RDYe@nbTP
zSG#szk666(Sc~2EO>676+LuU~EqJlH{#@tDoaG9QS+BAMnf@t?=Uz=KGIshMc!U2;
zUG<dWyFb_^xPJ>KC*I$vBKEI-w^(B0{l$MZ-pEBKJ+#jf7Aw<#>z+8>T}7-ev}MDF
z!dv}^^n4~q{OG>K!M%INx5XQ@FRO~xIa?(r&d#vs`dwDu+4|qF{LrCy%l~S;nQf~g
z_RqdrK<u0Dt^Pyr&QFN=@jg{R>|5=v{zG+Ff|DNB-<iB&!~9EiBH!lE6ymOrSF2A<
zyua+P#+&#mPn|#i-?>KIn4W3R^*bcLv-SV+do8Vhh2Od-%D+(F_(A@SbHt7IOna_s
z_xR4%{fqSz6W=fStMNwmFH^+Z_b-k|<i3A%JR&##h5p75|L@G-utEP~oyfO@X-5wI
zx9Q%nA^uXGh*@&Okwfn-8#Zj%n_<s&JAc8EL-p_NCv4bobBlbd?N@=$*8M*O4js~4
z_*di2Ee5fFkv*-pvo~%iXWQ_h{(QuZ-4fi<79L3t&&#+(+(^3Bf9Ri1Lu<WRa^iJk
zv9fRm?*Dqn4&6H(absh%s@T6B2U}X_I{Xg2ag<T#&t(bjYOCZ#eU5~O@h2i~ob74d
ztKZOCZ=al4FQ20GW*>vtzv!OU+V+hbI-OO;>TWM=X^r*$9eCp|qt2gdN$zU<<ivhi
zrHvo@rJW*f2xr)HRXa0q|93lf=-!!#8~n@>KjaO?z6l>Y#3!w_@k4Q&kXRYZTlYk5
zridTh65P8xHf|7S+3-O>MdwZ0u|xkpe{i_H{BLc0@$KbrZ`XsV>6Sv=|5wW#I#lQU
zJMhK{j?UKkW=$J5yaWY{VMD9^?2Q}L4aL5#i|K5wFV{;<EWcbQvhBJ?XY2iHk;KH`
zm+C~yUS)K)+UJ@iCia6OWg3Inzo$K|cTYv!5I@FpE9C9}N}la2Z|yT_yB(4%e{yof
zkLphx+`rjx)%PFjlNDd_`IfwS-|IcwgpU=@z5Z=Eqs|{=3GUrJ8#hEVMf{j<ELNtS
zoM_LR@UZ?^#EtWk+`kW3bhiF~Tyf}7lrRT(^`jPt$_xMAaK^}OvF+Trp`T^Lhwlbr
z-}rl4ZA%s%IV5j1al?l8i*+Jpz6{*;y2*(kQ}(lN_z<6{Q~xHrr}gf9{f!^)pH|m-
z^LvYY>)%ZZ0r$834`sY=p1WW3!LMbxDMbtRW!mQ&T{q9YtX^DudE0-H&er*+ts6El
zXV`OD*Q`2nNZxSjh7CKn$hXD{9yk<#GUA5Yu|xkf8(ROHBqz>K)p_$GQ;56%jLD%x
zeM|ppys2c=`SV$lyP7e%KJh+Z!o&TCBX0cdX`Nfxa^#S{P1A-At{`{hGH};RCnv5?
z*LhRUsPpH&B=>LS<V5ejDG@(5_o?W-$+^{kC{F0Wq5V@fZitrP{_VxU{Xg{Bp?`BX
zZm@Ls)cNz!T~Mq{<*j?-Yvza_+7jHi4@BJ9%^dLq6gF|k4t<-exA8;$Z(ntt9I?0V
ziL;p^ew^)TjXfH1qtt$4#E;kYP7ybXL22#dMIrA0)7^!|z6IUtKP1PI@UZ?w#EpJQ
zZtJfz4%B-5zTEfl_k?Zka)-Yw=57Ziv~-;}VaE>DNgX)!zh~oy`Nm?~K16i3+JBBX
zbV%%Sok-cgLLu(|Qyz10M?2R44!rS}QRmNVN$zUp<izFYIF>YjTYmOI$%StxB<Jwm
zx+izw(EjF)8>}U{e|s`;{|`QPNG?U^%^s)DR{Q-EHf(qb3Mj>f*8j@MiEC%p)L;I#
z1yrzb&h>AOJr!|dFQd+%;}YDzS&|cryO>IYe;@ANk(Xt?spIvsZC@F6{)pE1wB{!0
zya8u43GQnB<i!1a2@mTJN8G447Ap(ec;t}%#u*znEZrjCy4R$kwO%qgQ9oVh%_X7E
z*8i7<4jnp{Vb8VOwxPA&HaRgrMd!_Y=7=BqMq=Oeds^R`c_%$weqKo@XUez58!j_N
z{BSoA`=)X1&^pe9hwD>y-kg`<uCDiH;Qk+W?9jb)5jRc=tBU>mB+SVj4a)oPnIeAN
zHx~Qme(cb>8L~U_v-TI5-8bK=JL~Ls-(2-+UOIpN1RXl$x9G3Nn^g>Ab=t{^w<WlL
zM=)^zFFbb0?qtM`JayJjzQ13p7w*fHw(b1vd%KlU=Z|YoYwVc_M3C1fC+_D-cvycl
z;zqs%_wE-dovrn+PPVk#_I_KuVLyMu!}m!#Z|?TA{xxi9?Js|HK+5}f;El<rRmAEf
zlM|mCiG91ysPkvF1a~!Wa$-D3!o&YFH*U~36x){2cjVA~llBc8f<Y-Ll7YLPJ2`QE
zg3g<R3}XMD_q6_<v~k1JVpXyFx}!0N4(Wl)3|mH>KX-dt_x5kxV9&PU!&RGe+&3!c
zh~IiQOMT-9kTYz1TKBH8nZS4Je$cs>3*L%8ox^vlPUyg)|5G+@V3*{M4prRvVYM~~
zcQmLF3ulh_vEESZn|x2}*?5hOAGpPY#LA4`x+g|6NBrPCc4(Wi*teSuV)g%uds=H7
zH*VM~?y2*~uA77VcK^4<8<w+e_#kd9R>ql}xSf5&2T&I5?P;wwZ)n{=f8&P#ha+xe
zE@ykEd&~Y&$iD3v)mK*5<X`;uhe7P0+Ob1%Cn9b@OBYb#@^+iWg=JaxwT9bQ-f|N!
zp1taA4}(~pVsc`)1ov&3`U8jZ6LoU5lN0m#6CU0_7;$56PwU(5AxRIv$9qNG0A=xY
zot`>>wi+Hf^sndJ;tik-mY=Hg=50@Ft#w1|f4=0z@5W-=?r&;{d;2~9Sk>0EamT8*
z>T)MMJfEoZ#^xAuCG`zd(fsXct(~xO!*Aw@AMXvt>c7<<JM=8XOXttSsV%Ltp1%Wc
zv@wX)DJLh+mgK%2q`L7#c&MP5nd9%k8}V!#(s<-`mgQ9h=g(OAaKBub?73v02kupe
zJr0Q1J`b%+%1w@bTIAz)*=yUmo2zrP&aYqXb7ke9S6h9h+_tTqdT!0L&iX%oKJ&AC
z%^BRSb$N5O_V24-8Ta4x@`dNuGu-EAty`C~I^^faT@k+8YFp2(&&tm8&0sRpUKPa~
znVMWXRV^dWxL(6#S5c+Y;Z?Jw&#pP~^XkW^Z?|sr`plets4)80^vj=G-&{ApYO?#n
z)6>z9SIe$nxKH!lo6T}XJ}HuyW1hY-@_kW%_)FXQk`La$^X^4eUEr_Z_G9|7+X8!Q
z|32<Nd*Er>g>5^c-S24Z{rcp?xp&UDmoS!`OX4|J?iX^d|B%<)6H9Z?82C>=`i(<N
zz3uyY*DZg~eXGd5_oaC5ug1dk^NVsPP1^IL{e5DU#h%R>)$u1Q7O?1le7J3%N3`5=
z^TX|{AAR^($$83ho9DhSr4{EtJhXdM|7o9&^P>${e;0iAU%GbJt;1haZ@)RbFfLJg
zR?GHSOZy|ica3IW72JNV{r0~0Z6;R*%NZa0RJ~oQJBy{flVAMq>1d%l>uYxGtIqU3
zR?T}{bjO>$TlT)Pe*ffn@4gRqx4fgB6>M_0|0?K~U!1%9u3-6e{_pG6GrYz6f6u(X
z<n-h%^-q5^SmwwF#@!6-`P+TI^qj5efxW8=b?xqR{#ws?C#UwIKU*2k`@0P9p8pSc
zb?biVky^0>ymvEJ-oGVVXwOo>KR12lqMp7TJlX>Hy>(4r1e`Cu^nL<E-i6$0yAGEh
zxG5`mz_xJr(o1b+M|^o6{QKhWefGmozh7U2<L;Ut|9?8D{<zA+(pPPt-`{=yb>hKa
z$5wss50Be@O<CaH?)Q<e7R~8<sQP>R?A(^Xosxb2XEMA`s<+AR?DJpQv2Eg?yq5V-
zf4poduQjgk&%AtM`4xxTu66v$_C>WqP1`#D%v<t3@%VX@Z?4zhr|R4i_*8xQT-@>H
z9WJr+qqgo_cmMp2oa^uX>#JhyPe)vd{It2(^{z@i!&{q|KlX7Y{&8mdx1hn^;(@%>
zhjx}f3mN}!XsE9^ATRcz*kz|jFnj$Oo*!-><38!mt=n<lEq4F<S*!MZ*<AALY(QMy
zO{@K4iO)T?>Zkej@7Q+V_TdBe8D>S(`Q@J+pCXWH_wV!8vtK^OuiNuyTS;AhJ^zcF
z3*TDuS3hKb{JY{nz31)I+brFyR)v4Lzq<CH^so24cJjfe?mhhcG4N*I{QoQe?LPjz
ze(C>z7oY!k|NnRM`Qt7kem^(m%>6ele4kEr!>OzP{#(3E{ce)m797{8|BOQ^PGj%#
zP5*g*mrgUEwtoM!+X<D)M;^o<{&BMB{>gu-Z|d#O)X9IFzip3U%#MG~cJ=b}|6lub
z?A7Bx40&hTKK$JHCO>)qjc>=6G0SgOy?^sfy@29>u5aBp_aFOqEapK~P0#b5i_QOM
zeKYJ-p0%xRmrdP~>->*C?C1XQwY%bT<%3^|g70_7{4m~m@$K6s`A4LWw|sv7`KPvy
zRlV--`9^i@zrWXiQTRWx!~CB3_5bBZe)CEGGZ)N{k@(~M!%gh*2lp&_Vedt$u7CPG
zJ|Amm+~4r=?u`1S-wbc3NIky3r1Jh%=K9=O=IbQ>F=yV3$oNt3|M}Ru1OMk8jz9eI
zrSo={%SDIeuls(Izwf*3yVAFh`tJE38}@ITZQjOL6JGjx-`=+W0p|7jJPLopfBvd9
zYyDqlp6|yz=lp_bk>~4!+Lw9T24CL$G4Vk7hoAFm_D%b{zv$QeqyL0!>WX)niwRwS
z@A3Uz{NK{-^738g*F>Jr_x^rN;c)%*!^N*IA1sNiGul<1ytGmN;$7+OtotYA?ab17
z{Ji}8GnNBC&FtcjKd--ccXs!YCHnRA%Ww5t-;_W1@7}w6KNuf;G+b$1$5dB!MLL`F
zf5AHj%eSYWtS~Q=dG7u5&*GZ8!Yk7KO`kdK>Q$G2-}z?$fuFl|U-ibb{F}JKT%Pxj
z`J#Jsm_O|AswxgYAb-Vq*>{(3&o|WD{GM-c|Bc+e8<8>c?;rLaZmu_be0=l0_ynbJ
z9gh0RZeQQ7lDoG@`@mw^ii6kf><?ehPyIK&x}vyI;&08q3Fphte>isZ;h!Bm`Sav|
zY&P2SamI(~=@p-~B=+9<E`9i6?39PScMtx&{qqll-G7fZ^K#a6`{zBJl6%YU<b<cs
zrN7<%wspC=I>Wm8H!e%tGwolq{K)l<|M`ArSDpH^OQB(Z{lveME&slM`SR@3mJk20
zT%O&``mfq{ui>{3^)Fub{%)zySZ40V`S0S)douDL{Gamm6z}gzuPSbR@aMeo-i?K7
zw#Iu6kA3(*<7KaZ<No=Fvmbr<H}z$&`{AFBd-qsQc_9Af(=qmg`tP5foz1epao346
z>tFlp=g(umeDC|DpQXk6`Smh_=j?BvmUd_QpP-+=kNfhxqUpC+>PNn*Kl##r-FEXh
zksmi}?(MWcR^|QA?c3bnM=SU4EmYd^Z`nPg{r@lAp3Thu{Qt@4-wSI0_WZprk^gyf
zZ*l#pH;>Osw!HrQ!{)C1RI6S6SIqSv=)Ze>c53P^ZM*poe*E3jZ|*LBF8=Iu`^WX4
zw}1KgY=+U>aQXZ{lUK&q?y*#TP=E8dbT?N$$Nm+Svkw2}{OwmAb>;eOX{H~SfBsop
zvv1{k^YFHp`&rig4~?IB&-(YNKR0h*mlkh%{r%(5&YFMS4i)z|{<nSo_VRh@_U_m2
z-#;H)JNuJUf5t1_eRZ0@XaD%MtnOY-@PYU{=cT9DbN>JSch63i2ln^R&*ndRWqaMd
zIl>?IzkYu9aq6%2e^cw^*Zu$Ued~4iZ{LrtJY>Igzxj9OKg<5z`%&;?|BLs%zm5Mk
z|1+xn{_Xp*NU7SIeZ8kYAOE}8Qn_HC`!sXAQ(OK=-rEtoSpBp#f9|bjo%|ZHKc_eC
z*}3|``!k=O%`$kKI<5Z7cl*eDGCCIjlc$*<7yfg2)6PG}cJphW{|h`+Xa7xnbN$xI
z^Kagh@mJfsY467mAM#WG*s1TmG5^5J&pzAC!@FP3PdWYRd*HS+=hxq~@BO)$dC$hh
zJL+ugAG!bh)5CbLqIAxBsRzC3ZTmYv*8ceUMCjY~PhYR|Pk34Qogx2^?7IK;w;A&H
zEO;4jysz!CIm>#9AGOZ$fB#su#aqsKd*y%Qy*cVT>MlA+-cNnQpJH!#VK(=vFaMc-
zyk<Z3XTSY}{RS7L{o7yLOT9QN%5Fb7zR}|C(Ts2V)AvvKyZxs9Qvu03+27@bf6mz)
zk^bNDVLg9L{dL8l|A!kt{1deJpXYFYKmW)2XPFK^n%PgjcHjK|i@h4}r)T?^{;Al#
zpYmMm+iT1J=cJyTJ)ZFDzCymt>X-aR_cYg6-{>!{@aO;Z?2_Tzw+i`nJeTVwpPX$^
zeaGLtx6<%|{K55e+=?nxZyi6xdhT=K(S&?G#>@68HENH|H`ZId-re*!`^TTNZ|YAz
zFX#VuY~k$sPqsH^uNM3#-n{qYr4Q~OwKu%2`D@r-Rebp2pG(ercN#u4&$fSVxr^=V
z!rt}&r@g-a%sKVn-6Q)h*YBJC*E{n6<Mygz6@@?j{8OJQ=XRLSlYj2c_wkvB@%i{a
zr{3iq3*S)B^t}GIKz^RpgY}Y+&bnsIOK-3EEOMaU_xH?w&r5mg6AF(loc+u6%53M0
zOXh!DZ1<;S;k_LZpZ6SHFJSMjZkx{Y_1TYuKY5+^T7G;GZ+>NV{(&$4ZB?HG57ig1
zFke0^bG^l%8o%>$?UkSB&HVBxeA@X>KNsIDf0eKK``l-jr-}DudUn*w&YwTS?YVx#
z`)q!F%QLg}`G4$|cz<R2@*DS$*Z-4luY7!|ar+O^RiFP{eO-{hPP4e)_Rj3(2W{3H
z+{-+_>c;VE`#sFJ5A3@vf3IqXj(_=v_j~#)X8fHk`Tx<wdloexYL7ji`+T<i&GK8H
z_Z{A2>EK&GEuPW({p~c~$$ysfe|~nJp^kU{{<-Jp+n<@e`plR8?Ulvy2kT7)?sXsD
z^S%D}-%$Rq=63(p=KoiD@IQTqx&AuM^Ohz5c<kyk`pn-?sQh>8<Fl!T=dCU8$!LDK
zUA*UK>_hE8ANu6)d|qwfT(D^E-eqp@k0rTsKbv~|l$W;Hk)&JNV)r~<?UwJd47+_{
z&z?<+X>~LDL$|FD3_aVc8*yc))&Gu{mzS*)n{o2gpPYKR)p_|jF|P%toYDPusC-W3
z)7E0I82*%V`;Lb`En*dmKA}I`s&?1U-@<?Xo>ci<zUim+(LZyu{`nc#_XlhgKK<;h
zj!yU4*`})(r8wp|K0LEY$a!i;-_=mFQ1c^OgX^DsQU09$ICtZ;RT0s#)t68Gd72%v
z=Es(ut;Js5S0=5Dcv7!%?aDog{HvE<&AwHzqEJ=rLZ9lb>B$eDr@XG4uIo{?<B(2g
zufnY;!yCKTT29MYotO8$J<7M?my6E6Q#xAnwU#JN7JkOfu`6oz>`PMXb3CdXCrVnp
zbMcUOU6PchVI%Ktvd#30zIl80oTYast+~VT@N-sHf#?&nqvw0Jep0$(Sf9R;M=YdO
zbxQQ@i3>Nj{c5>*^U|G3Dj{d>*$=<G>pDI7$jvpYrlwp~lHCy5t9i}iwBg1b)4sXP
zRp*+xBs=-*)swC#u0EUK-_k!@v?6(GM3ecn3E3aicvoy#dQ_+ISZ4M!t_5FKe0d(;
zvn=8P^N(#ubrdI={8C*#N#@;-6{(*pB<p8Qem#5D%&f}d-S^(_NC{RCpFXL;Pw<G=
zzExh&|Iad0omR%RaY@;x7dy50s9RflKhK-H`%~$wPtB>Erdk&_GDy8VyLGFT`1v(C
zxtBDTp7v4-jPzdGo*bGfR(nmb*egI=_vbs&MG<SZZQQBp=3bgzbm>)urT)dIBF9n$
zEtbX}uaBNSbBU)+%r~RZhs(dU&F=d4^kmSjBOgM#9>~Q1@mcD><!D%uV8JTAv?m{w
zrkf;o@2xaU@fI{+efDJXvV%&kGp;L#&9&LTLUYafm7Uv<&0bYvony!2-KOn3WtoOS
z>s7zRYq?9W8*MkAIqA-&uGt~4*h&hEyAJiaGOeB!y(gu(eqV|A#Z^|UYkH(DvTn{U
z<@VGKD&4be(_Y7Iy=n&^O<fyWx^dR2Uv1y6?O4zA>c$d}tq(R`NDTAwpS8@_ZfObs
zA*T}0g;y>uE_}77F6b%yrb`9KSDl&OwCJnxQ^(V8rrEw1{Y1lb40=Pd_w0(zF1D~%
zOS;5#anhS>m+mc^ef398eSVkJ`><%$cMI~0t}NgyI+^7iDJ^cMsxPwRxrLzle6Cdo
zCe^Gcvr78)PEIQ<RdtQ)^vx+rJ#SdgicV>dGjx)fEMB+e#j+1)A8k6mve(a%!?UDZ
z+h<m5jIu&=e#Nuh=dWyU;mXtBF<sO<;Ogr|>sa48OC8J%k^XL;H|5maWqI|Qc~3n#
zkM4RbqfvFm?`UcB+RWbL>1Qkg&F{Hx)ciR)g3~G~ct_}=rMnuP?{CwK+iG;fx66Fn
zmbI)NGo4PVCr8NhXnQO>^J&WWu1CL8!gu;ss^4@pRf(MO)XGjY?lIresaH={1um;x
z=@I$qOs>@T7eZTDR{pFwx8hvXL8nt?>+AQd_Y;(=Qa^jg)@dh4<b}PiH^N2Fx*C?{
z&p3Ij#NX|?`Myi6ey!KeCZ(?_HY^mo^)qFu@y)7(p3=|4vOfA8H2$0a#q`eZ(p7rO
zTOYY<N`1^)CzPSE^IypuiEU=)%d=|suom5on|7O_beepg_i=xp7Z+ySp5ED79B(=|
zbh-0_djD{>y}B0;v&nV7cz1mx+w9rfue&a6=FQ8Vx#n*gr^)0Qmqd2)PZC+`ob`}t
zoqWf?^437{15ds$Sz_xHfBweHI`v5@nz!Qa%(m1Iw7NZcdc16u!b;!yMv^6QtMxT+
zpZ$C3x>fg`GPxTCv;89bpT4@d==hdf<=O8qX!-_<e>Kjo?@H&ada$zKwCJJ)nV);E
z-3#fIiobuwue|iTrG-nK)#iIUd4s$1j?LK-`NZPp&7Gdw5syy^dr$d%W748GSJn1!
zu*p1`b@9^$L+^h9UDe^Pm$oZd$)5K8zx?yGtuk+0CjUJ<*Nj2RN%pK#dZ6FsMGFs4
z{jzZ5-i3-wP5w9CRLl#hKe^jlDluVh;EwLT<yp-^Uncmx`)u47ohsD%>y}zc#O@cI
z%U4X;Vf>r>gVy_%A!ZMr-3{>eZZDI~?Ozl9XO#wLZ0(|y&{uT_&OCd@w%uN?;;+kO
zZ@t2}Nh<kmx8{0;?9w+aNnV?EF6Zjpvij_KyS6{x7jS@glF^}Z`<E4ScXrml+G0D=
z+dZ6hxng2c`YlNfle24gBo^MjF=N%F-`;}0aW^f~rhR^-cXhJ(*2x=hd~#{Jm$<?$
zcEYUHR{jRB{`qQ_%5RF^TjXHAJA&ywdyweI2gXKLd;f*&eB8!Y&UE?ut1X}3#n;&e
zSX#ZDZ@F}L>+Ue6g$0XF)lYxYx94|MbA0`UN89A~ynI|X?bFU{XBF1(e%7)-CY<Ge
z_GHtN-=9jm?<{}dpncClKV+r+#ms|CuS-?5o{jX#pRRrPPKH;Nwj;0GVg2lkrPm*q
zSWR2e9A~7qyIrOB_3QVq#EP<;x!&%(VOTlwkKFV(Wi9G5^LCmZ<z2X0yyKsHV3pGa
zkDU){pVxnlJ-*1LWZ|l>#S(9~?tJh5p{8N_Od0d_ydEDnoO?Uzw(ke~rnYxx(`H=1
z{;V~iwWd;6E@qWg?eDxFKff*1b}j8u-&T5S%8uK7!7N7?H?6n$oxOGT*=K4uF5R2<
zVvpjhf_S%+5APeq?DJdAG->B$yYP*_h31`ZTDf5L-|egT)~>4m9qhG<LHt*|$Fd!Y
zYG<r%pYw)x+0D2dp7Hei*^jTTJiSyaxMFqfC3(JECH#daLv(E7CVi1@?t89O_i<(N
z-c`2i7Qd{YJ8#k9BsC+yBf)#rj`-TUa?LO)H9q!#n@Yr~WK-STlRwX{XL-lH;?|X^
zUe4M-pUIr@w|n!)=5VglgJ<=PbpfZQhp6@MP`%tgZ{rThO?L!yE}47?>b~7nWiD!6
z)+eNCHTmDMEk|BFK9!L)YmvFdQk$ReTWf*~KQBHUyXn}UQ$pRLYgaA_kN)-Tedyhj
zKZC9JWEb39RkeT11KW*1U44&Uzp|ZG?m+GN>6))MeeOE<KW@8Q`LE<Z#+@(cEpW^{
z;81YXwrk4!$9q-QO)<}mf3|%|)yF(7jZ&_=X1x01lgv4OZ7l4o%<_rzy!F#uYVPHI
z+s^E%{jxXm?T5=+eV2J}<TlUUd3^8cN!^RecljmHTJ-$3Yjw`MHP6Ja^LhUH&k*3v
z&e8c}^Vh%A3&og)nZp{hrnieRTYwpd#F*`w#b-oKXAx)CV-}hbHQiL4*%-{o7H4(<
zGuDYSJAxUXU<@+}W+$*nwFI+0n6Xy^s)kXL*^XIaM$~jCNoEtU$(54Kfndg2NoIdA
zLtcv68_dX+V)g+u_DC^1ff<a_%t2sAm^8B^m@!M5xfE=mkPNdYm=Pz#oC20QD#Pps
zX7I^EwFk>GM}kGx%Q6Rm8BB7_VPIX+a!_4|<d{9dQhf5vE?}upd1f!L$Rc^DInU*p
z{lHQi6qu!%{3cCqm?}H{l>##lSlLgI;O!~X6BL<6rfVrOiz!IVh_dyH4NTj{%)rpe
z%D^DOfDE2b2Pstp>+MuzmS%oDn_-$Bv*h#xip)X^;xnRbqks18NMT}NNMm7OkVe+Z
zuzT&~w;N=q^D8m)fE^^K#4OE}v0=Kk60;82z$}o!n@yADwkb_tsl?0!cFQVTH|G*2
z1_pN)1_o6W^L}ibEciievcoRH=>b|$Gr5(SrJ45cocwW*(sVCns9+>W@WH9+6RjB~
zruQjB9a_t^&ApPJf#H-51A{z@!5_{|H~h&cHT{+{voP3UA3z3dyEmOzg;@pc$%+Rz
zdM`6GFzjSyU{FNSd;j6|Kow?vu&NmykJ+|k4MxUi(-){PLxS<73bQoRzn7B@-bzhV
zg}Rtum06nU{+r2yA7rL`fCNG5`aDSR%D>4U_lQmpXJr(do?*z$qX>$xYfR!-%Gnqg
z%(xjCBvG6r$G|wfmyJ<sdYl?G#&gw}rJ3%qO`oX4EHzz$iIIQ0ofb3C^!;kgvfx;`
z50Y=;n*K+P*%<7L1ml2%?t%;qTOAk}6i^KJ;RTr@Gd)|KSqL0X4eHF&%n#)lrw6Dq
z%1_^`4)x6$b!KU%Hl^u`+RReZ`7{~Xr~Au5T_dT%EY0-AaJrcWvnDvY3$O0m_JN6k
z;Q%WGgDi?|%BItFn8l}0(_j_>TecRYHO>O$1d-_v>=@am=SVQ~fSo+i^S&V;D+2>J
z7XyO}iXo=OAoa)|ujggtn(nX3EDW}uUp)WH2X+RA6}$`#QYbpNR!ncwWY&OKt;sCS
z{I-E{dQ3Z`-1L{4(4?wd_2T1FHU@?aJ_ZI$6wP*>sMgAXjfvM{mS*yr0FsiPK3xl%
z*w%tXUFJ{!ugk1D{k;~m5ZGZV5m};t`4||^Sfi)b^GiShs|z+UP@7qrNpj2dJZ-2;
zXMzMgwol)t&8!7B$N&GH@3WX07|dB2801jgcyQ-59cV_>*I|}sTE2I>j}EgcI6za2
zt}+)gGca6ZV_?um(N%FA<a|r8?Po#SoKAxTpdl=*3-y$yF0(XK`nl<Dy3Fd}WL5wY
zh`xlR7Mu*hv2jM1Sr}~Xvl|<}WP-988v}z0inU*_g2KlMtm?%n_i16w3=D5s7#KuR
zR2{fEJyDNY8JtHd^$XJ<GchpCW<}2<k#`xVCn_=vPv4;jb?rGlW@)D82O!5uPoJR=
z6_wFvmS(Pf&p7?fS4Ii`0B=Sn5e5+k4h9YeQ0`3BXO?C<{0S5nQV2ckKzjI?n5Nfq
zFv(1Rp$|=<L9I*ecQG+AcwrQ<8C=sv44@^0tpTWj<eeU6z-#~x;9dh}Y3BI?Ow$E5
znKh?hF@R>fmmuLw5=_$_<(VX>D;PramcAjgG!wJ*bRR=z4MkAVoHvVY$2UF(h9lPK
zIhjeGX?me5lcFw~uWZ*$x|(r`iGiUVBh=jVn5HjOVHTeL%@7(sJVwmY%<+ay)6bbR
zDMN~6P{721gb$c7O@AQAEHQnO5w!TdebQptDkcVoyUgfy%w>z|M~t9B@YV<vs@BuF
zjG0xz>9_ClrvA+w3=Fpf85l%RBAdZsy1y~A5;#f3W+#;L@G~%cvPMtkUp=NzG=?Vg
z1IEnK%)Sv!(>GpZ)R@j@!Ys@zI3sGhj0v+e6G!xPOA}@Vut1Cnvo!Ok45sOc`Ao9l
z@>o%DMwIQ6`gMzMGcYhnFrufZvsp~jZ3>yBrr$GR<^db=7G&o8?CD&l%yOI|jajyk
hR*a!3vnbR1oar8>%(8qb3@Hp>Wf>TB1(+Ea7yuZ_16Tk6

delta 47363
zcmdmShv)Mv9^L?NW)=|!4h9Ye-HMQjyjIL0%BxK!Yi6)50}^0nU|^^+)(0u)0t=_k
z44(K!nOUhKWV00GcP0>HvVf_`W(^hzMi^&uIO|0ad-?@yCXvndY_^;r-sF1zhhQ3{
zyj-9WqWrhuJ?5(=A(QV2sW7WogluLOZe?NCs0i8IExwEeBr<)%14gaQaWW_PK)lIs
z9?DGj5n&eF9IegE3{nWPL}vPI5oVsvll5jZgA{ExG`hnCW(b%naDo}ec2*Fn0!L<k
zur}{bMvKks0&cQ`<fk(lG0JRS7Pbe;$n{E$Y@6Go!o)$!H$Nym2UfXxWBGE3+0j+U
zA*#JQ8J#z0)U`8#6izO1l-bPJC<C!gw<QQHI{m^YMw!j?+CG7`f}Om1edjHRi9P*i
zn80CRY!^~*q?eqNSX{g|B-&p%P~e}R_wL-tB~O<%G)x!0wP;F^!v;}TEzgr$7scdi
zZm-kU*_M7Xj^op86G7hzKOXRZaF=|Zb3JLQfOF0!TjS05Yl<z6fB!vxJ)hxI#gPds
zqUNoYew}tW;YDp|#O58@GP{iX)|r~LMR?}VxKk1?ap>h4vwG+2v%b!n;CXz5@7j&I
zH~KO^uJxMPm}@YlpUd*T@%6MIk>2P(y~n3MyM482ZPv|oi_grD6hH5hTfhIK-^|GZ
zlLcEv++{f1I`WsDc-iaIS`^}&XY+kl>EU&mr4vj2Pp@AY9&+^N^o!l|SazyOx<&82
zAy<BO*~HacZ<ij=UZNrNt6pMB`s}B=UsoP7SQgiydrIO!g3MouMK)!o>EXvr1((Vn
zPAMq&ZBLB-D}Pj6(uuvY&F-qws@&dPKCWz2{gz#|ed}=A)MVe}+iTuS?utJ1CpSsr
zrOva?(hLhnL!mr_lIlHqve$I3KC<R%ett3U#E#b6oOfE3ob$GpOmh78S1Y9cZeOA?
z&r<FE>H;@b#%HFq<cEb6`88b(G6?m4d3wuQ4Y$Hon@?Qb_4wATck8NS$}=@S?^knj
z@;hc*qH4hXDko&4P56_21uIXOOt^Y2?}X?%-s-grE&Ck5$M0a7-SV5~Wqs+C4L;n}
z&wR6gJpW<9^W(1B+L){N13r87^tH5~w5gAMpd%6XLQ?Fv>-+|en}=Q~dADp4aT3_?
z@yB>qf32bFI=c#6zY7L)FTOd#8T8&WX@^pYRU`kG`?rrxW6F6WyiTafWr1^U$&3q+
zRrr50CQBSGwU6RSo+9SGZ@~&-#>>f0+*9VvwL3aj*k^9iuVi*<s~b<uX8YunzqDO^
zdOqh3_h~OhR(O2le%7bIpmR&6l19Qk|5-nO2#D4ER<f;KqWh4s>&glXPt_%LOab2P
z9J<jT7R_T~V2EX9U;vd7kRnCBA_SbFCa>>g+gv*-1Dxn5zda?hnPuu*FlYJ$3nrP(
z0yFMHvdM?pR|P?t2dr!Qy$VLo&2QJXf^!ZiKTV&b#LTmK?uJN+-U$yF!DRsd^as++
zY@4+<-vFC3eIgg5{$`WyQ^ESc#m4jo8D{p)e|NqW0GYn|?I~Vx*#gRqnw!<m&jObO
zlLbtrHs8I+12$yyn}_lcH6RyG&(~vO-)#8oIwYfmgf^?cIs~ymK$=Nv`f4sl?&<Y%
z%xs&*-yRoa29;!>Tx<-<#dAY){VxZI)amh@@|v34!`ZPQXk+!nPG*+Mz#A%wksnfv
zIqP1(67629TB|rYUN!Kb$0B*(KY_<C8_hW7bYj+*d$%t?xA|`Qd|q|k-+$j^4~TH_
zB;EX!)4Tp9Tl$OYxu>I-oqqjp$>No5r!H(>A-QYi?$bPTy*8Z^s6Q2*&mmd3W9@3U
zski&`X0E^1*(oZ?^?PT|gPFF;lTxp4IkSD9=KDSInjxpAy|wyOa@p#3%&OhHkFi^-
zFK~A<Z!tI|Ah|2`bn(u!2Ekd)wT%n4AEZizbe-I<dCewRyWp&XM?LrE29DGvOJ>&`
zzP++=_o8b&dX9%g<0I^y*YR4`GqFh+{kF6$m=bMaCceBdeae%i%JCBlc$<}kB$5L3
zUaLN^I{c$`mETd7sIG;%`3WIMIF7wIASNwpyhP-BbmQbu&g})!E+UV4guODO?*?yf
z%gRfge|6hVw~o(hZ4ZUzZX3tewx@@$wJMLRN^7-a@iF*Pm3DSj_?k(nd4@b&>KEyH
z1xyer6xZYozo>r6Gi}9+yXCtMZ@A{yI9EG9=+;K_qXOBY&TCQx>qD2GcD^byMda|D
zOJS+MuNQ9FdAu!M;=JzMId7Mj_P*a$V#w<AdnI4zjDtFdZ|s+hS!ua$ZPvQ@k9JjF
z2j+BC%HIsN+xh>}uFN9q{1ttNHJvwpwqn((58M>pwe;PkDc-h^|N9soVg9*msxJFm
zm;2v^l@d&iT-lBJ+ia{1o|rQ$2z`Dp_jRqn-`7hfhFl7tBJl6B=)abG%?XlU`?r0x
zc0M=P<aoc}T^a7BcFJ`f51sGWH2s<QMnt&xt_d^yMDZt;%OCD^sk1A!nEJ2li{iVV
zANuw`tZ>Lpe#Fw^nbLgr@DBgEQ*S9gwY|PTOX!%p>LvS&)jc!MD%<>-=vD7%Q`+Lr
zF8)F7T!paXmn&_|J?FOz+z@{$tM-~>+Q%7A{uf?xo=uEetMH2*l-C84w_HBL#K7<d
zJ+E(m_|KgYREtj5ZIRjP&N!b9#M%Cmjd3YB-)x`A#ds8wXFzrNbbSS8_U&D~jERCE
zb)XEsolBmv4V?eLS#$dyB}ONHkmPnoBSsyFAqJ+57GM^*?3gSs%)Y(Pf^nl2NZIt4
zY>a-}CloX4gKO030@6$}+wWB{N^*c@4NMtjKxK%~c8x|x1+dt5?@mTec2KDRE-1D)
zPGCF>ZeVN=oX^++G3CN1M$Ks|%<S8FmNJTiodYr0X$zwO*d?GMZTegdX0Gkk+ZhAE
zJ_Pw@^1L?Q>GxHb*|z`P$+!jTEo&y3?HBekZUQ$)CP!CkZC`(!aV}VL@`FN)?d_)-
zUxACa$+|7F(<RlIdAH9y$9Np90OGxEml!?4-0e))7*Bv5u>I^!#%W+NP|!~=Q)lMe
zKH)CoU$9fQPk6xioe%8A3)W0hlkeVRpDv)m%)Wiodq!!9_6wgFJs=)qG-8yUK2L+0
zf4e&qlQsuf7pS<~K9P&*A=q8ha}1eert4@ji*H}S%ftva0PON70!%;H!Ql+n@LPgO
z2&`edfHcz|urf#xTgo$uLke8o7Mbn&dQ86{%5n^u;vmXE@idvQk!Sl?6Q&nnZ*6~I
z!Soj5n+w)VR^XC(JFf%NC$I}A7dUE6&(~pQpR9YHYrC~4lMKXsP<T#?U}^xjPPdCj
zGd<@8H9WWf&tSR%Zgp<ImBl0vW=;Q-&GeU9t0H9jpByH&dhVDhuHV`1b~8CmniLrr
zG;!keJ=(LTPUCw0_tere-mjUsckg=hC~nW*D3K_EsI+UVQ#0dEotku}=MvXc^Q~(<
z)~;BwV$HQBMw>Tn`ZK>cZJze|%`ev1|NZy=|L5lO2Ipsfo?D!DZl<O2d7JZk+i$t?
zZj8|J`IX7G-=lZ;#El^*F4uoAh|}^;3tXe@ojBc)^=$pMy=Q_=ggARXuMW}d+W4g6
zSQ5*9uE^P1s#lHXC0R`A{ckkmI8U8QU2(t!&X>YF_K8ml|1dd}_qW)kqmO=xdQ4}|
zmwNKOW7BU%Ri~SAC)yqDBrauy{_RzIuTf;bB=A5y(@z(V+lryiUX5F%E(tuS?`_`V
zb^RH;!qwF;QYYj!Y;g#krt&4sX&3(`29NiSR??SL54>ht>5;Hr?8bS;+~z0ESNMaZ
zmaN{e_ke%P9_uIPSCy1BnDAXH=>9PI$IPX>wmF|-sFPX}v!jmrlAcGo^C@u&=_Ril
z<=HctWA1Zh?(}lATq5LA@5GgGo57s()7JV4?^>pCl}LMpuX+`u`Rj_`livz^*)mm^
zEM*er-@~o=S9)E1>lB`q#uwNX>pc@rDMYsR$h+K(@wo1IGv!3N(=Lg1>)Y;V{&?SQ
z!+z=bgfa&!rk5g1@+Qc&UlF|&J|WHdRFep^(KqLR3QM*t@HTFdyu{_Pw$YsJlC#r0
z`3dV9>%VY3PLBE2`10s8hhLnRmNwWkRBA4HIiZc|uKR;Jk)M|*>~i=ed#QCoUiir<
zjZfb)oISb~_G+BU6aG0{>3-MWLmTy8yjF;1`64=@@6gxSMSCPKD4x)7*ur+H&_i;9
zpVKS8Oo=7yLvtlmKS_D`JMMD55UsFRdtEf=eVw*1JsOAWE&ulJsEd2@oO#{!17VJ{
zxK{doaC4~iKf&+JWhBQP*IvW$WVhmekxMMsey}H>Q>cAl)ja>bOJ1haG1I30LangY
zT>W+HMJv@O)~{S8y?*jn+a(#owbR`*oQ)?JaqNA=EqXUvb@%2~e`KzHtvK+dp{AvA
zPsr7;YO?Q@CYCq+60hg5WmfcWzY_l;X2QAFEpkEJS6E-BdpuwLWY6MV@4Aax)~t59
zclA)WUC6_Nj~UD-mu-#}x$s$WzuYD6326?$#FsdUKI3ez+cx!!a~7wOmV!P1r{qO{
z1eVA-m^;WVUv)kB#r~TP%f5V;T%xJrf8ng_zm;5<<4<@B{#0G`$9}@3BlV@rxaRX_
zuG#U;;g{$o2@iS4U7VLDPq;JTT+q$uMumT)Tedwqzg4L|;tAix`U@_$FPBg4d#C!T
zB=lyg;H&KoWql?Z@+>QFEcnCa@qEUah3>9)0Z;b&mdxY*8tr5kbD`PwANP{V2~n#z
zly~gmzryLvcU#FUZ2A9OkLr*wJDcpU)H{?nJrH%U;to=uY__W2&1vrQBVUu1`a?ga
zJ7satC|$1jn&t6p%cRM!(p|dD?o;lE$;_A8tRg8k<HfaeT={wSVRk<@vj(@vPMaEc
zFiL%YMXFAB@2ffUE^E!1U|drh_i{lf>oryO^PQXceB>m`AN8Kr(bUQEc(tmLa~fyP
ztH}B{3s)5Ha<P>-U#50+-<*wAXB+#Jk8joMi%Qa!v9GDU)HLaIS2%x<^rV33KR26H
ziz*JACB8Xe*_|x)J!gkslFp&M=hGUi`!wx$9D8u*_}*(~f!{WrD4ZX0^oJZneZl^Q
z-|}~!Ka4qS%el^QNBR*{_P-skzd1G@w`?fp`7Zdir~Z8Io#mc};ay*MOh2$y_&EEq
zo_tr!b%qk34cB?R{&)TmyG47wc<K(e$N#vP=WmgFxR3q%8;z?Ghqp3ccaLc=Sohds
z+O-6k@aJ87CDv`<!JeUAvBUk4E$6Wok&WgDzH%p5s&AA(D&Mnr$Mgd?+Os`ZX}n*Y
z#eD2#UDL6xg4gYP>eF|`J+=#qnta)%?=|zgdN+=!z3Rtnr<zPJh&{CT)#2}F?%#VB
z?0x-j{{FykL67e3){Fjf=5+C-<7RhE^PGMx=a$>?^U+6pe&6*!pS@&07@ZcsCGBg<
z_twq(BDVfIoT#5(v-MX>%!*e>kJ@jEx&AchwET3NeYp=`6))c@7gbsIvHt3QQ|Zk5
zAG_9kW1jQB>cidexO?@PIln(tYHy4EwCek7{V2WLDc0M5JQ6Qkd*{iVe`nUu&i)*h
z^Yh1>=)XVDPLHp@x8E$b>h6Zz;%O-|_5t%l-_PA-`)p5t&2*mH1(EZ&ibq?`ySwbM
zYVL8~ZeOb(x$nMgUS?DE^o;jAxzFqO3D?ix^Qv`eaNM2Qm-L?RyTH!-(Em;Ry_&E6
zD`g+OKND~8x9ho^OwPU!>u%h7$p3Fs-M<fqg_q^*fAnVeI@?dzF1@Mk6kq#do=N@d
z)RV#6>VH3<GUd?0;BE0Y4{o#m`SV<DQQgWLyLac-y!rip%d49Y?;Vb>Nvr>Mdbi!#
zd1gshlh?)8pTA?2<92e&TTxx{{u#Az&-85DY=3XUbl#%-Z$5t7c6<9TE&bV>{=U4j
zC#}0ZCGE<&852rwR!=U@_n*D#?@rD7d%sv;%-R3p&#B^L$G_E89PFCdKQHFT%OmEq
z?KiF#w|@Wj=482@X`gQK*B9;m@~QLn@|^qS&-;!4&;4+w$$Q_t`udxzE_|LJTXFx-
zI^lhr_SrpKcRl<sN721MKR&%w-~ao~q3^$s-ZH+oyD<CA*XVWY;-CK8^Y%{t{<8PA
zg`$7g{r&RskY}K<+=`T=>~Z<l_g`zxEqgNa^Jn=tR;j;#Zl7}R_n#?;mv5`xSaPqi
zb@Q`3B?&EmXEWd5K4(+j`wi}FdyU@IKWQ!x|8DpHaP#-wdheddRCg{t8*Ti1$<2GY
zJ3htbm%VHiU%TUvvisr9`TxFsU3sO&aq{=~Z@&C%*lo*w|L+0g&u7IB$JPB<Y^bmI
zyYN}7dH(FWqqk<(3hD34IC{eIec#%Y%XM@3wpB8``fr_m>f2Xu^*!4QgPwogKIQw(
z|G(#-txpo3+`X@6_1~vw|L=J6wvk^&=KhqgtKUxje)|62eMfm0f4{pU@xQcr{q?e=
zmEZ05rMQ2(_m_X?vYhl?^A~g49N*ELeQJ7o@vl-xd)cEe=QY)N=15HE_~lxdeBJB9
z_iYcpggM?<6}!K!sV*)@E{yZnDwo{985<=n@AO>G+i2(`UjL;=uv3`TuA*_<zuDqN
zyOu7f7vp|fE9O`2QoUdNPo&fR;=(!e?o7H|)+n!THuWOYev`J#n_2A~PgsY4c)us0
zyFTK&-PcWX&TOepSYmws(e<xk3*&FRHxK+@HFr<-kz;FG7pQaoT98p+ypiL*(4X}s
z|90+}c}*^KQJuPDy~>~W^+F}9HY_)>tLo@|mD)6KwX}Xc*WdLVR?#o29k#rmWj3eI
z`^)wxIk~^vxGNX4+B)Qv?HB$LoAjql>{A#=?P(S}g=5zh9IIRZ@lE=B<cF32h4jvk
zH=~xk)ZOy;Z*cm5POGZ967umJzf$M!y?^21deP6BOEUiN-Su;8+?M;=FU*qaYwoJN
zuuadr{XA#c*6R)z=RbDZ_dCYV`*ULAoNfPp?)tdze@$+6KWF`3oj3n`XXwjw)NPbl
zf2n4N^ACPwldl@FH80m}e&2j(KI6rGA&UQ3ESN9w_P+Lud5ivE`msvn2XE6qqqx)W
z7i_M-vFh#n`HTL?vi^;ov#qY#;=ym{7yZKD>i_wCc;5N#j^YpH(!bi5U&?D9ix0SA
z94OBJUgR$)$FBu5@-J1?x?Fh9@yq?;dr_zVVi)gK9n9B!QY!fC-j%QC*Gcos7f-sY
z^5m{Yo>VextlA?-ZNd5L1^!qz?f;sSTb(cZSUvv5^lwR@S^i1it(d2G?C{SfxjR0m
z>*LbTuP^;lpLDlkoygn2&KE3`_SNaV$ldkv-z16i=exemU3%Dl>E`g_x&Oqh{>K;W
z+h*HucKwli*FVpXNz*>ee{%l*k%~g@-&-&B{@=G~U+{zdLT~rST<GVl+4IEy;yllw
zT0whxkw0Nc|767f^dI>Vqx&M0>Hq8x|F>KH{;T(Fx=8)(&X0xt^%MSosf?=LBK-HZ
z&Wq%veewFgcKhG>pV1S+fAq%-wI`vSAHTLO`2Fh7RQ+e&BKPBkzrB}IeRTh3RCS!*
zwZm18`xiyW@9O^M`PkD+`k--`jriQf-TRYEe>Xcb>92i1ouhuO_z$MLzb?3$%U5-O
zRD8Sq+pA;0-4Ffq=laDxcQ1Qq{l9vpjPz{XSlwfn&o=Gjex<(ddAh;c#Osae$2qV5
ziTf{;an)c)MEseEg{`0ES?lBeaM))%{;FLt-R98w^AqEEKQF$0_s<;Wm%Iz~j~_q3
zXrdhd+xTbGj^%T2x|}Th)7IirMcJJKW&7E#zl1h~-?8o5^Yp>_CBK(^+n%s{;p3-_
z^{w_?JUc%b)=lgAVtL`D;OZZdR+s7|>|Grrp0Azb_Bmgi{ruWUnP~3E%D-JB?z8+4
zeKG&BU|n4A7xN46a{cP^drj`~_s>~!;cCKpOReg%#&0pdXE>=l?b%l(xxd}*7iY%#
zc{2t4Tlal@@c(|?gY=XuaT)c?um1Tb_j3EfTJzlc$LE($&};ixbyuoxUh9{s3G*)m
z9kn}t;9t1d$LH)R{4@0L`Tm(B@^XG+%`w|0H{J_wcrMELZw=c^@db0=Khyfl-BiCn
zX3Yb3=lXT~=G%)q{StXF|77?Fi@wPpFDQ5QFV9wt`y03H%YUu{hc>TzyEDr@{k?xL
z6wBfG@_x6w=+Dr4h2<G-kNTw~-g|D>_?yf2Z<Fnsp7XmC_gTdSe31Kap8K^({Szna
zdmD_)g0`r0KYBPvU9|Fg)86~5LjD*s{rUJ*%hm4P>F-Z8|Ms?jv-`Q?(0<`t-yhig
zd&BYaUc&o2?H@mdF5Pe1%g^@1(&DUoNBP68r+(Oqzv#dIA>G^KKf~Ml+aE=e%{#u$
z<9&Vgx@y;7x%P^W&y2hF<~97fzCQHLPpdP}cW&4ITip2n)Pef%ogcq*pZNX5@2I_c
z<Ntp}N8_9u_t!NB$)8_;Z|;Hfh7;?UKYZ5>|Fxf=Eo<JXI`c-`sxz&nZZEu<b|v;T
z={J0vZoBw`>4W{MtA1XPJa(MbU;9secf!9TY@)x{Hvi+@8N2X(^EWFot+z+h-A-0W
zq(6OZDEP^pTjalN<4?ndP8Z7+d#<+y9hLK5U|*{>^<xRcvBNG`f7G!3`uy3Z?po^?
zxsG^qy}(!cZ9gq89KSBKr2lbM$l1sKOurvqNx1O;m743n^9J*?-#<QocEUTZZ<0TH
z9=)&EnbBXa7xpWh^KtT(;6FR1Z*o67-KF$z&V)Dol{H(p)Z5RWm#VVrg?mB`U)_ZH
zqRMjfv(p<tL@xTv?fCDvzt*Se&HE=$`<#BjBl*s~a^d=EPM@XU+)r+7n$P*I;)UGO
zy>|<356li!tY>_(TlUYHiGTP%CVun!_eSugp+UUb@1^yB-MP1k-}-%|`Oi<eOEV4r
zYs)`7A34E~^><0o&2;7yulEIQj2C>czdB;$cYgtSyO5*rCpOf-P)yxp%kZ)0=;KR&
zYq-VOA3x*`t@+9J$Nsxmomppz{e<v6efHt*zl<f;%byQBcGz#i=V-<HZ~b5T4ffSn
zMrGbtfAGFL^rIC|UwxEmv;A+kTfE<Lmr30(KU{HEC;Y|4g!epGf4yw|DE57kQ2d9)
z^iOuFe<~N&KRo{9rukO!XTfjZdQ}(B-;_FgOWd)|D--^&5BK=(JLA1V(X_0;`&o~D
zE}uQ+rwQw=^01wUj@Q2DzC7jcfx`mpr>zftb~)+Adxg+F|HI7V>sV?-wd!kg8|soL
zUaFVAv3tLkT}j)=&E;(M?o2P!7uL?z68Y&VkpGT(*MgZ6{TKG}FaP|VZNfgmANy^W
zf9O7Fw>I?Sv$ziS=c^z6*V^!Z{i=`qq@R6`x%w|v>0NN>-)i|kKd;Gl?JZB(Qx)48
zuFE(-e94>T^Vt8a<`(@^xFLVxs{f)6_Vuf!_&+cF&;R>pHIs?`!h59~EavJT`)qZh
z{)@)v_lgqz(es|YZ&TPS|Lbr5{3QDx?~SW|2y#EREuCw$FR$_E=a<f_{xY7K9=hsB
zCF70vt<gV=xi|5znV*{d!&=D0`am4}G_8NWtv{od&0C*v|4;SQfA%~-qb<FDe|P>L
zz4Fb$H}&6|oaSGb<FNYUxO?u+yK&_cZhlr|4ttlw9%p6qZl_<Gyy4|}4|NLIoBZl$
z9T()VU_SHs+{w3MA4*?$hZk2LR-OH<^!6U(nehs9D<A*acQfyZ71KeT>6f3+H$M0L
z8<Tgak<DDzIgZuq4nICw_{48}v%qfQB`jBeG`KV!ungj!Qm=F+kin^<^X}Z^pVEKc
zbyP1t*QO`xxBdC=xs22IdT4yNmaP;@od5De%N(8aFALe`ezQs6r~D)^iuuBxfOVJO
zX=r7g(Qe_6U&m5-&S33a_Gbmv#m&8panE&<Z=PsS6E%CbVEP-z<%j3L&N`#R#oFUl
z%O-U|=}Coh+vNo_*qUwYuRmpxe>wBppG6DiZ@+nfD}qnWAi2@_F6%v~<=2nc)onQJ
z(=J%vlDzD&-S+LZN$;iqCb$-)30RqKG@pIrHlN@5ua%$gvU()6cgfVbFZ{6W48K)6
zJF6(iue<k{suTPY`_3z$a*C5ucCC|;uKd<;UOr?M+mh_(JcSRx1`6`|ZK%)IQ~2XC
z`Q!(tV>6=Ew-+zmEYP;bF`R4p@{ixl(;63;?96vsWhi9QbGYul!(FpLCtjn=Nr!lT
z$?iO-b6;S4`x?(BwlA6|JT$zd{9xumo8|Y{uM~LTI&swxC&yY*9ix>-X7=%pzZ(n=
z{N&=YIVUY!SCD@&BVFNvMgv3B)Q-gY^+zoqNFU77Q3{#zoWpANhPMUz2En#-5)3>a
zpXQk7scdkW=K<f1w3IHz7km$V7Bgn5Xhz%S8J`VkuC?=DX0)uh!9={XHgLlgVdIRp
z%L}J*Uo>mFV=~9{UqIf4=i%pd1DOhMpV(sT<o91D)>rFtNS@POjdFz>5linjA5Gir
z7+)Xmvu~M}xSxMHi|j#5*P0oP$82Vrm3>)oM(5~xKH-JUU0p2}8iw!JDW-dzm_7U5
znW=4Qb`vhlj(I%Ml4bgNlh8AdUuUk{S@Ps{Xu#YPU7P+CmGJ%YO}i@4uCCDd>E$hs
z)Y*w|*f)xJ=S}cXej_peWXOq4o|hFej6PQKIJG1))HAsxPCTyL&$fL*&jjHoorbql
zeE2^-^E}M3u16qQRWMEHQwnG0F(J2h6?3sRpGDys?opl(Pg!VL{wa3by;pJNZAG08
z;z6AoH>aJdo0WM-Xa1EBPV);78_#JilF>48={Y6D(7$oFyXQT#n44V7`KP`Tm$)vk
zbyeRWR<$beL`c0;wm#3yWec~8hXk}<iwigyk>|kZBxBf|YIU_ycDu^5jkm%gMCLG8
zWIk?Ixn{s=AlKh?mi?3nmq98^689N5MTX0B<wOM@t(O$I<}g2;l~*vANzTt)@?6YT
z$vZ_eBZCu)4#)PHUtgIwF(@NQ_bmJ7yPdydL$}5(y|Cm~MtWj>-{tkIf=+OssgXLx
zX<-`olvPbRK(eN-qp(jw!r3T&;({J?QAJCcrx&&gX4P<*eR)^2{mw#3FUMq?JGVZ@
zUi2`Z-uu0(Mmcr<JF^hQaKYN(s|N2D$27h_R8somY-6Em#Hy=rn~qvJElxNoC#)s&
zL|@>yZ`97EvkH`7@QU7&tv_M9nm6=n#erE)OSgs}nzd#ZtHsJ9+hmzmKh9o{-QwIm
zysD2}8!I<BEZpbRetUN3bM{FQS{vCnXgG=L-jSI3@PpWiqQ5Q@j}F}M+wW}4wP(+f
z8i@znez3hX6U@GFtYX<oJ^A-L1U+^#-gbX?^vs&tnLF(^>WiG+%wFO7nCs6q1Ebz|
zI?}~IdzX1y<_NVp34DC|@yE&cj}!MhcyZSrYZR&VRp)h<$@4#<AMGMz|D=2RvSucE
z;hjdOW12!@qoY?zMw-4$=DqSPc>0ZICb?jl&?6T)ofL~_aact~uKID=qc79oQr88a
zb#6{))MmN$>|nmYZLm*Lqv?jMh<S*_+?O1Uk17LC6kG^kt^8BO>ZK}NGplHmGGC?A
zwS%Ai<CjUA$4~ccVKQJenO@bxq^;@JYPa~?C+Dc<qV&f>Uj^4DT1%HlTh2Cpv!Tc&
z`^Yr^H08M`CcSp^pFaIu3zN3`w%g$=R%!7y$cD%))XH(mG2ZfZ0mu2tXSHtb>67W7
z{3Z3$OvioJ*QYDAGKuhboc{3h%Cf@`Ud@@9J>8*|Nu=K79OHMdn!xbTW2`GZ3Y4xq
zpITa4X?r>AF!QfQ*6+tAvS0hqkeB1o+i|$5{487G!4=7VTKy>j{hI^wefu9iY>kr5
z`O&+@a)X7FZ(-YtRjD=8IMR46jNQ|FrR*a11~@FV4UqV<qgZLJK~d<-%Eo1jP8u`c
zsR>fO)AaLCt73n>^SwhIv$pU~ju2Goc(v=+qBP-EnTy08elfiCE}&5PL}1H{6pgR5
zGuZeX7qdMHtZdo!N_WMI^nHJ)Tut0z79_sl6Gy4(_qL>j8TXVvX_@VxKfiF*D~pw9
zHeBNMt9M8}F|#SBXQ^wEN&UXG@<*N4n{O90G5$Lu-St3Cw#4`IuAlXfUoX5c&7^vL
zp6%|h)7DpSsQ+^O*MFu(FRT6sOZr~V6Jt#Lx&QwDkK%8$m!5yreSJmbgP<zquDQjU
z`rZY*&%51^snL8s|Hje#xptbL+O&=()up`Ac=lS-y03Cd>)Zo2f(0`kTi>%*us;_e
z@{E0<-m~?_V*Qok+};Ol?jE|8P*=aLRW-@(-l0hb@~0w<o*9ZwYpPUDmNl$z+^9F>
zw$2*%XVsG4NB696{d)M175D4@pV>XUNA}EYU7Bon=1^OrTz=wWgZhSzg){7rMu<Jz
z+Vk}7gZBq^7_={Zc~FKeOYm7>536B+T8`N>!=AH;_gE$$wf>QQMl6AEn$FQbI>*Ek
z>+dyfRGo3$cpFdghBrlL4)?4*vPU&}wPF6z8&+oyGD;iRw{Ps7u{~`K)8}Hz+f9|y
z$FvOX`!~LwG5>tTRla{SyR*(5{8w$Tzhh(VjP0pw*gmTq<4dYDOx`*p{!oPMvj>l>
z&P<lHZuyzo(`uN{UU%$I(Ffyanh(;?tZ(?(P+9$<-uT%M#Z7Z3l(X0;-{bt#^K<Hh
z^fT6nD-P}9PR=!We=0)h*<A_mLwl@$NEUa@*PQVkq>lSfPi6kGs)Tu5b;tJbC;v5g
ze>$T6%z7sK<a_-aOU|rM%aM5IZ*0c(Is3r*8S&h8$M)DK3meEExRG*ZeR7W0GXup>
z2J#&Lj@JnMsF(kI@In2V%Lo3?Sl;~KaC_r_LwTlu$7>{h$bWwLp#F?|!+%40&VR>i
zM1IJBzWAX2%yEza_rK#cGC$-$e|%7X#`wVh8R<>`4bL<EPoBs7@Ax0K5BAT@oBkWl
zXZUygkJ<<OXTk^n&+upZpKK@jr~jwO2m5E{Ae);18_wtYSAYBt<G<rJ?0@<z^?t~I
zw)tTH%<qH!v!4&@&wN}O-obq~_CfubyASHmEN}d8IG^v|@jJ}_j_(op)4x;vPybH-
zKmC=0Kjc44KBzzQ_d)#`W{|d8mov@}>d%1OG@td~@fx!q@}Dgq)Sr3Y^xyEm_z(Hd
zl^{;@f5ZK(fBNfxu6<B{ru*Rk8TZ-#9sg7I!Ty=*gZeY#4gU@AgF;C0hx}*j1OI2-
z=lpkkkI0|?O35GcpLZYlKVy3Hf5Ui|f5&SKK>{HC%>RzpaQ=}0Tz&BW41L!B$#wES
z<UglAs6X?b{eLoF;To>b^&mZb|BlzN{*eF7e(?VcdzSit$7@u7$bW7J@jwAD`a}Nn
z)d%%w<XQhG?_>MZUpc2$_IQnM^3Bxvv}q<T53g%%@ZA13ifNtZ{`{{igO`iF<9BP9
zZ{(1w6FwAQVfmxt(2~8o{cPLwt>#5(*NPuox%Ee*TutLl*>&w%%db6J_1Nj#L#ag{
znSJzhY+_tZ>gyhyYOUuB7wDDOC{k74J1b*P$;0qA**GVYI_nwS<tgpmoo>^(_pf_h
zAb9aduiv^x4}Vpug?fLomL7iGam+k8_Q$WM4;x*QL&fX%UVJF$^4R?4j%7-7eN4KF
z65ILI1$y&0?fS6#FrV?Fz%AVSkG=YE(SG7FbKBUXSLzo9PF-C;<(I$7zLPJboc^jy
zh3=jf{J-;<zuS&55WQ@NS-}6!WBHE?LqYViomwmZyFA{0dB>_1|6P)UW2;yEcX@1X
zvoj0Cy&SvsO8ugbx5Hz;Ua4QSQG1=i*ZCQLrkP$3d}V*}hUs<ASO4Wb^p*ZcZ}{(`
zulQd%*7=LkC;LnFp)UIB|CM7Mzj%GJzqGnD&i9{t73am*C;oeg3-4|G(_bQZQTpV6
z4}aBNO@I2oSS;E;;r~QAj}q0N@-O9F^40$<&-E!0{VD&FWzp)B|2>QseV_1uqFt5H
z%i1UPuk0_Hf=Tw1|F6_9$_A6KPk`93!EFAC|La%&cWDQ6q`?yXlm4&#?;@}MKlp#A
zo#Vgd|AcEN{qg^+E*1Nd3lt{#&V{l|{|Wc5E1kRG-~T?7x=)u{cmF^9)n)PO*o_|7
z1$yuIJ@Rtc)s<1Qm)pLqXh&1VpJ#UAMweE19$Wa}RmT^hMIUbm$JkELQ<G|MTP=U7
z-qq!?`N|z^O14uoWVF^Ldh{zx?GHR^%J;I-<?)5WhsW>peOHj$?|IZz^kvGTLXDj<
z9_j+U_m@4=a+)RB>wMZ&`sL#N7yr2Ln(@ougwHfw^XvQ<I!mU5;%njaD8IkzRYsRq
zgQ6{<BzM6-;koT4tY7D6$jn;j^~(OD+>+Jxpg0UDeY^0Vu&m3jHjp8);kuxxTe4~O
zykGt$hCk>3^8dp0$^Ps77eSxwzy1%O_5aELv>Ww{rcd}kah+n7<WKpRT8pMn{y%Y@
zLY3-I`IlE+)~o$j-rMq`^hy1a?#_D-|J-+Vyy$&Wzht>ktm8lTDw&JXC;ofztL&Qe
zr@y|0f6?~I|0nvX?dtl|U&3_p>XZ5<k{7E_{P&Qzb^JUZ6!yE?K;$n4kV{H*!K5sh
zv;~o06v1vY0I^G$LFAV}u*hR@+^d75)gK(Kk3-5@L1Cfp80!wAuawQLU-0k0(`Wh2
zKYtECtXfpKYIoAab&9)qFL8Q=3-$)zpW0EvdePHE9h5P7Sl9J==qp;WzLfJ27w%nn
z@GAdHr9~en|A*vB=hkeAOOHGJT&rX*F?Sxj@NiZ`3IC$s%C?}0Gn}#m6mfI=N(3+U
zWbo*&yXhhScjhzuOZA|9Xn19Z*UJAc>56+>e)*fU$z3mcWq)z<#5mu->Qc@Vvzfon
ze_^vk8<fj3ib8|_cYafdbp=UH&E^Nilp0$&@7MVmJhAJdUfEy#JYn7Pf5NdoptQTU
z0Tgn(ru^~$`@i#<{ZD(T-~L~OKG|O~b<tP;uN>?8rM~Es{UuSC^(z0B_ey2l@pv@P
zq$hqx)$Mh`1>8)xFF(qa5Qtn6UwN`{#pVrKH@59zNluFl@%q7hW1386V325NSkwG_
zmRtAF`Shu!^|y0-y!OFa(<Z%I;Tc?}d+$=*wEMkJ)<61m`u*xZleg`8KK1_gcOtP{
zBVw9T7d*I97q{C+vp)5@(28p2oEei3-)DTYEw*e$d|tQy=Bv|h3!TboKlMJl;Zsp`
z&djZQRC=bbIa4O{qA1KRFK*{r-^eO2kxhX)Gv8)ZzNo0IWDQ-Zf8H)c?5lI+HU7Ye
zQ>#;^-tNm<^+rcOlI_DLGf^%l^(_l)zI^=j`;}*gbL5rSr%z9dvQFDn|M9}@sUZb1
znNJ=Siq%C<3kaHP^YWSI?jOC5Sr%=-EKj%o?O9rPEZN@M<Jk_4j6*M+ZSTL#UEP0s
z^9HRc0dbpxzU+EuQ1||Ip7cBW8xuXB-aLNVd&BbX+gGMUpEh1(^7WT#(&EB1QgtFy
zeDyh{?rqa<^hGc6i^;Wq7atcFbXK~4!aSk<*0!qK#LbxAFbDSO>dpKsz0>4POTa$q
zGpzOx_o@e`#d?;$Qh8<eYrFf7r}J;TkA669$DWp&QxD1`7AXjcO}A-X<WLYfdrI*8
z1(QW@2;DK}wkj(;8P?YmAG4`9{^+8&8?*LEuzFoxWFu<0&O?aFc7eWM!yLa~KQ>%A
zb+cacs?O;qr5AUqEyQwoRj=BLv@dJ<{ijj3TIYX>b(zy$!#g$_vbQzM*F?R$!5Mn|
zikW8YvJl?~Z~KmJRMFI0=@)p$-k|2ZXO3zek9_;xbF%wmqtaIEo?fTD{pz&z>yGa?
zOnzv1+(CE6!Gq107ujTS&JsRZ)tM7eUOewo6I-Z!{o&=0_t+N6_pka@;c@r)W3Q`n
zi<Sn6&f@yT_i<NDuGZIz1s_iL-bnZVvGD%J^B?_6=dV7sY4z#c(5E-A2F+Lh*HFth
zJ-t1&*3M<go#$1P?XIu>6_bAN`Sz!F@{@kocwBuRRXV>gJ96IK1@biu9x5C;BK!4h
z!M@c0J-zF0<}U8PRWIkMx&5v4xxTc;*)J~LI&+QfRnYvxWz%nbi)<)dt9!6MVCfpB
z?}c4P8DYF8+KeTaVxAj6UU22o_a|nK++KA@#oh#Ru0CRYxrigufUA7k+Z!KWFEzRs
z7MXXOIVotzmM5DMyo59|gUz&511p@rW$SMDx8*-H^~U$_-nsY1&;P$yFZ61`jJke<
z+8;VMTo1%-Rh_2#X4}JOlVvmc#P__t?Y+u&a^AMp?ne*B7l!<qvsg~F`qZZHjVC_6
zslBwq<Nv>WdC~hP7a#gmeI&5)Sza;I?Zw|>4QK5>vyD~!)b&$k?=4DKc0RoLNHgVQ
zWkTi6S66O(gq^>al<=*2(#`k3J7@3ptq)FfU+vGk-KsH6zszOZuju<p`ic)^LL>J!
zdfa@KD7?BoG|WCF@9XBe>1*mX=6q$FdiAyR`J)xhJ2@JS<IWu2D`Jveew)v$_~U{Z
z-CIjIiwzyE#rY4#*i@|5y_cbPOuKmFwvRDujOTRk|KoDeVY8LN)(vtsN$Q1+ofaHl
zm>1N~o2{hNemUs2{?X6%7cKU?75!tjUo|IQ*K+@??HhM3saj<v(9gB~pXA*5q;Tu~
z%XFk4Mfz5Lb3FO;z0AS5hV9ZJ=lF#q*Pn4nel8zmx&PjspRp;=zfYPgA7&YE8?BxB
z@uL4qxl=5Qww?aAI@mv9!~Nf?R~MU1Ob^*{)IX!G(!Ac??C|URf11;F{F-mVe81C0
z-d+359HC0}pxPhucRG1~{e6F{^Ml^@e-n@We{v$WPW=ymS>=`ccb<CpCr+R4({<;m
z|Gt0hyKVmEzbl$9zu`2$f6tw#%JF}jW6%AYy}RaX;G0jA&0XJp>eT;#P|yG8?A<m`
zs^5I#7FH^^{B?SNt#bWjZT7<O%hEGb1$X6a`?NhO>}po_)OYK$if(+9l}dQsJ28CY
z3g`OYT4ED;4Yr>QUGu{tciMNCdphs4_jsGd-+fTlRd%x4Yn6Jo*sqfh%kD4ge79S1
zQ>WeUKk_DlAOA1+G101d#W8DzhV`b-xSwzG%>!rVEK*&by{K08v+$2M7WKDIxcuF+
zeVd?}``?2Gzoqhp_WxqzElv(gIlN~5e|GcE{y&pvyBIiC{n&gsqov2^*dh6g>s}mr
zG)di6TWosHqwv5Ai?;9a@eO))H+$c!i%qxDckWC686N+kKu7jp(8IlV+Pb~tE;Plf
z6jT(R?7sEMedQm4{!Nn%S>D@3U45Nee@{{LeRvf2t0#HaS6Ao<&sg*HdsR^4%jtjO
z;)7>I*1wvvW6htQ`|k>0sV1~I&sW&KY>8Fvq?Ds8J~$^@{XfN^eXqam;K3vP_m*xx
zZQ1f8&BjW<@z(vestEt~H!A-$S7^>xy~J5&6<W0~P}RmRzR90!%I&L1jLv%g`Z($5
z@koREy8^S8w94tute?WFe?+wSOJPnxn3oQZ>Yl%R*X!DRy+Xe}zPWy*=Ub((kMHQG
zaxYntb#BqDhlPS!_r9#W$JD&?QnA|9S=*RP^+dMccKh%6#$!=g%sPhnLx)bc_w1UV
zd#HN9)6wf5UHy|DJ&urlHTN^;w#~g<{}c{JOB^<@U(#OhuU>IC!nxw)@v4gYCi}Aw
zmu?eYyX})_MA&lIWo^;In^NBVztvIsCirj1&ad7%mo6F})AI@0nS9Hgjal8aMwatN
ziqeCU;|_=Nr2n$pWopE%k>$E;xAen->5Q5EE8lrkRlHWrac_5f>#=0RB$ve+GZ(pX
z9i1X&vwfxR?S-2IzSgsgSYEud_TBT}`%0$nJT`Hf?BcJ^%7WptS1vVtEKuJzZ~nyA
zYU!D4eRo)L&bsR%(7W;7*CN@k4%Q!7uX&oU+x*t}u+{1neocjQ>+4sockX__XT$8Q
zS_`i$tCmFFUO8Lz%30l%GrTEhdY^9VvwpQ!<HJ_}A4NLiHvc*8?WS>GtF2cO<Cl_j
zH&tHTU6yi1x~VF|v6Sh`0>-6Tj$2hfzm7CmmQp9nJ$Lu*ZL|7Keu+o7f1EGs={`;J
z&m5tC9qAu0Q;joN?Rs=JYpmIDWYy(OWoD=CRAfu8IqeL!d+^5M{l-rhWl!fypNiAo
z9y;aivF4|9YYKgyyiS+im!x*Upr?IqeX!0OotF(8{nvh&P~zn?_vrSx4=3kNwbFhU
zZF0?+rK@y%JEK7yvq<}cl~D=Izw%GB?>Nx*@e}7Ro0jSQ7gS}J+zOkXx?X$xTD|je
z;X$_k)j#h3GVZEZKC)reqQp?&!>cB>UHvxc=gBwIL?mL8cC@@Y(%>c5ex@=+!0uAf
z_O*@myC=pO>hh~{FAjS+#VvYUq>rLXqM@zuld!XkVxw>P?Phs-v$CsfgGaKkyr-0X
zmraU=pZ7;rg`V&ydVgb=MxC_ode?Vs@y(d>xp^tsCGuBaiq(Z^SGMc?(QkJCwZWuJ
znuq`8<ma*?y^B9rN^RwoV7+wp`KMT(wllf!PdleQtN*>@pHHZq^z!!qe^`#U<j;^0
zHZ@Um2wfz>*vS8LVP~L@LDbKJruPq(o9A)L)itck+#u5!y_3zbyZ^H4nMaG0#HQbn
zTCkk=`Yoa7wFwrrM<y5cUiy@C=gQ*=i`ma#VyJ%IV3Yg$w1L(IEwkTygD*w1uS&PO
z#ro`b|3#VL_Idy6nLby}EsLHeTGy4L!fR@r`HB6|k|4*`{6}&dLq4Rhol)j1ZJWd4
zb?xlRNk0?04zx$C*!|D9Yuzk!&29hB-CvTy?Q0R^cW~#tnsVM5ejj6Pf9mPDKd4g8
zE54?9bM4m?Zrk@Qs#x9FA6JsO=Uln>ckhFa&;M_j_`kQ|(Hose?j`k#0#+5Trpyq#
z%y+8l#m8B7$sz9V7A$yP9d8r4db(Qf-cKoO=c&C7e7j`o?=^F`Y~6Fa^Ok4y@?4Ev
z-fyx8u3dfflyBFX=HGvdc065wE-3dOTWyPSZgJI;i?e(Lja+lM$`{F&e|V^!zw2G)
z{IXxO%u|oG^4E48+I(4>H`!{A=c4*=9<PtQ_<m-wOPA-A6^{a&=3SGGD_s_-v@>u@
z!Yhr1fl+o=lJZyftCh{Iv6W)|%l|3#-=(O<1%@^Ih4iLeH}zU|d}aLNs;|r@LH%3y
zzi8Baf71Hk70*}7Hr6NCOX@s%ulVz~N1f=&^~b)lPJger#d(U%roRg+SuR?t^c-ZA
z4XQsVyQx)XQ{y^*Pd>{fXWl!{S{a{Y&BAAy@@~S0iOw188{$?vt$(9=`>gmGw%+t#
z%Ud?zpJscQe|zSuyj2TNHZDKDVeaX+vjwh|-^8vylv|slxiw?gZ}yk(Jtk$`^a~67
zz3lxTr|U18)AD^U<On!^)|N2Zoojlhucr0<k;pxpKi02(5X}B`UhC;is_wZPKH2ij
z)CtTsvIz^GfAA#tbP27M@007V^IzegDk7yNo4LZ|?)|n&KY2~0v?}#q_;ww(|G3nh
zNAGuCVR&Jb_W6a!9?2!2+Eui2Q$>rfc)!ZzgQ+sFR$qAF`E()M)eBs&+ple5-nG!x
zddZsYQx=9sPUAIRRlmumdUsjIR?hde)6dzjGvBj%_jljJ)(3yD^y?{{YtAom#go^1
z#kqg4|0R|D+~Ou5o6%&V{PN)IGv72fXaD=Yy>8ZmI;-gYTk|E3e){=)*1cb{_6^Sp
z_$>aejc-i4F7nlSng66E+XPit-n}+aDM-A_<B`V`)5z-@SN96fli#QKy8g|=xQ<_w
z&K>{#|LDR?&vcs?PLf)8xBpW6|InAw_YJ1lO<y9v^P9exzG+r<l||<g{e9PRW?ZiM
zo4@<;%suBbX4r4ozA|y1oZW9(ljFMAXUu&3t@i)#XBLkm<A3a$X!-8W<t>)~YG%Ky
zUvIYef9>P_7i8+C*bd&@J=^T~_xy{0^X==6i=XWM7oXAhzFd0d;lELrpRK4DK5O_-
z%eXk@{a<|(_oI5s#Xf)hFMB_+{(V8F`S-kkLXumf_qzlg(N}fc|LteDVEu`>!(X3x
zP5O5se(JvEw*r3cGY|OHuwU!%sk?2L_Nx57d}Y5z?b3~3SSHooj-Oh$d1I>C{=Q54
z|5smn-Mh3ted3q@U;cGpVt;QkVV=;xN_{W=4vkprE!KOpeyDuU6e>9>$ziqYa6o_@
zXVv!WFS&QEIu#HQEwtqY4@>N)Sqm5ZtqusdCCTwB`Oa1&p)b+rFN;q}k#T36v>;uX
z%c|G#qtDcb9lvYLz0Utxed+af>381Z6TZx^nz2@Q|GPi>G12wcLM7Mg*6+LYB}lr8
z_w2{ea^vEf&7gpKFQvEj{{A~tEQ1dJ{O?%2=l)y$zP+XECERvLOtMp7RPvVP&-Jpy
zoIkQm=hpwbnpXFF)kBt&319xk{$KRvb-am*lkp_E92MKnCF-ktH!vUV+-&sa_3ZT$
z5z4lI-sn~RU%vXLMBe{b_4N-W_Lc9xDDiI3+Lv!1&6=ChSG?OK^})qXt9IL<mFDkz
z%~S4OYl!z0mh*Lrf63#taqp?uf=ep|=6L11ep$R-Y02gfUDHeRUDs4aeh)ixSAX_?
z(S_E!=5^Xm-(R`RRrL7&ilts#N$!5v0r%pqPu@Pgb6fl5?eZ1(dUu!{+AX-MzWs>2
z$B*n;b%{(7?J8kw<3f&Cu9x7GX@36l*YX0Hi0fan1!W?#KSa5F{G<D5Z~iP->4FI*
zN2c>UQ-8Rb`L>mW?#Vwt%sc15RXcQJ;{8V)%Z^Mx>n$j+%)0RPg_G6sm-e1^JTFwF
z{dD<bVXdd)T5jQ5`XM^{r{f~?qT}Z6{j{w<OQvzv<b;m;^+A7Li@e;bZu5Wn;d-gt
z|HNH+EcjxzXT~3H+W6tRP)^~JtxtBd?3iG8rtE`=UHJytD{bo%mwY?gmoBhh`)fYG
z+r*xL<CpV)&DCFh_`286$ksPzxnJUbb7^H1vvJ+BU%$22v_kaX+^dt`lqlZRe0idD
zf;soL{kipZymfOuH~gKrZqh?5@3w4q@rq?-Pn>pSsNFQtYVr*}d^~>H=lgui@84M+
zCvbM{bUE!ykB>Zgz9s+X(zfskFE*cZD7hQ<F>-2(j>zf$FH0F7M)!zqxl*7Xw0Ya#
zm#aB*P2U_;KgRv+-`g$!^Xq>t*4uKn;=g}W-R?(USijbv47gD5AoS&pB*(3<O=WUR
zTKw~zC0i$^ED)E<*N!<ay)9Gu<nA9lw@kiS9^M<O$7waANb234jS;)k_*V$zPw~*V
zdMS6>^St!WZoeO_iGN&|m#O=&v_EwDhv{TpvCK=yPxqIZZYsR3w0Gx9IcxqsEps#H
z75xg^86dv#R*SL6v2~|;<?9#j-RJs0>BCc&_+{<s>Z_*Y++4E$>)Y;#*J;VB@ph|Q
zm$$?#R(y9W_*^&l^O}9}#h%9|mbGaao4t-tmh=4Z_U)I)OwT?frSjE(-jm1iLjH@{
z&vmmu3K&$L*Sqs$=2z<r%()G_whKk)nPym)d^zfSY4!fI>33PU61s!-DQr~ksrT@H
zyRz!#*(Ztxj*4{*F##R^t=(x#zplG>zK9psT~r_2)A6tLtm~Kck1y``EC2VIY3~1+
zvR`$7N>`ui|KnVFe$s@p>8`Uj-kQFk{DDZF?^Elu-I~$nuWN36od03ryIR*&JN}UR
z`)BI6CB^?%o4@biwES!B_ilR}+vt7X;!EGX`V5Jx>PdS{Cq8+3Ysz-l`^)m@FaKHp
zEce#$p2XR5YL&X@W8#+k?)o@YM$UgzS)7pLwHG2);@5vX{8;^@G36_}=I$2%yoF!=
zg{0IL@~Ui^*CMBN{+-6jwa2$FKWq_WvfiutjbNAet`+gteth;WT#x=AU%T$Uinm`_
z{{fRpyPrO)H{SMUWje3z*T=;g`udY>?!K`6pZV|J`5Eb77r!W+G_`_llU+^Q=}l%)
za%vOT)Oxm^cJ5s9&8@X=rpLmp@9J~^<rTa*W_;`Z`&&I+LFXMD?{^soO>pMo+hSYG
zx-I>@M`NqVkMj<W*NoGbBz)bx;=vr_fPx1;H4}vP%@YZUN!d}qNX$gnd++@}8=H>R
zD@QK>J!#HAXP3nv7JuDVwQ|~(!|wCLbh8BSS6FBLo2hKYe<)b!)~kElUeDzIXrsY-
zUz2C)l=JUB)?d~+9L#!K$VxQIWx3PRr`!IeZexAAtub}mqoU}ln};g5NJ@llD=>@g
z(TbK>(p{L!-Tgvob<V<eJ+=BNx+ND~nJoEpg2QLkZYU}7y?HU{_P$NROSjps-F9o*
z)LW|*ql2=VO)qa-ab=tArb|K5swv!FxzP&RdRs%c-13^`oh$t?%PcmxVYNc++UC_t
zyP|l*<#t7JhU@K$>T^DJEx_jg0@aeZ%9HzommgW~{L)7G^UC1mUC-Yuhb^6ETA#?g
zDXU|v`)RE^9cyfl+**;!tJZk+$gOp$Z`B$@kF2`1$>#OMt#c#Vx2!oY=NzWG(Jw2~
z`I=%j_r|O(Yx+IHSvO{FU8A*X>%<7@Eo<h_bGXKqBztw!yG3bhl&^8>zRq2>byh_5
zmNjM}*{T~~ZCNvWMeFI#(ty*iwuv40Rob5|RDZup;OP68$uBFVJ@&4xTKca*^Lb`h
z{qz4vAHQ$;`fGRPzgbbnLh?4bAJae0n&p1+rt{amqPB<1^IeuMKlj^u%DJjV6N5gc
zW_K>x>T@aUhg7N2T$SY)vai^_Xf9j%#nJlZgd2Z%{M5d>>vR0isjsfu$bIVHWqbbI
zhpDgnCdRM4CR@KY?1OVqw5rq!uJ4)Er*fo!mgkuMDu}i$Sm6JDooUtnsy9(jRU^J0
zKWVe-;!L4+bwatfmY;o@Uub2s(7stmP11hO@9_Ee*Ilb$w~d)Iu5R6@DGn#}&bFPn
zd4PX<c1W)ECa?Xi)?Zj^|0yQj-tzZ%Rqw-npA>~e>e-s+MW$+K)Hk!d&8q#?bS`@R
z`%v#mh1n{S$7VmfE^ltLq$-tpZv7U!zq02xXD|6(^K*6VmFQ(oLO)JgF4r$Oxr&47
zcFSas2ak%s*xG3wEx!Bn{Ns}U%iFX4dgTIT)~?$%b5&g4n#@O1dzT3{$@_OK$vmjF
zS55F@TfkHCC8r)qMx6YkQg(W0{i)f%&QD%z{$S&AHaTmv3)=spuGqHR>R8b$vvp!p
zguBzpkNp9n9jhL!;Hugm-|eM*Ma(7l;R@XcE|)4kzqE;8efW9eTCpFQ(Ko(4=g#_g
zFmg3(X2Zg160a}VR^ARbs+SMR%3S6we)jv6GxwQ4`0IW;KJ~-PsI5Z#R+su;Up1Az
zKL6^j<=IzH96N8kCrRPegckc79wB>=th(48BzML2&Z6+CXVy3Q#k8>7S6I&vky~|W
zYtr^VB5U{g{PS}A_;HWh{FxQ+6D1D6@CskzUgv8sy~gy<4Yswm>|v+QKmNAHC0F+B
z7Fm;uybO*thB10CE$2_(a`EgXmn+v^L`T`jc3;k^zjJfq@|!b4mm8n8T4yykGcC5%
z>hhX*6aUXn`@er~+WqyvZZDsi-fDAJM*H8l%x}+&Drf!O5o3Jz$LId5U;ZecE4cgT
zPu<^LmXjXb{#tN$m*oEm54q+#gytJx3;Ep<cR78vz&ydg$@NPYE<3*B73;BCd6fa{
zGsO-b-Z;@jH$HL2%6j|I+Nk)c*{7-_*1ybYx-S%XIr_VFh8O4i`j&bBy+XIP`<CCW
zcWd`8pRgu=mhrY3^=~HE$GWVkXxciXzWw~6-&gO8OicLWbLo#_T12#?)#*q4hW;OJ
z7k(5x)N<_c?FaJKe_W>?H`Tf=vD)WPedyD`-cv5gQ`PQkey|U@xgc<6{SsN`Q|D~7
zYJPjkFx$Hsi@n<~a$K`c{f5xb_H#Ukf;ql~nV6+Mp1<5rSFU_h&4ZJZgqJt1J$27I
zG}!J*%E|IThqk(qdAuk7f6uc#700mg!7|V4a^6A~*?B3y(vMtMsjfZw=YER1_|MwS
z&sBcUWqs#x;idn%?>||W-;T`5d;hNfaZR57l+At0R(B8l+P(MPgVG!pZLVLD^DaN;
zv1&9-`mscCvB-<9bJdLY8|zPbedPaf-kjuRxojVNw3azX-??{3;Tqf4xaT?|tdf7N
z3v*nSU4D4JbmO7`hJQc07Rdc~Kk=o0(#DO#k^64H{;*`{oSm0f3dZndwC-29-}%bj
zN90mHGh=z<c7gxbtpX%3Y@ErrgYTEKpIKGTu3VARX?)WTN6gZHa+3Km>txxTJI^^N
zRL)9XrhN0^ck5>?lkVPoa_HsDgr^VYD5W!;S$?qEW?$sV)-UpNPM-J^-}BkadBM$f
zCiBe&TA~h1{uh5&YiC*d%F4r8vA4NIc!`Y1Wkpu|hyUw?pZ%}<_x}0&UkAUlT(SK3
zU^V;o?i!0F(<Us^Pv!aUaNFIG&73Rev{~DK^X`Yo{w%lm{~45^^x!pzbg;zX?Sjv?
zCh<IXV_$K->Er+BJ^BVdHxB;4UFOd4xc<5g`z6*1(|Dg=mu@$>CRN0f_uS}T{X9j5
zU(a|Kn*G|~>#k@&<5>NN_+3BO)bDQnmu{cCYD)I&j2FU7$|h7fO7Uni2l1)cFS)I#
z+q#AAQksXg;@kEwmP?W+tVv#AM_A25!fGBbu&XC%(Bp-6Du2$Mh?~IXe5zpz^GW`f
zWggy&Ya6#nUh?z!tys(VQbHx0?MnL<z94;%X2n#8Q;kpBORSeHop8<J7Eh-7lD`w|
z+DmvQnF_yh&SGCFzU1J955N726@Dt-<;&EpUt&7J%=s2)ru~xhin7fqXPbUaxaIhY
zHPc`TkB8-iKNIrWw}@Pl@|dmowq=X_rRNj+95<yo*Lu8F_}XM55yZAc#-q+-yK@v*
zChwB76Uv-!@xLtgIIa+x-$2-$dmLXC>$f&v;lA`h`se?k{^N#LCc1BDJ?V2ko>K1R
z_x9TA=&YjSZ{|!emv|I%eV*c?s&cE?lvn??gl>D<|CnE1nbWaozr^-ihH~4_g`T~v
za!7YtA#cL$-9@5y(}n-fIKtomDE#*}Pt`xm&;Oh>C;Gbaw$sNXasuD%+@N>@v{2ap
z^RBn`e(!zEBo0L|8vJ;6`rWzY*9(^v?6Q?NXaA<Ok>9%^<3+jErzK3*_jOtp%*a3S
zrt(~k`-#OF31{03H?H4g-PI-aS-Aal&GVjPZ}LUU=G~ZX%J$c)>EX4L5eGL-oWuE6
zJLk+>#<Ih@b8Q`}cO7epWjN3qmwYaQqjAIU>@z<E9;?^i7cxuRb=+W|f6kd-k`Y_-
zw>*DzY@^_TdHvS+uO_?J^Q<vVk$L{~q1a}_-_-}pPFSBiHpBgRaZmgkXK7_OhZj<e
z*8acm-22wKH~&lX)kGDRg@=W!H(&8lPJ38#BmUWL?i)_dW<9b8?Xym>XZIHWkZm=;
zkg?nPbcpK(OY0N=4C<d0%d!-tOP3vZf1)()XWI^2zcM2sCF2?F-wks<@lG_{7ce2$
z{CLmV^XcMuGERIG6{(nGZuKYb#-jeV+I@=;NG7PZ-3SPrr~D#BQa!b4V_{o$^UPwd
z;u^VcD>#)V=W(*E`0eYaP=3Hn`7*n?l{N3p*2|msiiman5#aj7QF*rBCHYCh{PWHY
z?LG`Q5}y3eJ9NIlYDdG#$v*AOcb>KsHQU+WHoeJVto-E5`M|?gcke7&5h&1dV||;2
z-64|$3+_fNsF{CE%-_@)w4AqW+u<E{_a?}hJPeeM2<tN}hpgxQx?$c<HHM#g6ZXn;
zDsflYo|l-~`hES}xoS!>^XeNW>zX}0RQoCNr`oj1dFRS!GaUQTv?jmt<cw3BHr`FM
znbB`Hopb$$6OY-_-<m!2Z`hbzJbTBf*~kAGJna3tS@*Kfs;5s4&zB_MdoiJXX@yT(
zp+@`FnIAUo<@-P9VqU(+0VA%nXRIe*o$<l#_oo{Y>u=`hr2O`&SiI>*!F<ls$KvXZ
z6M4@jWxA^ANUt_ZbiDGSbz<Yva|Zm<dl`<J&0uI_pHRK<{*gU?a#O`-e#mWgJ!r|$
zlsoO_pU)K&<P9D&^T*cTnKSp@7lVkXGdBd9YU8eHr*KL130gg9(fqR5QseI2`R~72
z@7?JaW^`F(>a*s~hf5}}p8RaZ#dC*bZdi+*H>x+!)L`d7_b7d~)zqo8J{+@bx*)6X
zJwJKdxt0W`eQAee<(p*ttnc%l-TgA&P2h&`XVJnX(no4!B%9x!nIkTENIde}L`kkD
zyUbZO_jv+BOw>XwPQ(i&%y&P)&~SFg(K-GTfA5fF*a=!}`)uFUHRcwab|#OP{pOO*
z%U@Q#ZgOwEeqTr8`xzgNW$rPld+$Em!s}M>OE%@xjoZEkJB~lty(pSTv83*Iqv7fB
zBW+V>ygqm4>%&)jPYN*I&R%Xmqb-_o+MWX(j=!tJa?Uk}CTpCLk$<BZ@xL|AZ$b1l
zMZWFoPs%sxwiyT<Sh{8R;SS#D8vbm96j6@97ou<R9q{4YkXc{u*5qaJ&Dll5<H%j-
z24DSNmdWK3$7i)Py37_|Cbr|rwN1+obj(rqU9_!yu9(d8;Hxhke|F4{xThjf?l52S
zP?v&7f<{8J_{>c^!{bfaJ<6@$ib?lhRJgY^z@+Moz(oBs`iFPj&#lO3o9NJ%W7s0{
zQ9^g|rFVus$8IP}ZoV#1Kl$`;mBnoOhBvD(8M3W5PB|QO_-E#$KC=UMaak40ZYwTc
z*1YlbjyUI`x&ORfdTgxUMT&8%@&CU4-n^Z6k$`c=w%g$+>Uw*c9XNl#WaXdHoD=8X
zcii)k(cK+a&z3*8YTD6j@%sL=tqOKG)0U+ENZ7x3f#(egna+B*wu4hzq$BIq+h*45
z_IErnNQ+GDlahO&x6@du?aiDI3BhL%vDY)2=^ORU<NJ4EiB3cfbIvDc!NiK{@MI3n
zq661-i%YJpc-VYYgu~_zOCO)ftu;o`&K%8xH=pbCRLU@h2}x=dy!o!Cdg+Gtp+b>_
z*44_3L^ZhG-I`)bq8d_dr3BsQ-IcDFY<_Lw^OoWDW;Lb0Xa6TpG&HN(boSO-Q^vat
z(Rpv~roQfBD3P<6HSgRe)`l72jUYF>N-IK6$oE=*KK8SAb7A9c?xi(LI@GT-e%l<>
za{lsVn;p!Y8~9#dJsM%o>t!SH>+09Yb<0XBtYl@TYqDPzdugz<+V8~MlaK2^?-H-5
zzhk*Gwz_n8mv{;9ues;my}S4KSDCBZ_d5<Ns@K`ScsH%m>gyDz70289PWs7BnR#b*
z^!d8GRR-Q4_g_m+jtWkmF#Xz*m3x*(f4}oCOSt@W>fP9VPU+tlIdJT{V{35v_Ev=_
z{H62R&ds<nyYG5>Uh*5hH>C__>%J*uf0N7k9=Ul%{WC><x#?D)CmoDgGgCEeS#d0%
zeRf)|T){yO&ufPk&8n`s#}vCz)h*h1*7YZ%i!{4?msNdf7dHv#GP$&-?03%uW&S9s
ztM8?Aw%>hs`n-El;VM>XIbH6DYxb=?vFEo<f}5*pe_vPUtR4$*o~_Gv*8Yh2J>g-2
z_r5ii*PYKwbZ@PHUM;i1waafqP2(f|cA<t3pX+bja+{yN^I+4{K(C#`?_w977k|3Z
ztFn*T%=)4@hntOI+RwX=%O9w4`89PpTj`1Pm}#+T?({Ga>YONiN_^6-u1_jE=RELS
zWHGagxo_sAXWlHzt&bC}1+;|Lc(blv9Mqno+Wkpy<2R@FdaH8>>R*&iyQ87=T98}1
zV$a4-zl}Rqs))YfP`vRv`QqDF#owHlza?D^?^^V4W7&Ll{=F^bhc3qIgiq*dRM2br
zE$6>NAm!VJH7X@lYiiR3#B+B#`Jc{v#M8O;@{Fdw%`f7_<V_PZ*4%yEEZz5F-?ZqJ
z2@z{zK31J}xMZSrjc>JEoWEGT?U_lgs*!tGq%32m_&iYE8~KGJ&}ioLC7WJMT$G}v
z|MKu6_eidlo|PN7Y)`(J>=GZl@!JG*k%C1p3a7PRQR45r$ds>fo$uhq=Je%;bL*QO
zCB##=C(q#6wbzK<{cYq6p*JEtFJI`Il<m}ysQKdkqD!ny|DENc?S=apWEE!TJg<-I
z%wqgr@nE~wy(JN1!c%#AW~{Igkn5Ma5R~4({D!#jRV%M4_w=WhHC$?M$mm=ew)0}%
z9LsB&7B7>cC%(zF;EsH=)5LZ8(=(h_k#BzPwq!J4;nzO>XsL$!tY?Wa?w>xI6e)MV
z{vsFnQ*J)<3hijO$7lK;Eh&wfr_Zvu;b>`IegD&qflY0<Dn83zFBL8;o28#FHShb8
z)V{7`=TZ*b4=Y=Fg{i9WU_xOe^CCgnlApDkWmL>&PyevJHR2BMoF(Rc5qEm$2+fr^
z!mX~;HEoxsSKcGl8|HyV6Q>8TyIxd@YuRqQC&5VH;dbXF%{?tudR=+XT=!gFbmrXY
zisvpjL*nYqPQRRS?$M_WH#sl=n0)%ijz4D&d*&KXKPtM1dz+Pd`_Y}>9=Pgt7uR=+
zC(Ot^{^8KsN6Qx5o}YQ_k<IN7O7oA3KDw>?{K-a(_pB8U6ASI8@ZZ|ev}4gn!z(%4
zFHdIo&W>52##Z|wj_0R?7Mr?=RkNPFW7<ED3GtRLdfT^5tC?1By8Oh+MUS3U%rY)}
z*I{_Lz1nf6wf^Cm{xVw9PfwRtED_?K#`E<@(G(?ZvAY~%7sbpc=c-RVa#x5s>(-Iu
zYb#kliN)E7cSWC8R>*FAJyE&iIe+2nBUu-e?pyOYmEWn76G)mVYSP;%-8J*v#Vg`s
z-*3EC;OZ`%E&TnC_}Pv7+v^{`ul%8O)^LY~y#6)Q?%NeFijL`7u!;5l=AV9CFQWTO
z_MEO=4>FgOamVTwXg{6*vPD94`}FBYw@a*gv;R@tf1TEAGsRw>tJ!{i<}vqw(a+-@
zyM4M9^YZ6utbXa4+Ns<2qqa4HhyTWrnd)C39ME{AmbugU!d#tqcbSsZwx9T9TE8k{
zcSnWhja6p^a(s_G`Te3$>-~+SiiZ6H9mWE!n|Jh=3$N~unsXuKzQY<h-Ax6THto=#
zwSBp1`{m?00bf$twO(C6WM+Ncv--`(og0=N=$mx3*0!PIuV~yZ;|Z_JpEp?Z_p9D>
zXr0dXS>{hwi}9uC3)XXM9!r1EwG-vbHq;ZTFSvL^`qA=<MPJO4da?}9g)h;w-!|#g
z@vRMRr<^Ao{d=T)^8x!Gc8y)1PZuAVsbF#GM_S?jqGKr=V$?e1w43g}XJ1jFr4?|X
zzTju2Zq7Z1o~WcHmR&MC-zl(k1@GCo?uMgWM6`-$*y-|+H=V43L5WkAhO+DE1aajj
z6dFzo(W>XwTG|{DvqrVwEB$!W<;s;3DY`n_h0^16?8*;3W~?zf^XS~RHBFz=ri({!
zIF(^(q7t!cWlf{1n7{rGoy?56**_=ESlT=D!j{iE>7_3379ESpc*HvG-I3TsJDV#5
zrmMuKNV?xiWs4D*o5Cqry^~QoB|fQg!VPU!>1%ABA5y2)=N^e#o8EZkwC>j<(aWDV
zp3v60ICsMK#?O}$3MaahZP}uJ&CQnEB`#Caa}Sp-zf0Lh5y5=!=c$igshoV1w{v>M
z)ZPk(Ez4824Y!*oHC?$kt-mAk=*+`=H=WrxZSs+o*9sky>`$kLD`ofhv3^>&kw@{G
z-8reJhr?NR9AKQrlytTJMWn*Vs?$o3WUqX7c%pE6^O4n0_bBc-;AM1K_jhOb^$vEY
z_J}&gv|42~57{)&S3PH(=gjoW-l9^rB$dJNaPLfo@-3?EJ9v9{Dpag_>i0<Q=^g2s
zJj-oq5!VD?@0iExv{~oB;yq4VewTX*Kf5Z_E%STMTVH<5-zKx`XX#|sef8YFUfC=X
zD`w@q^xnZbv0%ZqyqR7*f^7ZFe;4VL3*-g5$Y_*BX>sgOQ4%oOts^f~5UIQ%E6;EH
zhIJ;Z&pIx+oV{~WfcDwI1qE%Y-2tn=YJ5Gz8}&>mW3DBK$hl2xl&`QAi)hTruIvtw
z{;F|y&%As~zZG2^8Uc|xJC{hewsF)OT!>7Pblc!%>tp)*{e}w8&38qZf1T1f%^8x)
z#gyBvW6c?|mVIUNA=_yNjo)T8JKPWQe*I1)<V@g#4|U%4PFG(9&g$5BXOi=ZX2F03
zpA=6kHC=UUXguex6U`a6ygl>r$;H#Gny$JxHC`*7HbYKiiqb=ew~wdEwQ#>Ke3kKe
zNxf>b1Mf41fS+4Z%@+2}TI`V6`c%+KcKf3$dzW3273Vf}clk$5o!fllXYSS-$2F6W
z2nol0(9%6y6|^AB&1ObN)5l3qi;{E{*!(08-pKP*cGEP>h~Pe_JuT*ujuIb_LttF0
z=E6^^A$`oQ24zv#gpwr<Pt0u!&b{e6=joA$YU1^4uIt1LWT$Sv;S=lrJ!(-^;0uLm
z+ZN|XtW&sWbuQTI*RoU&Lo)&As~5NHvL3nN!Bgsff8!LP<xLh|?)(w+7JSkTS@-J2
z?rGOM13f`<+hr8bl|9O^`qikq&)hdR?}fr0v8P(McUx`TyE^aKcA+EJ^ql5j+9#a0
zMUv&%o%AjB+^s)z+8PDFv%d9AG+S-BtM$3IcX-wt$6y`}?r0;9kZdld-1`w}f-C%(
zgLKXAM@<u6a8H7vYTx!fJ{``-I08O3KP`4@xytdCsrb$%ovCSS3>l{U$$9C~vG^EA
zK+z$iSpvtea-3cCY4=g@4q-KpfY0qu?V9G8G&al&p61mgQt!S}VO8sqtiKIExOsjq
zP(JlbozaVzae?Bos!I7;H?tb5K6Y$gCY;b|$WXFn!!FK^XCxTC&TYHr+wnB3CGDWc
zhCHPsUcxLZGIMP`CR|k$xN!N{FKx$bD;00KK4N<9TC1rx!_nb#>$TUMn=kS(ueufW
znIm}Nu@&NN-fOlCCUhItGh9)LzAmunk_4mIt;ll0r0OX`>Q7Q1a%snltqSq+J@Y2v
zZ&OzIYKB`UZl1jLMvF^1t3}A(I$B@-o1JL1sO#>i%N?<clU65ZmS^jI<X`o}%jIpR
zu43NWuGL+u_pZ(Ej9vb2m)5Rt8{a9_?d@9MxiLI)zrulq8eJcI&ldNZuBw-3<q~zs
zp7-yXHpj&UZW_;ap0jGX;U1bZwURB0yQ4PdXxQxZ4O^%DP!Fj&YV-1%dPjB8(a@Rc
z9bZe6#ND-XwpO-9_6yWEcC9x&&yoG-s))p*j}x41-1?+*_jY-SyB4obda1E|yTXg6
zXuWK<kJDCE+_=loEuBBtcTMWWjXzG-hq@nFnV23mU9ftmS9sYqfgMjb<tZKWn(C3@
zA*IgIyLxMmV(Fr<xsTRe)(jPxyw;s#W8<sKh8t9>R+&DNn)T@7Dr2cSzd6}&eb#hk
zr0#arnO$+(@LZ;>XNT^^Q+BT18XKxO0zDtGXY(Cj9{FD7UfH?eb0=)CnI2i8<Tk4)
z<X!#NeLg)|dG=R3D<^K9W>MW?9AjtkJ-U9$r`ixZFH3v=sOUKF;%O4jA;(`Bubtab
zJi+4StIJ<*UMoqu>bAOU<}1GDwf|GkD*ME4*>d{|<Fn}ZN)EMKw!FT=n71`d;6cEa
zJ-@Fg=55~R-chjSM(e8|s@EnT$?up}w%F=`Q}*tECiTgSpT@4_D_mYGq1flHy*pTT
z$(dKGCpatbNJghj{3>^7Zb(7z+M?}Sn;ecB3Y|D$<h|y-Kt>~v(WY}juMM51o?3BC
zEGo^moZ)P~WOBk%_BAV6qLi9@bhh4^<+~!)=+uQM{-|`JoXVcMHz^j}FAV-AzV>oj
z({r&$rgQJ9U6XIruTD03?3QGo#VcGL+f#PM<ImP>)2;{dbOiQGcJ976%j-_B;VePr
zjq=<5RLWd?%Jz8tQD1ZP$bF&3(z-$qG+!sPtmp~6yDdZDe8heABi|%mK65?1Zo@yv
zH>)IGin$%Wm$UazRTq!pr{12n{YPiH{;@TDROWX0ZdR<vom#_7zP<Hrv6*+h-prEt
zdCl!`{mEaZANh}Im|I94D9e82&?Rl*@<UqZ52rv+x7KTeM^}#?Nvr-__0BI_ukdwp
zlKbyH?-rcTUpzhJ(ZA%qtrG1b$8yYB?%Z8u<1_ET^z1x|vybAouUmepO(K<XqSW_g
zUwI$N_FmM{6Z)O|n*WHM-<!g^^7@6+x844Fe?DBg?(pG9-=fb;x@>fq$C7rU`C43y
z&B~zV1^30dGYX6EGHEH>31q)$dL}W?wExY6zKd3~TBe)zKRxeS^2dKo<&pR+Her>0
z&iV4kYt!a>uTfPozx%d*E06ob2Lk(kpMS&`DX;Qx(=(GJmh&r`KYjY+S5xzG>etGq
zdYychz<DcM)|$3N-i(P1d79pRKdN7#xU@KJYRvY>H=h2m_`veV_Pq>u@-&fSLLZeZ
z-z_zN@XM)6%3|Nn3YiK;TfQ>_DOXy**cb#)*qAWY;llgb%ADu(@+8m1J4%Z1SQW))
z{!lq1eWvJPwwBJjW6xySK7S9mG?(qoY?rrYH$>~J$}Cs@ym0W3sR(mrGt*1Hbj7}v
znofB_yH7NopJ3lqx8<n)g^T4cU#fq5qjY*o#<8dv#fsdIsm<GdSnSlD`n5ytk7dE#
zBL2N=K5UIyxqO+>hDqxju01#G>75kGyrW@tM=0wWCR^?12oIe}ksAASxw3xiiN{v7
zF8Nx>%Msz-S>L+j?yX-<|F`JucRam5=w$t5hYYovStlJYSN=^lTJ2ozTYK^K=G)5h
z2bphai@oEz?m2Das!1kVC-c`EN0n83{>e4U7EZ6c<*gfkGcJ9LwdalEUyn@Rsz%FP
z*r4*Sd()Bkw_cz5(Rk+2VY#`|dTa*@B`4gHxKL)A|EW?|<$^C;y@C$&1ldi~X1{E0
z&bIQX+q<=So&IGjkJ`wkiJrW1HyovMuSSKMw6vC9KmGP+khaUKtFMh1<U?OE1g-Bo
zvEUt>!o}4seL>a7P1zQ%vNKXhS@()f^2>sqtLg<go<BBA4qct<uy^MwStAbloLMV=
zbvgV9^ZI>EA>`_!$t)6?3a<4lUMV$qoeAw#7uff`X#K`jGmR2f?_5=XdO`o0(A@Vb
zzPlzLTV*$y@khiJm#JU9I8BZ)sDzX%2<+P(d_kgRmD|Y%*JrD^QZH<NwrZLX$9=wA
z`D<RWN`C0xxhhJs#Xs0L<gcSb&HoICWPw##*CUypNO%aYx|DKZ?z2@fa}BSoHLefa
zJY&Xx!|;zPjQfnl|GTAU<~^Pq7CU3&SCbPf_Ni%jCcf4aDq1BOl=1Gq>#SGhE*IwL
zFV>oMVULGf-Hn!KYh#zp?C+00YjXYc3T@wjNzZ1i6EZr@qiOQ}g%)emPC*m@DS@wN
zU5L?9zMtjvd2;O19R)T`&zg<6<oCN>`ZK#nrarArWLEGl&%{I7O)h7XQ?7hcGht7C
za!$>}{*rH()I*M0-%n`Ns7QN$E;rh=Uot4e?~NYoL>Xa~EIFOUVx|jksw!_cTUeP{
zuDR@r>xDhBZVxZt^q6HoeWLA|2~Nc|{5+<TY8qE=O&8ca`+`MdK)=btx6|Y<^;J#p
z$=UKZ^15?9ms@<s(L~z^@82r6^3+t_o>9M}-DIP_`IF;cr!0$~rMN%XKXcL(sZZ_S
zr?eGyD&D^vELD)r`!m&cY2wDy6aKsSpRA0R`1JjoOYq~vakBomTIAFYh_W#hJ}wB;
zXW=nqc=NE~9E*klL(NIX#T)@y3>IqF>X>X283ev_mJ2^9t!F-9#&^S|L79!=*zQPY
zh8mwW>@f!z?Y~T7^9q+-B6(|VwRc0$F^0^P@6#MN^Ef0W_`lHY-TCy`s%NJgrk@S9
zRcf{~58t|ayGhMQ#kGyAHt@W-A)&Cc%X_NBVqOQQ(Cs0aY8Abqsizu#p9y764OqH!
zmFUV#OMV@QxT<aRz`wXYbp9!Ynw0ECTC4g^>@Q0<2ZX9iJ}{f06w*7vv3&OGPhTf4
z`=yo~dOGERV{z#D(+lFyhSuJ2?~?lQ<(k7)P051V<c1|$JJ++EGG^cm-L}u-W1exC
zaqo=mGog1p8)Bb5GXFC5@qRItqx<(2{n>x2qkhMFng6^$3&T%-yg%XoORaj#f6|}Y
z<5iE>JMa6g1>&4uH|g<y#s8hFpZv%_alcyh=>NLjilRU2pitHP_kHn?e1-{+>>0Uu
z7=r$&JFH}M==#r6afm_TXg$-OJg`)s1jCXa{tPv4tJyt1?w6M;vJ;3+5s2+%J``7Q
zSIC-0``}fMqn~&rt>!Ogs~6yY{nK>KHV>x%u|ft9vvSTD=`P}Szf-jJN}sP${F_oa
z6)~ZFX|DQtN8~Pka=Ban)a-F{)VX+-s&kPE-RF!}x9?FFKCJRjDsx_Mh=XBQWmR1B
zF5BM9Nev%W9yltzyOO~;ZGOb;hKR-Kx@y<>6ymOJHWPTwAh5OSnqE>Z>yi5Ys%z>;
zez9`Y6s%7C>$S!rqe9(w_1Uc_yqLmv&AU1`;zgs)%&!YhX)1T@XZWW#;pgm-n!0B;
zy#fA*?yIL>;S=rR-=o^Hs&T)m(W?fo(w=~5&acLQ{zkghE_KRP3Xy#uR9_HX&-t~R
zYin=7wSOH_JoW6SHMUG>IdoH0`0B)fdc7a7Ck1+HiQH{<>2-{qR{hI-(<GDA%`7Wk
ztTz;n^ksObe!%*#saRDI>kY4l<iDoJRt7TOQ)jT-5_<D#y66KI#vt|#A15)P25xo*
zh3bZ5Qq7?a*&GJN4aWrZL=%J<!}u=TSlIr@{YH-5!m?8<e4|8Wu?A#wh)xT%-m*g7
zvObG{;fI53Pw8;2YFoTdIb>DOFR$)jGZ){AX<yN4^h#Wp%eU1{A!K7uSNFvQY{geX
zoNUz=Puij(?ta&CMXixnx_$~nmVJtDWyM_&(SH-PU--25*D`!HT==1K{lb?n7I|g1
zi`q_W%zZh5amB_7Tc2!RFC02UJN!aqq2Bs{9?>85E^|CY=S|Xn!ShRG{Rf?}2gRG_
zXk9reTC#2JV^O=~Ts2jB%em6|O$?2V7)te0bbtE%{Z^HE*~nqt5%K26QwDy{f3&~M
zcsr?4$S%D3xTpT+yor%Xt_7#ph#F<H=AT~G_~W~P?WPz5f$0BjJTvnxj?7oO!k?z`
zM?`hOJ;kX%MCyg-8*8s#VDhp~QFHGWn-=f6`w|4WJlL80<d(el+wT}*?yu+fTzbP9
z$4hJ_>y8|%u=j}alb@nJL2l!GO*s|QFaKA*^?k5r#kxNqf4?&QkWnTjz><<(_A;$l
zeCf-)C0irku(_txnCx}V|I(D;5)$)BFHrs6gcXIZM^&??un3>6?^u+aW|HM5WZolj
zWQRK2*YbVe=S2B^t-fnI|NozhuY#AqivIq4Z}#0);ot8aKWr2I`HtM<)enRHZwE^p
z__h7RO8aL!JA37$+w&fl{5xZ9b;{Q2$~)a>Uz%Rdx|rM7ZRNRGC2-k;@EfVd1``FA
z%|6>R*Oa|o`&q(@we>b?64s6NLCZFuY|`Uyc*EI!=#RUa@jq_v$^)%87Jsu@7U&h0
zU^eMY&vcy^{CX$sQzxeCiUdse*L|if-rQWXZRN?7vbR(7PuK6Op2l};v(eE>C*MrV
z7Ifdi@tr06>B(4Q;cnfGncR~eizP2lG@3axJ^BQj_@VZ@B_Gp#&c4}s^wGOh-!Io6
zvzB!GEb#M8-2YVlO5>xdJsYlnJff<$dAlaVuI$DIPj?(mc(L<jOk3i&_SBR-o2dqo
zB|9uE&DZbPav>)r{bW<qp`Gt$9#!?`@;x)H(Q04K<rhrVKc|MDeCo<ArtW=yhJAXX
z;qRs0-d$pIp2$7Qwmdp%wPAStGt*R=L&f(!IqJEmozd4hsqL4<rC+U(e^Kf6kq2|8
zg(u0fpIhnuNlZs?R&>aT<Bu%1r5x1c7Mr*4fZUH2vnOs+OwqsRsG@9SR4=rDW55lu
zpqlQk=~FuNryJjVwCHCm_jHb%e-8cJGT+8FzcBISpFNX;XXx4IJJux@CN`cFczg0s
zEB7-o@u&KF^`@~o5}&!mr_D*+m9=;2ve}ZIOCEG?UY#Pf>rC{cTJDL-?{78z$-ecz
z_io_EDZ>57+m0A~KlR$X_iuaU3HQ&1CY<NejM;<}kF+fiEHu-XEnf8XLXgGm>a^|G
z5_ZkH5#V#>QO>&4d0OTh6aT0AUrPxO=9D>jg3H)!*>dy#-u{R6N*~_YHOno@kT;%Z
ze7ho1+Puf_@4RhqqJ(Gbs66I+abV{+1=h)j-Lqf3zY($f=cVN1x7vhx_D7`gD0OOH
zv1~i;#dAFT^1~a2I<p@gxSq7lK-gMNUqIu>$BcVPoB!NcGNaYj?6}!h1*@k%uMP*V
z$d$V(V{V!2P;9Y)XW6;*SIg?(XdPLRuzcy7#WLRJ%d2zZczD!x%-K#qN$mQ5F(mhS
z?X2^Hn>r(obnejDExK@?&PwxtDF*YDDoyIl_at>*`|-cYeE#{hC)OP=<+fm)c3Wfl
zd{?_Lq0?FkuHEO2*s>QSCsnS{5)56uT4To~^=CIa`t`EcE!z}yXq8a%x2By>PS!g`
zuW<`LHq|ES`|qL{FTv?Qo~fG`rHFk_)wVG5j`&d2$8&z-#!5~1XC-#qXDDx;qP$r{
zdiB4AZwGH|%763o(Z}nIwQ9SToO@QOk#~CL;)ddVJ<fA`%{|q&eJY*3<!arcC9~ez
zhNWL-dHFHu(hQc?&z(y==gwA3-SU5(%1N($`}#(a6^}(;oYV|BzteKI@B&9whs9nE
zYEv1qLzqmwnF^LfrFlNdT@rQMRqJod|Bat>t_ZCCuVKt~SvHZE!R4)uewJDL`Q)XN
za}GZ*<h%W2?(#?51CPG1S$S1vKleZ1Q_Fkrx2~yTJ)S@L$lS-}g2(e$&ObQ4fKC4y
z&%P<f6@o@T>W`lZJd;@{+HTc<`B9c%x7(`b%<HBdcO{(f#7AbH;o@REEu-+yoNd!L
zx06wQk9=j0R>~ZmJ#$~v;)?DNtG-8TH>)`3isU~o_O|TWUMwQsz2(Ykts`}E&Fik8
z?%g?Q#l{m%TmITCc>CPzwyf9fxn8$py>9DI*|vM?w(6Q(*>x}L1*#R;GWA0wKC5i}
z@At%Z!L9YVtNvC6Y>nq%`R#S$)w<m9x7U^Pew%7ds}k+Jp`U!=W64rOc>!IqsSVTO
zwRHV8bp5q-{WW#>2Sv>bi<-xo;kh->H7A|NNN&xd-BXg^7>P~T6zo|U=J|8&q)*nW
zPc2oSR;oVzzHiDF?bIW2J@t;K&cBc=wK;k4kmQ8Viza=ZG--46$;!x+m98g$`l~(<
zRaL)wOJ?KsB!ME^yDzdm&Rkb|W~%zERP|ZE*BNQAGqb(UM0=f?|0g=``Rc|a|8k<8
zUhLX8&FoSetJ8wF=e=&nPuW%;!u)+*)`NS&ymx-DYW(dWWs$e++p9FKr@k5SJoUTg
zMWmkbyVS<&wIDZsf$9zM9gHXInoR50M78c;8J4&|OVloK?IFgiS~aVp*O+84KC-XF
z@yYx!>CN+7>a?8pb8!4sQuxBH`o&xIi?-^QY}GH)s$b;2Uf6HF&=;23Su5UrN&nS~
z`NHO97sXcm)m!k*I$YOQsjl7V(aOJZEB`vyU-8?J<?HjrZ$nYC;YI6%uS%c1xzrg}
zVDn6Cp2+Kpvoj*LNAM)=Uu(XsfhC!D=E=1dI$i414+@?XUUSC9r^IiI)$Zd{F8Jtf
zX&1W{%>DK$r>wNM;d?Fp*vDTs>GLTRmMu2)RS{l&^Txl;m%V?TUu^h&#pQ12^Cyn|
zW_tW(UVdr4dFt+bwmJK<-%Q-~X4|E&Uyr?<pPw8#`K}v(lKs}@TANP4S=m^V<@(L*
zHD6MBW!cO^w&Eh4vvHYo6!+}6*j?0H*tV&;PNnkjjmLRYj6a3UzWO=n*p=w^<1;ga
z#XrV)-d-zmy?gHtzmUSY8ih-PX6Bt0mVPuv!s(Z0u6{s9{r7sO*^8WJD=qB(DY@_b
zd?o&<Nqv@c`bsrdeo=Bb*CVk)%~bNU>cvD~g=MoBzDU#9CFx|oi<9x<<i*Cx&9?W;
z&rI~N{>YZHeT$jD@j0J8b*^fYtnXU5Z-}03mumUme~Tw~s_2%)u!HYyO4YT%=+%)K
zcLS4H!i<Z!k{;~rtlyTz#n3Hn7~c3ut6=9jcOP!17!j9+BG<26Ro-AQsd!VZJ;$bh
z**%f&zu9dMO%{E4vg<>N`ODl4p=m1nIxLQ^HJ)L9U$ZROI`qp|FCRZoo}^D1yC+9%
zFc9X}3T*P4vOq}eO5~4-qbDtO+cwP3sGh1<b&UJJiRiyftv{Eoc;)N09V|~Lag=fA
zvUB#cF0^=&ss%=}Y;%jgYCK;fVNtgBp{SmDrA@l#yv;4`=MsPI<gz-n{l~H?F>k}>
z7lj>j*tln=oVBKkj@wZaZPBw{q3^=Ct)8kKx;AEIcIwV`Q$=O3d)437UViSHcgF7C
zZJ#wS%&+|QYRW#Vsdq}(?W>QvwOu%?%5~em#Z|&lL8l{=e;%~mc60`N2h-{t!~ar8
z_q%;uU-+}oEqrELXlj&|7gzpUz4X0n4_zo=&CL&L*#EU;O}N!HZQ0khvLa`cW{VeP
zOsvk>Ro)?=GPn4ixvXly@2`jEe9qBwyqUcv^+K++cgMzEpQnJ)lAxZK^|BwrmOT6#
zCSR<#rDTEEmP^fA7w<m07`x(yUPy`fu2O^Ajhi3FCmnXbas2YOIfwpF7yqZK^~XEp
z$Mh1JecOM{EVis?@@X``_$^uKKvRZK!A_+eF@iDo3>^z1O`d0+Zu}4*k$ool$i~{8
zrwg|}+7VS4b9Vh%xqB9~?oTgXIC1g!dX_%F?|pf9Ez&mZouYl~#Kp3<5FNMX3qMo6
zzRif*BK^pBL+kn_o46YI-!447`E4lg*OC`f9<Jr5<v{D2uiI^$vpc4S!|=|YWXtm1
zVWFl0=U=P;nU|)yQ@7-sRhfAD`b`gBfBbE<|7hXAzqP_IYVNA#Py8@@@!yG$mw!{W
zuv%BY^49q>?hBURk4-pKeNFN+-_lPrHs1-^7ryk<UahI`OXL0e`2I|4l8m@(%<nzx
z-sw!M8;_oCGrb`A&V*mOSFhm1i4zxfr_RXOBKWd&y^6KeTruenwf-Kvn_s_~`1_}a
zZ&_rerR;*$at&3t&p%cE+3WkdcXRLLNphv9S8CWiwTr0_yBap(_v*Qyey!Oz$Lomk
zyVcHCp6~eVc4pj}ImN0zCO!U?^?9#P%2O9ExO^yQ`qSdF+f2PF_x9hLG4JjR&r{y7
z?rN<pU%lj>Ztv|Eo1UfZ-ZOD?bRNgSEyq*upRna_KUx2?d$YyCu&K@eMg3Z(TpnKi
z{xtLAv<2o%CLVp?`*Wpty>C}3+uZHR9Vf07_gKzSYEEUhG|FFnV$WKo&)c>zgjqFh
zl>AwCTzC2YqJ^LP{+e;lF`w^U8~bQ)N$cs~eUED0KkifRw0I_R<x#l`<8hfpThHwY
zMNU!O<yi$~mQr?^g7==@iapN$@<4UW_UuikKX><jwi8*%vo0%h!Q|?@hql+BI`wP9
z-KQs7_ZRBv$mY+UmVamaw&{m|x9{2ND!JIk(&p^ltN)fgKT@$rVd;tMTVlOeHo3~E
z-wr8Enxr#XcmHpbxrRrVbt|9WZ5nKLoatScra9}~rJ6r0Jw29ZpILOk=8es(l|sL>
z<*LKa-V5DaUOIo<@-1w4Zw7z5F?Cz=skpLw%f>d}AGUY$4C|)HnKODzT6fM6dEYr@
z!%RcX`@%Ut-(B`Jsd(y{&fv~6(V~4@zlKu8#YxIW4(=%peJ2?7C9B!*iUzOa*!A+q
z-mB$v4(c#|@y{_yb2xOv)Hw1`f^Oo5X$CjE_uSjpEmn2P@!Q=aHBGUeXEe*SD#ibP
zaPzyPSZ}CzNp#MRcCSb493JsaJ`#Jb)7q;-d};Tb{o9rs_bqN;ao2TGdhnNf9~PPW
zx#!R6yJum}s~&uO?W!`_K9BuVgm1Fy%*yz^^l|c~)by$CyDcwG^s<*<wlSdNP5nZ{
zQWX*JzD*Z0qh6Tkmdu*XKkq{3ybH}d59UZ5ur%~7N-}s}f5b%pzJ=UnRXNc)hQ_MN
zVFkxz6eTyyNES~?ITO_P>Eqm#o>=XxCm+vHnpT{-+c5FXuaz>FZDhe{`-SD+!MpFR
z3O>QZ@mJ>7Jmt34Hf>I416D|KStn}5B+pS=X(aMx_LjeMn~qzplc|}=x6gw;eu?yc
zrMo{wOM|lah9=g}{i(zFrT(r9uSa=ucvmXt=dCS2qYl-qXFZb~{?6ylle5z|88#T#
zH|Bj3W1GDvxO8%Pl=`EMNo$MMUbj74DK2T;Uy>{ueXVvG1Whlw+myHKRjX^kT$Rg>
zuk>z3P4tnA4Z5sq8XNRHB<Oj_rEKX_IqgYp^%}7ckDuCI@3-?xk&y8I8#C6baIF5g
zX+e?hiWqLK>rJP&F8JgZbU*g?^_6L?3Hpn3%_kiR4p=K1lFfQG%5iI0z}-%!HF9s(
zq?H-`Z`)R{@NcW$@2s=?qBgI;_GY!|?^k{|Hrj2xeBw<)-BY1gk?B&q(+oG8XMJ-!
zdv8Uy@8Wf)y}PcNyo}mhuNILVRkAkndgr^=DH+lcW-9M@UYX&lBK=x(^Bdl%Z*02N
z&C~Wep1!vrb^h|ye4bPL98T|BviZrn1yA-hl{$a^Cof&B_wrcO`8B_})}kP<wZB&_
zc$dB9-D~TMy{60O&W<oQ`TyD|`JLk3i1t~f_m_ZCJ%n0PdVfvneW5G0v#<UA>{pU(
zoAW&H8t>VeR~##QOZLBgxi9)P3UYtF&wR!2y0yO_`jxO>dsQZv{&PZH*S}Ey<m>O#
ze)eaB(d+8w*UNUBC;ZHRuDOi)YS}G5^<Ck%yOx{W4W9K*^R9^P(%FmZms@Ek_lB64
z8CcKw9g}$`DCzj3$7l9AZ+?H_jkU>dzO(xl3zz96zOy;~CSl$3w@OL(-)^*DeRKZR
zH|MjyrJMfVJa>cm<;{;j`|v%Qo>4vH#Kr=v$@c3{&cFWTeD<g3rawQ=ofzDoAU?Ud
z;!$XbeaD~gazFKa_jyl#f9c6?lb`GS>QDGDnz8@P6NP<Kwz>Exi`S=rnr`~@^sGOr
zzW+9<)$cSe>iQ`^L*__z=4{U=*0!JQGmub;(>vX;_j}F>Im|EKYN+kOB(@=)bA2`#
zy_Wh{rEV%yb9rOdw$Eb4P49DVty4KyZF6qB$@A!0pLNgv3{#&IajU+K<GX?4iLy)I
zR0R1l%Q(Mh9I~BN(64sqGH2pSoq%_HPET3zx~|tyUf}6exu?5leTwz{xz4@P^@6W^
zWW@a|yXIB&Zk}#=Fx)Bneq2dq_vxMC#qX}psWyFn&(GrdwyReoPu2Qx?uyQ^o~IFQ
zbE<Y$(fnn1mTP`5owsQl`)5w$ruw(@w_Fu?JYDXw`mB$_XMc1apCMfm?&HaJcgy$U
zHGcl4&y2+wK3!gK`m9Rm!nIdiKYX|mXiYJrx0HeZlFy>v47FF&v{F<Ot7dCI)Yb)~
zyQ_bAeb?G|X>Zs1()EvKC#-)oe^>a&+UJkD-%Q#Vap+X%XKUAv`uyLVrLQ%Z;wuC@
zthJa5-CY&lt>8E!E84hYvC@QxD>zCDnFL=vTfy<A#OnONs5APJHv{4_=hVqCulS#T
zi|xBv+T|#7w!bAjzg|jw5neXy<c|$U{uw-#i&AV~_PgEc!sPoN{u69|ZZ@9q)#3Dp
z*FBmFw(PdH%v<L*MxA$XpXybA{p|v!bL-c{M|%1@I?oVkd4A!V%aZ5w-%jGYxWw7y
zr9i)lWJ&mjHpRK_^LAa2aJ?dVPU^sawcPEK+UC8E;XS;y?P1j658osW_td)aym#r|
zd$=b_G{E3xRdSqysQtH)o=aM8nWBqrM8#f-J=bn}e(C8^CCTKcJ*jmC^2N+sJL-?b
zZ@BkVe)Z4eS^qZ1wQ8k?hpyPT%c=LWXjaVzC*LcgTFWPw%)Wf1O`O3v!ZIY@?e+<~
zE5AQaIe+0)dd5@ZJyTZau2>P%&aCw{tz=Tw@@-R1w_FRmx=2I*sF6bAjoxD-lY1`7
z?=<SW1V)=oDst_1ZcEKeE{=<p<-7ILq~6SaL*b{JQ@36<U2E}V-zVLtr=P_BNs-h{
zcP@)Rv0t{OXHL(?s!!IFyHC!$q?=Y#e(1^6UeVXJrqSkpIUktqZaL;mFrQs;(Xeli
z!@L_84%ny5zW(q&^0fN8PwTDXHkH3*`JH`5r%>EKMm2n{g1eaF|IaG_yVb9SO_faF
zcX)nX{kg}FHaHkD?+@Vj{~RrL&1Ad%nfXnO>3)|sma9KGUb<!NVw;<fpLzy82cb*4
zHGix-UhB=;amzw`&gwNAcJ-OwsER!-<nW&@w|r5=oY!6}E(&FBX^~pr`dYRmSlq2Y
zRLr&DmCWyIMvwk|opQ~cKk98BS^35+?|fZy=k=Z)^|$8>y_zd+WYtp}_cF=vpQ%jw
zh5u8xHLE24WD7qerJLA0ZNst27j$3TdXitZ@3qCx&$DKUZMk~eQRf`nHHLqd=F-Ls
z*BidClrqcUmEO|E8+Dk?pSf+F)pJYxGcSEuJq^ya-Z5zS8+S`=a+B%vom_fXpeUyN
z;*%(gp!(mD=az94{cvCD9m&6?WPj_s?Mt3}`=4JL1w&S@b$4d6e0Y33|8dMosRQv&
zx0#nLEL*(#q1Re4S|7HB?e3SYhwOY~Pq!%SZrx_y`N3cA;nrCnqI@gXy5G=!u}oDb
zV~zgm+z0+T>z-d?KehkDw2S9w1fMU@Tz|cO%k}JAuS;##_q%1!k+xj6;Pl?BGgi9%
zWbgmv=3BXV*`C1QdoM~;vmSaBdLNGux)$JTxNqu9$Gv^qp1RDhZ}hHTy=;Hz<@>8%
z=D*cB7IIvB_URon@4mW`FYXXoAzeDR!>n+j_wLZkc~`eYmoB{bDtr^$zcneV56g@3
z&f6iTZ&O#VR<8Ne^T+d|>5Jrif_E0an{Yr|Ey-n7@$$p-|1Ifdv3ow5Kj8h-Lrj0C
zU;HL<^r4MD-}hG*cUC_xSg*JEdzGiTCaX4Ev1IyeVdm45x9oNH$*=UeZF1S{?3S~s
zUa}?1TbXaqm2k3kh(7=C*qPf;+V;e@gV5dAJ*Hc(PM>C8e~Z6#+iuxSd|Zv)wR0}>
z?>U^m{5D^q{gXobbvxy+-{~)xSiNc5v{TQn{b8&AU45!k@r%(dt&YSeuJ>N2p8YT-
zt-|a1g<x5+JnO7e7S<L{3wDV~U!42?;@b-))+TrP^qn#fpU+-#;MbY5B9`Zo%b3od
zjP9vyThX`wMs?+ymGiFFhn(N_HN9xBwAl6O`-G*n&QJSL|2pJ3yVlwFbAp#%x)MCM
z((n4r=hmx@mzL!`iILp;e$R<p3#;{W<tKhSZu3?@3ygN%QV)}SuKL`q&crj4Lqkev
z`t~^z6>52=X%5p27wdn#XOp#VyUF$FI8F;2v4Y^^n=YA|R__R9zPzA*zNGQ&8{evP
zs!eXoo!xdk`>M|D*Lst-Pk5&+UH7U@d%mC2@i*HO>dPup`kq{m-{ZEf=hJK1x$*DI
zrp24xU9sra`SMd64)lFid@h-^wP%}E*UeSlcW2bDNdC64?`FG|to@reW{EdrvmV!+
zG1u5|&;54qkv}t!|Jj)KFT%Kf%}o1xzI*ca@80}-p~ke2Z_xt&0w#w;jJM_~ORlbe
zbIM{ts>}r=z6?orCDn%iftQ}oVMwrj`25(Pxijp)&#=FKW`6dw^QNDlA7uGq6U5}e
zrs|Z)Y`b*9*?+SpGdk%l&b`5qY!>&d>t|Fq6j^CJdwn8lLCW6mTR!NXZk%GfrT(n4
zrL%td)0)*VBt7Nx+V4yDohom0y__~*ao=;B=4Ha~4VFzUdHbcLc6})bz27UbdDp)0
zQLm#c7-QEN=X}b#FDdD}<V(Vw9aA|w%`a`6nxeP+(C;Rbb^8^1U+a53*7_N9U2VQ_
zdFr}vb2(0?@0WgkYSx11%D2kuCoe0v^^M)SY+Y1v_}Z1(0m0$n!LRBBY@4^=YBMpG
zV}5(ay7wo0p#GjqOV3@oGIN&I<;CyBN-meYIG|>}{N6{29p{$oRxdEz|M5pv_P%?w
z)^G32dVlWc9>bcyj}152I^I@FlBu0~`bNC*x9dHBV~<Vw>9Jk4C-HH(Wb>nMp==WM
zZ1+>o>^$;`yFYb8n&gs5wxglX@0C6cJ*N1vFD^C2bMi}W$x}`WNw&G)Crr4rI#$tn
z>x6|-Cj$IEvM-1#9<~x`a#Y&aF;Rz!>7UE(Y?Vib{zp7?la`1XUJ@>Jy&x*M*h)lE
z|7(qGawNNn%y(|CJOSI6v5)r}Ub8xuC7T>8TmNph_wPBTVW%apFO<1`{mW6GBtwBB
z?cDasGh*k>@Qga6qMJ5py2iE_{+G1W%2znC`Tn*liexvbak(9I$?$npxcj<m6IYi$
z*=04OBJ23Y_`NgKg^SaQezR?x{m$%}Qc}(B<T)!P)3c7vj59O2vE9h{vGkoj>z_*l
z3SDCM)z7<8e=8#B=B>8*Tz!3?4}8DE@2xv^t&VOy+XdnGYbtndUAv!t=J1mI^Zqfl
zo44$XoVRb|x6+NXMT7lP!sls!xXiU)qP^MX)Mg2G?>A4Zf6TdVYjfT{$6a#Aaqd5l
z|FQ3Qck-si&W5T(|3p8YJ)bjWafIq6`#(!;W3B{f`>Xz&dHl`Hde?7>w{5=}$Y=Ak
z{663|Eh$~-Bme!!a_e|x_FR^m(>>F)Leb{^nK1vmQvV;UeRq)QjPyhK{TFTLJ@>u*
zVE&$awvkH4N<WsbyKAv=Yg^YH&L9S@ATi&0D{}s2)qM;*cT_m?KU;2o@VE7Q&i%Fs
zORwLlH}B~^+mqASuE!caz4qW{{gwTEJC&9s2c6Ygu;52svQWFk=icRuqE@fCrnPEo
zSJv7^QQKFnoBgXgF?`B@gH5wa9WQU*a#khwdd&M;tJS4zuk8xUj$OTV-PNe;uRM1B
zNpEqx#_HRiW1PnNa@Pm8_lu*}t`2;iC9>+~n(kQZh9_adALOSos`g&$mpXY^LhA9m
z`uyP2&EfZznZ0H`%5pe4t0KX{(>sP&Bl5YcWvKSiz;m1R%RXJZY8KRcPoQ6MUHYXm
z)uZ3%$JLm>_>p&^_X^wH;M*4x&!1eJyL$WCE36+Se#k9;>-lKUi~F(XxJ{n3&ic$W
zUAX`K<u_+9+iqcMU$)xW+j>G!2K(vTA{uLtK7SHgzx8SA+HcYmyB{0A_|>+J-y`~&
ze{8OJHW*dkTJ`GGs)xmkZv`edifUeeGTkJ}<X~#d7YFO#j>*6HmZf}Lp?~?x^vqYM
zOTuEFrMjk{;m&dYrj^F_I(3Vz|C#&MXTmd|tv2}_I_u}Ej5A+u>|C+t<~oZvIenie
zs|)V;iRPVH|Nn*C^qS3T_t%^>&;E4w;)$6zEzAqnI9mNtOkOA7^YU8EBWaV5yt96=
z`PMXtvt&Ok`NDEet1D_r<vz{4`^Am>8@J6}@-WE%ux}I??P`9%t9ysw4$E`z*9Mg@
ziV?l@?Cv=wg$L$a-l_}M=9jtNSqDb%N|$^v-o3V_etWiJv=YZdp~iQthIbA=W%S~^
zU{=9l`@JIT-32gu@!{kt{qNi4i_O#RE!6CCd>B90Jo|WOZRNXbHs#f(d&T_R^<Om$
zE{PLuEww++KgT;WTj}1@?K}2-&%XED^!?w9kJ792`3t`|6w2mq7dpFI?yU2yXNta`
z0}QJ8D=*f2|8$7Cb|)y(s=l!BqRe;42Nx@NTJGCro#A%5RW#fC*9x`Tko&gsU-SAW
zzYRXHIB$AQmu%smj5~jso^X`ib*$g&7;g8k;>zx=W!&@5Zfo6g)ZU=c{$<6Pz1#hA
z4lt*mW_oNRcmG}8Q^o6ljLtbfo_<=8$yQO}=ds5pcYN<{m##k(T$FK<C4}wy^+#g<
zKP2AeADP=e`$zFNwZ41bjufZe5UDt7*SLV$@ZHC^$5L#Qc-TL$i3vY&@K4yCo69!q
zJd&*Wb~O3K9HUodHJ*|t3Ekf>t~|G()~fkit5L>$2<s)!t>wmG&O;FE#p7?1U$&P?
zZrNYUR=cR)_=Ur7o?jv97p7Y^@8e3lu>Gx(hVtRl3ljUKi_bmIW2;?k{6fBtZRzjW
z<7xc&CYqaF-+py!V2NAG2mgdA-q$ageF{i6tF$y#a(;THgJ){6vXNDmnvK=NL%(is
zTgh<NdyA;>)%`ZB3}<EaER&inn4xtnrR3A(rQ*J~`L~>&6<j~zvE{M_|E6s#b&219
zb*cRNm&dbzeY}|T>at|Ik-M0WyG`bqxktWDJZ=`b+4ow`<mQQUWh^(b#@H2G&Qe&r
z;BBZ<+#lojtetA-t{&NWanZ^0&yq5Z1vv}fDtvtNsUj_7p5&}_H-jc)CHD(|cl9ZA
zTnf*aZ7@aYckz2`2j7}0YV~$nQ7k_X{<7#(u-Ikq+Ua5Qz0&4*=Df!y=L-*V$cgJV
zwVpjI@wzgpt#&`_G1V<|{nsphUl8ekWsQ2)HDTi`zt`TBeD`~8$XU~m^TKZ4Njjb7
z=*AP1Zj*b4`H1-|zv=58K8x<Cnf&^6m}8D3+kOKtpLOeVIpkhgR;EVh#<Hf?&-%-C
z)AmkzQSsATQ4`wE^UR3wOO#q}(5zmRqa-hXdq>^fBU2gIrzL%ky1)7Xzw@)MU7~*$
zzx0%}PF-~+<l=VYo#)oC*`EL7+=&jwciEZMlONrGb@V@v?0@4sKW5Jnn-{z8cIj5h
z8Jx!Dq0YIAv4XFgxszfabw2MonY(Vyy4=kAwK?n7L|nPEgU|l>(O*tRbKiSDuU6V!
zCK$Os_~o{Z7oQZJ&l2>%<M*J>|8C|%<(C)tsIS<c$G@!M`t$1#nYnf?_}^Z{=;VH=
zZ@>0c)-ca&isgpiT!W(8=QB6GQ8QzB^`hqf^DC7;EA0c63}^VwJUxN^nb+|dJvZu0
zmRocD+-X+-{b#;wUTN&xQ=c?17xz744vw0wtzDd*E>rtNWX=iQ{LIt3`FXh~G<%EY
z)=yYxtgahjWVF8I$(K2q?$3QpH-1k3>vMmd_pW2Y&ceyUk+BM!<9ohUJ@D8c@joJd
zN~fdRJd16|3vIhLz1TJ@x9W>U<GIOo_e__0%il6wrp;q;w|-O7N0)xN9V%{li^Sva
zFV%Sc!e`a0hNHp^X}c7qFE5_%&J=JyVvPp3_;;z)u1!Up7pmtRRIS~_QC{O;C1T|=
z@ylybft&Wub5GB5c;5E)&~-t>|1S;{s@;=*;i$5`ykGC#M`w*C_x4RX_-#%3RRK%w
ziIyb^IW_)aR$ID7EqL7PAMhWy32aYgk#O(0%zEyGW8A6$;Yq^Q8`WRS-xq#qw_Dp_
z@$QO=MIAXl;{K9%-pqXU=0<{qYh<0q<EkSM0$$Erxo*C}<!-J!oyN9~1?rUtOF6w}
z-Em#W$G@m)N${=}2a0Rfs(*9&_LPmEA@SDqqujZnkqyNg>%YEhl`Kgvcv1iVe{Qc~
z+bSR3P)U}AT^8p>f&<^lN>8=Uy0$6s>eZb){lvNE`PsPjM%6UUDcE)CVC3C}O!@zB
ztvqp3*L-KL?%AC#lcQtf=0#gyE;8G)c6QL+3)8HP)2q&%xpS-S)2?k@UT$5JcW;{Z
z?(9Kjwe8C`?laoHa%u0Z$#+7pFg;(lDx%(2_xXuAD^ISxy!Um^gNqxau3n0`T2&TV
zochkvxajolSs&LOWu8^MLF`ObdE3KjbEI7KE0|Ac9v93ys;#y9h0fNvvPW9CdZnE=
zuFqX^m#14JdtDmK+uiLOojhw<-<EIuz2)-Nw)kr;fAi+3N9<OyvzS(qe0$rGXGbK@
z-B@$v+1~ojHMyO4HVf|-n!PXQwC|pYGhErtRQO8OQvYsMoA|otd{LkDgE=!zvvZTC
zlx~`HGP2}R?-9-F?^ZXz9Wac{7T)}anVDnyiA4wQ-G3-E+cohD-wMAszfNB3Zc>nm
ze=K+Y?Sn_bl1n5u%?aM5msP)D?u!4PnUAOEa&oTZ<IXI9aKHYR_t}C+_w#oc7-j`O
z>NOY6?M%9LO>LX1+>*5xhQH3TPd~fLv*%XO<Qt)X6MP@3o?4!j)7f44gxhk@>bAbO
zz6@K>-oG`EFKz?p4VSGAn#Yf)T(xjdQ~j2=a^at?%lCgUd!FG{@y9*jpZ!O+r-#LU
z<)8ISf5(uXB=&!Q?(OEzz<P1Z$?W06Rav)hp8LYsdG_2EonP^98nVtESQ&X+&gJ5!
z#@t28+yCC0X>mZ(-8FAYsKduQsh;cxk1zYZb2wf3dVTG#b|HWDO=jK|w^!9CB?mYk
zH4u2mmryMDF3Rd{&$&l0UVL_c{Kxf3ws1z!wdqS#KC&*6Id|d%tNShPJuHtJ>O*UE
z&h(#OCZ#SfdPI1k&o1r%|Lycn1$n-@@F7+9|KI;2j=myl?{zk=<dK;us$+XD;!VVp
zw9q!TBgXLse$pFyZ|x1_e{|{9ku_)SZz{P?;Ll0(ep+t)ck<+`_g?Nzx~+alC%i{S
za>9+%R}-ABiLIZoxawBR4KbT9N)<bwJvbp<-}&n7pYzwtL|)D1zO~8BN8--?CM(Cz
zZDL0))n6-BJl=fmS3~Zn=}VrxiYQM|?EbeeLt0=}XMDrw_K2|3(nnMNpZ$Ndb1(m{
zO6^h?AIIHYQ7^(m3IcQMceTwr=Qn9zRd=?^*450`)hlo8_|Ly)S=*tLvPaSyOw6|(
zc%x!J@8z6&fz{KNJ$KB1zUcpCgIn6(8<Q_r=R9)WF0yoUNx#M6vIW=v%9lTu`jdCZ
z{l&4;{$455Q=NtXbIpI{GyhSp<^0b4SNZuJm-9V6@|UN66Bqc^&Uf6dnceW$W$VI?
zlO6YpU0&_YW;K7dk>0{}y(h(V#LR!IiJCFr*deYqP5pQ95rg`TyKck^9y;<XA-+Ut
zS@+RZvCVTtB6PfWt~{+OIsMneB-7QKlP_+Fkb9M&mBYmw;k7dQNWsP}fgw8AB)ewu
zMX+mViE)2*IhrIocSVFwk+5jDYr4;oFGrOOl9iT8UQ6ukI;y4Ntdz8o!885mvuVX^
zn2gLt!%pq&KFlSxICyDzJxBXi!@iD&!;8eOyB<ia>`YdEu))MdByP=%4R%a?+`3QP
z4m@=|V(NM%@oST(U_nHkg4eG^$%Z`~7CzViKjyITSspLS*xvcJTj_y;^4~KY7H4$i
zS<7qGEw=Y1O!~f5@OF|<sGWhR+0k0&;@t0@0rL%dOC4K&B;0x#x^joJMZM3FJvL5z
z3{yYt@VjMX?sLYgCalH4u=K;4j<>we9@+{hp4olQe3@O+j2RwgUN>h*3$|CrT6b;l
zKKx{L;3uicbIU@+?^q;HyR<E2he%~Jr_17uBPR0$3sMCOXIL3~%`ps56_I(?))Nw6
zC&SymlYj98gOdqUzHx45cJrM6R<N*sMxj2}Iy<FzOFJxlEX7&NGhJks6?9Lkn^C6A
z_3ll_j=6$`Gp6Zqty59rGj4G8oL=vCB++cG##52WVXg-gvsP&AnXyUJtH$tj(3B77
zIy(->xT*>k%m~)-sxfRnzliTp@$C?wjm5F6ey5jTerMOTGX7lO0>RIlU3QiyTTR`>
zQEzdk@>2kd%rjL>V<x`M?IG?562tmM1q)_WDhI`ObsXjq54^;GIjCgHaXr4z?k*3H
zw(#q_A4m*p)%azg>NLg9R?Wh~i0Pffkq-t-9Yktpa4UFKNSye;n!|!;)_zqcKIVJY
zm!4nq<q7?-BC6+F&)&R$@exVqt&6A3{H@ehu27#;Au*-KtHmOD%ZEpPkKQC1HkGGp
z<#eTs@GQ1fPKrvZ$ev=6sFPL5B6Dnl+rh*q&jSSuBz8+Ky?f-sDUBUp1q<uDIu0K=
zsA0kLrhAf}MBjE>r<(^i>?l{dciNy$>(pjxH_Os*XC5XQe$vnqTioc^{o_yDM3cZ*
zN^bj?=sZ@emvLM4#Qi|x4UZ|m+1M&w4kp^TO{qxu;WFh{yCUCmw*#gwM-posru=5y
z_ugKQiSPbncTRr!E9D~dqSHR`)|A>rRkxqtXnnZq`$2W3d+hT&#NJO=YWtph<im&B
z>?t2U)Micju+4?%{nU<!51G$typ^!qbH?MUU2DM)hr$Z>ho<%6+qPWYDis%Tw4z&m
zR@=5;JIhp^H?QI`E?D#E{Ef<YA(x-%pZ7}tEPY!l%2&8P=th&b_)cNpuxp{$Zgc<m
z?C|^O!ouV4AGh#a+4f}5z2yf(%v~ZmOh0@)oBH|Isjkd>_ez2f7VrEh>XK<1#X7I=
zrNAM1bM~YS2e?yKNpq;RtgfFR`624eN$##LscUBI)@_+A6+U%pxSDVF*(#2W&bMQi
z_VCsCa$5bn5}}km%kcB8j4ju1To9kK_1Ze#wsXyFJoR7nEe(C&l&A!R=9)Skuz#{B
zIVv~rSfxGV?(^@qtEyaI`+s9X;&*PbZ*ylHJ5+CeEaJxZN_)oN+V05@?cW-R)t9lq
zS5KH+*xR~a>0HE(se9%(=$^a~@nflEPiyR<-<&sQt&`&3zfC(iG5m8K(>MLQCSw1r
z?@Dn0mV2+B@PGO4V~6T@TPG*}Kl7XO#&;uAv46j3_O#wT{hRYft*uj~<G<s!D*7kh
zy;rPs{PuR96nDM9|FJ{=TE7c#_<z$o`QiRs_1zmc{6G4e^Tz#e*CKxGe|<LM#&eMS
zD&%`x|DU$&X|0{~U3kOyFIOXeeE*iJ^XBiK`3-xQ$8&i9+xwTr``f>|Ce`0T^}Vh8
zciSf?#y|Ya@}^OzxAlLfSaPEM<G(C9+Z(00?F}bv+%R*`{D!x-9?1{COCE{1QMYG)
zLu^gQu|xIoMI6bA{?GriytySH_U~p>Ypj06jo;1@KlnMszBwK|G|wO+`Qdzv85=iL
zg7k<VIux%TaYLR{tSp*?`@iGCLv}h5Hwv9i#QyzI>}j2Q;y33FRYjdYmsz-Xhiup&
z-n!v~zL?INrA@81CM~W1XCx%nYew9#Rn+-o&n@;%_F(-XGuc%eKU|kN6>&rCp8tV7
z{=|p&N)b1Xvv60R3FvLDe-m)*klgv-oHuk8b^fevYW=%2A<>>I@!@-6oj3PcxUF+$
z96Ka$*Ryeha)mwPZjF}K`c(;u-mKi!fgIfblMWt=(~7vUou7Ma?UVPGKDX>P)q~0T
zy;mZB%<oUpsedzl&-{j?`Oh77{@lpenLnwwf7)-gn@s{@bqf;`{e^ViG~bls{=YEi
z*rB}Ve_3*#MfA4jtLG@{<mlh?Kj0_3eB+1Zy~#Rnc<%Whh?6~ZXusQr4YOIfe_#3$
zFx%_jyN{QaO{z`Zvt?z<{8<Y&eyBHX+_>TVhdQRRJ4*uQs@MNfsbBdyMcr?bm48_z
z2ls!UgNOdjPDotOm-sMVIpW6Irq;XihYtOB*|1?gm)N)X$);le4xa33{X6fw@CMfQ
z_EXG1Tid-W6{;^i43axxCwl16|EURy^96O@C<dE|{d=I<(`q~AyYPlwMV&uen_6Sl
zBX0cXOMJLrE#ihfm)N(xGQF+!|LgdY6Tg3|WBRuFPC%{l|IaZi^HcVpnfj|OeSYS`
zUv70dv#ywL`j{DX|HQYM>o$J)?U$~TQ-9C@fSj3g^27ca2P19-?wQ}PmM`()bq=vI
zkp29L5C6w)*r3lLR(8gxw{^bl<c%91SJ*RFJ92RUcRF||P9@^T{+10N?hER?sjqHo
zom<*+?2!FKj$?<;J^Rb@1{BfJtlZVR6B7SR9y;_tY{Le2R&ML(9=)ye>s68yxhw4%
zt6e#`|9c%g6sH?;<GNGCkM-PQ-*^um;<NWkekflilAP%Nsg7xzR!eKVZp4kKgNN)y
z4jrnG*s!6WLu}jii&EVCzhCTWeS7*hXZ?+<iaLL+4jwY&5c@VK*+lGLe_x``8#YjM
zmaRE<X#byxV~65S{^q=~ziq<@dm)`S$D3N`R>i!qbNRRB@e@0jvSWos@=DdE9Nhn<
z4j#%A(|PkxK<uA-Q|sT54I9*D)^GgaZ!-^)dFI-CCqLAmaWvwFD<~K1wzSsou1`qZ
z&Lvj%>P>*v1pC}=OPFs;ZdR2&aSxP~+&66a&MEdSUs31J-=<bug@_xEY<gSm?fW-w
z0ENNt^#Wr591k9<(~r1u`B{d}pUck;#J+(N;yaGShySBCY_MkK?k=?txvTPjL(R(B
zDelj_@2W(L9y+vMOebe;LZUoZ;=_7-oroLmEZo0A0qTA5P@QhXjXzAit?>Z|B5v#i
zIn$`6wSH<s;(9@yH<GPV-1U))$%)fJW#Kjfv43xyTJLH_+_<Z#^Jh9M_wV^lTg%oR
zJJf$ZRVPOrls~u=ANq^yyzx1BXj|)s57)WG%H}2{zUN7NcwaT*#%@;b>iTP*Qrz~H
zLdl7zE9@D6pBE7Ox4o&=RwLp@<Y%YvzMuSOsDJm}wE6kT+R1O0DD}45@9fyPA-KYx
z@wULBL-`^)Z=?<$`e)VB`d|9sAv^7eY=6F|(my{=R=t0s%rf#*Z;mGi_x_L#8@yS#
zt3l;e*}+43qB?KV6?OicXXXCAG@(Ax+y7$3k8b}&oi~|#<~P(Tw6yN`-LQe5Q|wy;
z2ls#LgNObpMBJ!6D#g8j#f*&`mVc;Y`u0me>>qDa>)(|LiSeMKNKEIAc2lcu&AwxY
z<{Qo5xB(n)S}m>hTN4u3i|V{-6cGEjys7oC&xQ@$;u$)BT)8E<qd}ERyK{ZSkK3%=
zzgHwA^0#gHuwPi`4S!SX-E9HM5AAnM*tmfo6ws?C1z1g}FYR2yd^6iyMfSu$-Imt<
z@f$X<vvBWT6q5XK`cxyaZF9a0Z&=^H;lqE8h#Tgt+}4$y#}3)oa3&`fg91z9(4l-G
zot(`HiSZnX58n&vyzy>oeOox|SpA{*l~T!x)t~E_$_hES>pK$?K@kQjF>bSR?+)Ft
z;eFeN5BG(2-mo{d&Mm8YanI@Bm&;G@Ih8$oS(L9>oyfsmKRF>0RL0l0Z}<=|tn)^m
zHT&(QfZ1MkH7mEQOxdk7)okjUH3DM)IGbAM>PFnyB_LL}Hz84)mAkr}gS-B}+`&Wl
z)FW=(J8ddfH~(o*>)YeMId5!Ra_mt2>=d0hR`>i5+><<XXutP{4dvWo-}DuA{*<$D
z|DKnSSiPR(rRx6kTo=8!-3Jk%vVT)TVmB-IZoQV){c#&MfU@giMV&v#S-5|DA3U^A
z{LrEL_zfGXS-GwE_#{7+4?7l7e`6x3^x{o?xL!ynXKq5`YmhsfEt3;xgG#JQj_m)5
zGV(fV`9F+vXRLl`KQFIdZZXsM$H!cs$MMcFx72<8I{I{2lGUuVZKm(yN}Z$qd?USk
zPp*u(?_jWP?b({NwLX7^OD2`9+qsF);$G&eY*Wjvyj#Cq_j8#a?8-MctA33}wyv?|
zRMV5I(tNV#2H(4N<Bk(cPS{lQ=uMk`-6~Sb$k|$NVY06%mHXf+>DO=foUjy~s(pLa
z<kWBO*Tk;pW<{UmmgtJV9dPx9WB9t9buq82O1JV(eYfvL;&HbygWjj_)?IM<XWnF1
zv#L4%w*2I^E3N-$bk|F6;$8aowR~MhJ&T_8<n2piZ#_PC>6-H)>+Ssc!R()Q&PXsg
zR@_xsFR{!o%q;)0`;T2oN&OFsk}Bg*KYuIUcmDMWxASGsst?Y!p1ysh+vi8}`#N8~
z`*iN<Tjj-%8-w=fH0=JTa!<{p#+Z3W5vTn884Knl&zACtpZ<LfL*D)=-$iFiwXZd6
zh%T|J&leT7TetqkF$TV`T(>uf?8!a$*KpqJX?K&}7D_YiSZiHz+Td;BbgpyDuKV2+
z(kuvPFX)`RY3YHx0tdd{JsGWaZ?@{X1H3m*-k#m~Ij`=HAV>axzk9Eo9wzQqZ;1Y-
zlOH|z+m5%4ckJtqN3W`|QT$^TJMVFB3WG(^8{=d8x7{|>{}(N|TYSE~AYW*m=7Zgi
z`^65OUCiAtdBtuIztaxxf5&IcuDdAr{ky=s3*5=i%9h){`z`S9WOtI9{bpM|<7I{H
z>-%ONZ2z@yc3pc*0rR`wnZKFY@7%qpcqji|_spKew}rt@JH+ecjW;vzn_c&}C;t1}
zkN-PnJ`Vb@tMu^S?*~uUm!xzUCTIL-dAvRQuJgm%4~b`D3^&zQto&!IW~R5|jnDP;
zv@J{D7$0W7x$gYRj%^eF>h;Wj{VP`T{m(Ks`P<7jo?qFxt^4o0Ywy0-h&65N_$#;O
zd*=1`nQvFmyMH=ri{hK_&*siucV5u5!ftz3t?mB#TbXV4+rR$!M<+Wl{ib|Ez3wZu
z-^`WIEwA&3aJ-fm`o!M;M^W+rg$ed1Px!fi9(Mkhs95iELVo2b*S4Q;+UF_W*SdGI
zuICc}_nR%xzndEO%&#-_+JE!ddHwcJuT9?A9Dl0s_A=1(+k^Kpe;jVR*~uJe|7ob{
z;@0p#X_GDUAA7^Py5k!Ax3_(<arpLU`QH!qhd=(!J@KFU=IU)b+^c4ozj(i&{g3UJ
za_<Ajmu&jZQd1ML&GtdPSAD(chy9E8@8|yUf6@Nk%y!H66r2t}v+zs*&!^hYcua0S
z`G3_{e|dYZ@tsdxHH|I;ADv#>#{LmMy1w)0<Db8T?;o3C@5l4+Y}0(TAGwd>wf|jy
z^j)w%{EYnZ`qtO~)t=XDKHsl;Uv_=}XXd4b(pt~eyY{>OVLC29pReZ9#hT|``}NQL
zD}5y1QNQ_d|Ly}{e|$J6yPW;M?kB@u<yqV6Lgc=m{@Seir&)1dU17Z+e~i7-yZYJO
z^?fG0_TK%{`#X7N!M`NS`q-ZH_m%!FZ>o3r<Gy?If1f+@pSxez|F?cu-_7%X_6~b9
zo_~r(%HCc-l207JGASccaKEzAAH$>r`eHTW59599p3OcZ@Mjm#|Jzj$@=ty^E_S%y
z=&(FL?|*;Ee?LTj-1q$PTE(vR$FziKzaNu#W&9J~_2P@2Z_OWR&*;<>@%N9)yR+|;
z-u>f#{Newh;`K5Lf6Sl$DwnC}`@dK3-ySxL`6st)d|vxO{#NMgnHR6hE3?(Cobz7s
z`Rb$fzL);Xe5_Z0uK)g3fBTWI{3T!C$NycqwR*{F`+FkK%getWS3LaR;ZX7G%jvPD
zKTp1S)<2!CuEf0ljo2TXeNSg~HpO2#J71jPdGyno-Z}dh%(j>B^o_TCzfGRM%igR0
z&)mCz3|S65J{(xi!}@0(XZ;@4KZlnvKiQ^#S?J%7!a4erKJTCQ*<1ME43Rnc6F>jg
zd%4&1Pq<3`c9lPdJqPS3e|Wy6aliV*^VSUiSGU;Lv;H}Fx3tP%uzueU^^SUnAJ0m^
zA3y)-*Qs~^B5Zy<=c?QEVlPkd&LqznJnQn!%f3Iak7Ja3d%(N#+fUb>|EeC=@7--L
z-*Hv{`R6A!+kNVDWX}1Y`ttl&qrLfM`N^F1smtuQH(k}P-TzVOp6JYfKV;|Z_dmx!
z<@5QJU!TJt{JA|d@8+|&4$JiH?{~c4y59CrC1b(gDRTcLgnk^gHQDF(=ljw4>(0-w
zFID^_`)Iz>%l{et_4Rh@E&rYP>*d6L$bb8A{N~~R``Ycl3IAJY`?t{RL;u^C=RY(4
zFL`-j$M@5x=KZTtw5WIVudkWodw$+Oi{u~s-@oh+Y}_AyD0{+(e-|&yPj36%T=ny_
z#=-Nd_hpq?_Ai-kUoP~=>YWm|{nhz#|6=&J?R~%W^XqkS|00y;)UTXwUq6lIU;2~X
z#c?;jh3vYMS9?<EzqjXq&%J*Q7aur3`SZKKhBu=>U+;c@PhaoV+kVl5U(3H;`}ueF
zy?-_q7XQU9_dCCOeg9~^_lG{4+dIB5pI7^*vbo?di{<(6?#X>`7k|~|`RV=p$LG|W
z-@MLk_xPjt;_>;*t)I<L{@j21=kDJ>KKs<){I<H^p6%4N^>+XE2z}W9=5fD!t9?k^
zl{b?<^a<Y2_5b|)*Jo#j`ek$WyPq@v^7Z-Y4S%O!_-g*;>dU=r*Poj|xAyNw#~uG<
zE$v;;)eCaHU-098=RLc>e>U#eQ5R!h|7Mr2{-2JtdsAOe@2>BRxqspO{9>*j+P{A$
z8$Yzaa(=#lJ;T4#fB#qp=G4A^e%_k#e}a9zp8oCnx9dOu-th0Ajg&=wN`3trtv|uP
ze}A?=kpJR+zhHZPWPSac`ETXFTz|QH^M3nlmtIZ&yf$c_{mb{~r5iur-TcQeXxrcO
zpN_wavW@&VBjdJQ%FpC258`J(Js;0nA3e?feoL<Y<}Lg7r~UlAq5i=i{>Xne{vX=;
zCw$WXA@lL>Z}){i{vL_f`sbTh$M@lR<))XW2jqqM|H~cR|9IK-AMM`1_E;R4zy9bq
zf3_E&w%0eDJHP&@z4H%4jzhBcU9Z(oE7v)lJ1_U5Kl1p`PmTX(r2UxAv9I4|evIzF
zs-6GRnM<o|j4sGGx4-^xaY5cVqyG2xruCD4@E+A>tGs_<`n>q#r?uOQ@BXqsG5<Tu
z_4#HV$IDxPG#|;Ad~%*W^>@AEpYv=l|I{lz*>7}0KDhn$cm7Y$yPNL^$2IPFd(`6N
zeqnq6Ki`koe-)6e>-}+CwN66eQ;<S!o!G9r--=QHFE9M?Prc+{^Mrl%a*xhmZTQg6
zQ-AGxzwrIH^**w1&eya4Iazd1_x#gG*S-GDHNG)_^1*BS5B`e?yDcxWCpxaYBVP02
zTd6namnYx8eej=*<hK7tH|7hUz9--Iqd571y;GcJ@5B#WCy!rZefPQWr9izM<86D9
z8vldwO8;gqdT;eHf7<8r&i_m29B&XV*V(0e-}%o^srrZYhDYR$dF$8gVY;n#UA}yU
zy}isieful(<%R2%e=3)MHeJELw&?Hnp#OUIA<ys6eYE@UbN3_r-M;+)7EnKrrRD$0
zg}Z7}c)lM0^7zk;h5u|azy0)%yJ@TRBj}_5lt1~hug?3k|2gaY_b12O&u;?i*D?Lb
zpLpN+!=Ao_TJIuCqU-m!{rs$P>x;6z-~oBNGxE~e^S3_{eRO~Krg@v&et!P*;Lowd
ze|suE<jX!gZ<+90{qP@4&4>RhXV|ZwmAhW$kBsN}cZdJ(JfBl_Qv3AuCx13R+WmFA
zN6q)jML9d{`IXn*S9rcW<-<?!hwQfwuWtWc{ETsb?1#MCs<=PpNA4Tnk)K`9SK|}6
zaM$_xy?mda&))R?`r$u2rQUq*dT{sKnwXkB-w#`F=zX;N@59&pm!H0@`*`=epnrG$
z^at^_XXLy2_w7Gj`TgfJ_K$bJ?Rn2pFBfoo{?zaT?|yIFsciCprt%+4lZJTp=kF(f
z7VrP?Tzm81_k#caxPPdZ<$8Zr@Zayh|Ca6kS-*JB|IKsk1wQ>ZJv3kX`n2a0YyRn2
z*1zzmf2a8SkLjiP(Z}rG_k4No*?8aV()`Dw`wsHI|8dZExlA$3_AT2&LoenT&D>v+
z=(%afijqPj&$z}<e&_ftM0-!Z+I4JdYN_Y%!!?`M<j&R1Uz2}m(>YN~cNyE_w#=rP
zX>ZOyJK44ESN*TAdX5j9nCxq=&y1dAzW>5!hiC78$2^q_&)C^I=aHnleC~g_=KaTg
zw$?Adx&QLp`;y<@`~3dSG1+Ei#lty!9z8j<v)G$kTwVP6SxvnyA-cUMXKiZh+T~T0
z)o=6b#GF^BuB8N5ZrZwRZDQ%UQ>AK=1;?89{B-@9c9Tb^cuG#j>iYFLYMEPk*II<^
zm-5a~kG>U_^zwO#cD=a1U*(P~dR@H=QL_yn?A~g4^HS8s8)7_Ln;5t1o;+n*7WuP8
z@#*b38{!>4TwRh^Rh$|bdy4zh+Xsc_P9-7}y>31HP_$<0zOC!ZmfFTV)q6KB>8%?_
zd_-vLYK83!KfOuWtm8blWcq1=ddH^`E<1PfO3qrdI(MVhY^m8nEna^<8!ovQU1sS!
z=k2a2&1<@g8s1j<oUDqQ;CaM!>((nj772LnGmDI#7}XM&&-e4l53k*9`I~sUKd422
z(b}WQd@4I@Q}-OtTep5PS=gRx`Z@JUrq~mPeYqREJC^j+J)9-dep^3#rd8auXH#y~
zw{b0ux_QIx_gnGYR}Wq(iRo!JMTD-?T>dBide)Ukeu83G{X}i^d%uUMKM#6$ts*;q
zxxRhGj0pj{Z@Cvty%!PdyR)J!vY2_P$keIRrftg7vlUuxwEK;*>lt0gvwL3bj_;Us
z^3|_nZ7T9huRVFP^`ubblGD09E0qeeq>s)%<#VcDg-^d`=DH8X)ylrEw@-y=<|bEI
zxfj$a)NQ-8eT!PSw_w3)y|kwvl&2dda{t+BSmGU+d42Zf<2lVoxeT|vZ&E6)D-4c^
z4h_8-b2Gs2?S{VwI-=`VEY<LBJh{4n+j#5Ly3=>AC3qJF8|MYRl)kXEH<QbH8mCTv
z&Zo&||6bDdtzZ30Y(rA!gB_{)OT;EcFX=k9YST8WyJojoR_kQzt@jL@diB~?({Q#^
z3P;s^SG9__^=(S4I%Sf}q4Bg@VA>*Y&ZpDldV}4+PS&=ckUGseGH<^~$lCe3{3_B{
z*I4>mPYvI7!z}3RRMFfeXP@TG@6hCS30@WL9W89SdTRHd%&b54(YZT!HCLSsY_-x*
zU2U418*^#Gu7C&g9=qMC)5>t_{<QE`;E@;a<TS&Mwk~Qt6{%$y_U+NJpmWaqB^3Ks
za@$9hME`i^b#w9+x8({=D*JXnU3$i8rQifbbDQ6H(|<)ft=uAh>9p6jf~&8WtZRMe
z+%myr)jA%tyg8?2m*olOJ=Lt|yn5=fkVe&&yrW;6)@H3+GspI~O4gpwlP?!9>k=wC
zvdnvRi}%V#=lk21ZK^5VF*_vk{*_&F3d!6{=lCSG8mv*AX?FVZJ#DV6;Mk|8Pi0fs
zuTKa`oEA{y_4k;p*J-VwuZwa%2hG~{<mPRYcNbeTI4^xZxhGI|Yg6T%w{?~Av(@TN
zzW7Nkt!^n2+_>QP=?&{o#y2FrxoZ%-_2s^vzWf^3?z>#RXOrC5a2r&L-TE1_)c9)G
zK~3prX?Y)W4sQON|HX9A?$TX)%G)3P%#`}bwNfZUVd=ju?<LI4&6Z`?{82618#nDb
zL+KRxIB#`-pBEQy+@9XsS{=W2Zs>Mrhvlb(?$wL^NM!DJsrjBA-~9IM?e~j59JE@$
z)#qwmH_JTVGXkt%9fKBWEK$>Z@WtWFe(jzRhT!{?gT8Sv+a_=SeRq<Q_r-6I?&(x^
zUb;DL*Poz_g-f>8o(j3pdbV*%&gSo@9bT^~x?P)aIM*uI_S$Rr)pD0_9ay_JcDadf
z?2`0rCg+9z9H<X|HC5Z?pw+L+wQCphnC{!Qu=o9|d&LDUe@fE#eU@5ga<}K_)Uuh6
zL(;{UtV#H~+F#4$U9$JAP2qEY9hx*nb#>>Hg~`)?Efo2_?$VTeM-5r;od3%oPut4!
zwq^F;URg5+mWO?5`*!Or&%Jozq1Vp~H^RcFheZ{fe8XYB>dIYNr-=FpcaeLW9>2V`
zz{FN%_U}(Uk3(lpn|A9JTS<iVOU~shC+sk0=l&q|e`SdIgKu{Of`fOL$>#R2i~h7q
zgEcnS`{ArFe;X`&drRZ$ZNB{KRG$&^Y@dqfU7oEwCu)3-%L+)&U3D&RnP2q=Q~&$7
zKgMZ1U^^)(xMTj7{paqvXy*D)x>SEL^5DwsjT<+=<q^5{EbQ)vCAn+-!%sFZ?NHzF
zM#A`dZQ=BHC%bQ-OesqB=H7qU;A_YPsngbe2Jim)>VJ~kH2ZJS0rTA{-1qpGXg_+G
zo>EfPygouJ`u1JUocPs;&s7&NehYZ|VnO}0Y46ltMy+f))cNT_Y>?Hbd)d5|j@`Gb
ze$+4Pza4q&d6a(hpLesQ|9P$AICx#{^^b3&FT^VS4=xPb(-*&@$bQk`rqk<9KX65F
zns8rldgacG6F!ACN%geFU%z0q|M<%?oj~@#DL$qAo<Fad-?(~q@-;TmTh$wrKP!E;
z)w}wZ!{5TFI(wG1le@k^bN`}0Ee;-gpVS`zIyWhBMg6V-(JwN`s@LB8EodYEAa&W1
zv-!-IY}R=1eo`vj)W2Zj?%vjKU$@pOhOCN@Tg^WG6W{%P(RDj(1D3AvIQ3*(-t3^4
zTMx@PeqAA;aqeK$+tkf_InB0i-Bxl(VC!!E#ZOM;OUT8yhcceLlQ@6%foe|u)PrFc
zwjPWQ-5qxIx29@nL%nyCzRKl00?}`*ZNKw|&a#_vJ3M3B_p?()U!Gq2U1`Fq+Eem;
zQ7hYb<giVX)A#w=*Z8P%)}9|rBGzZFUXsBUzkK=24L45qL~C8%qjtpC-k0l!$yXz_
zAKO%7PE8K=UAyw<+x0B>xL3UTGPP?#YEd!Y^W`#S_46j0DVBV8u-AC&U9UCU{nDh1
zi_<q<;)~4V-<By=wNf?LaqaZ3x7O~unO2hz9@}!^)#Otd$+MQ3TkKW&`o6U&_~WO=
zcVjo5`gdxQ&$RX0kHe!&et%#6Zp$3WxA#nU<cI!^kNPn0#=k{rTGy{`Ym+;`e13Z7
z>rKDA^nS!`@3Q*q`E%xxGXDz-2?{$V%GJBx`u?#_X!^_9B?_NsU)o!-U37|dYuxO%
z>D()&S*mj8<j<E14xeQ9v$w6t>cX^}+xr{MSHG=`I$F4ou{w8y_5U69p;>`{{I2Kv
zT>esHo!S3(?$v*fZs~RYmk;n}=Qx<V@cg$$3=H|~Obh|uj7%a7A`Bc191OY@A+`(*
z3=B-uodlSTm~|^crk4va+cRg)44%GIfLV_@b!PDNR|3q&%t{p@(-j1n9l(raL1srV
zV>yiRT9DZZEMg$UY!7A>2|?9t6JoYwzFHD8{ksse3A1`d$aFnn=0IkRije6|!p#0)
zkt@Q?-e8832(u4Zs!)X42`sWrggFSz;1*?e1T*|anM=Wp<D$%-V8y~>%qd`zDluj^
zu*hLCW+yO%L!3DhER`b89KfMo5n?O3VAcKUcB;%`(=UlLTZ0t|NHC{>8RZhpo?z97
zC74~nB3zQpUSN@MNvMP7NHY5gUM&f+)s6nJXdV*-Lo6!;gV*%mlFTyG<BAz&Ca(+N
znOtrsF#VxCvoKieTS;bVrj)7Exulpi6+lk7D6_QS5EBDK7%KyV3@H5J_~Z1+->1k;
zpQ*yk1J>Fg#VpPAch>Z|Qp{>#tvzdHDtiPO7`U7n806sEK#ZUBrVCzUl$!omidjfO
zqawsM`e)yc6eb3SG!_O1X^;vyzPMrf#R^8T$#2)PPxp~#<^lUOTAEp!xo$JV^a)DL
z5|ig{fJlKYW%h~^*~iSlu$h&CK>=<Gh{3dNy1fXq%=8D+%tBzLt8CqzOPClK+*ueH
zR6#1>m~Yqg1zd~@)48>og~9Hd-FJG)WdQ~T4hM8oukM-tQJ7hJdV>s9>2|Ag_l_|$
zFwDaUuy1E4PizyPeoBT}80?D&GR)FUY?r3r|HLRYU0fC_sw>MZ&2;ABbT3(E6>zu~
z$}&qce|^F*T|tvsX8LMbW+AZd10Z$cFQ?y?WmW^badO<D4YQdT7#vv{7$o3c0Wn10
zPL_HlHQiPY8hk!-%+gF>--G-pHoabsSx5ntMg)?#Tt33Y!0-l?MnKx&_!Z-HM`dQI
z$@2rGL8-;qST8vzvA7sHcY>12lP4MrKQk~e_%JdsXu>sv7;3B_14O4ElVer_`{}hD
zvov!78{<@KMycsD1etlj5i(oGSlEo2f#D7t1A_}l9~|rPf(($F{$7z;b-KefM)v8y
z)R=j|-ZpGn#8-+n7Ox3RKPb;^3|5t39B|NGkbz+<Mg-0i1{p0qU0;D&SP|rnO;35=
zMlv%n%w$1Nw#KTA)Bnja%1_tTf~NV23e3{XH#8WhKlsEbIsJqJG#A|i3A<S^P8T#{
zl$pLloS8=vl*$XQ?%Vc(iGkq&D+7Zp+;1R8sWszt2UA8luv)N#E0d4TnrOwq(AUm@
z7MmOFKn@m}-e<wcHhrZcH0&mN-Z$i9WnkduLJzz4N|1VR*ja!BUrUKunwh<xak_yt
zv*`3#C1`fYjGHUV#=*ewpBLSA_U+UAm6)}`n)fO(OEXRAhZ`w9onIN6iP_xzW~||3
zVDPj?&m?oEfz<1PgV)Bnc8&=v1A`tndMcT=lyQ3Ed`7M5yOg29ds3NMnptr*BzUK(
zFbji|i8_Na!*eDEhWV@v3{s%bgX8R7(~VV_HNg2JPK8;TdDdRW=@T`W#imbEVHO6*
zf&c$K-)Av1FqpHV$FA@Ja2$wDzoWt|3bttbZP}<EP6mek0t^h|a7#dppNFRlsxqsB
zL&Q>*S(@q8S&$E<r>{TGD5Qg)F&wQ+8BQ`WFff3;4bl$BQ!awEfpQlA^c$+s)bkEx
z;La=4xz(7}!R}z6c%fB;nSr4YBVVk&0oD)67ZcT>Dfroq4PP>u85nl5F)*0G?E*2}
z?|_3?W%`;+j9iF}1P(Axb!KTMp$F5|)R~pR9`gYStbRN_Q=M5IoF;XiNZErT*dHT;
zuRa60LwfpYb!aK}5Ty6~*XjS%nN`8zZg4D8{U09#!zpV926>QE;8^r0IDQqT&j4j<
zP!4?a&h51z2Lr=<Ui8`^fn)jv4Q5TSd-rHCOEc{fn0`|OTHjQQH?@G$#a31Z1|_)h
zAjU4?>GGP)24IJL{r<Q8Iy(cybpZwjJ&+_Ee-vYyZYajAF@1(6G$z(*GD|b7$TLlU
zFTo^<5v}hpnQY$9%)l@OBOQh+P8ZaIrb8PoW@+XSRi^11)tRNHmuNu)s7s4knrVi~
z^yOO2>fq462ol(6KK-2*vjNzDirS#~u%2$G4b6Hv+RW0-s`gCNKUko-22{AjKRC$t
zgPDOrn+-j&iaJd{ug$Eg3sTj0c~k#p4hDu>f(#5IaG!%1L2gV8RmS?o$%#3M`ccNy
z6;+u<!S1lsVU}ig_h$m-O^NCGI?#;dd^1Qqo{53MoCQ4`=f^?A@w5)JFt~yBP={HX
zDJpULKOJTTuz;d2vow=S{&YKCW-YKlwl1?YvwR`b^jBF-QYay<R1sp!pCo+j5Ca3l
zdj<vu0gz+i*s*B(d0l2X1+9t@TjZ9bFkA(Q;aEJKSC3hiFO4CM;i()0LxmVK0|Ns9
DXekcu

diff --git a/src/funcheck/FunCheckPlugin.scala b/src/funcheck/FunCheckPlugin.scala
index 6bed3131a..03031e9b3 100644
--- a/src/funcheck/FunCheckPlugin.scala
+++ b/src/funcheck/FunCheckPlugin.scala
@@ -28,7 +28,8 @@ class FunCheckPlugin(val global: Global) extends Plugin {
     "  -P:funcheck:tolerant           Silently extracts non-pure function bodies as ''unknown''" + "\n" +
     "  -P:funcheck:nobapa             Disable BAPA Z3 extension" + "\n" +
     "  -P:funcheck:quiet              No info and warning messages from the extensions" + "\n" +
-    "  -P:funcheck:XP                 Enable weird transformations and other bug-producing features"
+    "  -P:funcheck:XP                 Enable weird transformations and other bug-producing features" + "\n" +
+    "  -P:funcheck:PLDI               PLDI 2011 settings. Subject to change. Same warning as for XP."
   )
 
   /** Processes the command-line options. */
@@ -46,6 +47,7 @@ class FunCheckPlugin(val global: Global) extends Plugin {
         case "nobapa"     =>                     purescala.Settings.useBAPA = false
         case "newPM"      =>                     { println("''newPM'' is no longer a command-line option, because the new translation is now on by default."); System.exit(0) }
         case "XP"         =>                     purescala.Settings.experimental = true
+        case "PLDI"       =>                     { purescala.Settings.experimental = true; purescala.Settings.useInstantiator = true; purescala.Settings.useBAPA = false; purescala.Settings.zeroInlining = true }
         case s if s.startsWith("unrolling=") =>  purescala.Settings.unrollingLevel = try { s.substring("unrolling=".length, s.length).toInt } catch { case _ => 0 }
         case s if s.startsWith("functions=") =>  purescala.Settings.functionsToAnalyse = Set(splitList(s.substring("functions=".length, s.length)): _*)
         case s if s.startsWith("extensions=") => purescala.Settings.extensionNames = splitList(s.substring("extensions=".length, s.length))
diff --git a/src/purescala/DefaultTactic.scala b/src/purescala/DefaultTactic.scala
index 42950a7c0..da1f6c9f0 100644
--- a/src/purescala/DefaultTactic.scala
+++ b/src/purescala/DefaultTactic.scala
@@ -38,38 +38,42 @@ class DefaultTactic(reporter: Reporter) extends Tactic(reporter) {
           }
 
           import Analysis._
-        
-          if(Settings.experimental) {
-            reporter.info("Raw:")
-            reporter.info(withPrec)
-            reporter.info("Raw, expanded:")
-            reporter.info(expandLets(withPrec))
-          }
-          reporter.info(" - inlining...")
-          val expr0 = inlineNonRecursiveFunctions(program, withPrec)
-          if(Settings.experimental) {
-            reporter.info("Inlined:")
-            reporter.info(expr0)
-            reporter.info("Inlined, expanded:")
-            reporter.info(expandLets(expr0))
-          }
-          reporter.info(" - unrolling...")
-          val expr1 = unrollRecursiveFunctions(program, expr0, Settings.unrollingLevel)
-          if(Settings.experimental) {
-            reporter.info("Unrolled:")
-            reporter.info(expr1)
-            reporter.info("Unrolled, expanded:")
-            reporter.info(expandLets(expr1))
-          }
-          reporter.info(" - inlining contracts...")
-          val expr2 = inlineContracts(expr1)
-          if(Settings.experimental) {
-            reporter.info("Contract'ed:")
-            reporter.info(expr2)
-            reporter.info("Contract'ed, expanded:")
-            reporter.info(expandLets(expr2))
+
+          if(Settings.zeroInlining) {
+            withPrec
+          } else {
+            if(Settings.experimental) {
+              reporter.info("Raw:")
+              reporter.info(withPrec)
+              reporter.info("Raw, expanded:")
+              reporter.info(expandLets(withPrec))
+            }
+            reporter.info(" - inlining...")
+            val expr0 = inlineNonRecursiveFunctions(program, withPrec)
+            if(Settings.experimental) {
+              reporter.info("Inlined:")
+              reporter.info(expr0)
+              reporter.info("Inlined, expanded:")
+              reporter.info(expandLets(expr0))
+            }
+            reporter.info(" - unrolling...")
+            val expr1 = unrollRecursiveFunctions(program, expr0, Settings.unrollingLevel)
+            if(Settings.experimental) {
+              reporter.info("Unrolled:")
+              reporter.info(expr1)
+              reporter.info("Unrolled, expanded:")
+              reporter.info(expandLets(expr1))
+            }
+            reporter.info(" - inlining contracts...")
+            val expr2 = inlineContracts(expr1)
+            if(Settings.experimental) {
+              reporter.info("Contract'ed:")
+              reporter.info(expr2)
+              reporter.info("Contract'ed, expanded:")
+              reporter.info(expandLets(expr2))
+            }
+            expr2
           }
-          expr2
         }
         Seq(new VerificationCondition(theExpr, functionDefinition, VCKind.Postcondition, this))
       }
diff --git a/src/purescala/Settings.scala b/src/purescala/Settings.scala
index 8be325547..a4e330799 100644
--- a/src/purescala/Settings.scala
+++ b/src/purescala/Settings.scala
@@ -12,5 +12,7 @@ object Settings {
   var runDefaultExtensions: Boolean = true
   var noForallAxioms: Boolean = true
   var unrollingLevel: Int = 0
+  var zeroInlining : Boolean = false
   var useBAPA: Boolean = true
+  var useInstantiator: Boolean = false
 }
diff --git a/src/purescala/Z3Solver.scala b/src/purescala/Z3Solver.scala
index 09baa756e..fe4a81b3d 100644
--- a/src/purescala/Z3Solver.scala
+++ b/src/purescala/Z3Solver.scala
@@ -8,11 +8,14 @@ import Trees._
 import TypeTrees._
 
 import z3plugins.bapa.{BAPATheory, BAPATheoryEqc, BAPATheoryBubbles}
+import z3plugins.instantiator.Instantiator
 
 import scala.collection.mutable.{HashMap => MutableHashMap}
 
 class Z3Solver(val reporter: Reporter) extends Solver(reporter) with Z3ModelReconstruction {
   import Settings.useBAPA
+  import Settings.useInstantiator
+
   val description = "Z3 Solver"
   override val shortDescription = "Z3"
 
@@ -31,20 +34,16 @@ class Z3Solver(val reporter: Reporter) extends Solver(reporter) with Z3ModelReco
     )
   toggleWarningMessages(true)
 
-  private var z3: Z3Context = null
+  protected[purescala] var z3: Z3Context = null
+  protected[purescala] var program: Program = null
   private var bapa: BAPATheoryType = null
-  private var program: Program = null
+  private var instantiator: Instantiator = null
   private var neverInitialized = true
 
   private val IntSetType = SetType(Int32Type)
 
   override def setProgram(prog: Program): Unit = {
     program = prog
-    // commented out: Z3 is now restarted for each VC... Could be slow if we
-    // have axioms, but we'll make sure we don't count that in the timing..
-    // The main advantage is that Z3 is not overwhelmed with old axioms (in
-    // BAPA theory)
-    // restartZ3
   }
 
   private def restartZ3: Unit = {
@@ -56,6 +55,8 @@ class Z3Solver(val reporter: Reporter) extends Solver(reporter) with Z3ModelReco
     z3 = new Z3Context(z3cfg)
     // z3.traceToStdout
     if (useBAPA) bapa = new BAPATheoryType(z3)
+    if (useInstantiator) instantiator = new Instantiator(this)
+
     counter = 0
     prepareSorts
     prepareFunctions
@@ -159,16 +160,29 @@ class Z3Solver(val reporter: Reporter) extends Solver(reporter) with Z3ModelReco
     // ...and now everything should be in there...
   }
 
-  private var functionDefToDef: Map[FunDef, Z3FuncDecl] = Map.empty
+  def functionDefToDef(funDef: FunDef) : Z3FuncDecl = {
+    if(useInstantiator) {
+      instantiator.functionDefToDef(funDef)
+    } else {
+      functionMap.getOrElse(funDef, scala.Predef.error("No Z3 definition found for function symbol " + funDef.id.name + ". This is clearly an error (Instantiator is off)."))
+    }
+  }
+  private var functionMap: Map[FunDef, Z3FuncDecl] = Map.empty
 
   def prepareFunctions: Unit = {
     for (funDef <- program.definedFunctions) {
       val sortSeq = funDef.args.map(vd => typeToSort(vd.tpe))
-      functionDefToDef = functionDefToDef + (funDef -> z3.mkFreshFuncDecl(funDef.id.name, sortSeq, typeToSort(funDef.returnType)))
+      val returnSort = typeToSort(funDef.returnType)
+
+      if(useInstantiator) {
+        instantiator.registerFunction(funDef, sortSeq, returnSort)
+      } else {
+        functionMap = functionMap + (funDef -> z3.mkFreshFuncDecl(funDef.id.name, sortSeq, returnSort))
+      }
     }
 
     // Attempts to universally quantify all functions !
-    if (!Settings.noForallAxioms) {
+    if (!Settings.noForallAxioms && !Settings.useInstantiator) {
       for (funDef <- program.definedFunctions) if (funDef.hasImplementation /* && program.isRecursive(funDef) */ && funDef.args.size > 0) {
         // println("Generating forall axioms for " + funDef.id.name)
         funDef.body.get match {
@@ -436,8 +450,7 @@ class Z3Solver(val reporter: Reporter) extends Solver(reporter) with Z3ModelReco
         val tester = adtTesters(ccd)
         tester(rec(e))
       }
-      case f@FunctionInvocation(fd, args) if functionDefToDef.isDefinedAt(fd) => {
-        abstractedFormula = true
+      case f@FunctionInvocation(fd, args) => {
         z3.mkApp(functionDefToDef(fd), args.map(rec(_)): _*)
       }
       case e@EmptySet(_) => if (useBAPA && e.getType == IntSetType) {
diff --git a/src/purescala/z3plugins/instantiator/Instantiator.scala b/src/purescala/z3plugins/instantiator/Instantiator.scala
new file mode 100644
index 000000000..a0081cb9d
--- /dev/null
+++ b/src/purescala/z3plugins/instantiator/Instantiator.scala
@@ -0,0 +1,54 @@
+package purescala.z3plugins.instantiator
+
+import z3.scala._
+
+import purescala.Common._
+import purescala.Trees._
+import purescala.TypeTrees._
+import purescala.Definitions._
+
+import purescala.Z3Solver
+
+class Instantiator(val z3Solver: Z3Solver) extends Z3Theory(z3Solver.z3, "Instantiator") {
+  import z3Solver.{z3,program,typeToSort}
+
+  setCallbacks(
+    reduceApp = true,
+//    finalCheck = true,
+//    push = true,
+//    pop = true,
+    newApp = true,
+    newAssignment = true,
+    newRelevant = true,
+//    newEq = true,
+//    newDiseq = true,
+//    reset = true,
+    restart = true
+  )
+
+  showCallbacks(true)
+
+  private var functionMap : Map[FunDef,Z3FuncDecl] = Map.empty
+
+  protected[purescala] def registerFunction(funDef: FunDef, sorts: Seq[Z3Sort], returnSort: Z3Sort) : Unit = {
+    functionMap = functionMap + (funDef -> mkTheoryFuncDecl(z3.mkStringSymbol(funDef.id.uniqueName), sorts, returnSort)) 
+  }
+
+  def functionDefToDef(funDef: FunDef) : Z3FuncDecl = {
+    functionMap.getOrElse(funDef, scala.Predef.error("No Z3 definition found for function symbol "+ funDef.id.name + " in Instantiator."))
+  }
+
+  override def newAssignment(ast: Z3AST, polarity: Boolean) : Unit = {
+
+  }
+
+  override def newApp(ast: Z3AST) : Unit = {
+
+  }
+
+  override def newRelevant(ast: Z3AST) : Unit = {
+
+  }
+
+  override def restart : Unit = { }
+}
diff --git a/testcases/Test.scala b/testcases/Test.scala
index e07f5eb71..b4a5fed82 100644
--- a/testcases/Test.scala
+++ b/testcases/Test.scala
@@ -1,3 +1,4 @@
+import funcheck.Utils._
 
 object Test {
   sealed abstract class List
@@ -22,5 +23,5 @@ object Test {
 
   def sameSorted(list: List) : Boolean = {
     isSorted(list) == isSorted2(list)
-  } ensuring(r=>r)
+  } holds
 }
-- 
GitLab