From 1bdf71ac5cde8fd71326934223ceff95ac8c3eb4 Mon Sep 17 00:00:00 2001 From: Shay Weizman Date: Tue, 25 Jul 2017 09:34:35 +0300 Subject: [PATCH] [SDC-43] - New tests for NFOD Change-Id: Ic992ae02498328972d73019d5024b81914917984 Signed-off-by: Shay Weizman --- .../sdc/impl/SdcToscaParserBasicTest.java | 5 ++ .../sdc/impl/ToscaParserNodeTemplateTest.java | 79 +++++++++++++++++++++ .../resources/csars/service-Nfod2images-csar.csar | Bin 0 -> 44624 bytes 3 files changed, 84 insertions(+) create mode 100644 src/test/resources/csars/service-Nfod2images-csar.csar diff --git a/src/test/java/org/openecomp/sdc/impl/SdcToscaParserBasicTest.java b/src/test/java/org/openecomp/sdc/impl/SdcToscaParserBasicTest.java index 817ac92..2f41c6c 100644 --- a/src/test/java/org/openecomp/sdc/impl/SdcToscaParserBasicTest.java +++ b/src/test/java/org/openecomp/sdc/impl/SdcToscaParserBasicTest.java @@ -29,6 +29,9 @@ public abstract class SdcToscaParserBasicTest { static ISdcCsarHelper nfodCsarHlper; static ISdcCsarHelper ipAssignCsarHelper; static ISdcCsarHelper nestedVfcCsarHlper; + static ISdcCsarHelper nfodNEWCsarHlper; + + static Map>> fdntCsarHelper_Data; @BeforeClass @@ -43,6 +46,8 @@ public abstract class SdcToscaParserBasicTest { nfodCsarHlper = getCsarHelper("csars/service-NfodService-csar.csar"); ipAssignCsarHelper = getCsarHelper("csars/service-Ipassignservice-csar.csar"); nestedVfcCsarHlper = getCsarHelper("csars/service-nested-vfc-csar.csar"); + nfodNEWCsarHlper = getCsarHelper("csars/service-Nfod2images-csar.csar"); + fdntCsarHelper_Data = new HashMap>>(){ { HashMap> FDNT ; diff --git a/src/test/java/org/openecomp/sdc/impl/ToscaParserNodeTemplateTest.java b/src/test/java/org/openecomp/sdc/impl/ToscaParserNodeTemplateTest.java index 4ab9af3..4095429 100644 --- a/src/test/java/org/openecomp/sdc/impl/ToscaParserNodeTemplateTest.java +++ b/src/test/java/org/openecomp/sdc/impl/ToscaParserNodeTemplateTest.java @@ -8,8 +8,10 @@ import static org.testng.Assert.assertTrue; import java.util.ArrayList; import java.util.Comparator; +import java.util.LinkedHashMap; import java.util.List; import java.util.Map; +import java.util.Set; import org.apache.commons.lang3.tuple.Pair; import org.openecomp.sdc.tosca.parser.exceptions.SdcToscaParserException; @@ -17,8 +19,11 @@ import org.openecomp.sdc.tosca.parser.impl.FilterType; import org.openecomp.sdc.tosca.parser.impl.SdcTypes; import org.openecomp.sdc.toscaparser.api.Group; import org.openecomp.sdc.toscaparser.api.NodeTemplate; +import org.openecomp.sdc.toscaparser.api.Property; import org.testng.annotations.Test; +import fj.data.fingertrees.Node; + public class ToscaParserNodeTemplateTest extends SdcToscaParserBasicTest { //region getServiceVfList @@ -649,4 +654,78 @@ public class ToscaParserNodeTemplateTest extends SdcToscaParserBasicTest { assertEquals(0, children.size()); } //endregion + + // added by QA + // Get specific VNF properties + @Test + public void testGetVnfConfigGetProperties() { + NodeTemplate vnfConfig = nfodCsarHlper.getVnfConfig("9bb2ef82-f8f6-4391-bc71-db063f15bf57"); + assertNotNull(vnfConfig); + assertEquals("vnfConfiguration", vnfConfig.getMetaData().getValue("name")); + + String manufacturer_reference_number = nfodCsarHlper.getNodeTemplatePropertyLeafValue(vnfConfig, "allowed_flavors#ATT_part_12345_for_FortiGate-VM00#vendor_info#manufacturer_reference_number"); + String num_cpus = nfodCsarHlper.getNodeTemplatePropertyLeafValue(vnfConfig, "allowed_flavors#ATT_part_67890_for_FortiGate-VM01#compute_flavor#num_cpus"); + String sp_part_number = nfodCsarHlper.getNodeTemplatePropertyLeafValue(vnfConfig, "allowed_flavors#ATT_part_67890_for_FortiGate-VM01#sp_part_number"); + + assertEquals("FortiGate-VM00",manufacturer_reference_number); + assertEquals("10",num_cpus); + assertEquals("ATT_part_67890_for_FortiGate-VM01",sp_part_number); + } + + // added by QA + // Check that get vnfconfiguration not return as VFC + @Test + public void testGetVfcTypWithoutVnfCheckNames() { + List vfcList = nfodCsarHlper.getVfcListByVf("9bb2ef82-f8f6-4391-bc71-db063f15bf57"); + assertNotNull(vfcList); + assertEquals(2, vfcList.size()); + for (int i = 0; i < vfcList.size(); i++) { + + String Name= vfcList.get(i).getName(); + + assertEquals(false, Name.equals("vFW_VNF_Configuration")); + + } + } + + @Test + public void testNewGetVnfConfigGetProperties() { + NodeTemplate vnfConfig = nfodNEWCsarHlper.getVnfConfig("a6587663-b27f-4e88-8a86-604604302ce6"); + assertNotNull(vnfConfig); + assertEquals("vnfConfiguration", vnfConfig.getMetaData().getValue("name")); + + //Deployment flavor 1 + String manufacturer_reference_number = nfodNEWCsarHlper.getNodeTemplatePropertyLeafValue(vnfConfig, "allowed_flavors#123456#vendor_info#manufacturer_reference_number"); + String num_cpus = nfodNEWCsarHlper.getNodeTemplatePropertyLeafValue(vnfConfig, "allowed_flavors#123456#compute_flavor#num_cpus"); + String sp_part_number = nfodNEWCsarHlper.getNodeTemplatePropertyLeafValue(vnfConfig, "allowed_flavors#123456#sp_part_number"); + + assertEquals("234567",manufacturer_reference_number); + assertEquals("2",num_cpus); + assertEquals("123456",sp_part_number); + + //Deployment flavor 2 + manufacturer_reference_number = nfodNEWCsarHlper.getNodeTemplatePropertyLeafValue(vnfConfig, "allowed_flavors#FG_partNumbereJqQjUkteF1#vendor_info#manufacturer_reference_number"); + num_cpus = nfodNEWCsarHlper.getNodeTemplatePropertyLeafValue(vnfConfig, "allowed_flavors#FG_partNumbereJqQjUkteF1#compute_flavor#num_cpus"); + sp_part_number = nfodNEWCsarHlper.getNodeTemplatePropertyLeafValue(vnfConfig, "allowed_flavors#FG_partNumbereJqQjUkteF1#sp_part_number"); + + assertEquals("EP_manufacturerReferenceNumberkbAiqZZNzx1",manufacturer_reference_number); + assertEquals("1",num_cpus); + assertEquals("FG_partNumbereJqQjUkteF1",sp_part_number); + } + + // added by QA + // Check that get vnfconfiguration not return as VFC + @Test + public void testNewGetVfcTypWithoutVnfCheckNames() { + List vfcList = nfodNEWCsarHlper.getVfcListByVf("a6587663-b27f-4e88-8a86-604604302ce6"); + assertNotNull(vfcList); + assertEquals(1, vfcList.size()); + for (int i = 0; i < vfcList.size(); i++) { + + String Name= vfcList.get(i).getName(); + + assertEquals(false, Name.equals("name_6GkVrOjnGp1_VNF_Configuration")); + } + } + } diff --git a/src/test/resources/csars/service-Nfod2images-csar.csar b/src/test/resources/csars/service-Nfod2images-csar.csar new file mode 100644 index 0000000000000000000000000000000000000000..6a72a57abcd7accd1edc9b6be866bb7af6690cb2 GIT binary patch literal 44624 zcmb@t1CVY#voJcgZQHhO?6Gaz<{sO&ZEKIMJ+^J*&ikEP|2^NSI$zaabyw<1tvty} z(nxow(@~HH20;OUfPer1r+JkE_-_y7&%2S6fg_!biL(K;tHUzvExfDi;-f6BsXjSwaW5J!h*E2KZ6+?I2+LatN5?6Wn=o`1_%&DuDwC|>lQr^R2A)(huF5*FPG!` z=KF?6w$BB=D$>;>Ku@~Z zX`hhmSb3@X{R2|9RNhO}&xD))BSna+o~+k!P@jhiP7 z?_5eCdBq%SlM+ZukhHgB!BDIt2tp?6_4<0dG1q;X<4hjsAJPjM$`0=?X1w=U$%@aR z3^)4wV^^r4I_Sq<*b9}UT)yec5&@w(Y{tK#%9Q3~b1tk(ATlTPP3gaW-E-SLFcMOa zF6u*Q5SUX*GtwU&(5XOwfz;;%mVE;g8T|PphZwlwSdZtO@liC~7_nEI@bUJ>aThXz zPRtL^BbiE)Z(ZC(bQegAVubG>pztvmDXIGP&K+w}N3B7L>qyv`Np02Fme8ZHrH?QN zRE~pjm7p$*7D3BqFQx#qd=Du3Ti(c|+$mwN;69IIj^7f_@V@D^0ysy{s%^k% zj<+yZoO9^m0md_zds$EHheWqb^40XkG?|gm~Lk)e_t3FaLwpcvj_SaRW9DL(Rea( zJWxW*yBfe!MZlkP-@anM=cR1YZtKak9F!BPNHjji4KdbggQ#>sZ*}~#1yxy{+#V~$ zy&2*$*wU5bCpSDExg{GV?q81rkAf~d z^NX0%wfwq%z~V7OwF0gnn-q*`%?78}m%7E2C9#^*JnPz5*SkY7(g=j_f8EzY*Pv_d)-HA+);I`j6 zhJ1yUASPf;XMb4fL3An)02%$}zzkRN@Se3W2sWKJON7)fy+&wm?t@&!d9|zPC{js= z=)3~g?;i3393kw)>Z8a0>?DA^TAVu+n6u<1aniwr9zEbM1^j%+YX%ERIYD9oc-7uu zRza95l{1cXTb~T_tdb955TE~~*eR)h=_45H}mZ)=by=)2 z?uLX;$btaNE7U78#70ff9C~htD+9I$me=j`lHCVeBjW=S@_43gpp!)zq=&u^9UYAv zC`sReRS*4LwiDLwI`JjKY=e%>>e~CqNc@qFH9h*nUpH~AAkJD)t_&L?iGYxf_*JZ; z^Qofhv`u<)T;q?e7HRIDscni3`P(DaIU0Hk7^-eiuC-0{{da?E1QsR>2Y?Y>vi3f? z2eYg>XU#Rc*T{nQ?%0;^qE(N_+MU~$@%*al&g$rGLoaGI7q6!+uJ*-C=n#Dp#C{lVe-xARuV-uoVn}R4=zMLe zuQ$oS*SSq#y;iZoxJsIvZUq@4%)|JE^i~8eX8fA0F0N!zNi1l)L-Km|JF)HbTB+mJ zCAV6fav=jg4ly!Cnwn+s4Hcx!#Qfa%S1KDc3i#z?VE)GuMQbh_v{hbR^d+Jv>P=I{ zHHvi(Mf4m?6&C60*u_#MRPp{oy36_s35%dsMeWn_%3p+{c?pYC!MY*=_Sa-oAB0jL zFfT$FB~Uh&ulqEAed9W<*q5SJ9&@<{9g0qeD!tmBi*q5aM^3%- zm&7?`#kYjya&VkS;$et6n`JrVEF^dnYzG^E9Y_}+Up1HS#v0X^=LhD^YL4nx{@(9$ z6ywg_-qzXf?d|-0eFBjkq{!^_#i`80>L0;k*IAk6L2Qo!dKMF@XUYxPQfAeKbxu;f z#yFmpI56#h`3F3aJ9RVej&_)N!k}B>J?7#mENZUZNgYRAlxtT~xKh zl^%!Pry-S0{w$)$4xGbnvfG97=~8`3iaO;T9Jk$BXl4svbA#>40A+yd?xK1(LpJp# zKHJl4&>D8b(&I^t+AEz|9!*k618s+p2F1GUs>AO25=RWWAmg0lSK-I`*}|yS+dQ=& zh7FRH%7Kyz53mOz{Xs}qT3;=i_ePF>F{P0KobHF#hjwXL;X^jG&5809z10?E%^r)^?fnm+ytPq6KtEp*^^(aZPz^ zyJ>c-QQe{Kv|K`3Z=NK!$cPxp+C)vM1l6e#&<0x0pbQ8veseQ0*g#tf(w2cXXD{dM z`Z1T-{J+pItSOb+q)P)d>Z45tuF6@x>$?)kXuUydYq33dGgtA1n3jS8(tgCf!VUCm zLVyPY4+xev2Lb%mO=dtp8qiLIcH*w)^@({smm5VF)MVK0MjQYz$Wu}K$#;rmsd{P{ zX0JVL_kvOPKpYBG)P8cqm8mH81fc&yfA%sQ7bl!;wZE4AdIfbGXloG7mw&UWK5f+x zB9{l&_^N0z(J=-B)Ts&3hJJuC6ugKJk1n#95`gT`45*oHR#7{F(upmyibJzi@4)NQ z1gzcp`R@iw_k9xnCKo-c8OUsxChM}vHEk-wV-Isr707{*Zs@Y9<#;GS?LZMmr&>Vm zWUYeQIi$wS{StAE_64+e2mQlU(~HZux5g~uxr<#Sk_IYd5)wic0sdk-k5vX^wZeeqs#r}&@2@3oFo7j#@5pz7m z<%lhs4_WLcL>_2UbqA290QUt|i)W`38PdPF;~#2&Sq~xT7Levp%6w?gTEhduB zO_QDbsk3DUcdoTIWOfyA;Y?}p>G)jVv<#UAzlAe5y0q6hC1mFb!=g`20{EZARehNV z27y^ZmEe(UymQ=9^G?Q+#s_}Ngn02=)2P^R_Zl);z9x1nzQQI54JaNJ2r-~cMeQdy zUqK(cL$X_e_WEaO=-cELEgL`8^T&wh;se6FY&tQ}-ST@piLz>}&!*$!8+Hgk4X;G! zoJu3>^$5_rgdlrzEf{N$T%Ga6i)~Z~w@Gi1Ub$*=Z`k3f9F*^|!(Zq?UxakmwJxjy zHfR%AfsO*Ls_F#L#PJSx;2oj&(f>oepGv`86jNWoC(VHFI`pR>TBddD<{gk^pdAh( zO8FjMx2$Y_v?`M^z>qXu6R8Eg>!^{6!MIH_Z(UJ1WWpG?UA?B+)%ki(3=CUsYHPh3Bl>m<^Zp zo_s33RAV~bYQ`%y(b-!?1HWO`YVWhJ*g?aV2ocA=``>owVUHH62=`YYFu{M4cxm(T zdo#HIkBs>*DWUYec(bn#>U%#Q+FXaW+;ReCWpH^)A4J#~(lU#-CbTYR<+ZRJCFq2O zGa#f6v0gwO98%{4p=DeG<=qUVw`)~dbA#IRw6-8${>TN1VFfxou<|47E}%`Vb%+t? z>EQibKIF*r8AM<+mB744T~;M)XxZSe6My}Bsi^O{We5J8vY_3QYPUu!ZdtjipX{z~ zn!Y-0oZ@S0Uyi&T3_zu%ABG3VWAkP7b#;6w*hZDb~VT+KX}lrX#Q2FdJGX(wT@Oy{{{Y!<)x%<@s9T6Gttum z{BMqq|7m$i1N^&Jz|q9X&c*TH-2!rU#wJd(F4oQ##wPaGb{;k+w$7&32CjCF!mg%9 z|K>Ef)ErC5l)&owt7Pvq0~ja^v@}H*#v6l~+Ud37`k)<7!mPLpgd|Lq%)@xi$6vXU zOz;PXOFO2{l`2{U&IT(pSQagy@uAr+R91_ZLF=aQe$`&Pr*cs?5)@cm`XjQHfeo1R@L>&<#K7egAAB ztXnrgt~wEqm%A&#Hh%ze-$`hGJoT&o$fSG850pVY`EY4pDicalB&p)?5*$8MGhY%P z4{)NpZvZ<=cw)I{8qQ7WYYP!%{J};RrFcyM?roFNGT2RWcmm!9|x=%BqqSYj&4BOWPO8o)Et z%M`^%9@X6I&og=n^4kT^^<)P_#0)miGhx9#kx%u@DkGRf$(QnSpG_BQ9Q!IaN*Orb zGMP@`O#vf^2Ad!>tJE~110%DNQcB9>$fDW-Y!dA=ja^_#e$8L^HE{>x?^0-!7$AVP zqQ|ZXZ+kcjaRG469#I--4irw8D)$ga3IKsPScL3(AYw`hb4M&9h%3rX2In4TAWfGE zQiD(pOffok!YI!)DPIdGZ+4H61H0=r@dT13LnT-k2VvqV{M6~mZkwDi92WU&PTst8Q%%T*YRUZb$ z%8%t_<(Rc^wbPt#H-@N5Y;%y`zv!gyFixt4e4ZHbkEbN66F$hiva>e)z{0{NrSWoG z<2^j*vWO$H+BAsvEy~4v1NS`@6?~1y8WU=BBkEx%#&hvF3R6Utn>NR541l)=D(Hwe zRS$6m=xv~Hq{(#$wFFrbi7d}sx(ZXsGE*wX&4b(;DladxE6x_}wT!r>IiWxCK`|&^ z$4m=}Ems?Mkw`L!h8wJ|>Z%Ak?s>9zqC2c!uvcEClosz#=x?_@*4eNZ0ZCrWNyRv=44~_`y9@oyixnTVca|(&&<>3 zI`MqALS}$L1U}y!ODG!!Ho${PXK(}rN=^&Zl=&}OK&=T2YOSFHQb|JKq8wex4zo1~rYlDjVE%dxqJt|?jAUrVlKaQJZ4YH~g`iW+0k4{sF1aM~C>8YU2cKH8WxqlzH-vS;^p0U) zBi@hepqW~L1q{fE8^`{|4Sz}AdX~5KY2Fe7Vm^{_vS62K_Yj6wrtas9To%jyjc@n8 zhwN$8&b5Vs?O|pIySib!gJipwQH51ucgAiL;WxED+j)4wqu zaA)WMx&k?(>p_XpcEuHM4%!wQn-mwS0M{-RhjQy=PQFJV%^O46KO~=vDs+$jOUlWImHPYEnr`in|*E0_%^?-pivr?r?b1EV$N=-WeZbcY> zWqx#UdNv|b<>XsEtxf9s1$r^?d5+*Sy0W@%WMAwTp--44(15#>uZd5?@bDa&a zp0(Wku$rQSa!#J+&?;q{V!P@y@~S?Sz7EnzTk;cs&!Q5uhI&48>3A{(qQuqS*M-B6 zmdYa4F1`|NlojGbj6xitS@o!pKp&&IcYx^RIsG={{X4qm>+j?ncJ%9?^jrbhi3PeC ztk4r@USmzK^DLk5Ml`0a;WX^k`YMc48FlrjeX^)11@e7g0yaVD`PD$pml(JHiA_>~ z);~<7T;E>?Uq^mZVz~#|zr=_Wo)4&A7{Tlrme?c3&PgJ~i#Ajkw-1I}4jTN=IQMuk=) zLPSFP^0Pm;pCRjDhuMOsJlPQ2K?+NsZx`O;rb_cLKA~*}G^^W>1iXWzd!&FQyu@6T&Ck0PXp9y?f=DJmQ9Mu$y~*4sy>iS_@$i!v zg&mVm-1|(QPP|J_lg-b{+5w7Cm~tJWJeV<<4>7=iVU_%yg3uUrCAAeB*J3d2;sEU5 zAVE{VZn@j{nU0)z4aIJQ1#E7)K-`-*d*&b|0^}@|0#^CWa(r_5Vsc2vkp>W&Cdq_6 z37)$ES=kgO66h*r#!U+VvBbmFo~!C25|Th_z{u6P97bZP?(eHy^wr%S+P{Dqa~c>@ zWO?X-QCq!Yg;~}R215adBoxfm%Wzr)L^LKiz{*3_JjSw=ak^r9hxGyxHo_+!nU7u{*7@lI7&N3}EqECn_P@dOem6bl7- zfu&m`2hsZEP39}p(wW?JVLf^S0#hL^hJsZQC!ck50~XV4wkPs%NZ@&fp2}j^D6}VH zp{XEDnUp9H$xURwJZEBcMf%id)_}kWX>)+sZ&R2MC^B>@;W+YoSo;pd3mXz@DdcL6 z%~!pAhr_q~hr6TuhqKKkLJ@B~dfwbsq?6S`V6oDFNIciLmcc=?N^|rUj;xW6=A{hh*N~SwFhi%|3yDN;w%BeQ6CCG7BhWO2Y`a zvq*uVWE{@jx_g+XM?vT?nax?2r$iGSvT5QTm&6n-%%y7Q=CNg&o3ff;9bTj-)DU(B zx}Z6T{vR(T1qYK#AAYkM|$72Vz#gP&^?KG+s<)kAyem@*t3 zP%1giKftGX{R6Z#hhk4cS(8ctOmUv=C(iEVMMu8@Tp^s{;H^WCPJFbWQul^8x2j$} z-OyTTFg&-K+!g^wGps9BXxx|I(#uD4LDiOZb*u2~%~sWm|3+b>-hi`SjiFDeuaSF% znP;991c+ppZ@6GqYFbc4sI6*$k`F6HiMTQH=XLKA^O)6#u$9BcyAr68C_`4?Jjr+- z2iI5}y#U;?;MZ{Es~b4rsm8BOV9V`#VD&U;VKADQi(hTvaQe=@Tx9aCDq@;-jWMYvE-;g_T))$u96JYd&4bsT0M>LROP>90$?N_<4H{ zw*?8f__jLtmGliS#)up2>n!MoC2G>}ykuB* zaxT@};#X)b^2!!!7F<|hE$#URPLSq&0kI_3_Mg?7J94V(&3t*kyGT1>1@Q+G@xr#~ zaCe&8-b~qPWk@q-ZDHV#=QZQ~kq5*uG!0cnaf%?;Wn@g&u`rxLQI~a9LBWU^YNlbgC53(n z;61AUA}-f&uCAUh&vC#?@Y}jlog@;iD5Use#grryBfYsg@oRWp>l~z&)!0F zawbGlm*&`~Oh;^+d7B2wgm;khs6SZP%h3t#II}GRg-biEL4-=p^dSA1XVX zd2DcUGvLc%TaNh)yYVwXz}eB~PA`%fStwDjEg$}VNqihA0S@9@O>(opolS6*Mu@$+ z;pV)*2YTX&9yUyoYhQh8m)Getwo8Z}H`quW>N`78N367OUa5ellJFft%Zm4yh!LKn z4IM|l(+mhP`qI(O>yskr9VpxXn3WT=f*o!b>6oJr(eQCE(5WCZEi6+|@-=tq7aFJK zw_&kg;b2eXLocknB*;WLZQZimo-Vk^|Do6TJFU_HXZw>1@(8a9`OkV z^Os70&W|3LZlm^I%>%nc-Q5P$LUnv`3IX`qnq{{|2v&?3G9O+P#!k}|2&*8K?+13J zKuw7di-j=5Q=gIM<}C_3ho;{u>;EV@H@3yRb}`xWNO}2P#pE+63P;@V_Ai$bJO&%= z9UuU}H}HSrsQ(#g@_$@P;?{PC2G;g=j?VwaOP88j^7|YpzQ<}WHl`#QlG3TtdI-RU z8bu-HD=B|R9pr*Uk<4sLWmq%5dq$>|@_6ZJ7(xGBxC6lKY|gKw-QNlVjnW@cu{K;Ynra<8u82f7F6 z^d~>&{A1ug`{&$o;GReF`6JNW)yjGBfI|l7c6T7)LW6DtuHjGcFU%3(V&P)F{Xo3( zW5+RN4TO3~iHgRQC87%;P!f6mvW-%Yl2VK|5hV?&Mw1X7!T24Q$zQeg5SI5{1RrR~ zU`$zzBFms9g)Ki&iG!Cabr~xQ(;Ps33W6mtCzTUvN6HHolbVo0I8#B5?O-)XNNi+G zjgF+3uarh_QcL(#Jup3Zf3!z_bi-ytBMLfd6cOgt!{fWwondrmT);?#YKR?KqU%^_d`^Ex^~zk%VA2XKteVnwC#F`w>BzLj{HK=ss8oL=9p;rB4?>e~a5e7&q5%I|kQn4l3Obi^?MJjsWWJ!E;kcBGX(srIQ@uy{1u@0_^Y=Pyu+9w8_1fSl3Sq$VBx zVUcZt-|LR~>NP-rYzc}JQ!bf8Z9}jZS(dnFYBi54*DI$4pf0w%i*88tJ#^z!$~jCO zKGjBKUBL0Ula7E0k-LYTq*e>7Jt}C>lWfW-?A&hm4w7amgg}TslJ*>0x-)O~ov{cW z4RU6pU*;|CKvtk;wh)Ix*W%_1*7)Wc$|ibb%%5_FS2;XXQFS9vt(+e~Du89#sXm~L z^-!dc$%;&5%8-BM{Z>bKj|&OMQ3HgL0T>wp5mrwXr!u6N+6rq%jLOuF=kLv#3J)*m>!Jw+I!wg2N05@9a!rS|C z=i}?~^jH;d^Q&0{)YHn(H}5w4C^h+`>guwkf>FG(WQy#$!QWUi@yI;6l1oeRcrjU; z&>NbS&~K)6;aaUx6>SOSVIbVkb;xGaHn_*u8Mpni{MM2|yLn^~@VF$QhFheKs`Kg8 z<97>gFGC?Rj;saDP~NI?N2teAmbj-=%h#;U955rjc|p!LF7_+5)2mn{1|FQd=~*wR zOs6p+Nxu>>e_8s3+n7Z>nkkRg-XkVS##Ks-A|+8?`ZL;#mDmotsRrUa@n|KCo73jx zyuEV%Ez#bYYimnqgRe~ChKO^tH22_;WW6O!&403PpK#U{)?ZCbFC`XtAADeXoJbI13fE-Yde(d z8}y$|p+H6Y{16BLKqljVl8&_ho4)+UIr{P$PDuY&5`ysj(c-~fB+rirOA6JbRJz4mmXDI+>8aI;w_Lzis_tyu`;2N z{@hHY_ci3NJPOCAQ6G4fSdWwQ8H|d-WM@MJN~2RaBAWF2etNi&jW!T*gT;%muo^3p z-l;Fb5=AOaq$q2s{mw7TONQ1$4m7TkC@7Q`QHFJ)I!k0kqh%rlYhhtZS0|8(m!A%P zKgU-qxhst|B?%2<`|WTLO2gd9IIK!Y!J{)+i^0eQU9gmHj~AK)?H3q$qw|S7yf?H4 z!;dWOPJr0O86`pjmjIDSE_6w-Hc$)yO@b$Q+Y;hZ-q}aC<+G;+aw8`%-&ZU+wAYBN zn8$!p+Jgcz@(4iT#i03$2UFrJw_QpW$EO`@ghDj&NMP?0e|Fz&F4A@JxUa@uHMR`4 zJkUrXarWyq@zEZ`pBY;TZD#!R?isz(7g1+i;($Qr3=E|}PM_MAZVaM|D||+*7_uvG z+C%`?Ekz{#lbbNNET~e5^h%KV9$|wN}81e7{g!Sym<6d{@}w}!sA;frr+X7TdZ z=GY=VI^2Nw5ty*E5^3mmtL%&2VY^c{cX5Ol#R1q381$IYN( zyTABz`h_OS30Qz&NC|=Q{1MC|f!q*X94H!TQQDLw#TH0M8olWpTg}Zj(yO0~ku1#C zNsvF<=;K|HW_m6lX-O;}0BwF1Txy3y3Zf*eJl#b&P;Dxpe)s8o8ev4_V0v&eWk46&eCVCue&)zbOCKi7Z8?{PW+Vn53=lhKOW7Av6qs2JA!3`^CHv zR*`1Q!(6dTp(hY|7$#H|mnad`^Ng~}6jClF*#*{3q6pLEj`oO9)^)}bkt{>p$OQ^Fy;LArj_M zQlAY}x#PsAP2O3lBV_0)gUv!3$cREH0dz&)G#r8?{`b<=1;M(uRrJz_vKfVRbmEpS z58k+uj!hcUGx+!+e!L|z6 zsepmpl`t#U4w~L%5b}}`u@akwd|=8_2vS6bCM^rnNorv0ooOU9*VO+slyEf|a7NG? zth2#LGd0!g1WBOV4?OiR46!?;4VeYbW7KcD!+oxhyNe^+(qR?y-Tn=7bh3}Ptl*jP$BA}m6{EpRLh!jRv z#a;KW&DKNg=ou5at4mma?%npC!fa0g9}#aLgEP+L!6QbMR>!9fjzWdy1p5_U@)!}@ z#m}cj$nnd&=X1SE>VpQv5q!GZ>G|{U@aw+N;%paS@A`_g#qL{uC=9rbUeoKf8?{ha zjj7^+UN-dEt(l1!M$@Lxjr~3YX^@RBv)^W7 zlyBj@v-Wz;8+nb+Jw*0-(#BgG&hCp89!^`BK-t{4r=m-En zCSimyXwmk|IQXVRRD`Bd>ssG|4rceFC|z@y40I16#MFXw<9A)4a#`Wim6^QmF>++JPZAUwP|`FLYXm~7xi z@3m)N$o9{-jDMZE8#Cd>ElQyuf-mGMcc{~@$W};bn+i=1gwmr&y?}fs7_3~0T$wId z!_!x@+G}OG`?=DAwUT=hgQ(ncxXJ!J>hfojuKW(=7H}+^{gllA2HBY6EBOO_YQ&Lf zGw8xzUclo`%l7lpJ~F;5ss%Ds=j9Zoo0>2d15f1Jt!GcR5=U z{#A!LVkGl1V80cs*E&NpL#fI0Kr1?yGQ3Cfz?E2=Acyr6ioO8#rj1P#@c!!R^G-UU z(!)lDV|ib-^mWP`Q76k8r(4P7ecH8qae&gb$bi~jB811Fl@)Hp;6QEe+l|hx%Y~e; zbS>1pG>~m6ycb}s0N%)9w4CpSM61{0t2O!yoam7pjQtI>KS|}ZEd5;Fgenh^ioOdwSvPTsdm5ru zR6aLDOlGZI2?%4W@)qEq-QXg#=Cj|^)O?m;k_ zfXoIp>^p|!3)c>KJQo;gUe`X8H!z$i+O<-6i@ITFwo-4GYTEC7F7(W744bkTIfr^B z&*(Di)x~z;%d95ir)oxX{#jFiFImrSc2k}P_mVGs$yMZUh%wu-UUyqTgJFk8sD<39 z_7?5$&uiShTm7$0<=sPM&z>}vJh0E^17@JO~8(rVP#&o&ahtlpIgy1v7{BQSSq44dkX=Pdw&W}fc z!GK@q?oA6&*8ZHE-ScR60G!78y%N)cN1d&0AnETVF!;;njC1~fPteYOIzA!sTE+LX zGp6G?-Ln7gIJ;QdMaFfH9uDzc2kkhP>ou8XQ{t`m$iZwRz?wB)5|I0X|Hp=lR~>n^ z_z9XQ{*U3R?Eg15-2ZUhXY0fka-fA?AFJ87Q>zq?o4c{-xap`gHqTF&n3lc?GqaBZ zCbj{y84;X5n18?H^$1De084gwp>`irfe!Q4+T`p5ts7H4rla2|NW?>uD%t&Uk>bC~ zs^UqG;P~CvYT$4n+coC)P&%*S`MgOjUg5t0A4Y?M*jowLmdR0&2sokMBG~~M5%lPh zOKMF@|NLn|^bxz4Fbo@15lrlcZ%w(vV5xL3{CsY>RT`Atg z0O_+zR$E3X)n7h0wR~<^m7DJH)vht>9nC8Doe<4GZXccF6NOdXYYyYoU7R`<8e+c7uiWX=9$J=Z z(!FK#pN?ZTN?+5t+@v3F+a5FI$;Ssnsxl%fZY%D&$p^ZVe2O*glTVGPO#4nX@b}qG zx)!L}hj12m!7|KbpDpE{xC}=kOmvCJV^pqiSiTFj@YBKD*+%Tn|@$!1QXCY_D4Vz`Yb)=zR9?fXV@G4EHv z=;Inv0OL6_Q>N;sPUVUp=ui2I=ZAPekdo#EAdo%gI9@=^@GWZO z5-q;Orx&cR59Ca`3T1FnQ|2q*oK$Jnww97n+acyx+jpr8ZPN} z&LE9&zZ#v|E-S$PuDjau&}TMLB=5;D{1Xn_8u@0vE)XM8DfWKOklzU!tIRUBkBKVb z(zQ&qFPm6262jZ!=bU*IUP~A`zgs=uy&q=bKDyrpkxK2mao#F=i0wHajZAepi#y0) zZ^&Wan79sW5zXYf&r|O`O{utZGwDV@_Zq?NTJvC9wFpG*VLJD!V79U3S=KOpG7Krw z(dA${w5hNw)#zJ4h`j`%{W!ACe>anOvi$AK8EJcHRSyHxNBU4swAKN6pUMO57@$pn zJ__o1X&F759I1u(a&G_0d25E;?A!h7U?WU7+y-E40YK*uy`#CLYaFEogkEI>Qw3@j z-4ocXfBC!W5Aeo3z(zG-+fN%S6|eSw+MlLC|5dW`_3m_=rR}n3H3P)M0jTVws)MRp zTZ-wk>{A;!wp~TsEFli8iw>wGsG3tlKnuPky$~u+SHtzu?D;!`f2hQ?8fL{Q+zY(~ zPRdMn04F0agyjN?=)P3+=*s4u*hAHtG4NF|U_Hg+m-nWWFoC9PN;A&$^g$vo3){_q z+rBXGx`<=ON=`IvtZd;(v#?tW@u^6SS)p)G$Du04=<^g4fJ~lWaT*Y{wS1 z57Zt|yK-#;@ZT^5*=Xjkwu9;psvDqIxrXSzxl5IU3{c}wy#v*zxdazvHEHD7u`;U) z@?npzs_!C04yYRNqm`l-sr%1XvN`G+$>X%JZ;1n#j z^DHE+nSj5P`{#BSn|)Kx2;o@51VRK%ZxI5)0xX`iIBjbfZBR8>KA>v-O9tAgRDcSt zV0l1gVtRne04@h#hud$2e?~W#ZX=KY^VvZD^;E9a>)HP4;E7uT)DTpSYZkv`XsGGP z-3FEcRO(yYq1J~=%i-|A#C~1`JFtcQVbOpe>>|p8xi{=E{-qiC#gm6>4yqZTTDj)5 zOXK>V`RS37&eA`Ev1(pdVPK<@{uM2Hsa}?S@nV}89t36Cp5V* zTYVxXoOy*EW-n*JRCTM5)+$K(^kb5)-kQ<9COAnU*kB7ci8ismMVLpLuVdTvK1L1n zcgpXp0G7d@1-<3gKG8vOvJ$YkcoorZbr_-_fg5G`kgF1H0LnX**Th zn2%yBj~I^NUrBu_244@|{vOgs-^xgzdd2bq^=Hhm`ee&&1&|V3SQ${IpA}iIe@3aN z1E7fw{DYUmS^?_WwMf$;TIJ=4 z^M~-Jw?&f)qcuGQvyY3>^-XCjo@1rww24^#UL%O7f0AmmS&xw{iaGR}>OTyZSFLjS z(pu#q1qVb zx?@2vZ-nP&3Csd2E2tDyn@4Hx8Ncav%K`AOH3aat!u6w)w#o(Y2Z|peUn+6~RntVE zsK}I}1OFpLEN@WNK~=*HP#fz6lo3!xKozSk#Vfo*^s7E{uRJwKo$O$v1_+hI2~RyMwFNg(33!oeN`%#43kijf00A` z7KZzjZWd3d-Jx<~uv!c;F;6tHPM|shYtWh>Q5jRGGQZTswmf?h^3#qxil`h?FtD6k z`8ftEw5TgJ6`pF-DcaVHsC-MWYNeX(=Xt2IrO}Bj5-#ziH%I2rA2c+BpJb&v4G(#h za%Y#C$TqyMQ} zMH;#q%RiJpoDQcdyE_Vb`v&~SLo?#5FCs zq@Z{ZB2PO>5TxE&=5C@KMiZ!3kSdWy#HFe(pXV;OkBHn*=A&bU8ZE zeVG&AbAaq%mCFU?WMA3+jxZAkOzrd!&wf14z>R}oC4~Y0PWrw<;0>4P7|{o(zX=x8 zl!v^+zs~qDs5uS$48|hdp(SONZ<}v=~P>b|G9%`Zd5BmReCH$XT(wn?icI)HG+w^tc25~@{AmPazQ;*=S zS^~|;+6Ktt%~{$gUg$$z{C5iaO@fgY)x;)p}!0;KQ1+<`UxPw8;H3+ z1b`SwH3S2~SgXjk;kgzTpZ1MD*6o zq({masC;R8X_Q?!`FK3i@Gm{iDe0q)= zsoPrz7b5N(FK+d(l)sk1K<@aB>75!H{-`slglDZAPoiDw#$pOFyf2A$zfMDoD7z0K z&8`Q~Fz3&cSvzX@81>=Nqgka(7^jEM-s}D4DD0c9r#Dk;i*~JcaL?NQ;_cGjrs3Ta zD33q-aaMcKi>{Vh3jv(a&vU^S;Q;DSCho{2KWqC(9Wum)LQ#t7=#JIRz@ne55L=9G zH|GyvRk#Sv)-A|t20$QQ;O%QnDGO>W)p-UaR*AvhuMs0FJp0>%#?%G}xdS!Gy+2vt z9rxKv#}DMOC5w{yL@8O{A_v^e-eh=FHG>R)j)UE49E|Xaffiw9yzV_*7|9vC1n72s z9D#u$9(|CYq(*D)D681Mu^?s)d%_+^cH#2w2u!fi&LMB8XZo+Ftq=qL#@X}_8}`{? zyhVYb5ik2nC`CT|#F0k+bz^C8f47q~58~!|u<%X*ybg=bApO9vvMsxv?hjA8rV+1F z?A6%ebB5<0dI72eg8n7v6ZwdU^oOuaX}mbDlHB4XwC4*(sXxw%RR2}j=J)hi#v7#4 z%)$*ebnv`03^;F5dTvf)IN6vEh8LOta{cy-u;U9*xE#1)Fo44zI60tJXW^fhHOfB3 zq2&pFl3Q4NKR`>IYw<=BNsBD55DrxJUFH{8wbl=o>4!6o9avo7aMQkD`hQzjlRw-L zs|MpMl@PN1RS{_vb$Um;m;aU>=a(9wQVMz*Q^Uzl=!H6P^{){FEOgu7s*Y56A(@Hm zh$Eg@AlxQYpPQHA}*e|)l|iyrSi&yU2}n@D8J4KJ(WKE$SGhQ_Om5? zGSr=#vwD83Wh~SlImIyO$8mp{STG-%4mdH-0b@#?PdAv(sRjj(VQ2yOacfk7{~5h)me-51NIIwIC#k@O6Vm+`^&L@$T1G&7}5t3 zB2CYe2XWh#NDGA96k_p0_{nT7lB09>T#i(_#@H_f8UPMYW(;r_N!`C|nixxIZg4?#e&$eybwr$(CZQHhOo^9K<+2_C0G1Gk`=EizluU}PV zWo2cR)OLKO!)d)gXLlpq(2zRW#UW+Y82pDbV8ppU83>9_MvcTH!Z1_Pf;)dj$ zE3p6pwi+UK&=*a@Mmy%~#)mU=8!)Jbd_Ef0QZ4HfBliQ@cXn$^P@~eL@E?19NNxRo z-8Lh&h2$?I5)_rx+whCso(-*G_%J$fMju8E3#C26r<$oEm1-Kymb#76=ltE}q4VQi z%;TaGiGgb3l~xF)M>wcv>3gjL-B87%8zBc8Vm((irB^h9q){!?Dfrl_`$CjzqgTmsGD+3=nBwJ{G{>CbsPZ zdYfdvFh^$tpU**6XhlG#_F@&@EhNmOXN&Uq*efSrrri79TZGj#<#=g{Gy&Bw1U!Tz zuat=$N3e~n8~u}sy@fLjfcsh|wlCC!3y*{7#gUR5c2W-mgFLrf&2bYV+INS@xnB@dL-7`~7#0Ck7jBEbWzw6r-2>vY;c%+Kbz7w{of3dQ>65L45 z_Bu%*>Xm{OLtn+so!>sMfWK8DIlSCya6;5aWRPv;Q`uEnM_X4O66tmhv8!SUmbeiw|l%GUtqD z!_k6A1%k}W9cGb4X}%%V<;oU_7kyh%(n;B$1Fu8X*LRP%X$On;mL32jP+zWJ@&wP#Xc2ug%xtgbC4^E=t}oo&rIupit4+mJo7r ztu=uBQ|6B4lO|RHD$a+pb@9M-)B&XNR-^scj;*yY2eDfy&_8HE)8Cpr96#a3A-g*CdK48t@4BUS(Oj_kdDI43ADrm`+Y z3SC^{HNiY!Vb$1#EIhxZn36oagQ%#n5Ap%~9|!iU3GS=)Bio&#i97Fb8{H>e_{mL4 z!%khNHm4X5AM=JSd=vaC5H%k5DI1GwEXf?)p0*7+&sga&0q?YHV_Ib6E-kdvXNKU7 zKQLgNEQSn3f6LOMKU^2sO5{v$s}yzdI2^ld@?U6EExTg7`)4ZCcBP_FKU%k``fNk) zh*BMez60hO2?j5OO&q>MzT&IL5Z*>PqUl-`@Q_U-YUO$6%Ey+mxt4$&ROd>60ZwRb z=w!u7R70sv&hF2 z&ZIT=!2^-@I4Zl1n)?!aFlj|;u3-rFjD$X+apv&P7iEj@^9iR}&9(5#|2B+f`^zNZ z2`p*}uyiVZ9&SnLyT<#^F-KEj&(uKpEfkRsm#WdeJYP$j@PohOXdN~jq;N}c68@co zteTBp=OkbUV_pG7pQcxDfO`$1FHwAD;ew0oy<(w-~_zy>(dx7r3a z!IO?<49w95_V>LF%H(n8zkgM@R;eZymnXg z^+XB9phm(!uC*xqp()fVD@ClI`D@;cP;MYIEXD%vJ*NQ;fL}AqTE(#;nHx+WQ>R27=gqQ7v+}tA~*AQ?xBpa|esw{*&@) zBsoUx;w|;vwr2{tMd?~r`{btl0xt+gjOu-f@ku9Zfjx`afNI~);P%xMK+35{damr; zx-NPyaJ7K;fnm66TggW`LUz{JU|Dl6VbcJ6!>x%Qi<&CeWKlL6DYL4;0-E*6n@2Wt z0yKpmG~=XzjE{aJiQxmZi8iPJI6QDCxJxZo1N}|KAWz^d&6>5=`hw7sZPahj>FL$n zU#>^wndFSq<@R?a?Pu=VJm-E2!0cg&HKrv5?fd+W95%6a{v~eXX(eM-ef;v(F1BfJ z34W7j3#|$E!9-|E5|%(D=rCztFrr^9&Z*bx(1>l`@630cbHnvs1b&>0XylwGd_w6a zwp*{-u}^J#JE)b!Dqt}^vN<{EbE%=5hU)(pp zb@Hn~jmTn-JvKjKs|oo%?yM#ezCL6Cd*_=kAGbVMVw(-9WHW4_&@Q(ekL*_{?m_AG z?G^jPko*QmS1B!qs_RsLNViAP{sSqk)fz7V=p|eI>3Z8~(!wmh zJ$<=hze=U9a&x+@EnFA3hV5_k&5^{Khn`yFlxc8AO>4#i)ueCb9(h zr>#)lA91kBmNyF6Zu)|DZ!zZaosf*%0!-Caxp1YYOX?XzQ4kuDKl{io*Q$)jQ-J|~ zU!!X<5S3FX*r(rOcT#AF_%nN#40=y zf%ME`2wsRR|K>j`USKMZdK&sx*KY#gW*zU6FHA)Yv-9S{2lae4m8>$vOQXs+c<9s_ z(eMeb@gZ^#7HS+N9Zd_<&TCkNQT(|kK7H!5d_9DEe6w}*<0()XU3B=jQ9aXkZ1E^F zn`F*=3OlL8T~wd0tuKSGYy>8KDI?T<5UJJ{g0hIOIv7kD)sNkYE59pTm-XG=j;GZ+ zhE|<-16GtvmUMYTQmg$@#3=w38m614N>HV@Z~aVkAp4hdxVPPkHf$}p3(LB*l6_A2 z%0G$oe^AxJYM=!Ks~V>Mgd(jZAI3Gm!AouhFSu3^%!i!NtAYen`19 zNkpdFYK!{5>p_O$fv|hQ0Af=F1P6IeNXwdi-4%TotyHtTSzJIjSI0{>0 z;^FofFwMezhr$z@uCc`x%e*0U@M;B%`&B#q{QIUD)`n0-tc8W%{g1nKy13CdR&=y( z7v&&8vIFNnY(M|PJc2l|=oZk~Qp!a+Yw&`Y3OXTvT|+XgCZHp;%7)uw!D86HtU9qm zycTd>n?=iq1QGrdA$ds?F!*7uSY0)`h<4fJTHR&uzvTFLK)t286&CuG2=tA7QjtN# zJsF8veOsWsbhfU9GD^4EM_k{zmSnr{aS4Y(Gt5pZ9p}WyP4n}~=6Z2=mDfk@^~r{2 ztIe(}#ht*n#CAp{-Rt>y5eM>IkRL7-nQ?|VWz7FML$$k1Mxn7@-9u+D_1&O8;7AEz zLG12G$DdcFMc6|}9R@IcjE#F4@LVxyne<(9Ya^#-q{71B%FpZN1m$S2kNAzPZf~IC ze($M76SLSPMfzL4I;C70KgSi>&!eTCJUke@e|caHj5YifeMVS@U+sPcPO1_}At4y( zs?+z>VdA6_*_T0nkudD*AzL1+~5VB6qD^KUw;qpgLUwk2tWRo_(X530jww07i zTu54ga@Rl@h7t}YihiYnyejEP)CEo99p*~!BzKi0J|ktgaGnI$p)Qe(`m863-~v84 z!zel4X=$%$*VHQn=H7rBk0Cxu@YwYxi}|FPV`e`%ExOnBrwnD)SJp%c%URuBi7PYg z0_M2AQtyQAsvXOW)UxVc?|1@{nz$Hvt865-T>Tkkc(ZFuF`^=6q2e5D9@(kC0~tzc z@#)56ZJ)CADZF_)=CiioDE(#f8!bElb9gxXgaZa;o%QP;``Z`X724$jrlyB{!h{}G z$I0OkIA9i5?cna4gM2TDc#*m$ivJ`#K$zcZd3SzI@8zn=SU*{DcKEJ014 zK;j6=K@#JFF}0Lh7d8hw;5R=zM$6Mxm~@%ZFl7LMU#mGYTK+l;wj$cxyj-Q=Vr8_V zlmK!E*o8jRsi>fkO}Gjmu|#Cy53)mgPq;fB5t*`q^#0+oMnnuIL+e_<*-U5=6UURf z$?R~6K6N?{8>=~HV1X+DcfA)>Omb_&gpG_o@9g7Ub+uxi&V)TNVYt3D$9DFUHKO=k zzI*qHsAY#}*_S6LC(GNYzmdvMMQg}z%bFznSMUm3O^Laou7s$kBWKkgnloso$LOXb z`>orSY9?;}N3*o!4CV4B2(&u-MO9x;CB6~`)l@qv4CF}|tDqJhFZhEv;(eDDB9%9ekGBK%Nuz5;T0aOyVG zRl`*`Zam$1@TvKsWLEcH(N`lYnzdMa26kSlSb@g1wBVob5r(A8ykqb$2qsgz@jo#y zFUXV=U|dtO4+4How9X8{mGx=6f@;L$KqUT1f; z3+*$Zi(0%?;|dE#3+;0Ap{e>D$Mf>EqNrF6^A1HKH_E{|Nl$d(wQqG%YE(L49I)>#5Ty24jWhKp!4Z%>t z9NhfFP>k)R??q!M);?!PA^t6t=Lkt?_}0wzh9RP@m3e(*I26IZeK*ni6$|>0AUJ%% z`ZEpl)5ukKp5F)Ce`xzkUmI8#Q~-dXtp7=Ei}v4WTQf&H7kj7w5VtL=GIrQ(2tC+m zei-EF*!8P2agqr94M&>hge9reL_O5y+ZquNXco~To2dOl8YOiQ6ukbNY5gB5INOKLeyZaX8Y9OUb0 z#f^I~iSV}hdq99}n5t;)!O|%yd(x&5R<>ybvezW{yuB;DOIwVLW=}zpy{I-q`l-@A zE^pK|HJxc`m(QFAfDVOE2a3X4PVW}(EEqCi=)s*o%Q-0KFy>!3?WNJDTKcF3lWW=a zP_1Ak0W{1DIVyP1nod*42RPA`SD6-1wvM*dCr)Os;#TyE7dF6!F%oA_r1aU&dq#GQ z+1XxXuS4fEZ?;gcJ)4_5=A1av`rgoLhYEh|xUphS*I1rKb$4U-OMKwOljLx=l-Epu z(zg~PJoan@+rbOu5fdxu4?+Kuvvk;72h__`EhRDrLb*)D&{YxmceoL`PtY{&pOM!Q z+nc9MsAn1tkidtYQ@)6zAEey3({DE_7TYbhkv*wcSap)2$1_bO+EB=%X?9SyY(kym zkY|V#QYN2i5ksbtY7jO}zTw zLjvv)sO*rJF)`QcK3GF4%j+HYqf#+oVd68eS26D|q>5!19FPBb&e_HRc;oKegQi9A z8sfp=jbVp#Q8rQ@%@El&Hc%BrO9P+(F0)XPRO8yhO-gVng-+_C(;IDD6!<-2zoG&N zy}K^LkN7pmG#fEX=?bmQ)9YVn8TOZ3ipz?d#zD2KP39-XCp-0xFnAFxnB2peR^$-) z2r$-!Y>x?I7^dA`+=$3`LXRxlfL5-TGMRjr=%w3<J?Z_K3i* zfQzs#ObrqSdc)Q7l$ePs_mhJINE~NfeQK;52UhscMHp#-W+sev375wg zygH~YGJ7N$(m~gbsJU^ArJ4-zzo`1DVV%r@gMgT@y+|~{H+9HB#RhDy9m`ytwV{1s z#-*$+$5o?~D4hnbS--U;z9g9L%8V8iVRo;3RHfgd46)*yI~9pWLG9(rzE7EXb9E?L zpCwOLm3~p$s%^n~D9-t=?UntTbo@*!@>5>uGZIz0kPn3Hl!T<*CpL0g)5g7SBTn%< zZ-F`RHC_KceL$~co&*Q6>P8!x(TfjXIoacbXU=xmmMWPJdh}+dRg##AZAvr^;)EYM zb9Y=U<1&|!8>mHS_3x)tpy%^@-kod;pjVTuG~Y~SpMS+)LYxlpCNP6X?17qYMmN{K zZ%_37*O-$V-Sq0;cES?u|CBE={#(AZx3jh|vM~9tjJd2LW4FnU&;!2qOD|4G6HmU$ z(@AD?U>M_SGvuiGWIVT|PLN92L2M%S>uW|n)o^K>RctZ$k!a4l)9rx+r}yRh0JK9D zL8=cKLoqMZEij%F|73Q_5d?o0)Cl%7?i-edW8dkL)9X2eP-ByiMuUM}04a_^*)M4U z(w%ZfNDjQPB1>gJJSaMnrEC_J$S_()6RIOBupfwo<5TkjEFcVZeD>58F%L^i%bF!a zigY;raUtl|uz&D<=EzPPdOGZx?Mgt*MU966zM#HMl6Fy1wUTCs{ zU02Asj0w^eiM^j-Ac~qnnCHPjIg4?0X#TT$ix8S{^XsLS1o$Bn-^Wh(Miu}*+Hzkvyt z`~bVZaEI2of@ zjh6I_!y!X1atf!E0{r~_zNpaNowW>L^=}LjXPKO(@n^D>^DW%PE zTU>FE6sPU&t*c#P*PSqZJ~D3&qI%?0J^R$>?w#Rj$slEQh%LPVr<}Hr@;2>W9wN)j zuMiYI0G+bZb+j0#lkBgiv$ku)cPD%Pw==w zTpVdUxjb%Q({t3E@5y&5UP~D zu==dEw7i+is&7ohDrc6BJP%IKSonguQ||)vr1Z5y2*OCRRUAEu$j<M%W+NRFJNfiPzUP~D84IIY4?yd$znqN68rX}VP&gI79aiAM`n}j(YWSD zh0f!>#lfX25bnGpL%=HtSS|%63Y3Cto~rC+k4X&h^(gU8_dzqDH{|CQ8*Ly4lPI*p z@={($@^^P_+ae&sk&PaEBU@{K4V-iq5b0e1KnbQqf*Pn8 zLXQTH(=24NMSEJ6q;d8En5FtsQ8#8ubJ`sjKEaDuF({t>gEunf?6|T9%se4&L+9q6 z1G2nvrnh9TOmE!XUD&Z^MVl1TH+!Cpy_hqiNenzaLHlpeUu;;r+5ku<&TzhT)MEVf zB#RLmd$y5p0D}v{;HL(DuSE3UwPlI71OT8nqWikq$i^Q2Z=`7?7I;ynR+vIvS;(^w_s#x@e3q0#f3g+iQAgZ{O%$Z+}Rq9 zJYnm`o;<-_sp#qRkoE9Uu8{D86!ZbFvAE8Q=EtEBZKgROFoSArw}hookJ_fsk87*1xLThLW*4YlwoMYa`f?UXm~^i5M!X+&Q)Dd?X0dcS`g$+ z8O;1|7692*oPPeQQ7o=|u-&W*NTVf#OJcbmTChL#lKX^H1m*hZh@8#XlT3Fh21tJ) z;ojMxrHUgi9_ZPuk_rwMm5eIHp^BJhA7P+PT#eOLJlk~x1BfwZ99YuNh)M!U;IkQ? zcFd1FwXmaR4B%$z|4HCNl*y-O4Y~vyn~Md8OYao;Ku}h!iP4cRVwy$k&LiU%{LVT{5#q_Xyl07W6)C;@R18NLyg2Xdza#|)+7?@mo z99vDDW>*FTydKIpx=c%p`Y}=N`zytl8WThGnX@23vA$Q<>h#aGWkW%Eh_+FBLbP&F zMIT5zkEChS%q{eKMnv$~l1$u7Ai+?^q;B4#pb2=h! z^7jPLaQ1}Q%@i>oe*$b|M#YfKZ2{?P*A|pP2Ns>g&BZ2cT7serUbh9BOn!@&%@a&!G=9H#riAAE6hR zGHS8Xci?^miV{aQAX5REiKz4q7vF*2MU*^QB6?F$PqPF;9oTygG_-vb`@^1WGi#ZQq;rS zabCyhu>2Xbw>oqKkSfS=g`pS=wq_-^c5|;nz9rL#J~~o61}(!BnYPxML!dqhBEeg! zy)!ZqGU&n#`nD$V+QZ%*cT=u&O<~!w)uvUYwB921*{>wS&deTBh&Fu-A_Jd*b;+2h;J?BZ1}Me=Rylzz^YJ z|1*d9{wHku|IT3icX!DDoWb}%Z$=n6I$Qj6-gf>kJlOMpcF*;`tf z7uYnr6FOa*)Vf@tXN2cjEVuw}zl&zE(X3o$XyuX(fGPzq$K0h^ChK{~i=I`5&23Q7 zwivHtjo1q3a9z7jcfpNt#0q>ae^wIc zzn0=lY)^+CcaDFlAN}nq(=-bHY1RAwArK>ZAMa<&a{_?AWo|;{z;?nL$l#K(c+Rn+ zty9?2b+rO_adx|*Z9H7_B?eA$1;9TA$H=*;DDu3j?tv01Y(7M>hHA&MD(Ucp*6J{_ zkphBN_qCGY((KaA?Cs1OM$JsFLQw(L$7nV=&a-N=J@((umO?De=&g{$p?30Z1SMR_ zs*SW-wXoV7s(ODuC-V8$keg)H<#80|OenH>NYXg~G9qOnW2p84gO?pjJ13;T`PwBH z{h5vuH^3E1+vqdwrusBC0%u@yz9o%<+Arc`Oth#P5^uh21w*$%K3ZZ^kU(XnwHz`H zo1D4cWg{AAKHX}i9PUuhSGlXAE^{o_f_8hPU&^#7hI4Nn$NioLCgNhwOM{YWBoi(> zMNSN+zgY)1tRal&NPpkOJUYPvbU5}PLB3CU1r|5(9&NKbs#>9X7^gbZ;ThYq24|qM|hK8YZ*nX_)zOn zYpZx;4D0eSQBnM~LlA_4-lmU7`+xi+x2Vp@^(H=5ebF??g4%^((3UC1oED67a^S4p zt}F!w?ecxEFw$H(IV2v%B>)s#leAC-j1k5gjtgMs2E>SQ3G1Pa_EmmvKb{ll>&Ak! z$^z3#N}_^v0enIh$jP5!2W}!z@VsV&Vl`0%I3*gB_$emJxswQbptHcOf^smjA6fAF z#7}E;#BcaUOie?74#{5CUL+W$IUMa%DY&?~`(2-Eh4Q@oBX6ahsWL)5>Q^lwFzWi+ z=w12dxvWSI5X)%jxU7Sr9Iv@kqlM)4-<}B{scCo$r4>)CXc69KW=YnIm+?dT2U&0jePR$bOOj0SM#;^-vUJ62Vwx1#1^1O> za7e7OQ8QpLxzq$_bpp*TGc-_1KS=tt-~ z_$Z~5(*Z)5Z7T~H{L?}hws11KuccUs1Fud>ZnvrM$>>LxefY(v_+~xL$2n@nW1#U* z^#1^8_RLg^r( zT;mBDW*Ooba0eYP*tft9dy@UtJ)UkCptO;t%GF6X^I!LECt1dthW* zggc7SX`nQODrV&D2@HeT>*+crb;#@(yAW8G*63kO3gagh4O9?QiKTy}OGb;vTeeYE_DwX`~DR?tF!DVD`7 zWteAe$FbuEKoP0yEHft)B%A7^gY9azs$p?W9aQ{gdhnDg#P%JMt(F0sH9L`BS5e&e zC!)6vY*@`sxfi;iAH=n9-6F2bC(p+Ru4a$jomktd1wi7IIj;9)^CsZH(QHn-`))|M z6#}Ux_f9#b7XG&_50Fm@P{{0~Kkl|3aw7Qo;fv1><~hmSHLyQ9g4xqpo$W zT&TI(B+w8D(==joH<2W0zXGdQ1t~2K#EmQIE+F- zat)AgY)!moVV-`g`Fx5-t_Zb+w%_*oNapmJyqXiw$#5{`$g7zd{rH%$oNSwh)~nhO zJlJcSaC~G%g#7e<_K9S1b@LWJRqYWYL9ehakz;?g8AJv+WXNOxv@&hD_PcI%w)Fuv zjYDTN zE59P|hmxiv5Uo)HS+2z&>XyCtYyG4Md#R*_`B-H{TvccLfmmi|wwfSm572dNPdVTXk4$LG*SM#yput8kZ~b?aZ7t;dm>?&gQ(5oIrx&h4ytQjVGu#hWbM!4| zBJ(%5K+y>vY-25pR{T$fpPgPu_tTulBm-I+hS5`mU5Me%kk_M|1w;Yt4*939-oLoh z-+n|X1Z+3G2x{VP$1jNgCL(L))TxNq3TerG00{kBZbWxQe=)YS>c*aLvdwwDX$z#A z0+0$jGrqgQjUXs>Zn;-<#ERS7E0jAIf7?6UX~LjG-%0%vD>?tI)b{9D1ubyH-dWV2M=DNplNGh z3KDw?s1CrNaC^f7U2I_aeqkcy-0W9y(We$dmd8NJFUA7YW8nm2%)g#rE{+y8kAVN? zAR>u~K20!qtro5|?w3%>g%)TKFY4@ro3>@hYqQBJ-*GVXVW|VRN#8YVn^NiRMq52x z3aVfLxqGW4po@6LB`2$G-iTV&Y|-Z_pDcP>6J4z#BUPIDvzDlJ%wPxwb!D-8*Hx0k zE&1dWP%VR*Udmzoj^bP5k@}bLh+^|cgU@=OV%vIQnN{ngey9K1($VY3vhDs2*=xnmlPojWi>*iuM6isCu9LGHBd-~#3I79Qd9*Z#Ye!77?J%+4C=lK zj6q#kT1L!pWTE|Vw%|!0Lv{y?fT6X&xD?5y%u3o3Ep8HB0XmPsUazOHcSDTT(nxew;>o|R}UrbT|_+3$w?nk=*#?jve{}j6V{=o<4!fDj+KQCs9 zI(_!y-vSB5Kg{v}-%9-(RsLTu#`Zs^`u`b3Uh7!JVoNyw@cG}yr-$$$<(HZUkNm{@ zVOYDqhVS^=XVsvsger)ul1yl#R#{#QppCK8uhQ4^M(%fAfqH|A9Tn}^p;0t+eS|IP zsAOOwV!oRQ8ylb8{@ir!CRiz%wf==c+5meLuQxTmQpEj9vfGIlJ9#fPN^&d0pP>5M z^LoGdT>TAKxyp{WK8szGRw!2kS%-x@iF9%Pr`+pj3%;urqc05M_<4kf{Q~UK9OsRx=XAp_r zDQ72(i~h_WsPo8#lqQp0SRBMO5A4M;+vfm&;Hrk{7|c0;zR7!*14bAey|T=K)KZ%V z_?DWvm{;NMhXmTv>$A}X-v!?fxF6^4e!t&sOa^m)v91`$tlNKF&6r??-NX?mf(1M4+v7EmL!; zzw6y{K3=!%fWO1fI0#UQeV$W{B3J&f$BZ@+f0{=2BN2SF!qJb^dHXcBaTp zYNM73034bRUH#E2h*z)78=W7+JeSii54vGP<8G!Dl@bnvHsQC#Vu4wDmAu)q2PA5r zFJpzy#kqC5DS~w=BI}QBTlD5nf{p2uiUMTGxZDdd>i*74DkG!P)`p~F>yT#gJY`QYYJ7TKQmvo92ktqsc^(`OWq zNx?_%^Xum6`*inm@KC6%wi>f5EJYq0#SHP7FVnKj2tDB{C?mTQV#z*or&Yjb*=R62 zr{A>4ZJHvAZv|{& zAumt9#*rL{S~%2_bY@0tB71Q;oYyUGKCi8wU-k|=QDOO&>B;p4AWU~KOLO$X-w5ca z7-=yqIadhks^Cu?hVD-ReSXcrw&|Ss8*{D!ZaK%Z2pjAHP#Sz(&96nRtD4~&N=yQn zwQf0&qE6Dus78l&&}UyYvQgkubV0)V*h<>QNdqm7b7q7c!_}N{hpj=CUZbn!iu1#D z7Zd`y>;jG=Odr;wmyH~0gcl=FYs#|NA?1S~s$ zOmH<&ZRV^0HibBsZ}M$zJY z@3m#|36m|MOG_`r)82$*i<6+Pv}rZ5yzl!(kJqzXTh6^`@&rtl9!!5z8vL4qP0wPb zP+Xz_!viIcCjNLwz^$lDBy%Y$8ooXZE5r6k)(x*l3QKdq>)}(~eZ;o{gY(WV{Rm_C zi}!gIKY1lXbQ?tDpag91+G-9_2MV~>jiwU_{2}6|6D_T$lBM3MlIrYYs|j@saB02P zg&fH}fflv>GA9l#%aqKe%Y#krN|sDh`1ZLtth~ySh0BEQn#w{8a-h(%u09_aRw!D~0T5r+Z{>1|?&EZ38 z;KSHAPoi}`9L5l_7`g_$8zwqm>_p5cH|}?**&G*#Xumm9Ycbb3*j{ zt}&lO^>xOJZ8x2J&Z^31n9P(Vmk#NrR*jA_!l=V;g! zj+i5p9<^S3m9-b-O`6AtSSb4fNHSrk@+pwxYU36-PmXx(V5JfAk^zWC>z!olK!le(ju`6 za}ln!=?kB-Rw>xLqfU@ejVCK~NYH4Pif7ZR$O1F%*hda428xxUTM7iEjbRk$(@MA* z13!yig@U4})CTYHHEwI+84}R4@ZeVz_THY6BB7NG5PQ;*Qgb%HHP&Dkp0BC6Ptbr?{&q& z$AOm*n1gY*OmXH%p2?Itu$~5(I}EF%MPk|qvByWD2Q7*BJiF}8@I?5CTH4h@mRAE! zRyY-6J62kTp-?zbZzr(2aR<0w2A!?sd1`~A<)l_<1`+&U=Grlp#v}nb~LrN@%F@5geUu{%= z8irdW6awb&$OxC+1YoBcM9n|5E}F9zgWVyJJp0$FW_jk^|#aiqn8ficy^;Yzhl* z@J1GF4P<9%oTG};79>1FB69G2fKZuRCY=0Jh~gk zg!X5Vz~!MPv7VYlkV_d?@|#IspzzlCb7V{^hjg~A2zCw9LFKcYmfPpF3LdQkSZro* zbx7|hq1sz@Hf?p_gH`6~4OvnM`J<$$Vl0c4k10d@OgUK0*DO+gswJOMQ{WX^Z)+*x ztx=yBZpb@J8eBXEL_QN^_FJyIhP6*4Rr&!ru|3CcENy&e+8=q?haO&FVw_Zrr3%G_ zOy5k0|52o-jZSrUp_!Rf=Xy^Ra+_~{n3g2gAd&KJ1DvQ)w~UHQM$$6H_c*c4@fmf3 zaa07!s(~J{qF01=V-bg<*3q8A^P5?KFbw=gi_-mt&rKMW(^WA= zCjFVdZ#uwzBq8x~Kbqz;F@vp7*?Q`tNA4T0s=)QaMe7~Bw7{yYm*u*1VYP5f4%HG+ z(gVSmYZzpzL~BG9i%ok@MP9cCt)r#H*g<{^(~D8{ob}=f9_4AD|LK_DM^p7Nf|(uG zxQk~8XV5S~SY`_?@dKtIpK(e<5ydM@sqXwm3&W5vd z80K}PQ5a@)GNN(bD9TJ;7{7t2=%{m%8WYjCNsZG>p?sZ?hD%5p^%7}llB3Xk&Cdy? z!DAq$eCCX3qO8@2e(AKu?}HMCZbje39NU6g(tP?N@ZwM_YYOZjIFdMVtx-WF;xnYG_Th3S|DEFHch^aUCg?Kr!@9JPyb|N1$x?4Ii(8 z9x2MuyU5cN$hsAijpsL_P`FYZ#!;o3jR_g~duj4Wj`jn0vj4P$G2Q!5tDmKJPY+M? zxMg^CDBUI-^8V^vZbQB!n6PL#4RFOZr+A10{6A}k*W*&15skb;xjNvMLZX&8CtjYp-m`{xMxZ4j#htD?1wp-6e)ni0hTGrOZmxd7m?HyRPaDM@TE8S^xeLL=Ee-g`#nr194AD#=jHkzne~@rLjyQ%ozUxW=1= zYOWm~zDyApw-pxVjg~*di*eXbDeNM!eLtjKkh$cW)y-unRChEHz29gV756|`g-Qv? zb6KPx`-GMh7X5B2V_;3T+aG?TCew}^2pLq0vr`9xG#7Lmp?#|iZ3ktGfF8?PmrHWWJL~<`GDpk@I49l$Nd5#QL=Eclb9duAHh$i_#~(eEuG*CF$PtSme;TBQ z(0bU+SVoSe$<;2u2nlA2M5FiQN>rsbYL2~z?%c>TrSiqX5aLV07Fb4%DH>rKe(e(n4*wKenwGUrQK?{9Ah_(G=Pb!QrZZ)L)S!w0DfX{6cV-SPx5EC)2eY z%R?_xE48jjn?OQGVctNW(zTjDFu2s^xY9o!q~XeFl`WpqRB?)q%!ruAUXb|r&fL;r zAK)ReJyM^MXx$5Zay5dRj4nm7?2l8AXdr)59#q^bG#H#mx2y`C)RkL`m?%a!qlpaQ z(8CT@$2HMT@N;C0DiILtXxC~H(5wO2ERCw`-VZ5=os1hd!=Q*IldZ!MElyuOX6W~> z?`PGl6 zx9bkgndP4~GPXkr6db_BnG~8>k0hY<=_UH+avceK%b)X5&&W10^D6X{_%qS1eHrSp zeVdCFdsQ}m4x>el$@Q80pdEJZ`SaDE4${>v8M|yY>LMl(@fElbE=Y&pD(zMfr?1(Aby2@rY{_(igZPMd0 zs+QfQ0_mqCdxCcH=9dj=gTCoSS)! zv|)zht2vq!sW@xOxre{*DIZS09>454+NHVQ-ac-;y|$FNR%yX{zD|LW&VRm%9>SXu z1f-l%#4fM{jl|mo%_FGr6g^BEXrj2k5oxvEpI~$=6Ax}6IF5ve;?$7yx;?w^^@?IZ zlqbrFMo1Z{SrgFJ>Ri*)nhB~NJ@^NsCm)l>}sFT<2fuTZM9z43~PUaiH}*i#;C-;0Cx}eQ)cHh=rWh7onMj37s)Pvra=hW zUURNCD-S3HnX<2<^Kh2;ArvUFuRjJGsBz|;6BR~cC^f$mp_K&#!)-I~S zgl-(WTAo>-SbT%3^JD)0OLS7Z9_q1#g{sq?^S_F_3ZOWbWsSQNEV%399^4Y#-2;m| zEE0k{!9#F&f(8igPS7C1g1ZweIB#?6og0$-&bhDdeO0fw{;J)r-EVsSzk8-A{S>d zQurhiE~1K69O@%X@3+b)M{&mKly{VizErsz{<GTehEHr1 ztiPg$t1&yGP5I>p@=#Rdba9wmt$2X+3MzD+HL}DawdKc`{MO#wo-_HMV$qC?bM^G- zEk0ng#Wfq3XT;VJ%%uf{qz{7mfKW51MfQO4Td2u_%hReu+wRb>bs@dPy$e>tJD$TC z`w3Z9#A!9Nh47MTM%C@*C0E&`ObA3f;q0O&-lg(p<=fGg7=O(1tnN!ucb<1r#`T%B z;mFz|ALDTAw*@_<69w099?e6J46@K%!dkpO72nZ4VO!or?i)s(&kN+pGV>|&IJL1= z$mXIAO;~MoDc$gX-Bs-a$|$8!MTEO0I<6-6b~+k#`I^#`3MtkkN*BG;c1~!$7q()N zCrFEszXn(f!1f?3bH^7sorfF7jZG{MwPe*3Azn#eru0C*_RWG9Ria-okIa&sbMX&- zYUtpb7V{-7jiS7l3vGE0x_;LVA-CfbDKVF?C8?2>u&ykpN*Z?e@W4K0+bpqrpT1SW zFglbUUk73jp9OP)jj%O-i^UYEFfyy}+YaWynSVq+y+;a!%F+ABEUvJ1rzrLO%T|QKnT($ip=_F=f^1Mm?jZ6G ze9s0rpt(gXqRt@22t_T#ycC`a@R35l5@I|Ph%$-pi=DY%o+gD6;2Gr>NtsN?mKd3| z^3vs2z!ZdkxU0Os>Ce4t(uK!3=z;RuL{#i)bm`0rUvEQ+_7<5kQ06-G>xPto=V=93 z$z4q&dznM`^?YQD)^1fpeN3=(3qqYkc*%E(R!*L|jPPnUjghIr8N&0p<#S#*JBk~i?=;g+*R}c$(R=ft_s}W5M{u0B zM9lbD?@#j35!K85VMiG&7%&;}F}SYzY$XIQ@lOwG2Co@D7bvKs9NhvPQgWrdxu7~gfru- zR@Cs;e(?gheqyq^LS*?61Z(iO@II<=CGU1&L>snCClh0lS;-Do+#pbtQmMUs=L%51 zSWI!W&*9b38bQn(bhz>&RmPl=M~xw{CN>b;A|DC#^!fcS_=)Y)Rz>E`T9a}_s* zr@TjfJh!Ir(*oMg(olV{p2G~0CEqYe9G9}Wv1*{##0S+ELhqthKGP}%;4`XZV@oXU zHfhw86lCFZjhl!+y_I-sjo z$14K_&!Hyu;I(q37o<^5yRU7h5Gf8FaIHDG;gtZeQ=B^f=PQ9E?jE|LqseV3~aZx5_%`t!_K9f5ruF{GPw<21H&v3Gktq%=T(7g zkR7uHzHYTLL&@@UVw0QiidQ(2=_!@ogKUUeU*=9B^!8sb>?uQT>4<0^z0qwz^h$Cj zR`P7dlT1fj=2+RPrcO$NyPCK6c{i1A40`z9_He2Q^FDr6D`n^uyF+uy&E;*M?vK#z zMY~Zvtut|oEUAs2eCv#etT!S$CV@}`fg%DI$`~UlBAX^ROVMS@5CecD0E)Z)RO_Q% zk#{CpmTRDL6Lp7H9!^g}GAm$N*1quSI>pukD?63#JA!T9@`#J>33qy|sh>$DC&(IK z#scq#J(--s|EUIHrz1z*t@YIhQsyk}X-B4sqV@!eW3_dE(7sV5W#Vq;Y^6Ab;wyWN zhM411d6p8jVrYZx$1RmZcuTT*hu1y#_3a*X#J%jo#Of0u`hm`v>txD(_S6E#h zK6bb?L86gXh5i6TRDty}otqh9OjMg;A zooCjK9d`kh9It3l%F)M(3>Z$0YIuzXa z`K=w_xN51J6-#=NgaP92MNKIIDn;=;6N*5e)J|QD`0RZWmL5)G)0I%(ghJ@*8Abp#-xf;Xmc9uGESe3tH2PnCpq}Y}d;6m7J~feQ_yVkyI2u z#hl<(d_FyCExlOC6_6lkL9*#MD>S(lnBZ6YwkTF~tc@y#YvtDNJ$jR%S0DS#&!Qtqj*oh_*w z6PZewhG-vv&$xAmExe*j*P^rJF*f`<<+*ad672Z z4}Oz9FenCJ&ebglfwDLH0`|q*Q@(~@H9n(pu}N^l7JhrOe?fXgC+|d<3783pQT0 zU*=ehptUcow%B5>c%dG>-ZF-^)aF59P%>946Lqi;6{iTh-}t z%w#kD5Ln>QxG3~fGw%7&k16OAUVPKUgu~h#A2%*hhDj#I>c71Wf0?mT{>?Tf$?G^7 z(soyLH#QQx>bx|v2!Wtobcj?&X{wH?>MN^rY8G2T0dx~qqqpB5H@>1B#NDf1`knz*Ua8tA?+wQPLJ6@3IA*XpN>9w3~ z5MNVmE!vEP;=~I$gby1k!WKJcM3JO4`$s0#JG)NV)=?&uNjG{Q{Ri@hJE0og#<aMT&tqwZ7KLoAb{oH-;Wc^mm=}mjEDRT3-wd8cPwc(X`Sfgdtl7%e)rYUG z*{6Au*_@Qwp82S6TC%`ZSsB>dq35SzsG;WbEuGzZKsQOGq>l1IpsgvAVOcgc=@y%i z)bo9t7$NH33LA~bI??SoGl?tmF?n&ASlf&8A|9bn3N+k&=bUwV&dAyHsQHs^-n}5V zvC$gWv!k{A40)f{mL|>U1c5i;YAhHyZZSQtuUX)+B;Ri~yX2tR0C%q4VWBP>-RT01 z_L1FN{CGQc>(a(}1FniCQMN-!tt81{nuX5>qf}UzN3({{aLRj-8!|qlebM% z3&Ri09*ncAQPNOh=(>atJWT>5lYuiOzA44_ zOFqF3c^QNLWU79@eN5Jn(SR{xcH#VEuWhlXtrN&IG&!p@Z2y@+Blp9}%86NlSF<9a z`vd#^#HB$~L)vJc@YW`_y!(TG9w{M?V{lv%z^Lpl^+j(#zSF&fo136;VBnUUCVFP? z_r$sN!waix=U3yzJ~DUu5-4UL6zcD5Fy~-U)%&m#5JH0tl><9?knCu@p(s3cswW+S zreBJ<^&O#|NC%yL>lnVgFj?oQNf!$eA9(}H3^e7=D=eF^nOreh4{C?;rdh3hNvC4&T~;$OIzR!AUfw%Ws1H%ISlDFjUAfNNDfl9)VV{Z0ny2DVv&2R5V#(3?;?A- zK@&u#BAtaRCVy-&5vZFKZ3@$8dj>PMV*VBV@K`enM{7I@mp3i5(mU@s4E{1S*7>4 z{TmXhyV#hx8`MV&#Bg=Jy^PblM*zuAcXnH%Tf#dBRl{+Mg$*A~TuuU=Z$tHERGZSS#WY$7|1PZ?>qEQrc?J zAr`K}J}JR{d_nRqA;L;->0Ia}$4~A>(G#(8h+-FJsvBrkBLN_nETak?D@11`7baIm ze$h-Y_8R)rfs3+N)1IdM=0q-0td?ua9{`BvMG?A4dKQEx0YudFWI%vl-niVcK?M&l zeD#+>SUFU2jUt3s2WTH|oU3{eG|nhUd@lUYw|36D?g~>k!Uy~$sd2d^C8-(bvFG1< z%Nj0anmLwd2mvg1h>DOyR0vF9x=vdc6x`+oaM+=0i|kt;JcLe9<}Y3OEG{SDH@<#e zefjoYs-FfbOhzqkm54NxXOwUEIXP(-eul>v`f7!`2nrt1qGGka&8Ro63R4t;&a#kG zRcxs4`YTOv)f|KXDwOAV1O4d!tlzqfmVp&om_` z$T`wYj0{?=lt+6z7av4bYSifX#K~IEihQ7VGSUJnF;FN?ePe(^XG|~wHn;oJ3W-le zQukRC0(&k{pmam?i-{#Cx=xZSzar;#$lf4APV$%uGjx4jhs1$#Bx)!F zoF3#ud^2!hTsKNw>b7V*bIqVpk=!KRz)l$)xLNisD=4adc4^0SsUPk6Ho`JSb=gj5 zHovP!uh}YN}G=BwCX##}4XMP}L}euGeHbIYf-);Vi0-dYe<+q782`hw8@zRRyxtgxy*)Mps$J&dWZ()~dT|kTk-G+6SPwgyn}`@CGKdtN zwT5Rg=65)H{XlTX!~RmSX)mUBV#&qMqnhU7&@j2}4?^!xlZFe=zzNh=U{d$LK96bm z@4B`G(80#u!xm`g!lEH%C?_p0sh}#!;%Wu}GbI4+oPhva@X1aaW_R$(PK`m8dDbU) z@6bFc+f4h2r#M_!MLb|$WYOE;YbRjiwZ-hmtnV>CL*xxZX8M$)s*&OeDt7^a*}%oB zmBJ~-R2A~6kS%V38Qt^`uB?FYTSf?wOVS2sK9%fASA;yoCM2Y;qzGR;x(#QpWegjA z58}t%!PyUP&o0a5M;py4fw3cs_5LE*{@n}8Mub&3aPeZv3`!wz`$krDez0EJ$XQc< zIYqtMF{?SIYAKbaLz2_YGXt}s1(IsroR}r?=Gx6t2L-ljJj?ovntPT)ynvoHspmNz z>gJFefs!7WK+7Pjz{{|R=mkvOMFa=z;GFo%Yb1kr%@U@qLrs=T=^;5ekaPC6Og$Vp z*gE0GIvJM5jd1F9CB+%W3<(o^d{t}YV+J8uX$j;sQ@lyt7B2|o5#Noof1|Hfmmm5f zu?%{`P!Mrqi3>lD(wCnkkt`K-a4GO+(4Rsn#NuP2m46Bj(muFuM>Z7$ultuCXQuUT z2f-n&RSAhyY;(Ldf`*OmFhd19$RqhI>W^mLloRlcGvmVs-hi;`iCi7*t!b~3O@hIB zF6EA=j&eEKb@=+-v*mQ*K^B)3`QN9NDS9+U z#(7bvMFhN}T0`D~Uj#bNd+f3eX0wQMknv-d<1i$UzW0;!Z?Aei>#yT0B8&Nnjggx} z!-@gJV$=1#(A~kpJ&lePRB-B@Xv^L5v(IY_3r2jJLV#nRx_0!0PiTRmaWa}-x3sqkJ9 zcv4f*ypo!AP>tX!+;s8BIrwynW#a}YaII&gzw;vV{|hgYRFF_q`RPeOJ5zh7fA*#_ zHGTV3us1QPFNJk!B4EFPL6ok`lb&+1x>4iX9M^&-oE3R{e@$SalTxXca$%ajw`Q{B ziRMmS8Hxl#iMXen*Skw;Nx^vW2c8)`IIXwr zu%&f|F2-xFteu23=ttmLdyTpZ=O1Qs_dq912>7X$>GXQ!7*L!}IKjtOVIha(Fd;pS zL`cGIFE|3T*Yb7a_u_N2kwXiHgWv-~T2**ka+vp`4tAqff}^ap3T$CaCJ^AG4zJ&a zEq(7oTahY(o-7BHh>H%hK&&bAthoW*$Am@S%X*? zatCZV5YnAy)fJLx#1dp#-_V708hrbL(NU%75J~DZwk=kG-f80nYKz$@>r~8BTz)=U zj(2b3H?dl1_lZl4ko3^$K2s@gXK9rm%AU}LWxl3!i&5O)qie}O!MI$ioX&t{scM@V zO=(LSwfbIhRG_k7-`}`UVF5_Pctv7u$NoT+=Bj&g_@tacrT!x9c9q*^)r+*za4nd z;LoS7y1xb6N$Up)uh{U_spy+$>6aXd* z!#-8v1sn5caAL<_PYDXY81tiXUS3f`QqE9XK|@kOO;JVLP)S8mN?J~mMO0K8pdh6v zVaP6RYitg52K*Tl0>Clgj~U=&yu5QND@O3q6;AS3JZY&|<&fRU9XXbR{O=<&Iz;lK ztiB7^OVhlLk&vEo$$^A7LKPR#H6H4o3`Y+dz=~&l`*!Zf# zJj(g;VoXN%rMCOa6YKM`PE-)>l5)Lr2qt3Yx>mO!s2o*Zcw5$^_c|_9<~`a{S<{oP zc0FPC*n8hT5@V4!SUj8NBbyz->aH&#p}_6$W`wpakr}T?dRKsJz@2@hDU~qsr3F=s zER=1a51olJy~l*3OU4b zvj#MLVnW;za@R^cen;40;7G0T#^l?gV)r*!;M;S41B1=Ojp5rrC|Kr9x09>E86EQA z1o^)<7y19#T%3VUuHc~IPiy&+P(RO#(sHEvq-CPkR68MfsL;5bc^>%PFK&A>smMn(FivsaKm-f`PiKbS;AwI@@WL zlRQw9i_mA-zi+)u{6W_yd#tH)pmLwgS=wlPjA5hQB7{r~&yQV7ta~D~bB02??wHnh z4ZBHRURrjTzq$r}ajsX?+G@_cOLncp^$9qTjp>IIaDbvj$Ro#~$I6Otewd+iVh1V@ zeV2Y-S*$9{M0a(uakG_qYwag%^}W7qO^z7x)IXQ#?Mjr+yeWw1vhXD0PSyQW@peU- z*Ny-x@43B+%rz?7vp{mrVaMcKt;@n*%gUZ!AoZqpowP=Nu||IG{chi;<#PV`R*gfV z#^Tp;#Y{WCFG-X$buP0%ps&?>scjnKG+S%&%Y4#?UxX1wV=6$-$|y5 zlP`Y2aC;XSU_Vsd`&u$AHgM4v!!tC%llkDl!wj*S9_Z7gn>FkeR=N_p^C?9@`4fw5^qN=zkKpy!_|xzot($)-l=N7^ADk4bT9!As;0_t;LPBu=f;qh=%#j)Rw{4r}PnEBsbKNtspimCRm7?1e}e@A&tVe^9y?WdsX|BCWY zP`J*JHKbpUiW`4#FH2Atnv9_J4K;FtI*3KqY@nEb{z@jKGvoYEh;#y=&(?pLH= zGmn4AdA!Z}BLnrPv^xBX^N)Pg-yt4vr~KFt{VC1~{~x=fzw7sSq55M}=cg#7{G0kc z3jP1Z7SHd>JYH!0SR4P8`1Jn+W&U?7<=>Th9M1k&h{0A;`zPp$I;4< mfcdAy