From 3ac6ca55199c67dc1184f25a5038ea44ed445957 Mon Sep 17 00:00:00 2001 From: BertrandD Date: Tue, 16 Aug 2022 13:39:08 +0200 Subject: [PATCH 1/4] WIP --- ops/ansible/environments/staging/assets/initdata.yml | 3 +++ tools/initdata.yml | 6 +++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/ops/ansible/environments/staging/assets/initdata.yml b/ops/ansible/environments/staging/assets/initdata.yml index f372db2d..6bb0562e 100644 --- a/ops/ansible/environments/staging/assets/initdata.yml +++ b/ops/ansible/environments/staging/assets/initdata.yml @@ -97,3 +97,6 @@ datasets: last_updated_at: null url: "https://www.data.gouv.fr/fr/datasets/catalogue-des-enquetes-realisees-par-la-dares-2012-572205/" tag_ids: [] +# créer une organization +# créer un cataloge // Pour les relier utiliser un siret qui existe +# Lier un dataset au catalogue diff --git a/tools/initdata.yml b/tools/initdata.yml index bbea928c..2f7b82b0 100644 --- a/tools/initdata.yml +++ b/tools/initdata.yml @@ -89,7 +89,7 @@ datasets: description: | Par région, les ressources ci-dessous recensent les restaurants, brasseries et cafétérias dans le réseau des CROUS. service: Direction des données du CROUS - geographical_coverage: Monde # Fake, for E2E testing purposes + geographical_coverage: Monde # Fake, for E2E testing purposes formats: - file_tabular technical_source: Système d'information central du CROUS @@ -120,3 +120,7 @@ datasets: url: "https://www.data.gouv.fr/fr/datasets/catalogue-des-enquetes-realisees-par-la-dares-2012-572205/" license: Licence Ouverte tag_ids: [] +# organizations: +# params: +# name: "Ministère de la Culture" +# siret: "44229377500031" # Siret of https://www.societe.com/societe/fake-442293775.html From a9ba2feb6130bafeb0cc44bd5039a1407be54ee7 Mon Sep 17 00:00:00 2001 From: BertrandD Date: Tue, 16 Aug 2022 14:37:29 +0200 Subject: [PATCH 2/4] add organization in initadata --- tools/initdata.py | 29 +++++++++++++++++++++++++++++ tools/initdata.yml | 9 +++++---- 2 files changed, 34 insertions(+), 4 deletions(-) diff --git a/tools/initdata.py b/tools/initdata.py index 0dfeab66..609b95fa 100644 --- a/tools/initdata.py +++ b/tools/initdata.py @@ -13,12 +13,14 @@ from server.application.auth.commands import CreatePasswordUser from server.application.datasets.commands import CreateDataset, UpdateDataset +from server.application.organizations.commands import CreateOrganization from server.application.tags.commands import CreateTag from server.config.di import bootstrap, resolve from server.domain.auth.entities import UserRole from server.domain.auth.repositories import PasswordUserRepository from server.domain.datasets.entities import Dataset from server.domain.datasets.repositories import DatasetRepository +from server.domain.organizations.repositories import OrganizationRepository from server.domain.tags.repositories import TagRepository from server.seedwork.application.messages import MessageBus @@ -130,6 +132,28 @@ def _get_dataset_attr(dataset: Dataset, attr: str) -> Any: print(f"{success('created')}: {create_command!r}") +async def handle_organizations(item: dict) -> None: + bus = resolve(MessageBus) + repository = resolve(OrganizationRepository) + + siret = item["params"]["siret"] + + existing_organization = await repository.get_by_siret(siret) + + if existing_organization is not None: + + organization_repr = ( + f"Organization(siret={siret!r}, name={item['params']['name']!r}, ...)" + ) + print(f"{info('ok')}: {organization_repr}") + return + + create_command = CreateOrganization(**item["params"]) + + await bus.execute(create_command) + print(f"{success('created')}: {create_command!r}") + + async def main(path: pathlib.Path, reset: bool = False, no_input: bool = False) -> None: with path.open() as f: spec = yaml.safe_load(f) @@ -151,6 +175,11 @@ async def main(path: pathlib.Path, reset: bool = False, no_input: bool = False) for item in spec["datasets"]: await handle_dataset(item, reset=reset) + print("\n", ruler("Organizations")) + + for item in spec["organizations"]: + await handle_organizations(item) + if __name__ == "__main__": parser = argparse.ArgumentParser() diff --git a/tools/initdata.yml b/tools/initdata.yml index 2f7b82b0..5cf4ee36 100644 --- a/tools/initdata.yml +++ b/tools/initdata.yml @@ -120,7 +120,8 @@ datasets: url: "https://www.data.gouv.fr/fr/datasets/catalogue-des-enquetes-realisees-par-la-dares-2012-572205/" license: Licence Ouverte tag_ids: [] -# organizations: -# params: -# name: "Ministère de la Culture" -# siret: "44229377500031" # Siret of https://www.societe.com/societe/fake-442293775.html +organizations: + - #foo + params: + name: "Ministère de la Culture" + siret: "44229377500031" # Siret of https://www.societe.com/societe/fake-442293775.html From a72a65210856fd8b85f02d6b9cee513efff3d784 Mon Sep 17 00:00:00 2001 From: BertrandD Date: Tue, 16 Aug 2022 15:28:47 +0200 Subject: [PATCH 3/4] add Catalog fixture --- docs/db.png | Bin 61726 -> 61537 bytes tools/initdata.py | 28 ++++++++++++++++++++++++++++ tools/initdata.yml | 7 +++++-- 3 files changed, 33 insertions(+), 2 deletions(-) diff --git a/docs/db.png b/docs/db.png index 936071a8bd5c5d96a78b9f8ebe609b73509e904c..1a5ea6d2a4c1b38a445946f644425fbab17e68d3 100644 GIT binary patch literal 61537 zcmce;2{@N+yDzMIDoLe5nWf2C8Oji)C?Z3qkSX&}2${#8P$^V~$W-Q82$>s1h71vz zm1N2sGJn78dDmKdAKyCGI`-bj_wDCB-s63r;{U(z>%Ok@{7vV5|FVMgHYx@x3JQvC zG8fM)Q&6mnrl8nhK)DHjqLiC;9{;n+;F9!tiZ$||=cP$O6cqa@WX_*cb&CAe?X0c( zW$n*Y8^!vZ2T%H_UiVuCKP$f1_jlpBpV2>+Esn8@n@;;iNl7VjyW~9s$;>Hohg>pZ7v6+$t2dgR z_-pg#h*Nvmyg7Jf#Et|%etg^Ce_K}BqDAJwlP6E;1aHvk6g!+$HjQAXBzpEb~h@D*~-f5_gLrC>us6CU$hEs56eG0@%HW8+d0Oy z-$zGldrDnrYgE&&_|J`X+AaUF>BzfIe#y8dSbwtb?ICvd(HhI15_&y7J#8JG?EL)7 z=H{TjzH6oY&fST4c1P}4d4K=@{pHJ-&#k(PL_%d`Wxp>k%oP2=J)UdJ)CoUfzU!z~ z{vj?dKU{9MdGnD|w}#G|m>iMi+_atPW2bewe9#ejjZ&AB5B45CaPnk`pk>EP_az4k zWfhe|w*~&{>grn)JLLXr@jvzWW{S>Fv@}&cOE+`CV{w>$W3uzi zPtJtkt1qwJUf;4$&+Ub})#C5rR0$udk*-2Ji{Z}+RF|=AU$|%b-fl3qw$5^McMnmP zWj^hqx-L~NoPVT2e61y<*lsXjy=p`BY5djf$d^kY97+-iNlBx5^W()6sf)9tX)P@+ zV%E7FT-%o-Xc~5l^z%Ko8?2w|dwVBod+uowrupHd809#rZTQh7b*q|SPVG{ckW{s_ zU3>TX78D4bJ9o~-_}8yrlarHumHvzrOd_^_d8Mc%DQ6p8&?#(bQKg8CjHF0bOWSL1 zZvK!}Ji4>MdbH+(l$7nSuY9t>9FGSrso1;^vFvVQ`91T*sjjZhtnv9e)B4D7-#3Pyh> zzwv0iq!1Dk!cM7D*K@}gNtG3FdeiVnb)26*mEAYg6o>t^O;l9$m~IKB*VCu!0RzYN z%BbJO%LJJ<#a_raekIfQ@$o^`Ol^_cmGM_HO0J>@E?v5`_vqF07cWwdwq_V&8OfGy zIJ5LHEG*2;QiYQ3&{WvHIk`lSl|^ha8JTZ*)PHT-w0_9sQ3#JFf7PiDMomGpMhZ{Q zHKtmuzTNkVEvM{9f{nW$AC%@55^C5LfqROR4m9~a)a32!yKC33cRxQx*pJ5K%d>e? z&|3(Ed&X4%`0=AUC?3zQ-Vf`)=}op_)$bb1&irjVcI?>BB6iWA;UvY^0_zyv@ZjJ* z9R=2k=gvz4jDVc56(yTEHQg(51i6(2b z-&E{~&G6^LgxLLPA0nYZ9E7 zmuG8luZEpEf(0z%pD3BZk#KV>(Y@h1Kd$EGckf=~(Fh^y=v1wO%$&SDwb0Pen&xJe z(wTbE5p4T~4ihD{mU$tzXd!e5ewj*cuLt{%D<{a(Zf8DqsG)zSkHVY~8}+6CD6427 z4`p`+(nwIoJ*hb8P4h1K(7#vQ|LU(&4>)J#YZX|nYmB|HwXW`vqu;xP(!#2QOHY5) zZQi!Zax#fJ$jzN(qmI9Lgk|htxcJ(#-NGg=s;D_# z%VWomC2qfP&){5T%Ku5fIxhEJMo!MC@*#c6T*q}`QBgx<;|mG0AwyrY52jtoI3OS( za4BkX^5zK!`B3%hCx@q|rw<%D1IW7rP%XZx)<@SDg{>EO#SBVISD;WsI`3NpAY?Ph_UwSVW>on8)`|}?YX+Z zj#kNqyLw+=AFy@bF&bv(PxuDP?b}VTfMzEcbV}d-TI%&&lkczeU+51MA8LHDfwb=S z_V7P{oMPkR!g=-Am#;2zGYVO?q&@8o^QQ5Uqdm9pnD%8a^rJ?V+RCabZqzhmL&G>h z>z+tscNdqUXM&c`)(6ML#MIQ)wPZwyI%ckK!Dh|1bZvZoj_NY^mGqA)3+(2#^FvLN z;o;#a_(oGs0i55B$wBOjKT|%HRA$b;-yzO%Rz8gPT){8gZ7TM3>iPS-EKuPzNt2O2 zY1yH=&I0ITp`#~gY9MI>_owQ$*xdRBDL%Oslb3o7YZQ}Kz3wyVp|cqXZ?!4e83rKL?~Cze;2CY-H2d&}G@ zoSdD9j|TetAI7omJk{FT`Wvm-I$YWB`Sbl{%hQ)6Bqg^{QN?1Vode!C)<=p+;t|+8 zu4@Q<_sbQR7=H5lURJlsb=XCxb&77i(9AVCVc8LEJ5WQr0!PH=Qin zcO90!hK<5lUo9^ov0l`1{Kv|CZ&h{m{d0FV4QB*Cd{~!l1@K@e)_7F=HO=wk$FW%} z=kduc!c>yLJ^(e&i*-3FU)@>7J;dA>e*?2@`_-O%7u(zq8#YxnMFI~Jo4J<%+z(Ad ztaX6F>6R<0s+{QOZ%bY0qpu1AE1?>gh^8Io<-KgZXc^9LJk(t*gq8pGHTw=Q(MX6M z&>krebM^x@AxwtJswul(ym&#rh?e`xkMj4Mu9=ufr6?y{ym-+maj|l!n6yYKe*=7R zSCRdLnZX7D+aDLNq-&fjb(wwbG!=V}JoW$s_euZ-K;KPOfvoIU?>6>}ET?W!ChW<( z-d3Muh0}N9#@Ea9JvB8{s58$_UibC6&>Gm-(XkjFb7i5&bz7cZ0zi6)pb;Um&%54J){@#J*HE18GT@NzI<(}-86>&&=EH8Z?vNV zEMB^$E{_48M{jODOWH72r9P*=t?elq)~K#^>Fi$g;Tpl=J;A7Em!2Lw4E)Y#Sa}T~ zY0^?m{_xmq0aB_T8w`7tOjcoe%jR`U>5t3Pe7m_Cw0>U z8A^Sp4`-$xGMuCW9zgHYD0Z+6oyEy;142sIDhOaX?IN~M{0N#Un_=ZceeAG}(Wxsu zzSQ&t6x_Ra@7n6}0!PB{R(5vw<^pTIvb9y$$f&4oMPreRR_5l_*e6bFEAtEA?y}}& z6q_|20A@{5OA9@REkJiAo5kWz)$XnNH`*moG>5*V?Ze6ZP*t@VpSHRC=553<}Clda|azqE;>I+?NQlr-4Z%+aq;ElWm28xBLqKS z=i?B(be*^I`15UZS9kZ8EnE1U&@tX~&fVYqTp{XI#fJ~%>1BJYxP%_nk}@zjU|buT z05IqFyGa@Vzx!I73QlRQcAI*N@<7VwQ(9VDdyi>ftO{VpwMt7@G40-Q7RxDeYlsGQ zw{JA7+ys02(2*m`K#_pu&hy=l<|u~I1>_QifTdo)77pdneAk+x)m~uDibD1Q&4b~j z1q}m34bW$<+y3pD^vqOr(`Fp&u$54^%yoxHlMnDEh#=w{OoKyRntcZzH|M z?*AoztM)ij!F{y#D8d1U6v>^j8joza{tx){m#slgyLRsm z=QG@tRXWE|UtbUGsRV>{%Hh{XAmoo|jNIa=5r8Stx&#P|i81+0p_(z;KGX+QD4O=l ztZ&v8Fsb{PR}vmh4=(!ZM*EX5Y3ioK4`?LB6#afgZJizkWkB=sLH}=xm)Y&Ro!Kug z?jUJzxU=7*ZGix3Ir{H6b!Rmf+mHGd7Z+#xqxSIw?^v{DetL6z!)%A6ogMdOH?-g+ z!b3By{{a+l?`&>lE_Uyo@~_FF^$@oaqzr`yVG8$c~jr~TdS%ry?q zH*WBNOtoj`=I1AZ7Z+LqcLo6@y)^hh)taeu35^kLSa)^(J_*W$oTLTvI{r^B@I4s9 z)>ofE@Lz%@-Dm^xGA$P4=jX4QlYM$D>hKgOnu%6xUEM>}fNZygX)!5oZ<z1CXy1yP=l%0!6^>o?7e-S!^!* z3D4yzX`FURRnh6w6rZV?2Jz7&GQy`$?Uf3{*`)d4VS6r1xAdZnOtro6*8K+#toMRG z!g!G94oHjfcvm4f-5sbODtA#63c2R)6By&<-IgF?H(@BRIEf`WE?uFUQO zhaW@}0zGdsDxd2uvgdw!T(9279m^Jdika!!+rKxqq^R6wlk~m$z2bgS{SVX@6^{SK zYJ0kK>q6z^z*D`SMP+ES&az@^X;%&l3x_o}UQSeusb5>27nk(m@TS=mrzFd%viY&z zzT>*__(>EuN^5It+`gYkd#^Wdx`C%Zw7ZI#3;%mu48qudrfGh^%zkDQ`BsJJ_no~El|@gJk{?1zb732-xMkT zzxys@{g0KIdgThTvVLq4d%pXqfPHaYNjDqe_2xK17`Lk7@$zMU2oAm$3itLsxqEjr zp7;rSI*C0DccP~#eoyqqK)$0d(qz-6)N`BK*z2*Bfrk`(nOX>9n9xig9Eu+NdVe=N#dMUDpjFq$;pQas z&+#()-fBO-qm$?zniAVgcsq~MV_*!^4heGVW=ikyYNY( ze8l%(zaEyBo+hL+LeTPaMi!v#X_w!PUuLGKYwUEq07LsnM<1l6af3%Vxw!0NVv@79 z&Cx9+)d&rWiHV6rE1##Vtn3#Mx1tRto9>M#PI5ees%JyyQHGT(hr>fyB? zA0MOAZ`!(b>qtw=hBr9W!@cF=nVFe9nmOLU;n(!_&jqrazO{J;pN=b&TUnf4m~GQr z_!(h6t?h{GzctoDyKmn<0-WUJs5fk)z6Sb2%_vCiB<3b~v+rz=$CBl<6Xx$g+%#XA z?Mz8Yd1c=0i^F6qm5@*GKYuT_LMn@$!54utf_(b`1B~FBw|uoC&HR znifs5KIFfI?1qTCFTPsevNTbi6|Bs4=8W#Tk#5J{FCo>}yMek>z<-i||GrhK(c?a^ zqgL+W9`fv2DrkQyMV`ah)lzUm0>Uk+C z+-V)u-;4t7rGwgIv&?8b9w_Ri{PgtnMQkt8&DP!g@o{J0)YyYp(^m_wWLyPrC7j`i z{4;N$nqyKKFJJP427=XnzTQw@za3wJ9{<>oNrG}6e~XE7fpzas@XkMf{s8l*6hOb< z`KP?X4siC&pS}(FO-{AcJwJc`)X>lv+7;{|tl*ke;@NxpK$bnbLgdHEZ|^n1kO^S9 z-WEWJ888F|7XJN*2m3_a{_ryRAE_O!xW60qXn+pue3q??U;0Nkw&l8Hy>gFG`wjtL zY`RB}9(h5;1tNw8&%iQR_WP*-BLVa*!DPCSou@dF)DmLB_&BJ zu`S!S9md7s42-q{M-xR=duh%HtNP-wq~(!#dEvo^m^Q64=NXf^@$LsG6$%OpU1jc! zUO+j+AvjPB9dCN(wt}rm~owT$*prkk#KcTL&2@3A@mx?Pc>+kP>5BYat z!gH;5GppNK3kxo8^~`weObQ}Hxi8Iq8y?;wra&Fzxhj&ORZwrIgX8nFKI(x~92*A* zB{w%W;r|*MbhKQm&(Tr<0KN|nN*fs+f&xhJskirEIK@>UQwu|JfnHVRmt6R_J32ZZ z^ejRp3S~?BSbb|`S=8lsvITG^5j5eKDBan#O<6jSMa}COzp-DYwyJ9I^zYxQ_{da~ zPtPpSv1K_Ez`0Vm)HBmveh<9}R<`JSb34_j`bkZ9w@%a<_fvZIgP$UjMp`q{Zdh7| zBqSt|4fG+RBR13cm>9mmKiW))Gl9sbjo=;Ubj5wfuvZJT+-g->+gu) zeg!wFE>fiVvOLw41VQhYLU|suKk_q>|36busaYO@HX~cHEN2kQ;F`nYT zj`UE}R$Q+0pUD?5p6&kbV}ycs_3AUy9vbO>KdkERX2#L%aq8bDDac*1)vz<)QgeLu z=y@B%#tK8=TvWK>wyYSo2-@#H#FB&LYeX88Du3bG|I!x>EZZwVCkGyhg9XcN&n|Fa zFzKyb^`I<-%|it!^j!1E96;Hue8eURyo~m+DiR7E@0fa~Hk+7OSK|vRC8MJ_Z_s9X zTlDWqpwQoV#4Z*z*UwLXXGBTznCy5UNAioo2xpaE8Eh~xmBKDw0Q&UsK zin!64@1JkkX;S zf8O;EIAf!hb3Jg4@`$_`ZdkMa8i929HsYM=xzEyW*u1?i-^$jOA5!d*W5)tO626U& zUiZGY6#&;Rar-$+Ho1|)$S;DohAvZhpiSIpONx)5TpZ1s0qur@5H*@dmjO%i+m9dd z1w3M6kz8u2*NlyQPzv<*^?%H^+C!Hxt_$NUnummB3PbDA;ltTC+W9L3m}^mCh|~r& zy9xOEZ!|y(UTD5j59uB!S#DvAR>W0Rf~nWl$*J5`ju(3xwDs56*zKwBQA+^b)P=TC@37^=ih~syEr#i z3v$?=W4v|e&YifnJ46>;nbU%;Lux&GL5qOpCCVu`VVm!NL1}nj_p5Mu`&yUFvE6}l zNABzD>blel@bf#(d=hHUw`7D$duaduzVHIR>#aPxF2jc*3cSqE-}D>>z@;s6dKA?2 z&*CD=N|IJ+aBv0ORbpp?_*OMF?eqecu0F}a=J#@Ge!>plwx0Q}u4;qYGlh#6uYG!U zvSe*_NmxXL&#ZBO=`5fUbdF8fdIt_3glXWGI95?rW%upf#;XNZ8JA8?{z*>&bKW>2 z*_~HRBX}5(aR{FLti`+5I@9c{(TEI_4&A_Azjp~7tln$c6R0( zR&DP-r#AJ0dvgF^h0Afy$fC--nnAX$K(fyIz@d+ECoZ=?rxtvTexrSEyvvEy* zeSOah>bkm^_BXTzc+)sTOr|fgA0=XE!}Y9EU&y}$wNFj4-v2nsFpy|HJv|-9yY43? zvD=TfZe-cfdH3$!=47RV097|_Y+itg{OZWNWG(8swjzXEC$uA&NAt#mz7l!;xBREO6PkFzrNHbY9(%o&$>q}JtKouUBJ5UIQjTA zK8qHPP1JNm!je%`Ov3p9a(vnpC%t>`-b$S7Fcc*KHdF9MQ06Dkp2>p!Z{ERT^v-(= zk)iPme2`fzTGQ|Q_-wQvY54{^*;VTLl(>$U(xn5KUf`LO{Qi8&$jGQM@4C9fM9(Kw zy)gJ5D0bh#Nq_#C>IW|-@{E>s=?AE?PJ>a7VPekw0E~4JLV?72x9k*zv=e67>$g7W z2#cOxFHdvIjK%bi>PQhg-@}(eFT(+>3}lTNEQ0?q;9R!lbr#uQ=Tc36 z!ye;Cv~MEvRk3;=;^%+j*z3NJ0)ivT0KM?d{aE4;9UadON(WFF$%qXP4@U~y{Eg$a z;ic1*0VL39<6=Na07!q|U{tw3;MhY3POrQM3Y>MSp%Ri0vyZstnR2 zIw>@1V=VWLuGf4Gvt3byVY5az3*xabHLZCm{ z))y{3RuBV0A&M2iQWNxKfV{}TBFMNbI1&K9M8?^BTvrY_@Rq5h&jr!6vEqp`Lm19t zZhu~0E?_@zbL;nz5(x>6J9`5`ld?vG=Kgq>^yB0${Id6mtcz%#gRb#VaM^Vbsy*WD4Lp@-t<@4jdh&F=8G73 z=i%aV3MP9Z>Rd3ly2AWY1$)pyxp|=BHii=)X9IXdW;2pGK1*6k+}qaxBK;8pC+c)t zu~bBKv;r&?*tn>8cVQJ0UuB@^!5sC^q!^FSTEr2NW_9<@%@qK6XgM5-wmurtiPH~v z|HJ$D8vwq#Uv`#z?xrM47$Enp&a5jL3>1)Wo4E^6RK&!@gq^vw%ss(rs9)uw@RJ5rFmcZ_f`WpG zfIWb500&wTmCJcy;3>Sys)mNZj~_3hO_;Uk90uSdha1t2=_YB`bs~x;9Q?uSPFl2F z+_-r&V~z})E(cIh&HMN7TlB>Q3@g^=I<2|EZfRLrvwB=ckE+4NBUvH_A**!Y82f>L z@)r2pm;`@-hZH;#J+(}2O-&6A4$zh_rLKcxxqWEB)z zLkM!G+OkCn_i!2Yq~^;PwT&A$ru^e!Tl;)?RORTe?7JkhQhU5y4#qO|wD&1C-Sg1& z8&{&^IQXTOAulh3M=s+MeDb$F4q*$Nu!SzDWQ62^9aN7SrqAxjNL-#1O9Pkp z#|RYry+fR@6XzhiLUBD*LZ$$1}(MjwClPEX;R*48W0#}A%ghjo1v8fr4a8-2gL zTpS1@3QWZ(-lo6uS8sXwo3a0rvdC!%o5hHtlQALxN6mBSP{lQ&!zazYBNUeiG_1)o zO0EOt#_pfM*;E}GR(5V~kl|UrJuEB%QBhInI-XQ-{LjMY|2w*}lSeC`8t#&u+`|+} zXA?Zs_tn+IDFf3TZ4in1P3q_*eb_5h=v`PhwFkz8$m~*dauS9d(WVaQI9p={_wkY_ ztPCetS5mQ~PrE+s_TNVk1sE#7hATiw9Kg<|>xz4hiZE}0_;CN}(|v4gY%bzbLKQY| z8kcxKdMu|?FN#Jlk3g$J$Nl7>Lk#VVh~VJ!a1KblB+@lRf1jPPf7T!!ST@eNxw%EB z=mHc0Z+%C<^B6g!tm+0o6Rqs0k6R?NNq1&hMu40ekbi>CU<~78`FFEoFo)8Cs>KD7 z?R5WsOS=_uwWnR@>Ksdd{4jz|EQeZ;WBRVGt$-$WcS9TiQTVC9?p*K8KT5n7pn;0! z=H`}fbRp&Co}q?sP{`=ToOnrJPs=JZ0MBl3Jz7(B`}=FwLFvcEmB@F#1D>si1|xgx z)(H?L#SFk_Mx2j2Al5CEly893;X-!gTh=1VX@cT$`0R&XZI{83B*}w&d{(k4- z>k83Kj4>!&C;)8O>u98W4!<;rjswNYqCVM?u1xfrz?`g+&1yts23{JnM#p{~!T{=L z@K=G*iGnKZW`4>;iXr|X!Y|(-I`MVnkByD3%aJc@aA9(K@?u{9(TZ@E+^LpORzTAd zD7!>2@Y%X=7Y)s$!6GaPpgxIC!DqLx?e6L#p(;pPMzEWpPTs^95cve{FM(S~|J`3W zvDMJdK$q4%$HRj1C*bni41U;qSfPYnA20pA3yPtJmez*GIO!dwe7}~%gl!H$lU+uk z78Vw!KqBxw;M#pZzgXaRq()hwib2myd+@2ZmlgdSD8B)ldl-^HfV=Az-*N6YFdipo zXFoJFC>HQwy8#K>Ele9DPa6P;O99QDE7Y(b#pR%&U}#0fd6G{AdqU!bn&HGf)K{fE z3$?h)pwLhvV`Gm)uy_Kqwkb)G6^AP@A;I{CrMhdJDgra50~2_+k(E0x=Tf8)j$Hz&GGVDD|c)?(e62!HVt03-1ROiWA& zeue0P^-%y0YADG;Kl)G=LmPEHp4(q?u7F`Dg-9Z_%U zeyu4i<5qK-B|eTxOf+YP{Fr6bcMvtUwVhTe7@e4i=~r#?jM*~KA|%Q6v7q;FZ9A@G zh>gFt>E8t4@}|Gx(9xsYux8+Pw>Gb$zw=&uLxGeUjL2sCBr%+3N&LNxq$EjR4u`f+E(}rIcTN4D9C%ov%;Y-Ot z$Ng1-o)%G1QE>(mgd*gYG6t)y)z+>c)=g5M0-L>10)}eLc1$7(QKvkPz2Y+Qsje=k zyD&?qIC04lay~DzNx(oNm5E2=f@_-7StP3!^)9RibE#1w;DZOd85LpkYg}~bop7nR zx9{Hl4Fc0QG9n9MgPMg%VrXbBDzyX^MMsl^42fzG5ux^I8KbJUw)t=m<#i1XOpQ<6 zzrI5BWF6@iI6l|Flo2bs;8=QC2#|;P;6?Kt(!a|Pfe~r7xpgZZM}zc!l;psYo5~#l-$~;(1XAuCFE2lxn3RNu z!;EwBwcJx2qU|-rEwqbnZGpC|vl13Yhfk>j)HQ2KZc-7CSpKM}w@u!aqP{_OGPVK~ z1s`fs7xorXD$!bC`v99F#fAlZ4>bXW1FoKSpZ<$3?Gh)xDuFH75W&hQzBDv67%bQ@ zIX{o|vCO%tVQJIog~ytyU>;d*GcQR+5?DyU@r1T zvZz;>StyzBafMm>8OD_MC_Zer7hJ8W5Bv1Uz{3%_us6ia$TcA*%;rg_Q#VkkK(o=m z|Ayt%3^v5GZxvfm5eY);lBrFoPsY$QUm+$|YiJCOZQWT^qWkym^#Q2Iqc4zjWRc8z z?C6TFu1MT@4)y_#>01ca!)RszEF!v++{q<#Um9QK-Y#1j7oD5v&6?Lr_zp4f@U78S ze{}qA8k-M(wD{QlXU;@pV1m}-b9Df^?!TNfV%?B{AW$DL!G8SHCQ7|0beU!I>L=AD z-V)&@8wI~#^gFy@rV_-65BTe^zivV!f@mCUsR=a-U7sG26x{fM)2E}*Ry-6U4MZIFcJgsx4di$*5BZg9jXr1#qGgE}@bv5&UpqAQP>BPRKxK zfuc}P6!0#@2dB}Dg0NHe7B6&~tFP;ABV`|nHXGbUee~%|NWdfS&lzkPE(=2f_H}b< zmU%^ z`I0T-1SQUiF-|W$kdJDJA-l|eQKx+l^rDL2{elp&{N4s^2sNPWmJ;Wg76Nlr*?D;6 zoSmHZ*c!dtL+$K#{IjW;#GZW+u6~bqN5JAjs{5a5hRpWxzo8%@3!NroNb^DEacSkj z^ENgUJ*SC03G108r4hFhbpE_EmRIJx^SKWd6=JjD7dzDd3A#fix5@*MBQkvQ zLhyepi?(TnS@G&s2IP>8CwfYKZ(O;zuM!Keb@?wj75Hd7A+tUK$qI(d4k?xTbEp*O z`_q4QwYJXrxMq6O_?qbJzi_RvSL&ab$Z~xX%i#g)U59nt+7)oF!3l9i7(9LcLOr}j zxe_J3uyHB@uH=|21zf@Z??ZvWSw+^LP6IjF(7S49xbGZc!Sg}%OddWzb$dF^@rS5^ zg9|J!4F_FaT`{ZkgYGi5&)vI>zsmgoI~VKUr`wzZfWx=5vnLr8m;PNztdbK9pHyOa zk*d^2!rd@=(wkkO2}9c8S>>E_0fX|-y@o#uX@D&w>=cV6ewx=qa>zvy*obs5MuCe&~J%B z0tj^UA&tBR5==g=b8ug8Iyw%b`+(i-Tb!GI-)IAAQB0*2=oihT0vzq|a zlxhc0W|s7&ehU;zda{6ke~ym6uuo|g-F3Yap$8oO;fwjS>3K#0zl018nJurZ%&1x; z0gf2|ZPW*SbMyPf#iBS)-$62q_<>TBP*acr@k3oOxPCp2aT9t*68r>`Wh`~Ehd^3~ z8iY7GlvK^ON?=4U4BCKAeWmTpe= zozp2~&$0*2JyP|e8j9_J$R^kv|IFavut8I4w>q8`qounPq~87k)fxVZMCj0F8tO# zB|LnHH9iEORfdTOeJlBD9v2jBw~-ZgyH0i3y*2NAw$ck(F_9n(TmUz?Uqx%3Kw|=K ze{QyB>1DP3!~)Zc*d8LTT7*zT@=`2c*zbqz<)1%)9%|2Jhk$-wTDlpd9AaNOb4_<3 zTa3IMuj||mV2mnYlRtm@1KW!okApvpl}~VfC1Y(8^72$CBGkTnl%PJ-*IP^ zNFXr?By5VGCmROqh87c)z>5FVDoST;WHebXI&pKbp1J#xv91B-jvefnSpg)%jrU$I zb6Z&NZq?8cQ{w06XMmXfD~m6Fif0zQp#+er7hG<1%4uv{?DP8%A69gCN1>9~BG*JR z+fZ1cneFG`xQEDMD998)))4O2Y~9pg2-+k5#ANPQ`$Lw~&qVBg^1@dHR>rRMDRVch z89fu!Tb?4+<8%l1I4?p!SF&_JVSZ0ZHrsAcfuL0c2hq=farj!Y^kT4~H{65{h3)Hu z;}GMq$cYVYjB|oHj0gCt96)wp$+hU{<}zE*IFp8Gd0;|HYU&CMheF`Z#pfQ=E31Qo zpQ2MNhU)5s+gLbu-Jf}yhg(26(5`YjA z8JVsX8XcX9T@p9HF!%!lOKLcbt)-alPzAD51G#n?fMFJoL~5$X+KMA?0WCnC{2k=^ zYW3xfJNNEQBs2`PC5~caGNM4qP^#XV@$EUUp%FGcIq76kSTZiKuo7{##3|dV9Z)<3 zNvZWMNG{mdqSdESoJ7F6I|smx3$1}?X%T7(?Q?L&XV*P*I@O6BfaVZKLT{xxXchll z8BmeBEGG$MVH_wG)_*4W@E2^umc|#7YFO3GF-9%jzzJvl&o2bWgbIJ@5=oz1)aLtn zVqs@zv%zw!K+m`A2OMWQ;}(X72)YzokckuZreDQ51C#|54Y96R+y+1ev(EgCo`N|v z2%@%(;6CkqH3`^hcVl~ zv7qaurKMp3vnxi&Ll}ZrbsyQpPx0CG9nEv$%i|45D7US2qEho4*IX{NH7+gY!id4f zv+DD}{6q~wFEeUy%X94Lg>724I1Bx_K1Q5Kec1&CZCZn4W80oDmGdC0j8pRys1fxn z7h!a?RT6Zc$@>&r5ie=^zrxLJC*HwiT9*u#fOr_&5li}`W5dVZ5GJlZ*IQCj^1Dae z<@Y^cWHKm?t7t${T^`xI@l#FZ#~C8R!@rG;q^g%=fK0Q-co1k6$@Co<{o6sOGE) zPXyf%4~ji>d`Zq@Eiqb-=}Pm0$jOLbbQa6?%YHXNZCOU-=U!)rn@KBuzYT_ zW7sDg3B;)Z3~vuzaQqC)a)5|(NRLCC+P5TK8+Kv}#?Hxx+z#x>01$fQDdb|#M4{jD z8dOlm#>P&oiXT3FxXOO5ryXQI`_-$K(l!?F9L8RETTLi(*n7rEvdKk@(L+e!IeHZG z@j!%iS+z~X!sF=ZdPeIKJkK3p3++rp@0fZRe0)&iVU_rLlhPx0`!iW>a&UVqvCbDz z0FfOyfv0;AnF`o4-S5AVpgS~RcyS;XJ=Y3Sh4M?5S?Ru8kC=BhWzNsfH`s8k1#KBK ze`Sdu6|EXxR$MLDDfeIodBJzSMkRf`X7D)Tz{$e1*Z;FuZrBbfGZvH8E0vI6Xm!FP z%?9gC9od#}oQpgW6^ue{{ftRWV2OD3`bUb!Fi8&(Eef7Sy)Bp3M>?v-LVCZs9jn-V znysi?DUAizH&6t@PYGOrU~Qj^@xo7MjvghH?acC|B(TL4LJa`TC(J*4Lt>_fn7#Xg zwMOM)L@JzZ2vi&i(_)wA%+Z1pp1MW6ZYaw0~N5M#ZLnluv5C z3gS<6(cMSnu7TQ!gxdWNlCSxs3gC)ja%QGB+vDF-hWGsazbyGi!KDLQ%W%z#vYh)7 zSPX~vIV0<_p$P%hu^PCGvcOWgr`;PAsXN5|BI_Ccxm5%>5Y5|$j$2VPC>R11v}L=$W7lO=7YZGEbXebeB4TKu~5#r~{Eo7h}-3PvAMX^hSUs zt8gFkz?EhQ2%uP#HwCp47weC$=G+W(&8OJ{a6fTQ9GCBV%< z?BMY>M!`nN=J5aHxm8fB#7>`H7)i@Q3i`m2BfcP=L@LF2!^SsYt@i>0Jrh@Z5O`d- zVH3s?CE=JLTG#Bl0vm3@?*)oXQNvHL-yfhlo7TFhNlxY9nKLXX+dz_U0Upc|B`v!v zK3z*9NfTvD0k|#3-&%9cBt3z>W``*x;5fY80Z|`h52P_0@ip)IK3wv^gX3k_(4@#f z1Z1k0Q0kGWCHNn@Y64KlT41T`jt8mQjN+?N`oj0tQzc*I>f@x&{am-fZ?l|IQ&;G- z{5T!aje0Y6wSsyLc-=Eo{@eHNdA^-WheGyH-@C)qIuY0t z-nO%G-KM+mR|=11K0DdaH5zTxT4Z{9RI}l`wdWEeTnt4XN5hmc%aL<9&0(mQAoU0k zz*Iqc31` z5Mb92bO#tLLsU~&jU*UFMH!!WnVs@Nzu38Jm%+{LL?wmOK?eVzi&G^rr4A38@ZeMS z(9)8Q0lVs2tR|Mg4;dEA^iD|qtdn{A-Ag_kwPR`m>zAERo%^03nrWinSUC5p*cAc>2 zYRPwG)F}L96O_TnvfSp{O>6KK7JCZfUKKf%WY(6!e-r3FG9>lLC{=;8#EqJy979t9 z9+!qohG0+Sr%(R4dg9Mus>~?faliMs_({4qNH|)TEo{PBTwR&)BpEy+0HW}Q@fk`L zZmsaa} zsVMw0Gcl>eGbafxQiaJC671h)a=zshr&w%jdq>B}&!k=U4R#Hut3U@Kr*UC`0((`> zN|xOsWDg75UjT5%c>M=SJ|Yr|lA9!?nMqT5$VZxT-Lj4SG9VWKDv<`T#>7)pNjl81 zpA*@$(@+5u;^V!MA%etAC+74rMP=8vhYvAw8Jr7-LEJ2;Q;8Az7bp!MzdPv7A)TO{ zjR-re*BYa5~?*HKKKwOh%s7Q zyeLN{=^z7T-1cKQ%15AEf*vpkq|^9IfrI;xr(b0x)A;b^QBeA^E=5}2>hUjMK6>{~ zqJ8s;v(C=Wd-m>SU=LGDWLVLIKtQ$MbDG`r22CIr=_wSihcMQB z#)xqXsR$0G^E-OKj(mjW@JHss8d68edoM^q0DAw|EdX)8o#{Aj4*c;?0|`<*qYoW| zHXm%B494f|F!RE8@fUm=OMMJ4Yx?_BYfnk-1&s)AMgk=wq_%$ z=T9HOgVcWs9fi+n^4jV`gXgnTv`T?8WO1v}W=WNX!J4RWp+!X*Z-G+d$Em?Huf$G} zkMc`SVmSW|#F5YJ)ra?EWE2qnHtkg=4oz%R%W8ZN1bC?gWe5>Uqob(-p3D8Lb*izQ&m^)7n;Hq< zwAsa?oH4am%wmz9P&t+M_^d5vtr?(Gyt3|Hy+5GW*=wv~$?ab>srpnlf#06$BqV*l zJDs{^ZiRaV_{tVTt=)~TU%v#hKDtuz!uQ5zgn1~Wik)(}ES8FIq*{JB;!RulWenqO;6*(5xDM#5GO$NAe5(R3fXWFSgJ@6gjN(r%%JD$ zpr;dli#SSfV+Qaufpz=(z=X+3K*9pAIyg;+(4ljoObB)?VPbdNMETkoM6U;skRj?G ziN|82*!EX$+ps!20y@`Vu`k-M{xMwUPtAs=5Hk={S8RyZX8IuAoEshH|owCZxyCBNC zEsYhp@L}9kom?nh5Tj9GrIRpqJwm2_icpKFDB?v;{p0xuq8Q}Z4#<*s8DPB-L`zqe z3z7YRQF;=SBk%bF{BoOoyBV>g8Kl7&TXw75wbgQ&2kX_#)AijU_w_sg82uap%#mi2=WnA zm6}QT5ro@EpFb<(SXV%lOq*?oFf&h$NGuFi(*3ac2*jKE{sH4k5n$rG@hSjtvp={@ z@@!GXQcv`FZ`mz;vyXxdZ2k2Y-WBwKsxv%1T=4C*4`moJGo-q{X1XcnEcRlLSVRrVri1N@6xC0mBsA%GV;)w%i zoIw^l2pTb|Lr{;=CR19=Ep_^bhpSORKi1T|>**DKSA3uLilSs~NpQ}gqKfXPlbO3*hEZm!c?o!$pk)V@~F zb?hXOEEN<2tTe5xj)9T(m#;0A+t=FK+G^zA2p``{M@M%rA>l9*fL~~p0JM<3QUC~F zL*GG+#TY>qBHv=ox{qh#J!T1n5p5=E3cNtaLNun4Hu_oFju6=k`uc3-#WH02FANofa02iXJkhJerW!FA zYK`TfLK#M)BKF_6g(?>TLPb|GoW;`=V-C z`3qX|5aS~w znR0S+Qfb>RA1|5wdwdP*u>@>qmFc^pr$HMwc}0Fpb!ijDmRv^|6)a6mu2>0Y&b3KH#0lvSkBE3Gs)}d4X?3X0 zjS0^luoFJZLyTOKum?)Oy`2ZqAe%>1(Z%CH&|R|HbURh9TmerJ;^5{s1ZfOmks?wQ z_UyW~`7+ku$>UkloIE^6C_|(oU`cSWIF26uGJCM?=Z^rckkqcqYgSgeR^fBGpXYiJ zuZZKILg@6*(vmuzC^z?3Tn7{hc>do2AKzl5qr*34XbAx`%zO+g|L_6Ea>dP`b@YH1 z_@emqbh&wFF{fiMiY6p4Wn6hWn%}sZ0|=aPqG~Z2-L;5W$DST7u}H@}<;#fe;Jr_u zKCSDw+N}0ztCP|3_i=PZ8D_*q#hWVOqTDGhb&o1E_OGT2lueLO+EePuF}5lFiumH$ z^w`}2ezCz1=KG4MiJk(lhP-bF6dOZ6erVcc+wW#%ygvEbeQXh1k1OiTs?FfbRM&kq z$Tq&T?me@9{d$epH`&kwD-fu`Gz$$2i*81kZ|W~QkFLQi_a5X;tgR=gI?W!)LO39i z8O+#3ihD+5Z0se@I8?AVu46kCu<5z#yt`O(V(*8= zSlm7sdh6BY%>{Q-t<)7qax*P-@$k{4Tg-HPZ*X5luCS3jH^>Dhk+F^%rWdcV1b}u1hNZi=D}bwpGedkM$Q1$MObqUVl&j( zzGQM9h6m<`(u%K8tiHCo2H>(OOYu_iZudWj^zll=%s|b~56@So8ElObEVbHSHayFD z^(r3t42dR!(n<%>?a34(Y({qIv5k$5wxS$pnRvFhHk@UtS6^abT|MkHJEEo|q$KZ~ zrTzmBdW&oNimpB0_K`fwmj{cFU@vfmROa`MV{aPAQn^xdm{k)6r(J}_#~j=LsSu${ z=%geogrBR#hyrf^pcnRrSc$j30j=ZuA6$mtMq}~%V76K%m_mEy? zxJ#vDW;fo42?ee2N+K2UsX=eq4juXn-5ycuY7Dp_a*nubA6_;<^sJ8`_v8JSXiVYQ z1vXIJFkLI};E+Gw_VfJ$6z^P2f)gDKw}qy#AM_4AbJGr%Ixqt88@W8`U1#b*RzO4^ z#l!^S&X6!N0AK*d`&{g39hV-L+2|37#;6%rSo<%qmHKS$PUks$I?>}9exyaxUQqf2 z2~jESOVK%P=2N%cbaqC-Hk|sE+kn-6O4SdYUY)xwm3LSq8dHqqMZWNQJ*K2BZ--G&?pZaKfdGNrqn=QVn_S8QB%h!C*Q-C`Zh5U zh$$ch&fg-t00B|4Xx@x6@2Wgn4heAa@^12a-?^Y83PtD0iZsd%j^ALXn@VzB)^!QC=x_299z`@gT|0up;jLQ?nph+ z3+9@Q2_ukTyex~J*iP7JVG$8_Q{OM(Bqxq;7w|=}B^P)OHWNBn0&;|MVZ67|8|f^W z?Qc6&k;xVeO}1H7@!b;Ty;aPQmpg&Ci)jzu#I@5-*UqEPo5hEtWUwgpy!M0 zP`h#^5&08NJ+~>JSdQ7_p8CR)^Ao<03Ol@Mz9cHAm~|KBS?v#`@qGlbDj9sWL4z~Ip-N7Kgf385;LLnkdqP>BwG$1q1V2wK9Q=q59B5g^E(VJt$UjD zx4I(&c*34aF>()!lA8bG_W0S`7;CrMeuQo00JOQ(_%wM+rGwDDFjD>hu=XZUIqz-z z_l0fPWe8Vf+%h&Gl(`HkLy`ux3z?PLrihBfRwP4)h$tzkkU12J3`G=*$dEKhZ4#o4 z@8^u?-uM6i-1}bdyVm=x^*rm@T(05w`~J@1IF9o;XZR(I5EyLusdwE~rfC7=__dtl z)O4?ZP8ZM{s~N6WIvg~venElXh;ahjnQRQ)v18DOw)Vz`BNMyv^6MEH-o2WR_OEj} zI=fuiy!kfxIp!NTwwT~IyhHEaal=2Z>FEn9eqrL}puj*R_s+>1Oy>3|8q;*6y*m~y z$zae|kk`)_T+6Cw#S_g#I)exArDrN>8xjrOV-T$uE!VRAqEOm3c3dqVp zTQzufjSd~nmcCod@lwu}Cggm38}b=_9k;dYv7@#evj^K)94O$IsJ5etnMF=+V;8?tkN_BY0x; z>A(K^&yJ0al+wB8$mXt1zcuqq91)wD|>*a*UuVS>!^Xr*LF3VuPxu0u6J!Xie10RVW zC!?04sUrwis$7VmD* z?W(fx-{#Zf;;n}Epov&ZgZxku{_>31b)B3LDAd&X^M(*^DIzh1xvH4`qPIcwVfQ+| zSWBYc5*YZ)MOqDf*2Rgj`djc~f@RG&^we8+?UMQB2bgF9QP4L@s*~X#8T6s=Cm&n_ zj|cdE_UcvanIq^MWUL2msi~yXzwM?ozzQ!Os0{WkS7mzXbwEQ5K88x9=;os#;oFQ;C4U%23r)7zJ58VuHxVQOeWj zHdR-@$|atYeWVR+c8zwFNzg{5Y?&UQCS-I%OSl1ZJ?EYPO`{s5wZmIuhRfdhkN`63`xX6lOzIM(m^9M^&Rn_ zAnKn$Zb@x+uwworH39vpaCQ!8V3m>eGC9IJCiT{>LbP8UwX{Z_InT8f*FW(^06vuQ zB$!T9sz-5-7Q19aBoUtF(tm(F2qHwTQHU`B^DyE<%NGb>8e?Aj^HS&7+S)2O3y2*G zsN<-GnkfDkPSLwx^)dH{6v5h{?vT$PUj63r)s)&9htW%EX{swhw|W9nio$_sK!$?8 zX_&QQ4wq_T@xZ@OP0^>N({3ytIGd2i^yfpoPzHZ}-&ERqT63K6dj9dC#}m(G?~5;S zTcjHUv`{aiNVEeh;x|M>x+@GnK3*hr6AHm%m9b-T*P2C!Lur5r2r4_-9HAkkz8OzL zM2OO6S*t+m*qtE!8CmNW8Iq0eFEeB~PQhWoH?jczA9Fz?&qS=HT;a=4D03sg5*A99 zJhP`Zf%M*4R!FwFP9C>&5jp>Ym- zWLGO8qktLOx?y~^|D%ytpzO!%el=s)G&=bJ!wH{>7%hQSzod5GgXUW#Te<`6iTsc= zC9W~oKfB)^t#@Jn$4b0QYd>SqVtdhp+t~5|8teFu7-ttU==rL_OL7{0jBxRO;y8PD zNqW=q29rNto@_x>5)2q{PBuwcSTy8cktSWPm^H@Zk*i zzK%1Xe+yOC#>aca&&t_%%0FD;Z5{zo^Z&B1j@Vs(w*7x@teqC|Yi?T~x>uOcF>b`P z`1pAFDRbt3fRhH{UrbOyKiqoT6ckyq)ubHZ)#q$uN+Wp z%tY?ba~-+xROyHE@*l*IN9D-kg#?6z{;h`1GCh5wu+iYMygaLU7gy~#9WA9jp>`Wn zy&^Y3o6L(POTrkdr9OE#lE_PH`|5Q{z z;?4R6-CveV(B8e@Qhiq0 zHC>L^%*x>x^2eB&2^1l9$}nyK>bD3^F_qT|3UF-GZ=wf9^y?UZ`e*kkvny1qaD}`2 zFY3&5^#$;?j&y?Hb(jXm4xA#xRu^9D(ejA`9US&5DUE59sm#3!a}7OGYo$C!G%a)< zZ&KEM)l01W6EM7S>((1MC^Ve(s;dxU;ofwUv`*_^n}$tGMkHK%aErt}QkGp0^yp zP{=KCQ=#Nh&2#8dVBfFNX4Y7oZP-G>K4vU=9BwH0h0N{CunEM&%O~f~Slze!4UOCN z-iG1!=6CNEm6eI_Y}NDidNN-^;KrQHkH%C4;#O8$j>MWpP8Y#0#y0TIHrCdEVwyuY zoY2M^9GluizB#=h-&|~JKqJ4r9P1q(9sM60vIpq3{;?se2ZkVCP&}q5nI}T;z=T^7 z_3dm1ff7{PH@JS)viGfcuxj;dd}loZ5*|d-5rJP#UhRF$pM&36sk}n<{SY-bUk+IO z4x^2DGoxW9%ue3T_8iwmix_531}H@_5d<(XKDdl?{{TlN!8kFBh3nF%(+2p9XQ2*H zNv7M{7MFrx(gG4h@5b14K`k+afs_rWH+|};rx!rUMk8ZC&cE^Jj#Ax`B7SYy zu#cG``E=87gDo5!Lam$1b?e>e zbFEA(veuVEK)a2GCxe`)XWK;{YgElt+wo_lr+^Flhx+-ao+aO^Lsgw%*U2ZkVKobndE_Fnm=^6iI7{!6JQaVwsIaghDgn`rt6zZA zri=@Mc?->+vca>>*o6ywLdF5wW$m2i>tukR@FA}=IbHH7M7qTj z?%x0}M{~`RT6h*LTzEVtGujeJL_kG?MQ>y{ZS_kU3s{1gA~WoFs^5`Gv$5!bkY!J;u{GAkXP1}~P{cT0qsZ&anw7g48g*3e>tXPVm z^5NHA%Zl-mHrekLP{iF{KpVoUOjUobd3 zl3niW9tdNwEhuON-4qwsshzpCJMt(~@*NSmAyv_}r%&5bIm!5yvGJb{kNzXcO+B(> z{Zh>F$W{z`x1h6-A^zvj!BeKYBU2I+3Q#0!jw6#Sm{gnwL;>)H^W`XPxn+8O#*0vr z_Y81e1q*yuQUjNUjvhPKkti-Kl|Uqn2hs^(n>Xl9%7xNeHEULq#VV$wnma19i^Rp_ z6q{!Gs^uNUNeVtcbj7DRa>?pNSnQhd#;kWsNCFN0*}?-(hmymL>e$TdO)z&GiZ=~U zl1zmDH%7Mf>Ta~JOq)E@^R7}wIM93V^0&YGhtmyQ1tk|8i!_X^WA}^DWt)(y*6^OR z#Rvr#1Ne65mUN>#mM})R+_ri1kj0A^M>fC3@(uX+h8S@UfskNwRPo>Y4MDbeXHtOB z(ijxgo(d^NtM}&q#QE^RmeZDNh6dsigFLe^*=m}he`7@BvR%USk8>!mOlt(nf~-PW zsA7T`CZ- zt>PWPI@&NmwlE|W_nWeKM{$E{tZmf_F$kK)aKa5L$i->EgRxwaiF7-6Tw1BCN7AE= z@4xKB;czW~89tds48MV8!S=0Nn{?{l-D1}Ow}U`$m8q5C)9mA2BcB%)%`P!`&q*I{ z7w5d4?z4g4DDULTs;ZYpOdYGPeBIG=!Gaz{_`;$!3~l2Mu=eobt``cq!dl(*^x?!bkokSjj5%eG-GS*8MEn0u zcWt9Z+Gkd(4DW-K)faKkjjA?Guf24xg=&*_=w&zkzJ2RbN7t{MQ8#hklL2_1QK6_% z$&e(h?d=a{TeK?6OJ-0-SjDt%%ihHOU3iCE$LQRwfY~1JIUmMA%ikDv6v`a+(;mm1 zPX9ZPbm8#?hTUmhVSCkOa$QB0K>Io>?C2VApRoc+ddEru5~I?euBvWhDpUR@%L z6IVm2OIXEr$EoD6!2wPk30>(h)8-*-oTiri)kFQ&<{5SC*1b?jF_W;Ud!r?B<8A-u zM4&9km&H@Mg?bdVz~=I|7Q-gaJT-YGBg3Ls1$-b{M`ZWG27)fLB%$oY$&&(U{3kks zXhF3HBYe2kS8bo;Sr3!*pFcN-7psIQ7S#ueEh$Q6xQQ(j3fUvUiFY}FgvSUd0WN(y zL8>)|gfhU(pikGXU5oF>KI$-KzI4RcwnBWj10ke^+c)75$_<%ufFEkg!WvLRnel%3 zu*JV{cNrpBNpH%nxJ5}VFpTa-J(IcX*R8vR?IdYqxUJ)7S6DKJwnf1UDM%Ykp$W8u z(WU9%g;Z|`TlDKPBMOKn&b`1?lw%$UYwXyh(X3gsfaPAC5ei8x(?Yp!5;2h|)>BcL zPD&6L!0_<)FyqD9M}I>PNueZ8y^#NaUPqo5p8;HRC3!PImJETTvtj;RR2?6?U5U7I z?b=&P#~rP9X`76RQJPw9P(Mt5tlwsUgr6C{%5W>5W_4+jjD);PbSqHdeZl9dE!DM9LV!+?*^)gd+w1+=C_z zUgVDw1Cv^v066yvh?Yl;aa}PYtEFUNBk>;r9s~W61R+3jJtMRjvV~~tyMf{NMN?Va z-?hMR@yT`e)$burX28GJFAtX(Ype!Y_OU=TL)MTt)sZ&{LGyzgdU0QKqJq4E!u#=T z47NM)tE<0Udh|&fT8aM)ahAZh?eJ%c$S;!0*fY}EF3HJo!+?QqU{r+;J&m(AvpC@F z*~)cC`}XU%6Hv$%>HF$=WAseiT2%P40#Y4Rl5q&9o5zd|TH<}trF-}Ej-|xC*&tfh zi%nwno%5u!C3p1AU7lH8;=q_<-&W9c%6$4gq?v+Ej$QsFynM?gT%cs!UPVQPV$r?5 zTxY*co35czz)6Z)^G?0$%adMKue>AwU-*`D=mtsaK+T~VTnPhL3`D?*cWI0>?CEy! z4U?-aU|~&6d}3_w=mT~mc5!$y{nu&rd7WU86iM>7BQ@Omxee=$t`foXj~C!Pw_|j> zD^15oZE`O;NLPu?W{ytMYXDSwVC4VKtq&c*(P%wxSwOt8LFJ~eSdfqh8p3@sw6b=0 zzQZ9k5BXE@)Ka(QRs(sqWbqUFlb%$6jeFYVF|88`q=c@9WOEJZC&nq~tXOTJ{wvp5@J^bC3%?7bDMs}`gi`e-d3zJ+qL-~eB!e(# z(YG%ip{(@~Yd{e3_;-xei8TRV4qr}Ae!$$cLbX}f zsmL1=UNCa^@Yu9k(806#Zy40gFmvqIYc%A)3hzvxG-E#xy(6Y`B42OZ^LqbK0FGX8 zfU+%F??ApFeT85R zGdS)LCtJA{(wmVIHsMVU-D1ED2LWXb8yD*%px^{t6{RQmGhr2mEswhvHgvVlo-;R4 zJV15G^*nl1519$5+7|HFUNckGfEl>aBFYqEktv*aSvF(GSK1-;5QI>|-mkx2;v~YV ziU&LUl5S8kgMZ>lyLsET%Y3G|EI}G{?9gE~HINL4aWScGk1S|Iz7^C6@g1fdLr8jx zk)ua5>iY{LfC#(;0QSK5P4LA;*9zc|SZ^vOd3^fqL$-QUh&6-)ASTONMl^ThG^S+D z1()N8pFj>RVXD(yOTjG;6~Xt&FpeJ^wC!pyyn;*g!7c%jq7To;sB5HyHdq;9_HG8D?0KWg}aN zAcF&?WTZuAbz7K2S4blE6j^+9heA{d`=xH((zws?qv}I=Fv<7+Ol=$1wgjTFpK}=g z*9t|p_Q$r_u@j>dH_#U?jvs$29b+k-m7-uUydn6KRD**4%zG#RCh&~-e0k1|2oDcL zQlUf67*F<)&5z7unBWo}Pb(9SzXe>8#rW#vKV{q#o>^kxnJy=e0RL*OWEWdimlK0D zPldYMPQ;Kz6pLKzgx6gZ^oC4pA6m8t-PJ%d+3e>~|J7gFGT;q$4xMz8dWI7gS=ye7 z->IZ_s+i4W98lW~JZq1|#ofC~EPYP4f>{`H<}g|o1_d?VI{?)l{^*X^j3VIGr@J@O z(~Iawi4OZ8FZ+_Y_uDTQ!4Kc>a5-0YigE9nmWA6sfy2`9KYRUp6Kh4DE&@7guYg7Q zMU;0*-ztuZY?3GY1fm?ud5=8b<_Aw%Se;?UGryqV3X1L-uroF4enin6A9 zY_`{{W$arpa54gRQcyw%F0=S-=k!QHXlHuuea@WEMQJx~)VGhCuw+Re|8NE~{P4H) zo!izhg`GA70av)6jqvqyEnQ!y-GBkX2wkqvRlCyEHtI;e$D8!^IUCtmw3fp&{(-}? zz}x>t?{w%<|K>`iVV}C(KMJh2k1Qgs_i6b*9e(Ib*|U0a3C?x5g6afJ8f*G}icQY% zpiKyUZ66%qy*&eP#s<0uyx%I2eL!8S!38f~yn~UFae6p_JN1mplOwt{gLUcp@iFb0 z+xJ|EGfFJ~@Mrn??;e~*azy*hJ+M1Iy*4$e2zr@mDW^D#m~aTw;vRQkzYXgV7NGpdQTQaFu}S0i0C#zi|!?^$;;Ec2HL0)*>h!5gn!+Dg0?dq9i!4p z^BQ~cFY8X_k-vB2)wG;RaLY9$CH|YJ==2ZdcATx+$$zf2*C%uvFra0lMge9cCaPHN zHh;Uw?H@!p)<;u`E&BM2Q%=dsIfVAI3SU2L zV3ZQL7Qh&|z&ySm)DOo=pH5!f&xF~8_2g(ZK=dNS+Px~jv^(jSfoDenoxFT{VIa-t z42CSwvv7b`gUa#Nrl|r^loIAl0sBKAK8SC;HxxSA0_D;u%!8iwB_@GM!~3$cS{%8`%oCdZD82;1!cv3|Jfu#q@=-^3xx0IFJH!pVg$*MB`GoOs_=&gQ6TAB?St?d9kx)dswC}9cv zfjl(Y7-}4s8ly1jTWL}tVR#A__q#VC;m{0oRE|I6Q!dIZ6w1@+Sfd zy67^ujqD~MLH0pvap&CmA%0ytoeL{-ZI} zFxtYQ2@g#|+R4jhsWm1w^sKh51h(rCPbMD0*)Xh>(}8%&nf%Q*DAX>IWw6W^a`#~~Bl!cycruYS?rlsXeP0-fxK~_vXt4&sp-Fu9q z(f%hT3!Q^d+K}Wu7&+u10-|~R@dZ~Na4LoD$VEATb-TvO|Dp=v%|(kK0c^z=_sL?d zxSiZ}hb_rUQ;1Vl^=r+;yH~Ofo(wjP8kS$==L!;Be-^t^2(*MsQGtLu?z4_*`#AwQ zh*+e-l#8({{fL6)N6h#N`NZ>+a{oR%C6vh7D1gPC3Ocq2v796&)|EL0Ja{@0Qp6w*gaa7}BVw6fjapCfOE7-q(#~Y^xEC4aJQ<>I zZ<&I;0B%g+h{<>Ec!FKmV6|*}1%7g0Dvo*=@@aoPj+bT9qFh(iJ8zk9=o3Ac=(cB& zmwkGf-+)6Fzm+@9Id{&vJ@u5S)kt%5Y>twW`=EYK_&y&^i7e)Nc(N{STKv7$(S2z% z=m)jIZ{)hG+>1%JxnuN_5{&*Pdf^|h;x#2@uH89kxs@{tE2gL(Kb}N*L~1f-<2$wR z)A&F=Cw-rZZ|1gx8BzP#BX2$=0wqSrxt&G=eYDch0pXR{@%9Jq?^0$o# zEbcjL-uQ`f47kOWxwZU}aGc#Fw1 zu5sl*!eMdAyE_g-rgQ$W_lPXrp9#lxN=r@Wkr8(+Cr$dp@)2V!kk(b+-^;!;ioM@H z-Mn6YkAEcbF1^Ztf`s}bx>xvHsRsP;ycVP5YxQ+aA}D(=$+Y-9Z{TUcI*HKTW_R*g zc>P&T&64AgV0UTI(X?`%lc#c7qf;0bF@=2rtyU8SrJtt`EH86Y*MTL=B>RSb!ZwbX z#_b*2{`>>>V0A>1yPuXoZlX@llIT8GUf(}uCozJQZFC*0a-&m-dqSJDi)Mk zqDoiHoHa}I<051s#mhV*;1>XiQLiL29GG%VkxlL#@_uY9MEaM=VEAu~^&U01v3uH@}rGgfKsSnS|V z_!J`=1)A(T%lno6$ipaX4)0oe5Iv_LRuEoe@^<0=PVEm&qQJjfK{FQ(1KfEyh>UCx z0-J`NaytEywH_=fL24a5e+4m_gjQ!I(nTx0h7}C2_2}JumUxZh7Y^*{&*O_wLPFiy zg)_vsgY3qypMi!3Fij055(8z7nBMtf_#{cqcVBnBMn}|n*P1A>h>9ew_rrZW2e1x6 zFF+Ql+)ozoTsTmy78mL;Iubep_nPtWF-y-ggju;JBWqrPExt} zA~WL~h>CFAwptglXAt8sg+b7Z&@5I$-%1*Yg6Okdz*jMF*xsR4Lr5}@7W_gXT?zp531qeD$%Lw0n37aM3!eu9Uk7JY|uVjU}Y{?R3_X7zIG0sh- zuo$tEyx;|2ladvo0QYdSUvDVqiW=eJ`HsmPOnF?0ReG>;pF54PzDy3KlW`j66 znS9Wg@8V-mLWU$@l3RQr`OBqGJ=W4M8!esdSrL5_$&@S33jn8M$y7ah^_mV&LU3Kk zOe0SEX-t;)=+ox_gszr*!bzpe;}Qs%mA~>(~(GQqTAg`Rs}2 zepJ%dGpW9x@gJ$<>3OKBd-Uun@RU%HOje_45S;~b<3^ygok%bulIKsY8Q~YV6Q~bH z8sV3xxwxbO5uiYj@5hg3UVS5vC+@NC^YXxbu=VaXX#0N9}3c%@os%l@fbGegF5@S1^2 zEKK|ibY9fI@?ut2AkUG@+%#@_s93-vzNv~<9L0VRDKYdRPoZ#8=s+fe?Vyievm#XFhdAE#S7mXjvOyVkD!p4J}5y|{me zX(O}r&!x4V8{SWMiEk7&DtBT#FnTYhGzr>bfiLnDMA&zhdg>K&g>T~Moq9oSkJ_8F zZ^RmXN1EDI`{TNXZz^Ydak1Wq4BsMtU*O%DOIs#iErM3I}XV@O;-2bYoc_r=k#5_=|Yk*xa;xlH?Uc*Hq>U5^-Rq!at`nOmw zo-oQZY#AI}mf=dmFO$v4L_QZT{0$RmiO#R43MV!vW&v6Npilm`onkcM-B z*r8LTx#Y;oLgr~02EhTpF^#q+Djl*GRLpvGvj{iF9UQlgLje1d=-76t_&eDituvLJ zzM*Arvv>TkZ0R>eFMutD_|3?P=b2Y5U<^P~8Zb!oy%!=`&G7yU_*N z9i{1=r7exm8(estFOiFw1O_T(m8`$O7y_=h08ysw>f>7X%a{4W^f`S0rc!PL`^wfXjFrLY zW}{9)p|%Iv*HrQz)djevBSHbb6rKDk%41qR(eT16SthOU0#lNBU5q)k7%w6tOMmx( zW%McJp?(Y>2rbN)ko61z%7QdL!=Ufo zymGGqlr>H&7S!=1TF}Ok+g8K;!lP3kGQGZu4A{9d25}#Ad6dQHs3udQ*Li<{Yb~r| zf;GfV0x>poUq#FQqK3TJwSfQI?biMPYQ>$w!M)(Um@TP+VD2hjbuEnpy2$tneD?(pSQF?P)^O)B8WD#*2*ahQAsme$JB?H@(*XIXOiC%cy zZ-Aa5&~P5T*kbJJv%@E_M+o3&FXiDbD9`DC{6W3JrmeQrd}4jf9k@b95_wOHp3{GM zbG98A(wx|v#q4CgcP3#ZW-5r_uMxRlLZTgMEkG#Oho_0X7tL47Mm~H2oO2Mv*hHGC z3nvbsQj8#u$$Ki+<5;~ICw0LxV-iL%Op`kKZ?dNm_*GRkA2?Jtig8)qlFRk+auxv( zcNi=6C>&gTH|hEZQP?$0OOEIxE?0f$A1O1qqA$uus^z5WUt6;89A`Ye!X6JGgSqtM zaH*Xr5f$H-?X*%e-o2 z9ky#K+5q;vVDUM#g}-(9+0gQOR*(2(`d{#N^CZf@@2j6P#Se{IpK6>;)Fh39{-j4L0`AJVo8H=rMtag<}H zL>{7QZ!H5zYg#7zRr%|lU#GjIQLxROH;zBED#dpiO`ik=>L%ym@$m@>({bAaETh*a9JciR6oz$mN@{97Q!9)hSLDs; z*{fGFtF7rmu!oWmM?T0GmlzbbwO>aOE$pwp@Zh+k0qRK7&j!S#bVR3KPY>;XmzM5i~BeJpG3q#(%^3`pA&)dv;?ygz^ZR%iU$)M94^h05g~~ zcRmLS?MAxWq_H;5cOi{_R&Epl`6n~*$kQj_*q+gAZjQm2eTj&b!A`=d$z=?PQv>IE zq_;}p%Wpq_2`<#~OGM|*6-Zn9OKBPn6rDs9?DMy|CmaZR;ZA8@YY2tj??`nCU}CVj z8~_;YP9_uR&&umM(S8d743ul1Q30$i5Arwk+{Vq@x;4CZ?HZ13JK)IP0_X{{foggs z(G|C=n@e*!$BmmeUmFn62#qkXqwLnjlu;6e29{3xGY-`qDuO$rr_BD#vEQ<#F;A>) zktRXOz&yiEtBxP<2^>DcN{KtyYF@#_Yt4(-um1`-hiW|o7Wv&Pq89gZTe6LrcwTau zWCgWX)LXOS$TuP{p$}jjO~N));ZwOFq7vo(V@D6C$$X6e6r0M%lnz?6c5PimE5Xml z{SJ235yD6aXDla4^Opz^VlU?B?|;K>?2A!EYYcidc$zp1;>D_g?>^M(EKXO3ms2M8 zXN>K0;>4qsD@d|yqMDquLzQ2Qaiq00V(Hm_r=FO$575ns5#y2zltyC1WlT&SKSz`J*kR zh+x)L+);RTWIP{`0f7KF#pRPsYQpM_i?*!6(1A=~v$gk#dKAZ;A_i2?n?j*3YL?N| znZivo!FBu8vR85020@jmpn0FFZ-)JMr@nJ_mp`16n9FiB_IPgAb(r?_%%5!oEVNCd zIjAUVrdlo0_D|)91X8^8%l?3*NQ>KlZ`knmdZ=Bk899Bo9Masr2FATdiu)Z365D{< zmQtRU#zE~~O-mb1sbx#0xE(p{Ec!+>e!FrAYwJ#;$Jx4N%RY@(t#kn$$0M(aLX|%T z>DOx68g})`lgX4gmY6WaFgZ2_v6z+4gu~Goujs6F1uQqUQqCgKs)Vs=V^|fxd^|Ll{r3d%QVZ#4W0#Io_4=n2ytF-d@?RBk|XP(vmhDY0dX-2HFZw02g2Kh$pf{la&6X8XC!I2d?; zFNulF!fi9;p!x`-Dd7O1D`&silJLFDC-bW z+5{XKm8WegOD-S%kf`8EsXXl=*7vUjB4NSS`qtALDhY< zr~-CPfN|>0-i`bYAziESJ*kHT6BNG!IWV?2YRs7G>-(YPk_jB|FKx$qS9GkX8~>^8 zXdG#W4<9Z=b@s2YC>cepC5ed)*}l<<<_2}$ws^SiSlcCEy~s?&f?$-~WUImZ|CcNdMN1ZfKkc6-CjuiSre(F)$>U=+2}bMvKbS-uA;bLg2e z5rc>>5DO8|3o89-m~&wOgAw4iqQ9OaP>bNG#?KyP^)ae@9a@@j;(&dlB^VezD=fUq zDHrVqKu&PB%5KK%B4=A($}Cs;oTy&lzPP$e^usqqI)fzdDeq!WpY^=&Bx}uZqoVlh z3^0Nw5;a)(z2Qb1$2kP82jo^54$2p839(Z=(k;R z{oYir&Ux@)C(hp?s8VU!qTD{XQGLob5$ZH*oFPZ1|9-o5)^X9L-zt6@m9PH3`s%Ij z`b!s+o_E=Ei8Q`H2EQ?bcEllH*UMFA3fB@kH69%#?^mt}K1(8J_rfaY1Th7Mva`TkOENlPY+V zcm@Gp_%e{~iUphi^x!U(v=P&<`jhG!w9BsRMC6pc-S-a8d33DX|7Zcmqi#dkpG+Yy zJ5moEI1t>(nUpDToQxufTMfk((Lbc<+cjBiK!a2C^kL>gG{)l7Jp0<`sJhKWzb>{n zTp2E$Y)zb<%j$+VOd>V!SGS@t9UXfZvm zabP#s)S?EluL7)DYEk5`r)u^qe|1QviFzcAgmr;A)hxj`* zKqgJU>O42?=FOP^DYDF(XX~Z5ez~EbO0$V}qB^|4p&-%<>6A=VioA;w_b^9JPzDs# zSpNLU6-cyER&7QOq8vu!mnSY|oc`c0Pe<>@@fLp$nYIE8jpSHJSwK?7`a#tzs!Qm; zk*Z^<7kJlv61nNaShdJ&Bm@I}Gs84A#MPBJQi!*cP0#E{H^>Y_;xqpD_EMej&Hks} zh@O~7w$HrBzXv{1u{x-n*~yMNLG;hmLzM;F#)h7Id`@l6{(l6YYC8`Eq}!o4#exDD z{n*id`kMY0Tbi{+5J7{!=+;ghAFZ9V(+dC(YQ}lxZ|wW#{rj2BQwg}%J|f3Q>lz{Z zDmtuF6CNs)Z^PS$Yq$VF5RJr-@^%J($W06pZ&L`f)h!)j9rPTzd7cy9&6PJnzY*+K=>|juy>lSz#Lgdt zKJ50RoZL0DFa22?{rYf1_w;Mf5R|k{QI`Yx$CNGhaqqnP>@&f9nk037CvE}i#)@DV4X=sX?UcPJ-02>4iR#0_< z%*T`k`lMcMm(Jj=#tC{gs`cZW!tu4NCB&; z6g*hcRD;okX;cp)Az@_98a!FHy^+|<-@erucQZ(=I2kfAX4l?q@mGFGtxS_tr|r?+ z6g-X~w9#{95QPWlDyRbT|8QD4j<}NE7hGBKJ39^-f0o`wR!~s-zoonWxk(sy?_$1N zF8-XCDdnU)@5%7d)2D6a-o!mqZDLa#N_zofg7-x|7Tt5^nx4u}pH5KmC`6w|F(-5DOgA}_zeOcW?nejQyHVz@ojYZJF~<+)sRIT) z;#0!-X+B^X8L@^8EYM$1CrHVNJ946MEt%$mTvqDLwn~68<88YjGa!nHEk0GK3=epJ zDX%M&4l;<2faBALS7}r!<_Pe`iw|F5TomZttkKTkCVMHTdYxt_R*$rZ7Qlq$CB;v(V9Xy&Xr8luQT{QR1v14o~-y-HK zXwGiktL^rg6DR-e^h(TI(Vz6kb&(qF0O{1@8q0oMwtR~vtZFP<_PKrO(T=^&>dQv& zO|API)7A7gt=sl{9yLV>u$mZyQ&X@&CQGU4U2*dPXhU|+Yk;$gWn|8kDYaA4&x3-B zMp{hPs*2`w15qGg%DQ6TPCZ?A1VQM6NQY|=P>{&v>`?aO;&7d(3a^7Z^2Yj2=|H0H zFF_0xn|o+nOijbYE9_)3X62@EOFS5N4>y=GeR?u^gNnmz-%jJf9Lk+W%lh!cIwMd3 zC z_nPzoX@BPSXV5^|X-BEbn$=;m7C0KhGJ*kc3%=d#1AjA}CcbKr)>0arTS*%?Y+zU3 z!TY5pb2M>>@&Qohc)%UsLC7M$KJAm_e6B&(&}({S zRHJv7stlO1z;^`8Av@$|XZ`jCL3dTdt1I3f-rsKQLL3tOA!J2Ahwz<4(xF|ul>o_1 zV@Jl@Io#f9I?Aigj^-7|fy;^pDnDNzty|kej~WRS@;QeAIlvllCTw-C5m7Yy&f7D4 z--$o3Dc4+j`ZSbU@B|AOXskWx;>8kC7Kx~SQ7pyw3CY@2R9~c!JaxxCk4F6Fb%jnr zc+7WQ4S_a5fMw%?)VZj;_darTSiKu@v+SSYwnYK$h#(WjBW6hdK}JKO+pYG5#ubr; zg7FntZXb{UrIy3OnG1YV2+#a{c;F9@nXyn7H#!u?Ap@yRVIGfj1XMDNp1+djPgqLb zbyZ!d{aGNfkbCjsG~i)aG)W8+lkF-8pbDAt-i1}haRym2R=;4|#OAywASJkpL`CF% zX;JeXlxxJyO|nHALR(PJ}m&^bjjmfgz=T5|Hl3D*l$5@Q%0 z2M&_62>M*;I~^fgFL(zY?i9RJOwqA1fPCA0iT&?m8sXLKzYQC*>i3+0 z*#*yHos1C8XQTcDk|=JErfpB+ve^|lsQsWp4yBJCaHC`qJel$uQR8oT@%}e3fLQ>Q zz6rnVWICT2b5Pqe_m?m*1Cu}}+wJX6JSnZ7PkDOwpq!Gt)Z>&HZppjJ~`3Aa5JMgm!Z9i^d6Qt+5g18ajhm}8Xx*6_aw40Q}I6xdj*isg;8dYH0qXftpJc$VaA z8DfwS07)q<8Va&tFLl#A0dX9kIcG&*!W45fYMm`FK#*?&T*wMxu*&!Y4_YD~VY-{K zh2z*jK(c){UP!AIkKPxa#=e&4hK(Cv-ib&V-RAPiIu(I^>MV_E@GSPs)AkT(phdC; z1~*#H+ZUEV%ixUr@;*)4v>C%fI7EZ8c7^Zwj%TbVi|ve!E;{|Q*5S4?G~CaFm|}Ql zqP_iF+Q}C=4%7_d03)>?4KEc5ceh+fpW&PPSA(aibkAbIO~`?+x=lAPrPjxpD(osX z%ghGgLGQ%)=b!Y8Z&9qtzJT@t+V3*}4G4Ln_!E5y(G#uFEPUZmK2MuB&jLA2Jlk19 zKOY(~cpg#mm)P%6LHK?f z_(cRw!g(CY<~CSGCx*U1Kh!94qr;#!p(_-n9Q*hjp!LB^-Cg-SBL8RoM+F~0$;?fU zsVj??QnrKUeZHBf(o$cKL|8j`ZMUP28pN@^pNH538_RCiy$?GlWluciv`<^>jr-;+ zgtL#2CsD^L2g6vuFS$2*(P=NbM&UV@{G~zU%4q#pc=sXH_3RICz!L+$plTUi_wZmg zaG=);uX^(MachL;XkXuT?Tm4)fz$1kuoF&+8k^X4fn9RVl;v$Jj$f!Z%>F>KT57hn z<`sRKmjHr#IejDN=Q3d3glAq%-XE%(Znty(2Qu2t-g^?lAmOfn4T_H~F!w!AtuG!~ z9c=a{runhDRo za$DD6DGljnAFvoWX6hv`~ zgGc$2s_dU>exn)|#TV_a%-~7_Kp85J=;n|5CZ?DEoixbST|YxDuzeN+s7^h49Md|d z3?IiHvK`Nhi=)d70$DUXY|evY`>^1R1i%_bcV-KiA*dLD-tZbqx$9Ou(%XrEmej1? zZ~rP~Ku0AE!qPZsZ99jRN4|Y4*nnL?Au%HY`WQ5N70te=#^K*;$pZ2iR;TN1S7Dl+ zTvy2qGk4SDh-SKRfhb#yg<{Jx-@6E2j6%aTPOxmmg+>%rtk7#r>M)uKo72Lgn~y?P z7K?v_%n{-PTKMQSZ+8Ic-hi9tfd)V#YF!=9@BEJ6J9BTnvKJeS-4@=#VaFuKjsiam zZOqyqoO|8p-Dw=IB^ngvXu3->s{LhOU-x^Wyzxi(4g<$`jKA5X^Wp=kW#x>i^v!MY zhp$@3fwWGS(Y&RjYiFQp;wsyA>fu^S51EGVcDKbeU#+=|dmDNHfeT|qNi(@ixsRpp z-Q;)B@Ig0BH~MIqCG2#b%>*3|X3i7dD~*EyNRXzYwP|X6zC8~QK1bWgxupZutyDx! zZMKVskDV*)44b!68aJ1(c!L_jnmypcAfVeb)7}+7#Lrp=tYx$uN_Td;KyE(In>%#eY6PU7Xqa zs-}>w4{I*ci=g!pF(XulsM27|5zFoa5kiwP>Ch{lQ*&CIXzNH7VyGyMDKhDdb{$HB ze!~`T47Gj?J5*`RJM!d{wb2J`LY2#>3K?Q+k;Dcfh{Z6_H<2fh$3*i-lfQSF;n>`K zse^weNEywiKxFmbF18d=$S5crWL={|CPaYr9SUL%oCF@M&9>)BUDMso&CN%S852pu z0w@Ils$S5-H)JUH&hiJp^>_7wgAj{ZDGUG&O(>G2KqJt^e=5yQ8ca(&8<$#A&q=IR zh55&Gn~HOWM$|^@B6iu8X_js#_nk)yKfUS-MbS? zh_WQp4n2BUo;1SolpY4`?^mgs$@@L}_H~2>W+Y@^O5EH;)*%zqOb} zi0H@3NefbCKe1Tx6J2eruI>wmtN1@a2L%#=Yc!!OJ)xZE*L2J3c_1=UCP(P#_CI8| zv;~go+>NY5wv9-VV=O4xmakfR_tf7eC6yzoB8MQLEd3?f$nuzD*oYQ>_5U)$Wa9U+t5s zw;*@XAJ(d7e?VuS(Pm~f!;r9hrthCh_fy^7_Ni#uvt;x{P9~>rGi~xBblE><i?(^n01JmKN7ItgYddX} zAaoYs1n#9rPwf`X`#EPH*@$5{IvZIQPgenuRV_RKrL6IQh8w&|uZ;`04yHJhL?FB3 zMP5x8D3}~_A|%XjB4-qs8XcTVU_^&BD5Zu0L9x=KC4uN@#~p*B1Ml|QVC-k@40tS$B>mFMPTxT9#SRjso$$SS{r&#j z1p<>6r1yd*|ER$xNtixqsi}MoV}#iIWL&8UdoWL$Om=R1b#L_r16gxwdr_IJR-H#T zuWjb5DZc4y#!+%BRZ^dgpEk1kre2@bXBz%`az@4-Y`@ERxL>#o05wTR+pnLrOKpwl zVms{tgX3HhgX=Yr*t-CMqX>7Aw;ELcVc|s+Uw2|j-Y5x$dGwqt-V>8E^JdO0)5Du1J>S21#QIKmG5F)F z1)1E={&NBP%&FYg0Rg)8gC5IMWYfG=d`5@*zVeg%x#exyGB?>$ez4EBVOKMOPC^t&ueSZ2f!m=#iaS3MeLJ9&fja@G1KNnHS!F zkCQln?2i<65Jeod?43gchm@P8M)r}Cw)CFN+*w{g^GUp+=z|hFE?|Xmcu`4I%GR&(K&tDW? z8iwvY02G+9_>;*;DJ(`3M&E9zn3*Tr9iKk^rru`z?b_ry;Mj`ODluwfw)3xGum ziX`Ebco4X{mjSpyJbNPe6h;U+FGk_a$VYeV$BhH!4OgM$E{)}t&+kL-OKfF?I z94dB=I^0Mfq?lrW1OQ0+aBxEG4XK`FlO7cVGAG4U8V35UHB@#2pmIqumKK+P^I(Hf z?`|#SGekxz&kBg2$VP#vgsR0GX2|QIs^OKMZ>@K$eL8@F#GUcb48dZO5pwjRmXGG` z7rEYGhyeC5M1p09q%?m%N|LAbMIa4`czH(EBy5;m4BmX^z8LM3`cJ(#i3lkdYL#)xNejkW%aj8T+$e(GNsZx%tF^@!E#Tmc^&u{IvLz;932*&}gD)I#Y?if`&?U4XNqK zOC@{<@&kSZ^ln~klfX;y!AS3~r4qCg$Y4-y1K_{|2Y4F@J(r(|V1zoJ$r zxqZlR4ySI~2gO8T-Q3RGxSo}D@%#Rv$wGa2z+oFCb?MyM725z=S4w~u0<~xF-nW*1 zXS5UFSV6xBE`2RiMOCLOK7Q1@``F0HXo^!36qxh^Acr&^)3+3L^if-LF-$c8fjHd% zot$R)I)h|n2m()-LlN#2`k8q$c4CO8NY)%c{|`v5EF=<7`D8IP(2{3}>nqu~{yXbO z?*xojv>vp)Uq&`ab}^E55-m{ z#CoEuYcB%COu_&aL{UrMJ_LGVFT)Viae4)Q_~`qbIWJd~jE07Wr@lqBr0fKQ4;oPC zUqstQUgdCb3bRx=IrGN#>UdqtL~UkxMm9&W4(!(2)4@a{F#Z=JW(S9s;a0M!xw*>H zoicZ(KmeOoElyXtm%WYnM{AdvgUF`odNMb=I z&RUEjE(^WNQVl;EWT~<70@%q$MG}2`1A|kkuAWTXsFoeFj`8o>NK*yJvR%lfs?XE8 zH!!I^vlo>737Xi1dm`4G(rshRU$e}`(XsADZdOQX9QA3El?4@ZisuFq$zTiK0B;Y5ZOKR8qCl&H34ktOpYVP+y=U0r}Q-r>J`zl@L8q=?Rr`( zX~17shflM`c{OOTbolRI+GeCI;a}B!)tt;v2NRE=9r>9fSg~L`IDsfU1`ivjM9xJG z&Wy$yq^1{6^b22%^IQS*JbJzRQ6h(1FYdQT+#6-t0^CEf&VIEz!}fZA|Nc4myI9LJ z(Tva!!tY zZcM#>`!ao>5tic_FChBfo%OqBePbRZN|gcYgJ317O=T%;`g9d5wE_P=*H+T&FxM$a z^*A_0LmQjS<_=eF{cKI6{!{X}eb`Pv7SSPcY>q&fu1DZ*D|OZ-EhOJYp%>s$0*A|EE5>?<4RlNware@R~`8gD|w zemH?o79;$YUvDwC=Y5hpMZoAk&IjF+UD_~}1dGsz^M2@q4n*J0T+gHO4)#KpC5hRY zS5${9`YmSWVWH1Lb)$DF$lVUjC7>T!0f#dhtOR>LI2!BhwdFThLA9OAV*3O4gc}k6 z%1#MO;HDTymo<9*`u(2!vR?V5I$kli80?{zFRZdh53)CY{@=trVom8PY`26v0I4RO zNIW_zUV<;Jz_m-4^0uewZU|4moSFH~_rqu^D6S#%mioC#De$e+*a>GA>A6e!&J8zP z2;mwG?Bdq^cKa28+ZK!SUgpG=s*d@H3UAfXqj~}rBdOv{B>wrA*=h0A$ko<3FLh!3 zTqHiizeBm{a}t?$YG(HZ%J?>+nqUmW77n^@djE{t(XB%roR_sA)BO(_O=h`u=F*FQ z82vNNyvDX3l*hur5$CjQ4%DYRKrX+6*7GWbBemsm05jMqe$8|eLhzs!2(&?rOc-k; zyob{xPz_IZd7Jv*<^;!3bGZQpY3GjKMkw@JwMgJ7j0hD}LzKmDH`w0(7#o&iW9d;S zOEee{M1j_ic|FQjrKz^1_y0!-@$Fxa&?;~UdXkAyP}rURqlN5ZYHJkCZB4Y)gfE%K zaYNO$hSVv_93iZVSNPm+zIsr;_F?d50H0xuZ!z1y5A?Kljvf>sU1A>X4$Nk>!-WBm z3*7Q;aOUF7f=wIJs(dgl3{9Kx!$@@m8v*ngv%+O|I3%HhsgC`CS_(kYS^+`rUNb+# ztVn^-05B#(lu~yIjf&8<{z`%jmI3l?A}dh?`2-*rks8_&7DLHy`AI3q*+<;g&^@fm zh=PG&wly$tfBa0l&8<1CVw}NPwb;d1t%yblyzEZCb~MxH3}KEI1pxy{say)q{$qN4 z-%oT0oqrgeGAnoyb!Qdhg2FfcG`Z(~A9u`XE9@V-kkEluQRoK+t|2;$PqX}5G;Gkn zCNzmMy-1fAM#H^xXTkT}Ud-(?JI+=B^7K(THl3uqG&GQLy;lI7HX!PgamUjd5NyEh=FMMePy%Gj(`Qq_m(=PH`+2 z83$|^$dfqdG;EkQ-_BN12p>R)VFiG(9pR>q_t%P```_ryt*L*as`!}KDq+-|BMv=5 zNTnP?_LY~TTY_iby*$8$N4(kr)#bFh!CC@~_DWX-y0=avu|}YtTCU8>^yoKmpf2%s z0vNHuBQ*8V;ssFpH6sH^S?1<%m5u&3W!cBJ>a*g$FZ^P3d5qQ2+QuVmTb<84p8sm? z(*DLZ{LOaQdnO^h-K@BX7k zG_~vOFtS~Z+8@dq-M{Jji&EKk_}9ey!Et+DJUsa^v`cV?;j%K1(11bKgh(3z+|Gs6 z1@}0=S?B`hM+RDR2&(^%s5Z|!se$)*nSvNQsA_-B4UK^KYDbgM51~to!`-6-(QS(< zIEm*Tgs{*Kv4|2|RnEfG{e66UjF|m({2Vy@jSbseU`uu9SwY<<4yV$Ac$aFM^BOy9 zE}mOrtP0E_u3ry7;v`$kZJ14+d-v|iKBQ|e5HgEM2lZRKnr-=o%b^ zcqC_>xZwT$Ti}iz!S%=1xR%#_H6gmD+qN9pYL!gult#rergQ%8M{BPcd_4Q4?DHIR z9PVUV z^B&K8yz?B-@y>syoBO_hzwhr_&g(qSD<-b%@D&G>s~O@WQbk8{^x#2H-2LtC?E|XE zbK;X?+!GS>mz>4TG+|Y1AzZRCyb%>h(i%UHH#fuN%cgz2)c$6b>&lgO=X=x|Mr0z3 zS{jo=DR3}(^(0rb*|TrAH_^Y208Mmw)JHny+MnXmOKN1t9JiP^CM+jb{IY3qGaEH& z2aPSVJF@43xxMU8Vdl(Kat9SRV&~95>Y}2eCe}W^+~Fbb09~VC^-W*XaRsGuPNA$; zVoF8Beip?Ic-ooRSWSdv^ePkcmTxOAwx`9PfTI!gmYUJ}p_#tNY>QVeJ6U+k_2=RK z7dxHIdBz}m2Sq2nttc##L-u-EoEEvXkX&n0r*Cpg4{@n{5>0%hDtliE6uRHF`$j;lZ?p}Wg2;6-h>*2YVUurO>`IBV8;j-GgLQkdvyvBRWh)YU^a zRAXJ}0Sj@}v;o7@{AeE2w$|f``Ig0dDlp8ec^8JxDLe0KCoDHxpzdJRl>*x@*(5Sy z!log90JLkQ@1^6ke&OlX*C6=1a%JH9PaDbRo8t1_{gEMbD^hb@>g1HhkPDjwRc3-Z z+X}`#Ei6=Gn9$8ZOda&!JtlZAF*mc$0{O_jkdjiqT*K#z22T1A{pttWuFLx~bpUx6J2i*{(rywu#SwpA64QME zOCU@!s3RajO7NjOI0Im%AT((W8k87O>%mk9Qkp*+CKmg?AUW!-*~gBM`Rn)~y6T|_ z6D#TeTA) zNWe2>%59T>_w&sk=aHnG4hv4yWW=-kAX#@)QynX#62K6?=L!l~3q^Dlvn0$zr_dhI z`Nx+u+5`tgmKBJQ8v1-76I#LtQ@w78EDmPA;gZ6tl}#L+OWbppe0pESzoc_Xh0z8v zCm^UWr3U(dshL?LQzu=uYfLX#Zs4%02SYmXQ3g5dWnhqSeQKMh6?|8iOS5Lrmfe#; z1-NY%ibVd;o-=^UiP+PJCF4jFL-LkS3Mfu`~Eb;Tz{x@ z)c3o7*U5m&TUlML{p-wMAK$)pt8>v$j+T4-s~h-SZ6F@tMK8XK)D8u#NU$$C)%;MT z?=Q!Vr&1CvrW*|2y*qUIGd8d@2z?vca`7y4^LwOEAvTX0V`(@^e}{VUA-$8t({muD zG~biJ3jvUX`6r$M3~^x2MZ}gL9;{4+lT~)&XG4m=;Nt3StGy~Ivk`-jOO%!u4NPQXXP(Q-9t}b?)TylJfj>#7m%=0f&02uiBBXWndWf1W!G6Q8lopFS zj{a0R?$Vr4)w?en@zJ^l{mn`(AB2kwJozm3P4goSrP_Oc>~@&IRo zujJi##H=cwPc2A@F-UGXc3oVRH3bfUT%!HAQY*O?B?g{Et zIv6X$Eb8dx0@QD?oa3i@A4X0vuzOe>3myOp3Z0z&hca4}{;A%h})u?#R4i`QjgI=n& zNwgUw!?v-B3x^}j_?q-&2RiKtNjo_uMb{#j0)D@&8wXFcsucPk;{$FPgo?Hbh#TMI zYY6s`zq(TRa?Gr)u6(gx%}?ltqZ^ZAk%uVQfpY^s0ZC>xMlix4!@*Wq?)s+*X)I5-T%qU6VjOx<~}0q>L6m(%_Z{|>q| zC-L4%;Oe%m&$Uz^_gFOcD_-1adjCmRovoW@TID(E;!IBM2&vVIrVHmSC(QzxOeA%yn9&)PxyD2Ifxf^nt$kO19lA6BZ*zww4 z_=TzxQ=r!@g|#OCP`eZiid=Zvc}VjESMYY#95!q>DytCKIMpCEF+8jT2Bwsc2~joF z@y|)A0>0c%JA>O%DvlV_-i04MDzq1NE|y-ug_~d-nXuvT&taBqtfN(nJ}Ep z;0R&~jm@!jP>k$pMj(@P!13{=ISeO9)BW)Bf5_X(| zcv65i!NRa_xG4O{#tfml$+#58tayQdsH{Hn^?|zM07!$hQsrxr`}XZBgn8nNF4zkR zuJ);q#c8@=FOF8bZ@%#YiH7zizF(jt;)x-Vfvon6NlhT6(fD}%0<+)gmStpxt%0b) zKG19*kBY)zX+IgMeTNP*SOXmVj*TWz<+GR6EP!whK-UZ5jqsIPKXh8Q%;VXe2`U=q zq0_a(&)c(CbTOI^oT84*4l>-+`oqUghqujdbD_D0x0~A(cJ_Fu2RDY3sABy8_^@k#*n&dtQsH~9G**z>F1D!pe?Tto8NKQr-fKoek%N7J$zGf%V3b$K?bDh zhm@sIvTUf^Jtc<@q@bcA5IBmOQFhxR^$qeLf<5C-Kn`&T$&GUgB$o3ly$23FnQYAx zqg2b!Z#xCWuCII3hc<)&IV{Iw_UuihIaw5>z$09w6u@PRu)V_o5xC<^n0q8EScK`% zAFGTQQ@4!I18!%g&oAozpKYn@jRR%+j6y;N+_1 zp_#ACU|`+>&Q*d2Is$HX(mL)YcfyOQFXl?AFeWBXp8T9rRk2Th%?_-QIK|dxMU-T2 z4DQ4bgCXYDhd+4Rs@aSvSVoM(nx0x*7Q!;a6$D3`ZTk4+w6r^HPi30(lJ&8)!(ydE zK?P75gPZ;!i}<@dp-N&Ti*!-IWVw*ka8kw!Jz9o%@RBOblSrm84Q9@tKZV9eA*q=; zcZYAkt)jYS6lAGLZ20WauU|ivR;_v)7^s1!08mcgsplal-&Bujs2;U z-dRXP+^`p{WSAb&3)?5|oc7`yjfHT@)+A%cb%XB?qsgkiJ*hduD1d0mt)Mw8umHKIFCM{u5^4Yb?aX20Q z!h^R21k8euI4i>BfS%ScIgQAI(*phO^thv>>CJS)4uBayCxD_9Td;GU~fo9HC;+y}6w7xhz~Yql?mX0a@1?>yRHmUn?Be zb!ISmZ;PMbV68_S_L|35fsxWr#?r#;V(;GMI4R{>*^0e5S?+C=1({)K%sOUAEli2S zMv=Ql#irPu8}dIOCOtH`>}66mE;&wrvrW~crv5ybU_Gav&hCUprO z9xruQDim#ROd0>$0ex9$I5okBBw~JynTA1Q8eCEed6v#B{l6`>%XcOm!;+cE{K5}jQG<0gi!kP z!8jz_T+s5i9bq#ftEo$mQ*miw?B!9o^tfwUtJI-Wr%6yrSqKFrMnbgOhg-wR2@#pw zkuRZig?k+V76kz1Lq`Xp1k2^+W+9Y&vfQB6ep=j>000c*#R!Y!N3sL~5#(3h=X=G$%YP6kZ z8(@MuCTvUz9_R2@sWmeQR+k3)syaMap62E}a$!Pq=bNh&5>MrUi;F{mtmA%-V6xyq z!>2x=4P^GGuUv$7Op+A33lWM%nxg*WYY9lad{qdn6kOVlpE&Uf!1|B!r=c*iSiy3W z*A9o!%jX>k+O-7QP|~~TsHpPyqgyj{AU-($Ruy^bl%v@tkL(?HV#B*^3!&8lP_Ws^ zuFNr6P2#6VuuuF!?_h7$Tg9L7S^0$OqquAo!Y#GHXZ5yQt@3t29r(H3=+*{~2KR-5 zB&D8(dvof2_(hp>+B#~CFQ8-dbicod+EuBuf&2NDqk;CWADxCJ0=2iI*auP++=%6)sdR_jYj5MZA_u=9j=+sI*Z2BFf&a}Bg*XKwnNSd;Yjyfi) z(_xt(Ut{$_Mr{QfHK|c?N;-J>@QsTJhYxR{px3Lr{829T_ni%s20vIzy$xvc;ll^? zi8)70VSmvEZyiz!^_Q}s8G{uJm_vDhq-MuXO{z8X-8rdMGE=6-ss;oSyNtKh)$=c{ z`X2AX0zs(=X7q_0$tBttT7&FL;vwkDmSM3iKr$}u6I>MO_GHl~-Ny>h9mcv-S&ZnE zP}7mam9VVK@sFPFi28HL5!^D(t0g1`A$aht#jO3Xsz3;66qBM|kp)B|FhpidydDbg zl|`i?qtt!r|AOGl^D>DO)PFD0S6)v}j?7MV=cAdIK8|fnlXbA%-DRmWcv&i(^Z0RJ4wo(r{u;DlolESEx`YSkUUrFYGz;D0wAdaf z3X~`oqw?E5qbTS{mbPX=5g^M&6Z3Cjy@9Po@~U9? z816-3u36xv-yQ@KtZ>(N%APl>p>};kgo0~(s^gegV~2A?3JVL#k`v*&M>F1uMyNoR ztb^~94YlJaojT2noAQ6+8?gb{hE%_swi09-cSBo zeWxi8!c{eF`lF+Fn1|(EzGA4dcz<;6UXQsclX9qYMsVeV?$IQj-RVI~>bi8-^N^`x5EE?>k+$`2*H@|;g^<1m{oWVoEFS(6HOnxGODjc4MH~W{0 z-p|)}ep8bP6PkFo+J506Ic`ikkwIPErjtG@bUJ=zPqbddD#?wcIFXLj+(V@#{|m<{ z|94ghv2Z<;`JEu>aP^@qE(KF!YO^QUfMsd$Jb{X=(9I!FB#`S}>UmU52UEKgg<;>w z0`t)%73$D1ssvu<&%;Q~TvPW4UTEb00H^{`Ey2xvA!ayW*5YW(qLdLcs=IJGqfJNi|(+Ed;t zR#0?nPTS*2LnC}=&U1HkIpmB3m^cD=`&m4ztn~w4cneckEK>M>AQVc^F^qxIi=gi= zMG7_{M;LtZE)bFL^HK0fxpC)?F90Hg7BBv|f;fH?Lk~oiW;14FED}gk^<2ySO3F>e zCtgADyeZG!(H?(dV1ifSL$~rHJ)s+6CE!Q4N60Q%Qq@ricnY~jbnDoj*tb$2w~nd@ zby_1;Of~51i1(}z?D|7bYIzgB-q?u~eTICYww*nzp{?DX)OgVGwuM{{sNZN|+0&`} z-U0v}VuBh}lq{k3Izovsbvtd3A({``<3&aI@3WS0;&Te|-nMT@#E zDB9q}*b^rLsGizjxd2?&`P3ila5=U~IL)|`WlXY|i@yX!+a_z^TLrw1mpkWLFkNrS z&GDs!1*+@}JN>s4dYe=mJ*W)0v+sBCvT6j_ED?D4u#roT=Nx?)erBeoWBD*t(ST)p zg0-_;Jyy`TJ})i($tmyTX#>WVg7mWri2%9CGA(S>qZ74r%*-~JeL+mRJT7x=okI1d z+M&aE7Slp3+qqzYibi>kau5BJYkFKs8vW|;5H#bc3dgd}@0$HL>ZWe%YIQslP}S1% z86aF@)EV~r5CfP!a=~bL!sk1*&}ghb_WF@WB~sqS)ibAeNDmze*os$NHNa5}+{2)C z1J^`kbI*9$45M#URnxz7`Q^=Tw|lQGmjaLNOcuX>uof>)MltuuCTGsCUG&-8Th->J zS4aV5pZ>5AG;fXpQd~416z`kQ}WGSdzNNdiNa1pyTV6Wmwc>~q_6eA=1 z^Mc+#P;RepVo=k8>n_Suao}OR?+xB};mt{Jq|dUH7Qr0!ZyBMp7GRI|(l&q+ik?G; z$nfZ+V}EEHe}~zPO3Xh~JmAZuZ2;n_RAL_3Bu_P7l;UF}xHx+6Kl#mD%(gIlZAF31 zF;L>ouRVIS8>vtwP5vM!k<;u z2*vY{cl9`Z8RqTJeuB zvzy3Cnr@V~>2I8k-Op!RyECPkQF(2^po^ANPp>J1jr;YFvr;wmdsuz9aUj-RRb7{m za&uFAX=iDAtKQK6tMK?Yu%F%MQTr*Ls%WexmDp^uUG4L6So5mmnfh)F25?<{bXjTu zh%dR9TN<7pVeI5D>;>AswkP+tzfnr+siZTE`xEMGDsQIo?-9HI8_WAo{$+sIMu(?B foT`D_8k(7}9PW6&oxY8N|E5fsKK_*9q7DBAEzj^; literal 61726 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%0DP2@Q^Gpwi^{IHr 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 None: await bus.execute(create_command) print(f"{success('created')}: {create_command!r}") +async def handle_catalogs(item: dict) -> None: + bus = resolve(MessageBus) + repository = resolve(CatalogRepository) + + siret = item["params"]["organization_siret"] + + existing_organization = await repository.get_by_siret(siret) + + if existing_organization is not None: + + organization_repr = ( + f"Catalog(siret={siret!r}, name={item['params']['name']!r}, ...)" + ) + print(f"{info('ok')}: {organization_repr}") + return + + create_command = CreateCatalog(**item["params"]) + + await bus.execute(create_command) + print(f"{success('created')}: {create_command!r}") + async def main(path: pathlib.Path, reset: bool = False, no_input: bool = False) -> None: with path.open() as f: @@ -181,6 +204,11 @@ async def main(path: pathlib.Path, reset: bool = False, no_input: bool = False) await handle_organizations(item) + print("\n", ruler("Catalogs")) + + for item in spec["catalogs"]: + await handle_catalogs(item) + if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("path", type=pathlib.Path) diff --git a/tools/initdata.yml b/tools/initdata.yml index 5cf4ee36..ae0b1252 100644 --- a/tools/initdata.yml +++ b/tools/initdata.yml @@ -121,7 +121,10 @@ datasets: license: Licence Ouverte tag_ids: [] organizations: - - #foo - params: + - params: name: "Ministère de la Culture" siret: "44229377500031" # Siret of https://www.societe.com/societe/fake-442293775.html + +catalogs: + - params: + organization_siret: "44229377500031" # See "Ministère de la Culture" From 31b519e60d10909954c2ed6520efba3c233915ed Mon Sep 17 00:00:00 2001 From: BertrandD Date: Tue, 16 Aug 2022 15:57:21 +0200 Subject: [PATCH 4/4] fix unit tests --- tests/tools/test_initdata.py | 13 ++++++++++++- tools/initdata.py | 11 +++++------ 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/tests/tools/test_initdata.py b/tests/tools/test_initdata.py index 11148af4..fdb90090 100644 --- a/tests/tools/test_initdata.py +++ b/tests/tools/test_initdata.py @@ -25,6 +25,9 @@ async def test_initdata_empty(tmp_path: Path) -> None: users: [] tags: [] datasets: [] + organizations: [] + catalogs: [] + """ ) await initdata.main(path) @@ -53,6 +56,9 @@ async def test_initdata_env_password_invalid( email: test@admin.org password: __env__ datasets: [] + organizations: [] + catalogs: [] + """ ) @@ -78,6 +84,9 @@ async def test_initdata_env_password( password: __env__ tags: [] datasets: [] + organizations: [] + catalogs: [] + """ ) @@ -115,7 +124,9 @@ async def test_repo_initdata( num_users = 2 num_tags = 7 num_datasets = 4 - num_entities = num_users + num_tags + num_datasets + num_organization = 1 + num_catalog = 1 + num_entities = num_users + num_tags + num_datasets + num_catalog + num_organization await initdata.main(path, no_input=True) captured = capsys.readouterr() diff --git a/tools/initdata.py b/tools/initdata.py index 6612fd75..ff8ca6b3 100644 --- a/tools/initdata.py +++ b/tools/initdata.py @@ -12,18 +12,18 @@ from pydantic import BaseModel, ValidationError, parse_raw_as from server.application.auth.commands import CreatePasswordUser +from server.application.catalogs.commands import CreateCatalog from server.application.datasets.commands import CreateDataset, UpdateDataset from server.application.organizations.commands import CreateOrganization -from server.application.catalogs.commands import CreateCatalog from server.application.tags.commands import CreateTag from server.config.di import bootstrap, resolve from server.domain.auth.entities import UserRole from server.domain.auth.repositories import PasswordUserRepository +from server.domain.catalogs.repositories import CatalogRepository from server.domain.datasets.entities import Dataset from server.domain.datasets.repositories import DatasetRepository from server.domain.organizations.repositories import OrganizationRepository from server.domain.tags.repositories import TagRepository -from server.domain.catalogs.repositories import CatalogRepository from server.seedwork.application.messages import MessageBus load_dotenv() @@ -155,6 +155,7 @@ async def handle_organizations(item: dict) -> None: await bus.execute(create_command) print(f"{success('created')}: {create_command!r}") + async def handle_catalogs(item: dict) -> None: bus = resolve(MessageBus) repository = resolve(CatalogRepository) @@ -165,9 +166,7 @@ async def handle_catalogs(item: dict) -> None: if existing_organization is not None: - organization_repr = ( - f"Catalog(siret={siret!r}, name={item['params']['name']!r}, ...)" - ) + organization_repr = f"Catalog(siret={siret!r}, ...)" print(f"{info('ok')}: {organization_repr}") return @@ -203,12 +202,12 @@ async def main(path: pathlib.Path, reset: bool = False, no_input: bool = False) for item in spec["organizations"]: await handle_organizations(item) - print("\n", ruler("Catalogs")) for item in spec["catalogs"]: await handle_catalogs(item) + if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("path", type=pathlib.Path)