From 757660eaf7bb5bdaa4880e06a3cc6ad02c77e405 Mon Sep 17 00:00:00 2001 From: ccancellieri Date: Mon, 30 Jan 2012 19:27:24 +0100 Subject: [PATCH] Stile publication improvements to fix #3. ImageMosaic publication added. GeoTiff publication fixed. Added JUnit tests. --- .../rest/GeoServerRESTPublisher.java | 200 ++++++++++++++---- .../GeoserverRESTImageMosaicTest.java | 52 +++++ .../publisher/GeoserverRESTStyleTest.java | 14 +- .../resources/testdata/mosaic_geotiff.zip | Bin 0 -> 66599 bytes 4 files changed, 218 insertions(+), 48 deletions(-) create mode 100644 src/test/resources/testdata/mosaic_geotiff.zip diff --git a/src/main/java/it/geosolutions/geoserver/rest/GeoServerRESTPublisher.java b/src/main/java/it/geosolutions/geoserver/rest/GeoServerRESTPublisher.java index b22f5b8..3a9f47a 100644 --- a/src/main/java/it/geosolutions/geoserver/rest/GeoServerRESTPublisher.java +++ b/src/main/java/it/geosolutions/geoserver/rest/GeoServerRESTPublisher.java @@ -131,8 +131,47 @@ public class GeoServerRESTPublisher { * @return true if the operation completed successfully. */ public boolean publishStyle(String sldBody) { - String sUrl = restURL + "/rest/styles"; - String result = HTTPUtils.post(sUrl, sldBody, + try { + return publishStyle(sldBody,null); + } catch (IllegalArgumentException e){ + if (LOGGER.isEnabledFor(Level.ERROR)){ + LOGGER.error(e.getLocalizedMessage(),e); + } + } + return false; + } + + /** + * Store and publish an SLD. + *

+ * This is the equivalent call with cUrl: + * + *

