From 183282dfa98cd7f2cc342989b4a03eb6ab47f866 Mon Sep 17 00:00:00 2001
From: Tony Fischetti You can check which branches are available with the command
For the vast majority of cases, the best way to obtain sake is during the
@@ -361,8 +361,8 @@ There are four pieces of open source software that must be installed to
ensure the proper functioning of sake:
Finally, Graphviz can be installed easily by following the directions
on the Graphviz download page: http://www.graphviz.org/Download..php. Easy-to-install packages are
@@ -437,7 +436,7 @@ 1.4 Differences from GNU Make or other
make
sof
Sake
seeks to rectify these limitations of make
. To wit,
Sake
was also not designed with a particular application in mind, so
+Sake
was also not designed with a particular application in mind, so
the use of sake
is just as applicable to one domain as it is to
another. This cuts down on the number of tools a user must learn to do
certain specialized tasks.
@@ -348,9 +348,9 @@ 2.1 Getting Sake
git branch
. Usually, a branch called dev
is the most recent
-(and potentially buggy) version of the sake source. On occasion, though, the
+(and potentially buggy) version of the sake source. (On occasion, though, the
dev
branch will lag behind master
if dev
wasn’t recently
-been rebased. This option is most suitable to potential contributors to the
+been rebased.) This option is most suitable to potential contributors to the
project.
2.2 Dependencies
-
+
NetworkX
PyYAML
Graphviz
@@ -417,8 +417,7 @@ 2.3 Generic Installation Instructions
python setup.py install
2.4 Installation for Mac OS X
Finally, Mac-specific Graphviz installers are available at the Graphviz site at http://www.graphviz.org/Download_macos.php. The Mountain Lion installer -will work with Mavericks. +will work with Mavericks and Yosemite.
If you are using a version of Python that is not the version that ships with OS X, you should follow the ’Generic Installation Instructions’. @@ -465,7 +464,7 @@
Note: These instructions will assume that Python 2.7 is used. The
-same installation instructions will work with Python 3.3, if the appropriate
+same installation instructions will work with Python 3.*, if the appropriate
version numbers are changed.
These installation instructions also assume the use of Windows 7. The
instructions should be the same, or very similar for other versions of
@@ -1211,11 +1210,6 @@ 3.8 Parallel building
greatly from parallel building. Nevertheless, in many real-world
projects, using parallel mode can save an enormous amount of time.
A drawback of using parallel building is that the output of the commands that
-build the targets will become garbled because there are two or more processes
-printing output to the screen simultaneously. For this reason, when using
-parallel building, you may want to also use sake
in quiet
mode.
-
The last topic to cover is sake’s visualization capabilities. +
The last basic topic to cover is sake’s visualization capabilities.
Since sake already knows which targets are dependent on others (and why), it was a small jump to enlist the help of the powerful graph visualization @@ -1386,7 +1380,7 @@
This may appear as but one target in the Sakefile, but as far as Sake is @@ -1416,14 +1410,23 @@
convert %picfile: dependencies: - - %picfile.png + - "%picfile.png" formula: > picconvert --from png --to jpg %picfile.png %picfile.jpg output: - - %picfile.jpg + - "%picfile.jpg"
When using patterns in your Sakefiles, there are four things to keep in mind +
Important: The percent-sign ("%") is not a valid character in YAML
+unless it is in a string. Because Sakefiles are 100% valid YAML, you need
+to make sure that sake
categorically recognizes attributes/values
+with a percent-sign in them as strings. You can make sure that this
+happens by wrapping them in quotation marks. Quoting the target name, help
+string, or formula is usually unecessary, but it is usually necessary to
+quote the ’dependencies’ item and ’output’ item.
+
When using patterns in your Sakefiles, there are four other things to keep +in mind
#8tzhphu9t3nk%Vq*<`pdP_NjT?#~_v4!0x z(HXG?t_VH;iP@dPcny*t%9R;`AlYoeZ%mBoF32>umkx8nZTApE` z{QBEk-f)$A5&N=Fz5f-#wC@5`ma(xW`f^1WrzoC?U*ChhP} `7$!_e z_2i^2a`oKa4VGU#8h=;FfuTvj2KwQObChScxPEW>O)n>~m54_Q^LnYD|7iYOG@!LS z=*tJOVz4j={Mkb)-J;zC=&c~T{~v^pnK?ZW9T*jqjfpvV0Fn|=if!d^IQrZL2<=S; zNi#v<>c$WXw9BSdzDjiO8HbQkoJTQ3E|Uxssnz&?_8Ws^E3vHS2nBYT<+$x7)d2pQ zP{XhJM~Tugsh&NgCRqKw9R>O8??*PnMS$=zJJGkTtM`jEMuQ!}JAQm&ej3!dUg!V( z)639Vc(v+}CZ-Q~bH1iQ_Yq+Cro8CHs%q8xG{OhV#H avYjCVezBV@OlNR z!&p)wSCX QY|3hk|v=!YR;U zOST@K;z9vpv=hX);4a=l={s#>-aJHd%yxcSwp#Fk=e!kV4{>O x~UU1?mWyVIy7*jhUVkHdumJMcyCDR1#8g(Plo7D8X Q) zDKDn+nhlm*cBU!L!jMHV@YQ7*3x @hm5E(Z!}R3>cuY-4M}OE@?w{ zj0PHbHBs@~M^>>&`zordSsY|@uganb7`?au1)-R1h*qB%;3=Pp3 {RRe)rHYRuE7e4s(bcWvO8s058In@&cd^ z7J(XrKWI5kZJbXH1*rQ%Fng3c7CB7F*(=^5bqW%x<`h46#_$zuwCXRdlDBg4vv=Oj zlWQMfbnqS8sgUwILFfByV4kqwemm8`@mN(&6$vEcDRsLGhd0KZ iBNv>@+q@<<&uw7J-HqW5}&b=fQ*U|WptCC9J; zIf{DrayelV(>|ev#SqK5_yhOAnB%ze8=`BXa#%RgymOfcoEAw!=l@15aRE_a>LC2j zy#u;*a71Rp!b9_v(DWTO1F 3MdD0Y8Cbd)j!M{!gnun8 z6lQ@bDuMc}5VLVHLvnmZoGcOdoVcjUx_wH(U;kqT722|^RbsxQ3=>aF4DY56iEQoy zv ;V4()0J^&qr!jizqXN1h%GV5aRKfT=>M^3;%UoM}6v1nt)Om5? zi&6Zp+9Sw#ox!Cur#tATk 79Td9)fzS|)YE0s63> z&}&P@_z&3h)8K}AznVnGsl}f{F_U7(954Y+j;R^8{31%2t~LbIHf_^OM8@567m 9R2Wob|hCR9L z$!iHg%X)rxWPApIjUnC`YAGW I<1m6USmZa>ygJbcs*qIzSdNCSzZh&YdJxNm`(8DD|6r zxarNu$wQKWb3cQd@eQu_IQsXHkWPgCuHIXLYEV?%8~;AwZ4Y&vtH2hYq|o-cH=OVQ zvGx{>HW^QWnpAg0dL=~He+GTPnC 1ELO>G@q|O{wu? zEFZhP4hV0h|CmgZT4eVQm?26OkGw9TxhXPWpT(xbV$^0NY~Jh2P@nxcYpqNUc{kxQ zPl}M7w2-*a9DdgnQyL2}-2Aabk*k^MmAQO@sxiXtFD+&Vf|`iX(dQgX!}Q ~><} zOOqZX&6|8J8zz8>(ni}hW=;;XPm7s3zF!5N1<=0xd{ thS!`qAxY?r!P9 z0tf^*%7n(3H~OcATUw{{HL+&DdukW{OsqYZk}<>J$l}4bgiO!&8z`rf^(Q154yeGB z&Fu|N@1G37SPz{kkk-6y9==~ZD8!rpW}5_$JjCC3Fh+(5dpe~Z`t<$a*R(c(X3?m2 zdKZ|4tAQ;uZkYCbI6l{tl?c;r7rO?n0}9ugy_s;NC@FP+c#-4J&KBV^1Dcqq(vh>n zCY^8Xd`c)8(JE44lxsMS2Amwe)B?(D9z2K7u6m%=h=>kwSXMc4lV=6Ep34TRDDK6* z`f3X2?cKb9YLU}OenIs(mtp=d4#+{sNcdm!A1`lu6gn^rC@T}kf003sRL#ry&35G9 zyuQJ+^l>}UXyWHdbnt(y&~@!6&NDBeQ~Uib9X3YKRh0Fs@0Ska*po>b*+&h@19JFq z`L}sa+L(ibj*SoX$(M3mz~9Ma@}|JA$x-q;i0lF>Gun51cL5^#MWi3u$xrfAz#hr{ z3UZJRxl?<~0{%^CitfO`Dap}FCV;DW!z$7Pdfn1Tt=N!@&fe<}Wq6!dWXHSpo?(_o zpe8Xpi~8L3;On!9yxBotBbBGPnGme%lzYl!UA_RtG)J-F%OIf1VKm3aD!9P(1vHF# z&XH01b lU7GK {9k&B{4e5Z$YW-r2$M*$SNT7ixI$Zy}aPOg~0!PGO?hy#C~gG*J;| zK3at@5ICi~Meo``3})|o>XMyorW@!h3<@V_&VWL?Ijxg(z_c69rk#(ca4VUgBy+}M zm#h?yOtYS5n|XhI6+m=y6$~>3aRq5lET5P@H>vFNSrpY?cR@+PhL}p16D8oipno&n zQN>oOZ?Y5K&;a&JR|FU{#dQH;pqPEe1!n<~Ff90M1ngmGSYK;sC*S9gQC@{zq7374 z0;*x(K3tTGF(i$uKXvsK&hS*1DOM2=w#XTYn0hpBMmvY86|jaanRch79dI2iu<>3> z()l0rfS^AMaaio}`ecKFMcuScrTFtl?k9{JnTj!a?9tSzzG}!Al*SmtVldy-PgG+H zOM?*_*24aMo7c?ml{46H>&1*C!vW6Nz?z8D`w;dW%A~?BXZWE*Q=h+P;0Q!G>qW9b z(4mD1#+N{M5%Ag%EyEDZ@a~PBuWolJnrDH*1yKU}6l|B?doRi?_|S)mzjt!i{b%ZC3%wkZkP%4H5C~m2edyW9ryLRzs#B$$ zT^upo-g0x&*4u4Mx2+^H_UEfQ+hqHE0o8t3YubX@7qE|>jv;X1^^-8g1xh43Yy3O> zRj90EGqp9EbBXydEhZvX+$s?4-JG>_(HGz6Y959Dt=lJ1+sb3Jlc_xyDOk@ptOp z3|;`}W_8<;k2WbF 2Q>t@HLk~W3M$HUpdm+(M{)n}JUXqXe*kCiW~FhwTS zz>1yyBtSQzESM9M`IY@QQc{<$%nqPA`mM!F?W)6YGRyh#LK4wZ7rxazo|MBc{QX{i z+A{!C|0y=AoHqV9?f1Ak{Jq>wkP3N8Tx)up5J1A=8SlV)OxOB12L|U=3^77){qlNV zd(TLKs+lyL^?SWM;5R-H@AT!GRUe%xrFAgud9F{i8gE)iRZveGZ+p<2tRhRTI)2Vy zJL;PgayS9)g*5SP%}OFWA3V0S{BTBMvX1GVOSLtdg2n2koOT_>{Cj>R-ZO^`o(9 z%+&MkM^a4n;~zrHdf;MlA>Z)xkguu#$2ZQx)C8|_0}0If-xqxoq5%>VFvtJYEEYyk zz>NP>S2*Cp0<$)ac;o&DPF7?_YkCPvf%soEFER=Sn5Bs-MGf?So0HQ2!u~I;QM~ U^tC3!tsQs zttFimN`}Sf<^uA)6N%Y!u0Wy%Azz9+t2!^LC1f0Y-_GSu9R4w?YMHW!Pvt69Ut0|Y z=l{BwhuTAibYUOA#(V7kppE^xuAZKII=Sbxc+PO}fA#0wEc3W_2VjO3V)EO1D53fE zxr(_Rlmgbv?F|1TwSbdLnJ8pm_YwU1zaAcvvLXaAEFn-CRHsibFD9y2I `(bXlC+fk+K0B?!49;IGp4=`8V^AllV^0 zgNFj)aq1%VXPrjwTakO P=dPsOfTi^4TIYS5f*Vcqy=uY( zJodITU5&3E+h8 c@lYo&E@7N)%QfNBAxtEj!Q1=;BkQFaiu7=2=*{ZM|O2v+5V#Ahp&>%SkpM z3Y#LrvyhZ%#O0yqRHX=>lc+a?2ATRfw2JJsxKruYN)V5?`9bVkzcv`0q_u=&|GU37 zngFK C|?2E)79i0p%O@u>?E-n?Y0Q7_< zTG) m;$nY65tsK|dp=*z=977zZ<^;UKN zlHsj#8)*S0r`@wcpP}`$g+{-H {2+bHJNN-rqfH02% zXol*? W7? NMB55ucZDxdn$dCX@d(B;Jnvy zHfIy6Q@)3M1~M{u&9>rz3mofbeG(}9u52V4kk~dK9_ebG;HXGg5KNnUz6dWjq&C~V zjCaAQY{f{Huh&%uk3~CMh6YiAPj8>*Lli@ZY~Az(9V#ih*Du5x52Trff$ETgbIX@v zXyLL`bOdkkI)N9K#{_&Dy5QOjI5fMcP4KoxlA<2j>58++Ff8yaz$A({+>@Y! C_7V-T#@#?SfUijIe6^ACoEbSQqDGn zF}Z1RcQWnHZzX@=44Gbg*?azHD%;%-jK>hVlJ$!U1tOr?jX-IRP})=tm=`_SyUxZ$ za{m>=czAYVgg`rW)+Ny>#MTL9IY|IL{?3_0Ym?1d@uO`&8iM2Yt{L?dFi=Q8sI_@( z#MM5&E86cq4xl E9Qxdkb>E_0oZt{nqqnV9Lz7@piQfm}vVrL~ zU2l3!48`d~k*!!PFNfm;xI)_^Hfb;*%6OXA8h$p>zLkDK#4{`h ~~Dm6YGI;2=p-Bai;IQHX#& b9mLY&nBS1aPT-u#c6*P)HmHjZKU M zUX?EvYe95%dh6JnG&3N2+r|`m^CNo(5;!jcJ%RTpJlx6TrYND?kIn466aC qLwM(qAgjq~W^@0b`-Y5GP`=qtfn5VC3Ou^so6d3c zRhKKM#KslmsMuqcpE%%q_)MDn4PQ&IR1||6kKMQ_@_#tbqm!@2P+oy0-K=OcapdFX zl+SC(Xy0alr29AXuq% AXiJrWwR6c zzp|7^WJ@t4D407BYx2o?{OmX9t{eRQ#H37xlBt+Hv-P(-g3|2Qrrep40V61ySI3)r zn%ksz3fn3F(LH5#HxA4_ywj0d1h($>9P)Rm_BTNeUxFUvJ#K&QsN@_}QPQOAQu_e_0fu6iJ|(5?=N4aQ zvfdV_qNux(vuttG!$9!J!M~Je3oVcWU|L4Igf}Me1pPl8I(k)_fx@km!_>!q1Ev<8 z!QnKSB{5a@px&M-*ttfkD9^do_D&I}?u+|aLpS8{{B|&Z-1u1DZ*N@fyYH5LI@H}u zq4kD4@@_{abvyV0l(fJ^q1VC-o{HOp;MLxz;@!;3YrLG!UrmqSXBUp}s{~(^+T%%_ zZQ{)Zo&e>4E7mgpg8bGkz~`;mwNdl3Dn8K&xrZ$gO1L2HrXEG~f9TZrJ8Tl~hLi1a z=8}CMZbjF_WIg^?qt69j(-6?AzPoEc&dML1^^5cA(RK6!P@~zlobTYVe2?}xQ58z> z+geRL!nKfq&g*JD2@&F}O~Z4p4F~NKEp}=jig#nXb>o?`*&!FRIDt2dtc2w4jA4;w zorU54 ziWl>Nt;tT*I=j+nip&Ku1|UNeQy2HSve I>Pa2k!1 zNZ_qDXAZKTE2L(QL}se-yLY?Y2BSpB7=c$3xjNDUfCriP=<< GcX zquo;;*CO7Cw7@C%IUEa|R)DIOoYbobfAP1Rp0mV9yvz+i(9So>wQ6d65ypLx7lED- z7vHydBlB5i>&8Jct2IT}{k4-tN}aSJ()2vIg|_UoadP23AY7%kfpJOcTwNt51(|_> z5Y4**L(rtbWiP4YOZT^{(5bP-^tL$DqmU)gWI$N?UuUf~z^SBv>6UOv2QXo9*^h^f zR7fh}pyJ2s?qzvi@q&b((D%TG8Iqn_kmg)%Q6F7`Gdbzh;l#@e^%a2}qoO1{{d6<& z(jz4H^TAt)Ev18u S4`3D3NcwfeJbA#QcPVw&;mut@JK=B zt$K!cA0HUFf_f5UCccN;*4A>-?V8ll*eCn;*BihX2V5$BNY9nIrH+u}J(znACMGPg zzCamTx>+cYhONX$K&g%}Z+J}bPY~FvY|n@sE0@o}MF4CXx<6ZZ$1AaaNI$o_3U|N( zY Uh2^eR zRsN>;esu>${>h~Rj(>?Ky+dcv3+vO0L;hQb{yyG&_>%NOTC&741Z^ec7MchUAWFu- zwJ#~ZHa$Ubn~Ju8fNOOWl0;b*l$@R=EqZ!K6WM1W{?C0CFyzXV9t{1-SJxGIx&yD^ zJb2fs0M-sOi6VF*Psu`Fu{;dh;95&O+NfIY9M6W^?*h9PAutVsquAKC^=$~9h%MX4 zr3Nin_q8K8LrF6bwk?>NBUcHS3?`tTamo=Y2%gmd*O=EZb8&dZch83H@bu*DHkjFf zPElTm8)SpD8 |;{-Ld{7{M^_ z#UiJn22YTL4iJ|?4cT^fbexPCAqzmu_!f0HkkW^Y^NTMVMZSf{zCQvWH13LA6M$Z6 zpW{cS0w{yNzqNIDUazu(Zz~HXz+Pa{{oe63_zy`l9l~K15ppVufw{R{1_po^LDPYh zp%`PkTI+V`@?o3$5$A`oi8%cW1Vn6=+!(SAFn?XI#%Xk2fcN3gu={7aNljOGS50m| zvZ}%U>}Nv#7QPS4>%ss+UB0(D(2na#W*v+xdcifw``Z053K;^H#eD=*E7PC-R#}aM zECivnT%Jz%Nq9`LDLT9PbpuBlX_2FkwS(yUfaD1w=uW9wiv)F<$!Gd2D=+8Vpt2oF zKI+n1#(ME3yqCwppIlmb<-etf@t0_JV}H7G#%_jklLu!Rds+d=J=9pvn*S8<82?FN z@qxPSW$zVzGa4U3C5;6Y?8m^mozu7pU4QaQl_dV&cq~$OP)kwK?gCZf;y9XMq+E=u z8G@kA%3`c>mN N7mQw9WLbqol}6{*htBwb2$AlVkL37E&s-`K=yr)liRm=bIjwFy3_A! z*dbI(&cT1G36ad?P|4OTy9Gg?+dV5 ;gx=H!5Z4pmal9AsVC zSzvfYXlhFDM~HIVqjtR>fHD7=tuLQCW70^a>r0l(d1K7f@%EWpy>z2ZJxp7L=&bvy zY^rWQlN}RvNKKf_5(^j^D4Z&(V7 ^-LRyo3D&&+MXHwI6jO%M^4O9xhyN!Zeo*a=P%~-QpO3)5!%g!?(hQYq-8N}2 z+GZIlksvUjJw+sByqz6$r9l>N;}t#)gENZ{uxCbJ_;)O6Bg0)(A%xjF`@}2+I9#uT zx }fvd+p1 M{5HuAaHla&-h!IK5$8RJ}*+`;Vg0}pKYaX}=1}!K hUkWs^sK?}3l;hHpr%Q-Q0jbl-39xz>DG&_4xXPA6YbZ9^?Mu(Wuk0K=S(6C z%!yg>cbdsxaGI~H3V9YE$63T5=$*nY;{O^I*MG@*$%b&$ZHEZJVc-B~rO(fiy{IO_ z^(rsNYtM|J`XE%lcE0;jIJep6pMI75RduMia)n$+lo%ir6;aYL0^I3pN_kP{?s2S; zo71-8#ao$_3k9QqaDNRY15qwV84CwQc2;iFg#=I_xoj+jSS?m5xV60+MW2hqJF!AT zcI*x0VtN9OX;xX0^?88&-qLGPVBzWexcl$CAXG}cr{UMg?VKK Z$haD36AYCO5g z?5`#ZyA}?q2HWBPW9yu{1MQ+99oy;HHafQLj&0lM;7!sU+qP}nHafO#W4^(fo0)yF z|3a TIRf+b*NBIF_wWGzSh#@W$Wi)&V^SAMg+mkliOKu}GjlK>v@+iH+@l zK1^r;t#gO{|L$7dKoF`SDr9ZbZ>5?a)U_U$7&?v6jTxd&mhS<{RvCC&^I^*Mr=Ry( zy9keti9@7Ba?!y9yEmLnlp7E?SoYzD2}5-Tp*|}5Tad|XSsZLH#|B$LlP%!Go00b+ zAs$42GV$`*FXBpnGeY)t7YB^)9j-?jY`vF&&C5Nmr@_xnh0wuwPtSH)WyR$pp4pU{ zyIaO_KJf;FNWMPi@Cfp!{FAF5WWe|NIOJCpd3d*q!GTYeBaa3bf{WmGA&!!>Fwb`4 zRM8TKWvp13$KPMBE-^A74NPctt3h={lq62qp;7-*t>$dG5#2U9*{q)oR99y-f4$fP z^6l5}FSl!xqX`4T?nZE(KX3i`@Lg*%wAGg;^cXuCG+AZ%3;L$He&_@0!6Eexe^x|A zPMSPOVok5H%{-L5R`0gpBgB90K*O%BTv;EG8LTI8{Ha`Cln-M1t8-IX5$=Af>RY=4 z!Y SC(d>bq1r-~*i_mVYQ6L? zJTHo6NQfDvUT>Z++RzxMf`I`^FdSet^s}F}|Ap$W3HuNC5Ry6su9GiEZDiY#>;p`P zwSm1}2L`Lxb-|-upekKpl!0v}p7UB(ET&DX!He{R9y_WUaf~pM$JQyefiO1~U|#`w zzm~6g2PGNA#WS{yR*;skPBimV{}HjiB0F$YeJCDxn@;xYLY?bH5hYy4Zng31>#W$| z26h4(PK{5^z}xIHtUaxTX^%=w?oTM33CgxVUv_ED-TeHt5mIVX${%!4L1ufXJ>GRD zMMi8;NMB4qwiZq)hrYT!`? =xM5XlbTc z2f`Bf3O)kiF+Mh1(ETf2+c!&DEbd{!eX1-0D?KsvVgNV4pE@8T6QwDfTrk3UWbSNU zn>2^Mj#OPp3Gv=RX6loT@Y$?KxN8i1v+k79QnC _#@b}BWjmuj< FSew4bre?|FQj?eU4uQ6l)V>0e7v+Ab)~V1sWM5b zIv|`)AIc2g37wHoq!JxQs_9X*CftNgd#+5!x=*XlIv1623{LH^Vsv~l7zIU0>!ld+ z^-`?bej~lUd9}ihg{!j&pwAUGGhJGF(E_HpG^6+03|logZ|)}=3a`T?!l?rq%~EmF zyCqtk2q-y>5Pyr$X@s7iD?*t*=%Wa@7+U{^O4=slN4iVoSbzKlrGs6r?uPl`V(8xP z+Ny!O{d4U&H|gZhNJ0~tDt2k>FCJJ(MBRfHs`n rt`&@AiS%OUy&h7D74IIglGbP}o3KxeS*Ow8LMqLzsT2xCKB zTZy?9sNt6=bTG)5NFgO?(;U?YaLjZ~sG9aqA}Dks3ecIy+%GDYOf&>dhhG*AhN%7Upn&mz?HZ-7G5tG4W;j3UO z2djY~mP(fm35&tqm%o~@a0NYXaAfiH9o+W$!nOgtbbV#uHQ*rPg7DWIn_?%>Tk ~Qg}9PA z!7>qQctF2~5(TjrR&s~mn|luaiXk>os!2#LmRJZXZcTf%3z4N`&9v+o#Z9W}J^^J& zFOahAmqx3hM(}a#_h0;F?g`c58#N-%v-12hH4_2=wd6 A2>uOanTw!|vifD8IJo|s&S>@inZ6~Qw =9MSJ$CZloTYg1}e*{%vPYtYOOmH<06B zXoYW4zhJDnV1Wmpg<$oOIY29#X2Z z+JaN16!Aui-oW|T<;WqOFddFc&> D^`o8l)4?jBk| 3@6MNRS@@zjuh zv8`(a)6;3(teHiHta8k!_zh4gy`3WzEHwBD`YdJ4PjEyHA7Yi>6N&wLv1$_gxT(&x zal*_P^a;W&49rAq3vj;!jn*J^2^I=jJ&SMSelZu2U{SCl-Tz`mw?rPOWDbk0m5I~! zcgyDP%Z!@@B#%aAH1~?kWu!1~0s>KtQc>uw!{`uDwT(cu%5?J~RAobOHYk#cDEt@x zN`OT{s#eM ?lU@tE}D;GfwzMuyOn%>ANO(UVfP5r%l;#g@3S=P0tGpduep0rqA;zzGf6k-$@T zP=6k?_n8jE_rq(Y#_n*Shl0Q~hM{o|^r^=>^wQIfrKuYWO*j6~1Oct9q-0n&2FWsw z8QMYsyftl1^XZKp!Ym!j-AsRM81d&LjvJv^jj`h0z<)Hx^`d8ytrWsU{;0)^Rtlut zVe=&Z73+pesJ=x4^#jxP6yX(|D+>}q+iCFHANJS^lKcV9oYaufUy%)!dS2)%zj>_h zT>NLokHaAY$KR|oBST(4i*NZV)`OvzxP2`)0bRY%teExVu?Q@BezQ}irT6fnkPD&q z Q28X}R(MgF;# zL(k?^`mF52>zZS3*_b-n`0lcC%seZlIa2Fe>G #=N4J>feNvW;ETTB`_cHDi zdKXECFR0XYBZLpT_ u (O j3## zq-~D+yA;t<4Vnx>QEDPx`0EmTWwn#d_*kiDA>oo!j30zAF6YT)=EH_pi@aq`b+tXZ zy|P|X18qj(pVZ bAW&OvrtDZ` zU@VM`(h+B|Il8^H;q}4BX#vN*)fwaX{?tddq4yP~O|+mIl?7iN!dYd#Yvulx1y5tj zw}ARQapULtmFZg5j}6iMSHJw#ys+Zrr62|Vb;@M*(oM_fFe<1LTztk>F`MXnq>;E? z8kPwd`;*Sm4)pTaOhO+nKx_WGip55?v0&&$cFS+3;zC`&$jv<|n%1)xvTXk2$fX4e zf*-SuNVy|~MRG#GWzX>F@1^YR9nLwyzd>}m)`SOh&_~J(n!K8Dv $!L1LKa@8*(T$zIfo-YiqR`uFEjxh!< z@3*H5U450;5T#GwxI8Ehv+Euw@>E3YxIfAHT=Qc35QldFpScy;k@I&ZicakCHRRtO zUeI#_MBrObb*FtR5|hg-qgOH45)YEnEq71xUvF9i%2J@i8BHt3L>WYpcAt39O)NIN zham%eY|VKy>$M~ff4XA?FW#m sUsAaK7Y4xM_`gP1I3_tWdka@f;-73> z%>T>5l%z3Jv(ACg-P1$r&ASMSyHsyFbk#iYG>f=t6vDu3H;_9lW4u_$x^9JgkwZkI z?4H>!7%ZTQCLXpp5>rTq_46Ykf=|CP39W4!bA4a*qUh33IKcq;9b4G~HnbFVgq#tA zC0KkaGE5rd(zbG8U$gcjLNLGN5C3DeUUi}}5a-vXYn3Ijjdh(|7G~S!26_2mzRj56 zc3}DFZSl-3ubN#>{cEC!Lr}1D4Z*%p`Yz}z|LB;2BMnp8%GtALGZ0-_yaTE$nP-h- zL`7@0+xG03TI 8=i9r PF(CJE%6if4p`~*ALp9RuS@9YK&6nTi}O>pIpRC+X;R#s}= z1V`V(5@e;Y1X7KSV)WxB;@&J8F2RhIc2#$5t%BW1yTH&RXp5ILueLl%MO0Ne {MQAMO>d(8y<`T94LqovqS=1?H$dM0`nJF%^UAY9)9eeg2u~# z9ClQ`_ZHg;QYF-_6T}p`q>$2W`s%0I#fc8Z*E6N!`eRt0dh(Kr?1&h=D=iQAVN!Xt z*P R2Eu>;}m%; w$G7eoAw6_3nR6-5+)i25z{ zV^UM|G1^Hic_j0IXd)Jo!^~ItE<3&J@^cmyRC5L6{PD*bW_~mRH_Xq@`To7weixfg zcfg*2&Tjo~alw2Hn&0AsBuA)qAt4vU B)UOL_4QVZXUm506BcoyVd|<| mX=FjVcy-eyX}6x>Tl*V$%W0waanr})72^Th z%uhay!qElMNttd{Ol5#Zs9hJ9Qfse)^q6%ohVKj;^#|>u?n!K|AyVHjMKVz~u&nkn zjVs^PAX{Q9YLP-*7#_)TU3k0YU9T+P^CM=d$k9mrg&(j5J`0vK+*AUWwhmgL8N})t zs?vs;_v~}e{z_a%0kx>XUvS8>`H@n~V{EDqdj1SU%B&-qth2!LDl|k6FZ8u;pmdmF zHIAHgJHCwO8-giT;kD2Bb6;%J;+hhsHfpniVqg0pGRZs+JZP$)%avA5S&oxtr xS^_86Fa++ApT>M2m_v=ZkeK^HSjf%Zlo})iIUMQ=T^jkzX@9 zRSdkCTDYMUcJheGkc&wTY SQfWcSeCah>6E9ywLUo<#6NClBWWq z#KZ$wpJI0;VDx|nJSsmdq7~!rYAt1CHCHw(Lep0`E6#crZdtq1n|*2~k)PuIXgd%I z0h|0a6x5zsZ+Bwk)~)3b4PBUG1K}4zm_lr&3Q1Ht<;ekAgXLMC#s2w>o?DigL44Q+ zz*19mD*|Bm6fWHiJ0_arZ!(#kR(NzPH7`bS6}f+aYXFt!6I{Wn_%fp=3j%)R{$(5< zQF~wK`0XkhnAJsBp7*@=<31mE&jv39U&)xeR1ZKi0tU?ghmdn~{XYWmllUh$7c(3a z;{VnI7UG{Q99&!}afYB65UkwH|D|HVsDP*zNTtlxWk&o!h>#szT&mWN|Au|Gl^52& zZ!^#)c1Ix)!sEZOdWcVZoj&mSHgI!r!}t`K$Z7hwHYKZ2St>$hYHfk=qou*E*d*WL z04j78mh~qXHjdT_4o=$c*qEB|^l~pScyn+jBuN#U#qdl7MH($ccC3+B8g~y=WMyVC z2(1m__6~v>8XueQ?U )&a58XHCb}0$06|6B4qB`Gyl7ve~_` zotf(0IXaSXFx?k(IJTVrj>80Ypq!gQsKK-RqpO8fdL8;fyvXo&wkJ<^$3V+5iA#D8 zY2D4I?IogxdMkQyO~D%7em^?au|x8J=_i1z7Mg;>JqfM%M45ea$gx%2y$Gg=5Y(X)^Sm9r3t*A9@&F#L7B8^c^@i7m8&DY) zX@K}uz5zqbSO~%Vo8kqTp9) Vcnb4i2P_fobL2n`;=5)N{{+F%#MJb_ z&;ksE07S?G9X@z_R}J952moll(Rx^JZtGhbpi{fzLEii){c8+v^c5tkh5Q=|;Acn9 z6^8&aPfALEn$bZVLj*SH)&6h1Pc;O#cf20LZn9B=+<_M!Z#j_R?VNAE)2`^0vaG76 zk)9(Ui|J2hW_WNa?$mbVcL6$PvkSE6TpcU;N$Ms9a>tDZs5y QQoeg& zzX=Y%IS#%%h@G%(&U+SBfzxk6YcjmprV&A?8qxE;k9H7e_Zl0+_a1q6e}Ji~Hmm9M zds&(rud6x$h^=aS1kz!g(V*MF 9;1bZ`i&!9b=Pw zhuQ5aW9CnA7Eo+|p!Z*<`FH;|%tOdiQrIie4SV}gPuq%qTu2w>>=SZ?#%j)2%}3>z zf6XJH{S9g`w( Uw`@q{`fOf^cxs4eTXwjVH-rX=k%;%Sp8=)F8`$(5gI`i|3CrT7-UrrK6 zHp=}dn#IkRH7uF^O@y347W~@f$C&a?QP(g&WcHITql%fk^$5kl(lE*2P6<5Rk{h%w z+4$k?M_R^6&BKhT1DJ>_9heUcP6nVLTJ}yFb>wI5-)N>yjVCG|E$`$E>Gp!A_OVhv z|G@ZCsAam)PR)M$?!d;Ll^r_J6V{ioL?sFZ^!~)+s(sP-xv(`wT&N$lt+T1)6vq6J z)_aM~ Tcr9~va6v0_9w51Pa6G(s*@7+a$ zL!~7Xq2S7iF%oN>1`kK5{5a6TYPW_mM|5}!l0}Y#-?1d_$I`9S)_ox^U5faf4g1Y~ zQP*v~6K@n}QB=}$7v&g9aR`vhmN9F19M--h8sLJsdQM=mH9`eN>hh`JSG40`juoe+ z(XN$Jp)r1_a1lZKIixMRY!`rTN{o*GvlK%njh8G3mB$0CN(M*yQ2Seh#ug4{-j5g1 z{MYmAL5 ?&XAVab*8NQQahxD7Aub>ouqMk3>uJwcwbI%j1>mF;Y@ zXc9QpdePdEcF`*v$^U@ cIRFbf%LQ;Nom~V0k}{xEe0YM&r%Aj^jyC)40@4UEI@2_BFgDotadr(A zKcP@Am}x7ob@392!^!k+Uata&J6A+1oFz@lm1S6%WkX+8Rs@3P528`28mmA|oNRvf zBU7W9C#slW+>PTHExQciJK9NXzcVdQ)HchU9rXPElz2R;R0PD2d0#}j2?qfIj}T)) z*9CB56)8+T+R;ZxpJFHOU2ODvqakd0$88DPI7Tf;n$M+{6BDZfW8zW7zH3fhMcicC zPc$<3p;*Q2LlzDdha~(vm%F?dW$hMR%7zFY9`+VQ!9Z|Ef9aXmNc?ybZs15EF*k;7 zPq;2$g(T&%4e+OU)Ch*Bq77HMQy4q`e2#SBX9Y<&1ga1(pdV@nW|g+hE70qjKlDfV zL^s#DU!63l^7+FCto$lR6Jt;lOwEnC*RgU=?a{kJ)S%OU4)E@!A+3PqK1i% LyS0<=mF1%{U;H|HvBn>4wqWOv!$yW>1|IbCtWQE#EUn1t=uQl zOeS-qkOVJb#Hcm*)Eo=%&dxrebllnnhh7WCz6O#gNGe%BlOs+fp58Va3HSO!3$b9u zG`9u(T^fqLn`gP&FHLoB$Bb}gl87y zA{jlI&RU%J&nU{;0BgsmBWgdXhLh=H13aE+VdwACz%^X_8v#b7v*iSnMr~0wP(jY= z;IL!LN0(#T#D8LEE3Z~H%W-7{U8_&rR}qyCr$!`Hr48W}kR~?hQDgd*Hx*ss0HRM# ziQ%u372VCW)f)FHnkXy*52%ul@Lyddgvr`6^g=g3l9T)d(IW0RToHuqzJ}JQYo81E zT=~k4NK&xmh4h^LOl5n`R>f-h-VV7Ac^)SYF#aI83c27R7~j 7eVp;(c zS?hsqt%_9B)SD| 3CDA x#nJ?v2=7^i{gLid9w|3hwg@OBv2TO@^8YrHtj?JNGwT0|0To=(0;@{q zFJykAPZMV$E86a k{)_$#6cSfEl;zp9=2U?Zoot@& zrMe)Dc%LWam}u8*d!eZ93>bO+Mo@x6gVc2$AtY$!*iE`DzTgZ!g7wg<0fJ&ooEv8v z=QCpdRR0dhT2(T7Er+fq0E|egc``$OF5W&Dw>^K8%jA|XzZGJ+S7p0oG=7*Op&c6h zA<3GP?$e@i8JCkT@V-k!=Kjn}1TzUJ?3lC4LPT(_!B+tMH7L-vpF3g=c5Fj_?S-+Q za|pJx+|YXbo(7-owRY##fDGCF5NiV2Jj$kfOP^YUly5Sds2OAx1 Dv3T@ZEh2o;?`0I8Yyqdl6aibnjObI# B~?kR?^2p^Lik*NLZp#hT)K==P8y=z_c`x%PL|%kDK+?T zc9R!dW~i9lBhTuOfD|G7FB>m0HvXMwAScG8;a+o1-&2<0;*BUemm=QmELDBcdCL~qQJ z>b$XAhlyLC5X~Zmn}~JYl;M$8ozw+YH%!)AS}V1tcqJ$e0M^f|feCVBBU#1Y6V*rN zfG4pzwS?i$ttk5J&CtPeeSXPF$`51V9%$kWkVHt(-N|yIoc7uu=mdR5)*=bD6B8p| zeY+VCUsiS7 #jIVO-B)d~GX% z+8&t{;7>-toGl7u!sUt8eKJUD3;VU5?~L6x6b6PBt?WSz))iWq&tyU2bgsLuKpB>H zCUoZ?6t}&!T6kE(Gi1MN2KB%fC#6Lx3~zo%laF-!%&sYMUGBf5LO^~?^vd9!dE5+} z1?ffDR4wIvOY>|W_RU~Xg;&Uy!A@-UVB#}6yl*~WcuaOrJacsW^P)g}lNy;K6SA3Q z{KC{VCST#9RcmjwqK#D=HL$jIO9zVvV5O*B-ZA)#r(rVp^-x*bmP6Uwken*&H<&N} zl=+ LHghDRG|u60_k1cekp zTQMG?q57~&B9Ho5rIqR+n?;uy`ODAagXYEiLEQs6M3Q&?9fl@b8uA;PcI?>+0+G4A zE-UuAb-nyT7hHEJIkvQnI?{1kHP7K{j%gl9GdU2%uk(_;&6tUK>7c+KC)lPeU#rNg zv@u{z)m9;77Cv#N18B0Wo!fYLR{4fRP 1X{HrWQc zEDfvzQJZu!wZ~MHV~df{wvLB`FAa4q;3$~b{MRhg?>Z7P3LhnU2w<14D?)=oNkDn+ zlvSP-XK9NK=nOhZ-zu+TbLlRB`g%Ny3^D_c7_awN376N&InV3R7}2p=p%;`CqM0YR zc%2;zp>#B;Jw6TiAbz6`_*;kK=Nv#lSeDpqtCE%vIz_UkFqQCGJJyhtIVFPhOaCB( zJGRGQSNV0DOCbHGehtCUdNA&G`Fj~&XP>St90p8|KH2qRW_*YV?3_@_JhI`iFm5Kj zyV9Vti@)98+o&Sk-R=2r`@`A7*9$G;MOe+{h;4N`m8>jBx|Y?@CHz;k<~YD88~RfW zLTHwV44L4~pX&$m6&{XcNFC;f5F2%mb_S|sa6Lj T4b~$U@Ch`c<%PFeaeF^?AEfZe zZ_vt-&=T*Dzq?hA0J4Q&g5tSQ0?oLk5sdumFz_`8#u}_O|Cx;D?6YQZE-TO8gU&>m zyf2d^JasHf7nu0SGBNZ&xrIH8KWxA-He-$GQ _?gB2%PguZQMU0*v z0cZH~$R6EwX3U&9K-s$Dh^g_qH=uou*5o8+h~;cX_bvjrh{4|8M|DSvWV{HWSnq*Q ziOiRS;7b V30=4jfe(RLn ziak$y{EuZH_9(1A3dlm+b!BLh4GxzszM?N#F?qt;>r^q&FD#=Vs|scOHIa2 Yk+yfIx= zm|(Z2;!nq^3du;*pf(eu(3KEt8Jo=D@$_7NxvSt&xIcp8b6F^?$y>xzz4wsuQU=?N z{h2kELE#UgD~P=uhhco>E|?qAk7KdoH*!ILaj@ex<*syd{t9;Wz1{kfK^cIritF;e z;AJ2movx!--vT#i WL2y~Dnv4ldooZ?!^$yxz6;TWIbiVxsc(1^XcR*hR2r+*N%q3sI^5DR19W~ zA@T}UC~W^Jkkc1Z%Asv_P!>$ZGDm6a-TY-GQIuoH4cVhBnojhOz+0<+xe{h6Un8S1 zhnpttY6ZBKif^SE^@Hn;y~2-3hq;%;p;PdWAGvTipmrHdy9ba3&1W6idxSiL1W9W{ zp-g5Xfeq)1Av*3~7h4H}M81+@M0t}S=dDWrF;Ju!CCmFzo6eixS-BhrQd?W(Bl?OF zF7Kj{Y%`)cZCua(JWPR~tg`Zd0~q7G #ZIu{LZs}UA{+Io>wz4&D z-&4Dht0~$X; %A~O(&t!ZZ)lGhP z>zZylrW2q35wZ00F;4u*2r!4R=nuJ1k1C$y5u(16K!2LBnW50SY5_N^^%igo;iN-t z4kYtNJn@?);j4CfgQ^WF! i)! z89%_In^8In=Fs>~M6KSslSx#d)F{kS8mX9DOv^DNi8**Nez7JuC^cO|r&ClAS& !VjN_AR!Pm3g_@)J!wnbm=T-M_jsH{Q78h417{fu=c?C3&N0bGPSD)q;zAP6q@c z4Zl*Ys#OE{oCGYrHlicZaNIT)CIEHj6DlFD#FgT!iPi!Bj==*vi^as@r2=%pBckxE zdq!DiN<`9UeB{0CjbQbCj^~Mp@5Q5K7+5$8Ht)RJQgQo$>h|NRaA}8$Y*p6ALDL(H zWiZWZQtU<)8J2~HE6^}MLq qPgXY#pu4O-+l$}d9pfJ%JVe*om(=xp8T ziL~zE+Mb9>n*Dd2t06uAACj4$Erp5M1?R ym7Hd}Le66_qU0B_kS=O{fg zTE12?*9GnF1L2l2?1BbQ=rG`Y&C6?BX(dkHvDXLm(h!50jVAz`{c7y^DX43ol(Z2P zJ;J1#-hxZwj;wG)0+2tMjft%lffbd$`&&65GuVZCB-J2-@t!CBD`oGzGs6M)HddyB zYf$lEg9iJu08&eyZNvjs@=jy{GdgS+n%USC!%!hCP|d0d2&WNE F?&8_;ue(L=Bv01b)qW%hU#aEn zmO-UvmKH7x0hJRFaH-|2lxId4e=HO+`qn3JTEnS~jYci>&;~fSagZX$i{|dc;uJcz zcg+Gb`n@QeK9)O&Kh4LDv^SXNlcu`ocgI`V21JT5m`G3|&+q1;aN5=NZ!)+Q@f{E# z0=l+To<& Tqg^>y6$pt700y@c|iE zaR%YyX{-EMdXIv#H0=j2V@+)1<$M<|U#Ag 2Pys2bpL@Zt z-5PnPQ|Sm`znhkPTdy0-5Nx8Z^+oL#L9A2!?2K2u6LVNoMoZ-vrJe9P>(#X!e`sPM z2(R8B0OA;%ix`5b2$NVxnE>(Dy %~OBOvC&iYqC zy=9;giJRSo>cjDbb7bix^>u&x-`Jd(TEGEhgrZ(Yl=nu{+vD0KPEQI~lhmMiCI)N` z|5Q$eu5y>|Q)WdhLl3!#kQscv3tF{a*23^SU}2}#mi!Xfu0~}NGA?}&ZeXe8izT6Q z roCzmv sI^h=r z`bT9 ALCK}@va&u+9$61_QoRBq{&k|$(f~_mS6wI z;)@eRo%=U^_3$P!x1+_nk FT{16^?_TCXDj+)$_lr;?@ZjAT zqfSsJK|#(X?|puT@ov(ENr|o^Tgqd$lat65qp?UuDKyn3x4uj~Mb?rAiYR>!n5jO7 zuYf@l{_ht&*g2)b+h!E0BWmBwlgiO+Iz#s_;YYis740S}&wDM!gW{1|sB-b;q}-!F z+`m;q=`^qFFW)SPOlx3guWbzFR*P)SqTiM>WA^4rnb@`Lo4gRzRJ6B13-JqPO14DH zxCF8O^})dGBy}hdPbV`6fnZL00%m5MZiqaK!PN`=jL>cieN;_nOXzq5 Sa^QLdDXXH--(ifw_F6xFYIA z3RS0nxUI%R=^1<~lc`F%BlHBAw8n>6GZ9{9WS$2uDUd$VKruBbqcCJ+hMO(nQoq)B z`yoKN1(h$JN&oOS;qyinqd`m!d8{Z`Q?hH?el|)ciNJi+AI1BG{NBM^I$i?IPu^hy z=|Y*Q{Vs|yAwMJiOw9)tc!T`7c`H^aWlVV16A3*H;DLEdC=>yRLU+h#nh|m9RQhP- zJO1m*9JLzq{0-qY>GbZ6oXVLUO(h>bJca(Jx>SV@vpTk{<+tUjPogn-3fx5Ii#I$5 zPCCCyfbx-BRrEZG5vio0ErN6lBNkkFk)1?U|3ko3wxLjNGrFQU(3$+c1OI^2rUa=* z*Z&!o_0FzWahzKB1NAd^H>2SS_YCo&Q)ECid`~=Mi~mRLr{<4w&54^XO6phE=qRn5 z-}v|`uCPBmC*0KjF@-sZgu)kwao`CH1 vdwpy(&wyI53~M87Xt z -DT2-?9-RFSf9m%Q-8m z1Nx@%JK{KfuHD9-M*ZYAJjAl{>__y8?|dR1=jxSl9DN2_3}5>l }PioPvq%vsl_&+FF*o`^B&VcEKQtF!qB39ZZFvwbtdp0Q%BF1DcRQK{DF>ywyWg z9wH831! bYrsX^|XlSM=|8#&sHwE*QUz(dFe$^ z4)gLw8uByykT`sVMZwJDHY7xcJ1mY5jt&{W{xv)w+a?#=AI5v4uzljzlT8VWCRVLn zqO{*^>uok107UiHvnWcZLi`Nw-zJN-y|?x)OlDde(*|gRy9OeTmRAjV567w3eq-v? z>x8;J$bn&EALqoLdI2p&3)d}sbV6J2OJSP7q;v6TKkd!!YHLf$kz!$k14ojFrXF azqzq%s zmf{x1(btzy_-9x*cfx0fS?zk)PFO5)6N8p3njx>=r9(Gw=;IC1hSrOm9H`o!{G+EC zx<3N5L?f(WCJspg>sn^IQHc+I1%A~RTVHc#9`NrsHmEjNHJKBc4CCwehp1luDTqee zjsipV0>ZVwZ?u`{E5|>3B?T9`ia6nBK8%RHN0NzKLN%r2c_g?a8IS7&L3qIHB*W)s zeq}fW$0rA8IrgY1t4WnIdjD2DJ?Ow08TiT-RyTASLEwCD@F>1s{P1Thj7R%EYdXJs zG!g3i2x5=szLr~P@?|VLtW9~}qxFiC=F5Nh2h^`0x^j0eHrfX!5`@9QxB7QjTdK2L zptc1dMMH{eqav_LY9a(%Z}?*tn0JrWL9293-Tc??V4F|%SgosSl5M06+Cba6K+E7P z#9t*qxz}>$LD;RtB ;!A6*%;6E{ZXC| z;azH^?0@D#7Ihe&(zRmJbq+OgHiFur1UIsGPxJ_xidiiUbh|-18~(nm;(OJix4b!M zuC?}GgXt(_-|V;c!PG*UQLhm(JA3Az1CrxB_D*@XpT}p_sWXFN=oFC6&3+2}Bj6|J zOnKL4s?H~Cw?1ZoIb_(e@!htlk0xJIFh_e%V8nQ2SRxOq-H{Xx$mYSHHUL>++c}8s zNBS{{Rar~OE5trqRWF!Q_AJG7y4Jrdz(XNs3@MOJKya%H*La$4+L_VIOq-VH3%EPe zBl^S27$X-KOKj@EbWDyZii$Cecyl|G=*a9{nG$X9jDNJf9SsYJLoy&cC@R|V*{s?} z^d}dGg^tntV;UT-zim)old(S;B|&4FoG2iylGPHZl^jy@ziWo2FP~zjc@9B|cz#qS zD5lv43HJyv)Tt@cQ>jVv_-eKH1E`5wkXv=04(~6pRm@9lR0tzFL3kPvH8drJ;E2Wt zl9!=k=3{UUht)5n0WdhWk!hFzHWv!5W~40@6JNI2>f3}s9}>^p4g-W_^%j%6?rEVz zmp_uZLqQ>=dYv=JEg-mBc8%7AUnmX! i~2&rpyl(!vGU$cdigs0bA-i<41Kt6$4gLq1Xgjw`U%0oF^rLC(fL2| zt7IuYvc(=#laj#D_mW{9I89FKO20 }l!)Rk%s6-d$+O$ArmqLT?8L?Y zgOXmyi$G_+O2^4>Bd1v11r!$xjUglPc36H}yO{M-6IG6$+c0p2NL3 s~BEtqffE^)gQ%xcxWL`d!D&1@X_Xr^TQe?u0piLN5K?S?8H=OG1`OU+SR zU;mQbKQfy{Zos-LzvR~u#C4TUJQp|k71jQI%TSkx?*HgAWO-7v0?31}lC-3KIYivm zUPI1hr_ynZw5LNMUcOJid*hSW3UnU8Y$U_8?;7%q@Q5q^sJ=uk^lCcNEi0nbaSH1Y z@}>`w2D&~@%5~Z`^1U1XT magS)d40>F-7yB_V zLmyMXyXZj^{zSakjp0Dbm^VM&=WS0|q*vt_U0>dHVu*#-1H9E`Gv86X!U$f)^g$2F zyYA)M*vMGOp_)*pFibn^8cus)iKG7u%=YjX2L)_hlS>ff<`q4~TIA%d#`+&!Ar#1q ze&sisbNa+#zp-0i9GJt@iv)O(^Rb-`fw_3fl}HW9zqe~S(IfJnZ&6+dux!$GVj2fu zN|xi+Rp)M~05vr|J#&-mXXz(Xe=_I-Nsm0QX1ovDev^%8!a!tv(1j@^dC&*k??84x z1{`EHxc#R?) wS4AJJ%8ms$J%jWZLX7`$Npo@_iG5!i5FmFbhu2Dtfbr|KbIe>iCx;rA(dn(%h* zjEam64K2f0B)&2jAWna-L~AGX&=MCxk Z^P;Ki{iQs-<0P@J z3qENl_G@~%U)+aBb2L4eNRDVU>FnHMcHL2>Vb|}|lTPIf`FM7{Awuia62^1N<|^?( z60PMY11Pj@&u4iJ_}3=2=7QdyloxI|d^{Ol+8kw7jXe-h!|iz2yD7|pm^y2P>U 5cEXnym*vvqWNkAJ?814O%?@agbs5+gVNw4L7>g2lpkBK;5O zMX1y@WFv{|tY4F~*KsXO$zjLLj7cIpvAZpWvxzfj;_ ^j}gg@f$3~8`+o;$NGD7=Fh zemKa0+bgSkVMP+TBScpAH*oGjg8v`{MFlhjY$Rv3_ea({rR3P5$Wy2Ge4?uD_-0 z9QL6NXe!6zE(<>N*1~Nm=O;?rXYoLswHZFp3t>KgbBoeY*;4NDdgk$jBh_zQXuzjy z%F&u(B+2kRGUnsOKMf2TpuHcqpP&)4YxNUC5y%P*{@_<%4p*UUSZ@A_TXStZ5M%nt z6lc+Id;<3@S7&Qw=Nl&RGoxUxYB;?%*mfpHK$xsYq`q*CqG8ZYW>5Q&LN>p68 z(-Xo8T){R+>O~St~i6~|1NEqR qL}A^|t^tZR0K7<7jLF|k-;oA74+BV))?+IlX3 zOQ2(fOi*~o7;<0rR|yZDJ!y&|s5j6lF1GiwE${4Er$fV}N26nhDa#-QbHjZONApOs z1vqGfXi}+kK5;cPmS;j=DNOf_Mq`A?PdB;hyth0jb3UTuq$SzeFl)rZSqO!AY1`k@ z6Yv_BI-Jm2 0lu0zTVuQ&4;wLQxBhntU(WcbDfQKkF}#ZO0$ zyxO$a*@qk1g1jNuq$v|FmZXp ##J$ce5Lsy;a-M3Ll63pa+&=$*;Dlkz zF!ayUoy&at!o&S;L76GwG4)I-X}&-fDF!nN+FRcL*)@tcHRwvC>xWp7w)9b;T-abE z9>2r40-w~Yiu)nr14PRqPb9yLx3}Pei<{o &7>}j@ZzZ|po zG<^r$b|E+ts`f!0wa$PY_Sj8-R|FGMEtT_715y^!+Nn`kky)voPS?$X_fCp?tK}XD z-i|DU-6z#BitHq2b&=|a!I#lbw}^>RK9U$To6IA5sN0D6X1e~T6xvDyyw{(g1TExY z p_c1Tasfx<%zmb$2%n{q@1u*Q&AH*qWI$_J2sTo3l1h FMzzPs6A0?q7zpW4TSJ6r!YXt{nJG#G)^_Ipu=Ta@facK?GVXU~m20)4!uG zgud4W?=2@bT|}G~__!)*X1MFp8SR&OtzaSEB*dJ}8pUi8@rinWHa=uol30jth@iX3 z`zlL@=}kxTqJ>xbNfcLb{W2=LC;ZDpQrozEP5>*)9YR;!^Dj-dfkJxex&pr85gwTi zG5iPCuh!GVjg2-+P7$Mu-;GepSvc1^Cm XA%IqR;Q#h)$g{%7; z6XXwn881r0I|e(>i#TC5G5mb9Yi)V8B0S{7{ $gZ!cnQ(q5mP3pQy{bY;-gC zH-2T@N#l!V1hLB%s>7f7=Y(4}neTTmP2ZI8v|Y;Gt1OIvq)Z&aCR3`ekHu`_EW_e@ z<~37W&^0u3Zu6*2Qm_N5i=Y!@Dx#92lLx|E;$L)@W#PN=CQxU#>}btkyebL=n0t;s z>{{lzuaW^hSF1c7`TYiH?%}wL1JmR9r8W=FLxPA@vG@(OSHCNgfS)U@G-=>hi%EW2 zcaKBP8U!bQ_h5IAqes)ThhG{-O i}_R|NI$Nr_nv= z<%59@*xa%JQsU?5U^jPuNmxtRcPTY&kr;H*7M6%-MN4P8l+kM%J?~R*1ESf345`hk zE%qn3r;kGG#)4xrE4~^Kb>#@cd0+ZYiAM&Ff8AS~oy31H-(95q9(cF_NnR8z{DBAM zTVd3HX4S=fPor&G#X^A0TwUX5P|i!*wQuV*Y
q-;4rJu)Vkcf6h&A|>^`5I^f{tuT1E}_fTB5pmtQeUz( z>7rL_Yg2JWo0BTby8X1T`!p3-2Yx6gL4RF;(Bh9cfYGtqQ+_sgo7r@(MFGAwru^Y# z670+g3|Nb4!gfe;jAf}1SGyFXvL$g$hUN9S1FP}g)4UNNd{lx{T!)_b8zcQIEN2S)^aw}!6dpf+ zI`&0A;8$+*s5wF<5)X*GWrNOrqDAX2eUhNLroTzV?CS22JIoA~o^dShrm!1yc=2AV zZJ=mzQaBKIh^f<5C)`dYST5@`J4vY)M?KM{BB{9wDEqvu&6%{!aX(}`WM7cR_EP6q zm~mZTna>$TuB~puSzov}9P|n5j`Qe$eMc|kfB%?*Kc2*XivuO}QXK(b=y^v`q4n;l zw ok__NajZr6koI$v g?T26cFrZos!k-ykHaP4vik&r84ID;qvmKaWJhp#MO$wQHMr W?#Ge0JMkQv7fOC9n`^04}2ZkHGE0&?YVIi2YfxMoep0z ~F~(-avIr7@;@GO0%I00hwZI$aiGbxSZ0xDYnYjsboG zJ^4Jya@IU@&Jn*1yemb2({GdbsYoMtSxIIBgM$uMC{Nwg!CykR }~ryQ_8-}2$OTSdMze`3C|Z7&FgSMXsPCZf^DCLW-rES|Jzot z BIHBDVQ!@jSyE8Rh<;?V42m(;uA z2YyRwl#9&NJqp%%e#wd&5y6-Es&Yv#Tqx{xhB+uGajZ(yYLq50-%B|3CccC;P-arZ zmU@UHQyNa((pboU*LFn3A|1ZULnS{_-!3=)r&?g8ub(NZljfk5r|)(U+s~Gzb-+ln z0is9HfqCfK+gXc#j;mX4ZI!cZM~m5qsor{IgVq_VTv6vN)DJcziW3#gpVE+A7O7Xu zkk%AvqYDW0oA(eRzN&lqnGipr+r;S<(>z>76x)58g4Vb>%9+%eVCU}XoBb8O4RP_+ zzc%4IyTC2|wxg_d!+(vcyn0o2^g2s1J_O$!v2(~88JYb507+n2U6)Zk0u%u-w`*Vl z7D)jzm$k$JX1D060n8c!G`F?H0WupWHXtw{Z(?c+JUj|7Ol59obZ9XkGBq &41p3h){YD;jLbX$ zQTdN7%m8L)Hb!P #f8zp%7M|w-c*2w9^hi`Xa;}y2y_72I|GdYzZ(W97+3-S)fpoK1whrz+~Hqx z6&n*r7Xy1B03@(9Hv(EafIOV6je+(6P;!8Zv>ZUu7HIu1W4V7B&;$NG8vqL<%YVZC z+xvGQbL)Sc4UCLztZWUe-OQ~`0Vd{_K!Boz9HXPFBR#;t+W5Djfu(~D$lrg!*}&Y= zzz}5cPvr&x31MY`0jR-$x94DFZ*J@8!02FZ`MX7?-(f&g7PmGQwXw1ST01%*{H{;T z+#YBI8oL|Qzc%~D+Q!A& KN0vzp~ zfL 2ik4{9y#uebf@PQe?z{<`HVEIilPSAe`um29CWMKa9 zGXC I=z11ob&w|^UeNbBSXIskba&>2|&Z&MB6zm8TO zXl(9e^}n^!js~DZ5Vn6dwfxT*%^f7nU4h0*=8i^Y|6 Qrz0e#`yP%v9faj4D9U<+z>!Z1|fEU2Mg#H zje)NJkQl(kXl>&Nashza^8%RI*dzSjC Q}}~G`4s g1@E^#|_8U6?$;t9tVEIS?+uX*<{;zBx1Jl1C zDE^;XK7eLy=4NXKwEoKiB>O8rGpH$xzaVIyU;cuip;>?a1wj+F`l~h2wEje92f12< z&gL&YsCSz`#eke`{!0yN#`cdI6wDU%Hng?`n*5pY2bO (S-$6_Mfz%XEc+enLY3?)`8~Y=wkDi11N^m zUl6n+=f5DRGMB&T1@d p5rSWDi<_<3DdA5Z(U= z|MR^92y_J+AuP<=81V*JR0p)&R|@01Fzk%-Pf>sDXe7}vcr4hrIz7IFji;$d^;@&Q z6^ zz_I`n^k!q-#xY@zU_O*&XHG3JzJs=i*6*aJ4WU--2n1 zEW>}a85~j=M+QPTTC{W5_tQ7GQ)n4uZ^SaubO>I@;cR&xTI;M44>Rs7rK+qB9k}GU zS~!G|H)z8XlpZ4c2{PDo9))?!ee 7jo&3d8ej#YnbUx0-BZ6+csEw}2OCKibVi` %IeM)+SaF0=PZ9+ z&_4UW`Ew||8MY^$pXcJ5v5D)aexuGx5%2t-wHisK%v%ktoAxheI$tltViYTKBbJNV zWS_t2C(rvJE!n*@S3Ve` V*iB)~% zdkt0o$E}f${AU;XVrel7s=NjHUfBb_AkT%*^J013xRpLaSl@5zeORko74NCRkWx`r zA}CUKmmtaXS_kXZFJAFP@Ksdrv&r1o!Mf)rN47|YCbq~uEX#BXKJ+vIc-eo$k|8al zDM{wGe12T5@l%I|yqbhGtg5*P*DexNrA+q$*Nz8 @`E$lM-7Do+v1y{!WgKI zOt|=nuEZvuMH0ZkQ-w-}y8b#Y{7&Y51tauAPqnDbD42|6F&JgH2PaGvM->8@uljiR zc*oJqtkevC>{TdJ(XV$BbEYn&66|r2E*C1n
W(KU49r(c2)m2ue2oB=v3tn+19AP2q4QE1Y$G2T^ zxhnB}V3{Gj;&&XomjYXSkIc)F+}Pk{FYCl|!1nY*O%x2;{0CO8lw(=-#FW>q8xGOz z>sKQp3Y|5(GasF%rrm!JiXWUwv{Ur%q?@uU&uS{3G5dCnLh+c_2um*IWgg@+G?`0> zBb_}s)^Orxb?& WpNG%X*%h#C4b3!7zB%IiAbim zA`lU}Em6M Y=2hz4h9>~2Hn+%&_nj8d>@D`KqY`pFtb^~j|)cDIE*(^x@Av>_#TbW!nkc1$Qw zgVmLIpUaL!&Uk;ad<);^=<7C%I#bwy2)|I(_2UT%b4;gZmW}%Z`N_lhUB3@SPg(oK zAg0U4>IUm)o8s;@K)K$FptRZ0d#C*@5vx-P7;K(8mUnRT3C3_m18y95ejSUe0741m z!T=mOYj%}O7s?`rqp8Y@bV>L7LheHx{sF3(ZR+8d7U_RyGlj?6S&wZ+G{Czg7Dzc~ zqZunqX!E-K4$1*i`Qt;Y9-(@TnQvt{xn)+%h7`;TNzk;9`ah0fd$MBJVwp^Cy3;IM zDU`%nvv`Qqg=tho %;K(kyw)J%&0EsmYq=KS5hdz{HTkg@Pr4 z1#o$MoVS08LGA2O#iriY(>RAP6n^!V^|X;k)I*=0O4LAIdnJf&MRwbk-+$xqDaowT zZM`#aOecmDQe-*GVoC#(xFC-E$>v5xmb_*3US57~T(Vc|Wknm(s`RbNeJo7E8wMWD zviPBdv`a>y90)b9E)uCBLg2NhP7?*StTM1 _QTaP|=ms{t#owOJy(AF{Yr zDUETzRSs&x$Mqg6A4gAn^pkopDt7 G8@*ux;pQCR?A56)H`Ifaz#eP^mTLk7A~%mSt9@A z?r(vn8T>l@>q4Xw>yNS$_o`WjPf5{j>b?<{)Rv~@ooS1PlV#y6Bn|t;GYK<8IvXz! z1|O7Juq%hZ0!p|y?bP!c3WoClF%G(4PO^U;j3ZL4-?>M3!oim1?B(*z63C^y<9?1n zJukLL49Uwb_IFkgYYUZ^ @+% z$-xhGb^sSmgGIu1>~wlRaSdSlY84$`=c?{@Q@4mZkw*HN%>64)Vu7vmWhZhP;kW4I z+xgx?Mtc$N@8p=)4Vt25qAZU+j>X18WOs#JVB=pDf~G@dE5S3Tcyl@qr(=IDeI*{L zVG!rT6s|(@!Fks=@{C_gyPi(KW6DsT*JxWp`1 WP1aU`+gxQgsP6RstzmKe(V3S-K pYS!ndV^uoF$Mb7qHLTZP0Aq{5_W!rP6 z*{F3IQWfrjCe`$kLDx^!?hC3<_TJNL$xPOI*71-sa#>i2aMTGx2-SO;L*qXX%IXvd zJ!B>7)|Sq7zoZzhc3FQPe#JV`m#fJ647X&EtCj`c*z55ejOM&~CbzcSw441Q_L?P$ z+#B8AO8D*6As(Zv@9NT8YYmb%xtYJ{?w7;OxlIa&p^!(k+bkj+iKr-Xs0X$Y9HWM} z*3aWJqFrWeYs7U!+dxwXr6gl=h6$b9iqYv5N;y8;b||!l_m+R?NS=*fQ);>P9~lRG z5`NN|jP|>`6*~J9Z|GHvxR?J5%J_E8D(F1j0tW+ec-3+<7u5X;+#rX93wI{h3L#-B z2*=cAfdm!-?w)f;0$x+dP37~~i@*$s E-SI@im8&W!?QzhCk z_bdsc$tOna3isT_wgRl2GR-0{S9K0dkf$L(O{uSoTrrjD-#H3smv3^7#7a8!Hu&-o ze |Fj8v; zd+&!GrE|+#;JpWC7#B1NE`;W-F-z xCpSK)^6`&d9kgXF!69u95 zRbtl6y9{cC_8-X`E4g(M@u whFO~66r9VRPV1$J3ZaE%vWh$l_= z()_AHh*Uz^x>n;<#RsQwHLv#Gp1tntLKqA+zy!%qf@b{jA=m@SG`KX}wB}CXR0ggr z#lC-0o_IyWG0{^BzsSO{^k;k@6&RK~0NK@46RO#}VQuAaa%RPv3_E^bRqS8g4A=qk zN}7^IGvmBO+)&{JpP`B-ur j%Z8EP}F8wj40+ zG5uVZ6A*S8y95@;XDceQ#=az$FIx8SQYL>?kn!y;{;0eJM$wo|Y)iPO=-2nx3ubRg z8-WR_NKq#6y+OCcoI(Met--j^ebXfT2z0j8tBToruMEnBN!;98ws I=x0^ykK{H9ahr^w~TuA)E=z^_zdFq%AXFyw|Hpc50uqZl;vFejR(nWy6S9B%Se( z+8XTZBKppo9Vvc+)K9BFP1&-&e?%(da&lWHx4%qSxr%o}F!3_7>!xGxbo)y3vhsN* z?GgXJ ~i!bd@Mv*9NjKTi3lqjkX+D-4;K zdn|@2wtzcA^Q}24q2(xFlQI97FAX0Vk5X=4oT+^Jtr*d$MpU-C#F~c}EZv@oaX4eK zvXL}zW<_htdaVxXbbnSzI Gt{=Uz1^8`A)AS? z- xl^f6*UEPHW$VP*@g$n2J<0*0*v&0ZWcZ>n5$wl2$Q3}Wup@se(h);(6g>vb zW|Kj2?qHMI<`}p3bb-?woXQ>!w`>e<0BVn_Y>~ky@@*H>!PuXQ{@R-muA%sL{r)*_ zP}0;1Z!H!m>~aOg(j7*1UY=$|9pusOVw>n{V_i`$&6?qKtuLioJfmlOJ!84OsVwc6 zb(Y=>zz+O=aDAtHAqamwPpHykV$9j);QiVkeY%Sr_@_+iZWB-X2IpC5`2)xy+7+WA zDEgCa!{X^VT`qW?(8mTu_()mqyXKd21_9V;UKYP9_XdTYazb{zdc9rW@1AM=goaJt zu?}*GNMg38edqD6!ctJH$o(ob{uf%PK*Ju_39&7M+yv!7&J%y+nXJA5K)<$-qDwy^ z`*fv!(4knc$$6-`Pgm#pJ8cZ+?2GcRjY0)OlR&zqmbTS^bQ@Cm@Pz_3_!jqxE7L>M z5rgfBD5qM9%!y>aZuC!&ZYvGNrQ;Bfv@H+=rnhe&1V6EU?uz P% zogC1nIyFh{ 3YRkD 4AsXw~u^Gtd1}8z5Uk@ z4m 8DKozAn6$ICZ&~GQsI2pv8YK@ z0Y|V8eP*$QOh`GoAiOVwL|3vK+}_v>hqj2uf0Lk)wL^c-;ashPr>cqiooorGTrTnL z!)U?jo?r^t7}f3ZUH5~x1h%odq}(h$-5!<$W~tGb#^OF2z*yeap-j3-g0DYFe2^16~WL=dxG5vvUI6k8ag zo-9!`ILbuBG70?3QhYm2CA3#x_3grS{ao1y(;|OBvw4=$S@+q;GVKA9-KGsidoOET zf)|BefwGVa-MlD7r%FM&Q~FYBdgOYXxI<8t=R{~;;tYFF;SCX1 j#rY39)*!$R)=48dV4yT@~mF2BJV~7q1t3#9%Fj264=BQSj@EJ48*y@Q={I zI`@CB>DzO*mPs9ipYx6 P} zM${or4%l116?o $9A3x` zyir;!{6!-k70mVC?^!J`_0ff<{M-~hWC(xLZklJ^*n%vtv0@oB*bLULA2Bbr#lZ%d zp;0IXK^9VyGjfZx%u{(h2x7PRaR;Dv>F(ee=;xKwBR5m4f*z8`<6}}hW7Sg7CCqjf zIeV^x$lAk?8$GLCV_ZKU`z({Hvs{BkR7P-#WpuoV IqAx{w&;EZk z1hc$jqWl$iSjM@FUY6Js9R9L4a4cSZH7Y6>`3ry+# zJ`H9_SnO7yE`|b$eOb4rdmdljH%fnO`$S%0V`))*eWqYvF9Ze)062%c&XDEh`{9?6 zRM`)Bv?IQ<47hVE8hI)^N}(g=!o`wQ{ykVd%a7PK tOh}(mSW0Y_Wge!#Lm8 zWg>tO%>2>(kk|%}+dg(g&BNM#$csbe^A*36-qs10@Ao=YK#Q`ft#Y2iN9}@;J4Kt^ z7Y#*@Vn*Y>jWRqTlD)aaePLa^a_l`>#PVg)dR_|0<>A@DW+v!e6}kqEPGs!{^eh1K z5z?1YDG@TmDP{!XuaXal;=F$m#Y6+iPzs5Y5-pe=*W1Q6_YY>hV)Jg`qV-a2%GR4Z z2*W P*#W`LPzc)q?~0S{^&*ZjYeeP9SBD-YfvstDdJo)rn#J57~o zj`bDYCrk( 4U>Q$s=6g)(U8laZ>b!n#HD}HP6#91?;KX2 z1ff+!JKWk@m(QA5d5T`%w ^=>U9d61%zPo)0FB;ii5fQOHcL*0aYSiT>L;8*!uR502KAcd8 zspFJ1JBNxfVX(p4gRg(0#tTso?$z%SkT6kzg8U=;Gi~IdJL`ucqr2OFxew$QtV PR{F^OJ8j~tk*xSz5b@opjPrs`3BmZil zT*i;gdBxbQW>Zgj!<^NG2;FiP-{m$s;B;Mk0)4YR+jEOSSwnxS74S;$sRy=(wf2 yv_6~Lc zNcZ;qG=#`|oTYz%*S-Z?`IDpC1fSJ$)y|_{u%@RVpB&oQNjV*$BuR4XV9Fi?r_)u) z{z_--E4%l)&1gj=DTLVG4Un~YFnXMU^lv1)^Fox?hl01`DLHvc(EjqcPFT&%>hOhB z2A}ZWB4%j#=G~xBzn?n^g^f&zvUYwrtMQr<4+?2=T#$cvWJ;=l_F88#6CBLc2zA#7 zYRR7*#aA*nXK+n2n~G<2rX$87%ruN9)?zAkol+Mg-lHawJqnf~(DzqOH6qQ>y~&s8 zhb%0s)23Tj^{fR#rWJ7#rIVsMx5;PEM4rlN*8x=bbT5PS(HM(&>AvJd t z2Q0iM%F=&l%LgojPQ(T6S3ysZk9lQiA9wWT06f+g1fC?QW%`}A{_r21@y;o$CDn;@ z$T7VfdP(F-p4&VnmFCO^nEd;9=AGcTp0b@<22h5Lp2=-!J*14m@ybo%$o&++E`2a) zz3)kzh=yaitxy(Tz946&om>n3j2%x>(dkkjoArNY%?KSJ7ii?%FJ&3kt(!fyj7`vs z-kfl4YD00xLYqzaWT4Iw35&n@+KNZ+78mB9aymQPO;|VTB98_pFiYIVc&_I)Jb(XA zP}p2IdA!VCJaPRn2`!TyvNqCKxp} ^KKHj zv#{s|QePc!dg;D8-4VZAp&s>^A|JtZr?!mPpH{4{^b=IQOQ>i%n_Wh2obe6=U#0B> zYBR>Gvi Mxl>@uS <(o^L80UX{;w7nZOxC7(0P~TqG)0cY(w(OlpR`fy5m)=< zq^4ZyoJ%&63Z+k{ofVh&Cem