+	 * {@code curl -u admin:geoserver -XPOST \
+	 *      -H 'Content-type: application/vnd.ogc.sld+xml' \
+	 *      -d @$FULLSLD \
+	 *      http://$GSIP:$GSPORT/$SERVLET/rest/styles?name=name}
+	 * 
+ * + * @param sldBody + * the SLD document as an XML String. + * @param name + * the Style name (can be null). + * + * @return true if the operation completed successfully. + * @throws IllegalArgumentException + * if the style body is null or empty + */ + public boolean publishStyle(final String sldBody, final String name) throws IllegalArgumentException { + if (sldBody==null || sldBody.isEmpty()){ + throw new IllegalArgumentException("The style body may not be null or empty"); + } + StringBuilder sUrl = new StringBuilder(restURL); + sUrl.append("/rest/styles"); + if (name!=null && !name.isEmpty()){ + sUrl.append("?name=").append(name); + } + final String result = HTTPUtils.post(sUrl.toString(), sldBody, "application/vnd.ogc.sld+xml", gsuser, gspass); return result != null; } @@ -161,7 +200,7 @@ public class GeoServerRESTPublisher { */ public boolean publishStyle(File sldFile, String name) { String sUrl = restURL + "/rest/styles"; - if (name != null) { + if (name != null && !name.isEmpty()) { sUrl += "?name=" + encode(name); } LOGGER.debug("POSTing new style " + name + " to " + sUrl); @@ -170,6 +209,43 @@ public class GeoServerRESTPublisher { return result != null; } + /** + * Remove a Style.
+ * + * The Style will be unpublished and the related SLD file will be removed + * (if purge==true).
+ * + * @param styleName + * the name of the Style to remove. + * @param purge + * and the related SLD file will be removed. + * + * @return true if the operation completed successfully. + * @throws IllegalArgumentException + * if styleName is null or empty + */ + public boolean removeStyle(String styleName, final boolean purge) + throws IllegalArgumentException { + if (styleName == null || styleName.isEmpty()) + throw new IllegalArgumentException( + "Check styleName parameter, it may never be null or empty"); + + final StringBuffer sUrl = new StringBuffer(restURL); + + // check style name + // TODO may we whant to throw an exception instead of + // change style name? + styleName = styleName.replaceAll(":", "_"); + styleName = encode(styleName); + + sUrl.append("/rest/styles/").append(styleName); + if (purge) { + sUrl.append("?purge=true"); + } + + return HTTPUtils.delete(sUrl.toString(), gsuser, gspass); + } + /** * Remove a Style. *

@@ -181,10 +257,14 @@ public class GeoServerRESTPublisher { * @return true if the operation completed successfully. */ public boolean removeStyle(String styleName) { - styleName = styleName.replaceAll(":", "_"); // ??? - styleName = encode(styleName); // spaces may - String sUrl = restURL + "/rest/styles/" + styleName + "?purge=true"; - return HTTPUtils.delete(sUrl, gsuser, gspass); + try { + return removeStyle(styleName, true); + } catch (IllegalArgumentException e){ + if (LOGGER.isEnabledFor(Level.ERROR)){ + LOGGER.error(e.getLocalizedMessage(),e); + } + } + return false; } // ========================================================================== @@ -381,15 +461,12 @@ public class GeoServerRESTPublisher { } /** - * @deprecated use {@link publishDBLayer(final String workspace, final - * String storename, final GSFeatureTypeEncoder fte, final - * GSLayerEncoder layerEncoder)} * @param workspace * @param storename * @param layername * @param srs * @param defaultStyle - * @return + * @return */ public boolean publishDBLayer(String workspace, String storename, String layername, String srs, String defaultStyle) { @@ -553,16 +630,16 @@ public class GeoServerRESTPublisher { * parameters to append to the url (can be null).
* Accepted parameters are: *

* @see #{@link ParameterConfigure} * @return true if the operation completed successfully. */ - private boolean publishCoverage(String workspace, String coveragestore, String format, String mimeType, - File file, ParameterConfigure configure, NameValuePair... params) + private boolean publishCoverage(String workspace, String coveragestore, + String format, String mimeType, File file, + ParameterConfigure configure, NameValuePair... params) throws FileNotFoundException { // build full URL StringBuilder sbUrl = new StringBuilder(restURL) @@ -572,28 +649,27 @@ public class GeoServerRESTPublisher { if (configure != null) { sbUrl.append("?configure=").append(configure); - if (params!= null && !configure.equals(ParameterConfigure.NONE)){ - final String paramString=appendParameters(params); - if (!paramString.isEmpty()){ + if (params != (NameValuePair[])null && !configure.equals(ParameterConfigure.NONE)) { + final String paramString = appendParameters(params); + if (!paramString.isEmpty()) { sbUrl.append("&").append(paramString); } } } - String sentResult = HTTPUtils.put(sbUrl.toString(), file, - mimeType, gsuser, gspass); + String sentResult = HTTPUtils.put(sbUrl.toString(), file, mimeType, + gsuser, gspass); boolean fileSent = sentResult != null; if (fileSent) { if (LOGGER.isInfoEnabled()) - LOGGER.info("File successfully uploaded ( " + file - + ")"); + LOGGER.info("File successfully uploaded ( " + file + ")"); } else { if (LOGGER.isEnabledFor(Level.WARN)) LOGGER.warn("Error in sending file " + file); } return fileSent; } - + // ========================================================================== // === GEOTIFF // ========================================================================== @@ -615,7 +691,9 @@ public class GeoServerRESTPublisher { */ public boolean publishGeoTIFF(String workspace, String storeName, File geotiff) throws FileNotFoundException { - return publishCoverage(workspace, storeName, "geotiff", "image/geotiff", geotiff, ParameterConfigure.FIRST, (NameValuePair[])null); + return publishCoverage(workspace, storeName, "geotiff", + "image/geotiff", geotiff, ParameterConfigure.FIRST, + (NameValuePair[]) null); } /** @@ -687,11 +765,12 @@ public class GeoServerRESTPublisher { /** * {@link #publishWorldImage(String, String, File, ParameterConfigure, NameValuePair...)} */ - public boolean publishWorldImage(String workspace, String coveragestore, File zipFile) - throws FileNotFoundException { - return publishWorldImage(workspace, coveragestore, zipFile, ParameterConfigure.FIRST,(NameValuePair)null); + public boolean publishWorldImage(String workspace, String coveragestore, + File zipFile) throws FileNotFoundException { + return publishWorldImage(workspace, coveragestore, zipFile, + ParameterConfigure.FIRST, (NameValuePair) null); } - + /** * * Publish a zipped worldimage file. It is assumed that the the zip-file @@ -720,10 +799,9 @@ public class GeoServerRESTPublisher { * parameters to append to the url (can be null).
* Accepted parameters are: * * @see #{@link ParameterConfigure} * @return true if the operation completed successfully. @@ -731,14 +809,14 @@ public class GeoServerRESTPublisher { public boolean publishWorldImage(String workspace, String coveragestore, File zipFile, ParameterConfigure configure, NameValuePair... params) throws FileNotFoundException { - return publishCoverage(workspace, coveragestore, "worldimage", "application/zip", zipFile, configure, params); + return publishCoverage(workspace, coveragestore, "worldimage", + "application/zip", zipFile, configure, params); } - // ========================================================================== // === MOSAIC // ========================================================================== - + /** * Publish imagemosaic as zip file * @@ -746,17 +824,21 @@ public class GeoServerRESTPublisher { */ public boolean publishImageMosaic(String workspace, String storeName, File zipFile) throws FileNotFoundException { - return publishCoverage(workspace, storeName, "imagemosaic", "application/zip", zipFile, ParameterConfigure.FIRST, (NameValuePair[])null); + return publishCoverage(workspace, storeName, "imagemosaic", + "application/zip", zipFile, ParameterConfigure.FIRST, + (NameValuePair[]) null); } - + /** * Publish imagemosaic as zip file * * @see {@link #publishWorldImage(String, String, File, ParameterConfigure, NameValuePair...)} */ public boolean publishImageMosaic(String workspace, String storeName, - File zipFile, ParameterConfigure configure, NameValuePair... params) throws FileNotFoundException { - return publishCoverage(workspace, storeName, "imagemosaic", "application/zip", zipFile, configure, params); + File zipFile, ParameterConfigure configure, NameValuePair... params) + throws FileNotFoundException { + return publishCoverage(workspace, storeName, "imagemosaic", + "application/zip", zipFile, configure, params); } /** @@ -1447,6 +1529,7 @@ public class GeoServerRESTPublisher { /** * Allows to configure some layer attributes such and DefaultStyle + * * @TODO WmsPath */ public boolean configureLayer(final String workspace, @@ -1663,11 +1746,36 @@ public class GeoServerRESTPublisher { if (params != null) { final int paramsSize = params.length; if (paramsSize > 0) { - sbUrl.append(params[0].getName()).append("=") - .append(params[0].getValue()); - for (int i = 1; i < paramsSize; i++) { - sbUrl.append("&").append(params[i].getName()).append("=") - .append(params[i].getValue()); + int i = 0; + NameValuePair param=params[i]; + while (param!=null && i++6w|>Ia`>T(yJ�st$!lF4cQGZ%Mg06>s4 zU;u#sZu0*h$o(Hk%CWSB=O5@lM)8h5ljxWB(Ug z$;jNq#(;;w+1%tmQfxTo?W{e_>}+YQ?TieZE$nPLm7EHq3-`Y*@P#LUF~|JL>f-7U-TzuNwLmPgBg)>Fre zg@(lk_P+s9{^212{u5BrD7Ci_01&{17Z8Bve*?PNIa(XjG5-0({D*;#$(@Dy&mVV2 zwm*O9{*&+j=Hx$dsa^gjCs*H~%3380-L3Q6fN}hCen%y<7b~YxeXnE0aL4t@!sQ0&knX{ebR%n||zxz1MtEXS*+X zT=l=ke!&6Y1YPNO^eu0@Fa48+53fcEU2iV>2!M8aE4R96PXtT7U-)`>G|D zLng4{)53)))n|Q5czl2jm>i%)y(4}?{NlpTxtXD)pR;xih~uzpdZ9FMgZp9$v^@_%f2h~EQ9uYl*>G87Sq}@}(BIy9skyOXEmNHYIO`?K^(3@bzTt(J zi%YPk$0y6U7`-!^PU=ALj+nLLMNOTLdL@#HY`i&(WsS#yWz7VZGt>D~8mUg^DznNV2V;{Bq953YZ8XP8uiu2#L z(x9b;3U&b?>gDg}Q(j#tbqhWmniF9EtVnzA& zM9i|QD6}^%nZbL3VkAc!4y?!RbH3Kr+E;Z@(9*vKh3bgdr8-e)r@yd+z-=8!fnNG% zdBhv4Iq!GqatUUPl!?J=I!udL$Z+cXn+dop04#01ctB@7VForX&VVnPJF8 zbk9(kFrPkC<*3s+{38u0NI0?GdtmI@_UkfJ4cFcvgCCFDrV?bc~~eHT4C%7=cWK% zWzPBj%6`uv_MjjQJIuRhY7=o|x#D1#fpd2E2S)#VNZirO+|lw-7|HNFh^6PWIn5KS z$}FdZDE||V6&jYq+4j7dfi?ve+z^HX@Fg-&H{b~F;2M5Mg1*p}whBAV?y;OSN1T9Q zQOLOdf`a$2My~gpiYeND(kk+(1iSX)@+am!AB2S@m%(>lQe{Lx_2HXa?^@D?nDt{1 z{#~?mmWL52$b>b2G1{ifmhYfvFVI^(<jYm zoP@gdBcoPo4swc#XBma7lk9rE%`QAA94d>$v)TyuRApcvdKwZ=qtA)AQcZ&w<{fpC zMh9bTA9W8f^$W(}EEw(=;r2rX<0b@y6g&3I&ttx>Tt>TSN603Yk%#UcbeEX#WMg?g z-HzNCr<{^02_Q5#O^9o5k{fL)X7=j{@^4f$c`l197W&lAC$t$sAay_No7#(`Bi9!} zp2XiE$*-)2n_s)~M>e@SPQ-4jc4kV-J!#$eQ0qTH#lCnI;zB$M+EL&wNL5#hfEt1!g_+s(4U|xvd*j2r8JQTUW=7K? zT0Mzkg>A%%3GcJ${Ur=`BS4pOD(w-&gC4HVt6e?ijR%=$Kcz(6JUw~eIq)ut41rb{ zw8+|IbV(KPozJbPWJzw3`Xlm>GM93SHrTR4UrmQiPKc+j2BU<%(U=1OJ8mX z$_|Rttq=%ul1gqMfT+z4yhxuqZ*F|=B)Io@U(qw7dlU{V(`SJ>?#QV-)^yI~C-;VL zn`?r;)GWC@meb&I^bwy4vn*=wuP%qkp=K9>P8Yh{9V+QJg<&-l3!O_c49i!a6bYs! zi?`g*skIFa;b9o4mhxz8AlbNBu%?)1*GmVhq|6m;RW0lewTC!URT@&Gvq=d2M(Hf7 zMRv5pRtYC0`M)7f#a|WjCCJ(jx`RXg7&Kc32oy~j@1C&_Ob$yt#3jZeHcHb&CYXiI ziY+~xb?cuOB;9M}x{3aMtnR%63SEv7dfFtDP&vZ*v!7Ch^#ZnaF13<6ADjJCfrW3% z%Xo-9H(@?@LS)>)q*qWY-a8)FQ%|AykNsyLGY^?t{v2a^kxzll(B?<=fVuC@frU$F z%1mM}6kh+{RQbHE-r_;d$i)D~H@OBZ_;o*$EbW0(tk<6_;> z@8xf9q2n1SBdbV^+F9$R*$H|gl3OoS@{Tawa&?GRDdHYcFtk#aH{EeYoiL0XlA$!3 z=~lF=W`kK;RCi$;RV%M^k~T|q8u91#Ik+zzh(Jm+=mjB|0(QXBw6mF4^c{7#<(>lb z8xG9^vA;%Z)VQ@5h@UjIr8ScNXz`Lwj*O(?Ob!~!L>$k3t#ndXwKi9_ap)vfEY)ex z0SL6|Vlq<8@yPxC8{dalqE3rb0rN7l-MDv&@kO3E@H8jun3KgNYZ|l3un4 z#-(H<(6Wyi5xBa5jNewr;m%2>|PAt4#>M5|@ zaK()l;0BiZ*9CYkcF9b0GM&CaDrWr)H)~om$*FKMiFbc# zvDyNf265@21)PHIrX}zqKqks^=3@?sNmz%Oxv?a-F=F>Xsa&i11k1@u^<#rudH`#{ zqU%&pxxJyTzSxIRma#2=(2bOmdZ$6UZ^iYw;BHP!?PI;$f(^Zwe{kDzt@3cohwZ1- z7tx}6gV4K!VdJR!qx*X!jR+tvbVh6akxVbIuy&2&vS}l&#aVk8dqUw61|x&9k3)N@ zfU`eDR*ezHZoL3wKBjrB{ro*Q6iR*Cg ze8jwCS?3+{Wl=EVuH3(pYst*?Gp+pK%JPRd$O-}Mke!Vb7QI(g+TH&a3Ga*JXF+uF zb*f}ytxHlK4SDRQ7>m`fuQd#nptrgIXiBn{4!#jX#GDdzB4I`yxC&aKaz6}x0+Po6 z26g@g)L-&|_yyBm&jXy7`ztf8e^h1h@1hnHkCf*szqSXJL~TzZiSnK~#D9ZZ8>6OB zMewrf>}Rv>c`clAhD2N#3i!tF%@c}ngY$GIh(CN#XP%@{*T{0q$=ZszKw2M+md&JHIneTx_aoH1TW!O znRGyOQFnO(!Ze9^5(+_q8mZObv(jnUjl1yB4k~FW1fGJov(j?Zb1wviIMDY8fwE{< z&-#8`Wjn9@G2rGUb#TfiIkU`J=X-vsgy66`(m-=4L5Iu~QzQO$PfSFVQsS%BmFm9R zZRibCT5TsS%wC!o3A7D3D*xlhB{-kpHLWWRB&ReE*4Z(?AA zr;ErD@d%5kdY9+>4b9&MNvO3HeoL)A{jPnai{WfFzV+jmY!v4j5CzTRIV_?1@j1IW zDF-yeM9fl=X&jXvM(0Auu9}W!-SecKT6PB|lfBggxZ8Vx8q%65dbgGBwE( zjC-veIwbVC|GP?{Ixfp=3gPSqnC>6bKVrMJ=^R|pvC1vtCZL&^`+y0gLk@seL5XQk zKVFLQ==;GMmRE>A&Cs76NX*AU+hU8pg7b7dA$#$~)vlj4RX|~$8hhha(R(*~t*F96 z_@nY$Xg+HEHpU@>cQMXRNsx4B)e>FgL}>|TV0$r&dd@g6A&{J?YXhR%e2GUIjh;q! zL8NP!wow%4t4i@0;=IRVrfh?%5Rx{V9Bv1xDXj8q?0N&JsA%^R7af`W5fMZ0+oSpiTgK1S;L$E;B$OSEaFUd&*ou{;OJoMk|)G< z)=f!vq(9u_)XVH{sHD{C*p*7eCN0fG+bZ)7COlKsZ^~R%9%5yqep15V>(|eF1@~3vyoVCidxq1`K8NiGRu~CCj6?R0b=gzU zHx^cZ*VyQ}Jg>yZ!x&c>5I$@}Jct&cJ=UIPxk6ukm%fj@xs5Z=oCCiT(eF7}z zU|8t0S%48q5(5KEzVpSyKe$1B<}3J5M&B9JmL|y`G%D^0b;=3Tkoup+MuF$I^nR%D zw1X$s4&Gn{PM~@>S!1HTc?2i9E!9g?W-03^hX~S7h@SMpR>dg z(fp7eIM64NcEMV_#gfGy!8h&WGM!c$Vt7M}!R|CWkQti| zUb}g~&Sb#nTRTNX?FU?9Q$IS~QB*tKnrAFLysi7J_FVy{!l8@Ub}R6^QYLm}fof+Y zxpi<^gFrEO#|z;;GIEj7*a-UY6Uv5tuQBhSo&+d`zKw=S){k2UNHZeyo-rKW;8~T) zLJJwDru=OL>Rr5oyLZiZ7UE=5aY~LOutL-*^4omfLbcAofr6HVKZOxk`873w7*5FQ z2OC=#@v@d|hBR-OlDZcHKFT?c#4o$V^4j}5$2-rHfq3!E&j{b21DeLNUQs+w=9)}B z4ZjnsHt}|YESQ3JQ6dxB)!EiU;e<$K_%l-x#}Q-RKSwk#lVKVJ*=;v>ajK;`qKQc% z`#*FiAY6*c%X^>6S4j5lm0rL99MY!3H>_}zMtKNGok$fZF}Cv2Cd}||ICE_vhgsOZ zzyYFdtVT{$$X!!S!0^9dm7VRXhL5UYZYKi6tR3$pQc7YhgF70Gk|r_@Y7B;;w1(_v zh$+aX7_%|6O|dd5(uy;YuJ;6l@4)R5&(-bFfsRSVjm3%0thsGEJ}aw}O4FRvYP22* z!IdNNEr-5fw`hXq?;&~OL!JV*meYDxy|46B$_HY3N^zAE$FeG0pod%E7`}>1SE|_C zvs+ejg+L8)&=EMAvOiq{Uw_mMlqH>aL`!RU{oIA9Z5w2kjJ$@CpaPq0Lx$f|DG8QCf*Lb$M0O9aUOBurT?^R| z-}*B=ctN+RDc@cc#Z~5bB6Qd|u713xQSDKcalp*ccz7*LZMUCHSjS9N7Vfm?Vk>pQ z8r8%F1;d?{q9wM>C&yMuKRzC*Bfk&HeY4t@!^-CA!)M{fh6<#>-AI0u{q3qRhk%`f z9;fbdNXzYMJEeBNc&;1XA8Q#Jj}sGQMDhu`E_SzqO&Grlv7xB9^Al`~m`HdWyJQ=^ zlmY&rZJYlV=Y-#24Eyqvr7k6r^XJS^g>IH2GSq7D;&dju_6RwL_F~+a3T=I$U$j^&I21 zr)Ty9+;8Xa6?{#Gs-!1R2r<*DVGsiV2EZdf={Y_ENx-G*f|CJb~>OO|4ZGz+h$sPO_8^hg5WDjY1XsBAbKl~gqe zJd~0Ka@cZfd(!F4?GUa`R23M*tg$A!g!G@xKrzgtkhor*<`Aqs`#o7kye_#LcqHf|9w=p4 z7{$(6Q;@|r!mgRN@TsuLEa9=mRpxe>UDDz4<-{^e%hX%A)dLuJ-!ulLYXfy5<|THE zL}S>1eJa_yZ6Es^dH64p zLj2`nI2W{RV7s{d*}VgCQJa@LsJU2tODq0e1_3yK@w`g%-W|*M9cUWMsa@kV6K@tJ z{@##bED@i%eZT;uA-FYY?j2I72bvzA6@kP-z{?B-p81i~A&tc05x3Kk-|<7rj*Sak z9>U|?0`oFWk%U^Gu%CSA%!71_!OXt@pqF=^ONsj0H-f7dj0AzHX?VCw4{LpncytpQ z)K4P2+(yyNC*Bx35X6^-A*`nWzBqi**rLrWg9lZ9x|wt8B-%8(pOi(agINXakMy`1 zmggBErEK!iBrQU*+gmhE9B)ggbY?;|8BDc_A zI*Qb#g@k_7*bdJ#saZ3Fz91(tC3N|KoiW!D8A)tQm`Sv88cMvU0_nM zcFD8<#xA@G<=kBPL5NaJ>QzYVf3I<2L>{p@JyG5jHSD>|FTH5ZKS$4a*r7@3<0@zv zPycDj(1!E{i#OxsO~FuK1gGTMG=s=<|7-{kUIIs;`@=Ck}AA@Hx;Bf8{9;z!v|E_E}cFcC(%rG zPZ|Wn1cdaIcb1dV4x{(lL%rX6DL?JOG(8(zL@-17*>4!rq}YN#vx^N<9a?-_k!}Ju zlV=+xNnC5m!>kt$-qghBV`8HuI`??ExeuZsHi8po1&IMDRSitPDpm8k9X!q~;qiGy zpn|AY)xYTw^Dk?9!ptutwkl6^l^robz9zFjJ^woT`|^`4Gn84K)^vD<)r@ZiFEAME zl|}SWG1?zd;~s)!oCQ5mg}$WMc^f54vQ!yX3f4fIS{PMH?rM;)lD6-tkX4=I7AJ5{ z%mbVtdVS$>_asr>GSi)+_Qaf42(>J*lTcs2yYxw!pNs%+9;F$tDl}=A$m!-n7b)2F zL63{j(sbuR5D}3i*W?=DlW-$Rp=#x9hbCG;Q_2ja2KkD078(kg z#UsYG5hfRM7Z`%4(@_u+mje3C2??fbC31aJXCBmy{``%Yw@6<>{pz#7&h~rG(cXJY z>9`>o*VU`br1CqSW~Tb_TQD>cTp|h~kc!0M&tDZ<1iL-DTQ=TH372# z)i2iDAF-0~$QBC53b@1UNUAg=2Xb^-b)PZG=m7QBUE5=E>VC>{t^)Se=Cy))yLEbdj z2om}Y({sT$P-8k&{fe!Y@fTSZ8?Q_jlHpH13ul=?6*V}^ceisFb+7k9UkKHB z)$is6!Qkn-K`$s@N`3`QYJ_q}K3H1^1RJx%^a`2Y#@ai(uh`5jXhzu(dvm!&4XVyV zj$x0!ItEb8qn2q)QZnGn4a_!Ab>B%I&nOAiy=xgaY6|OOgxIXWs|Ei+x z!9wH?jK1k&i-wNzpYPGTj08}sNFihGRPUSXydOJPfa2P!PaVF~i!Dxuwq>&Hfs%nR zU{qYOVL<#5d7V4SS`H7HO{A4~XJY|C;<|%1X1|aeekbl+#Ro3${1t`7-teU&5IWgH zcpqVt%Ngl|=mTIim`9v(9xzX0J=!q&M1tbC?vB{P+=tSsoeUqQ_sfz@D4LxHNwqQO zHKxj?Ajn_HgRx0cd>8R<0<86q?6 zATpLQz_I!3m7_z;(!!<#P1>10M=VadPGyN`t(K}~%drj0m?!^g(KG4@!VpjAOrNYUpo(Ti za|0e3#uXR=1Ww56lHiuxIhYaM`FQOU*?KIEYs5{T&E{{p&kWF~QO+=|81_GMvo$ag=`-$73GY?a4#8x|P zUa7-kEt#(%VJw8>Hq%q+@~fBy7-0Cj!{lXA*0*>fbZ(w^%z3EmXdSWz=iOJyx_pb& z^&$vq|B~>26Ry0g;1$t~H?;Ll+f{)&#<6>2+!F<1e2f`k@^T0lk1%ch=}S&@Q<78` zqbPa0C|W9x>##7Fj<$NKhXdU*bbBUZd7_R3YeBB&qu?3IEb1jWAorGVMld13e%=*m zwUN~2uJMjYy37v(burZs4TIv-{@o{f&ON=l)5%t~$$k8UIk0Vvh}3^D;&k$Z4@jLa zpKM@;8@gaW2BR-V<(+vG&lF>6as7EpxlSWkPuktSFg`0&Rn1j!kc!$(!t?}|s~1uA z)qXIN;dr`n-w11Bl;(}Eb(7ISQeu1i#bP^b{nZqh!Den-Hy_G zl>sWwt9K8hayJqVZIAoi;x{_gobOu@(9=Rw*9v=T_48W`oX)|rEsdVG>V`2>RwG{F z4B8Tjd$zRlPtZkdV967;EUaK(u--g{agBve-XrDMHs89T?N6|=_?!Hhf0kl+a&UoF zk_x6-b*h2m;AjsLw&K(HLR`IK)Uk14hL6V4kb|F>8(IzIWZTtc_Q^#d!EhB&_Oflm z&UWtBl$WJgY!!qnaks9XLxLF^kMR}kG2dv%Ck)}+CUI3!8Q00{ zgu>7hq(OtAtU(`zP|R7fVUOf+8r?do>!p=}0uEy3GrHvc@CusiNJ?f24o`PU56i{H z4b0u#kP+(T{`as0w|%R&`H(zKH5C;Hch_nB0i0g#322u5LManWO4u##>e>d`Gu%h;f zuBj_SwjG9WGS41S(8u1msERGj3Z6mwMg=}j%oH%?5tdEU5W%`RC8D2+$0h*8Mz+d@ zs1_Fbq0R?{s#mQjxH8Ckyo7tr4B1&!L5~BP-}7Z0|8tstxB%tep2EmVe#Uw_e^MFf za()oXh*42)QY*Ox0r;8U2uYd-i>)DSEkZIx)E6)wkVR7jMg>7<~u6k_A?{U*u7ZNp& z`5#7a+2m=ptO|jM3#q9}d47TppqxLWdJueK8gBi!@0riJaJPv|-jUPioXWO0u95j| z0T|3&2+z>{&9Z|9uZc&8M!nOLO%Pq0 zK}CFPcWM|Ddx7BSF^D=z3$H!WGaO8JaAox2U8CTYBHYpVr-}+(^nk|@^LEhM-djukiWY*svRtM$4gmHh4%8d@Q&5?J) z$#yvUy*UUdT8w`EWx%Hy($YhNyaIj{^o>kX;goPXmn{BvX0JzR^^p&4G&~uWGK#ZY zoT7ZD&aRZYfmTQl5@7p!iQ)I-a}3cFX)NOo3cOdHs=zD^Pk(TvoChjfgP5xG+)%NK z*A<}X5gP6vV#9>_!YdVHfXUf~kx(th*3hGh0|Gw$SrYghx5D6wzEyxq_up$o#DJQ< z$dO)=^ZBEbkf|5E`KT*ZyJLeo!?Pxfhp2#d+wti}`>{HFff%F|@8Xl4ZH5lTf{#Pq zqQO4ts0!7CSFqM=bwm^~L5FI+Mprpc(W^0;#MZ!)YKcg!?Wv;E)_61oS>C(pK5y-o z2gnZZE;1RdA_dk-od4HIh?G6a|3c`{@^onlp2Y2fnzF0`S9lwl6KGqld{eLL)L!J2 z()yhl{#8k7-h)n3GI)gvNT<5fl8`fudtQ9?_`N@60Gd&y#qW{=DIjiq6)GmFCR$Iy zi0iC4+Qu@hQ<`WNfNQJB9n`dC^wEUwmDF4E5u_^duYnygo0W{N=siO?5l?}%-B5C$6ut|>vr5@yCe6@mkDX68Za+EAY z^Gp^{arH+KvZ9S+MmUI~{o$RpaYNsUb+!H7W3z?wUJ9*eNv4R7WSrI?@{JLYoSWu9 z;lZ9z8mcn{#|tuJ%Pdwd7WJ77LF51e&}l;jBpadT_KHFdi4)cPPs{r^QCK*?g#*H> z3--0=@zV~%$Ij?i6=T|;Kw6ujl4nd7RCPQCg`orU?aN+P^V(JsAHd)cLA=-IT{209 zr6;9vFh?#oT)Gz4L@Z~uFbvs8!VM-4MElCLDJ#P zbsRkB$|Ch(7MTpnf5l+3=8$Q&ZO|AiKba4T_#S3KK=v!qYvygR?E3wlavM;Bai;o+ zGp#JtL7IIthbKf9^_qz)Q2MFvC%9i@dW+f3d%7adZITC$Xj5)6=j-2N(TYN!R9%!% zue_9P_dg0#-Po$2ZdvZm+s@aPex-QuUXD3nVclpIc7+zdY&5v`m;OG2P0_WcpBabu zHC~I0^Fa2Azqso7f$eEnrAZ^IG|6scT6ZilCaRY#G1xQ}amH0OQXK(}aq!RGpl)PH z<#?+Z^=^rr2k2niWIE7sb^H1SUN_Mt!FcpdwzU;)-s3gZRvWrhE0CXFFf%Q|lZz77 zN6!}gNJ?66#Jsrvz}RcOV>{+)Zb&i*EjgIl>L+9h1Xy zoHT#iVV+VRY(WSi#Zp~!0v@=45s**68-g%LbJR5&O0^kW8@?l=4aKj}ALFY*WH8c5 zk+lO5Ew%MWC2QIRQ7$qjxMn}sK#0H;*Bq>47+bg>rnVFbteci9p)B{HkZ!RpKWkhpoO-7e9d(D{qTPwYvY_k1(v`^Ap!UNJ!a?{z3x3UUHn)r z>`k1{YdUdn$G$meFsYR@b4Z z+0XGYpz_P6{hPU~#<-D`K!XoI*scEF2Jt)>gid$B=i~s4iQ}%7_&I+1L)3Yo9DNg5 zYwIX!EA9h6pFu|!+A{J9(*y44Wkf9Qki^@-Nx$2rFBD<40i`P&@MQYs6b);QNSt`$btaK^un=nN>4wKO?$xKo!It>&2-od6j# z7{q$Ymu=WN&JCS$+ zaPnxko4e+vHkH{c22-jM2kqSr#u{hW3oW{8R$!8C;S^;33G>-w$RS17lW{VSrTM4U zUNg!Ti&z&mgCK-SW}eD>|G;)16$RM{?;C$7=Z+jM)<~(EO8o7DOk4;Uf}Ars7&y&d z3uMWEc^Mgcrl6JG)iHtbhvdx%_ZLE)l+aR8xm!{I7ZktCMbfvH=4`yZUm0=p2Smxj^ulk|S})o;`wOsb z>=X84DdR)mDs2-aJ#Gn+yuJeA_}d!BY;-{i6Br@C@h8UY8q-^y(HVDdbI>rVLYO?( z`9AIpJtKFDv5Zj1lgpP$Bk)|hg6rHwR}MCTN!9)+om0ua7~eQEpK$#-87nLfft$8)lB$LTn`&O*|@zO_wx^~VQ%-L~*2 zmgqWz{dlKZofj?eE#{pRWmy`{wbM>uO5s&1f1@pG$56-+6&W;026&rg1JCYM!_TMa zNC_UN##EoZgpdndRg8Fkv`v3Sm>3IWa@q;mQ9C0)AS|0z*U|VN-|<6&PEwoC(1OQt zC8Ca;0gUi#lIOA3}+15lncrJWL<~VirhnpzfwI4f8ZhD1}4q znJgH~{4~gn6>E@UNPi&1QoTt|zr;IcUSG1bnT9c!WDSWLEAUe?OaQ)c>B~@=0xhXy z0Lj73f!BxesJ|$)7aL}0ReeVGAg<`}w!>p~rv~9ih(msrmGm5pLdD!_WM7wu%|S2@ zX@j(`Y@%-<6G2do{C3b%nej1*60EfzYB?Zo`h*iA?N)|xA3|XkWT#p?P1M~EasIR~ zGdBL%2j6iNP|7KgR#9-A9IC8brVrArrS4NDv(Zd7!-G7DZ-bV1Adxd<_Uywh7Qoj; z2sBk4t08?g+t_SMg^7!6h%w}l72l++elhHTFdEn=ATBmS(ej6!6P%q1oSvv*3ooY1 zSR)l&mQmSmlKNpU&sRzVpoc%Di7Tgd+T9Ac=ucBgrF;mz5(a~x@F_dPa5q9n9hHoA zZjmUJ&CUmKJBwdSd%OZsmhpmmiVTfFz zC5ww4s-${|#G20Zo)Ncx)fX2u^OD21Vdf2g6ayT8eq{J_K;w|DDC)bOwV51PUHSkQ zL#k$eeAebVz=U7APxKkkOA53Irn0%8rNHA-oZEprNu<~P1{MGOHhOlZ; zf+}oXS=VXPQ}ZmNj(`_NAS=m60-Su@8soFpn~$SwYZMHr4)MXBJ|!tC_@^AY!opbv zY9U)5{hKdiiN7LvdgtNshN7y&7Y4ghYKJrw+5+R(B}ccwKv2Cv=Splk^ULwH6?%>| z*#tC|aDdj>IKcPGUWbVETD8&VPD#NbT9`gDFXhDEf>6lg=oD>ju9z~?I)ZgD<}?h% z`?}OWfZjV@avkBDwT*VKqbc5G0*Ss!DJhxmS($5?o1TA?_~g?WThx+kL|J}&y@yG% z5) z@s3i)B?};TE0n|&XkfRWDlCqzB>*Z)AxhXop_G*n;%X0kl~O{$xn%2TZgq5_0crUY zrsO?{5vd(HOq!lk{erN7sx88M0@OVl0#9Ho?$YlboH0+O=u;-(UeE zD~r2YW35FrV|-uzZ6e53qu8$SpmD=oEYfm*jjZi-6(#E;sEG2~8piHs)Dh|0ecnX{6pX zsnGr`@u>A~Q{AG;jv6 zSCvIqWW4aCl#CD%1d9#ml)IgQQ*GH<#`Z5TI*B#i=zXqn=8)|6!ZukJB3V29gw60q z0(PjG+xDFBC;jwYqNY5Ik?n7$fhzxhz;xIJNzp)>I55nyCTu+ zp+mfAz5&TGKlajE3$X>H`NWKsE6B_xNhzZR(VL@V-D}CC<*%{k1$T17Ia<9=+zeT67X*BN)JhHGU}o~LmKo5*s63?bX`$E3-zfQ8yc_*H*x zD@Ul2mpVkKiWT8@7W(OUX=&J!fkv<^z?AwV;TVWLjZ)T6C%?4IOdekN6oUk)2ybg! zaM_Re4jJXP;qof87*!leB$5HXq@sR{hS}XV&#yS> z>n0qBItjEQaHN)2t%DyM!pu;K`dLvky2c5G8Q&TYEj2_mhtv7eT(n=&3}dOVoFL@KeYie(DQ>z*b0!+{H9MLDR%R9lxujG8I=TVItB;Q6tj6a> zNs-O!d^JBSzCQdj2jEPDO;|_YXSg?(@ph>U1bBgVl&WSk4)u?|GpL+q-D9X)yt(c- ziz$^Xf@rI%I(+2NbsbKa@h0xrcK=RQ8% zK<;d4nYCY9HTBt$)N!ENl%aqai9ZN05t|WALHnzN?b#B3l^-pZ2Q;XaG?apjBS)#J zC3K^=<>*=mBz?Hsc6+wJJMD;8c;YvwN_(qoysl3NH?-`$F1fcYDIn8sgz`KNG)v&2 zveSb)cVkWkt&AS3umv?;@TThl+NZ1iBaf_5NtMnRVIANRqq;Wx!@u^D4YdDm zDBB7J4liO14kI}#h83tH_{+OPnl6)ssvzIY0g{kPZFs3x059ar$>Dwj+CY6Gg zxzc5=S{AMVx4Sr%Q{RIy7tV~I{oPB6Y7vBJx!UwD^={pNbi==7NgnJ)5-)4D8yZFWF()f&{KF+L$MyrYWNB}6J83wLU@G&(F7sM8R- zsysigE#>5tOn1NrnLPceg+~o}jR)Z$hV8k9S?k7tuWwSGE=K)3k)?)99Css2E|K2> zA8BLOyz$7VEt0tNNdCnMe`a8{ar=G5U2$u}IE*iah5zn>)z=XWoUw>b#&F_g>3VLG z{>AXDFQ>SE%X%2wi{=(ClE$k0DsS;1$;8M=vFwrz%rn!2@Fbj-kP<1aDegdl>u6*itdGAwY z*(EWt8?zrCevre);D;5FnDRUAAsN9h^B2e>4qG5F?vvTpYE{xi#5nLJ<71-CQGZ~z zs*G~>hs(_xLDm>k1;B-htmAzsq}gSCwKJZijpKY2CQDMVfXb*_;-QzoFQ%7~&~Zcg zb4<>%HC|z6qi<0}Az)F{Ks)DNLEnitfZ{;~4`a!bU9Bt%WK5;fY(lVCmu{d>Q4;$U z*KdCD8cv&*e{WQ|#Al!^2#HJG=0xsTDd+27hP+v(h>ty}&@;p+k8trd9;ru=? zu>2iPQA0$iR;d*H(p0pTTd}NG#oKVi&UwDi?6avZX~2$nK63HJ_yw!n%7hIn`33f? zwu_L(Nd2jG$NGvV_#7@i1p=poXcZQI91?|6ntx-@NVjqc+oSMps8Fafh(wp4bM3-LBJ7{w2-CCGt8NhO|K2r4=I>ezDn)1 zad5>UFz2%lL0FDQFI7cg%HTiiZuGJl4USH5ez0r{PUkUvD9Vqg%4kyU{Td=0H!t0| z!KDP~hnErKmo&cbGc|Cw69-E5ckwLC(H#7JEG=p1gb8E!#5})-*m$V{+jNQ~W2Yr*$KLPp|fW!)s4VE9JzTcfbL{QP|+xBdYHb^uW*b`hNgRK(xOa^lK;A-zR#Pd3i8g&0^X* zVls%_e*Y}ov#w!DaU!TP?NsbzC1T^KQTUVNO>nb# z_KGIcM*aP`1eHBInC-gNh=>0!71a>Ck6-B-fUF+umlqA$2s92hbEYM|vHu=P*3#eJ z1H&)Zffd6UZ(FFP6PJpb9z@9h3`m_#UA6_wHEGG?RyGWp!%_d}Q4oU8G=mS}ohx6t zP@oNLZ;kK>Ah3Eoc&67dMu#0$N7U<&(p5m*5~&>wn-UTIkrhEOO?E}v=HW-xviW3v zcvuOypMvWUP#PRSfJ(S_v_*HB$#HLE_qD|o_X>EV2ov_dRF7L#d|@Ym-C{jnyn9JX zC`(N>^XHB)I#ChCn5@Fb?W8^e`@F|`T&(P7GsMnqF7K9bHNOWy5WW3*)0bR}??)}OUUnHowDzH0x6#!;fr%^2PVu8jR+=)f~dx%((?YLz%H zX5~hStZ6HX4m09GuCPbXySFLx880Z-U*zr?K)12on7;9JXYOYNDs|II+Ij|P(KGLZ z=kL_i)nj~5=U$NTpE<8_4VAKyu+pLENa|b8~aX?4a+e$V3Fr;72GDKm$sZ8YttAo!`=5d zDMSfoiScm`np{MvJ1QZ=PGn)$obx?sql`o~A?wZD@nKOr%xao4Orr|Kgy$RAt89S# zd98bKv7u(I;=y zi0h}m$WMlXHa6mB3myvDnAZCHspFmjGr4a@f!n{I0VQfj_Qn+=+k6`*IKYZ$0Qx0f z_kdPD8=uL^8(_xyO!660IcbUj>_(jK=2a$VCWWP_Kk`CW&1ZcBS?{%MHAQ4PM5|Ee zfhUtxtT9hDnG*S*;HiIGVheM=(*WphM7)M+DDCq@&-hsRb-jiNPm_d$>C{v>)eVde0s+Mwvw)) zR=w$Jd69)?j?s#TnU;V>oGqCbJXh<4a*4Wq6AXxo(bQZzSSo^ zfnY1E$nix(GIYK2u9%h-(zd&v>f<`93b@G4z9s3!`HIEK6Aq^nn^4Nghb}uI_ljQo zr;1V`-6@F_n^>gg*%XJRUNGP3Y?;g!hxJ-sd+gVTnM8*{GVbHM8OFt1mcn--A7T?Y zhI8v&%ByvZ=%gv)dC1Goi`i$G)Za&DgQ&q6c;ea)IZofHCv((w?(-L&hE}1ZR&9%= z@q@+1=q%u=<ePSwU+zFOxg62H40v)7wbHhS~DEA3?x)va8f>>>IC z(rVnl!Op#t7kG<0`uuk`fnvb`2rkr(XOvuFOntd!aX7CJXhQ?PCeP*m$E5*RHp*VP z80vIdh?xy`cYhLXAa#>A@$xxrWDd2YFn2%od;8?9dDb_3T2_KMpy?ufgM`F(q zK_WFuNkW(3Pd%ruOgZ?j7n>cz^}3K%VNGe{NL9_ujQe#KaN>I!2}8JX{}Y7-Z4V*V zw@##>=sN&iSCSfUSEY$|{!lQcMgsZ7=N;f7IgXv4t^tOOZHv9k+lB{T^Kx11r2 zXH~CM38=~)kl^^Y$%5eEk}L9u@s>7AR#}eYGYpl2mz;1hStXpKZCtjBVk2F)(`z6* z#uV7i{=ezrW_QQ#)$o<;`w=O~kOU+wX{-PHihwr_g6qV(N$HZs8(TKDX|?ULen0Ct zMnmc#O~`L(9wSv6*P%}u-Nid6n~^-S?A;%0fC~Mg$P4A}KVa(vs^Y5iE@CAk6aZsLb01JywMB^4`$>Y6Zx+<$!0gu85lI0g=GB`yt2RkU+ z{0>N0cxU3?llo$RKOq_$T3vK0o?iCM@@zxr-z4LU|E7=$12IK9NO$0aVjLtr>CFba zu-nsh*EaOK4G8Yge}~X(&+0(f=LN3`_lW;;(C+hptzQ}v;BvY1R0rqym=-PeHb9km z)7CVh{vKD*^yy4@SJQ${qQQ4Gm*}{s?c9PZErqgSU)GRe6vWP9QXPb32E#{aU_U|L z7{{QCkUg>;tCiT4{D9TWX61oL02=?!waT=iv7M&||DGsVK{omR5GfjIZdu41ILg?I z#q*I^1j)B8nrC|GPQE8(LGbIA{L=Xj{Rw9@U6jUtsLSO|Ck!957% z$3`^R&;Yjs0*>3Cz84m&z*!i2ZCpOm72*CmR7WJ)tjd^xq)em)@;(E2Mf!HbX>$Hc zZHXZtooF%$wrB9=3iX_$sb z=>jf?fmzm}+eowvHAa9Y1lf+DSV}V>Zq&-)WLPIrx?ZaD-Elja8PYAm1*!8G*ntm9 z8D}T=ehp6sh8oTn=~jA&cRQ0*_$k}Q9|=BsojNLy-|NmV-6}7Z#!Q76K?#y=2;EiV z53Bpe!fnWfM~O(-D`V+^g1$ec>PjyE^NXuvJkQT?*Z*`Vk;&W{Fmv>C(o$+sr zuU`@#c`;|>HPUAO=M%s`=QWiSMT{gxxS~w?pEY>OkgSHgK`*Kim(}o<-zQISNbzGi zuF;sp#Of<=m)`sx%M{-8-Dr^;_1te;9Osm(s0XZ$K}T$JB^&HI8bf1vGfqQ{&pi^{+b6|?gC_O#O&i>|1mN^u(uN1RQW@40RjeLsp@T^mG}lu~O< z18@8{u1aJXr3xkCBRee?NK#K1A83(d)r6fKd!!GwY7*uD=RdF(Nn(zOYY63Dj~o}r z12R{i!5b6^2Ikb(c@=!IoQ01A2L`nd+e#Ff1>p4?vek`kocK{#XNI#^M=24cq6T00 z@8808v$VMfH8FX#kCLRf#jp>iG}y_TI7ylw&{hteV{6rqI9TzRd3czO@?*%9r5!G2 z{Q9|;vahu5csQ(^aPIR(J%l?tVKE41)O&lDhdf^X8m1&G)CfD2B4E_}8K5wb=W(qA zq*6TKK}8fee-xt2g_1uNmc5IOTPTVRk5jCO-2L?+NWFru+27AYi1u(M)bn%dAh!5v zAv^3Eh7Kofp4@AHUmc|RFfnH&Y)Z{D%JbwJtN9~HULBR2U3uc)&V>G-x|FbhF!$xp zaP7IVlI$3L-K>uvvC#T@wvmUhOCxXb&7Se+y(JRSQFWA~LM zQTUyPa#<<$)xMiUc;F^$y-bvuDbD2i!fO@t3GG<=@T4nwFD`yaXp*>H=4j3Z)zy{2 zAP>VJNKtIX*$+9VP8@Ep#2YKD_Y+?BSV&DhLSr+ug|ph;<)C9?RUiqRrlLRkw&lo^ zyo*tj>eV$T&zMOkHUlYR_|`uIcyfXge!=x`m=k6P$a2qNP{%0XO0fDWdY-W<=&`OG zhCCF9Le$FTc?85UvKRF+P2gobD{IjdUekNGbC_Ur%XN0tW}NhV2MT4iA&JJRsbsX-Pc_B+g*xTea&1Vo>C{Oc)tk9rwlM zamGM3mpBn2&;b{WNn-L00Q=FMM>KQ~FU0|bozp#MGgjo8%BYf5^PN-4Y9R8^xYTrc z&ndiD|2pi=wj?BXTZvIwK~4OrNh(ErL7u2 z1jRgBX>Q}XT>w4E%a$s8!Sx^$&U>t?cAC_QEnT3AB*Ut~>T~jnj@A;BM`V>DdPDyx zSzFju38O-%)11f_zNrn=x?m#}n(COIddctJZN0LqqSb?vpiWJ!rvTh0SCIEQJ(Tv! z8Z>L;cKO2+UK9(XV8k;^+K`0j5D_8>?=B*Sk8}vUAvo+W!p}4jYN2*RN8+Cv%a3_D z5Hs|59-)&e-`*NIz(n^bLO@!AC8lDjQSkiM4wfK3x2j`aFr$GPZL6D%RINnIS={1te3HC9RPJ+Y@Rc7E z5;_n6HEWk^j7!`XWVhPFb{t*e{PZ^6aIB*ZGkyuz@y^pPeHx{S?G^A4ZWAv;Q+46r z*X{2A$qA$J!<%!;EZyTGCEgS=^L@XjpNwS=$dvqQ*~`cy@sTupasm&XbVFp zADG=6=gAgZYllvA_xl26VUkxClQ13q7o;tr20cmZC?JMoB(O=+M}PXRFZ6J6J;DM4 zFGBrg*ou)bHDmu}@hi~@6BCHXb*YbH!YDO$@=W7-b}vg0}cDnJ!1Zo=iM*TEg4GJ(z=uvv{hr#(5Uu%6K;4_34d zNSvj}+Ye9dae``Uf&L0gPd@wKr%MILeY-Vrg|QqL;nKa%lQ&(9%4+uH)dHdb;=OhH zFP^Y4OXQ{3PyojHWuaQe|89x;yL)2%+En5!pb%$0h{BDXJEHO<&5E|SIus;FmCa}U zSsknd^YSua3z47;v=n8Y6xk;1ThU7m%iT?& z{OE$ayT`l9lQVNkSzv)p*yC3xvd)oDp?Md>>a$=wN-)J1b54gh_EK!R;2)>+#wUb% z!7VZKeCTA|rq-?Z=h4B`?Xt~hz)W#xGb-2ei1U;$?nR@8Gl^B(%6(qY{_M-NLK(QC zH5cB(Hkkt}nn4G%KbfQ4Je^w?*?-+{1M5-98&Z4~bKB&OJ*VtrMO`050+!|{`j!5) zwf#;SNtvYvgg2sVrIF}yPW4u*XL?oTb#>5nq;F7onVRLQq2d40vHUan+$DpD&^++( z);Cx~OkfoH)3Wk>0lWKpqhItn#*TfC5jS^u-FJ9BXO80NP{=jLNCs%{U+BAicU}5@kbh;7s7& z&3I~SF&W0L&H|D#%S*$NR$V@+scWA7=ENYN1_s4l~XtVl!W( zS}=D4YIuxbWb$uA;kV)jw+9v7QBk)VeAG{wOjLt|Bz|BoIwm{=1b;OMSS!jlsMBb& zOZOYr5Bi0!@}@VdiKf;3b zmcRWv`X+v#9zQ`2>0)ip*H!{KcV5X6Pmp!4I5P^u%1lZMV>PSkC56)Ior1Z z^Fhq6uaJmC;9N%q{(Kh9RFMA+FpKb@3V29hKshE9MUa5mPxpET1Z%c5at7jqG6s!A zY&+>B`Qi3QJb+XDug%>=s%mYlMrQ&o#pX~i&l)VeL)rAcz1Vq9;|ulOo1wS8XFMo+ zc6K&3e5JO|TH|c4r`?veDj+Hg5l*1t@^YJ_2efeXq-V0YlH&B1>gSofuX?XOh#M~G z;cKZ%xAJm-{wF6^-HwG#(i*eJkx!^aUIhNkxL$@p%#*#C5R>W-#EF)II~?b0yqa zC>hUM^`Os_NB9*fWE^C{$=gQA<4oJZ(Kv)v&Q z5DA6@SvHn_;N|=JFufIZ4}z)+s_&@~ujEd1b2l@ipCjjKR-Y z2AgOxWlX-^pKU)j>A=iD7P)1|-;sXNTb2+$na$q`f^)gj^aGnq8_D9r=$>(M-CWc& zY2s9WdPqKG#QkpzqH^f^eb(@B{pFQ_FT>(jo;qQsP3r#%^FZ2qZf0@@%YL`QnC z{PxSq$ub+_WGOuQ3@G(yb?hyB@6Wb-lPvRJe;oCH+W96UPpkA8bZXl)$HoZyYcOkiLM;4q35Iq=jdd zSu+smi zJb4rLp~Ngffanp`959R&&dFDchrVHYy(S9KOpP>Ae@qPU7WcAcFUb1cW6X_U@zJqj zxx93n@0|@JIOvHqL$4!x7Gs}7AsqT!{aK}>y z_d?}?#=#wT<8rzG+tXli8s%jKOVNZK1hJH>YRpB>fF5|GWkQu zuNCCujb`OqTTyKpj+kI8DG7|sJ6V1O1x%#_j@511o9<7BEzKPr@L~zNaRdp$xFm4> z{4gtdwUcG`V#Kn15&orLdkB(FMjU>ux>Eb|%}TYQH_Mq@TNdp3l1*vIC7VXrhQ-|jskF19G1D~-MT^0Z$w2p(HMg}cu<|9Jl1O71#HU<%Z)UboRK6MK{8@}OHi3l1 z-xGM_vo0&^r6;RA#(_7PlVr4rsl3%!Ql3U_ObO!9pFJVnNDnI!J!) zS>u>dZCpA9cbq-F(RT*KjquBx-~4)3JIf-_;kVH_~7MJz?TxIj*5wFi6WS zU@}Cv;?C9Tgzn{5_`gsJQ!@ANMpGUWb5?$PXr2oW+MOMYIHvu8atrvN8BDqe7-*gQ zRbDhL9@CSV&)cr(C5^CElb9nCUT}EHk8|i54?hh}ez5m0_Q)^`$evGy@`>~~I9_o4 z;73{C>fvWBIsbit{R}we_}L17>SauZKhtno{>|^8<_AC4dJhE#sx|*JU^24pLC&E3 zMi1&EV~k5i)GC2Q&h?r?m)rvh{(Q3JMbUvqNf_e_61V)V_~`m8)M>XEpA7aSf63+c z=JSli6tu$?W%e@dgTHqzt?)CCCaAXRIhRz{p!#%Xs*u?Q8l4Q^i@WkT4U#CfXE&vC zQXPFSa={%<_(-3x;7`V6qR!>2P6zF;*MaR+oR#tm-4hx%go8#ZW{Q`Scf0Mu!@Gw675(r-=XLF5^b>GuqvW_$+R zY_dJ!)^(BJy?F+lIbl38r91;(JNLF-z&r!``-E;9%e+ofdfc>a-ek;8j&AYCHskM% zGB9LECpq?U16hxhSw<5-R1O$oO4wB4S`Fc)-izhw~NZp3;Ai{?zw?{hnl}2}Dpt)!0eZd}7tk)Uowc>OBVCM%LUyMS5s24y?wshgrz4I%llZ}MZTHcW& zwEmuc>a$Iez7bWrxE{Z+p63%y5u@{?oe=HDxqYJIH;BZ*)LuGt38zfebhZbv+4T4Y zecw@EGA|7sMg!H5RjBolaXca=k7A($;gJwoJVeMW2ig!BRT{Q+H z^FR@3Uq*V{*peHdG%b|R4}$_Z8i=u>JUs2aB-qY9s4BiAm59-Or*y3NoyS!RY7QO* z&T*-zjvdtehTRw)A8?DYh0R@mg{3>7V4{2v8x3tYbO0PtMyw`={YX@= zsG3;^|I(~%vk3U8!5TM@Tic#>b3#BCR1f|T`1C%+R()VrE1Zw;-9XZs5@}cVl{jNL z%@aQYA^;s~E`EdO{zLZ}V5xNzxZ)#XWY73M5Ts^8nGd0z?sXmIXIY(@2|MB3?z|>n z;Pkw}`CTlxSv)q1T@*VdjXTiUxSfu?I@1$%BC{{tz#Em`0)IV7>|xE0^AWFae@mRT z{D^H7{=|B&`ga{E>ylOAvVC(o^*w!+WLtxBI|*660I$hqnf_$!lFOoFL4<4TS$oRC zP>;alKmq`|KbfnbeOV%Om?!UVCHksm4*s{98Oza;Y9068#ifAN>@sZeMYk3lL0O8B zMbR=7wA<6PrG6yO-b#EiWZ(-mODd{F5C{UO_@;eQ~-*8c@5JUQ<4!vp;sp-Jb;_n*g0cfy{#BGF>-=A(umMutW@>(zy}qJp?OXIV$DsHf7}6*(B=7>rw|7Z4N* z;O~r+4<3Y0ynYeA>Z*E-x}xtHYjZGC~ z@Vjg;o%ZtB-t*m*QQPHYVJ)%_uss7}_L-kXR%lV(_B>fgtAJTA@9Y_4-_ceY_`|7c zCq6SR$*0L&zfOKolh7H~xX|%K+k;i|OJ&D*n{qL@fBf(aAkHP9zwb_hDvq}i<~#$S zu0@~kxqtV=@FspeEZJIeNVpnijX!W_qZR=5Lba3q4%R$R5~i9Z?ctli*emln$}Qk6 z)9o^X2W#cdEB7`C>_YTc+r!Pj0_ox}mxfX=q2y8SY!ApMA7{!tNozJRh}QDJn-K$U zPzGZ9)Q2SiE3a|*5%mqusz=G^5I&tgGLB9K(#bd94tq2?HF$380VXcJc#8@rLLDkP zVyJGjG5ppc$$SZnZxvb-EA%d9W7ezk&I|=S9(#BUQ`xeKi442OoWqtWf?SuT(znLEHJF}7qo z)?z5dz?68AqwetPy~JF|aZdal<4u-D0jJ#&Y;9KKEU_x-$%?eiZvHNjawhRK>okk~ zn^L-Cx&?K5wfnv#u9CDkc^VVXu{f@wQaFnwuA?OG1k&f;!KJv-nzx9Qk?0$j+1r#8 z;FbbQp8{Sb@%KklOA{t$iR=dxQ!1Tk)6KQlSirG?93c23YH7A%AO<|v!q0RhyOPbi z`mpyQ;Lk}`R&pA|6Ws2ywO^XlGz^3=$z?W6J1|Uf7N?m zQ5ks;8Vams%I7r*84($m6nm;%(kqsOxRY5*||0Y!_iFLp%u`XDW;n`RDm~x1{OLpBg zIcme!%FWOv4}zlV`EQf|@+&dX@*SQDbBXp^x7@BJ{7r&yM9uFQ!qn~@y(TnM$?$T{ zT7PVeI`)?4pMmm01IIpYgPFU(qdU$$1GK|lE^pJ81bN|o%JOiQw-jC(%x0N>^A*~X zwClC6rQ29{pDPnBlNSR)uiCQ<0d%szW#voXf9cL)n{8}MB9!jj`rre+dKhivsT3og{VD z=9<~cboqe1?{g@#hvDe7dEN=LDz5sh@=%u2akHbD?On;z+rGcEuCMcm5w|;hXG=jk zfFOZPIGUd;vNmkDbtcQ_L-u5y{~}A;9PC#6yVDR70L=w|CZPuuFRe(M+h_llb0s@w zMLJwg!;WSWF}x2y$2&CqugD4q~Q3;2hx1jTHHU?y?JxTlx2x*+iKcf)YEX$50{Q+W;kQk z^K$Oc4KH+7{EV|EUlWRl(Y#Q(RX!99`PKt1^^- z1rZQ#1l*dJzz_ufWj+J;vpcek{al_@QxtM6(8wglGgM>;@uPs6L*$l9JV2+9=BUD} z*a$pOZtgK6hS4nPf}H6%32?=C!LgrCQX5}K2m;!HsLsC;iBPfz?)dhkT}{Tb3JHA2 zei}*jzheuba6pD5IZY*DwWgOUH4EU-@u-DW2SMWoV&EAA8pHzSaZLgJ{S?lhl7G$6 zhy9R~NB*O)C;rj>wf?g{@S=bITZhJoQy}TUIfeFfE5*Z60|SPYI!GmJl<3+`3gGhI z<*$NQrhZ@x10W!PV&RCeqBJ!CMh3$F!jpx3hoJ^w`_M7xq*%bm&8aX; zx06gl2+35#lp?{Rg;0oe5AD7^+dwQ*hF45slLs)>D4x=TN@`q|FQzc7fI3pcG0&Uw zRH9^!$6L&>R)a;d3BP=FOMXoree6ep0BAW53hHtu(!fB0nNvceIIQW?T^=aDX)Sj}G3no45 zywq56tR{+j;Avu_thjmNqn~9R=sI?m*nd<>YdTHq;@^LSB3pkxnPC+(FciX_x@ zg?HiD(SLK(U1s4P)0(TJQ5CXmJF%h_`5DhcndK~@&mb*6CDKGA3#0*kUzfGq)llOX4}*ZN=P#M17yB_RhOmzap5~}Nw)f~U5qSk6s=g z+)dH{Wbu{vuwIOBZt^g$3Yp;SnWJD*;)V-67#`J^-rwzZ=9+BHa+#$1<`!Ga*@5K~ z(N020n3CS&HOt{a+uC5MJi;fHLTvc8wR;sV>hB=MswRlueAqUFb8?7yd>E^g<|S1a zPi`e2_Q+<~MgmXn5oOKCq0?so^7dkQ*r4RJ&e?j@#U!VfiudKy@wUXO*K5(WumRfZ zEYCjQ)w}Wfpzik%Bmf~83Ac3r$5(EiZ#q93xr^@$VdVk{Xqxk5 z0|c8RuNvQUDqvgPXFw)D=w%FIu$D*2G19lS#N8$Z3$|wawB2IpH@z%ya7H^Hp zPK4XPS%~ioXM_BU;JGGxA7rLFx<1F`e`_KqIG{zUvp9rR^nujfJP+Pkm5E*N^`vF} zsSOwX^#++#pq7OT?_WXW#w%}Ht(&i3GSa~wO1&VY3=u` zL5n1lZO?!&R-~*fxqmW*{*__ zBDPH3$N_O(PR`O&;Bv_=VaFuh94p(nh=m*O^nDBL;A(W#k(nmd1hj_1`6}#~k|n>R z?=1=oPp^pHVMd1m@zSSq*<7juvu8l`AGL6G`;Xeg%;&53nAl-YILg||^gW?i;lW$Z zgD^@1kq1dDY=k9XU+;ay30#+YV!F>ri>=Xq5MK8e2wzWoAUbEMr`zZKMa0Z;Kl5h* z=EBPDHPK~FL@6p4KDN{-F)R}ILelPhXqgRJwB!xiIm0I@lXy zz2)^O(}Otl7Ih-dp2R~Z^lgYRSSOeY*$`RHAjN2#n_!>+!)hDuj(hAfD55u8j-L2s zI9Z3@5emy=hx?7npGwWwHX?P^SggD4wM#VdQcBUIfvV2El;A)e1`%DAu~P*xE;n)G zdqky}#lmMmgfH%{AXme^+EYm(%DtxG023)DJ=cmlrBMi+`^N>|$dF}iGWr|69MH(d z(r>HAA8j?E2S3-w)wC)aG^4^v(4GP9!Xpx5c4fR%tuQ+C-L52pAHsb^iPalq-x_)M zDx#y0zctJWSqkPqVFms9$2q{_g1AczsFAh?$yR&QCOG<-RG6FZW3WF1OAH1-YC66D zlrOx9CEk<+sFL>bA56x7%k-FseXdVnPon-JU7r?>u4CWHHSs#=@A7%tr zO~V=pGe*U0=VxAm>Dcc>oO*pazpj~=z#jkppFv9Xa6z*%80EQ!+oZnVmZMUQviPwD z1ZYJ!{g-%-<*`WH@fDHwWjGU2wrKiBJaRPq>Cbq!;bEd@(nwwf;hY#4&bQ zb4rlB#6RsBu*P^Ybo#OBTc@Xq2QoihPxz36*d&|)h&x5`#;ul-??Xg02ftE2-RBlo z>9^Fun&VnwJD!H-Wr+A37_d~)>Co%*GEs%s6+f$R#xB}N_0d@lnm^=Q zF(=vPPPzqEht&{J7=oS%NfmtSi&GR3_cTtc6DBRQX%~L!i4tg%z+Ib|3f!$%95i!z z<%^ouWymj}Bc&*YARtDs#eTcq4Wu&KD3?mt1|_5;dK5}iX$nxFlTPqd{D^U{D8nGo?vJEw3dr9B@y3)`dj zT4V&kSYy2rCFIuv3P194nkTcPaFuy`no&&t_A<7dcy&?525X@ZAq3Fr4#Q#SZT3lO(Bp+R12-`?(~E zCx7g5#PBkG;VXhwPKB4~$)H;jm)Hli*>`ndsLJ$36H; z2-bO_tLZIh&F)0$Rk@noXU&Je;*TuGO#dJ*Z~X~N)5!xDE;z@R_L6%Njo%Cc|ASE0 znB?<(Xh)rvGheL>XP+CoQr6mYus6&_cH>q`WkYNy<%ONQb5^uAKx|gZ`)FPbnN$w) zdc}Em;E=^_hT$*hUn`h8MKt;g1J`mq>0o74scxl1uDMBN^7thRx7II)M9xv71d3GHcGOjzXsfjv0YsfiMs+;}sVRn4^SMghMSd&IKnD~6 zo4>q3(buU9IcvFUEmyhsPZJ0}5mdufJvrs_Fop;Y$h|dYGt$2z1GE_2A_D?c=C$

l}zNzGfxIEg^w(a#>G0 zEvAFe-3B!k!1_m;dk~ts5JJ02l5bgS5mTJ{9G?ZI>h!RWVcB2})N^>$DHT+dSex?} znyOYn1O1^&{)f~o2t#e0pKD#5_d3-65>1qlhz1;t#h$^^cW_Q*i^PhF*a7aPvQYK=FRP+4oFvbKu%4Yi4uVZ}M%Z3jw<02~&2 z@FTDDutviRK<^_+f0{YyY|A-GJTFT+av~uHgTq2edgrp8}Ck-V9X z*aMz*HKrbT;;W)}{3|+CkaVhb=IPxs)8EMw|J!6Wu0o+tXp`RVu6fG>35j`vDI{Ya z*Kbw(x0n}xsWaWurj1vF;4JUwd9^eAy@_){XZ!L^kls&|8FF9?@B17zRzd>X&-8D+ zzm4q7Gb2o1SK95R!<^V9p2D8XHYWGVOlHW2d-+xC(UpBS`CRj*Sno`QFU#U2>m{Xt zD*0=EeA}#$g#pF_pfXAYcY+4wT}ONntz2H(00J@)lQVqp$BokJOs!Ojjqw6RoT3>g z%+%u@1ED7Cw*`--`VL?q!nmGm-Y)}0VyX3-Dv6H}TEPV-_=)D&1k_?e8Cz<;Z>S_O z!VC1RH6Ls0q@0kV)Zj3Gl*19e6$ab`Ub)v+L|D57QGAV6WOT zFf#nd@PP7v!7$3W$ixHzYhs+j{oFl1qi}fu9+KLfPWwL(c8cl_?AKmA(YHMLB_ z0?fazol=HFT{TP%+3AXomjXmitABaS0kW~agQ>+_RFXnv3kY-~&cYT{qkv^o(_VTk zFkx%_2~+u(#wy%l^Ut`c0)D4V^>``Dn0A2VB+s#O@%TWFwm1b?3?@)8BT9xUT$S#i z7^wpl0qM?{Lw{lR(|9Ku@5sn+H)1A84%0zWiQ z;Zw#)p|<9(HeLNB1H++OA5+3OgI5bL%$^@_@r*WqvcZ+LMXiEyYJ`1NX2dL?Be?lu zUroDLGEU}c#D}Q=zzM15o|mA-xsG68ks~Dfef(qU9Y@@p36}Mh3yXRFOF&H;Vu&{- zdKTV=KKZ0!eN=2Lv{sd-Z!!KGDnR6TD%y}<@B=DHf>D%yr&%bs!;zShvezbGEw+vx z)esiLH`@zF>lCE%i+PVlzjN)86XokXAsL^mXk=7_CX7Flz+LRDKi%eNNHwFp2b1YU zaj9J@;C(~2^jAu522DG=PWTHrf}%u0!m&%9oQ62r%K8RVfSj`hBsFri;&Ve2D$W?H zQSmZJLv(68VM~v$XMJ}HhGY1rj1ya6cgWTOvw|>7_*s$t{H30KNM0#!1_dF4B#QB+{v zWWMq$HDTON&;M+KwxgdkzJ5PpSN+h>{E)+3I-~`-*CZXT<4YRCiav`LGzti0n~j_v zwD(VTT9V}5ul!U{{XM&GZO)jdGw7dclb=85yDgrO=E--5?`au9ZUlWmDfG#|)bJzw zR#MQ*NL^Zwb4x&^7^+zDaUs4F$W5ReK7mJo2o{p3Z)m&mT5Ea)TGp}rPWh<#E~#6Azi0Y*%c~1o`2*b>oypUDAv*82@a_m9=>1Wx9IZ1#7-~K)IdY@+ip-d zC?53q=c9^9hwSM?YKbY1!ReaG!v!s*QC%8R9_oO8xIN)xZC=3$ztWYG^fbH4Pn|q{ zud@Om3UCm_seqLdOJ4cRvfqpeDKN=qgnM|Z4y>9dJQPlzF}$(*x2uncohw+Awq0@0 z04oEJ$lG}GfpB5B+UZTz0)i2^$AcJj#4&x0lk3n2(%i-3Kh$rJ$op&!7BLDw9jmiK z)kt%grzLlZgR!@=N7TZw_PdFjW!Xi$*a<(xy#&xAIH<9Nkxa2{| z0wOh9BP9;z!OM+9eS-o)4Mk<;bJphl4PHID{3%V(^IDX_v9Wq$EpW|ABxWr{($4Ct z0lLGE@-e~82?nX6_uU`Ozk#C9p_8&!j*RS7J+DBEVnbo3)eBu2RkTqvM$t0kH=efKZKdNK|rZu^3cOh}3}u+r?+aQqph z)vi@5+wk>uCixb(W7CcBYHaLSWXXPSV|`2TnmLT=Jd@^2U=Q?Pftzyce)u4F?fPn> zPrPZ7Bf}Q`z`k21K!&2@LTI|e z@I0JgY>U1Kxfr5GMB{+!Ivc01{N_%q+;IAa&Bps#1)(7{2OqL}oJ<83}Any>Z4E0CybdrK9AbzpKF&jt`C9126XIzC6v3Kf9xXS=b)J^XUCZk!Zo zq2U9+fa)5I!Irw-l~7A=HL-KU@*eAqX?|qe_3uVaZIcWST-4uAyG`?c1;h>lO6a2# z6glI9RfRZFP|X@GFQQTR$*A?5Ri!Wa>en=}m@0sXaK{9FJ@N{0C=e;#bG=V@LLrxa z*iqK1U>}(y8ueGQ#nLE-K2Sn}QR;x;ejt-a=}+j#lbMqBfKsan=Yr+#*NesO;wAy* zf~V0hOz^J_$Q%Bdx~udIYr6zyOU_+md?IdTJk5^fws#x^BN}c}1Oj(6`BOHGwlh7X zbjvnIFj>Lx)FMe2&nV#t2afvT5Kl`2{PJ{kN+NmX8t1y;fXJ_ljkkWs5=ENRHvv(} zd&*?j=ijL#4x9@b!HlfD0h*YT3h;sJw=P;~L26Z-_P1aA_&~a`v8gT>M*=);AHo)Z zhCPhW08Uo)KeUekU$new&8chluVMErpKPWcEg1Dt6Y50DG1Pn2gjR-{?^;nizb)a6 z8T^aPD{%&6Z|_wOy)~@4tI3SG7MQUTgw@XHkvB&tGpt(3a&Qw1-YvqOB7FU%f?6oG z92DuVr9lZ!J7II>K-y@Q)G-{zwCEc8ZmKMC;248Kw?X1^9FS7rg^--!3~V*EaQ%u1T|F+jp+n|0z-k)#2)X(Dl{BM9Dn6QOUJcY7;Dmor%rk+Ws~3` zoM+xWb45*v+-s_ivlb=XS+y^5^?}TldQ!mHAe=2`alJX7-ho2y{c1Iy8lSHBGc?Zt z8bf)_XFzDHRdE1IK(xPOfe{W`#gm#%YTOf^ww_`GO32(20{ofZul!EN_%Z2EZpHkk z6z+;rak)>DN|CS_0Ca9V2_BnLw?5+<``^fLje#H2xXyS_{hixMUlgvYdK5}Yt7kwP zHlizh7_a??D-^Kp&+9<1xUXcl_GFiY=HFYksco>xa&-R;;L7Jl^?XvxdMrW@pfzauqs7CYPL|zXWOG%F%qzE>(;-72UalYrXFOol7`Ax$XF$dot@`@dhP^~D zp(wh?jvtZJl6H)SQ!OtZ&!_-K9{W!(=h%9#OqJC0u{&qUg_7p>{B6ehP{0%Dhpw63+fz_!4~;n9%~OLouHQ>O;Co+vmfc)+=Ls@AKT?6DD*e@^Wu}@b~l4G-u?fwY2GkT~c0D zPM@}4>BDH9MT`TiZk^_f4|LNh6b5B&R#g^iircr-DYoIQ4cA$tLBlqJs&G?rcN4c` zx1kvEfNfyLOf=^Q=7)Jj3}D>dBsF;DP?WVO-_)CT!%i7Vu!{ui0=FL;xC_ghm2c`m z=)^?}Pi};cbobiiRKzJjPicy^9<_n^TOdXSJgi_~5xi!+F>|pw98%;DTJl5y#zax! ztyTVKBnRejVLLJ7L_uAG|&&{=9`}&j*~(GkJjsW*iwP)(Qd>%C~m<{>*CeCP?D5))Y~&S;qc4X4cjLj)D*i{9jQ@P?6G!rmh>)remI2a zOX9D%gD4aBh4vCp`o5E$YPLmdukksoDdkRw#C`Lt`(=cpHLTyA>U2P(X}pk^Mx>+V zU17{wu)`{e$-*`?;DZzmyEI0jgm;mSrQ~8qSDei)=;DOUW$!A`@;rkeo-S}aZ=L#n z*%(^i`!v=WrUTr~KUFQ}MZ^id@eqT-_wnSAY9BzI(IN5_t`EQ34@3uexK2YT5S^^N zpmMu=Y|Hmj2J^W%!yank{8AYDU7>^LN`Z~MGuIP6+c96BGGQ2sV$8mJ92jh!e0QYr zTlWxkqVO|U_w+vZ3=8twq9uvDide0cigQwIo#HHh(9s_aV%Nm-b#r%g8)#(e$6SfA z2ZS-Or^K8oA}9bwC|w3tql)i}cFM8rc=V}HG-hQUScTw|mVS4pNP_uk0uaT#8O{$& zj8wK)D+B_R|11j=uY;{s^H}@My{qD@nh$5m> z*LncBhVM*9igtJ*kDpiehxiPzY=r}|sw%y^7)3@<{m^+H95~J7-_}L2l|7&-8+bUm zprq?*HVaNZc}@%fC9c0Nd-qv#;W3nOEvjb-1K@eMlvSHju;d+s~R-4sasWnzKDo-R`5L*0vN zGNED!TmvA@Bk`?Am>31H0GD3e7?A$9v%NJg)N~60`w|IPHx*I+#0BW1MyiT=b)`pb z7qqtfI~a_FYd#Xw!)`Gtds({OlfELJ(?X|>?q^>fk~qsiPd)@b>Q?o097O3d)ce40 z{jz-I@qMy|Go}Zb0vG))F(yo%zhSnUAIpdB7B9p&q<>+(y<8*+2+~|&U1+)KNqPCR zD!Ban$QgyPplQ}+egz1w{ukeAG1n|H$*MAVoCIT=|}G4--Z8SdRD7*^8jkBQvj0IpoLr70*VINskw zTXvvldW{;!^e&Ma=#?EVg+YrO6<&XotI*^Men+f>LMQj?^?SeByWwtNKQ1ZmRFBbY z!@96x`il13Ixy+rW?|f22*3npCVZ3^wc()OFqauHkEMzPcy;K;PNNHK zth*r+*nd=+x0`Lo?bEK~Q=G%XwQL0Fk{!E57V1*xmi8m2XrnNUgMBjS;C#tMgAhdO zp8gQ9YbDyk?g8$u{m`gcE~Nq{61+F$f#tE}Diym70VK%4`BVgijce$#9o)B)tBR`d z!&tfvsnxG4-Trceoel6|P>$7~4*TL(!ed%w?j(*_s%V{Gdumz->z&HI{i%~-`GC?xB*OLC)Fgf&CpoG_)@ZI-Xc`Ii(bEX>6)R#%YNCl zcsg=D!7W{992*rp^5x)=C-}8EK;^@#B%$KSNYo3iQsWh-)HnB0j}aqTQu{ofQk~EJ z%iqvOjYKHK7Ji;*3guy4iAgp}bsVytb3eYUIGpL&H-0gwE!%>6km~8OF;rn~5pT6D zRhL{E9f0rny~?)!LW4SYkEKoL;b-fj3L)M^^0S!c;TYPe@`TYKBTs5^DnSjhp9+HP zw+ct{&k`BW;(OfXNa<}J^4`}X`nnHT8~#$E_|6CP?dV}?{g{o0TN=`k;m0EhIt$KR z?B?*dkwQ)d7iln`yP1HV$&zlPlaD1_-qYrAVRX63X@ zA5_K|-J&ahK)q=2ZqcMaphv*jgRfu{1gDi4MLp!RR(;%aUY4?z*eY20%UD0i<8psL zcPhsg@V)msr+te9Tpi1$&Z9-wQo3$^QWRRi==&<@D9g@6sP>j@c8J@wVFn|vV?wq5 zYKE=eGy}H)r6)2M2&~fEl}4}L!M=QQ`gSRer0rNH?njR)wR5>LX5kVpKEG_m2WeCo zT!8~+P0ub!^uE`#J?YTJ3s!mPD~3B(=8IatwB*Z6!?7snlZ}AG)lFEpw%#vAkhL9a z#r=*6O^Mf#p&x{e35VE}QJ4E{9_)B9#fc^$! zf@BO%ax$TK3$plZ)hm2nvvO9|%66e>78xMu!!xHdFAuK@$&RJWm_~V?Cb8||8%14c z!#miQsj=+UEso~6iczz6{nT+M_HwwIZ4`h`@YUNxLr!WR{D7Of8ps>IjISp ztfs3V__{J|B&@aV7xeqOAyHO_zziA@8Y^TXt3Gw8T65ni^~_2iaMB_v=+u*G>g1eRke06}pTL zM?2E;_qT90HVQpl9!%|9i$bNq<)~YEGCi1&^6gW70E-z-y=Ri2AF(W>BjIiJ?j2b2 zcxB)srjxhrgz`j%KG*t)6*H@pg?33oi()hl3jjqJ+9htKE4iC|kFUxqXJfkZgR@0R zEUJ|Dtx6kXPeiOAAXNa7&Rg~I)L=qtf{mBTS8I6Ny0aX%BqWO#EYmZDy65jeMLoT8&zvt;gSfN@2yRjhz#o>Nqc=eYxHUJRM_4&h zzOW_5=7<`Wp(tbg2PnnC%KN5DwF@m7MG|kAJ6MH08!uczVo{N7JB*x8&hsNl&*JbE>r0t3uw)2~}x3Q}pIQC)i?S&{`WJI?_j7I6NDaIa)q*R9)(i zN?i7wnB?O7Bh{K2F;@(u?(MmrJJG5mI~@Ztn6$BpMv>X`XOhWvX4?y!6jU=cw5rbX zc;b4K&7bBqECM9cJXbIsw$kbXznB=uZOf39u438oO)}JTbq0-@2yrK=CXEtv~hb`VK{l+t_%JVb>Y(e+_1Ya2l3XP^e!ttwv~D=si1HFsMq|n9%sfw zSp3Ojht`F-koJ%CkCZriT9JX>mkk?IFCGY8#Mjyh|1+R)3v9&K*$J220t_aPKqiZh zEz3UQCj|}iQZIAaQ%EzzqirL74$NWECnpYWT?!IAelOG#C1HEHyxb+kPBHhP zq=jaF+3UM&c9wz{`+)KCwmH(IO{lEul~_afS>ukPT=J<=5&>-)eSd znTLl)vd)8<_TeGEW9+PXZG3>inTTMtPLz4;JXxZ9)faWveHr^ZCp~MUiDMD6x^6n! zEAx`MX7DF|RDwknpg#7q2gAxSIjQ%t9*eCbU%D+|=l*}-fq4`DPa02a@ zVaqS8QFleUNsD+`EIwLke=1iuQ?If%P4KUFkaFO-yyHf_jGN0t=_}A~leT;orNO0c zpCRJz3_xp5E4DW2`8adddDr#^z}O#J0?!YkZt?=$SyY^;`jF?akx!#>~{mPR$OfXRVIsLHOOv+H;9(OyH!(D=w+??uWYQ#CQY;iifv$2~Kno$=^ zwf%ZTxI1;(+QfHz@T0xmxdMp?91QrM322~p0vPe&{phl5sSG1dbxAd3OY&~_al?t8 z+Yz(a6YenclXb6>Gs28B6K&%iogd8h*`eN#I({6t$6SSizn=lM4)=F(>l74I7~Zxu zB`2QIZKk4mb!Lan0!9_;4eKZsMC(C-@~Yw-RtJP@zvv2?Yh@?5lh7BV-c63Av~TWN zgDvIjPY+}W@2@Xt&q#I%|Df&cvS>k#h68Ou6pS!4QjP6-?|brZ$4RuOTRVi0X*=7C zQHd2~@T!eWQaO_~Wz)aEPr}mEW@Yhl2CHW7jyD zX7zCU0cHT{I9DNzke{g=mEf5$9L>BkOE_BiiDj34!H5(`DXXb2h}KqP5R*F8y_?j# zLVG!7sad9oG|{}P??G2ZNdWqa^@9IucCx?P4WM$XAI@BK(Nae!nYC;R@ao6sXvcqp zyEhS<I0g33OZAH)b+5dsWAck6V^d$E*n$fXwMHPb=x-kda5N*(y) z7a9oLgY7B4)v2$;M*rYW%sD-*_mqSCYg)n=3J^UoydEIqTpVJ%6YH|3`6Yv@;Dlp= z-Q(^78ITUu4?5w8MNqycGIy$H!T+VR%UGme00`;ydDU!U6p7Cr?T1BbI>Fjwg`=yz zU3AxO8`V0wQmhex0iuTsC7%%XE#W*E$kv&j)z|wxI}S|Y z(3MMFM%ZKZ@-1qb&Ap(69{knWW{T1w7Sib_kIqOPJh^d0SG@EcmoC0e+eQ%_+qd=` z5ck~o<2FszU?~q)-e>-0Wv{LQN99We{KxjNjBzMpb5I{z`TTB#56W7aPlhPB>&JCI zGWe{%jw}gO&pS~PL21$n-Dwu#-hshRm(SU*vg*t9rh7<~e}a8srN%DbZ>uJ|c1k&x zXit$Ub*)-@J}&icoY}f|oxB`7xP-Z<8u-}MAY8a%dx@!Sn`zTz-|Y?>yM7d>EgSdm z@AKOXQI;f|!A8eljoH}*r$4-)No@3;+WX<|epZPLn;hisv|2YL+|V%#DEE|r-mfSt z4|)|o#h_6grIv>l!in|;!YCH9>XWrcR`dDvv2^*x)6e6B!=&%n;ObWINafPC0tt12 zsA;24VoIlP^+vqNGo}iLy%PtA(L#kxVs)0DspOE+wv#n4|5Rbcd3R4~pKqVL&FM#@ zwr)?V{eDg4a!Qd~&-t#{klfkRIL)5r^LukuNlJBIcZqEwb7Aes&k*EZ;f4F-Z6D+1 zPSCE;wKwOGSeQZt4@`!Z*bO0eU0cnXUZwK&jRk1s!{CxT1yU?~Wj=eK_Dx*K{ity5 zgl)!1MX{0n+|UPbP2A;e`sC>Dohue;sgVj1*`l~!o`g(^&!~^PYcT9l&0x+-ingcx zPB#2%WB1mqGh|^<+XTX<2g_c~M5&x(5+ZdAYpWg#x%nc~TH?{5r8!Z_6>_>CfB*-~ z_4L%aU8gh|eYPi-;?FuYWHkHd1~KVqeX$_jjJe$`Ix4FOIT+t(RQ+)o@_x2K4k__# zV#i2DuYihtXgVG>;Jg&{meR!EtMyEvg#zc29!Z;8A5ihRk>g8nw@%o-c~xwi04u+6 zw;`JvKr(g1%tROw;)Ng%X@x%7yzx&gNLtveM9)uwz+h`5Dz8yscwt248xN($H0W4@ zcbG1fd$LHJ(PH7mPA{z6OOrnOxB&MqgG1L(J%o~)CDPhDcT&fS`#x2W`y@k+bi4p zLx0@bdHkU@hhZNJbS4AB&i&R`AfKT<0JUOIgF1WiP1bLfq|CI|&_L!3FB+dfdqgm) z=+8%M*s@|#pDg*=b*G`)?SQCQ7;0(Rb6AO|+St8vt+xjBDg z`GkCq<^AaXxz}IYaZsIHP@{$b+j`;X;yu??1O)RNclADh%weRcpDNz%fSd2 zp!JMUylxb%K0-6&OgobPTbXgSNYnZ0M#kt^=53)FEf?HDq75Z{;rIryF}fpCz&t_R z`>qV9Ve$??k$?0$v}-uq^Su^n(ZdgSUz2-&LA9kt`BhpVGM81$+kQa*k^`r^nW)+i zUGaG`^zgH<`P5Zm;q^Cy!#c$eZb_Vab#09XPz zo&Z~}JUo|j8w$!G+TvITcqL8vm@W7OG(*{q%taq99G!+cj0EYOl}uxbFs)(0o^Dz&A<7_^2X<{(VaJFpQ9XQ~*e_nc`hF<~ z0VAy+)DIsT{nc^e9?w0#54hwSh0c!{R%)MVnDm*^L5Jp>DY}6o_Kt(|796XIdYpRG zvhK7DD|KP&iNci*{NSril;j1oB7FBSMaB1R(@!~PCtr9i#3$~PNSW_Xb>ljod_i~g zPpzhnY_rQs|&zFllExQQ04yZIjA z;JT>{4jOtgl4e_-Q)tV|8zwkTS$D>2C!?*D#9MWMV>g)(uDivPk2gXG_Jr>RzOXZ^ zF@5VYQpKEgt$Gl2KhQX(rW168prB?KOs}gbp=9t+v+I@17wh%0&(hWfZ}p&ZZgg^9 z+Bg?T`m+mOmFVn9dNfiP9+e&217d>YJ*cU zSEtvf*Ge`MjZ&?x9%APRb3(do-z+0j@f>u*!ry;%3t}zrZq?I6J$NPEqK<*xj->I2 zK#+lYKG~)p&8Zo}yPm@s#(J|;uw?^633}U+cEzYaYwI+Ql@H;|lo>R%5=)-F2-xHh zHA;^vCvTz4RUJjqsK9fS-R*DHJ*j~$KaN`_gZdw!p~BF;hy`Os#7P~M_t2vjEuK#7 zIMdu0u52*_(QqiqOjGR2tg9UXH1TlUk_`9gPjncM-y}LvwQ}2k3yBRDRh_+)=^r?< zohq?dh};tk@sbxA54!ruo_Mx->-WR~m&)nRx?3Ck4`XO^MVGWA(o2C-LA;^A9SLKuVBj|UCQ-M62*9QVaV28sK;!s;G^ zoOwT!hURLSJ8DhI3iG>GI$UK88L!ODuKlS+!nFk z(+SKSOd}JSSr#s2Bq%U2{8a3TVn{n9Y>2W4^JN23D>u74N{E2KPT(Q0uiC`X3rk9n zGi6sQ3y5rfnhT&62><}_tAX_U_FM|g$N5Wms=C3QRFZo?f;&;{Y$yP%G5`?3wV8r3 z+8++pbY^o@8>cOOt5om4RN`;5l|hU44$ut1KmE-Bs62lLhME32cCHOSEk!(0f3}*a zt;t~<^m62&U_~QgQ>&+YNMKFJ<3-^pj=+bfmYiW*gN^|tuIt}r&E=hgU>+ue3Z$2_=40jVsa%U`FOp;8=TWE5pfq&z)_ zGGg3!HG{NJ$qtf>DHrDTxHZRj)S2gm$5 zOLC^GLhk-2#EdT+COyc6DepoHU8?cO>fbn6v4P9K82E9KT+?w#uKH)*tRY!_}q` zAEHAwF z!bErvuQ7X9d}Jk0QzcA}g_JE} zs8Q)xf`+vNBo_!2Fz#gRF>L4BS=xOLSVQesfv~G5l!kLw`+?X2h;R(K!X?TS1NsZo zesU=5rV7ON38#qx-&osT zKeAp(P3HHyfLgpD8PSus z;$lvitXw@VRu`&n`$Dmu0UG2iaJG?T!`8L1Ei$V}Wl$=$ox96?wQ~O#j?S6-1(s^}f z3JrK`MjvM;^-G1^V*PlXWAwPl^dnvc5i`}s@t5Q}MH#H~mOKntA1<4}vyZW&JHiNb zR=2!fENQbXxLfmLSV^gciJOE?#YUEIdLU^1WA)&&-FnV(25fuUW$y<^?3Uq^nb1pE zR2gBfjtgY1rBmGlE=5+?AlB)_!^iPHj8QqxN<(JpAzwJ-tAeZ|stdp(m({NN49EDViPx){Ue#>L2ntV2ESt|E z<4acYrIfF<9uw=nGgc1UsrJ)?l?*D5j+U+~&#cuw>z{aR!q;ATlFQbfQ$sn+hw_SR za{1h3H2z+JMy9@6v4j-RWW5G$=_F)((o+i7%eCE6ZEsa=8<3`pm=B~sWtdGdH_NfL#7I*vF%ED)(;Z;#I<(PcdjasLCbXP3dy+fJMD?Vy8w=Hz-sx!hu3qGLQ6aC^5l)JjVnbNE%3B4t zB(*0e$8uPxcE1$V*`1*-G+ceOMk^n_E)zRe1VoY;15f>4`C^kN*3M%A6?y#I%7i){ zuprYdGShqu1ognXrzYR63~lbR%ni}T>VH^b)%L>BBIDgbI3qCti;!vs67Q`cFGi@x2Klc>m+ z8yVRSp2BUgj%r55*U1(mKGE-Uesn>CMTo){ z0+;>?P77}LfC1twH7j-%5L;gNBTYE%e)K+G!JVkE?1^v)Y1enlGJUJE4K87M*7nOh zBERRx7KpU?@Mq9_!F7(FOG07Ljfr@tQmM%?>@Cr%@> zBuxN)6IM0N(lMOwSFy-^hC*!^CyK8C#7(}tk7#rtm`85a zzp%;DS|=+*OO#bsCtbP!YO&NFWU?62DRhLf^K$YOF7o)rsLef^a-O|Bslxj>2(XAXSAsAtAp6aehR5!hLQ3UUXZ{s2L%uyk-Mv8 zTMG@M+hRm5;4uCVuBHrM&6n8aGEiUi)4YO9P;`9+3EQeG0tC9e!ZXfkR`h(7Dg9`| z&w%v4PcHN0P=P7wFxL~BuQvc@8!mY0qoTHFzOyK=FM4xkGmGpMy>@F-ICt-?^_=k3 zjv*%tk~a54QdIyj*?0rRfptM@Z^fE?a%Kj>Gmk9eX_&%H@f|K9u( zE;M>43>rVw;YSSb@uhQ+mA)T&U8dK6OivJR!p9Zk8Lg8PxCDkq0?*ZFJm0^!GW>4+ zx8l0riq%3ol#K9T?gDrb&9`F_|7_GG*t9ZywkhFE4R%lsbKRH;b&2+T@VxR{vthqi zo|HS=ZP{0-La^);dT54>Jb=_A`pQ%7%XfwNQnrqMJDgnoJzNu*(*n`==+HRIT#fyw zsZ0Dpqd9K1U=L{2_vjaW0ng$2Oe$O{duy{kVvG8|Z_E2g_Z$0P@l#Ta#XbHYj$uCp zp_CZ(M5nGp4z_+&5AtXyV;yu6Ja5W-5YZk+f-&X-{{pk~9kE zlG}O-x0gU&bJOufIqTHLyYG}VMTc4!tA?vZ6YoAPSJF-IvfxCTyC{DH00^&aI>ih> z&J4Lr7o&#TPtdEk#h|rJEMzaFG4#gy`&&&-+;I=1Z$}t!Xt*?tV8Mb>!N*nt^KWF8B36;{Q)YeaQctXrY{N! z6~^MOdyz7OKfX{LAE&YEdaKdlmiFvc<09pewsiJ0`)}n~JmDj7P-hE>P_wU(#px^| zce7D;u`Z$TQr?!a>RGr28CTYar|vIC<T& z;f|5sD9u!m#YBND}IJdUN%U_+~{ zPB;DA3p?U+D1N`JP$_{huz6dNIvYLoob64tj-H~cbDNM}&yT(EoEj8IxW~1ZX5o`h zvL7vm`%Imo?yhZh`aM4ujPuyVl^hfei`Ea>Iv zEvGi=?S)%g60eir+18yEw#-s~2>2}JjspWDg`p$iu{~5O2$dT0XhW~Ppy_uUXk6Ug zdPYc*>a{MpgSDf&ExAoYMW3fpXssQhBh*qJOd!ah8{%V^oRciFf9+m*F}JN4=PL!l zVew)|`weWKQiYkBAFQ%n^kbgp+mDMfb=~H*8Ev**xrw2p%X=!aRwU3qyO8!k`zTdh zLVrIQRhXab5WR<^>VO&eHsyKxN}^gOHyBgAS>QJWcl^yUiw){{@dNko98q*AV<24H z`wCnr#;Gz$+ShsSaX8=|4Bfgx;zkkuv|_mK8{vUDNM3bTR!Mo1D$6QnzZRMVaUamZ z1Qmwzpk*f6Jqzu{)KiAxbiO_Jpr>zf6+95>>yQDH##}4P`?dYJ-*zVVgYDCClL^{B z(*0OSY>QW|42$2Q@GB*o-VZhcpr);SO>1c39nv$Ld3)!@SK`dYEZj+O^vvY0?|azT zM3aooNKcFn9Ym8E11NgAD|oV_L8GK)^Ys~juaqlGEYLsA$BoMKB%3eOs7gKb)m;qy z0yW&9g*$rlxw%ivUh~ZoU@M1XU3TwWJL(;0~27^%w2KYXP1b`u&(j z4wA_ZLinjQp9|Ydby%YsvCedhFhFA2sf4nJ?>5U%{Haw$-Bn?@u2hgN;ls5d(xV7`aqH!PPMO&6G(y=R z#Qr(#@C4EB9D%t}ib&dNfr$HaQUTU ztaOqQe0S9fRz33A`jxhAI%lqpUmONwvGJDDY9n~8{t0W;nud+TH)D6)JaR~A4a<{o)0J|d$F1~4A_NBHdGOK`%1=kD&8p;)WqHLKcnw8P}V6^*#ma8F`O~#RJX+?L3I^Vxvd>g9wP2#1g3^zB}zImbp1hRA(}u(dawIi ztkLAOLp=gxx`A;q9M0}DlB+Lmzhs7@Eza^C?jTFQ>~zAIxP6KC`Q5mUYNKr!6wfl#pwBZtY{#^`45Az3M~x?2_;TZVi*C!D4o z6!JpJ7=|Fv_X4}BCQ>goWv`N>(ZZm_NVp~hB<$(!zN1A}b)xes&`!978$o1Co55t< zECP++>O>?CRE*m3G~<=;w+_Lit5+!Gje(6^m&Re8`C3-|=Tdlu{kvtP)BfF$dUZim zdo`z>qQ*yL?AFEsCN@#}E&Cy6Q}xAC_hl(0ad2}wv5+O)2HH3lk=N_{1TjwpUYxE@ zsz@mXAecD=+>iL|3I;NB8cj6E3rHmF>E=1xB7=f&K?j&os^?t=Wts#7QJSb|Sftyg zZ}-(BIYRl`$47y5jHr=PLNxng&(Fm14e+TXR1~miVJ?@_)%kpJggv>_vqP2#I&BZ) zUZlTmSte9~bP8Tm<^4#rpcrGbWw$X&9A;9hwZU+s(nLjIfHqED@;yv5ftqDCjTLaK zN2VHXt%3FUE|FcRVB=z+lzd&4u>zx#^4bwrO@-0)gxF>&04HP!v}{aaAkfL;sycpn zYHhv4QwZUiQ^4v0VK$==I(BkNamFHGuWI#m+Y_IY@$sKOjHQmspBdD8soabg>DWv` z2kPDH~d=DnK^>Aym^pW-53V&>G2u5JJ5itu_TUYJpq#ViVOgfc! z^k$5ntf7>sTeLwUoZZ4+>3%YK_YB+TG+&Iqw0TWB_CS{6#MU(S$wEpdVRrT&u&WnS z<(YG0XST7sb!|{od2&C0&#_g^e4b2Kua@7UECv+;q~$@a&24I2TdptHw;6r*T{!J^ z&5QL+m{(>bn0>+JP#B3Cx?ZoGzcxXpyguz#R(bHmCRMK4cOWSOr8b ziN#7Q2;KFc0UvZ|#H+?;&NQKjyQ_7Rwh_xE8&Q9(+t>Wqk_Wepj%#)S0QQ-paY6gp zAdHK-Gg^E1Jh&AaIeis3*2Je#P!NTFsC@>I)gwF)!#H(rO*G$~EcJExvj-fahHRAB0F{1^Vl@CY zzM{gJ>v^AH8`xFze!uK;9j7>!!4o3@$_-!xdtlT#*I8gGeBIfR*j=Gt>5gWkJpgb6 zI0`be^cd(YDv@^Os*_Ar<($lO*~bR}#jalJ&5c(;@0Q!NgsT(`#13MiI-L_VUufW- zhxH0&V2>|m^?2SHCmc`v%?4`%m$MaRGnSSFOpM2d`OM`Bl&U+o=`@TW41pr)j#}UC5#_rBbak61UW9>g&hWs?)QUm3Bt<;Ss(j(1 zmE%%QN_9^o{Mgw1ncxt;cT{OE!`UF^t>J+su!5Xy$uG0Un8R zjte8Z?6tvI3hoaE<`5t?j^kx+-Tfd{H+Fqj2h1*E4;AZR(ujVvsc2VPm}6HKb3Wg< zLC#c95B01GyZaToR<7phDtb~yGf$FDE0Gk4k(tk&CRUnIox%cQ9(xvYqPI35yD5xn zI^7Ph6RN9Rt<2ei+5-UdMj=8rxZ-Ff$tH**kp>ptsg$Y7l?1qAZo%=ZZS8Pb2;=-G z;2k*p*9|NzYjrmFh6l)Gr^MG$!oFZNpZmn_aIBFXM-@bu!uC<50Cyu=8;G2`3%}jd zbL^%B*)VQ&*tR9uXvaQT-qvr+wj2+B%sjRX^idFhIb75RkTHp>fh^q1C(GP>d!e^` z2O=hL<~UL*bT5GN2MkhE?JsxK1}vveDR~~c@ClOWrfR2zDS)w?t8vUSF-6+TwLlY{ z?3?CcSS9V$@hVmy6Ey}&9n<0hUzU0rYA=f+fDE;Y4@Li=m>kOQv%1YHgpVgo{DtBM zFrH3XLesBh=0Bbdi(nj>))$`(TK;ml@nV>#fw_~fZlt`sP-i#)c|M`!tdR*m2894s zkBDr(phim8^i$gcp2@9&ZyK>rU&Pw*<@!Hbhmq`A4_<7d7sNM%r)c5 z7kyT_(pH?O>zOGtf%pjFz*P61WfLU%i@mJiDo;mqVwr8)v|hI#I8i-%%f#5o+#}(= z0DBu@O{)TfSzY$iAHjBP@Mn7Aa>xJ)6-CDHsqM>Q4pfrsGRCi^W%&quYt}VI6v41G z-;W}?b5r+;q?yZ{*l3uA5MmK$OSR}VRpE-v5arVrPFT+I(Al+m=4-9ASG_O{)bs@( z-uNZFhn{oyw#qZ^S*B{-Pk6)@DS;Ec0rS8`R!HP(i5$l}IPEa;-ly2lq$TU74H^Oy zV^n#tZ+2WKiA~m5G+|v-3Cu-G%%lp?6WAUheZYJE>`vY;3sVNt+-HqYth<76$ZDQ= zH*%y{pomdwj}z5Gu%o4{R#vOGj4Fy721^aa#{!=d&0?>V&snN>e(-i0FDfmQ1s7I6 zK+w_Krz7Zg=^9x)Ce*4L5?@+5l7!$B3{=~Dattkacx5LC>cmY%>A&Eg$_{-xh)?6N zx7sFJPn}G?FdkOeooL~eOXp-uFc1m-dvRgbdQ96uSs$G_Hoo*{H=6kI3LD#4L|d=w zOTZ(*vWJ=fwWE&GEd4jXeUeFW>~wI%^IfsWh3bihRS=n1rtV5<9LbNtN3>~eYo{7< z5^gfVe5wyv7Lna_TdZ^Q|h%lpW}gX_Ge!Sy^gHGj8El-#`a%% z{OJ9HOiUN{GmREt;erQ=?EzK;9DNKyEkU0t8B|E4f*pG!C0Zz`-zJai7p`2xAM){| z-xqun3u4KD1^$Ep;R3=xDn{Ckm1NS#+2+Pb(Br;7Txwn>OnWrwjoH$Y-!wyGr}c4c z!9`7}kS+a1N8R6%fkNrrgp9GJNHnE;y3d}+ZAy9t7JsBJpV(v7P}&S-iAdzg%eQKU zg`;dWZ_UtUJ$3FVdsD!|KLAo9n*`K{qlgGl)tNXgebU!wHGYXxJqJ?9v1_Kl0Hh}4 zXXJDX+gn;*3&b9P$B*OfyB@B1hDgAr1`+-#y#*arCYODFcMd$m6*kj8*aHk=jaByAo}-eJRl0s_zj#yD%wJ~)?esC#aB%%)!Kons z{b==z@jah)_1EGp@=UZJQE|fw=spSzQJ{a>E_&c&gSZ+E?e}kuQ<0Fw=MoSOe}fP< zxz|>c3Jk7@;OK>YdyB0ti>3gLYFTy?HiHGKYi~dI(dB5hH@PL|#^VW9{CEU$GH2+x zA2x+v^m=|z8zRCaN4zuC{)5^$5`q^#) z%%+K^{o+ryUc-{HuHyEjLcVFO4T9_L`hM7(eh8eNe7UC8k0354P^aagY;8M}Mi^!b z>Vf7fm1BAvlP4`b%Qt}Jaq};nt^1PiS!{A7d=sWG+sPm3WhclVi)L2F(jGD_aIlSRwgr`A#cE_!gZ7iT`ADpHlyEO`Z z7FRGrX8yA%eQIJhO(A1L-Y&ncjK_>@T{3TTV_OlaNf-9&L;dH)8d_xP*?D3jW;^!} zMuF%!4B;cld7_tcfg_Oe22cPol0|;sP%>cJpXXJL(_=b35kAb;C)3J$s?rW)S5zGT z{2^6fMNI?hM-n}9bW%*VSCNH$TQ6|~z~YPF&&476M#BM)8Y}UyqQo#rcP@UkXIeNP zROoBB)@9E8Ad&kA5H7$5!}T7#65r6{tFeP-tuv}rysAN=5Ve=+@-hZ)yKZdg7YAnr z>tYtYdP&^R-%RDu#Z*WCINdgO%+39i=cDZhFG2B0KaM_d(Pm_$f2{yTK)S!ic(Ae6 z(>Ok&9mpGw*)Epk$i}2vO?~qqT}N3z%IeFe=bA5U2xWnGo%9P)Gh&OnU&KoW3+v3a z9lM8aU*_09>J@i4p6-!-B)yud2|~O`)h}bFGo9+8vsjL|PChv*u)FKVFEgGUy1l9p zb}wdsfjQ5iKLqAsVTC?i9du57s|^M5jrCk z4Bs?BcjBZubHp(LTNDr>aUf&(o28m!;!{1{9=?*7IqYy^T8a$gdwG817HGfAri_Gb$o}bPGhCLO{BVG#JO~87qE=xHd4XQaD0l=#C{U zug7QZ-2fgF%w&74;9ae~>O5YJjySWPt930ZZn@@6VTX^XCFn7mF2G&rw-GChxkJ{e zlT<-YjbwXz`CQZMD&Fb$=Ww34!@tilLPP|5w*05ddBR@F6p;yyUr0V4Ac~2O?&_6+ zh|V5&IBR+&$8(9&ytGRK93NimjbF`wI^iOw?E8LTgOPrCt?sdYhI9`((@YN3KW{B-d|T)2YXXsh|sxAP;r5-J5%NksAKh}Uo$Exj?! zc;lMaY=}6{p%fLHAH4h+Of0_Eb&%Uh_52OrS5a#xLrEDbW~J+wa~0jqgAibNy$j;- zb01ss9SY&)aB{;BWBzO#<@k+hVZ@X&s0#b^_O<&h{0I|Z<^7tb52lQ2Y)nskxBdN z$%^9$Xx)m-qP^syD^F%zR1!GNcnt>CE>kFb`T;GAz8uzUk{XCH0$NH6m}KjrlHK+l zWX2Bo^CgKa8>`OmHSu5pXx{vG`8tF%>VYU{6U8%@F8;cf0@lt)$9eItk+V|mUd=FE z+;GdRm1R|1x=2mCUM@(Urlvegoim!tq9$FUwd$vK(kFKu+n_y};ZFPFN-g1TwoKpp z!^i+eT>==PWm#RE7G7t7p!55*v6sGJpF4#XoV}ff1&!of6^cfr=$W=TEWRFrG4{z4`xv$YIJOMo3+D$3Os zd;%SmL#R-e3Z#0#ME9E`kB+n6jXyGu$cXMaB$Zl?jrk%Z{|NU=3PsqbF;-{Yn54^A zY6WGc5@qdt)Rp`(Zacfn7nGTjmbLQy$WhNV%nyzLWoS|rNjQ89wCB6!a8xb-OPY$itNPwwazSBhb; zc|CTMdtpO&NE@KYI71VpGn~o!;l2Z4AuzRZ@{;A_*h?)|uO2fZ_61inO7|;BVPAI~ zi_N~=1HHgH;m2axydK-MaTlpC0_}y$hN}xz_1tG{N;soVQt-vl4yoLC(uU$jE8fP| z*SRnS9teWXuD(m`d>2bKiKbAHQaYK2o_Y8l-2jAjx|$DjTppij?iam(QhUH!#P*{m zSa=K5EFMS;hHeV_kbX0Fq%p3hk|e=dEe4e?JJ7j0D_+OgV|94X22q`^D#Ve zfi)Qb6`GcneH@bz8QKgsfz&M^S32HX>!HU@I5?@~!9fK*T#8S{$Hd5PDn86R()sg6 z7R7dDV?BNujk{7KaHv7CRW3(JzUU6>gh1o-3Y`x@#>%eKohIb z3jnrBqbB$t@|6vb=qQ`lMtDu!Vj12=#lScOP*YR7)-=Sb0y~vstBs&=4=1|A+@^{) zDfO7$<|C21h~XlMA{LwJW&|oi#8Z9MIa0hWoWt`dKgu#aXL=5@GoIl~T<=(y6krV9 zU-4O6J9E7}%k(7{lpB2A`{m3*bnOO!e*;M2QzYyzB|ktx^{V$CIrsJz%z7LeXTg_O ziPgFDMD6t+f6BuO&lTbf4WvHE2WZ%Ud0`xwB`L=kn@67G+z z_8jh1XmW`GZ(o^8>iUOgRH)WXWF%5-oh{oi(xn}Q=JS1lXO?gxx5q4;X*VA58^jKU zJxg^2s}N%EN<(NA2TK}f_n)gkFnjmHZvbzR+5tbLV)A-m#S-5y57eE7fR3b<*>-04 zn<`lQRsguUaBT1~ZPZpO#;XCzv7-AGjRE6Q4OO$6eaat5;MmFGZ|OZU>xy$?AFcyShT_%s=075JED}Yw(?}BN97yds1K-+YLv(ZSDbeb&kXeI z5^aVM72R?-|F=2KOa#)gy@5P(88S^$- z6!WE-*^v!w1Skxvg^O=|-%h&$XzHI<41JlJZrAL`O-g{}8U#idyuAU8skXTb{^zZVL_*$E}stnV_H$vh-bPKQdaxva1a`; z@1^-k;Jt9j`w^&+gQeDvKFPBG%*eyfFWgnAcI-pz9aCin1%S~L6~gQG9fYw(bl9H3 zJ;De-!J{peE{_h!YR|Nhy^R-Dd(1r^Us|;;r*PYLyv456sfsFaPXa*NJ*biW0(RNH z!^u@e57iZs$> zps#_K*OAtyNY7-MsMC_Pku4eWGF4(N(Q*zcr1fQp_HaNo?))`ww+qqi4S>1eggCic z=!N7#w}h#XOzsvh2jDd{4cZ}Z=Ui_4n&MD|X?M=`733(Ni4$&SK5JvzqIaHl-SE7~ zK#IBf4#XhEQe0k$^kq5BcrVA8Uum8qGo&0OBb6IY$T-%0tlF+w(~v z{q7>Z?6Jdmx|@6>^9K6Qa0zoQv@ZyL$aXh_;m`pKT}xH%_wTm1jb-S5NJZLXM>zn*UrAS$#oDE4{RyYZnsGn*aU*y)a*SB93 zAh>QK%=0Z!GZ<V`&^^+0U~0@#5FUK;#6$sl6D}rf z07B$C_BD=0W>}^qxp{Bg_2Vqg?=TbNB1I1qTcUR?bpe1uu~=!`P?&bKZ?8CI$r&Qi zihlGc7?k9b{0SE@BY|D*#}m%<}_X-Viv=y3U{&ZDW6$VbA-2r7Xq zUqz29w9ah_eBmfaN@RyAid5hvo~bylHuJ|1?WNaeD^{on4dh*NA#= z76Zy|hD!BrOvkqvbjikN)TxbQ`J~HucLH3B>FgmJFkiZniRr@cbJCd-d{dI`nn<67 zwVvaxF2^pOi^xPLN3tX$#1Gqqlj~$3@Mt{Fu_EV_6`AG3u9_lpgFWZ*5=+)scxVZ< zwYEJmft`p|LBvF=J!jAQHC>WYC7J!lfC)N}?Ve~Vej14h>iPr!P;$YTXx*z6jCi8X zU4qBqAC7k-4BNmfuhf};pM_`|KJT2rT{h38{sF`V$6S5JEF`t~E%eLkGdkSRkqXYf z52UL7fLx%TdpG0dwKt1H&&M>Uyr{Eg5^H+`+Q4()^F3whaMwrlcQ9-n6Eob2LKppM zJbzqnu&7jBh|J)Byte!7sd^lvM=0WxIws7={F1ojaa2mW)1~D~Wi&;V?%Rh-eJOs% zG~t$f80Ir@&hFeK9Gqk{fN@mw5UHgS*|^4;vLu2*0o{#Cw0sQINpg2*xJ(>0xR@r_ zhK-H%2)vs2y;A4f6~K0*%C)Zx>7fIIU9+bBCvE8g_Trt2r@pC7@_@dUzI%4o$DfT5 z0s==_xRjBO)1ge}|8yH!?pBd-M#a1R$%CyOje_m^;74bioXFJF!yXj6VyX=&M!c=D zaV)FMrl+P%)R{f0ty(I<6S*c z?3}9Yo;mp6jU-G%W*yY zL=!qJYy6(JLO5wKgrI@5C_~n-s&4>9>qB{#@Yu*CQ){Uj1i)Arsu$dlEBY~~8yIaH z7BWgLXe{iUNA8%E6dw(pN{ck}6S1N$&HH&@D7Os0`KLbolNtCMggUrvcU zWBc)`if@DD<>+>w$*%O-k0@PKyh+H;2uYd1KA(H?=99p*zM~=A@+x9FU3W=|$f!ts z$C1yTKZ_P9X}HO#PU&nkQOy`3BH~NA`Roo;kaYm?mg8)wy`k zlZpc)dru6Sa>>Ib=I+Xp`c~pRZ4dS1R(%3yuSU~4L6E*4r?fDh=Ia(edj}GW<&lx- zrgd3s$-E%j-0}iLtDQ3im8>`8Uv{B%8MgZdK^Pc=FW0MLX=&+YF7aCoYK5%qiG`wONCjfbjG`h15z{FRAKuc1|0vM$V|)!O>GhALX&1WI^HEy`Ts#priR{Gy zp1yr@20c^zf^dH%d*()KoLFDwz$1@+M~&M_;QsZF#NmTNhBjfVd&MXTW&-#9XTEx4 z=C%)&7z1_{y$I)oyg5%Nm^^{HbG01Ga4od80IP^mo5b<+r}xF_OM}(|+|JcdT=43l zYwGKTY`<;-lfkz@K@Zi@d6bU(ha193>A8FCXyJ^^ZPmH7sk##J4+^ z*7a8iL*dqBG+fS%adfOCk65cBE8i9ZiGYY^i|ME)!}$(+x(5{-G+e?aQ!*WsaXqdC z^58sN5IeT`-uhzaE3`(D>Y{EdD3sW?FSRmxAw}^$y(|Zi_Aff|88Q=j8 zLJ{yFKxUQO&+P^v7Dk_{wTNZsdvF67|J?i1Fz$iwRmNpQR}+n#l?-{lH#*Y?5%Er; z(AP+ilM3I$HcggP|6rz{4B}x{RSNBFr^pZtSO@S8(=DkBoh1Ic?UQypjIa zDR?L_pzGOwA-XJuufR3O{e5G)oN<&+SB#G+?sYRRzQ_$A+v7uFiQSLe(ov zMQMEtHZC}rVoj;*B|UtT8Q%f(;m6QH>Bxs)9V4YY)L)O#Yg0&xqefybtKg91_hRX1 zE>KtCXji{Bkm9oU7+HKb;plF+g3nzA6uk}%^-?aiWi7ayer7L5(;Fu+X;*B}TiXP??`h5xe0xBb%laghek2iv)6#7jux>|Njs2h)xss(89 z&ILviJp3XoTjI=vtybDz_r);~?%Vn<+Sm{J_3q#^hTv%X;es-86?&nNNMl;#5+wL& zO?lFSA5U-qiY248{XimYaw~A=FjL)>HkOWN9+5p>wlaeh?U=3$NB6)UN@kvwA$-YC zl_7%h^0~%r`U32jr}vg)i zJcZ)xf{Zi7q^2=j&Q!z-h}^CmqyXJ`?S_0@?eP49B!#JvwkO>Qm4Z;RnLr0nRyu?~ z5q33&GU#dCAQKm|QP;0BC;tdCWanY+5>*?KBJa$4i>c#;VJnm2Am~4;Qw&W^=g+Pw zd^w<{=q1d6oL{JWhTR`#{Qy9XZ9PaUt~%RM)2GvVXhCxlq^(X~aySH?h*neh1`eYO zIHhGyO`X~~%EQf}i%Ri-g^8V=UFlm0O>7w5dtT!3CS9nM8@3mrkhbi+Qc<@N@>%OH z=gJdu47d==+Q`P0!*};cTg1xI$x%<-93)bzl99~M3x-1C0Y}7N&bGCGy z{VXaLE5gq812iwF#5OO(_BtKqG=cCM1Pob-s-p65FKX0?OG#hXDH^Y+64j=450@-9 zNKdV98RXX3a_Z|FZhWpKMQi6+?(Ka}{UJ*$`$KDI0>yM7J`Ck>0%4A*%b3D5I66le5zv!xlq<$)tjoDFV$A&h2mDy(ES&o7p?k zd2L$9zx3w#tkr$ODF8mdpgpXPEGj!v^}V1bRzYhi(Gt!5%@}s3?EGbGJJG7 zC6Et&_MiiYNrS;hb%NQFZ+|%&-b@6SwtQ(c5Z;xH%wBwf3qn*GG!54Z;gDFpaz&xg zuZyVOIoH^Z%9f`OV_DFRomK=b8)@%Y4Q`$RgIZ=i;E--!WMWFhq-|y3eif~8c7^?UYT7YQB)O0tG0N7~HVb7R zrqfuW&jiVHhHumlAkzMnoSQy z4!)NZ)%I!5*d04WvAjcHY3ZgbavL%}*L-G?6I01S`c6*{haF#{Wk@3Rd+(<)TRQW! z6J+i_IWfUOcZ4UDA0D#KWiNm+vDTdz!OSD-8WXZEgwK5q4n0sLtflM-bBq}R zFW`Xm9c3MM5WD9}(4sVJRdQ3Vt(XGjVV0*nA_h!~IjF+H2E+*8Ok%Pve-VJ8oY z@;6h4p)DhTYg;3sqk-*$K^2KJQX4^wCPwloYdxJ}1jCuSeK{YAq?%#713kczHT5Fi zEtNIw7oK!X8!&u_PW3(Q#m8JWqY`UP5eq#^ zdh6oZ2twM$WqRUE`3ic?(~X(AnALV0CtItC)J7mxM6PCG+MgLkLIcEoQC83}pVJ3r(6IzH*x5R82Ibb44$1Udh$(;5m36>aPF^X_-rV0u@CMg|^@Fa}wAu0m^)DZM2mrrls9wR`C{BM@FrTMc` z^pNR(jyuIvfSsu1#6zi3G68Yo+(-Zb42+aTP6VDg>c^*%$mD@}QUIM8w9!|->{eD= zMD3)m=w3#+#yRv6NWHkSV%>_Y=3s$&1}UY**rH6NiAnB1OlI7oUf} z{g0FK--=p^BCGK$MSAmgvgvmG2B^w2){@J2+?_B9n@mKpo~o`rY6hu@g3#FeQ&aU| ziz3{CM*{Tw)dDR;J~x0ct;SF_B6*$xZW(+WYHsSHGb5%0SA% zGFh3djaB*V^ANdb)r+pwfsFpC6|eCGkAL*8@8f7^R#Z&eK77jXVAj4aLL$0(NT&=x z&E3(|(H*Z~SZ8|c;D;K+tDl&4Dw;;#n2sOTD)(U)w${QO#R}$p&ej0MFNG|=1Xivt zU-f2I&)%R4zbTPL9m4%q@6g#nMI~eUvIUhoIOhdP+=1-x zh4#H|0hl6~d0ZXzcZIp7zV%U(I6;Foz=RU37BRi1w$pAb9pvZsP361S*&_L*IP@+> zEhlDZQe15-5IS0W0_BtqMby(zHvmQQ<5Zf_9~BIe-Eo6YY*7Q!alf1?$aI5&qh<~x zEvXM1zmSjDqG$2uGLy+{C2x1rlLAcN_PSF5{XAeZ<38ZiHVL-l+uiLus!TmH4s^Nt z4c$R|gqbryK@pf5Yo&eaxO9bfEndJ#L9X0Ef2OF|2(G?3nGl~pp~aIOWFc&Sz~TDh#+f>^z9oZ2*O>pLVVu51Q*D3BohmnJty9u5C3EQUB zXOGoCx%aXKPAP+9Yrq980f~qUDH;b3*NJc+yMB0MmvENz2v`8f3}VP_I}Q0?W0jYNQx0%%mE~Fwj`Rlw zD{ui3v_@b67De-#eo@M|ws5 zaINC)(4>%N01_pEPZ1+dpaqf2`BP(~?HpFf9_IZ^qxS;>08B$%fL`AlfOV12#!r?9F zu5IC7SozXF{Fu>?CM=^Ea;$X?Jbk>SF>!Z#@HrGMah_t1Hg?xxlJ%Dc48I;Z`RbHr zVW)gXPtl5#vz<)WE!#O*v!&0dOmN=~aHY7kWbBO_w`xVO8}tsZP!V>3EbQu5(^ z-!tug*$~eVc0qtZsDXtxyE82=Hum4#%$^$y2WuV}Y1=EB&ZPui#WqvN7Fz9o{}XC6 zu7tH&S61RXrH8Vn6W2r_O!IoA+<*VxB z)loF`1w!mmhGu~;89y?}c0v|3Y@2p{TRbj}U1Dmz^6nJWLJ1duY1Qbhijs2C;g{Hh z6Fzs{gbZNl!{eQ|)#ZW9w{Y#>;eioRpxcACfr}Rn+Zj!iK4T7=uenG1uqI$g5h2Iq zIqn6q09N6la@~1Lp}ndtS5)gx5BHaX7s%`h$hln$0lJoZnt4^-D8C=ZbarR|Z`k;! zrc;!Kq#hh`UP?l}%0ACXDUJ-g9nx?V6>kS*vJqzSHQHIPg?9t3Y zKKM@N`O1($Gm)Ve)~?NL(Bi$I$a!6xhGsg{zrzs%%~)0!VyEo$T&0y+&KK?WrqxQ~ z7_n!hZnkfQBNmz6Gb?V}u5;^^b7m=?rwdM8lmJj`E~_urg7?MV;a96MxlF7bEu*WS!XxM#b&4^0)}xPRy} zyoIR~)*VxsSDIRA01|d2b{VqVpU}8^+&Ro>y_ZOvdp4SZlj<{e0jYPYszUj`Wq$Z3 z&egEolI(vHq6uUy1`xc|WV^;Yy*H1UVe>#Xg#^el*H6)X{eaZ(XVvNSaUZl(I*ph< z(yZ|$Iw7GXrsLotn<5G|4>TZ+TyeoA-mX;P{Wuo+6h5h_l!2IwCuWrsxOpOX{3Eg? z@-Int4RUYa`to6rsj1ni0l%rOiZKV2`Jj3hKM ztCSwq;Q3yb9h8VghNr3}8yX4Qf7(k~LQC6yjOzW&WZ**7?PWR?KRZ7&OGetA&J^$W zYMOVK45w}YhLvLsqSX8Bntn?vMg_;+P%zT+%A?A?W$yeqPP%ZqR~> z8SvqkAE%Uv$;NMG@&Sg-%J;16VD5bfUK?>B1C04LueR{&)}#fyhzA!^b6i+nxlb)h zw>goI2M&s4T6aZ{DSv>SJL#LygdJ(p%3cKjGEfV1&%ZSQ=cp%W2t2?SL?nz~5-mmG zpKax>YL4%=RP|Tyzi+K8iI`_sx>^uCLKHd*eh&~LIlp^tw&58^wEr&e~;bm6?{ z=yf*wrQk6Xa4EmI$ZeU(uvM>QbHKRY*ILsl=2oLnfMHPYT>NEAm}PNJ(3m$aFl$Dx zSFN55nnCCR^B-<(E!%B+TfPPx*TMf_!=#e6P#y*f95um@J?h8~cA^r!t@8HsjGS7o zn+=^5?GXhq%aWOyRt-fB7k~~Ze5S6BozCp<2UyTZP|70}R|f)6nzNd_PKS@Px=4&v zRE$%ZNNkk2WP!Omk}$yEKEu*+;o|F_!-+afoP!=J#%XerkO9HC6xr{P%STj>X|2)J zhvhXHBr12MZb^aiGd79`uqfFV%V~1YqbEYq9lJXofwI8L{_^sPobpoMtC^o*%BRDQ z8}gw{<{c!;w@iXWMfn-K`4a5f>BHsfQYg3VGm5NFp-dL$nHhy7cV!eFZM_(HXu&Pz z&BQI6$Q=&3%o!9w?q>)bUFIqRhhq-2wqA5Io)4Scy|NHs%tk1n5=9Ni5K2kQDM>L| zSeWlfdkEdqu9%n@Y&4RZtO0iO4p0V3LT1OqM?b%mmzO82KxI4Fy>lJ6*5J)HYOsKID z5;Q2#U3@cjGkMbtAi_iepa6gXA^-{z;0_VsW*UGC1l$(g0RY4RyZ3hG_5^=6m&wz$ zrEZ7L=fe{-o&O)P5y7lNxqny`3*5{6Jf`#CaFYK~n8w&FfByDVNw^C;`?KRDE+R1z zN86Utl4&jZ7%0$lX{lwCl~VaBy3;Y7GuiC&>QQx-r;BL8$zUto0nRe$C6M zz@1r_yy?P%xCr7t*cW=E3&d`YWue)B#EA7{Pg-vP6l=#(vptI!J#>yigeWZGSSy5a z!0=4$?VUzax5m~1c0-A}DDdJ_S~&!5sxntIbkyI#-*tDSlTQOWC%?EcA&U=qgQZ9O zd%d{t%?6JHJcS50B}fO;BiQO)?{<*Dne*ZR+_;2b6QZaCXxl4KLln2lX?YQ0a|^2R z^azG}#~~628B(<`C<#VE&?s0$QaB}9VLj1OpS$(p-Y3kW3RHI+M5brBs8frC?JiiRBt92mDqvfjIkIz{_*tX9vrmv2FPTk%%}d#NUuAE8(xy$x7+(e6cq_#q)?m zO1P3Oej&g|y@l3sygGu&+*Ob_#lOCE%zFDFSA6(!e`_EbbfpC1gE`b&-3>k}qHI5B z8;r8ZPU>S*8D27Ga@%2@CIPWTu)XWsmGV*Vls2dc(;^-Gj~KI|WBdCGlX)o*Xy`>H z2LN9yqK)(fW{D1hi{YyEaP|nrEG%q6ASb!wDh>|WV5<59Ro1s~ndSw=c=TXck}>%1 zSL*WAS0&5?Lmx9)DQV$~&!LHD8^>?P%P+1pWk=YGNOyQ{076@ws4rK}-rr@UH(JJ@ z>hRjRcxt6VKK(iBv+gWL-N@xmc_-1^_#dp#>!SiAh0I6~ins0-Y8hH4ihi)Or#?_T zXdEN!q&7?_;c}3|7vD5EldDrt0gt#_N$$xo4#PI*Rejx?i|V z@6>0#53J_)6Ces8IXX8uSrU2srg&Sd>T!5>4oN6WNO|$&?kXdbUQ~D2cntg3%?nbP zsuOE7O(EkxB%|y<_45Cwm&U3)!*Od*xbCMtBYQejrj6k5%uC0e?Z%;UA#bB@bTH2hJP78yEfDeu_GZ z$Za69)vJkJk+KHhIYE$jskaxGb6~7WrrZnI-(1q_HNGhBgB@MW4cW2;jWu$(4XIm5 zuFD&P{qW+TtftVbiIq-|t8HWzY3urTvP-jkp0*1m?Ps*gD^pKPwmL;O_7RL}4YS8f zHEfC+qt5S!y%o-X9GfVznN-Jgw>T(pxp&H5ZbXb#gvslqLXLzs-uFZaSHPDfH_7P{ zjL9ZxgVian>Z82wi)kv2HT56v_Gz;-aB=7%DTER9*UoZf8_fULr|?$RE)ADV_ujrY zRIVXF`@D!vqB8g;SU`xPH+b4XT`m{02Di%Jd;4yplbX#&YFU^p>CGeKTNU)5Dm#By zsoFDpN8ZuM;w|}0MMha(uobkhX*N@5(WB0siTo^EWLcAlWZHj5&rYT_&&ON<#HA`g z!B~|*^}Ofxr3dFt9Di77zTdh8b2FjO8$#(Ep0fvVG8|TGn7S4^h(YTP!PfxHV_u3J z!wQx9Yl2RAlKQ{>TY>+rWUE!=-mYFL^Gu!zNQe3_lOO(XG5L%nIN>U<5V`yR+Be{> z<@=w-Ec4wjX~G!z^8TaumO`$T$}h`!oEPf4LkpJ{OcfgcQ9wG&>%{!DEMpNdoj31` zfslQXSN@-D(W-emqrWUadG0f&ad0YjPtHdDKbh!HDJtVxKP{`=Gd|9%N^3bCR<$hr zPbQjVJ+9)H<;W453ibc{;#=hlV1dIHr8~=r)pR`5g9p)C@gU=ka3otceCKccvf{!_N z_%6otNzecDwzD7bgcG5#b^)-Rpu)qbVY0>@JbQ4#ROU6d&%%*C!47^4E{tIQ#hLkX zjVGCBUpetN(_#2X8aHG*1!6vdXfzT@K_Ql<6g4f)-o@HQKd!eu+^s*T{f_=TG4$u= zV|Z7kfnms2y~ z?l%B|?99yvlO(_@3uu>vrw?h&_I`~!MaqzdG2Dt_*7>bgsChUX!tHfZ2kVfJA52*CLXITVJP(bswLEuui@jjE~Yx9njdbr+X++vzfRxXWGvq`^B?nlu!n6&h+?~Cd*z|hzMdga-Axd zUF4g@&V8FghWVb^BMfcPAQ%jnUZw*= zrGVjs1)=se@KPN~%d&qMIqJX!8c?sNS-%0?lQaF#Lai}-uc~Fn_nsv}JxMcl`lymV zNV7jILl4G$cfV?G8Eo&Pmpn1%!+Q#`LA=njEVDeAF{o^h%sY!Jw~7jq^wC)B7FbBB zp`RER)Qt=QCsg_S7aDQXhL+ zO}7l!2!Dn#C&?t1P|S21zdLbFiaa*Fe9=@cI``uS&{q{(_Il`e2J(GtxITW#uFddN zGi}OukMH{Hg=^9cfPG$LAW3Y-8tGdlw=WhdhA*~gcmpu?Z6E!9RX2D8i1%fAJ&?A= z=h!rpWzXBJnff2?D2D&51E~`Yqij?@Xevq6W&S*lpUnL-*lspWZ^LFaY5=9c5H?h{ zLH-TOzLd{m7c!JT*S^|1Dy(bROjzq4LQHZ&t&uKgMI7ghf2C? z2+1aa&hwmg@$`55%J?BU+wtl0lNBm<2*+G5W*|S8vHYLscD_?uC}BHia!z80c2r%KYK)dh_WLcH~%T@GwhylqdO$SPQ<)}z2i_!?_0Tta=DV` z42kh>R+lA!4tDK?FEE6Z;_NhU835n5?D;M9xhC)ifK#@3x>j6#eMirCuXe$A(Zx%Y ziudRS&@3Nu&98@X$^QLq+vmonQ!MBWpmXgfE_MS*KfeJiFm&CdUE9t%!EXk{ z7F{ky|A=Rb-MgltIg5DwciihIzW;~%W^ITGL&Hnd>f4xi8bAHEyVZUuP+C}iJ&3pggpD-)X7uzoujPOB>f{Qe>l$VD zwo$`V{U(B@Rngx&A-3r3CGtlnewj==i}*(;e&IhmLG=^QqPf>dozpxKLtrIzYhO;3 z_fiB1G*A-T_~pP?Q9iHRXT#s0zumT9{I~Z1)al>-lm0oV-w$bM{^rl>4IpT0_Xcns zjB*3;bEUbojX2d$Be(&q8qu6${H`&xd+|>SZ!f#zZvcR8vC}!4-8vr{->=@jyZFC5 zQ1#~l_+{_+5%`i{$cR9A;S1=i2lXpp?`Aur$d3at)Z~rI`H^k@u@%J|K#AX zZ|laXck*ox`1o%g{yi>`*Y$tzklFQ<-~EgK8D=+tbAo@w(dGZCIL!Lp<3Cxvtq^eu z{1teLtpmyF`W3V3yi+ZE^26{P#%{`^T*R3cL7!47%vw2A%j%QSpZ! z6~C<+I^O?1&NF^%@E?*2&t5BvV%LE7IuApWPg`+MO3pPHqAIPj;1^WW6} zW&d9~Q2dV$i2ktyx47Y-JNWnAi0aSwf8iLNO}Cq0{cnq6m4;H320!ud%IRJ<)wMj=`w}52>{` z;!H^m0ioMXFQyovqcbx7;vLRJp@6O^+8LSKj7&3@A@Xa13>7|7!O%mF`&EOJk>gRX zXniryUnkNT31L5z#CWM<-Syex!so+f?u<{&E11esJV|v1$uQ+9^mIhVcJk5!Q>5hd zYt0a&SkR+EcgW=yWv zpDPb#F)#}6$qorC50EI!o_;(1Cf}10E&VV$dD!t8iHeGG;-joiMIL3PgoN0(*iKm- zKRhX8`rLUbE*S%qoL*wJcsh!118zNz)1SFp2{!N1LnKl=R> z`S?RF`7>Mm7yOU)|83^|M=s)GHqfSN}6z`g@CIe{Au;qD%h`nfVt&_pfZ`zhiv=1)cfdw~+OB4)G_F z@dp<2^Tg(V_Ucb0Df6GH^1ov?Gyf}Q^KZPu_!kTRu8Ci6i~TeA{O2lv?&*I)sQ>Ah z?GKEvx%4Bc0~oD*T(Z@+V&SuW|L!|6e2b?=<*d zv7J%I27@Rvyp#Vdf)%usQ!1uKKI|o^}n1z-MZBHPpkKD8_sXb zSMgt0|G(XDsQ=sZoj;xb{O!PKLe0kbVfggz^7+kONhIj}4Y`@buIS^cl{e*@fYYt?b+Y z%qIeThA(|v*~K<~J^A~L>yX`WhaqiWe7!cC*nLg6pXdKoEa_{z#Qk*p7ys{Oe~qv7 zb7Zsp`F2`m+x(kRg&RwrpS!(!@#6Y(tNy#Eedz!5q5kyle`Q)1bhQesE|#4wyjyhl zmdm^BD#f`%NuL(2+qdv!^r?-1K5Y2$Pm?Lp{lT@;#=^$BmGz?gUEdbjcjZ_A|M99L zsURg~hn;|+e3*XIf}2ZjE)n`)&b9FC!LJAZpFHpvmQf-3)n3m$_&};>4%1}GBAgfsri>ya5FHnykKTv z029cDRsanJUV^aH7N{MB6`_VQ0@+I%JuwZ<%u7kFNG;MUD9SHLEh@=OEe2cTjNclM zv~2rg#=5;iKm$Qo6~&r|nAQ}R6lLb67p11BR-jw;gL|(ZRv(D~jp1MbS>=^HZT|rV zMut*5Mg|>tFoAp&1oRkMFqP*Q<)r8t85o!t80r~Un3@