From b0328d7d91ffc9972bee6c0aef28f43e4751c0f7 Mon Sep 17 00:00:00 2001 From: tcezard Date: Wed, 7 Aug 2024 21:44:35 +0100 Subject: [PATCH 01/11] Add casting as list, date and boolean when converting metadata to json --- eva_sub_cli/etc/EVA_Submission_template.xlsx | Bin 36964 -> 37012 bytes eva_sub_cli/etc/spreadsheet2json_conf.yaml | 16 +++++++++++++++- eva_sub_cli/executables/xlsx2json.py | 8 ++++++++ tests/resources/EVA_Submission_test.xlsx | Bin 51445 -> 37761 bytes .../resources/EVA_Submission_test_fails.xlsx | Bin 51424 -> 37594 bytes tests/test_xlsx2json.py | 13 ++++++++++--- 6 files changed, 33 insertions(+), 4 deletions(-) diff --git a/eva_sub_cli/etc/EVA_Submission_template.xlsx b/eva_sub_cli/etc/EVA_Submission_template.xlsx index 984004425f1fae56c5e55753dd627345ab68a755..db76f4cc7b73204999edfeae13d0aeb75cb49293 100644 GIT binary patch delta 21926 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 H{ulTU)Js5h delta 21829 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[kagm+IL4O;5a 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 Jf5Q9+_&@yl+*<$u diff --git a/eva_sub_cli/etc/spreadsheet2json_conf.yaml b/eva_sub_cli/etc/spreadsheet2json_conf.yaml index 4a23cee..10a81f5 100644 --- a/eva_sub_cli/etc/spreadsheet2json_conf.yaml +++ b/eva_sub_cli/etc/spreadsheet2json_conf.yaml @@ -35,7 +35,7 @@ Project: Tax ID: taxId optional: Publication(s): publications - Parent Project(s): parentProject + Parent Project: parentProject Child Project(s): childProjects Peer Project(s): peerProjects Link(s): links @@ -44,6 +44,12 @@ Project: Strain: strain Breed: breed Broker: broker + cast: + Publication(s): list + Child Project(s): list + Peer Project(s): list + Link(s): list + Hold Date: date Analysis: required: @@ -63,6 +69,13 @@ Analysis: Date: date Link(s): links Run Accession(s): runAccessions + cast: + Run Accession(s): list + Imputation: boolean + Phasing: boolean + Date: date + + Sample: header_row: 3 @@ -115,6 +128,7 @@ Sample: cast: Sample ID: string BioSample Name: string + collection_date: date Files: diff --git a/eva_sub_cli/executables/xlsx2json.py b/eva_sub_cli/executables/xlsx2json.py index 473046d..d10960f 100644 --- a/eva_sub_cli/executables/xlsx2json.py +++ b/eva_sub_cli/executables/xlsx2json.py @@ -129,6 +129,14 @@ def cast_value(value, type_name): if type_name and value is not None: if type_name == 'string': return str(value) + if type_name == 'boolean': + return str(value).lower() in ['true', '1', 't', 'y', 'yes'] + if type_name == 'list': + # split and remove empty values + return [XlsxParser.trim_value(v) + for v in value.split(',') if v] + if type_name == 'date': + return XlsxParser.serialize(value) return value @staticmethod diff --git a/tests/resources/EVA_Submission_test.xlsx b/tests/resources/EVA_Submission_test.xlsx index 807d64a595373b2dd1f222a9393574633e5d50b5..31deb13fabc85fc5d2e5bce4955512360554b0f1 100644 GIT binary patch literal 37761 zcmeFY19xU?)-IfiZQFKIvF(a&+ZEfkZ6_7mcEz@B^UL15`|N)EbpL_xJeR)DhaqDkf|AkvMIms?2a!CbJVOvpxak=0>5Qbw<9tZGl8Z?Tm1A3d=7}_Si zULudAjYntegj$`NRvcP^@U1~P(-&QR+F)((s@ZtPu0$kT{bi&+UK$ygM$+yy0{k-N%`Z!Z`Z8r5dm~E+I@&*e|DOr}FSgr%dGv}nX-Oak z_@GO_PlE9d&Q(gn8B03hBWc6;Zw#sLx~!=&1+DLoBK(fIjks*dGLJ3 z22$T%AnbtTy_PECaY*0J2v@9XO*fMF$WX&=FsbsJ6>)N-_T@jC4F9WTUY6R+8zxAP%|6}1#K6-v3(s*REF-wHyHcOIY#;Tqp-uxSCX5*Pp9Y0dsY;|=ubKI? zc}X6?)mCB%Nd!c_l2GXyQz^+n zL(j+OOAd&YF%3%5V*maLL`K%mMvZ_DUj|n^#G7(wfs5>Cs-;_CY9KhuwxE3%Kl1frl=Bne{T}^I`=Zi= zi<~uRmkg-1!V~thiGMMX#E^ur*p0$Sk{zK2*$-`S$tt<(*nO*8>KNd$FUrhFh6Igy z6+c=CDDf!W(}}=5uSU~9H8)V`!2zN*2airl%#-5ec8xo&yW$0wFvYIsN+@2waxJSdwE#Uv@Zq zbz+7EeRyAsZs*?tVQcmVF;Rq<7pIKJVbT`-5d(MJk@n($_Je5&hAJz|%)=o%S?dvP z!tA2KskzE3I^+CK4eNet#d}+r(s>K;L3C?A7b_YN{UU9dj_dm}uNsy=KbA$s8ZJvEU8%A2by=yoagQLkRate~WXXZMaxgZzaGkB>! zSb}n=_joVeCB1g+Pb{A~ghLX-rk##)2XW_b@8go?Z;;Baa`5_<1H`l=pRvBb?$hQp zPM$oxDtB;i%`aEtYE{YPxM;aDT&P8KSxo;X7(U1ldbEE&tI1}Kcnwca;3S)tB|MT> z`>A39q?_wVS>owH3jJ+h&?z3Qkri%5>N1BnNswUsqbv!kQ?A1E_&c2!@IZurtql-e zN+jU#2SToDhN$3&_inru@eE=juB-`@-8~dYJ%3EVn+lSmNWb5)D63U)fu+Bl+KZ)x zDv_$8DQ7~{9A2nXKcM~-4uWdy8ghQ&px~ELV*-GG`!edkpzvQ!`=7A*?Tgud$^P&D zv?orOe=)m&%fL?m>5imxVi|eDLwU%S#$zCG_jf_d5wVl#&CYO11+ZQgu>5d660TbY zgZ8#}l|@iIUCaDLT|4v|0L7|s5hcG4oNPQ6>S~!Xfkt&-T_DxQ-xrrobW;++bjz*B zRz8%Ykjk8ky!O_&m>gz;>;Apz^64@h*wO>;so91gT%mah>7}4!w9Nj31S#yuN8Z?O zjvqQ2$wu*g@spdJvKL_>pK}L>768F{Gm2ZloOo(H8aQtV_rUkghf1Ql(BXNJ-*DJw*kL z>u#j#2pa|Sp!~Xjf_m#eD)dIz;hr?_ou9}Sip}tqK zRx5GuwW)X{LTK`~ac8t%HV%l*zUk>nuan8?91{SKAonMUS^FiVM5Za916n$)x@KwQ z{Mv50mfWJ+mJ(h8igY}2aoSiCbU?3mAN@}n5H8G`>8Y1*`uuj$A6i75&Ut2bFftBp z8;(eNj=>>?iZgg_Jj>!m*HJ-0?L zO?OH53~{u#U66f6bG^zzKwSAVk81j?L{!{;wa&da2&j!?s90)=dq3>kNtf!Thz}3y zACjpL68n*0)r3(`;@0YR*eAfX#$N$n2=op&B8Yw`|H|QW;X@F~+Z;Sn>FHZ$2vXwi z^oB(#jjGEHOCGEMx&Q$}LU!UN1$WrqN5$paK735^fBmjH68575i9=m&{P%8rWpU?S z*OKW74j1~pf^sLn7PA8X1nX!vnaMS^WPC&+>+X(9ojYiYIaknLvv)2)_{kNxjP8E^ zJR3|KL4*LmB@s;@UPR#7qh}Y^ojvN|GxG?Lx@89Ii{TzR5Acrbqwf+PkcrycC;VD0 zKNZB80kY&qfqki{d)MdJJMsC~Pet;&^(sAdpbp6u5OM77Dj~$wO42-vGm%XbbNrufLT?ANBC5ALetPnL9( z{62RF_Kua==bzqYf?ny*A6HN3KU^(ghgkJz?Xu2Uz_hnRlb4Lg)L4#(9RwhM2#AH| z2dhXlH2;i*#ZihL`I&zg=e%(7ft&wR1fedgg5fHEtWQu1oParH^d4 zenYfhkL!&OJd^uB`qQA}ZZbW|B%Sq>!I<3^c9vRvV|0~ra%B%moRswU~H2&HqliU=&v9< zAtfq-R|WnKSj=abbTc)3=H_;Zf2+PKm7eLZhKF#YickK3ZgC?q`a7>59}r^L0|(R{Gn*mS;2g* z?x=Arir5?gED^G%{3AgF7zHpqM`Q~*WDT>`-#-{a8>lE0809>@F*S?KLl$2N(Ev%F ztltbV-Cumnc(9=y8xdA;M>bK%HrQg`gISd)`T zFIQ=hGKaq|Ok;w=aF~@3Nm^|w>&YySaPCSK#BuVWUgpv|=u%oFnin)2npfH|0110+ zN;=Xh+KBqH?1&@LdY+WMT1z$|PJ>K2d0Qq>Em|cz>&;dDU`J?Q8`d-{Lm#4dEdBI_ zO-Qs2{-nE<3z&q%kpinA|8*+-0f_DgEq^Gi);Q?#)jZWCR8(!tAE$+H<+4A(C)-v~ zii!`xpDh?5@V30aVD%sGx@DZ)AMP&jGi-m+3`o!v5Hi-s`lNuwBECM)-2o8@7F1&} zm!!)JZLZRl{zvEL_5JmL$+A*JswfQ%Cnl|ikTAt}R;9XJnDFZhf@e&4xco4uc_m<^x%pd&yBUfJH` z40c0sFM|X*{bIP2^kS@)ZA2EO2lizd^R;@dh8ReBfc$>NfY6!di4*7Eq*H(SJ zfj$BiVPIh<3aE0e)z|bAf>>l*G8GrVYoYU*-Fp3AnBWVqy+5tiqUARSP2@Q0uJI-O zV>z=wof;JD4K2zfH=M+(0dWW4S>Whr+ABWLM9Pk1VQ0{nrN+Xhk!E))GUtBPtmDLBa7Df;(T>Tz<0E-(O(UG z+=^g$H)8CHSW8bS)XKa5bV~o8O(6X?IyLtd8u>%~S14or3(6#;SHAwYkBKjM)R&>R zegZ=1N=(9;(n|L&EK!2gXKW1<<@0Zk+UdYCF(RgfSKq}aovY6K-nMgySL_S|ttB&r z7)08QS`p7%`+2>oMHM0{@~wmmtzAQ-*LH#jUY&0{Sg=-YFW}+THFgGDs_^@3gQ(1j z)~`{s=2pm0wu;q|RxxDC@#W(R?6?TR!ceop16zV~Pu1x^3YL|x7c%jKBu{d@S3@RY znFlUAWzLCg?by4t>brjK9BuAukLB0ctgiyie6yrMwYaF?a9zjmCbSEYKqJ6TLqp{yQ9srghrc^w7IuOa zk)Zd6BwT&|2qEDPXytvLsG730$W#_2>Ubj#n1vQ7>7WnIH;fxX+MJ~lU~9n--~hih zwGXDh43q^UsJKNTJ0fD^KL=6s+T8KMN|1HmM`t-%2n$$$`--0bVeAQUTCjd!Wb&7Q z8-V0kcFc^>#|1wn#1B(){*I1t#1re69i)KgrSoycWjpkwA|1ENgH@swNm5na%Xh== zN-?!7WILO%({hXojG{urZE?oR@gQv$)aDEjeATCRa}26Z^MQ#;MIO?gFP_ zv4tob;ep)`A@;faN7ThOnMq2550YwtFTi&*Bh1utp zyP_hvGcGAktKl~2oN&(H(KiYffOzX+$2o1HNM7oB)sNb!2Wcy)jEm?>ynxa%WVb(o zC|i!8D-KQ%rgjascp~F5s*&Ix%sXZfN~4qc$la&*v&90mC$0OZ2$L@o9atxqTU)9u z+BE%-L-sD?v=t7{<)W7NaJwFP%g_(F+SLd;a;1|LzH(SQzc#uwE+W@kF}sn7nX7Ud9<3%*kiMH<5Y7tt zQzh1bmA2>Im*m}rN4b~1OEa139bsYqx7zkj`N0*svd z9$FtbZ3dbV1*b1Iy~Iq$dSrcIU!1n7FkxI&*)2$V6MRfWm5nytxt989^XWcKH#>kd ztN$p_i@D-Gzubu88Y;LfB(N+8FaC`nRiRP+0rZ7J?~-48{K0+Io zRtu{RW>rU)TcjEYgzzcQ_RQ%D9I}a*ShePL-6D_yvPSOMo~wlCaq>fdB#qOB`6QXz z6UUH(B6lbA=5R!~KBefIS^V%19{UMwuiy?na^>RJb#wCsER$2iFkAAQA3e}-36Z7` zF06AexO21XWP)}n&tc<;AYQf)J#_v)b_p&PuaeixK=z+$G9Y@!@<{|w=Qz6=VIHG@c-u-ts_uP6@KJcq&hNH=*=$@w8la@U$ z``dcH^(h}J5mCAv=`dwz7+jADMhawVecq4wHqJgfhlvIkjn~Q(P}StN{eu zuwsU;>W&u?3N|7g$)q&h62{zwCTz{@9H}}$_Q7y%w)}mjPp)WZBIZ7Ejq~M^4t$&XXC`HIQ8P|z`TuiA#%(Ye%yKHJ` zl6r$#bmJ=4aO~%KvuQ&~{#Az6G*v3LgVVJW$LyZjLj~?yE9>MT;Yvl({X3(u#hTPB zrt}U)_`$J@PFFECIDUzknOD?YwA&umL{z$4&5!W$v1w)MR)T>6v8(_He3A3I)`fsT z_~ElY%+l7@(Ng@hF{3b z-XU)?h-3sHz!hb}OxHX z)N?jY?TnRa1&_nxd5^*7LWvc8`V$~cXmnwK;wHaW<;`kQryem(0zge*vVl9zEOviw zvWd$yFq#_(%0``}*{o)Z%!W+K95;Tp8QP+nIqg~dsFdzmk!;%)Cu$DNu!iktrmWI( zb6)BDe)LZ;0QO%XNAJvKx((^nXP{w|p0z?UuToEma=DAk)@QuFy=|Qtx}9z{$=^_s z_;oaQLxk8v%Q+EfQ8hS6^ZL6&w+2CoXlVih+8Rbnb?;I|5FB;2Cu;c1&9UDvR-VSg zJ(%EBgz800yzK?9vuhwDTMEMVYSYQ|il_Bc$PBJe(4E|cUY}0_k_4~YU8kWWqc9=c z!z2cEs+9qw_p-;Vz4H zurB(36v2E+8edas(~8^|XoaPl?nfD(4Rk~!mgslS6t*1nUF#uqvIu{kX|uhe|cUH8MCe!yO!V54KaA_?4Z_NGasiJ)+DAZ*jQAq^dM&F?(B~Yy1$)TLENUz zEIs_tXJY(j8!3hXJxMI+onB%Qf%5sfbX7wtQu?hCf#BO^#;TlpKaijMRrF=%Qr`GV z2TUwgFKz;D6-rM9dQ@65Ej3DQmL|NbBOodHWO#|8)hfHuy5^^)KJ z;&(cKMDYWgWapf!UOytl(+bH8)YX;BnWbk}tbRwe08_CTH{ROJcfMAM6U5#iqWHpy zJUUN)4_;p1Fs%hSOssSm4Td0*mDDJ4OPtN7i}t4=;R$JlUs;Hm1#)p?{e04Etg}9+ z^5Kh-ea%oNV8$@eR@M!`TLCrqP*67!>K1L%@3g}YYaBLBA{`09$TfE(HoU+LqLC!o z?ir2r<-jI@tp`8aR4Kd0nHaXP6=}XN!Vt5-6rxU4-kuVmU|@7tpI-?kY?WIun z@b`sy^@Iv}AGc}dEJ*R*uZ9CPNSIB1V7pi{^b7RW!iH1T&j2Sx#hV=dK>!5bSyT>C zYv0e=Fgh2^L^V23ugzr_%lwb^*upDYn|m9j0LoE$c|Hmjjttb|zGHG}5w4D7osa4^ zx*TPt?l_1G6=+RmY}{^1DGm;tM%;pV@(>~h%8wd!#TuK#bvZi1{XsAb4xni_9Utii z5VkIqtC6Si2_p&%lCO?}e}*^-sa9XvNp$~Th))3F_s7j*fE7o=e$;&4KLr))SI^0; z{e{i+G9PsiY6=RjVl|z;Jv%iwvSe(EcR%i5hYs%PoAn&t?c7?DvT@(4pO1Hr->%LV zXZPJY+uL!1uEX)7UYQDXa=D>-VAC0GY4E!6cAGal@g7%ic_(&hA~l#-<64E1o7?hp zX{JN-ZmYs+(~PuTJ2Nq$Q>UC#6}r~))ELQXCTn$^e<7{VG7Va1wtvQVbxhXEIhzQq z{$g@WZNFB?l)d#d79_3rG(KSrFS@Ym?3gT_@SyG58a2sYXpT_XEQJc()&nmbR8k0E zsBkt>wV77#TAAS0ghtU&m3ph8Y_ze2)pT})op8+YXx%;xyT^1E~z&1?|rSGdpDCih=WM|_MDX*_T1~_n9*eZuQV+N){4<&nzi$4_9JWLY}X!I zmFhR#`y#%6hZ?5yaW8sW79u$qW8~ z|MT=L^}Hkw6n9H58Ms^R*G0^d{IV?n(l-2a)j4Duf3BK)`D@klaoX#Rzpkn8_JXp= zk4C=MQ1rF(KlHv<9{;s+sW0`BzaB63&$V!KufBZx{6#tc1Ut(g)7HK8&~J&uc=T}s zi_(N#_%1>MJ5VzVRuif??4ZP*S@6=cxDQT;oU6{K%mgQLsx=Bb%l$DknT3zlzs^ym zrn%YZ*Rtx!P%=0&{Nd3WmnsaC=e-2{}dr#e~3txLHXWroYGfn&NF~343mT}_^NTrGe=%pU z;o6YuGN%SgrFrEJ9;~5nP@FPW4$GAAUOT9pG@G4j*bU3eG>5R?1dSZpe^zA;)fj11 zl|(vDP_a=o$j$YL)`ePGvC#mEjj&0_Q7bDdHtVIN6JWPegY3ekoumBH6x44nfW2F- zEU_9YT7u^gp0L)5PEr0YTM>wSK@p>0u;kHDTAynH@yHVkVRU4;mDuaPmI(1mM@i8W z(b(#UKtB|Dki6IxX=5P~AE zr2?F9QaR5mLh`vs2G1f6Sa)9RRCzzStCBk%mufY0q~t* zQsbb~t4i)rS!tgjPA&0@;_qMuX7p`741kZvZ^gqg4uFp8` z^&~$3t{5aFtXuo>AqVILo&h2I3iktuf2*AT-~!4mc*t7;FFap$ZerPzl3~{7cjB4E zH9oYQu}&|dDz6%i>-!jEFBnyjd6hd?zh!w8*!OU6Ejy&+HJV+RsFIxD8&pw~*LYay z1&v5F2w0$gTy{)q_DpKN=Z%MwV&*S`N3V>fDCGFY2o(wutA>lQ$rY5951z^y8XBtx zF+MJMpsinW*w8Qg8!I$73y(O+%?mjt#mx&bCC1Gw=_KNCKaCv5_2$<|yl=4JHS@b( z6y<(JHCEwhbPh0vtUzdteluTUgj(K-f+631NlODxDi0QwpYS)e`tP_))8)LY)}Ni` z8`_`BwBvcDjBZ0@N%<0WNeIRc4nS{ymXEV8=+3wj;LWyvzzR92h(l<=1dQ z{6cT2|M?VZf7j(wpuDb{QrjsQXI5&&(2$9Y%_wx6vES^dQ7J+EPqP>8BN(?!t?q!B z@L1jb%%A>QV*_St^9R@s#!PGIWD?>HRuu`&iTcio?b#w_kqu@Ad~%3^LI`l?az~D2mj` zRYrbh#{I$3=hU_u(w1+R|I;0rHR!lxR&3X94I3^v-`MR<>Ip4xZiLbDzN3XfY3G$A z-Js`AuZM}GVSGZ56iVlS{rA*jVqW+udmcpq9ti*0kXMh3IGvz)9Gw`J6)fSM6FXQk zM(bPVuR4DBG@qAK+@(k#A!SbLZ|C1PLz<}LJm@ zdE<{`hJ1msk7Gzq=ccD!s^qKoR#kH2md4wlK7L=CFtZ+$(?GExFC_RWD2?Jt6s*9h zf@3Qv0SYbAN~AUismfkxKbA3Tq+=VPUs=}{hVgR(ui25FI#tz7V1H=u>_*qdyBRMK zVq*P>m+_Q1Al}Ko7OC#5hR4hzP9Z+&=G41OSJ3LvO8@i~!~EY}u{^r@8H-;?7Kis= zk&N}P=w>x)75^)HO?8h0{|M3OAiEG&XYSl^BB7*o?;?H0Ch{#BYOlKTVV!e{UA!f9 zq4t~q;j78k&Hk9j%F1l|X7v{0kw};zhj@>sMJZZ5rsR zO6omCWs!lTcko~$prf0Mt@om7N=;i8j;GR`vZfjW)D6?yh5q)&N+0d!QzM1Bt&hj5 zl#R}gCU+50jO%ZSar2|OLzK{=)Gryo#=4N410PF#FU6dxKBW=292 zGxhRWdyB|a*JzV%9M!J8N47C#vj<5rh-a5HHGg?9(0$Letq5Z;f&3tt;FT%Tq&~>> z^)g#}4rhQ`@(QBl@?p4RfcOxu-%Mn_B2kYaoedbrv1$|29C|X5AR{1w165>(kDs&J z?hcv!oVEC!SH%XQ6BRAa^;6{YWJ%u5h3{4)IX5aVBT;rF65?=V*_LHAPA*MaCVbQO z5#p{47MZbdJr<)Ie>7eQdy`y&QKQn3$ixDxP6xk>#DJXQF2G7JSb6it zI#I_mbKX{pS-a94zsSlzEFO;SKRC8#M!hyIZk9I*BBjmWA0F?geY*J=-;?#vK5w6H z7LVO~xVGS=Js>d;y<-$+%ekB4vy{ILeD{9yia7Ur_gee)JO99L%CSXpIzYT`vMT=P z0(GN^Rilj3a%DX(vzCgPz{;e%iQM^n1|Ex5`uy|a{lm-d*#0Z)8*%i0-*Y!%a8dao zQGwS6eK;x{YD0@P_fm|Lex4`-)_IW>MEbF&Sq-~+;d4<1{#QZ|+0G#a?|D!!O5JE9 zG&Y*h8uxJGHjNgS-Mr3~mRFe7a>iqQLk_Khy{-L11lk<_`pP=u>H_6KB6(zx*!nv;!I)B1umiZP*Oa5m-`Ogc~pJ?EKGQb;} zXS>s|0Q&FvmPQq&j#=k#)=JUF`zw8=^zDxL+-k_uO6MP{sSNGDOC%n%Ti%Nl_4v~us|+%ZD@t|_bWA_>^wA(5 zj(WHmopzPCipbD4KPW~haW-V8t^PQ#=*S3G>b7r*KOXp1gW!-DtGyOUyD3~-xgs-| zWKLmV0OoV~VQ{zS+0f zNt1&kM*gu1(|)44FKJnLV$9Mc#zvWYT!9)=DE>eTV>pl=$mC#UOJ2yF-tVGR)xG<< zN<*d~l$uPh6aYk;(}GmUXzISuX!CIv&?3!wIVf7|Zs49cs>mX^a7~d zz(h6uB*PW!N|?#hf?u1PugEIG^h$XYL6v{hTCG2KV)$98ZtuyN|0x33Agd{|Hu53) z$8LG&2dk4;MHqdZ9bG!=`crqX_FA6C$Z}oWtpsIxY`WBTLaw|O$5?doC>J$sEF>Rt z5xXG|p=$5zh{^ziwv42h19Mv_&{VEBN?GE;E}|~<0V86;q}+`AD(2>U zH^nuaF4Z3i7Pn~GocPkWii8DzH7H`rOVp=u(NY;a3+S!8v+Vhu(R9jtm}E*hd`gH* z>P0dYM#r#Qb9d2xl6Ho+urYL0b)msv4Wc$OLSIQGcK$}h%50utQhSi8y$+?WACqCJ z9X^({_W(s#V~gXrM~MnQq|20s3PpldLVz-oxm?=2cn%w^Gppm{B|cjdmT52L6+FJ= zFU{a#koZ8)&jwMsLRN;SQ}Y|cS#Z)D=h(uVmhqE-MGmRv3ouv`7`vvj{J0dsQkaYU z(VOgQqQ61?f+mT&*3%)!YqYJxpAZKq(JA+F!-$z#)s?nR7BiMOgcn`&LvNaNVEbD} zH;ibo9Ohi09C;wwG~=6s9shG@Xqz&Hbl$Z~N`yiID%N4-1vU0I4gBE>00XY?St}a6 z$r1pAQy6vY}cMZq0_g?-$qAIs~x?r z^%K1XyCahuuQQrInNzUM7#$y2xU5M({w{SysE&Oh>sJkv4^LLIJ}c15$BVQE>2ROz zdcqdwE&=lJmYiDBLQOw|8T$D4K|SPoGu!|QTW z=A!G;3{~q*dggumHQIZ2_t@6s6# zksb36HjCLxED)hUD$dx8RD6`g>_Yrqxx1IhEL@XvPl8|(QjOBEFa|4d&5hVXMTcrn zhTsv>RdzUEAPc!xZn#dM5z4dOWMpn3Cx@5Bdt%F*; z7VTJLzd>|$fm?w&`z)wkO~K$e*UrmI5&H;1$!(HQHVv|UX$)1MCY9lFERRkn`5r>G zxp@6sq=2;`Qlc$o<-CbAWD6WhK}A6xSVOF6AQy#Ue#~LFK55jxzQ+A>xPZ1l5}gbHM>;Gy)cac#+FE`rG8if<5h*MGxQ~(E>x@S zMo8MBR)ZJ78m&9dcY~}?p%T9D5h^apBBVJKxKA*XdqtjCD51JIs#l<^qHfxHR!Nc# zRvA}~IN0h5#SWyTvB2mfztnD81!d5o)6HG7`tTUYlb5JLpCEukVu!@hSYRyJ0fiuU zBKvp_8@P|*uNw52+l!e9#U9|SNg_aD72~T3KYtDr9&}Ko7VRl#VuvhV)r=DOK-EXi zmKobQEe@v~aH%-y@J#gW;JzlQO>*#OVzEcgsIfpLZ{Dt}W%4jM(0=Tj_!j`1Q?asH zWr6>oVkJOl$yq4hT}rc(s@0m)$aIoSu6mcJM>Imp6-q2XY!m)`jjE;L3=MDPV=)xq z6L&7=ylp|_IX+aJJPxt1!becb1yf$ce88d*OM|J9112(ti;EL z*2F+IaNm7HEemDGNi!<(yF}hl25VbLg5WW*5ZSeKlYU~FoDy7zqG$?-XwEN^<2W)>ZSDgDs!7NOzL32E8A@g0We;@%+hY#1uP+piFsDhamY zH+os8dh?61oyJ9~+Cvo`xFM;bw%rcQdgm;cP2oq@9Nt4_Tgj)ST8f;s6#kkuWODvt z8&|uUY#>|gT8>H#cFmY`=`@t@%Ih&7SPX-Vw>&Sas^0e>Tp^w*Pw-8BY*)H#utPX0 zj(y@=0@zP_XDt`YH7lL_O@%QefYDC7f+#7C|g(Wtc0j%=cZXq_HwK+_zr= zHX8eyG7Vy{vKbLKmDFMjWGT)>`oSRGpcs(QPG^Y3{Tx8PHDHyHiau&zB_OO=USYeB zjn@sG@nBVZs;ufI*HY&rlHnV&`JVQ)EH1XuF6_`gK<4yt@nGIQC=7b2s7yCjJ&5As ziiU0}X#?=ggM_A77GZCgNzSk8T+bCvUbP!~N^j zwF=MCW7BH)F%=$sngHd72#i-+|CFyJUeZ;VerWkf z_;{Ro^#eVYHOAj~GCN4T{YDeyFEW(_tLs0UY=%e8kqm9%q!&li@L}_<(J>?xRx5=q znjYEL`@)_tGB97>easXDJ6MI>)z{F~b(ppiK^n|;I}Q@iy+mQO_&?ejw+Tx*ZJlLf zuzJ~A1Yk`^$2aKr%s{E+#7)oaG*JQHEi1FX&4?i3GjxO_9Ko2;kkcuYRe2YxjFX0H zY2l4I#z@()Z~6vA(I$=<>DnJVcMM4t=)K5Y>FixMk6w6Tg$x5AWV(D1?OcsQ>3CuV zwmMwE@V$wGir%_ag4H`v?fvBD4gUO(9XD~3dK;w$Vh(}KYC1U*Cp@4AnPF0FEr&D&O-92*g}IM!Hq<(crlB@%F*lX} z>&l7%bJ&V|f3VhulVMjAGxfZ{kh+^z}N{mbD#WcahBS?*8*RlD` zT4$n_DL8%K3=p?B)+6cz$&x!>m6y1Xsknpw>KUezskYT@)EsNg^WG6m)lCne%<7+& z)k^4c?j78I*$tZF%F?f8)a?^mCa0X?H#rPDc)l#WMV`?U=X8Px zYyGOfHZF-UF4{Mmg-I+=sXcfe&>byU-z8k2crMBhyb;j-e?gywscpz!eE9Bbl~{M5 zjATjlV%am{{s5lJl-l`KXMv>{&k~zF@27R~V^jlN&xfdkS4v|jNFlc;ifc1I_#cIy z=vBWMir|Yab2;(ZAW68B7XZ!S-(sHJ>{^Lh*y6TlH6JjQutv-aQ(seQX=dMpSZF4s zGod0kM5DcP3aw+ z#U%no1VN0?Nz~co%ap-OD_-qbZ998FArbPHs1mQhpaYncr%f$#^>NtgoxtTOY8fmnfl zT{}f9bpC>&W!1|E{`6rQQBtJLKv8Yj&R@x|vz0(yEv1&rCxS?1%KH-soLKUhZc3AR zhkG&YP+A;<2VU(5CwK?`T;rL^n7MN+Jn9L{c~i}y zbAg`1q!hFG>TN1(%w<)2w3UV$sMxdtZ}hsxpZhm+Y`7l(v4HLv1Zn1BQ0R5)XUoE$LQ zJG<-aJ`a<#!Fhlz{9HSb$_^Wc!Hg1q2eedF%#6~AuerBkEv7~FEu*iwH_2U>Ugl&N zZbW-`xIV>1a)!15df$mqg$CIkaw)?QSen_#cT4cz>~7K{BT!_>!7}>KU#!;h<|Vu zSu$L{-zxM@YTb|E8Qih+H5Xo5isRYPqrS#EvN{*~AD)JIh-SJq-TsKf0L-*HxKpRR=9PXb zLR1}!K*qAN_im+tHLacn^*tN1-|C{-KcB@elDgT0lAim(gtO)Aa90K-`3FejfD@PJ z$rmR5b0A4x+Gg&n7)F%@mvK}TFE2q5S`QAJs7f0i!=^Mlab~PIu>g&xG5Rz({@%zEp{o*^~w|1`>UU2uF-5sa4bE_9c<#8Cvo9 z!092T#QA-eU2%iOYV?~|PGe&i^Y8k}xukqMlM8d^x_gb{=I}K*+^|8VvDs$~8WYoH z#j#|fPq1O>M8`RcE$&ifTxZHe4NYy;zWPfUv{19SU6!zZFAgVgnwuj}IpoW*-o!(j zv6+sRdSkTww`_IXTPxWhLqy^|81B*#l?5Rji3NZs*A~ zFvHw)=;`V)!M!%|nuD)A!G9>vP`8rPguUGqN@Qvc>RJQOg>TZS~+jH?>D$6){V8w`67-?59z z3Vg_j8o!1M2y1ehML)lW3pne{t}!_#&W%^20;Xx?D+=O1mSVps!$-Sy#6DG^Cte%_ z+Me#U)b;2jd00r5SaJc+>fAbQj-05VZ%E$%5 za4g=|9n?ZSm`EzG_2hr0p^i`SCBz|6HYvSb*&>V7FiphWSli$9AMp6AETUr|s$@b` zwEw^MzJjZcWeFE|cXxMphv4qP-GaNjySux4f;$9tBN467kYyIF?x36r*{Dtz`NirqG2bj_SB2N7)=}SMVwYWXq?y=Q4gc6tX2+%LX&Ay+HZLT_6*nPR`>Gpnjy+3#= zi#zM_c{$6nBP2N9oV@B0e0li(dTndt_j+D$jc6zEw)gO~An5z{coL_u-m&YaF5u&P zH{COK)iSYXLA1%MieFQvtv(>Sr7brX%^7FrXhcux4eTE`{^aaXJY+~-ZmyWKY}WC#J_urPp0^9L(uais8YvP8>&-9|3@dhI@@)DfKpRI>c8oPCgSh{5vl?!i5$ z|0|qFV7=~VpW(pLcgHtFG>j@TncOXbOneHw4}x16x- z608v$_O)s0VWuWGVqSw8cEqDk1)FZ+Y_Uo0BET4SL{rBsP&GeQ{iy9MPHy=ySSt4o z6Se)8eeeLsd{1~WnhupCv##d@dpF0|I${FSQUFabhE?&(%6@@cbh`FxqVk$}uzWg) z#yxkey8Cc=n=$>B@5yL>0ro+c0M7D5II+CjP1&kGLRJFCVUh7FGf8uC^5w8@j1D7s zMgqY>5jmjfIy?E2!w5lpd1xEK=Q^8LJUI92Yf!*|_&3Sviy5a=EM!l4X^)Q2cpRks zl)2QlSp`2yl72RwYkb^h{uj%y^OxMD+->P;=nH!ZX%Adv&)C0C9dI1hgoPHft6WbSIvX4y(!&7$Z%TG~1yF_Gr@t6K#pj}~3$Lzfi1LZcQro$qdrpaXP8D8f zBb6cV<$@Y&OHRK}&PCl~+xqTAWDR@3{kH`Cko^EwmA|SK*6(`-%!&ESe#?q6>l8Wb zB$6$j?S&9*^WUn6C76Hk{a=vklGD^bRfEM`@;n1*FXTG=wrgINclOG^fZGA&3OD+Z; z{Lt6Y;&_hWP%*f9Qj#2x@~j>aqA{dMERQJ<_mL(P#z9&Ni_pQ0X3>juujxgF6j3pcVgL! zpAdM1{4wLwacJf%F}3n(^3PwPXsD^V_VdqUj0(iX`@#l+GNX(NKQjp{f6mrH!)0HF zN@S_tDa5J(=7~>EAjKS#hHnfghC^thGPA;ylh(qbSlqz0lr|MahqzvP$E>Q+Bm3I_ zr6aVSDg|U;4U5b?K)=g7!`@28|0B%M5=a3`qL~DGY_U`*@1lQxOdK zN01N{20`9RMGV>kr90J3d^Ls%B_Y8aeF3gW6g42O97=ErB@3EX(#_mm_DV$t7^af1 z(g7+oa6T+V2~$acGN$$lLyWN>VV-Pg5KQceBGQ=)<^5PC5HgZdeM)emR(!$9Xm~@C zMWKAZ3Mi~pgMJpc7eFxlDuA}K4*XeAo)=0;B?a6>4R_4EVJ(jjP9|q~EFT0_EDeB} zw#@ebNd%Q03i6Aqk=a0R>WrEz(t+(Hq+1nmP{4AM)Af_aBK=lNPZ}oHs8`18ih&$l zg1NM$OGhISL`)g$)9hNFjFe%Fk%_d|yI*zp#a-ZOiGf8}`m=h@GCxHowmfSrDc+zG zk7!<)S5~%10~LmAjaE4W^-#h(GW6HW2B?HNd%(YzO99Zxp!m~#uA>5Q0u|gClL47L zEjUae(`i3Y(63sH5a0v*T!2vf(6HW{uP5BS2;_YTU#AtwB!E{GVP52-cBt}kr46T* zgz2Et5I>-85$qb zy87iR%C}Ao&|dY5WyKRpDE9_J0%+m_>A?cdE|tkXUJQMR7>CI}4>o@ta7%*_(alj) zJ0%ATVKE_@n#Lv)L4m>)R$Ip;GC_eN6fz<7lOYvW4fC(27X{k3`muv!6f$A-2imm? zQhz}TnL)w`4vI(nM)g@V9ZbyGrM(Q$D2idPSaJ-vbRY>_d3YnUgp_75Fs2d*K;&p9 zB2pM$rji_Y5}(KVBV+4e@G~M=YRw`nd_!SAsGpb5J6OtJOe4;ty-8PJ5%Ep~CR)re zI#?=ROruOXqliql-#>|p*C`oH8Y>=!9KV z+GiO}CZzsk5D8|Z{=h(_pO(P7iNZQFZ=6eTU3MQ?#0M3XocyvZKo#D>xE_!}1^Fc0 zH7Lu)g!+Rh)-fVu|Iqp2*!%*8b+cDC*_i?DwO!wc0xvzHAHn)pZQ6KUbcX#;Isl58 zt`P+vK#@=A?Y|&Wm{A#+QFU`@O7=7)V*^F4XpAZNsKTFYU?#*&CxT@r0R0&^k4;R6 z4jV87)ae*ewDYKq#YV*gN=S|WF7Z?yONUNNkEoTG0`%RiKOm$0x)m!T!=5XzWER!% zuaf64n4?PeW6~vi?UED0VLU#H09CMV+NTrtyBqR34jKaRSEkq`w#YmIi1*9;D*$eyalP z<|o|Uf0&Du|0b0l`$h#2(}3c4*Ia#mHs~$>pWaI^{ly&kALa^W*TD3jaHjt$`3GF? z&+czdMEpk|DUEg%e|7)AvS|MzaS#7Z!VVJ~#N}mk+$#&{0v8^XLoS-D&)@V85C6S* zzj`$lQvP40UxH=B|3{1p<=vm1;UX+#G3zHcE38r}`K94suzzdjS*A4t(Lj?%5*DL%Ko2eHK* z>Omt;OBk=?HA}uRnbpk8aLL7T3jXWNKfdi#r3hd#(FG7z0QIjWLuU(98&k$#|9{Q- zJJnYl0TBg!&Sc+&i|#)A+rZ^6W)y!aL+qMhJAkAjVv2~zDki&Gcl&6-@YymmLd9Kp z%fjtr$DZUKW{;CFfky=^Ip!R{6V)b*vIE6e@E4b+2Qg=?$o2KA|R1)zw(8X$LIcuYH8lEp5qrCq)C*a-o} zI%soV;lNJReHVKBO^?X|*9!{CEL#$s_o}8CEnA-gTkl%s3#%61ngks1Yt zS(t?%2AFS*El~uDer&(!x|>-Q&RSvqquib*W<=s{o50vo4h<(zy-=SlMZ^+1pCPjI zzNuj{MU^aO;0YCVx++d7{ys_BwHM>RJhHhrUElJQf)DA?O5sY--#9Z6XwLcC#m z{g=;I1oM5*Ti>ozhdNK=PockD&n1|-+xYa?FKG|2(z)L~YI+jbD~>RbhL9=PhkNyc zNRz13S%9!WT<8x!` zN=>r}?kPBO;GxrziPgHpCrqvL`AgpKs0d>V{8%^#*ul4ltof)SN7c9@w0ti}^6o6o z-yi(gy%I@*qVZgl)pBlefJi&<-0F4@ZxQYr1EXexm~dRu-#EyFNIToD*k$`l#{d16 z+Xy~bFbAyA6Nmu;0bJsLuF^X>dsv$~{al%!!vn;mlRSSZenJc{>wru{#5HpKVc6Kl-6ht<<1zq@mPoWGpS0tqeQ#507+t<$0`aTZ`#N1 zm00zHo{uPZQ#aptgbX4Ad)mEwp!-MKul(n_SQ^y(^=3%b7A3GzX0`gZJF2Ln2V5>8 zHl#N_PinJi+CohvztMz&#dioRvq`DTbeG#7?QE!GNe;R_@I(25QQRt# zxvv;uyrB`$A!@0DHNtc;p%hN8>afXWc-M2+dxx!kYUaCRaBOg}d8l>EpL9O&LLV~F zLL(@M*vj`iGms6HOQBt)>eg#$1CJgvv3QM5#KTijN}QfbvqUf=mhCPzNa!-GnqMGF zFIC_k%5@b{vF^H$&~^C6(wSHqmnQwDu6QH)IDaj|I+k8bvTzw(7XZ8Y4Ow7K;2Sba z^IQ`t9q;`bzXvZw@OrK2(>ZSjwvH77p|R-bY_6ZtV-ZtQr*h~l95+O}LbSr&FlmIg!SAa6d0!row5;+K~n^&xPq{w1K3n2J!X^qL@!OAMj&EP>KF4f zavccVYI)A^H{^ zH!aKVeX~7z@BQwxK5X8%AqT`AmM|CQE^ZU~jU#+tOmcz9a5hcRV}0&ix2T!>vm0h$ zMdJ9=g%BFzxd7&+fk5Kd;7bw$?oa950KFsun<}%I2y6HrLU6tIJQaS@*v?NSVmmh6ey>5-|v}l|MCH92krwXm; zGDTPfV%05_r!aNI5K;YcBg?)Hw_q3)B2VmjANwMBC4km(VjFFU0K;KM`nF5BO-o$z%ahdelJIU7`O65V(cqRfiyxD#u5bHVGroF7g1|6}?x#0% zMu|^1B@1XsTJk3?AC=KUZ!jNTe&lmIh=&JSSv5#2Bv)`p-_N#qUs=Gh6}DHEEPd^r z>`wDx)3L2(eOVs%iE6SSR%R}ZPkUt{Fv{U08UDnVyeh2)wIW^1(|qL;W9E7YbUWx_ zp`nUoS75!IN`8C|FBLRZz9nA^RW)VVAYDzY@@Nl9Rt;=w zXlEy@+qWZYF8v!qbZ`6{uUI>YRc>gMY6w4mVmQ0b!}!FIcCFB_A^`8ltbnh71?rjG zZ}5p-=8mu-r(nFPyIWM`O+|>_JuvN(={`GZPa2(bmrqW9f(&`eh<#BrS>=8j;S;z| zZ1%^F>AWh|u{M(yq+>)HYdabnTOL~ql=I_$oo85%Qi)t#@9AP-qqdbcy)B4V;qcsz z5f14RV*$gLMcVK>rVW#ElrM&7S0`%4oPEX>CfoA~EaBasnm)PeUH(|)#=Kf59JRHq zZ@aFYJ{3(zLULk$djWQ{qJ6v&!y%0fEDLbXq75kye0t`VkoG8L&(T4>2tpqXoHz9*S-8w=eu4>S? z5Z#@rA-{E9eJsv1Sr@jHy0W6t#ToHXS0C0{it(c?+^_L!9uNAjFrlNQdOw8L_<^-; z02_gh`(OzR*|^I3ZaM6-qC#MCY)2Ewi8>@Z3Jxz*N=HbY=xB=~Y~>_We5zw)<&^BM zM{js1=U|#Y;OjpS$wZ3i69f!?NQ*e)jUO{%}R**5o+NU|1rgCGsf-LLFIhDgU6!WH+@TJ? zwMkMJ<5@b{tvlR~nl#+8L17kz?SrS7x`FKzPF$LC7rt*wC|P&7GD$YiR|D&Bw+!Qs zA$HrxFQ4hAG40%38x72Mc|MTCq86Da7CYr^4?DLf(JL1XFHNL-6Pz4(c|UlX*ABRg zf=eOqopJhlf9xoT?s!v!@+=(L);gAf=M2or+qRO?bom)oqvqM^~&1Kzm_m%_zEHU=Eg83SUpQf{*d(hcizdd(Rh~EC9O-l@U?F(emJ#&^FKM$AZR8`9%GC}~ zttdyaJ;dhJ)peIR*OC+oQ}7YrHdV364U1@07nz1$X|N&%QyPL{4SL{YRwFDR5+-Sb z@~kSiut7K{9abpa6BaO7Nr>yC%Q;DScqBBb-Y z38P>kZ_66`5(#2Y6Xj`~HYA-y!l;ZiYlIvUPzudT$EgmR1VT(SK1v2B0;D*z){pyr z(-8*52EX(m%*~R}&-Ct4T%z?E5|@{74O|KgN3yKw4tIE%@j=i^J`Qzae4B>{M#56E z1{E+pFR@wMt~2MEjK*!1q37*{xPtLud=w+cjQ z!I3#mnHI@Tx3I|Ytj^z?rG0iZHsUhs@fmmXhGWJ?mLSnPG;UXk`KZj!-XP_2jbu?& z>~GSm{{46#zA%t%%Zk!DDg##egAgCA4!lszHI#A2^R11KV^Trn=&vQ7nbWh)T59QkZ5G z(=JIW4#WpT$9+!ItQm*=hNLbF76#_jJe|nwexE$_ zEl8#1^|fWq8?d!^PxA)YaZ(Tqq2w6>2pHnEGyD>1KbUDUkto=ijyy|(jWEd`*M;s})Ex;dx;XM7k#J`OiNd7XWnyIQ2O1q(}*OpEM_ldz3P z*zhfRxoxnXdhMK$ukV8e#XvU5L=fVLcHZ<=!x6*u<>P#-aLzA(yye`ATs|m(4ZpkF ztLut7)rTP~acC?pnGI1|;p{YUY1OWKWX)sLeW-4^cU} zva+IXdUw)`_uWHD!$p2{)B!&XSY@lRlrel{W%cc7>FKyLvpc&{pRaH6vp<)vUdRYx!omCG{lrW$ zNq8U_ahGH_ba$ji^uX5GWSGoPHHK7e8@ z1+`$yS8HH188ViL4QDzHf~rGhx9Rb+ogsa?YgY()2DA69PLRp@4B-JotY-I;DDQ%2 z=Cmca@4ID&A1Dzaqc6u?xJGF%Sxc_MEnAVoK-ad@-$}Fty`v)8`_Q^LAmWaFu{e8R zt_$%&9~ov*k?!UEUfrg3CIuyZo&1KJJ6fQ*4G&~nFOBc)>d zCK(N(gDfS5rioc$(gio*AXhXiVkSsdF7}PFpn$P%(Q;^xWMLtzOvf1bw0mnD>B3%5 zy*c|fq?STf8GGws&TNejAj%51(1f__X3)+EUW~%4_IAU;@=j1e3bfRrBYqj#yod`cIj4AgRlq73j7ua>hQTT z2)gdFXjR!_sCW=^RFsWeLTyc%62G-YI*qtW=bSWyJG;O@+`hlsBgJzss7T(XekH%S zc%C7)z{zqx3|9k6Ad$j?kr7%a`Bri;pW-e<5Z!C2$hl^APtSvDU0D1y>j@dcl!k2_~A>46)j&7g_IfKmhErPX$lfxnDr# zq8x0Q(UP9c`e%@O4J4#1x63)6FgmY7q+Bn$^oChvh*7eh5WkiOz6{)p;{hmLA|0&Q zGJ!%^_(@$opxtomLQFqRg2%ur}04&~w%d*hLfN~@OFA!CD+niuXyRDgtidf9kj^a9;D(9> znl)a3oO)ypkfOg8XhTvT^_QA}YSG)+J6s$NFVyJ^%h0~HEx5Ni03Q+YxVz-bL%gc* z5VJYs<-N{+7ezs-lqQa5>`3h&ew#nPp)6J)n`Prued>6sh9b!#QlyJK@T2Nr^jyxg5!pnVEZ_y9K=|*nXn9rDQ0h0FGeH@RO(ZHTpmOTIpOPL zCE0T~7f#7x*fFmsW6-l)hTC|CJFD_E9b~9*!{`~rx^atLo+FzY4pXwJi*FuA*(H3p zXG2Hr*>CbB5~sFzpO&Y$z?)+?qIm>D5b)@)7rfz!byVs)4;(YRTU0MUj+nDLD_JAA zty;IxTFM?$NzJUVW@5z83|1kpfN;_4=R>I(UcMC(f{?4X zkIBv^@>o*?RwMHQ!rtyc9x82ohTR$DKSufzcatkRh9pbKOWi-3`ML8p2R+n~kbz3N zk$Q9wj#yuMdHFamyUU(ad-XU1f9q>smA<^s$pBdh4;*LT=u*+DWunaF*2EekA$)e2 zVkrDEh|8B{UeYSqnMwJCA51rKM7>k}L~@!hb&O9x5SEXyPCs)AQ>7)LQSGigZIKYt z^4Es5y4QFh@)8;Y*YQVR=GfDU7I@ZAWi2!)jOvynJ1hdP(O{eJIyJcK=qx z2kg42gtx|+bVy^Grviyg7bd!ZO@#Y0XI=M0c~OCje0zL|)C1?HsG~DM8nx<917Gbh z_GZkkmWA^Z8ns1oio-0%a%z_TBYjmYB!vWa!<}8y)e_ANsZ@ z#14t94cAG!AQ*teAV%g&PeLUdhy;a!L!qkRKXG!{HGLc*w^9i~-%Eqq!OVV`7i#ZJ zQPaaVuhIItM6s)d^?Opt+{Sp~!i* zHiopwMx7{Uk;mnvf8KPbm?oIiLO0-+bfq?S6CR_mT$c9sl;B&&4N+?JRzMXH8en&V z2W+)U!ly&qRi25BWD1Xci^*A<(t6mAu9X4HMemUva5K=ys0km3^0AubWHL!%IN~lS zY`nGnU^Gkv^P{&;r$rS8z5swb={c+L>ypmHGh zUC>D+pq3)vwDt(N!|;K7SME{yG zS(C(Qzv)$9n$+lVQl#r4QX%aQzgyTTMqcKC7&&cKai4M7AVICWDWl+p{AMjj3T$gS z%)8x$sfkFl4PK1l7Rfv6lo^%=1e>1zJ_(r0b8Xp#S$VvoZr0M1#HDyZkQmru7Yrox z+WNk4NOZ{ZO;d_u>~cIM&eIbxs7G+F%t4DY6Fxo8EdG z+FU&t;Vwjmi6|{LwT{RdtofNhxv%;D7B%0;4B=j)oTRFda!vD?lrj<0i;jz#G)C$% zCH4r;XOzY&%F)nuFo}+*Kaf~()|~Caopkmjg+4+xH)Y`p_hC!(jL5`(h;;g}Ns1FP zs-~i^0Ab67XIYJC=KWbsJOE1VGP#2KsE@>fw8 z`e|IzLCI?n(kj;6WMq=WlHiB3ZqmlcE0eKxj_7^BxG>+7E5ZK{O zs_AggBQ6lQOV5?I&ov;6oKoKzsRSmuDb)%-UxFtt#KUij911L*+Fz$r)tp|b6zf=( zX(o(#+^iN|(hn$Az?%x>OYwfFSg&T* zbGtUn-BEpg46R?GC7W5uQmB*xiw1+ndvA}b@+0SKwZ#YTCOTN(*Apyc4Yoo*vx+PoOv2p7**9`Y=`CK+p{!AG}Dg_{4!J;f%|4 z_R%WCNJD1FaL{L5;AeJ(>FC)eX3liD3c@?Zp(HBp0%y$WQ}N7{`#o|HAUU$YY=erD zk{HrtHII!HRVKr`7l9`7M%})73NvK-!5y^C@j8zn}&@Q4X zK5HI!AnXJi4w#4uXXm@drX$)xlP48})o^@j?9_zJDk8wLo&RV8y2b>@S?)o+L*FYU zHn7Vtlw*I~`8_mZSn5;uHj9B;)tu544TbY?$#EGFy1Z((38!*idcOJmj$>7^V{C;< zV=!8fP4E?Zg9=bN0>=AVMA>8deN{<6_*5=h7?Ss0o_(!-y3?p8peE&=zTYT@iHp&g zg=tm?`Z%Pdx5taq9bZ^c-rG-LNr7=uOJmt_V=Js4eOjNqG?F+K~8MxLB92i$^gDe%p){;Oztas??Xe<8`)Q2C+^hl$cwmUpso)0h9vNZ7g$v!{eHX2#FrRY?&1YZVsiltVViC@ zlY$6j`&V+IV3QEdqI~_n^bRvm50Pk2NqT`2Obc~f@H^cMYE`Uzf1dmbX6^PNc+dd? zr=5}sZk;520++zfdRjNqw$#PR(4w~FAvyB{wG?~rcMqAZ$*`R99>ap+T?5T~*2BXZ z7@4fxINqt8yf|Fudo5AIX!~AuTRv<&Z@nzTCSu{cokc~BqIc_y# zcD9t>3mx%Aj+h3xljNW;_Hc~1P)$fM85Ss2?I*5qQ~{yf0b662ymlL0yq`C}*Lj#H zuoh=*vu$1WPGSi=IhG`IEqPM7=b%2L&_juPw@iz2LbSE%gba?SQ}Uq-V(pvK!;Ip^ z=E^E(T}$_pUpKO_FmI?und7HnnsmDYhD?E47oDi!n$mMkA4XI3X_^r&T8CP{`cq-Z zN~HSAI8A8MzN=W*7NmkfLS(yUIx#Q{$de|9A^CS<_>6%$Kip>whoel#FLLAefj>P+ ze;2u(i@4L2-_z(2)PrA}3nR@;C56HKI>2nYu5$;V4<1mjX9&_DyM9=Pfm|05>w=%Vv|7?&PE`?EHSsfsc>KLYKrU zyw6j&fQ)CiPTQ!n_`~@KTh+ANF0djmj$yNZDf}Mi58?&NR~-FeMRM}|O~@3d1(l+s zyd2zf<%}baVV&Z_?VX6lI?5(3M;xRzqfl#4E}J2BLxkS4$t3 zX)5QQJ1EDBnr5_*3!wMa@W0|2@^F8DL+-Cf`9$=F41?12DIxT#C6RzyR53s~mo=*^Yj!b2!hZ$2No;*@4(Awx=;I z1a{dHAj_>Si!huNic=;>mccir>(q!rkN)J)N!p$fmP-XIz8tpHVQw*E4Xu$nS+*Op zMk8l;Mur9AdWwPotoSfT1arxq)Sx6Nh@@b##LpDSl+rAU&`Em|No%;OA3eekm`0nl z$#_QVqHx2hWoQdo=kE%_z41uk(9Bp}uuFHIY>1jfI}eRSn2nL;sHvqsl_BYB6`+U^ z)c2|yGpk8VOBmQDM)aj+Qq1ax@yP}E9m2Y?8C9o2oP~_$lK*B3@iU9WP~! zrYA*hnrPmjQk~eV=(sSbVU;0X9>Lv`P^5$@;470{_<$1+CiT!DI}_Fgk_K4G+uEz> zCz>)Yno34Sh1n1fXlo2UgxO*87HBuvn*YVcnzzJol zgwPCWRXbB^Vu%DK%?RhJP}49^JH@D4V&XE{*7P}vkyy4|sWaXYn{fOH<7w=`83^#O zp)Bkiq61u96di_WsV1BjFc;tPSC`u)3+yaeg1H++Aqd3+>*@++QAO|5glS5u^t1*D zCSLBRi0%a#hI)G?K^P-cgDDU>%6Jhb!y$|EFOGCWyQCJfMr>onc_${59Wp6>jz*_Wtu@`!Fj zSFqRRmC<#6v#@PzlsP1RH36bNB2fB?XkFsM)`}mU25*ieUV{zN%`-qcMAE}6fpIXN zqGf#fudrM5s+9KcAVS;<<2iu&jiuCj$;a}Md^qtQX+*I`;!XdM&4 z3TI;LBd;-vRyo6*iE}nxzGBa3a!ATw573nip7PXBI|H-#LXxeZO2fi%GWJ!a8BvIy zLXT+|g@+A4^0K-a64g(llj|WkW5n7aQ`_*MtOfSUp>_b--O`Cv<_@C>Y;V*EbIq_S z#GV7ONh~E%1lUD*p&Sb!iGC9*tDX+}0>5^F4#@>665Po%%qtXc3~&7dPr(t2!X%#QsaWyJ1j_?s-j(3EUT`XxV?JnrlljRgQE|1>y3z9FeZf# z-LfC`KV3I0wQ-s2Gj4n$nY&l>C_W36VAu0IgjgQrR!XOEgN(vRrGkSf=(`@^6Cx{{ zi4Q$IF31$HSCu6XxGk6>Rs`c!*6Gf>m`cbmo9*|S^X_0$wWW)93jotbeCzJrUJ;OY zQ6du5C)xy&$2@SsB2wZV_L942~^K87ovOb;|67fRr zOX2EXJ$`&v$>o=kmw*XAi@t$2xM`P1uwq;i~hYWC*CoSOZ09rtgVfvjhAP?hs=^ zoMf_n+9xjt2gp34_*<9XF!2x13i9j_UA)hXu|&trFKIXju=(dGO?R0RXr7P|89a9S zk)$L2Pm%25hN(QtsyM|GQ_OkDvSzBt;kTTiV)r-A21wrd>-mG#pjDn9JY9$UFviC+ zo$MYl6i#?~oY04~nF+>Y8&&MlQ&AMwF-|^KQVhM1I-C;q43zyY$QdeI*ibG0l!+lg ze1GF>@~moKVSGaoQIOUdxaGBS!q~k(=2E)7I0~x8B#vsTLY4mym!TM+VuC(CMjycFHyc3$I&@p3ivVXtLB#k$gXR)D?hg zyTFHfB)~0OlZ~b8LR4PyS&Wo$F|K$ola)~h93WEo-{t0eQJin7+?{XyI8`8#xe#_? zu>txl@GN5+_1vCKTl_3@<|)kB_A|hB;YH_B5Ghb{0@F6DG9kReY&U za6I?6Qk-C&2PSz`G<6ayor2+?4P*vCj2=8I(rBo8^QcJ12Hig@tnx!aAJ&cNZttl$ zjFO1a|JPj#1s5U^)c^%Cf&u{{12RgR*cmH2+SxlX8rwOV{@goBR0#I}6G;P9=bflv zhf9n!1V{mgul{|Zm&XsUnL-(*BuzXrIY#S7+|cMN104w7@XIy$x3xu^dE5c7XSS=* z+sDc4dD{DY$PO`QaYb--1nHG|6n?k68xS>Om?|+rP0d1lFy~1@UyBlB$Mf@jNJs%I zC^eF$-eT=Sm*`kSyd9iqsHUBIDR1mfWabp#keqnIAsBnn5pWKq5EP{ixaw6gF|Xo8 z)L9#EeIRM0{XYK~;IG(2XKPSv!F~c%V+mjPTb(RReL9A%$t4^dd%*dzTUJi2c^Per zU#VXo&mStHwLWAuCHlKpkwx*`_G&--%9hnXyn>qG)s>Mz&jy7D?YVX6Egp_W2rw3O z3P@sC5=qwS0y1e~Q({`uc0pYb)1SW!YG1mL&myh`uGGFK@3gvDPwkXJtmAnDUSk_# znSVbqB2i}pHiRoOZ6)%7=WHLlD6P8fon=o<7~n7nK{jA0@umut;&=P&TH?27BVw zXWfP%lTgxkDk@a_4x=SF*hD6-aA6&gdZ!?@jJYx@@5)$Wj{v9TZ!DtMJlF7?`1WX7 zp!Qr(KzAjNHE0$&T7-V0`+8 z-~-g$nZ?&vdbW1_kadwaCQs(T=^m(;UlBz9e1-Ni9DE@Jyd7o$w-4$+ZyjS7CucjG z|9|)V=iUJV>P(bV0Ax-LJ(GM6qq<|TlrRLuS*~6k3;>_B}=s&C7ANQGN6W$!} zb!({Tg|<=IJ9COJt*kF5i+ueYwKC+S60HZ*P!Ek5zRLjjN3Oz43?_XMZ(J=EJcn?1 z)M*PL7QBj+e}YMW&Fh9m``J#_s5S*|Ii5%JMU=9SdefSa$Sw&aeVi z@Fsg;z+R^{r*ERCQy##U?x~+-75pxFDIXq&jsgBpe?_hb2B8P+gMSyI*6vKN*FetV7BHB+CFn5dVkq6%b4R@90iOc6J~BtyKs;0~20AtD*pAod03| z3g`%c`LBk5jx+xQ@vlO}Hd|Du0Ggx5{41E;Zzy?y_sYM8nEE$q{!C>38wDG%%YnJXF|%~D64q?it;Nx<)5=EUg0;&Cd0p?{7Sa)C(563sehxKvi~c}uPD`jqWl?r@HdKr z(7&Sm3Pt!Q%AcXkexpbL+@}7;UYLIcHv1Fi&%j2%Vf-ck9p;zIt=fMg{5iY)jQ|w>h(fB;Bzm{JG$Up`oWpWUtL^&CyCo#@@{9IXuP?5ybAZLI13>FHkX zwhdxH0Kemv3+O@zmVhW{&?u19*!%-X!@-AAN4sf}*;>1)3>#m74Ezx6z1NwG@tu0x z6Uz4rV8ca;5kB}Egg{cmrNH3m>-8ZiUZ;LcFaLDK$8bY7y>A;aG=4?%NxGa;3!@FP z7-)ZINfCalqtLeO;5eN9S0aUEIo=Dwu+HqBJYxa8ige(iNPp5!Lro{ra{~`N!Br6A zQb*?=mgBa+$dc}6x_?>ub<%w zX0m<;tJyTtPzhcmRSeTZ%*GLhbTjD)gO(gdY#3y*99GPVbXIF}^OiExm9^{yFT{y^ zyg_rg(MGU(i}uiqY0K8*(M}8P??oC%&(@DfJ9#N^i2J220%AY_044|k0QvuNs^R}L z)&J`xM=Q%XZ7?8ozo?lzTfz_F`vXf$hhZ^~OK+GG$jmf!$1IN}h#>)PocrBw{JMx6 zS_D>KxbgZ>?c9i*-BgStp9`hNRJ@%k1~IN+qQe(_KXjePRxqSV#6*@96nE1=+awoOSMf0-orp;jFK6~i@hOxTSQvF_ z{&gF7B8|}}4Bh;e^BKHkC@Kvh$zlk>V5?ym6SnC^$J`7_nPR@GX_s-#J8K;P3iDpre}9Ga zDr6wU^)SLmnnF7HULeTjjF{qNV~t#7V30PBtlt#}=8_^yU07l|N*_NRvZFoPs3M(m zZ!L?aHo0t5jWw-?8DXwDQm~55&VxvyE60KLM`fjUd{em6MbXhpAdypjB*X&o4Ociw ziKt3Uhtm;LZ?}o#9T#WNjYIQJ0Gx*-WR?V(dvLlu)Bt?^&5MNAdoBRKyF*@86^JiG zu9RwqTYbc?v1zUluIV&q;L_~r0&7GEWhWEmy2i0{@0*gR!wc}{LZa3}@^tOw6-Oxx z9>)s_FkVwiOKkKG>!Fsa(kj>){NwSC^UYbX-5=gJ%}8r{$ShP4X$Q^f0Q z#1iK~YD|qgi+3|_WD{kmYW^s1^Sd|x1jlUU5B)!@7}$sLBOC|-00Hd3TgAx#S;fxg zCN?JY|F(?(z{RlIrfn7jg3qm*dKWub$|Y51nPta?5WQleum5VAlo3orcG1TRF3f&I z-MQp;5kbAX_sLYfnRR38YOhobUb?afDO-w@f!1$GP12Atww2k=>yI%(N#uA0UC5UD zXK9U9wOhJz&C@Dlh^-LK#OP!zomxg!lqq2yWme?5RMiF&tPG~Xa1yy+T8>v6uKrSr z5S5RqrLSrhn)0qn^I-{)+X><$;b7-f^p+-s0+MsD+W_-A#B&{uoR~uZMlU(3=x5F+d>Nwe!9V<0{USR;P~?H%AD1`bE6k! zB)wGap#BncDCNIA^%|4p`+Uk=isxkVEoGn4D#FW9(ri{8^5%FpukGMHp=BOvDWQA7 ze}|aM78znGEU*G?QTJ z%dI%$%TR&HE>bkDlyO=EydNZ;O>HGV@|ZuoLv3P1ftZ{ajGHl=)ykm@g)aI-Yv=VS5Cy8Rva zpB;2JO0o|K3;@6k``_)Lzsi3o*U8z#+QjLfy>qRzow&h<;CHLHf3K98KC}jgZyWGO zFjN|UWBd;tbGF61ejR|Eb!5Ga<56v`vB77+(EUC7f+?76uRmW@k~u4WWupdtx8kxafOtdsq1WTs;7~EL`*%!S z_}xahVKC}Ay^5T(GK)$>S1gZWpJ6EP%+P6Yys(zPhlZ`_Ed*TI_)*vo2s=R!C)5zV2-G zl{^)WmCo`NP$~TQShV6<-RfbNv}sKge0{;Ux9OMq&kKmMH=%6h)iG1oawb*$~ zq^)dv#mdlE8?D-!eEcuXxm|zu~JPr%C4B3W?9rC#Z#&% zuGd6uM5u5=fOa|>Ub_ggmT;oCRf}RVkc6espSCU6ykje^b7IxzIW4iOK$6SbHI(VJ z1SwtjTBK>Ix>cyo&Ug0;2;Bm`egmVunx)rzT!?QkKDgJjO5=N;p+#?gXeBIu_pe)j zZo?c%FNnt>>=a8#7J2Pzg#eb3d}8#2&?GotbCSx5%BIL`432%oG>jPRS@y0(rdA-^ z1xOU#RV4VA9@(XFkf0kcwvMgy5FG&O(mN{+|3VjPJZVTfw)u#qq-VqCzmh+;XxGI}SI zBR0`Hoyg!*TfyMbFnTnWrW9ZOVBH*qSY&qU_`RqE(R2V4I%Ni>l+Jy*Q9iZ!fKg4v z!mgTY{+N-X|4~mC& zMhsQkNMtKQ6m=a)y8q)=KzMNK44|%=^Q#T}xFCcn%05#YL_Y}7RMPj8v=a;W?L&w? zgDUunNF+*MzdCi;7adyJa3tkajgE8^n+A|I0bnN#gA|Y}roI~z!~Ka!*L3F-@+MD* zUh$p-rZhW-L63F?2Ve%JKqskha$5GK`RsR!RnyuBG|)zf7EMuM`#E{PZI;RMeNLAI0j_f zRbXT8f0%Z>nDZI1Cw8t3r>w&u}*Q#kzj6Kn7r^5pbOwl_v$kQO1KWsiDm6$rU_Ui3MZE=sc4_cX5!d2OH{ePEy-QhXgM#$KB)E<0C}H={IwfSrw^$ z_-5*FLBDB@0k(p6Qv=cJjN?33j)}+c!=DpK7lP$(dg>4-v;B8ojnH8Js{^?`Zm{B; zuRioJ76U6L$uGbC=xBV134Uhuh%Q0_!F*aWEl;80RSp~U)+=ZL4<{=oOA~lG(Hi)t zxGAhG+mRJateQGv8O2C`pZ7HL)#xFkSZIPaXz_#(seaOzZD{@if2f|xKC5RAqkgC% zf8PrBPZ5D;oW1WA;0SbQVyM)>t=&2Q8c>(m0qtvH00mpPeO_oNc)IO49Rd>Y-=pp^ zw*e1p5k+}`ug3LJjD-RO$jw+*79ZRoXD!tu%trgu86X76f-SCo>3p^YigVD8`kl(? z=FRykG1XopcqAlW8x7JHSc-dTV-9Kcbyy&Cywhv?U%I>-;@_&I{U*ajMqgaD(?r+I z@>kN3^81;$P*oD&mitx&*TEP;ryDKlL|N*X-X5C=+&X7RGMDVkX~JAqY@ zfQB?|fMJ__NxmsXB=ZpZVE&O7k@+x(l9tgg0VoBSkoKmS4GD{RIkIduI)F=4%+M>7`MjowQYeAOg6ph=QD!**5@^LRPonPppu|?j>4# zp4DYmR>muXYFw6}g;GJ0r&nPJu%f3|YmpC!Ttv)#2{Gt_XXlEwC5ub$<3U9rzA$`|apZ7Rz+s{3UgOx)2$QQ_Y`|4gB8vU*R`FE5l0yeyAj z5Wf~+^_*muuvFanxOBWj^t6T6zGmpfWzJ#FbCd9>5XD+Xo#$=`NCb;`0=!37F)}C3e_WHJE(%L^DByIwSYkhLPUas!l zJXrT$H=Bmh@4jT#?&c0zwh(@F)^QWunD+Xe@#8=D;&bUzw|xwDztomKj&7Q{dR^;f zMUVC+f)GI;Xmj!3{BU^f<(l!s?R;y)3`};~SfYH)M_m{E8I=AW=XDh?D7*iHA1mH! z(_8#)-@DcZjw(3OdY<9}BuOO}Q`|qCKY)UpZpMKp>wtR$Q!0zQgD1P`;%>%qy|n+e z-=r4?AG#=j8*{a<&W zfk^Ic;xX06#VX5 ztEm`sLt+WJ<~kVngl!};Y$c(N_B~6-BwnFbtf*QX;UBXbp}_O_!?g%Z^sHAPb#UV^ zd$jgl9zB#WW7t&WYaUBjm$Z8M938R;VM;EfKRnL{SrV4*38W3C_4L$2x&Xg(6pwFU_NyF(xtO+fL zpHJKg4bs$th%gp`JL&gc6QIfi${@p%1;?N)+>6sYjBq)N`oQhBp#sEXUVxp3R- z1S?)iQt)Yl40|kp`Vj#GHOUy81rmyf9zqFd#n=MTf zh#w6KJLfFTpbiPz9d;&HgSq0IX+qz`|P6;z=Myq=Amk4l`&cyJS8%y+o zC!7_u{bRhRv=nM2fWhn$DqvgJ3*7IH0X8eB49{tpr-(GV^MUW`wQBjNOGvD~v4f@Z z#JoCW4J+{;JCkaiC8~#&X|yh!2nIp@Wk|#+Q~M39m0kX4BOz_L#dxIo$Gc)?f(=%= za~{a~RkWVYZ2xJGOX`qDLabU|K2>h049+1IOs(z?29z@$t34#~J?08B2$qd#7Yv4O z@Qld+4aHdHxfU@kU(zh4oBp>|7ysjzZDEc{ zYl+8PD_`ye(I-ljZ~;xfMlUitNgv>3$w9z>W+WOMy2arf*}P8_1Epv~^laCv`?_*V z2Q8Y|8QIceebVMhP3OZf^$b&BO%IG}=onjl(k`W@CJY+ZMx`~SK@?j&OZc^Bmqt?D z^GzJYX7I!p6cz;RlhyoEIDqCA#$p(ZU(4 zrvn`oaP31$;)AA5+~SX!C4TD~0uL$km_VaS3_cF`T8P?j+GMlWJx-9>G12;_}_&aAC*A4+k@+0<;~q?N!z zcQc+0CMwd)V!fW@ZZzS}YYZVnM^Svv*Li9{Q=AqtM8kSozUQm&zBS>(RT^#&c@SH| z31bSafJu*j0w(!WaLz<#niL~9nMcb}LCG*S!~&{vVgd?)RvsmfZIzm8IlY2)*T}n* zAAj#nS^sLp;tcK<6E9oL%r@7D$=!zk>*NRUA1rgAEn^4;0RZ5G`yXH#^S@Y@w(XS3 zfzY>mTdVJG_e;NSv3}d)TIzj&#UeZQdB+$*H2Rk^1oyb!ZgO85K>PXD)*aHI<@(ok z4O?ACkB4|#JvmV+Pj>p*6dP;;7*El;t?7=oUROq%D4heA;fN9wGrojvPx=oluf0R= zXs|diOwrp^RPmIqmMY#5N&g$>tT+@kB06M>J+-T94rHLvm;3anB^d^FcH5*9?xqj(M| zPx)MjLXOty?14AJj9+6g4}^=HN^w?UJ;`e#1v1S|j&vKb%YV+ zyb?r;ZTP)D{PYpz({Zvsn1x{LPKO^6{+*PH;F>#PdS~4Vm1QlhncHOX^=6fHXAG)- zOjRFsg)}g*^BiRs+s7X7r7^!`QU^IyrO?dP(GBf0Uf|&xCP0n0!u%++lOyW`u9irg zT3KY}V_pSLaLZe37-%{9n8GqiHhSc4BCmlxK-i_EfG{S$OUyoRD2eGOy=2|c#x8~a zyfIQas)hz(Mp&VQ=ZuxJ9okv3+}7M(+>G7pef;LvZ9L!FTt60;pEBb| zZ0nh#zXPH&KYjUo*;#s56Mq~ccQ40(igI`HGj><4%felE25u|dUHQM<&EFl+VVlpq zl(T%_$LIbe(q(KG+$vx`E#|_@`0a>1YX0G+qW?qN0Pg3ouG8jv_X+{}zgMe!-o#w<>gSw^-E*NB<3}l*3MYn8()uB1YukI`=OS9+sRJoWpf$) zYRIa+$&L@NM_cxFxw=)Kx+QbkABS0k^X=sICi_p;?djzt$M^johc_3wUd!UB5@_8b zMfl*B3`iG*(fJ@dKS7#O1r7pAv?ja|gMu*-nPaZSQ6f>8L}nScQVB1&jE2pG>2WC- z4bOw}A!`9e31K6g4P-)#Ii0!*=Ac>iD+&%%Pqfx2S;XTU3OjwzWiR_l(kpZy%*%US zN_Pkuga+JIHykezlNgSr8n^L^S&9f4u*0a|us%fZ*Xit`_CBr(uy$n~)n;mo@?(-7yj!p%8?#fr9?;_7$3d#vQ|E5;B%&Zc$`5S!J&M`}YFwzpn>`To38U1< z(TS*&u&Atr7vWGt@W*PTsO{*EhkYW3x5inb$`KD0>y&@J1-X4Ap-IL^ia!a)C*^m~ zIv&WvJ$NVg`#m1P6E4FpCPPt~Nxa6>Ak*kYT!DC-=^nDMcG_e!8J)|7Rj zgGAsM%WXgGza=r0g~h-~U`=N^{ag{wK>)vwpRw6# z7xJKOQva^qz-+vAXs;TLEM=aU#3IV zZYd0rc2+UtX2;)fBn9pV{uF(z|W#inK|B|tM((jTf9L*af3^JV0#@A9L+E(Nl} zQKtC>;i=9I3ffLSW8%u&n*9`uLb*5*rmJQaijT zYAS`oG7U4V@A zxG2bR50_YCx6;#J&FOjcgGWq^uo_!V?GzK&4ERlj{;qRl7BS*nt-9~_2DDJg31EH1 zwzsZs;ISM2B^<JBQ#=Al(Gar_He2x ziD(Yp#UO!hsY=csPB~f91Fzz86cAvzA$kgmUGLewDb#v$niA6=uRkuH9q*0#zf%>B zrRulQRk7(^ykA&mr~Mo88EqG;HJh>POV zq>i=36FbzUBe}DvM=_bkW?J-I$MCA$7vfTKlEex9IwDR~0p}*63q}*(?kV|hWGqj;&W{!>kE{0F7d*M&72hjlAQye?5h}?|pd2Ewo>e;Bz)5v>`b;*iHe5Tpzo_@3ackkIa z8GY1Ju8JwQM4kkWL}#R0Bu(qrJVmB?y9U_p_$Iv4 zLK;UTzoSQ$*Jz?=WemIOUXS=iBEQ;eyUow8xk%>GT zByE+P3M*rci2_X!JV{zn^mQ%Uuc@H%NX5<%7E0?3ag?VSKc`f9sm$OVvRTX9hlOP} zBdh8qBc-L+=nPxOX>%lP(rJz>Wst<76g=Zn(+z$*`s^jYPP%%RQ#>o2msmL;r^6e} z&2=3zYqXxz^mV$R_2sDf--uK*77g7G5^S8U6~oI*s$FY09H=hisx}37#{y{2K;&h5 zro>Ix(0Y*SwAPANFRc=G@yaf>;EO&sOEpR>uJdfOOd5d(I#W6i#wHs-9_QbyC+jZp zGOm{+Y&4&}hx2rJpa=13n@JsX7MUBeT;UR`(A6=>*HN2eHmWoIo|yP!=F>mL&{-`C zz&4$k?zfp;G{B~}hF&fv4@T=Eb>BO4eUZ%VeG#CC+)hjrl&< zV3%fV@0fYH@PC+p_4+?KS$}y~<-$KX{qlpkL|=Ocjr%$O)eG=vR{x8!bTPIqjC*&UM4XIy>D{tpnF)9e}P*(<3tjV*^aA@=MY>Dec#^DR@aMn8Zm z0{l1z7d1v7)Bz#p;14B~KIna1RDNS1;9rlJ-u?eJM92&jSY3dJ#OSO_AAtIIm@!N? zD$Kt&g^hv0RRnmd_RgyI{-{fXP%$%5aCL#6>izQ?{eY_S@YEdNVvzqQ&F(7Me`y24 zMGevibzuGcJcqD>2U%7 z|JYP}{4x`PsSET_M=We40#onjt@=H$fe2i6SA7!k@53IR>d;x$Z$MRhcxppu)gb`t zwlGx2Z$VOj)UCk?jBHfKKByZ5k*Jvn41Lg-IwH}3-{+;yC}K8@@=uRp#7qQb9~7gp z$eI@UR&|eBi5BL~j2v}RWl>G6R_ycY@~eMF)|!8|K%nv#>2Nx~=!G zv17H?bZfb&3T?-gi8Y$e!Rk$+;Mmu;a>L->QcbY(3}kqhb;j6}s(iBdt}_ z;}KH*gyYQUX;%wdM;$%E?8w`OtJA?_JY8DllxA+)tL_!z<})kVZcqtzrOL%+Yc11olzn*e{oY16UVa584{Ng*^Km^ zc_QQbdY6O!v^$<8IyL1F%=AH;r0X# z-5vTs`rKN*q5h&3i}d0UnqeY$6qh^8x5ZC_O*P3PjgPsOG(n7+l1&!+Alu;73$Ky5OP3y`+at?X)Z!a3g#z(r z#@?MH6(5{y!jGDJrewURr9xg{xOx#UgCpH>Rb~%;VRG&$4KxfK2tWZXveP42u#j*1On|=mP7njSNB)73l}n z6i|hUV2LV=FKW!+QJ{(Bl&!6mO$@q31{`hQ)jnIcHlJ^VK1rP`v|rn%R@)M9)fSc` zu$d~BDlFgC3#Qo5svwC=O*bNTGCW;3cz=n|jT$Kzy$aL)^{tI%^_tpfrQ;>|eqfbn zF;fIVZx}^T(m!|0811;*T-&zlL@mDk-dOc;ZRtbLHRhY(xqtz_2@G~~3MRYfJOpsE z-NADEd$X-oys|^1&v$OQX2o$+YlU{6Y?eu(V6nx?b`jjDK{6a_MAyLRh$^m+PXdF6T7MU7Lx}>Q_3cIV^TLb3x{t zF1xP=$Wqtv$@vD$Z7NNc+)H${PcFL-KG-1N(UO^^H2*q$&vn?0FJB$4Vak^dz9_iQ z*c72ZAF;pKkD<>?f_LwI6LXXf23VWHRI8bW8BQ-ljAo5VniXb^|A%THBj}dm--cPc zf2uVQvxJ}lWr_imv4-HGn&2WTQwJk;Z)CV9I!V>C%Q*U$Hib^^adKGx`Yxy7(fv zFazPl7yfP#gBSxO^+9m@D6%+jQ0}D+2uITrS5ct9FQ);2#;FIkjFY+zr(|##!Mm8z z5l+ZlrvRhc!--G)-A;gnSk?%^>$KS&ikSAY2l~XY2%4NQe>Lbp=;afti7feEq12qMI=xg13a?u0`#9=LFO0g}Lm&c%2CRSu^0BW$cg6Tti<%iqG3 z7=a0y=Mqy4=o7>^fjrIVM=)Ug_KC}r1ylN030!XkCxQVpgy>Y}2DZo;6tG4ZMg#+P zz#;Y@W8nH(L=*!Cgi+2wPcsG)4CyN;kYNmIoKuL4?Eb%swNr=)MhtEKa(6QZ+|z!5 zLf+`3et;U@>+A`Xe5R;p7Eu%XYl~au5{P7jrcy?#AR{^ETV+#-LKClJZ$-KCrliH!E6IVU^iQ}Ijbn_d}4<;-q> z_1TMAMC8!6c9ya__E9ZcvYI79K(jrTnioAqt=)X@jgpt|1j+RxcXu=DUN5QVu5@0y;Y=!T zokz72>LN}YZ+6+QfF%A2&UryA^v$8rrz7Wb-2nq>mlm%0?$wIl2$ zIzF$X%G;-=2L;ugaGNUf*}a|6w3RC%Zi<=B=KQuBiZ>;|>AIH-=8J)r%aO_P#%vpuzZ=Z z+rM=l&mZlXoIKv0VvhO$VQxNMF-PaWQEeoq|Bktd|F_h!{}e*~n?Uw&Z2LcDQ1SJ$ zz>F}VFMJ|N*+(0I`4^5R07Y;#Wjy}LuXOq0xTJu%c5-MWR4!*j=5IgzehH(483nHc ziol8STCCy$#_OP(QQrLBTfAd~O_;k3f|v0ZLNx_$WmxB0lU~)8Pic8nGvYqXP7-tP z>S)>hIR*mV*r8rJ-%Ll&{U~B)#+)71D5bYit#uwbLBr%Nxsc^LocTWF$rxu_`SNJi zqGS;D_uoOhypnd{^Bmk8FK?<=!N&}5cKa*Kw zQpeMZB@o_Swvw)o5H6`&T3ONQH*0R+cBd>|_;|^cHIHZ`q&(Zy?r)&U0;453FSp{O zA12n=K!z_MD5M|g5C>wAi?gVQDy4;E$i)Q{ z>TwbsVuW}q2;%O#$Yq1XFR>xcyr~)1Q4j(47z^a=DQ6JiD3Jj6{FWe_Fu&bTJqW?E z@wW^w1-oCEQoiq6DRqa0maL8^u?rs>=|GZ z_+*`xC2$3kq=h7Ptc2VQ%8B_2(n8EfdgMm?8z~b84Q+?1zQdUum7bjh{QwMg+`#;k zWq6;5j#L&VXzGCTbPav$y{3$}u^+w{UFM@jWSYsiH%W|9Ne;U=Y#lPYHlDtn36K>`{gO_rM=Z&t99Bix`vkfSZTNdE=G2Hwpf<|8>3+z=t zlwZS)=0ko!s6sQ;g8zlTD%6nyGxw>{N^cy0-TfCocHdontJOLeP4HJ}{N9s8w~kRr z7C-iY6Eh&+(<^_0M~I*rufD!=o6>^}(}p%71RX|M<1A?fATLM0b`A?K1UgY7UqKdd zZ0LkZm##Hl?nuVo{>3_GnQyF{lfl-}8#Yh87*k`%}W47cC45F{lXxb2>$_KoCI0Ce^~J*me2egbx~3p4b%Cl>?X4g*#1%|AhGxo`R)AG;!iZ(r6O8+YxfM*a19z6){Lw*p z&_a*){=foLcX_dF0Oc<)MTmAoHeB9S$oY&uIKLzxE2Vj{08^-@9J(%HN1p8aI zw)t=138Cp%Zp+HB>_JgWB#G??fP_-jB3h?i6HCKyc@m)o*R0xILdx+6&`ACIGbw4< zab~lbxUBKBL#g3FR0i?wU+n4- z&jnI{NCf{&2X!oB`T}t?Qf1+nV2~K*5P4L_*K)M@6e#fg*6bLnv!l2wF(rSCd$^^{0GO!_WhIu1kwRr z=pCgU1=7H>5{&_w8Fq^^*<%l|u`U+>(GbqcvAX_=n#$>*&is@fL4}cKr)j!9>tWnYw}on&SRe zPxKKm$KAGhsAGldnr2$ksYk{M38YM^!=1^Mjr0gk9L8z!Vj4nO_-F$gvCS}yU2SMN z+jBt#sS#Fah+PcL&R%rwS z3S2_*WLhA(!TQ?eyM^HR@OeaD5iFQ;zP}v0s%s@Jq;P<}=Xi z^;N`l$$6S_+($rKNH=c{Ncn(M>$mkYUTn+-#WHLVGGOLcZG1HYF%!9vhpj7OD=bfW zCrDt! zi%M1jAFp_h>ZYuyi9PV5`M&iY^(k=wh97MCzH%73j62AT?PSeROKj|?(A0=|%BUo^ zT4;Q9RS4eN1X$3+{dF-$ifcPA(ShE#pW&Q_bGrMp{P`jF3jgwoUn3EA?(iL?H|=LX z_QSGs=+{Pu`~31MmOUAFxQib=zoq8k+;f!T*T#>EFf#NWf%v_ottc;9mfq`ukv61G zLScAy$p_vD*4IIUiY6-DHM(}ckx>N$5$G_$mSHJeEW9Z~ogsuLkC%oN=r${5z^Coo z-SuJR%KfMpVDxqKLh@}N3r~^^Q|Z(pG8Gv3+;^7vwHO? z)-;I?1i!rAK>OzI0o0}ZiVIGtZ3{SUDV5cvqHk+zDpOoSyrjn*BU^l_ zJ$MX4JOdtij9v%YPLv4>!Ftp*<^*1yhfgyJnayI*wS8Bv0+^3LD;|e7y;X@D2(Dz5 zT^^}w1xKs#;G(@7TG3OLb_XC3PFg7C%uMWxKPxI$zGIJamDkA3nBhDx+c6ttC+qmKOWNG|DNIiK(Qrz{(@jP%>M)g|5GH9t>d)0g80`*Ma|N6Jv2b~yhlt- zX{718wGyK<>5#G0PeMUN2KkSZs<#J#a-8X|CtI3aU4S>9)Gp6 z@UmfD<>|zkD7Ii+p*?;1(bCC->+S8j@wQ=nzJ`|V(NM*1VsX6Gk^OD|ik_U^<Gne8!(6r2u9QvJ#5c>Yc_udc+s`avj`peJqBdzK+nV=-w^AE@ zI;`^AZM(fyr*ucHvf`^r@9yZz*zbFFdcHuj+2pYy#|_;>p~}_dWuv8yhJNDt^!oeh z+2*T*+y3R@etrD@I&)U`M8%EwJsp?z_`vx=y~nR4{SWI$f}4s*qu1T5d25wjjtg^_ zCTeFV@(uj=n(`z1a>-Rp%k=VfKl{^kqUTfBrRa-*&+9<%WQ~m*c*cd}`t-d>yZNo$ zI@&G$gbJtCeIWSYE=iH1PZVF_u}{UV4;tg9!l;-rH`Ji-nCuL zi_2F&|57gdMeU+5rcYR_h#&FJjG?2lvsmrqptWyO*etvq@5YyzpNwx3eQFi|{ottE z-`LBy(4x-urmVBhYjH;Fv4$e>SVN99A;mDkQR7ms8oI-gtW;mw>)^Uuv@Csj))xSG9dv(@F(^%PvHxyJPAF&JDY zzLSpkRmu8S>&DejrxpJ-y~66%pasdF>o=p(#m#$^DD+dmPj^@DoPc{4UzAb5&$xZp zG5^r5)<3WIr11R8ku4nD78jX?C-$fv?ImtO_%&Z&XL@|9LE$(RKclDC{GIbioyjkS ze0(sOuDlmJ-Is8BxfZ76qpM%ac9Amz@g#byJiJRo`vNj(yQ?^Em0fxjaI5azm;5&I zTsfIX4^KcPdE#M}Jm4Z0TxUZz(R?_xNLvwWov8P|jt}}lt|mO}&kxJvV)6pV zU+})$_~d_dWO!1KM=yOl8>rNAiz$Ws?Yqro4$&kI#PbpI#+91)P}0imKJ>;f!U5xA z_^O^M`ti@WTa?_(1K9&OjA9Vdr};Pncvxd-dC^z2G?t|^@KawC!QF=(Vw{7$m+WK< zlIk+Cav}!#^<`S^gzv4wRyIwzOXYaLo8uzGe6sw7LDC_q^FEKJe6)wx#?}$STA#EdO^; z?}2CZKiS@FQ8bNnFLe0$)9@E1i&vX78N)nZJj8SP zSmHj9ig@RH;A~OgZR12RFnLD9w<%CXdvn@Q(LAHEGc5l#ZgyeY>3>t&dgNCj|AC#M z|A7r<3}gI*vJ2}U6(?EIP&%Gh|9Ecx&pbYk{)0jAaTI%0SD$60L0Rxs zm<~R^MzTbqHCv62L0hJ$y;NE_jztP!SW{077h@xAj|eNLbF-C4(T~N~WjH8SLSiF4 zXY>N=GC+y3&E;2zBhbp}Xp5EL2C*o*3}M6tVr-g!VZ3bRpZvk(K4OsBG=D@)WDvhJ zlYgTh+gL@1UaW-8rU}-~g%ZCsm){wVcwSD&_)n5t6+ZXBu)J5j8N{T2K^m&)Q2#)9 z!Mav|K{kdXaLVcEi~AM~Vv%*N!iZDE*m&C`K9@&E z!MbZuVv+xaWiIY}d|y=EwJ_p_zev&xTw=x8&t;=G6zynZ#W?>eF$RFm_Fxo4F|XHS z+ngz*Qp^eBJLn;aqGVc~`oLJZ`%F*%jrZ~@i0E6!EjyKGmgbU#SLDOLK2!F*@@Duw zot(oX@$ub~(%K=DqGiyFr+EYy&*KW9NBEZJJgb>hyu|p|=KNjV5@(jIG{v1hml0A@ z(uA;I+_5hB-N+V#ADP|-gr?(u`fARPu|^(d2ZiF~kWw$v(4yv=zQ8@Y#5e}f%>A$v z?G@^)MQR{c$Pu~?WkU`zz`6unIYxCn(*UJO*?KQLe+zr^baVeOLIkdY1xt$6D!?oPFrGCKjJb5GzK4irNs^Y?qCw=Sehy1OX zXV&yq#}}EbnJ3=#R>B84x`{{C^p+8fjMBt|X?lz6jqKgX(_wOZ=83%1z~gUn3->@a zY2Xnsx$SmG9;@d$G`=lyL!PVWaR%PDxFN6BqxaxJRDn=t&>#^2q5*`y1Pwk1Ky-jm zHqan30Ac`ya)1U&01#s!lnXQn06@%vP#)0W3jo9#2;~C}k^&(1K&Sv{kPHBE2112E zgX92+8xSf28l(U~yns+K&>$rM;tPaIfCi}mkU$_*3N%O!fCK}fGN3^k0OTDIDhnE< z1wg`qPd>fAoMk8kO2Tm1VWWTgNy)33J|Ia8e{@MGJsHZ&>%Aa z@)Zcx01dJLAbCKj7HIG#08#*i>VO7W0gw_PR1Y-B27pump$4Eqb^xRX2sHu?asVI= zK&UZjkP`rD0YXhdgIoYe2M}rw8sr8*x`9wj&>#;0(hr1Mg9dp4kRc${7Bt8QfcyeN z?LmY50LUZ|>IfPX06=DeP-oDfAOHdfLR~ zpCP69_YEiy;@l6wyE_l`dtbBrhU=TnC$}fjo_90`!VY8!g*FQulrY4~G1QS;IkUbEcru#b%)RRd07i zOOw+gv7Sribn=7WiSW|xSwn!&RT}@pVo>ITILDHc(6w6S^zYwwrc%4s9&WLeyOCaA z1g}~G1N`QOn)PeyLfM1TT%>dl?-v7D0D5JMZ7sgw^ zr3aWQ7jT*h#f`yw>)B#P)eq14VY`7o zV^i~Y!~v#ta9i_-@+_;_Q*;>yqHumS?VS6%^~lC1@1wl=ZHZJk`(oOm06OuX3kt{1f7D3Ps^ z`SH&1YE_LIc(GphUMFJcHraYI=|Un!sC#t)(@(clSAFNK(H}CsuG(@{_;quB$CL0v zt7&&FnZC-;DDei*r>;>}FLR&VmA{N6vUEP}++cFA6~_y5IT>(&dOeWg?X5YoIdZ|g z1^R#)(*%R@Q9WCd3KG`8IQ<5a+>`RQeL(-S?{`v1rq+j#goM@k@4gOs3{?0l1(Th* zyS0^;r@KAK_ODD#lM;>|^TKgUhk9S!b+ptn=zC+VcvBdfD%qt72Y%^CRMnXR@v&n+ zD1{&^^}FxKw1JRv8G2Kkg)tMc#PgGBl#`f)A`B0Ac%-@F!Sy zZmh`E$l9>j{6TBl6H(hrSO4%%`{SAk1LPpf8^6{HRtWClUV72ht1O zWohbieTNk8WuecBlT&7G@^nqjM0TrO_)IEPT=6BuXhy3Ba1;rbi$ZLbQJ+`S)6D1d zqV_ybO!_hUIk1ofWw=w&2+N<)VTh<>8E?VP+4mr+UARw%GLHs_7-EARqW%V*T&f>B zVk?iv8~P&{>D>SJ3n3Lpg_NCOG8F1x-!){ossiGsp)Ob@gT|&Ey?elJbC{0YQy@us zw%b!7r*O<}1VT+AajWq?sxW-fM9XFntRq5805be+Z>U#;5z989qChe^^HTY%IUFO_ znjyFdry$m2lz0fg@386P)X^dSy)9@q-S&&sv&_9_f1(1MtM3vI4oooI6bIWt>iZYQS;tt>k>HD~(K*-1Ao_P99*U!cz8kow|66 z22r4nh>iV?vP=6gLy}YOJrj(XRJ}L;H5%%M60eLl`gTt7qrZIRkS5oyf16LnF)p&h z(&1_RrN*@uCHI=ou8xJ!dR=Nxze&IvW&Ky`f@}eW1W9-58OO=<( z?rT5Md3$5E$=O5}RGN9j28VkXVheDqZAFiu2W?`$^G)SjAF-zw%GtQ7slpaZ{oO#x zhB*+6B!rgguq@Mrv5Mi@;zo;1-PwUI+q$pj;+VW_sxOtMsO3oP+92=*P1r95tpNFF zglHBNX^sO`hza4h&4FbkCcEhLwG2raP0?ZMnM3#Ix>gi-GRe2P#RRRfVNKtDQN1JH zl=fcsL7+V)}-Z|p)>X-iH9|g!gnlA1tGy3jAL*FtmkVGq^;log)_Zj{Q3Op;rJVm z-hy||8eSwhe3&0A>1>92n6z59%b(3WK?aXB1hs#1KEf|C*Y|bVRXiyK?+KAw#^jz= z!VjrTR*6ZY7)tuccb{Jz#m`PzRBTnRJVbv! z$;f9&9p=&TMpmQ#B|Aa89GIqp+(st(wc*RADzKg*_@Ws6+A;`q479=~nxB{9ARoukNIz7=yI50j#;I(@mb{5AUg14|!1uL@~6H7eqCyJC;sD zFfP%N#3~3o(nDU>@_d4uX}f+7IE~Sj*ZF#D>qvmTm+4cj9P>8!3p1M4 zY5$uh|FZLQ6Hp!X-aa)&GYw&fz_*2#VvW~_f+;NL$8lbK{mxIYwU+b9%ba>0J;L@e zfTzz!Y7HK;oAxVTLajBke*Snq=}<@9qNmhrt$epaC9CrX#}gw_LJaIAXk>) zZ9~A4l(kjkx3Xp_v=QqKW6NB%*TVUX# z#9r3Tc8pqSW7)fuLr`aOPUMQCvo~Iln9teRdZ5USr!VL!tIuj(O7YC{xZPfyUwSYR z>?IJHd2lDZK(`?Sw}MIe{3%!B)t%`~C0G|Vp##q%wU`5e^F{hxgNrdiP@RCmou z1Eca%)Xx;tEY0JjX1a99=x_5&(n4C%wNQD_; zL*?jRS!mp1T&hzrCv0tDo_3w3Tw7)?V8c^+AVx?rtr0JVM@yY(^c{3^&;9geLWw*m z>bz3oDV?5vmZ!OufunFq7tmiz()YV;pX^VreJkC>aXCqyMnd$B2xl3>Rp4|!f%uig zfi-?m8%KTlab<2rVKVCscJ2JPcH%cZ)NMwe7VeUw>&^1hRIxzn(N_ZaGLzRNP+a`9R@>rvI`=BS)m^1?AZR(#;vZ z`b0#vC5T3x+}#2vM&~Hbaz*K?S(6W6uyLjWsInc=U9USoioRTG)N5gU7TuvXpURMG zm{jn=)*G0ewc+n+XZvGEwTMH4%urA{v95N1su+i^FUDDbk5Z8E%Y!)6t}&0R!o-go zj-d}l?;0g>Pdl`&hgg$}15JiVdZj7v4XA&%X$d$OatQN)fF%n){J$&h=V_G9$&X*< zY*o}3ILsVhX4*B9RuPk*MjWS!OveF;c_2PX$zJk@DsIK@*ACNnE5$WZS><%ooa`oIyXicau9?1el)Kf?(}|gMbAS=Q?`47ZFHwyB0~-O z26zjvrX;@TWvBEm1Mi`t6gkZ+pcc0g34n~t4-7k>4gn0d1F#64=ZE~paU$LyvUc&; zJq=JuPUZ>h&Kv@*GY8~4B|A0QV+;$rWaXDR@z$tt{^j3xz>KFkCN9u zoG~+!`m=N8zX+X}oKcM?LSg24rqp3V;{Nz^oo+KGFmKm`)&2P6;hB3ptaegzlgua# znms&93sK{Z?6KePNldcRqpl(1s1XHu(YDFrHZ2Iq?Ri`(b;YE@)I_|Uq+-%!1G^7C z_ik_xYu8JTwk3;(Tb&olZLq=N;h^VPwJ!Te`R>n;Elw4=lP-U92VUSex4>34y7wNF z4xt`Dqf%nlmy+@Dp2o+e)BWn>eevThMx`{XY;1@IXFIAK2#xRI)sP5XD?=4EO7PcF z3?r6QBA#W9h>n4&Bdeq8Uq4PHe*5GA9)y`uV-md?i{oX4qjiaS_{oH=l_ezsyqGTh z1n6R0d$_LO!p$CcIG!vx9a&)Vj{UTO*!j+rAHBBp?s%$WQ6=;dM%igg&84*EW&Vc1 z{7p28GO&S#h>NA3%B@zpQ!Klq#9DD)dJS_tXX*9muWLp>xa0hfYX75KdE3KjOj_gl zE_K^Cd;v@DpS>kZqd&MVeQZ;w$ikRTx)jWw(kU*!os!D7Uv&+A5h8D(t|QWx39c1;J5tlp@~nnqXi zfxORn`&pj$<|X-IGt$3ax#a##UA%(QmiKcxofXLoCYw!_wO*Q;Zfhz#xLYq&|D<$B z<@D{#E1DFbbjO@$_D9sWpj5NItM3Xc$Ry>7$;2Mx>)))MgY76FPIXI zy+x1J9VTj>ov#SJZbeL|*tdUhFN~#K# zuX~I@MgM`*wJjTHpd|`riG`}#(S^9l?&Rv?X!e3yfNZ=nL`VuW{DkSXa&U&|rPN^U zc+yhRXeh|V;)HDI;>R6$xrhnUB)AuE-pYY{s-NKYHe74zRZp$bkP}!n!g|z&E32(K zzxz$U)_bPO%^Ly7znqw&v~3f4J(yO*&I3o%vMN$ z2szrlG#%%2{PCUI_2Z=oO^!$h+TN<(fcWXP0 zr+7`iX2>g;SSWE!?mXDaVt4(_fs73Afc`8K#4UA;`q|AE&d(R}26K4t3^=Lrri3s+ z*^6)3vfs|7hGg_}cTbUAwXr+uhfBX#19TvtpMv&J2i_J_+FGX2G9YzNyO~v?mI*dQ z+&aFbokK~qGx?z~v-oloV}81gUof^utd{;G5&i!2D%cQ|#sQy_;Wy~ndvZWp11Bxp zK#-&mfT?i`;!UtIXN0a%s6zkh!$IRrs*ICv@$uTqa&K(l&L9N-x=1{yWW!|2Y-~U( z&eDI#O1>HX`|V;iXK>c6Xme?mJNm>Yi#EnsRQ6o-RRF~V&Znk#id9{}N@u8jS`#hR zkBU^m)|>QR7}bI9uEdtBphjlF9U!y2TrZAnSC@r91}yIyAOAHlj66EvK1juL*VGr+mMDbDJUi? zvOQmC4y+6Z6zXpj3f`|%2ApDHay+m7`PwMKE;=Lmqr$widvoVC`Gg>sP(yx+^h)Sb zE7P@28e@$=EynU)Xh;&nxJ{?Hd67z_K$3`QHgdyF(z81A51xB+G8Lq9W;KBf-x+0} zSMUx{MAHrKV06vz68&Na+g~_>l<9)F4se=V6k=iR7i`Bikj|F_wXdTz5-yG{z)OMj zE7iD;FO%2}e;6`zs&{0~wIHi%y*x5k9k!S28LQvKKgJf+pCR$n#CbrO%U9?;(t~lGbRHH;QA)!&N&atWVao|WMCWdLx9qt9$O_2OLp^tY- zjCn3Jd5xxI;Em4IeR=lU?3X3Dn)3`w6LK}j@g-v^^3QMZV|S`^NdCRet1tkm75#fd z6+Zt4JXyO%;JN+Wik4&tObJzmQbV1%B7NY+O_{`8j&;eFUfTjkMeoe(x6tVzKu9`n z0B`MVOO5B0<)<~qBwz`Ke(l-RQ&GjCElv%qJs=4>;0qQ%myJ5M=X>GD8y!wLJU))^ zYLpDwmJRq@T9JH7Z=dQO_TWnxT5L7SwbPQO3LMC(MSeF43gF0?91L~10M{BWTJ9AL znZ*%lw0tZ7?SpNus;5tn1X@tzifsM7u^yPn*ygo}UC1z6%v&*qe8-NA@yRFqlVIWd zhq_$n$#1pUR#~*^ZY|o0KG%KEo9;18be6ZL6Tj3VVu)MMkbB0@d26=LC%dE^(~s8a zOp<=Ie8-{_AsU$W$ejGVlhD|}Uo+_)GINNdkks;PQtRT#_Jn;TaD5{w^?cjzf@X=t z#KAj9YQLPe!1Y}QMmOO;FvOSt$POv$GPf|WWlTW0g^4!(Nr3I)*+EhAd=}i)^jG62 zifq00dsQ8h_4&P%K+{3HySGcbpT6pRoR7 zOE5w$Id-0)Jarz?Z||#qUuI)PR!yE#+iGLwfI5rpdLWNPTn#uGIoXAqmMNCm1&UF~ z)rBDSUE?9I?CO7Jy`)=e=ySw%Q_%V4_YjT#R({ZU&Z-JQ==hc|8c2xaU|-I4wD zC)-wD8TI9>#S!?hc&c~YJbt=F7q-j{GyTU9PYrNt?pCO77u6B6*Fe)OT2J2Vu`JW4 z%(cctPp~4xa~WS0#hV>2zRM>?*N8W@9SD9t_^iG5CE4o>U<>n{{#$zMC%sC9IRhX9 zwilT%4jdbuuk|&a>ci=R%g>Pmu;IK;V-97eny-tF%|RBM6B)@*`n2EWIW;Zg>|n_X z|3+IRW{lyApS#0|mMvxWQc2q)WGBRG4D6ow?ijPFQZ}cim(f-?UgmwP)Lc6`+3;oO zdub`NoKpPU(iW6`$NYeROD6>-;O4J>Jxvq)35<9xmVA8e->~( zLt+;(b?f6>>r)#2F1c2fv@I7#*DoBVR-MfE_P1~G_g#LBDv@;a+URoz>qO$zZJU9;|H%oMCh!WWp!so+0wh#MpLH*{#Cbi3YB` zt`eA0)O2B~OK%L*hQB5y^1p0~BV(JP-C2J-{q7V0sHn2Ajuyp~-+S<3bOS9&4mY8T z|Bat`7R$~Gve{SSU&PxTL4?+Iy~-V>VN8O1rv`itQ7T;DB zxD=L~u`(DdObf(^WDaf9LrNq2(#y+ zeFbHg6~xLpZX?Z6mtWXfSg37&c4Q2BK3H-4ifG)@U=)xea^}@y8Q{&?jr+|{kIM3U zr8O;%o2>X4mYOwdwIi()s*Sgr%`|q_+nXBU*@N^WqhSU7&xu`5FqG+-RMKBFg|9+Y z3yfStO3n@B*-0|3Tt6gg$hiAvzoUu34;iy2`qB?t!u~E3yW#@N4IzTGAhQUneAOyI z3Ks~e5BF5vmd>JlgQe+6*AvG|mk%V|Un*E`)bKwCKFg+eN{k6zTh}J$5vH(O4hwwS zrM*yKSZr@Y_QqKHQf|JYO6gN?UOoZ46~QMZ6g2tieA`sf;*G9+Q%@xFkN(6y(u_as zI6u^xv1a}{-nRNEYGvZlRw&*?aHz5R^XYMxOJZWBhs;a|y8EG;qV*!6-&419M zC;BbU1XbO_oO%!2pdFJtsVV_jb4?S$=o}-7l`%m_RBm#6H^lgXo`?UECX%6!v*8Qz zj-(O?bNY8`Dd=`O5q1IKi?{t3to4@AeAzNEHG@cBr`@`pt)t0&>FAK5Wg) z`1}CyiztjTPPQVsvTt@taw9RtOYgb9aCO!Us1)wPBsJ^rZ5@z7E2|0IN_ayUqHK|h zRvcCMp?fj7y^-5wubWE8ApIE1THzpU~F4mLsUvi1)i2|12Z z+`UAsSi9ddi87_*&(EdpiDUa)ySL)mKP*pfcA-K#JYGjRa!Fg*i|&MsR6O3Kf(iT( z=TmX@%4|?QIqzwOnM5W!i)zhs%U`L3qwU*bJ{ZZ2`Y>wkME9LT8rU&LyE# z6RZ5YuP~;%jyMTfyfEsG98mui`0 zt~0Rqw)CFIP-n-0&mIJEQIr;Kby$2kvS2~GH2&vu#C$4@Q|VCm9T)lUbevxL#4g|a zY^|^~fy{Emg2ffO@4aYJkuO8F;yv)VJ^-Ht$Ye16NM>ce5lQ~}qLQ<|7kJ@z+s#)5TntfGv91A9$xn=t9~!>3;z;~#hh=I^KWSg1Y9yFi(fQ0v89eso zda{ zq^f!vMdQRMG!?TUp603=pyd*5tfd_)X87T=-!qcRMlV`a+@RNIjlDq54*}#ST)ged z6ep`mPL{nsG8t4mFcW)Rl+r#nurWqWhNX5N%XaoU~1bSvE7+DnVv|roLZ; zRY9D`w7@w+3A&AK%hmX@EKk*F8A-UBT>I;mRrw({vfi?G^#=5Z=u4)i=fozybSRiY zpMo~{2;3zlPuSztxMOw;nMB94j-Sla>eKP^r~V@7ZR%!7cp#prgWbP&S-s33WDcnO z^4gssXfqe96<;%K@o03Zt)RkET2rFv3$g;Y}sJ}TKT#@;i>+kvL&6BMY zRpnpEo0fZ4ND|U8cVite@4eNBjWC0~kA!Zvy4f=jwB|5XXGa0hYibHVNxoG*x_Dae zzBej40r|qsgt*r4pZG3X2Q~~W9VR>@#o<;`B}k^-IOro8uZyO=OBmSx{F$h+VZ+_k z;uK@3nJ|po_A!GweV~%cK^8G3pXr-O!_3=(4Wd8$%I{M7Qx6_R7=FAU>t6>;5sqT_*d3NkkZ$4jZVn3Oe6a;dF9+ zGZ$Q6E#I<#Fc=NCm7vJ_Nhb;w%#Nd%GsKRN{>=(-7kkB3WFRgbTcNU1{GH+BC@Bt^ zEuL&COBp}AXP&eXGL!qOvA3lPcD5ziFUVU%<5H3=l`ui9#=N_lE!`2v>b2VR#Q@$ zV~ZQDR%{AA!++Sh2uZFVn>__`lX4KV-KK~ONoOX7t{AfHa;8o$$Ak-VZ&A3STm1J7q2p)AH=^torUsZ65BC7fe24g-4c@qXU1cUT&(}n*MR))`ZE> zhsStV>c?A}{FU1eQl zl6u15#zgXu?I4;YZPAy@lOIY@ z_IX~%p>!^Wg1%DDvf*chS7khKRST@nWEo9ilKXs|`rZ8QQv%-gHBr2Ywc#EfXUe~n+=-wjc{c&;loYegXM5{D!s&TNe$~iXu0&a1>k5(GJA~@9rK0-c!WX?V z)#^WKx>h)qruvu-M((^$?e`PAQHL-zhaR;o=e0Oiku4dgdA zCVJGf{oj7>{L$1%)&=Bg4e~VA_I0)PF#e|qh{A)&4^5J^CN2GnhFgrS|HXt<2VJJesq@jd`cz>mn{ zIgO_4^6#k^T!sf5OmSiI_>p$NFASra$WdMxX84OyGBTt~t1d@EA-`v5(mL{HExr%2 zV+L-y8;?P%=dk(RI`7Z!-+$g*ip?<~h(3vM1!{*OD(NUn9!nXSISbz)xPy%{K)tXW0$ubqZU4sM?;)47EX|FSx2{HmE#Wyp%3ggUCDFI99GXp7XId6qq>4(F zRnUHx4{cs75NI93P0Im2FIJ6Paw-I~XXaZ~PNtiuXb%dPZqWX?x{`bExbV@{r2jUO z>tCeX6aM3GINZ_0NGJ|t`7x5Key*SdUKp<8iHa+2>7Udn>>UtGbQQNo&Ov3suEhY$ z-4kvL>WJhN-)t_NNZ8bI*pQVIl=*@O9j7rqc}{(QR~MDY$Ba-E1JyN+7xd)E zcevgj{~DebQg2lj%ecyxqB>QKcRRD&bQD;+xXG+b9n6iKK z$DI)^sFaV_3vf3v8dZpQxE1>6-w#1Y+Ia4HyZo9{-TZsPf6?z-78VY zS5>XpdkKrQG=J}j^kS}Zm@rK^-Q4WlzAdanMK61McWZ)@h0Z+uY$dPp?9q+B9}i zJvaedv8%sqY+TOh#nZcM%k&z4pCd2eFG89iFS#4Dq2ud3_n@Dl9a%R%xf>}IKh5ZR z_B*r}kJ@SR_HxBcf66k&z*aXyVs5*kWifo$8&Nq~_^ZkM%sOb-%{EB#>UZv%kI2qQ zStAg=EejWu>ph}S4p23qdX(Rv9NNESpAu84vd4AygO__lYVuIg!2E8f z)o*)J!}EFL(up13BoFa@E|+dq60wY+@SxJES&Hrb&D}chjR*abH@^FRzmh1If&yv; z)ph5;6<^pe{bX;Zenzr6(CjU%=P}Iy9MLjJ%Aa%}8yGMbN&*CN?Ya@q4W3&`jB^!^ zOnz@RPyDs7Piheuj91I+b6Y;R6L7Y)ej9x~epSLK-jdG61W22ha`cp>z$tXwEidBX zx^7G4A6Q!PIRm#|HX7#e&hLV9n;eTMZ=7KXL!ZWYbCnD9r)ji- z1D{q*-DA!9EbOxMY>VKni*mbhi>9a4Qt7I#o;F3byTQ{p`+mhn{tZdpjaQUu{)vW& z>z~$Ky+%plnl`V%0t5qn9ZZ_{3HKX$E1SK9W1W~;$@VT}lpwNx-JE9lmfg6Li%{i( zcMfx!!o6tlp-`+VrSIGaaYwlzJGo3DIxe!<{uudL+x>+405^A?U>mET_OH)Hkl(*#Z7 z6h9|R0*OWDsvC?6(kDUZ%+pb&hX{o=d-~tS1Xo`Pd|Sg8N(DF@_E$`SLXE98uG5CWc*aMJWN!|Cn?Q4wG@4#LP|4d=N-3$bPqPa^rZqXWp;H#;%Q2 z)b9PWw68ff-y7WghBC$-K^coxwYwU#t(hhsQfHY$vRtWOlZQr&Y_{r2{opuvGdRx9 zF(tfT_jteVs(`4+D{9-$g`97vG)(5jFgc66qx17R^1E{Tgj%x6pQ|Ue%~~9XfRZSO@HQuM&ROpqJ?HRz zL$%&C1>d58Ns<#UWp#_1E(lO40$!5o5dJWcq*cloG&c8LH*KkUeWGMPp^oE(0dBZ@ zXh@h0at1WJP?pv{4FXY?3L@I7aW@@A?i%f@jk6r%XLoBD*Bz>6=Utq2(uNmhjMxf> zY!Az8bXta~YHAB@A98DSByMVN^m8-s#%oii{mw_`zL_}67hK5Be=wZKYuPL*aUjpW z$ga_GRy;MSt@&M(RzB@56hCy?nQlrf zN2+2Z+TMV6K}FQMH@kw3UdX!h6PS;$T?O%hZ(UpNixQq~M8dzRo}|f|ji_FtdJxTV zHhHsAR|^*IH*}7EPJ8@;ZuHD}SVlFtok1pM>S_l{iOWN$6l%owN6G#)^Y9DBN(fan zxa?%Dom&oA_Zn^sJ2-2Ld1OA4IFBD1kxznFHtSBP%I2(0xuUpMC%cvo3cRzZ>z?T~ zu`SjLM(lg>#7?_PO@bGG?f2<|QZkG{Ye^cQ(g8J)hy_Pe$*8yA9%LI1E=|b{-L813 za9DcHClS0|(Z+Bn=KL+6TjCs+5;%Ps;8smMrxtVPYq2B{eVOwYj6QHlKyCIPWi79z zZW}*>Z;Ddfz>_Z5qdwPDzD@x=TugP`uUTYc;sR)yWUr(Ia(x}J#0A2F9F$Hb@O>Px z?j}BM6wn?`;9nQe4r$3Q7to$+$)@JNZ`YFD%74$VjvJi+epDUTK9daPKO;&Aa54>~H$YR1;95;+xE zjaxOhE#k-4a}qe2Sd3d`wk_Po*5l(jF_?^7xwkFU$JRsRI5+5xTdB7#IL6jJVmV8@ zFU+1C5{6w!KVB))ipk>x!)wN*@xjDw#>Df1-8W(0gE7yWF!#Z*{U*!>Fy?v_<^UMB z(1h6t`G(?pU44#JQ6oRd% zA;yJZ`)LS-5bP`saUuk}OGBUv!_d zgrzV{ARXZ${Lc~PALk$pQ%y(Y2*Y&J5mmx4<8(x)Fw8m~F)j>qPDdbwVP5Ho6Jc0j zIs#P$_U@5i1QzwkF9J(^h_R8{9uXHl4O2BK3GW}Sf;7lk=zAP}N3 zuMEVAC@e4ofhq=j_sA~>i+bc2gC#!li@`D;`Nd#)kNje=l1F|qSj{897_8-yUkuj$ z$S(#Pdi0vuKm7>LID%)Gftdrq%rkK8B{;S>_y-sq@_(_}y%%o{-pREFKlb;zI12Rv z-`&C`Ztp1{7wM4)7<^m*SZjn+wpoMmq-?;w>eKK}mudL1ve(6tmKXSz`>~t%v0L`B zTMqVrai0G-HTeHE_sb>tOKA}! zYoRIoQ&Il?SB2%T%D_J=-2dn~@f$Rh#M{`^sS)1ex{jeX(XNV_lo22sQf5v@@G8tT z5bqBbRw;_XK!A+uowDa3m^P?J zVyZZqlTk@B&U-iRFlDOp^ET)^iD{uj^LWZI6JUG{F;EH2sI1K2%m~_cTA&Whz}w85 zHixu2o%#xY$H-WzuM#d3eYlGm=wEed(Q5&;rHhLhNbMF+ZL~cMcs-o|cCUV+rl^xo z#%0r4Xl2}Z`_^k?vf8wV>n?zl^QZ8-11INoQJr=ZHMmUC3)14ppoiT`%9)h>YyM}^ zUd%~-%jN519c_?&Uh({SNWd<-pNGlN!1HsiBqFf`(**mLdV{L&tK4Qo z(|j{HYK*JjQ_{N6f4_4cG&$_w zcCmQhOf*@^A>elCjGQMQE$ix>!PWo0HQb95eP3a$NWJB(_Xe@Pk8!del! zGHW2f=2hpR+h|(TGI^pZ71@9OV^Az(F2spsZ}PXZ^@K|+!wqDIk(4uL?$>&Ey%tr; zxqC{*&|YHOB)Dn^;o8cgB~hQ!1s^{4Ijzy++?jw95XpQ4;N-_+C8T;#=Xyi%sxc!B|fmX;e#K%lrQWy&%W<) zJ=LlaU;Y^oXwsU`mzrL>1U5Fk&bsN;c#uswwjOROA`SGOx)Nd+aZ_QefZN-^q+vtZ6{$93iatF z@8P0*GvRyTHnnqvldz9Qt8}fLT4A@&&Sw1V(ZzZz8D&CLMe(ocAt}A8?xX6fS67Py z9Ds*PsT*N-)R@AmF(Yu@LUh#`U}h4*izrfDpFe>0X9u*j_|>XZr*dSWZ^n5TYY=U7 z+PBYIRoX%9`D|X_y3eJY54_66fs`eg9*CaAS=3yw8jHT*TvS=a!;Cy3oDpxiHZ;!U zY7)*YQJ_vh=c2~w>0M_X7-pF)8|-jrqTW|wuIet90w#1R-i@ob953Hpxw=(7#i+WU z9hyE}zw&(h)6(}Lz{6xAb)s{-Jb=UWo3}ukQ0#cWXFZUzuDS87SlmFheTX@pxpVf` z=KJo^v6<`X)y5JYl~g(ohPobQg0uUsn{WMr8)a)yfPeY#(*dh>Ezc}_H_~+P5H{A5`*h><}(Z$V6{?t<6Mk1mae^hePdE@PwD-V~( z_*ARLq62cvUp#D;-zNCPL&NKr0x-CSN-#o z-gS#WaS@Izb~SZf0GFWcZe&(w`u#MX>8*ce=HB^0WYzlBhQ-<1>74`kx;Ot}_qb{3 zd=p+Y=>Xxyb*=D!4DxPkyFLAt1CP`znjU~NrwvSYd#+0x9TwEy~}o5Px7N)fZ*cpS>(P=oo~a#TKC48s{M&hv?5|y^r52Up(^%` zigI9+WV6sMC(!a*{qFZ}4?c{O(T}3@yb&m;rrT|3+UTuLMxJvg1=neM%ZhC^&nKW7XiKvH(Qhe$2N6K&8-D{*BpK|l43^2?e=9G z0WG(^+8d`A*Q+~+@cX+-BYx-eGwzzev1@Z!(EQ8Yp#)+TgB|AM`4KxIKC;g|kSzJ@ zp@iu3NlBiY{ro*4EsVM8`zDnXAuT4u^~?QDa-kF4>MoXX+^hK!1CqMBK9r%xOJl*> zfO@W9QL~VkwA_WoWOVrFwh?1ZkV|~XLHv0WJ0B=N>>_+A{j1_Mb?vm&CHuudeoS2& zn0daaby~|5!U_4jpEGisBl`cecP?N}Tx}j7porTPsatjY5JYPgFAIZ81WhDWi?J%i zHrCWzg0~NhN+KX3Ljts0pq3J}UQoe+OiM&W>IDID5(-5WM2G~f+yZhNE`lV3gmBw| zcFX0vXl7w{@Mr z%1S#EwK2v;9QEjf7GFPanxcJQzq<@E7yFkcRX6+j`NZYA(<=r{+fbx!LezY3EtQ{cz!K@e}LAc}max zIN~@7=W_o+vS(Fr(f06*5~tbztEvN3$B&41KXP z7FNW}_2QnRk`GHQ*E9bC!54CMRB~)$SRpgFDXG?xyi027!Z4R5)oN5PgrIu@$^XikPYE_djSY9Hs6JFZXIFkQM7vupGDPkf@m6t|E7+(=U&#HyE%LN%{UheQgWT__WFM*J$IN*RNhh_c4fbSw ztI6l)Bcz!c)l98wrXx9wO1?)WPjZW#%ZMZby@t8(K6Bqg=Drfuf4@qst~t`?!=Ubk z3Nw$O`#ndo^pZ^q)A%5gcmE8yEgdN5{gkO*+tEJ*=(Eev?Zh6ajn64e>A@sazY}4O_8L%!L(C~h0RMiCxm^xpP{~ZljK)=v8+kF6#T797j z{HVv|gwOthjx`My@dZm8cjdf=3Eyl4{41vgtgUov7dxS&+qbm*m&bzz>l4= z3WELFAr#0;3ZhgfL<)KrM>H?b`!I24@ideM0r8-HNrW^W^e7?GG1t@*k_Q$_!4twU z(+zmeB3QW-H+Fz)Em3SGY&09?pJ3zfqri9UjE^DsG&^J?6#D~+Zi0YB(7rT6nh1K7 zlJc8fQ%gxT&7r+`f?12{zgBZ{4ejoeZGWj6jP3S41ld=17#HXTHH5Rd`dS4K!PK#xiiz1=mn zlH}1IO6g7rZ#Ui0os$%(+}UmXV_C} zjLB=|pE}sV*VC)3ipH zb4;Yv>WoFA+7IPesL1FeIe#7p-yjF(bDU2>uq_8T4ecrbSD%5h3qVOj1iKK-ZXk7Q zTrC<&?`lI&^&~iHP2+oV%0$YWJ;s%yTD}}>5E=Q&`4kQwAO}`+oZ}#v#sT7?T_xb^ zOHg(RD8VAwN-!HE3GmN4uqAx_3`KuMfKPYU7g&qSDEhap#0?U8i?!HPBKM(lx+HRA zIwuoJh3T9xkkm>g3q?}1m8^CwxmwAp!Iu1Sm};%)m07@t6nJg#>L{<^5YJmk_$_t! zX~MXf0=rX+Pn!jNN`bfbt}f;VhlHmgvNW|egZM3*0(zN>gpo^u z4-++y1c#WVBev;kEk+pqDR2PAP>;ys#F_V})tyiHe-WuSYux^CS~K8X@kywDv(cM2 zEC08>tHveOA&65u=GK9kJHvI7Kf7Ub+@eX#@&XbuYt)F&t5n8RD`)ZXd)8?4UxwEc zkKptdm)D9Df!9O-~ zeR|7s(+M{*uL*E#XZ<5<@l%R^ij}xYB5$=8n@QxpbT#p$!-THRL^_D8?F)ohJ`&5M zj%=l%9V6C}#CnN%F0i`;BNmhwDf$VC@z!r%dScPN<*pODmv8dWjojoW*u*3rCmPe^ zDwVQor7a(SU@iWW8!r65Bh$Ynamhp&D8i`0PEqtK%3p@p5|7_^WUqz($3uyYhKaNO zC+mJ^tos2;5T8!NB|!k4mVpqP5?TmiQ>i3&ZN%=xq8$sbRubDcVwF^l0Ydko3A5UZjgXn9dz z9e2<>?T+*6%t~)I$9-OqK)$1WTR2aBt$3SlFDv;}>Y%3oW-;R|#J=jEmHSRiG^?nh ztgy`gSm)kjH!5FjOAV$54|=8Rdt;K%I+f<|^85Cnw1*^32~BjOll5=Q@=QC}bp-2`8m)KN{!W{XkQ{_X>~uOitU*j&&nt1!PLu z@Xgbwo<8M0RURK~_YYe)pS5Jb<Iup}tUu7xqrcRoFpJS%bQ^y~2SYrxZivTh4VLU-+Cy`eu_dyq&z>X+vKEmb5&$gGk3X% zYkRwBvPfEA$?`MlcQ&3r7}7=}eu1h@? zH*Yrag8%8BEXv8#le630!TMyBTq?giyYo&@?o%7a3UROZ&HkRnozh>^Oiij@VsjS* zfIMm_&D6+v8ZZr*Jb5y3>gdDIJ5`l)<`K$k%O(SWB_X9Zwgeo8ew98I@O%#K8xD81MWt|ASg1LY8v5IRFgl`HhsNZw)*9 zc^x=%02=%aj&UugK7!3G?)yX+7~wAF?18B19>!ysjup>E_=UB2pI3IGd; zLpsM&aAItJ3*zXuEH^|kwfrXXJA&dugmNr}JI5f!(GaDn*S`HOF_=3X$5YlWFi0UA zqPVc>K7K@W|9RPX%13qvDNcqc?tz1w9uosoLrkT4BLhUd8z5RYHZH%;*Wn-y$JpR( zJ<(ryB9Iuag@m~8*bvQKF&;RKT4|_Rfa$D_a)N>qs)c_W)2!#K3{sXl7{ZJ`w{x7GK}#Zf8^``;vxlr8N{oExaci%hkp7udzLVz diff --git a/tests/resources/EVA_Submission_test_fails.xlsx b/tests/resources/EVA_Submission_test_fails.xlsx index 561957cb9a8abb52b3309b419f29582f6aace7e7..2c06d0dd8b874ce9dc02d902d3673e3ece4f5ae5 100644 GIT binary patch literal 37594 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 literal 51424 zcmbTdW3VVow{;jKtkO)U;psy^*$+HyKYoB?_}BAU|lA?cMCBjep%y5s*F+-qZP6U zXm5K_0e-W+z@~KnD4gwgB85a5-V4Ey_ROvvLq5E+RKS67U($AcbqCUOJvThTWgy~W zd&e%8!h63<{SoW7-Z2L7R>T=7AtbI=2Da8)$9aM#PK`4 z0W-Lf2CzEwwvh8Fi3U+4WY(VxS1>hF)C;Lg)i`a;4+6TZ$OiXi7X)?=BjskauymH zJs%sc5DRiQAJkaeoWUL=4o#8Hp@=HhcqoxNxv#>}^Oo9+M_k#^jyiT_D~+KjPf< z`zG#K3ZqvDy6G+FGicF3L<&NJ(WDQ%Bd}ls8p?PMd0WZN?GLjFmqq%zHuK-6hhi zpuQmI{V*?S3hBgqz5u5aVv3`+6>_1ze%ctaUS}MbbBYXgL9xjQUHnw=w$@04vQ)~Q zl?=usPxzu27&N zQKhIhhXbbWP9ys}F3x}}yT&a)I5&In3<)yVz*Jd?KKR(1Ckd_BtUrENyPS#&5O0QT z3Dq>0+OTay<7@$3<4I2ch3V5d*046pb|%VIwL{15HzjwwC*bwDc#XNl$?EYdj$#%( zjwcdeyoRKv=*TVBeGOHGWsnp2$HOiAK2Q2$efJ-J)H zKHqMJy6Bk3L)%@1FQ$9Mk1Tx_@Rdus6d;I1m5;0@!~yi;@2`i=E7j zt&QpaZ5jT7iy_qwn=E<+?;BOMPByTV3#!agi}rItI)y|Zzm+seLzw#P!jBhRn7#Vi zGl{K2f;u;^qm45s`c+d~!R>fPijL3ia0%L6PrN3hxl2wQHM==tgr~M1 zFah#VL>OYPUj1>~a9uzwbkSQ6X4R$dh`*Pz_~2Zs+4^e0I@$0Iu^I+*ce?;@W^M;v zT<6O>I9AO>xGJgs{(xG%KBFA@ht@9$t!)X1!wnXO?^8$`;-OTKa*O61p2a zEZ9t@&;Uze9)iSDL}aomyc`&r7eNVa-}by4k+Pzs1&Qsn@4%g&zVNi<+^rd_{u9AG4n_Bhh)4v|bb^Tw zm%_9UeK{hVaN(3<#z{5sUZ7MqwWZwfL*CFfwXrn?Vsc^-ZpKVj3%d>!y2uZ$ty{NW zTUzrha?}EBre4ybU2*?4NR2V9eDWxbkQP$6dWL{Xj9LiUV-rba*9rImsd0yu=QGb2O30YUODt`8 z11@TTUPX~Irf8S5yYKr;l^F@4Mv@+Wyxp*&G0HEu_~)jVyn*_GM0i;4kA+*Sws+uv zR?zJT$sQmu000y0f474ED*vHeM<;hHW5<8i&Xx97;yNpW?~U%>onmJC;3^otjsK%S zh!p<%*yAszZ1Z=$S^!zA$U137Ue)dZ zif27`l_xeHWxze4cAZwNid;O?n$U72a+y<3UYI_$Eq^s{t~YZOaxQ%CNK?Dw7$^~S2Nys;|PjAi$UOrdtJzp`#ja~C& zW{?8`*IdbRWCgDs_e*#3CSWo>e!NjhW-Ry>4eE4V3QIBoV)bPQo)4n~gGI=0-!XCF zx9i~sL8xPN%Cb&M%*yqhvD^y11|dAtgC{}pLYjW=>NX-b5G(El; z9`Z+ur+M{6Og=EG>=&$(tP&ZwjRC&J9*_G^%>XM#ewqeLhzElz7A{x4So=& zw8U7=+f5Z}h)hec10O&QPCb7$8?ex#eRM_hv1hucGi1v=y}X!z2XoslvNGL<=ELeP zm`|YJ{=pNw*=wOEmJ#7q zBNLN7tXh8M^2fGTCPhwtVDuxVepr9kqGvfWwH(>j zU%c?PJi)Kz&^C>o1l?$%Wps_3Xdh6A&Pj17484Y!?(-hPblX2#Zyje+&a3qmXmfJ3 z>4a!bK;p_=oxeQwpinn*VSAcNPS^plY?6PFVK{D>KB}$VTHLUZVIIRgiuoAJ@SRMS z*jV>uJcCzt8G~Eh@WDumQf%deWn%zhfyuEwY(WvCaUUjR(iBQDo$F$~Y;xfqql$=` zO(oatAtOcaqmC@lIZ$N>#KRwgfJz`m-iLnF;*lv_oz^;0bXEo?g?ScBdxO)Z0mMe8 zU$`+WNF^FCBvqIWu)=u<%kD~(J0=ND_L~&U$aQ{9$fe$b{MislB{x#}Zl9qTVXJRF zhN^WqvIQZEx)vne?_twFJScSHA5_k(uk}KG=?4 z1$D9?dDa(_0)lr8mOb|C{}?f~T4WQ^ z@M3Avu0-scH~=|=nmGVHF^c*(55NXqwAi}gfV^rTARW*O9M`yLTUj9%vN3_-=#y<# zf{nU8GH!b^<_im!^uYts!7g#mK$OYnBIMqF^EeH5kN_8a>3YySrvu%Z6lhMgnDO+xlV^y^x&6T0367B{TB*h7sHN@pjqM z`tw=SxCEr!XUZ0{)N>nu?gQBPw)}uhMug;Klm#g#*C<@c`p^g2U-_(r;Zw;2)yU` z#}e-bepYCwwL903Yl}~$;w{Oi(Ih!B7u$tZ=K zFD}JoBW@g%(Ktj3Q>w)Ao{6p^>vQphYD5IRtFYNRBV|Y+31`*a3J{uY;`~Xit!_Lq zH$wa9Fw`w4mZhV44bNd6Ud`EKTu{w<{8=dK%vjA3uFL1vnCa86DD?K!L#14g7;>OO!U!KPH&(@m;?OX`#`Y6MSNpmR=eSyhVgH)EKbY ze~4kBPrBl9M`O9h@+{pO-Vz{T?B^doEttQrM+FA}2nzo1_!Q&+`>%2|Gd6Z|r2F^u zpKYnSregssiqB2W?d`fcHssET3%QHenH1|9*_utWZA3gQ_HU(8nJnEM;z41w!}*wn zDM6TAxD&4vE+nM+)0Pr?vr9@@FSKad#l|YI=;g_$f~(bckB-;H7OZfBcu63%xjN@R z;ZGZfsdK~!@Zq9mW`2Pbn3_2VceP6r%XqNj^F|EOe~bs*#6ULht*OH~NNwKbFdA#E zT{Q{sh$Y=I?q6Q@GNXHnPprD2%}J7wWq^tNeD>e$6FfZ~c8+F_4iOcm-po*DlqL7z zo2b79e5cg=S@YXW^hK&Nj{dN)k3WPT{2W6%6D)PnQ3pGk?!EJsvBPeEIH0N8>|`^D&`EbQ1ClA1Ro4irLdbeYM)kDiv=>vGqtMsrNgr>_N_wNXFODB_{CW>MRdg^ zcPRxax0iVXWoz}6=?%UC*PkswRyrObG3D=EvKAO(N+AkoY`{eN2)eZZfF}ldh9M;P z))WIFB|>14@SS=OMk3P)RqYzCr#~!}Jo=!WD$=CCkVfbZlyQ3@dS*)mXCD6B>Zmv} zV=G7Lw2{yr4QVCll51-EjF?DsnF98F5k#0(iSY_jLjS3nI6z7yi-)yU!PKhB5v-g9 zG`M~p4BPli;!QCknVZlX^HEAz`oj!LN?NZNpafuATF(Xu8d)u)R{~fg&X*9#M-pVy zdcQ?TZuw^AHz;V$trgIzk3p=4r+T?o(q=w_FyNK~3UXRzZ$C&1S?#8miIyfJ&!BvCL`NIT2xDG2{`3K}snoXU^k`A&_ITT6+H?$V%p2vD9nLb|+71 zCkJgMr63mV^^jlM4b2Tu4m$kDs7CVqDX2zE-eoI~+m|fOS)8&T_sab71>p+}gMWP; zMeL}DodJ{7qxk_e)T0ujF@tA6NoQ@gGBafK7nuhm|L<$w>7sJ`xVEVS6)pb+5PADt zWAPNyQyO8W)u;7tf}oMrGW##>f~p^u49%!@tR)X+hEFmI>2|08Z{MK?YjhrGoC3wb z{)P=wHbio6fm>+m6gOYokJdB%4BXD7Fu`3|Q~6G|HCbG<1_PC8_&xnIrAs>+*9|6c z9KgZU-)v)4iErA5SdLc2nABL9<+8xxu3$kK{KSEkPTjG2NrLeTQuuV7<^4lIU0MqQ1T~*thK6vY3HeJP9CZYUE#DVL14t@StiF{gHO-9 zULbjHt72@oXphIu+U;d0NBR3{LrK~}%{Oy@{PtHA75?q>&m{T=i`Nw0(tK(E%hK36 z@oPR-_i<)1bNQ{ebNf3)cWX$^o4P8N@@sdO`yHZW0S(PBHu7T8xc$|6m%VygXR`V$ z9V9Evmtb_Agt(Zh%%!!Gn5-0@1UKIVJ@D0&np2CF9-r1sTDyCM#0}tZ%}>tPi( z-Gwl_p4C=xRDto9vlM3_2`bT;qQ0TLeiYnvQ+7NVd)#Z75*gfWJedt=H&gbj#l5e+ zM%_^OkOh9+n9DsS?`0JYBd8`00=p24F8$jO%YT{+)cAx_*dK+BF^Xd!lIs1(+R8n7 zBH6d`hg56#X9FTOV-}v%=ouO$lC(K7xoT_m8%p%=_Vrl>a`9Zqop%IwFcwb1`}Qxd8IY*9$9YM3??Qg?JYE4-mv)Q|>$Emjm|-z%#R~Se^`Ypr!K9tn86|HP z6H%u6#A0%dH88Gmn@D8X3PNqIJLdKYyaLTw5!E=tN7HM;fV236)d)=VtXCj4aHB6f zw6+~?U6fEG*i_^zZVOoFv^u#QZL)hIN=~Fl?q~fhaf`MD(t49RI_ks}&9ZtiP_x!= z6JQHbgT04B80B8oYObAB+s3i5wrWnv!0kNkfuj4;-F*#su$G~|n?wA6NS5zrody3d z$#UcU4@j2rpa0h`)g9XnRs^3NUBc6@Wx9=U;0!gagyw_K zC$5BgDQW>k7;{~uv)8-sj+>ZA^Y`yEgT5RwVbI**F#1*b3Jb{Xfk6 z7z}-5G~7t2-MK%EJP>Wlq=cLR;967t3K#EW5lT7%XRX+KN`@2YGV))69CVImY z&Is5%8tp1Bh8Xf=Fu8~D+tl^|_qkz!%?K#La~S+lKpNTpz<2Rnv3Tqh6s>D$XRbIl zs|sGlO1#6)q*`N+>SkdasSPKBK~Q@c6n4zidIM`=llxguNE>Q48gBaWDxV%_g;na9 z19Ey5srzNR_q59?c|apBS|ul!Dmz#TXCDiuT6+rv%8`!M7M%DVa|sy;%SyBZ2J>s+ zl*sQ5#Yp+N1~Dy9!<}W)RU)!Hd=j;+5CeHz(vpMv5k$Y=cl^q?D7IOQpv95NA0+y> z?L-=DlsUX15`4nlhN20q@vD=P+y{m4?}&mB+r@!YSYI*15!j>FP=}<| z#3Rn-FE@hdV?|0h|Hj`V=NTQO_i!@gAmBgK;`R1jVsH+uUdIXnlC;6PHmg;=ow+3g z=8bF&tZA{{X>+6|bD@~J1}U&6`-auO7+Sp3E+i+%_3Kwhq%@>J6q-GX`7~!1hg010 zjO|6I@x;S`n0n>=N`W}WVN{&ByTaO(535tgj*?fR#=7`nR zhK};T@}?y5M$;m0_QT8)yKxDIhm?Lug^tf8yujl5p!eijbkLAU5mcG}*5qMvEA%ZZ##>{ndNdl5p-K1-FYlfGzHb zF^QJXs7p5vll&<#Yb-rQijkYlt?3}IXb>B04plKe4h29fhw_JYg_>$9y_{vo(5r(F zfA>vE?{e7u6z&ESFI&{qCfA$M&6@A)_y_PGEVHLAr4IoC0N{oDA7B~NzgU*G<(SEi z(7SU}qvvM(Td#JZZp-{i@_ldFJUjMz+Xz7<`nM7U*O=~3a&HB zM)5&YJb`%PNe3WH%Be%sI5-Af)4;AeBkJ$xW_E+~+#A-`6l z_)2Ms&MgEHAn|@vo8@4mUE_x|D~<}BGn;V`RNB^FdY}_CLaW+bQKi)wjfSPCDhvOPZR~H_2jaP0Hy`7*u_j zD&A`HX<%SyIZDhn58YmiqrSsqHgz(duHfag$CVUdYG7d6zkokSxbg=&)B7LTXJ`BGj^`_@S9$@@O)}=eVLhmN{t?{ zt)>hAc8JRS^x^AaWA0f={IQSRxfuH?%-zAy*jceE4R_h@zbSWf;rntkd$&i2Z94T- z%JO+1n|)0Dm9de3BaivCkP9#EyDj{n@yJ6(_efh0?rXoM-Rg4ieAYSJYWB)Tci!Km z*&;gPo98;WTcdO6w70&sQSu=0k>9t|HG0+GgxxB85)3C2*yA-<3cYf@$D5s+;da|X zci)~1=2H^+k+g1Y#nN3=L6|&Y;n#090-9`p4@!Q^-|hbMoLs_c67}$k)&OKg*df%C zx|T2`ZbDnXPrmKr@!QS$H%~`g`qA02uTBlF} zKBzeZ(ivf7F3{FjfTl#Aoq!Up5ieLje-uReh;w0tNCYO4N!qnU+|xCqej{OOOcF-j zW4~sAu@hFGFR?lO}({6(F65Si~;!cOs z4MG~B9(TnR#}mXjhJCTxb*y}bA_4~NASw*jo9O*2oh`)9+eIGMwzR#=smZky5#O z8gAYcQriT@rB;B;=m6`NWMolmw+(0D#(S9UH}*fMJG50=Ne>DDK!)-^Kwaj4QCH2{ah)CE+own1 z;HHnR6NK@1NpRuOFAh%W_32GE{ctt(wR>^KpwD+r@n(jYlEgO15%5~o3vZWP?W!gz zKJF5nt5PK?BPO~_P`rF~8i)xz)9shg%*eXXq+!fHEhDF6+|qmAN#D%tU@ry8A}oJ@ zsi{t(i_h^F<*Zqhikwk%FltRg#mYSu-gl~06yy)N@h=Jp5uXV4V-9H5ds@~(mkEP* z6#MvjDK6p!hsr+haG}v zeOZ}(uar681{65LMO>!z2r5JK&lCzpn%sy_Aghz!#Sr^qcvd}I-lpdsiAG~BMR#%t z68Ffq{MwWQQ4iUtm(A)6@HH_oIOaO8q$a1Iz>`t_R)_RoD2rS|~n@t%_k5 zh49rKKVQ(1az@kOTvFl|ngW8QdWztkK_9|b^j)Cw#;JsOG=G8y8*Ah8?6N&g~x2&@<1^^pyQffHKZu>O06>Wr!;#Qm|bsI6Y3u@L>&sk*h0B6Pfd zf-U)zDMqX94$=7c5fhN*^B~NDsS7GLwq_%O6;kBhepwMG#)si9dp@XledbE@fJ(2t z5XW1O)sCQGbTLsfQ_c1Q9K2dM7GuBN{Rdf`G+BQo;~v;9oRjkSzE(Mn!XndO z!jQy4CfT)UOhYrfWS{ku-&EeUltA^_>EENX58ZC^;poo0u;5*LAH>g+gFfK<5DKr~ zVSz~Yv;G(&UEi1lp`?ek&<=Jf6r!YurO@@hF;Y4yVX0eTdzj6C+&i!7&+&gPG^s@&b+RtQ5tHx?U!0P=amxKCRzh2**hJz z8oWPqMGNIS&!GLY(v=rgQQV6S6R;ph zT!LbF6Gy2{>9!&ivBro{d#Y^Z(?qss2;LU}UsMHfY>k$M|COpvLedD^nUQNn4YKx?5;Y)x9MsvM^WDCQ`o_ z;a}>-D{a)fAjOPn39*Ws2lfG$l6nc1I|c&v=<(*0==8&iYi=i3rHeE^UArCjk8l&B zV7;5u?*7&U^G#5$!0t^SF2u}@h@R=Ib8{3h19mte{EPU)^7MWKODYgsU56_Nw($dS z{sL{Lbc?tuSim{BkrQlAYTL_>@un@y8X8VOls;l+%^?tZ_auP;v?WY*=n9gPdNbDS zF}b`Zho=3H3^zji!%El#b}a~HZ@@yy;x-8Flj-I=eeq)jBxoE3%~kwPG0E7H0L-CR zXsgqYu!-jo%8@HUS~oG$9=xbQt>HKlh4!$i)A`6NE7J6>RX;o#KhXa`_%t${i1%Lz z_ec64Ksd|45T5z36JTWLMHR!tmgGC(s^4XI{%8q_lrWJ z8TE`EWx$RuTqx(dn>*rD46V)WrIDHpyzD|NdBRUixKAjhZ2bOSAJgl@jn_>Br5ZHxrpvL@x!AScCzaV<-+2X=^advZr%w?Z>B*rgp)&~ zG|$VSYT3H;{BTuP=!5E&*ZgCTJ5fLDQyd$QugkC0)9`z>Rq?WWe5UEju3nSfchBh<8C}$3uCfW2dm>6xqqFio!A;SdN}I=nvUeS5 z$+=wyId*ap1fd>VTspM!g)=SZSQMGTwDZnxNZBA@DO$yQmw{n;qtX@;xdyef0ypB#Vt!d#%Q zzJtd7oc-O^D1 z?nQ__b4z;qNow_1@cS!3kevdMdHoea2(fnvM9Aq8iR}%T!$w#i%1QuFA;|93Hmz0x zdQGm~gG6#g%$a?{YUzsb+)oopaAo~S?z?<ySj z-E@fJO-+hUk&$s_IZ5t2UF9FuLt{))kle|fBfiySOZ+%zqNL~W*Uw(#vxIU&1tPxX zWJY2)N$z_C@&*E;b4$L?XVv=vR1o0DFgU3(dZG3SF$aDqq4YrS;-c~z0s#NIzI5;Y zk1m3ypulSU+$4slm3jcwVWCDa*{Cr8+7vVd09O*=sn|KG*!iI@4nW0BL&4Psc&PQw zsrLb@$iY*ye~Uu?-!wZbWdEfN2q!g2FVwky@Nd�JT2uN`%u&1OV!^P*k97R3JUj zhgyL@4FUj_dUz@jpEC>pH%+%Q`2WwQ%Kf*gFidTLyBcCa0}+^7A5Uf2oH` z|31%CjX~IS2<4wU1`*Q{l)X?4M#8I_Pa^*VD4pNfm|Fu@V~;3PP3@hF_^H z9W=SJ#_6Y@onE|Jv{c!t$JGv+lw_Le%$~o0RXpJTqJ9V^eMv3VEP6m!&M0h6DT;4z ziFhYy8e6azUcF{|%{mR;1pBr5{xy1}+LCT18&$65usps>(=kxBfi#N&Az%_Dlr)qi zG6fHeZM*=a5`5wf`!Q}(mhjH&8*kI6y`|ZD^UURB*)8tsp>wlc_`<(!j?SYva(|(c z;@TX{I>Xrl>x8Y4!e7)lCvH=DP9%=Mle+d|Z8NP&L6$D#(SfROe~hi`G4 zi}tc>nX5UpYNYwqYZKl?c4i|$<>zn4E;vMg!;@3{-@Hc+=KlfzvHgetHXQys!9#97 zP_VW~h|v7ROh}9!N;9WPoQq{L(zoY`jOy|r(1J)dWOZ)|!hz6jiWB$A5cv^Sefcj# zlb0V<;WrHG(aWce+aN}jF{Fgr64Z6J=>q6-Yjg+u3YX2(i-Ku}h}=+|Z!O*yJ_(ju zJcxsG(g4Rj5Um=kb!1AOEQp)Uy-BI%Gq^0vn#)*I&wVshB?{F)W}DLlFs6$)nCSv- zf>O^thvP1syOC}VEm}~EuEFH<#hMs;whxuPajpnIs_z(+@uC(Bcz}_2oLyxO5LvNo zGi#D6k2G|v4x8DmD;d+t&^hr@K3n1;*c4ve8x-tttUBKDk~fsRHrioMPOe^a7mc#fHA-U{nIb!7A~n)Hl|ATeg1;4-UY<4MFdELPaQf5F=t z-)*xGbe0TY`$8Qw83vBuuniBw8&t^(ok#R)w|-Z7 zZ`xRYz7cvSbu80 ze(1Wyd=ot9)5AA{!EQ{#WOtth15UKrTWo!Aw6=&>N5iTW7vWrOA?giH`QpWz)t78~D5b zHnouATZ8Yu3Z3@ht)(?c`O?N00rwuAB=qAY_7nXv@P0|~>bYxViqggaYt^4@F;zFk z>7kF&s5VZs#H{xFQ0Zj=-BkG7FlqHowgg}n6V#(j(t|Qo6Wmu3oJVD9W2Ej54|PXJ zcI?{gYZ;05VA$IphT(n+tXy zM6(CFS!`bAGJzBgkh22M>qd{H^JvSDbDdAXBr`w>rC%Q2B<$z15@+`LIY_S}>}M8& zgWXP-GPwMTwMMLa_N1#=#$f>OWI{(cCUcntjA{!fKK64x1`=dmB?Pb4VzVz~+|BOq z6~!WGbj18!uMMHSbL19EKZyYQ%nyVBCV0v&=I06~$Q&bp5X0(x7$vYB4$ZLd%;gD4 z0vj?L-}P5Hkk*H=z6MPI^N%cd15<1WCTNyROwq4L5aS5)G_4mwj}hh__eTay@n0oy zogths2FxI$W2r0H0z;txDq$!Q4A?%q=zolX>t+y9^yv{sI08IO>4h<*E*(LJFr;u! zAkMS<{wh{aAR-trwD`*0OzCk?`Tz=eq7VB3s(G%m$5HYaqn?>XjP0(>Z%oU1R0y$UceD#bi6db=8->!NKWr6 z;kZv^up7xa-Y%PrUrgWd%rGota{a5%UdSRMhqke`kkKZG{>DiLtnSCRWx!UA25eyh zzW(%29)`~?=EcV;(c$B zxOgW>t`ok!omTUFNj-D<<*5_SsQgxTxyD|m;9h21-VEYXk7%yg;agqa&8MogLECbo z&ZclATfb<2r;?;m%71mCLy=uG%vP-J{W_wwbz-ugU)2G(p)8l((*aFeu^jBGklAF$ zXS1$wT?|Z4LPo+|BIH-Q=5A@e8L*v^b3W&qe5XLVX#GvHE>PhiXTP;v_LAIQ*u#xV z#dh6=&Q_kylNfscAdKl^2dn z3W#efi$+4_d^%|M_QU6!Ffx#l|JttroEWdkBIa+j2C5O|#n-jTGdj?SxkE2-5q~aN zo$p$Tb*4GtSyl0r_J?X(%$vzkeD+-pExRvApT7$`#8dm5@zALcMby-YqrD2HHR|(&#w;-Q1{1JMOb1 zblue0y|tr$0)iv}6$3#EvO-D$jY&O|Sz%Jg(~2e#-d?njt_>3|s#sWB{?cpG*t+RT zSv>dllr3!<)pGS~S+3)Te>i=eaEojmIR35~T zga#_iw;fS1If)?-z#tc6Rtr%~3&)U+3nJ9zAUePZ_K+9A-Eo%928mx}MVx+9HK?T^ z0_-;8&)HSVAiz;10qhPFCmT1r*-PCI#s&5zgM?&9rb&qQBL!`o zp_$2Qfal(6``ICKxBk;kR<7WKNdwv4&&dDDG9yFa0wzHVN$OAmxe=HX^Ao6vn1}Sh zh4wcjCIlMN22*v5Gch7HGXeSm7~-&w`Iu#J_Xi!RG*rOE9_Q%_`o?Qj32%Kbd^ft( zTa(BnlVNv)63Lj|`g2;`O;Q0yW$dBGW+egFPu z1htjc-wWljQwoxu=@E_3po;z%JI2<-9uvQ-ph)!CW<+{>Rl1@`q&UN5IDUZ_*s{uq8{UV$tkR<~*Ik`-pK^guZ1pF3H@V zk+tFd^)(~bex)&seEeSe>mLQs=qqIY-KzVtE0~cy$PWk=X!;uPzwlRyI^1vSHaSw^ zh2y8Q_u|Xuv!iFZQtPY%{tAuXb9~_1J_5Bs*75m@cn+goN`vY%m6 z-ztcp%^+ixB_$8!>A>5@ZtjWjON7WrfEgScI$^@ObCriHlA)(>p_WPd8|(Ubpk?Hm z)dMfa#K>c7GRLM%{FDCWApGT()2I96VWsBSrJ=J2-lqPBF2Bh=rWo2ju?GZxfK}t^ z0{~ZEog`1yb|vv+H$qEi$YIl`mEdMB-F{q*)4-kTDf_hCQa+JF7GJX)Ak~`Ri*1!yJcJgJ)q{)^!H06y~5{BwZjS3OB&l31yJsLokOgvx)Ip!?G zHLM1Lq_`co&7;JwfqW9+mz{Tas#L$vTyEX9-FV)WyY`IZ*KyfRM^%iqFpPz((|B3C zQx3oFD1B}su9#=B(Ao>(R#)W51a-*LleH$*VARDW;YML3MhTN11g9eq$kRi)t!b2G z41`lQsc_$gFxGcecqJYP8h5e96q_F&vq88=3FH#*0(^ju2}pBofC^Px3kVHyIb)82 zsS>6oU}c;TVrlj`!=6EIIpa+Ktwk4KbRZtI;DenXu>41eEb?4h#f=9ehDz*a-@h0i z_camc`8TXj0sY?r80PElG!h8jwG>J2M|}R zTtMrvZDg(wlOqwFcgd>RA*39;2aVLLJC&4z9b+<`j>{T5J&+s@iR32Z`W!VXuZoOqVZaN~$FE5(E;% z6fB3z@LGlzp8_Rz&H7K0(kpX0#8IATtDJ2gf-pZ*T7;E4ARC?#ATik4MS{fEpRPmO z{s~ld!&2B>xS_IK^SgvTKpkNw(nbm?I%H+(EBf(=Q!nyq^yF{0!b1>2ZTZZyM!<^t z79n-Sr^cikM9q8!$MMp&R=`y1o_mPzyyFvZ=px~pM@=$K?${8EdI6XZ{s zRD(N}EgkL_7(a;9CgFD*hV?BSIc%;V$UZotC2@fr`uZ|(<$p=%6=CCX)e{Y*)Qo0POaD4 z$8f$r8yHK!PDqcLSGoSx1jIz-Odh(XfGxi?>6IXnanc*x?#xSlAHaN<>hMxAHB1V5 z^h__l&Q%BW)q}UNZs;*+*t2u-qAlZ9`MpLMA|)bG34FBdF`|>QtSWlXgXZ(rbJ#1- z6$U@h{C#OZd=a;w8QZ~q}^OR9RY&qZX;36NixdAY*i~IY0loZ!yOuQYv zcQ3;!4d-O%XX*1p^cDW)6~9_M^vwP{PiXZat$C z1|q<|pEbims7Po-m^wocPYy2)DZq6`QlD4Lr>pbB(uM0m*Wd8#`i11%E*7378KyRq zF#@PwWRwF0i-i9ttf3g}OOIJucoXfE)}w0WFxDiA6$HPmPG9T#_8!!_JSZ!IWv9#` z*Xr`+PZRa}M!oyQ(fs8`?nQgF`kGknQOrgqTDJr_vXlXrO{MurhQYK;gS}oaxeV3# zRN$jKO{-PLpcU zu&q1Q?>`^#+yvKp)4_d`yCFrET$cffB$#C4Shnp6asaqX-o+` z+V`KP;?f&MpsRZ>ocS;x0hZkMt-34X*ASe^C_CJeRq_s&V?l+x*R&!h%5C;QARM$% zN|~A1<&VqCmOi5ovK3dzOqk)^FIzZx@zWTgcypN>_A8h^%|Gr^-~aC706?)Ny8nV; z7tH?z1piYFk*)2xv5ffFM@7xtc{SMo>v@-$n9@+gWpg=3d%`|ryN`r|hz#-{Csj{3 z0Oc6tZFja5x%vqaVIS!<2eiOU-Q>yC7(D(;MZrb=n)1`J6H#pbn0#CM(u0MgJLlWm zRl`mF*jzO&>w|%^?fAl2i38i)-X$G5oAZNy3(drHDOaC~E2nz%)$_-}!IqVJb>voo zho()tDw=b{uk~wlNB7PRR%3>p9`i2FWeSOy72&3IoatNd2hVAFI<%!q?iy3o3x@?f znfauO{Hx*~O_hzUtu@|h-<7vxY5N7*CmUY)VmBYRqi-*Rf`_UKb;X-=;SV#F8ru?9 z9b=y?-=^u<=x<-sgjw3B_Vb#g?QAQa51tAw^r_H_E7z^I7VVO4)r#`3M%~-POC#U! zm8rRWjV9xV`W#nuclk;eAd$n%g;`B$Bj|5j`_Xf|~SF@H%+Z<=6P7TzK4&-b2?^UG-^rhmA33Abf?q}OAfN<#;-j%0! z1C`2lUU3v2x9^4TtAPSKEs)Jif(Tw)2_=A58Di7GYoF?P&uC zB`49Ei2*C0q|h07Tb}hVQ(tMHB)Zf}zPo`D*OlY7Z@~ras|^_^?bo7=mWc)NXNpLc z2;l+m%=U`=&P&hjDNb&Q4s>4E)Pw6;>xK)#0^OvQqjJvy9|8DSXJVXX*Uu%8X_@xo z>*t^AjSi~j4scaFmnO@Lr>jZ0R5SIdlOr&=4tz&#ugl`Kua@=8pAJjDD?0g=%K>we z$E!EPk%f&rlqmEQ-%mFet{ne6W*?Lh-_N)`mr=iv&6dYkJ5qQ)rO0M>F7xxuf@3?> z_O@czK>X^juTx!KmB4VE@}H3tE5437q>kj50$yI2Oc$Q>?XC+r-CT1M@{yGgrz!99Lyw4D_k*NRTva<~;Yt_wcvc+Q;6!}}+o;y+@c72M#$=A5U4*3rB; zv`Cu~s~xC!J`VSG@n?GRigJm;{KUg7NMQJxC4b1~Yb_MDkB?@V%M$#Y$6J=a=!W|DQ^Yk^Xi zkx-2F9HL7M=Rb~PxO#$38`<$LtO5(r9yk&H=ey+zNoC=~FGNN50fir2SRXYJvB+J| zhN^zQ#+4=fR%CykM>a_S_PK|=@?aF$m$9|Hjl2qqamG0txoBdKzyFx z8XQ*I_|hNEydHSZZ~2nR)`4x&G^QBR)_D#fuoQf1tDC==8D5MvGPEg*4LMRc72F=a zD8`B!I?%58q8jxS*hV6wFXuo#PE8(7Dp4v4qZl)W`rs(%MvZK1IXv{4VuHyha(=CC znJ~tL`Kmg+X8jSivGqT%d9_)#=VKt}K>t4>tCob>{P&vvJ)ii0v%T7+gHMR#{HvXw zsFA;~+X(opp%+(=pZZJmLq-lij(kzIR@j(%;rDF%`R-Y{&z|T@4{NlzhEa1|AGy}MsWT`*@O45jH{wV zB=ZY}e_c2KS3f?C{fj~5z8j=0J|g}Sv|nlo?|X3%>0d%$PNZRM{=cH0?D;%_jQpG8 zKgfKN+oW6AqQih~?JRt!#R%x$ymIzC<3awOrihfZ$L@4}nh9Cf8pFV&nK7h8{-(m9 z!RNMf+MS2lpj<<%9l0HYAMRMs*|gx50TmJQ%@dHEZxLMX)l8tWA$Psn?Znr_}&4mr&s#K=K0gI?tt?cSy?$!=uiGccj8`5YmpD^ zZ$l!p2tR(c62e)fjdFxQ2=b^Im!2|V=UY$_9-QMG0-nxwIZE`44m4miQ>f&LUPp30 zh|-}Nnk2r{dxRNH)~6uYBkQFgmlaj5L~uBoMEsG$ihEDtx|{jI19_^U8sa-vJj`cA zeG$)lWY^{8q9UuwA03W*5PuxC(7^sF^iSK%_F`aPwu&8@vN95%6!mH~Z9*#aI{-|il{Yw5i z67NA20o9Ni@m(?|CO%f50&$P5f}ETbq&f=wa1@t#`Ia`8j~IMm0hw{<&Xl_z4#S*k zuU^JHoIZWXdC{lyuxDuyusly2OF#_%Z4S|J=O&W7b_>G%*7{=B;#xltlcx1WlEt-j z0A@V=g{H+dn?EKN`~|MXHK8A-U(1W{=GP}anA^=Sg3Ygy-k9diFNDpnd%ZBnn_ldj zU6*@e&NaPo175dzVy-kj>>~ne0wEkA1Q`JQ1_*fuLXZQ%`alR52tfe=8v`LcAOs}< zYzBnzfe-)y*a`@F0YXp#z;-~0AP7MX06PI8!XN|<0PF^Yh=LHb0I(+zA`U{(0l>aM zh$IL>4*&-OA<`fO0{|Qfgvf#ri~w*r5F!skJOzN?0wIbZ1QP%p4TLCz5X=B@91!vn zgkS-H6M+yl5P}r|P60yHK?pVgI2{Pl1R>Y~U>Fdh4MK1Lz+ZuoHy{Kj09*is=z z0N`REL?48B4gi+}A%-9X7XVxhgcySm+yHPr5Ml~K@BqNgK!_O#!3zMl0U;J31RntW z9SE@kA@~8{ULeE^H(2=NCYBmv+_SrORl1qS~b&u{xn+1qV2pr6Y0^hzP=<1ZJ{ASbHlAh^^K9-VVUl- z2K%>*A)Eli%EgYhK>x$@9MP*>xB5UG3%5%Kl^a>)*D#X8q=x2g_{nV}hzAZYgc~A->G+=yc{)QsNq7ms}byt;RJA3?4 zo|Pg%cYz6=C;bW2{DakF`JX@BHr3^MoS+PPfNLt@3Y#}+2JA?q~X)FaCbdw04~!`Eqc zlc{IY>7ue8XS#6oY8p#zkZH;lQ9xshqG9$f zt%p!0Wo*TK=Be@IPCJ1w_Z`#<|Tl7lO6U1CWJg$xB2%3iCN(SN-2?IV*Tvh zJ=x$>FVT&f8SBK7*lpxgX{4cP8Sm<}$?*aQpZQJ8$(1P!80=CQX!DBU`wo9RNf2*C z7-RMsJWmF`uI#+*)88L-on{>Cv2bM9 zBLEbo5WkXuG^<776zk$133fHakS_w=Jz263KNh}WmsEQ6 z043ny{7AQRhlg6OGx?=J5=G?$vWepN&&2^^PU+E)@Ekp#V=`juK@$rRc1%YS4mBRZ z(cMmm^{F(JJ5zfc5jl3%;zVIze7J?MZ7Gjpg2{)nO1u=GHs%L*tK2F=$SKm&XRQhh zEG)&*wfp?$)fyhe(vnZdYWoRZk}j7mDUTUYDV0=%Je7bzG@|vLvGVOjC4xR`oM!~ z6Dl|pmvOkhI1>rTbsW^{-Y)oJ2d;@KS=}MDH<*Vd8;(_=l;3 zed1dO&}^2&7uzTIn_7TriwQQz23L_&hlhe!L}6tK6dzoE2T3K7@f=P(8?|fjVca*} zNp@k8T4o5VaoIS}ZjdVuzj;ue#6(NwNK_${vz^5l$I3KocBgzbS{9F)xb01xdx}l> zpf3Sp!H=-TU$E&2Dc3)lce)GNyj`E1U`~PH7Y6X!kOvm@e&eT9g%R%4%BQvw+YMHRTcaA#hCfg*T9BmNiu!I)Gn)1XkM90qowkZ){)`0kOI%+ASypT zY}a9~g0{ILj&g>tJl?jxL3l66#wfoKasi8U<5IWie3LC(c*jh{OfhwCsOwD0qig;! zx|Ja_1j7F~YVLj2i)Vb{#JWUsxyTm53SU#0Vu4LnNhBqsESPJ1^^B{U2ReJi z%cE$hIDGmyusV(+yQGHG|7_GHX1+PPnVXHG*SuJWPl;Sph0tPY3Lkti!}i2(S#0_U zN%*}S!L;OA*jTTAz*m+toL5}`sA+-bAr@VmM#L`+J7t)*9L8>HIBk+=+c9NSIgH7@ zVayQ17QrIyf?IEmFtxxGCuHR0n!;OB?J}EiOz4X7ek$qF5)NO%am_-=C;yfz+iCHB z_WDQS*+F25brp7W{S0mC-u0iQ;L$M2A@u^TedY*__e^fqLsS%M z@lsA|-wqkl<=$}z@GhhSGl>^Y9pAYe@oHSXJ##8(M*Zq)D3XZ%nU1YuOj2ualT^Iu zV}$Ga76RV@%32OQ33xxnU)I`qk{38Bd7Am5`sMiLj83KQvsj}ABQcu(J*qlC^hJh{ zR>6REclNDMn8tp*4Ihn;ZhAiT^@iD@d)DXZOw6+KPPJRcG>`McYtCQ&mt0%&(kEoK z=$gC!!rGx*?cSP^gcmy}7Oxft?K;4Rf}W3s$y;ROvcKt^OxJ8VEOy<_p4Wjd1b2V$ zX(P%LWGM#v|>j8t>u^K&>xVZtWUHt|8b<~N81 zVa^zE?1-Hg_^C5^3ZDN$77|0!!|)9MPunXerwBfbnHOSvOKk)`mRD*;9J#NXKM-KA zed>dG?WkPkfkpvk`n%d3I*8SI4*`D=QWt&l=&P z(Hv}?_i52h;LQ$-4Q>Bvo}Bbsr@E;5Z2a^(-aKK`CVlp9)vdCBznw0|P`*sc+h-+{ z=Joh|_RlPFju=Gp_~o(b)v*Q0^%ut}u)a2%%Q&5TU$lb*4qW#Q=W>IJ5i9*DC0po~ zwr$UAyqnL=Ok;(YM62D+-1fiLSjuKq|IDE-*IR>UWX~oTVL;y{Ji(>;aK4v-Zqd0N z`s<*B%YvaRuhXqR3zT{XJ^TE|)!z$$&aj<`VRJmuZNk#}JV~Zo?j=cUt(m$5Fn@kD z-?6|*FT0izF^^3oE#DzG^XH=Dz`<`t#!-Y8Z>wf;Gsf=ovC2M4ZN5^lZ;9OEcf`*+ zaje`5@4yheCvtbjjlrf`rZRJ%m=2FC^zn)^r@93$Y19RCwi879yI8?h(WOF4G^}F@ z62IRHiA(4JWd^=5MBu8-=lj**=SsQq3bR~FJs}^Knp(BhhX=udr8@PVKYH#%PGr+u zExMf%*0xB0R~{!9wyPvr{6;U zyoP>+CR@x6mOU?w4k__rdxW5vk6`U-uFz%)_!GP^^z=H+)WZs8r)Hzir(Z?pTB#Y% zr5DO+Rbg~0uHX5pP)^=1q+B`t&qn*gq1;X8RlD!==5YBGQyz6XYGpH*_653pL&>d! zoC<9sFI};z1@+!gvJhNHgfEu-JknjQtc6@xtXNse#`SSqb%JZS8;?R>anGe*#M-Bl zZml4sFjvBOcN~fM3|^IvbDoN~-wTOtB<3laDZ7ZmseeH(KxDOtilKCwt-mYrPhf%l zQ&*pAo955s6tSM=4PPI3nl;AvwrtZ!!Wx9tgzC9MSet@dFMlX{duEzJV))oMlx8!s_(z65xA9eL22cF` z!f~xkGPuzBSDlH6^+JI(8Qcd3vkh@L zMqm!-g%(R>{X0MgU(NUhG3#7I=E*l|a>6D3_f8z;Fp zlU{$1#r6|;gkg6zs_-RY^o|5C{t2_#h43(c*}*NxgWFIuRb@mTW6ehJs9V*u=hQFI zri(gB2axOQS)!*MLAN{Xc?ul?huFGIe>6`mkAL=i2liw~rj!%X@_e@+7pYQ~4xlo) zJdqFRuEqT-O$Xiecf{S`UGx@Mqz=Bt#`5TUm*$X%iFc(4{j8PNTvXTk_3bo=L*6Z; zcDS{3F=~q~!Fd0iv7!TaKHN+p!WhEd3GHhfJ>B5R+jTc9PaWShotni z6g=396WjP{%2(CzoPcFaX3>ar@Yi)Z5{pl>MB$yU9V2G3uxjp?8x%G3Ob<^>Nv~926&1z0E;54`PZd+b;TI6sdeVkyak?tETp_GMrK@=s+ z5w9KTq8>u~2L0T?;C4G3?tS3!({{eK&KY=y+-6mX&!m+ZhP8KeQ0EIw|rLLJc?48H8*RjTGK&5Pqka>s-|=mT)#Me71goR z+z;s_o>>JnTuw4)s`H}_Ekdd)eTvzHn*~57YfqXn)1+3%C$}@6G)L|xwRtX>W16HW z0Ij?9wBypXa`t~V@O+u7B~AX38tSSwYxxFezs>p`jn*8gEO!0-Gmffc10@gZJvBL+ zAl#X1$`z-FPx^`CQPj{6I7jT?dN>ExM*#vuRO~5ceq+|~ZFxc*Krs9uCcY#2-F83n zvBT-!Bh4%{e%m>mG`*fHumNXNC&ncsadxQJWF%CLk?$G)x$UED>u%M>T<7V3Unj4{7Z9D1-7@Q`>B;3=M`ruLR-h!9CYY2QJW1TO8IBCqtc! zI|bbF=;G{P_KZ=OW}+rSR2DSyh+R!R942uti)ffgT}mB`1i4!u(F~t;-S{t;vV-9w zJ4sgUJcP$a$)2yHb(a+S8q|he{WW9k#wz)8+Ug2>Uk#GIW1q~?97cQ zilKWF&D_Xg^=VcFW}`^{!Y$IIMzw;=`Fn`vZ|W{l7sqE76M`;X@7M^1zsGv^aQ5J3 z;8R6scEm(6P4D42a(7be6?F9C$A?*`ArUWW2q*|)-=+1`Q`-{iD2=-6*|I9?_F-i| z=eX=q!#L|Kh)o%TS&&E_h9-H7AJMVPuppW#ao|IX?MU17*_h999SV%1u_UoH@Z}@U zhxry337^f8Sf?u1(M)cZ3DaZMV6bqCnp|ZGW3%Iww|wgRwIY#JXMS4!&>_IM-#n!q z%@XxEg9F07l^xNaeDd|vi011u4JM)9`!x{@mBcIqf(%t(`Y4Z6w+XTjiN&@ypsq{5 zg;~cvHaDN|%8&S1!zH>Xl^Lh!M@_ggF^&1#JE1SiR+a0AeZwh4Q^u7}!)>k6YbVY$ zG(>wWC)pr=*=y|2o(@PM!H8G5BReO+$v3acNki0q1xIWK9o_3G$3FM=l`7Sld11dl z4^kLn1_k^Oae6%Tx{ThzCY^~Dqj%cVvKG5iq&eo=0 z#6EZf%Lg)+UGiG!FyyH-F+J-a(35wxfXrrICa$3{8BqXx%M{p;WPQ%`;hPc-7KQhF zEi)PNt_Ed?tG}1~6GOKVV5C~9R9^YI`IP1OknAU$;9*x=IkOV26}4Uu ze|@y>U`xd2&VRT9p!-Ge5gzxlwg*__264)SGcj~kXNa_4W%WZD_6*R{n;s%>vWs^x z%?K&O6bjy?Bkx?MAKfpYz#3QS()uFyAf-ZSCKQYHM=ud4JfHz+W{L4|2L18Qbvw?< z3yJ7gM$^73zfw5RtIDsoj3`BFPK6o@duB%%e`!3mnznsLk7UfN$p3}!H1P;8+-ET9 zn^oEGW0rntTG~+hkG(Ft>$E- zAFTGrB_Gb+M!UaC4_d+6j8T3{;^N-loQXC0L{dV0YrfG6SQ8B>F)?GVkWq+I>m;ON39fxv*UBcjQt#`=vdUtv;9uXZa>FB9(Q*zFW$w zR3lb6Roo&Mv-v9ZNu$+!pB*LnYHB6R`cT#)HbwGkfg!qhX2dp5&pev!C%3=TnF~mr zIgD?QptV*d5!!jib!ZRnem2yg7WXFk?9keODU{`R9k$D}RBn?l6AoVO?>RGVn3}rJ z4y-gsoRs>;n>L6K@kNYgM1ph(-ZEF?VjStV%BgfdjW&23obqYuJ(i$jyix|C6xX*5 z(-ccl(J|fb@u{o{;Al23jz!-M;Tg?UnDQEFfM0onRX!wb^=bLgEB&e4s@&DtFH1-* zw;3!rW*yJrIa>whk8j9BFNRZa;jO(w6oA^6<(-L!U~n^$qT?d))M@UwuFQ9+Dz*mw z8*Pf}tRbqaO6j>gyYfxLjs>3T{u#B`km)c$L>6I)K*MZXz0Z`*$5pmeU^$La!_CNJ ziI>Bhyl-rGfRqmbU+{$Z?6vWH-ih6x-Ehp~{b2(ArhM3;awyowmhwwh=Tz^Aw_x({ zVzX(!qplo7=zLxS=G#e72oG!$5$Sv;+F-J1vr{~5`HAdJ+qbGe0r*y$hDIzHpam_y z*!IusYoRG@9lneBC9Gp*0@YKPH{6&w9|Lkfij=&&Ys`0>{??Fdo5Pgl*`}8g@MnM= zev4zSzq~b_@}&WlK+%4J**9@2P``OP*(2+cb+E>4p4!z`gvTsSHYDnuJ^6V%xusdC z9_be`vrnLs+V*pj?Cikdh5_=KvtOR19k5z?QLo5 zXww_o?QNa0XE8nYlrbpk07s)o=r+UYyy?1j`X{-j@)))^P{@HVw+2N>;y!S-{+(D} ziDMhMAFGIYy~07MWA!#n3T+7|p4o^WxG_Dia~Tk{NdLld5VF5v?!cfaIp~HrBC`_p zREmS;Lxj&8|BU?2NP`}R15Do``0Rte0=4lRi^m)dX2Xy0Vx#lfs7jM8_ZQz5Qa^l? zWZ^IrPL6oe+3<`;?F`t)F=zCe#qLqRDrw#jh=hwOn`+Oc#qHAQ&0`}Zb9mJ$W(Yn~ zz;)cY(n3eA^w0`qz3~f{_Gm!wZGkI%nP3}FQS8ryMGCeAzNEPuoOs0w4quJTO;T=B zyq3`3dB5-D_OaD zB=6@P$-Gg_5j0{)r#=zNtrYlLHaSk(tS-_%QVr*%^-tAjn)T`O2m znyJb=BMXDBlpOH7Bi>JtE4Ul$xS8)8C^^j>ijg+Q)VaNNJIGK{)Rs?{r^_E`{wBTe zbF94L9+Ug5i6vzoE11~hOT;EBX~QO+j8SUqrSQ3!(u}R~cu8g`F*tj8iv?U>9sD3u zOWWC)n7&hH=B4Ia;V+P)Ey(kfl6oFfv2L>IG&c>^EwwMS8RJfE&FNw zoYzBFayVmANUiZ9U$nypi_`%zgVb zhB#u}j_k`IXbHbaKJm9ZG(Un2+=j_1qVZL?7$aIZqAA)(b4xCV;T4{a3v=J6=gfsb z(%q%v<(4O8CZY$ zG=|MBK?V=@iz3i^_bzIWHg31rQQf8DpDl$ME3Z=#k;aU{8|U z@u2c>(+Q~&>%pbA9PDo&l7CQHAG(?RiZnvqI^#iET*>?1#qiD+e)FAP27TuOyQd&q zCCS9oa{d4gT(}7U#kzXYC}h9Wh#ce`X3U@cpNN>I(%+gmzlN<7!Lk?1!A1J?DkX zK6BsQe@PWb=M6>82v{){3#sS&06C@gXSp5SlPh%as)_=|aJBWNC~1bsA1b_x0HP4X#@-nyd^ zPcTo>U&Jv}h+K(6P=jqM3*xoyu3W^->uW^eUNqofi>CwRP@)hit2TJ&`!oadJW@Bw zn~3i{@KK07jJ+%EImeZF+7GH4-lj6b$2RkVgyaOZ+mv>yDs4$-0hW)Zb)w0t#HHj7AzmQ)=ttA;o!j8)cHK`ag%3M722akhybA+l+Y z%rNhozqJ!c|LBBfznOm2xysN&GWA>kvjBbg_?OGYhALDh2NrS2vjS=SJze7YfN;aM zuA=hDkn9F>( z=NS8|sZTwIbxb>tmynkUZjxg^gRc>034jm$MAU}y9x?&vNTr$Aw`^9DDsy}^y<{XbhVy$`X$_*ZP?-w~1JpT28#^Ao(=4~}_$CXAHB`}z&8p$cab zV(4TA(bh-j^+f(TRU#uLh^y(2_Y4EyS{E#8fVda=+11UX^^K#k+SqME3wwrcJp=hf zhI7OENW@<1xGO&QO3;3FjQB18BR|;ZY%!$epk8MB{sOnQ@7JS@ zcRrAMIvC{6fFHC*X}Y-xgVY%5f@B0&44IRd{03fW+@%_mgaRY59?!`;a1Wpeuw+L%2`5HHTH5S=mjla z#hPSa53Q5^wXpm)LnveKUWAeRqp<$tXi1X$D{S3uUVFKFc=Oq~d)fUJWE8411nS}^ zZaw2-UW!B=aMnLnCI6|O`0pA*k~poQs1XU9J=`n9&9gC93LaC@ z^Lnq!B~PMizNP?rw`nIHcf~1?I+#U~62&ADE}ypp>ZDjpdDmP)?#R`tq@_ypW0Kgd zT%X*gyYaQagcre9r*DC}y;+H<(Tm$b5y%AV)^Aeop>(^M$9>N^b7O5sBJ=0Aaw!MI z-(kJ_c>j}-`8?A_K5gAzF%I}b-AelrNQaicDnaGJ%5M)x`Z?jrVeNzYoxnGhG>^B+ zS0FXt?TCK}^FIz;eXx1aj1%Z4tCgyoT!6pTgCDIHtVWt~>e$#pvutr=en4j^k(u>~ zJ@2jcTiK)yoPh~1e&Ay}q;f6I^&5|7^x{s|4fVje6Hr%Skg>tCZ)5>r^mw43qtG+Y z@7Zwu$FNp3n?&*gT-xAkCDTLQAF*Q{75Q3KfFvKamSp0&uqLkplA?{VD!}cP{j=g6 zg65^kokdy5d@Tu+XEj9w#Jd^)?s{wI?=7uz9^nl~-$%SM-XF;HACKd`2f_asM=KAH zzlIT(sOHkmPyBZOhC=0-X2_tGRo-Cp(ObD-4@GzR)c)w0ddp`_7iag!cVux9Z*CDT z(K>C0R9-sbMkc8ka>kL7hf{t_2{QY-e;FzypLhgpY!#(>?t=kc-w6*R?CV-)YvLrX zD;?_#mh7I1Cgj{(u|zNX*uP%D6)&sal6bZ}`Mw-$_l4RgtnS4~&{z6dE@D`8E$oi3 zPIzS|$8-vpHsHh57uQi~{uuZExq!uK9ZVKh!an_R4wv9(O+?@>${OnBBk~9}$|SL! z{u}ws2WL7*&dJxd3re=~IAFHrx_M|{nkZQvzNjD_N zm%u#R;rqChR+j_?aBnmAO)45YIQaIRTjvx+^Ej8k)pu&L2L=^ z8EwP1?EClc`Sxhc4+x_Q+b7)=?;vU=G`w&+2DD;Tc&7w2tpMksm)MKPjlKG(j>-0Y zp7!A!s+rx3;xJ}gr_l%1To$SA%9~EzXbT-v8F4$D#-+CQ&NSMokPR2W?#_b5$ z+PsZ%C5IK(j-KR8R}QrQCUbm?(tNU1+Ei9T)h}PC{o`rRZ(h}@K{tpf)k}Dh6s!Lg z5#I3vo&3}2gUqGi4Cw z!1p6` zzah(^yhSEOz=1@Vie2QD!8ZA7P^3o}iml}mU<`RB`qDvTyY}SCr$Tj{vZ|EX{Zfj3 zQUi4$hOqVwsMq=cM=$-Q$?^k%;lWa#cOiJfL1fnCPjx(&|4dQwne45ze~MBjj&%fn zVI9-KjPu2@Bwmb@m#1D@aX%1^_%l0``MqG)x@ediH+0j>Y#dxShcD#WeS32I?(@b{ zVxBQc{85YtP%jEq!%SCxpMquQEqntT43mg%^=j2=FX4*<4Wsf%3?8oP1-Fb8MV!xa zwzkk;dzd2HqVs_C{YGS}60a4UTg{)(v@N*HmR6{1Jor&Hym7WbqPvf@r~>p+t(djt zRg2`#%(rVCO}9=l?UgKDJ@{*=Yxs8#OYVo7`ag~3`VS)V#r_&^B+|v(RP+mvLsr=2b)mNCOEZ4%r7L7?BdfZEf0e+w=OF*e@Cn%?0YP))JAK`ujCDV=XFIT z5&17fkcp>eN92sRH;u7xHoS#1i8xR%B|(kwiQ>M(r0*Wrhd)Q=MYY@2C1Dr2vJA&B zlRQrxH(Z35F0N2_0q1rCS3x0j%?qN zcX`Uf!Q#}($};GLb^SoMxjQ46UTovUBsx|!X`0RB;dHAih0X*#dmnkwb{f_YPH}1gIU-JSZGY ziyYi^N>8ZKckeiG(P!U#&QBXA#b?}JG(tIT#(T-ARr1ESr3lBgo6dq)#V$Fi62Qow zhi1T;G`{nyGg^P$mx-uY$x;82;MX@KPM;#fF|kI4JLy>0It3fqs@bg-fLy>v_LByC z2c5ur_9YtM%Qq?w+$&$Ed0*z<`Fb^Hqz#u2&7-?*|2R>boX(q7{Mr^s^_JS@bMMup zl!S#vhgD3?(rxW-pd0863#k{;Hkkibc4p81gS(aS3FXF6tDmBw z_cSYTRM$AQaMEjhXvj)56%fXU_N16YoZ3oH@Rf{C7PVTX{MUW=*d`NQa;nP>UL1m`F&8fXD7xbCIDJH1PA9j5Grm4|7_6q*OBtrw=*>!G{ zZ`TWcZ}gLncjM-yIl0r&gJ=c~@>-FbjuWcxqBVPdc^sK4w-Vv|qKO{#fphPrT$I8b zm9j;d`DhZ;;s#1Jdn#D^;|9zAgxYTg3LfWD2h9=)8#YY?SIoWRf`^s& zgbkbh>k&@AIcf8kmy49AZ9Hg=KfYd9<4yC^B=BguACu*w6ykGr&1NK7lb}9~r0 zl*+0T%bzlmi?1Ys?a>Pr!o1D9zb$~GE$#KRiH7C$lh5ZpQErvAiH!5?tZ2WNvckOo zqto>S>}DO(Ggp1{VIZY2C-lJN`r&lnd{CRcV+XZ_@`>|=8&NWdr&`P_wkvG!b zR5>L#&`kbVIcjLt<=F?6$2muLxYF{@`sEqAMHiZA^=GOCmWE7H9{H+kTi5r1fub?U z@@(hmyI-lg6>MSSb43Q3OLc3%%6F3+d5&0-CM)|Uq-h{GK&v}_MZ@DT5PgLRs-uo@ z!&&^M#i`CL$0cbNUC*}WTsu4O?xvqPvM6uLRXpslUsbQ)Ho{QfP~vcxU#~BH)o^8$ zpM5jYkUkxBIy(2w+(o(gOmY6b$vjcpMtQk2ZSGlay}sMaWAldkKlPba(|)qCl@8#A zxsvQqH2p4m_HO1rd86&-&A2`54%%+I;W=c#Dz_P}O_1(*1ww;L84a$`A}zj{2J^pg z?{B*n9Dv-swAqy)Jz0-Me$zb4RJ0t`JjeDXo8yK1aWU43l-!>c+Cz5If8poufB`5S zW(rzOeFLf((gKNF^T5l;{DOACTS)(k^z6v3>bq*^B{f0m@U7|&)_qC0Z-xBQr_l7! z>GKfJI*K{1gquL?CE@tAp-aMAv;Ru#`Y!d_2a$YxDa#K$>hU-j@HiIi7A7LZ z)h7I!Lo+TV{2-e~K~^|F&>2rkI4aCp_2?IIfHU6BuaE1+Ob5S+FN>LmbrqM3nT~Z8 zGYa2z>MCv)z7x_W3@>~)rcLOSO@sA6BT5c)c0Bs^I>4Fp=H4oC-n@Suz`%JU_1fq< z#r&GWAgI7F=&haEmYtaup3$LxG{g+k%-1^=hc^^aQ%%f8UCZp+OMe z|1&$i={s$S6u$SYG4hWy_a~e(%bPZf^!;BbW@+0~G4lUEvt(_1>_-0o8}{zboe&Mm zokl)DgT7583H~?j2jj;}^$XvP_P$qJ){n2%rtqpfH*43~vQ8Rb%S+~E=QL}V-?H`` zUrS2j#bGyV=ijo{9$$<6#JkR7*3P(P%`?8{oyc3!duI7)pET-B?*8MP@-1c zrvbRQt++%1&|5g}tv~K59Cz0rx(ml$@W)+);|}>l7vQ)p(68Ajb!n(sHmX|+N}Y|8 zl!8veP_>fKL>P)o5~>M9t@Ta2Cp2?B6Xa-}gZbs+on# z6NBn!p=!mTW?86iF{oV@YC;U^mW4uzL4C7OM`F;>EEKjl^zA*rI5h5_UmTip&o2&z z-Sdk>3-0;Fq2>4d;?VkgesO5q{T+$_`yPky`Ng4=_x$2eP@IibVoS0YeE&K3cKf*gcjWMOG3-<`6Z$C_xzI3wtId_XzxA0By{+G)Fl5sj!4+S{YLKo93lQ3 zGf4a;B)*@2m%o3+|HWdjexg-mH{UAqFgW1sATq%J<{Bw|eM^5oNe{gJ{jZzub1g{v z4m*D$S$qF}?P+AU`!w=U-S_N3*Vq4=|Grw_zFP6VS_%4pv7i4pHTeHE_p>GBGe7?y z{{AsY*dHX!+P^Twzis6GFKi9y^2l$NrftzSI2UHixy8oT;=RZ@UD>CqL@j(FyO? z_B{mJ+kds{f{P~@S+ZkjGmajA)}^+6vt6dK@TLgaiBCR4Y~~ad(q2 zG`Qm4X4nSk$dZyYmPMCMt#{lF`QDxW@v5WJdZ}MX!)M=JVr$lN{n~eZvd*H9?#T(ZBMgFSsp;)eyg(nm0A==lqY-orI&owC-8kAh8Rt+N0F(d296@ zW$Q<`{oBqmsfP}zt+iZ+yZ#{j1@rs!Z+fSl0_~)z`Oa31XLr-`+JhHD&zCO`_4Po? z1!eQ65h3V@LEh%WL*%D?sbrFS7RgR+O~$po7x}Fw7KQ$}+7b@kZ%$;7?#eY+hn#;} ztQ)R}RJoqI71k{Hy{xF^gRyMwT(yPz!W29F9btKO{`ts}_8*JuPwr~9&T3Bxvde#% zZMa-4`2zq;ggEtqQk*BH5@v)(edX=DLbuzeVUr`l9cPQTtz?rme8IIP-p0*{FFF=6ayc<*TOWcSPMA{q4!ZnXd&9h|w~ADfqnUq{}QvX54)L zG+OLA9DT}cMtGY8p1q6RNx9?hAojoWRX=mwI4RoZd#qb8wfrL_)V#e=Fe9sC$=}T4 zGUuxM&7ETUq1_0)lseRJ>O!J93t7ioE0WC(n!BwRH1h{bQ1e|D+--Z`!H=AU==F}Y z?+in!_D;3^`DE*N^Ym?NSx5WOWvMPV^}ey86WZ^G65fmEkf7Cl4nXx1EkJs;y~Vu} z_ZGecEtzmd{gOR-zA4y{v^t60FBcDV*6 zt&(2-?Tw__gR`}E8v5k8>aw5H!?K38y$5v{3KxsQJb=3z*()(_?1YlqaZ~@sh4|VN zz|15{09E>OZGI0rm>bg87Sy0om%)?saO0D=*&DJgUZ>7k+Zso(lc2rYwbxww>5xJ; z0k|^NVo&1elXd;&ikSoz@1n*c5pL`e>5Np{rHNTKA6zWET!k_DAs-`7U;o zO2l_BcE()|j@sTbSzvO{%bN-9w!`I{3lGoQ$2hgOv%}NJYZpGRf7k@xg?O7UWc=#h zstVz;_~s{^DVjJj=+gwGZ)|NjDU&kR>>TDu;^>~ewl6{-99nuDU#u??G00{S;Ak7t zC%bu}Jp-HeJn7rRLV~OQ91q!^I{9)+-GcvedyzPGZ>?s=z&JF(`cGW){sXrck-ywt zdXX0QZZD}k2WMB$gfc1uTgb>}g0X3-=gqceF1+1ak}_;tO801Oe!k$UDPnhmBXe%= z9eZsK%L>#q+0^+OqOh@OpFT+gPF0SeWN%R?7lZSYevOMjDRG`0ZY^yC0H25hIyNUe z>vo#R;yO4xd*^g0ws!4e-TGwp_{Q1)vcK>SeFz^u-9VO3I)eoWJ*tDfE}c6%u8)7_ zA!7|or-zUnnM0GkK5J|CS3%7=?a13>NB?Fsp3w^PT#Ghl=)y7 zBC?1+iQTnt3~atz?Oi|7bUMG{=|wS{(yJyJi70HPiY@tBf8do3Q$_?+Y#zLah{XupW{B#kLHsN0YHP+dCsdOYO5c+O;8fwtIgS^Gr78b@vo zjl1rJpK`Ly=^BnhXuQ1xKckK&FD{ZMMu)ZrV-=Sw3-L2@vah{s18;6(*DmVbOi+d# z-&j8oLL!K`>oYlymD+SUf*tJ zW_YB0bAE+R%ig&SJNc$DEz{}%4VS&WJZ-yJ+5V;Bem1P70Y7LwnZ2D%nz&{y=Pmnn zUZpt!|1-H=wV^wCsFuTf?Hwcu$^?l7d$;{uDqE}=DFgs1jy>mvx=$_{kk6L4P)@r3 zhG2$%a!eY_V9T@U93;l=!@F=b=p0M>BJxtT~qNE6@BxLI&QX8yur+C${$j!`om zkb6?ZUeYO?TM$$jbr!vp_4Va6W5cxUIrrI6VM1f3KgWD&`?RhFm>2wcH*fShPoe_8 zM22P9J8U4vbIrfx0R4a3I~S-Xu62(OP>RaCFSr-_DmE7XDQ8&0kBIOP!jq=CD+fvpT`@kMtD+_p#chbA zmJ8HP0mYxh)!C@VCdd1$*oPvw;#M;s{OQtm%U_Nodl+8lmP>O9SV zS#^N=$N}+J&I6*#$=#U0yIp!^QgYJ1eW~Tvmy$2-YfUX*cFDdht>N;G-D#GG4(!@g z;hAPTFfZP|y~WN>cqyw?kWTHgN-AD=CYt3fYKddXqL)D_547!!E)7DBiT1iqJ!I+% zxkANzMcUZ8y7;+H^S-9eFQ6_MZyE6cBVtih#7bSl9W&(Kdq~Nhx!QYkbtQA1$QP;P z7AkqZd*pmZ-rUnv@_w21YUXbcd=Xbq zCC4U)6*6<1l4_mE+ho?R3`==ZtycX^#C37EjFyKLGjsQHGpJ;-%-VyQ+mKYNQ}fSS zJ1{Kc57w-dZ)0E8^`$K1(H+Q_0ruk+T_*OBj)>nMSG%fbwjf z$A9Zo$V7^nNU0jrsxh4!b0XiQk_}YyGWSRaMx-kv(u0ZoS5*c>xAyZYzu;tkpQLI? zQZ*&1_HqRxE-vB<&RWl7M8?WjKTxj`aqFq%ZxdG+FlRO;9djaoDzje7i2N?;m{xs9 z#Qo4c@`QZ#edf%)-0!GlUzzpC%$W^I$8_p74rF|z+2@w8NK>@xDLVBOCvq5-e49#s z+dXmyBa#U83g)gm%w6}GyGqpmdX-pxbEMrzLEUqe7M?+OdJbagCF_*t@j)b?{>gA# zI#AC0F;la$qkl5cXP=?pirv+io>rREgGs1iEATu$e(9%^VSPHF<^9;KS;-rm3=G<5 z3~a@EG^To`xkU&G1-1dE88v6LfWYQ)XYVt;8Fuied{H75m`?wqZ`#TMAk1clHgHmp znWJz0osPrxR@3iJoTbeFmIlnGpY5CGF#yPH4r>Gd)?;?mcXvU@iUzCrf{6>7uH3?Q zh)k~C;%{N&H*Nvj*clEG%w~r`kj-fjb%a7rgFg2nrkw%f?~%M3-8$}(LK;KY=@R6P z=AY|wu8LIqbfy`i+Ui@_k0O&NxA?wnyzv$wU}r3YV1IT91+tNWC>08kfj-3%&5QFs zN}N(W38g_mJm^poA&Un+OGtFgEv1CyiG@<|gmBD!4W2U(R&B*i9pPGQ6k7_LOhfrc z+4u)2@GU#zV+cOM4p|Gueh;GSARrNRD2JS%4vpG6SRtLS z_8R~0v(WeS3C_>Vr|Wax7poTQO>M-r?<%laVv|V@4mv9KS;s9Sk+kOI< zAAz!e0;NwP*m+>~6Oypg&8m)cv@^6+pOD^ZUZc-BBv$G4rebmJM+z)dZ1Oh+eD7yrdVi9Z=n2nKy_-7s10zQ6{ zVz?;8-*+(-*hkXC0RLKG3!VCN|CqdyI=Cmt_vR%0XDh7yVa zkh*3dRw!asgZ&5Pk8W^$wH!3Dk?`quFx@U&Wg*1R3-Lb)P&H5mvGrfWhF;y&t(BD`!B zu~sD3M9wwXR3SblF-7>9ozt1$czr#ld-+BWUDg5m`z?#j$K1rcBE)T74EJp%k0^!- zHj*Z(qSaPnAyxR%HN=w+GrA@d=^(DQ!w9i_B$i1X*(zZ>Myw-=^%C)1V0#BfEGW-W z3}X`GV_3iN=)BvD-Ntk;-{hftb(0%o6O(wHXiAT(RLQGVbNKjOTge~XaQ5Yn%EvnTY2du#ldVge+#c*cbLB450N)oKbJ~`;PbbE{^wymRpuY;vSP4*MOE^B z`8*G{M>6ZsziS*GH5J+wv*v^+FO4m$*ddJTt5BZG3l{flH|U=ukNxL>G5t>MT<5X@ zrJTev<0RMZM&mrX?`rFJUgU8fD`=b9vF@a-fJ_-1PCaq_(Ieg?)sew=|FBiFSPKU1 zt#YFq>I?OFVef=or9I@FHK=dfDH;fJPS##((ujpsI25dJvq}>$>wnxjSaZ~d+$M8X zR9=CeYuN1ICFmCW;>3n_*UQi3PYrD`&7~8si_wU{9X=!jOf6}rlFtEQ<++QT{^N4Gd&!PD|FQs>vMTdXD zs#q01ch+l;_8F>zsA&Zput*<~EOTU2hjn9!cvfS$s16=Gqf`L%N96 zKg~n0UKWeFT@n}rmUf5FP*kytf|l5RX~#}>P@LQ3a_;$4cuP&0%ylVRxxc%j0j7N> zQHVQrUZ7WSU|MyGYunw&{yp00KGD@>v_Y}X(1jbSit;t|sfIS+<$LnZU#~dV_kBZN zqpu{ut6;~WM_JmuvbSSnlR0cjPKWYyo=~~I>wHf|YHAZN_}^~Jqny3GINL29ZI4AM zWQtqUI&b#mKC)vhk@Whc_V>*1l>L%sD#X8>JYzlpD574ZnVOhR0ww|D#*G662k(8} zsji$plTcn;G!6i)2`RmiC15}Fi}tCI=eutwkGJnd&gqa2>S&IcWMS_SLa6WEw*kOv z1Y{pUCpg0iqn)4Se^_fm$Wku01b`QMey_^Hw}zYr-g^%0frh>=e9?r_0OW!8+WQs& z@MS0f5R75PkFXMd-A^Fezh~&A%h9g1j&iacQHeSY0A6I;zACvBUN+p%d(R$$A2jsM zXaf$~UvLZ~+UiR9jHJw+Y?QLdSU2*jE?jmr2Y}hcF`XkRI59TA261>>78|47e{aHS z2|+phm(djNbfXj}W0aiKF2PM=Ft<33rr6ImN+BDgxU%WK0wTJ9S@auRJUsK?&8uzm8~D;WDF?g^tEB!%uDqjY1tP-z^{r6Z@A*=ud=|S-G_^(zR;f?Rt^qx|5c54 zwD)kC(2*Y=+kJ<5?|Lb>IvOxsd~zh Date: Thu, 8 Aug 2024 15:09:19 +0100 Subject: [PATCH 02/11] Validate the run accessions in analysis --- eva_sub_cli/semantic_metadata.py | 25 +++++++++++++++++++++---- tests/test_semantic_metadata.py | 19 +++++++++++++++++++ 2 files changed, 40 insertions(+), 4 deletions(-) diff --git a/eva_sub_cli/semantic_metadata.py b/eva_sub_cli/semantic_metadata.py index af20d7f..e25883d 100644 --- a/eva_sub_cli/semantic_metadata.py +++ b/eva_sub_cli/semantic_metadata.py @@ -1,3 +1,4 @@ +import re import json from copy import deepcopy @@ -22,7 +23,7 @@ CHARACTERISTICS_KEY = 'characteristics' TAX_ID_KEY = 'taxId' ANALYSIS_ALIAS_KEY = 'analysisAlias' - +ANALYSIS_RUNS_KEY = 'runAccessions' def cast_list(l, type_to_cast=str): for e in l: @@ -47,6 +48,7 @@ def check_all(self): self.check_all_project_accessions() self.check_all_taxonomy_codes() self.check_existing_biosamples() + self.check_all_analysis_run_accessions self.check_analysis_alias_coherence() def check_all_project_accessions(self): @@ -69,12 +71,27 @@ def check_all_taxonomy_codes(self): self.check_taxonomy_code(sample[BIOSAMPLE_OBJECT_KEY][CHARACTERISTICS_KEY][TAX_ID_KEY][0]['text'], f'/{SAMPLE_KEY}/{idx}/{BIOSAMPLE_OBJECT_KEY}/{CHARACTERISTICS_KEY}/{TAX_ID_KEY}') + def check_all_analysis_run_accessions(self): + """Check that the Run accession are valid and exist in ENA""" + for idx, analysis in enumerate(self.metadata[ANALYSIS_KEY]): + json_path = f'/{ANALYSIS_KEY}/{idx}/{ANALYSIS_RUNS_KEY}' + if analysis[ANALYSIS_RUNS_KEY]: + for run_acc in analysis[ANALYSIS_RUNS_KEY]: + match = re.match('(E|D|S)RR[0-9]{6,}', run_acc) + if not match: + self.add_error(json_path, f'Invalid run accession format for {run_acc}') + else: + self.check_accession_in_ena(run_acc, 'Run', json_path) + @retry(tries=4, delay=2, backoff=1.2, jitter=(1, 3)) - def check_project_accession(self, project_acc, json_path): + def check_accession_in_ena(self, ena_accession, accession_type, json_path): try: - download_xml_from_ena(f'https://www.ebi.ac.uk/ena/browser/api/xml/{project_acc}') + res = download_xml_from_ena(f'https://www.ebi.ac.uk/ena/browser/api/xml/{ena_accession}') except Exception: - self.add_error(json_path, f'{project_acc} does not exist or is private') + self.add_error(json_path, f'{accession_type} {ena_accession} does not exist in ENA or is private') + + def check_project_accession(self, project_acc, json_path): + self.check_accession_in_ena(project_acc, 'Project', json_path) @retry(tries=4, delay=2, backoff=1.2, jitter=(1, 3)) def check_taxonomy_code(self, taxonomy_code, json_path): diff --git a/tests/test_semantic_metadata.py b/tests/test_semantic_metadata.py index b72c9f2..1677799 100644 --- a/tests/test_semantic_metadata.py +++ b/tests/test_semantic_metadata.py @@ -152,3 +152,22 @@ def test_check_analysis_alias_coherence(self): {'property': '/sample/analysisAlias', 'description': 'alias1 present in Analysis not in Samples'}, {'property': '/sample/analysisAlias', 'description': 'alias_1,alias_2 present in Samples not in Analysis'} ]) + + def test_check_all_analysis_run_accessions(self): + metadata = { + "analysis": [ + {'runAccessions': ['SRR000001', 'SRR000002']} + ] + } + checker = SemanticMetadataChecker(metadata) + checker.check_all_analysis_run_accessions() + assert checker.errors == [] + + metadata["analysis"].append({'runAccessions': ['SRR00000A']}) + metadata["analysis"].append({'runAccessions': ['SRR00000000001']}) + + checker.check_all_analysis_run_accessions() + assert checker.errors == [ + {'property': '/analysis/1/runAccessions', 'description': 'Invalid run accession format for SRR00000A'}, + {'property': '/analysis/2/runAccessions', 'description': 'Run SRR00000000001 does not exist in ENA or is private'}] + From 2c9774fcdc67c11b201e4031be619a80065157b0 Mon Sep 17 00:00:00 2001 From: tcezard Date: Thu, 8 Aug 2024 15:42:57 +0100 Subject: [PATCH 03/11] Add Transcriptomics and move Platform CV to the CVs tab --- eva_sub_cli/etc/EVA_Submission_template.xlsx | Bin 37012 -> 36701 bytes eva_sub_cli/etc/eva_schema.json | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/eva_sub_cli/etc/EVA_Submission_template.xlsx b/eva_sub_cli/etc/EVA_Submission_template.xlsx index db76f4cc7b73204999edfeae13d0aeb75cb49293..43631944462b0387fc9fc4c89dd61c291d2e96ce 100644 GIT binary patch delta 23268 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 delta 23596 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 SayXT7D3MeS{ND-xVg3hd3W+xW diff --git a/eva_sub_cli/etc/eva_schema.json b/eva_sub_cli/etc/eva_schema.json index 1a016af..11090e6 100644 --- a/eva_sub_cli/etc/eva_schema.json +++ b/eva_sub_cli/etc/eva_schema.json @@ -159,7 +159,7 @@ "Curation", "Genotyping by sequencing", "Target sequencing", - "transcriptomics" + "Transcriptomics" ] }, "referenceGenome": { From 4e55a3c9546400242d4879f2d3387015be6452b0 Mon Sep 17 00:00:00 2001 From: tcezard Date: Thu, 8 Aug 2024 17:37:54 +0100 Subject: [PATCH 04/11] Update sample help tab --- eva_sub_cli/etc/EVA_Submission_template.xlsx | Bin 36701 -> 37072 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/eva_sub_cli/etc/EVA_Submission_template.xlsx b/eva_sub_cli/etc/EVA_Submission_template.xlsx index 43631944462b0387fc9fc4c89dd61c291d2e96ce..5af6d62305bf4ed65b9875c48d5298ddb16f7ed2 100644 GIT binary patch delta 21451 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

iu0#bI79%LkAI9 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 delta 21046 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 Date: Fri, 9 Aug 2024 12:09:29 +0100 Subject: [PATCH 05/11] Add default row number for project --- eva_sub_cli/validators/validator.py | 7 ++++-- tests/test_validator.py | 36 ++++++++++++++--------------- 2 files changed, 23 insertions(+), 20 deletions(-) diff --git a/eva_sub_cli/validators/validator.py b/eva_sub_cli/validators/validator.py index 246c1ba..cd3ea20 100755 --- a/eva_sub_cli/validators/validator.py +++ b/eva_sub_cli/validators/validator.py @@ -451,6 +451,9 @@ def _convert_biovalidator_validation_to_spreadsheet(self): self.results['metadata_check']['spreadsheet_errors'] = [] for error in self.results['metadata_check'].get('json_errors', {}): sheet_json, row_json, attribute_json = self._parse_metadata_property(error['property']) + # There should only be one Project but adding the row back means it's easier for users to find + if sheet_json == 'project' and row_json is None: + row_json = 0 sheet = self._convert_metadata_sheet(sheet_json, xls2json_conf) row = self._convert_metadata_row(sheet, row_json, xls2json_conf) column = self._convert_metadata_attribute(sheet, attribute_json, xls2json_conf) @@ -460,12 +463,12 @@ def _convert_biovalidator_validation_to_spreadsheet(self): if 'have required' not in error['description']: new_description = error['description'] else: - new_description = f'In sheet "{sheet}", column "{column}" is not populated' + new_description = f'Column "{column}" is not populated' elif attribute_json and column: if 'have required' not in error['description']: new_description = error['description'] else: - new_description = f'In sheet "{sheet}", row "{row}", column "{column}" is not populated' + new_description = f'Column "{column}" is not populated' else: new_description = error["description"].replace(sheet_json, sheet) if column is None: diff --git a/tests/test_validator.py b/tests/test_validator.py index 9a15f04..710cca7 100644 --- a/tests/test_validator.py +++ b/tests/test_validator.py @@ -82,19 +82,19 @@ def test__collect_validation_workflow_results_with_metadata_xlsx(self): {'sheet': 'Project', 'row': '', 'column': 'Tax ID', 'description': 'Worksheet Project is missing required header Tax ID'}, {'sheet': 'Files', 'row': '', 'column': '', 'description': 'Sheet "Files" is missing'}, - {'sheet': 'Project', 'row': '', 'column': 'Project Title', - 'description': 'In sheet "Project", column "Project Title" is not populated'}, - {'sheet': 'Project', 'row': '', 'column': 'Tax ID', - 'description': 'In sheet "Project", column "Tax ID" is not populated'}, - {'sheet': 'Project', 'row': '', 'column': 'Hold Date', + {'sheet': 'Project', 'row': 2, 'column': 'Project Title', + 'description': 'Column "Project Title" is not populated'}, + {'sheet': 'Project', 'row': 2, 'column': 'Tax ID', + 'description': 'Column "Tax ID" is not populated'}, + {'sheet': 'Project', 'row': 2, 'column': 'Hold Date', 'description': 'must match format "date"'}, {'sheet': 'Analysis', 'row': 2, 'column': 'Description', - 'description': 'In sheet "Analysis", row "2", column "Description" is not populated'}, + 'description': 'Column "Description" is not populated'}, {'sheet': 'Analysis', 'row': 2, 'column': 'Reference', - 'description': 'In sheet "Analysis", row "2", column "Reference" is not populated'}, + 'description': 'Column "Reference" is not populated'}, {'sheet': 'Sample', 'row': 3, 'column': 'Sample Accession', - 'description': 'In sheet "Sample", row "3", column "Sample Accession" is not populated'}, - {'sheet': 'Project', 'row': '', 'column': 'Child Project(s)', + 'description': 'Column "Sample Accession" is not populated'}, + {'sheet': 'Project', 'row': 2, 'column': 'Child Project(s)', 'description': 'PRJEBNA does not exist or is private'}, {'sheet': 'Sample', 'row': 5, 'column': 'Tax Id', 'description': '1234 is not a valid taxonomy code'}, @@ -244,19 +244,19 @@ def test_convert_biovalidator_validation_to_spreadsheet(self): assert self.validator.results['metadata_check']['spreadsheet_errors'] == [ {'sheet': 'Files', 'row': '', 'column': '', 'description': 'Sheet "Files" is missing'}, - {'sheet': 'Project', 'row': '', 'column': 'Project Title', - 'description': 'In sheet "Project", column "Project Title" is not populated'}, - {'sheet': 'Project', 'row': '', 'column': 'Tax ID', - 'description': 'In sheet "Project", column "Tax ID" is not populated'}, - {'sheet': 'Project', 'row': '', 'column': 'Hold Date', + {'sheet': 'Project', 'row': 2, 'column': 'Project Title', + 'description': 'Column "Project Title" is not populated'}, + {'sheet': 'Project', 'row': 2, 'column': 'Tax ID', + 'description': 'Column "Tax ID" is not populated'}, + {'sheet': 'Project', 'row': 2, 'column': 'Hold Date', 'description': 'must match format "date"'}, {'sheet': 'Analysis', 'row': 2, 'column': 'Description', - 'description': 'In sheet "Analysis", row "2", column "Description" is not populated'}, + 'description': 'Column "Description" is not populated'}, {'sheet': 'Analysis', 'row': 2, 'column': 'Reference', - 'description': 'In sheet "Analysis", row "2", column "Reference" is not populated'}, + 'description': 'Column "Reference" is not populated'}, {'sheet': 'Sample', 'row': 3, 'column': 'Sample Accession', - 'description': 'In sheet "Sample", row "3", column "Sample Accession" is not populated'}, - {'sheet': 'Project', 'row': '', 'column': 'Child Project(s)', + 'description': 'Column "Sample Accession" is not populated'}, + {'sheet': 'Project', 'row': 2, 'column': 'Child Project(s)', 'description': 'PRJEBNA does not exist or is private'}, {'sheet': 'Sample', 'row': 5, 'column': 'Tax Id', 'description': '1234 is not a valid taxonomy code'}, {'sheet': 'Sample', 'row': '', 'column': 'Analysis Alias', From c92fdfd88e752c88f0d667eaa777e977aeef766b Mon Sep 17 00:00:00 2001 From: tcezard Date: Fri, 9 Aug 2024 12:10:06 +0100 Subject: [PATCH 06/11] Fix test --- tests/test_semantic_metadata.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_semantic_metadata.py b/tests/test_semantic_metadata.py index 1677799..2b533df 100644 --- a/tests/test_semantic_metadata.py +++ b/tests/test_semantic_metadata.py @@ -43,7 +43,7 @@ def test_check_all_project_accessions(self): m_ena_download.side_effect = [True, True, Exception('problem downloading')] checker.check_all_project_accessions() self.assertEqual(checker.errors, [ - {'property': '/project/childProjects/1', 'description': 'PRJEBNA does not exist or is private'} + {'property': '/project/childProjects/1', 'description': 'Project PRJEBNA does not exist in ENA or is private'} ]) def test_check_all_taxonomy_codes(self): From 5ff31758367ef64134b8af6fc8459225e198b68a Mon Sep 17 00:00:00 2001 From: tcezard Date: Fri, 9 Aug 2024 14:25:47 +0100 Subject: [PATCH 07/11] Update test report --- .../expected_report_metadata_xlsx.html | 2 +- tests/test_report.py | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/tests/resources/validation_reports/expected_report_metadata_xlsx.html b/tests/resources/validation_reports/expected_report_metadata_xlsx.html index 46df980..fa9e51d 100644 --- a/tests/resources/validation_reports/expected_report_metadata_xlsx.html +++ b/tests/resources/validation_reports/expected_report_metadata_xlsx.html @@ -19,4 +19,4 @@ .fail { background-color: #FFB6C1; } .pass { background-color: #90EE90; } .info { background-color: #dadada; } - .error-list, .no-show { display: none; }

Project Summary

VCF FileFasta FileAnalysis
input_fail.vcfinput_fail.faA
input_pass.vcfinput_pass.faB
input_test.vcfinput_test.facould not be linked

Metadata validation results

❌ Metadata validation check
Full report: /path/to/metadata/metadata_spreadsheet_validation.txt
SheetRowColumnDescription
FilesSheet "Files" is missing
ProjectProject TitleIn sheet "Project", column "Project Title" is not populated
ProjectDescriptionIn sheet "Project", column "Description" is not populated
ProjectTax IDIn sheet "Project", column "Tax ID" is not populated
ProjectCenterIn sheet "Project", column "Center" is not populated
Analysis2Analysis TitleIn sheet "Analysis", row "2", column "Analysis Title" is not populated
Analysis2DescriptionIn sheet "Analysis", row "2", column "Description" is not populated
Analysis2Experiment TypeIn sheet "Analysis", row "2", column "Experiment Type" is not populated
Analysis2ReferenceIn sheet "Analysis", row "2", column "Reference" is not populated
Sample3Sample AccessionIn sheet "Sample", row "3", column "Sample Accession" is not populated

VCF validation results

Checks whether each file is compliant with the VCF specification. Also checks whether the variants' reference alleles match against the reference assembly.

input_fail.vcf

❌ Assembly check: 26/36 (72.22%)
First 10 errors per category are below. Full report: /path/to/assembly_failed/report
CategoryError
Parsing ErrorThe assembly checking could not be completed: Contig 'chr23' not found in assembly report
mismatch errorChromosome 1, position 35549, reference allele 'G' does not match the reference sequence, expected 'c'
mismatch errorChromosome 1, position 35595, reference allele 'G' does not match the reference sequence, expected 'a'
mismatch errorChromosome 1, position 35618, reference allele 'G' does not match the reference sequence, expected 'c'
mismatch errorChromosome 1, position 35626, reference allele 'A' does not match the reference sequence, expected 'g'
mismatch errorChromosome 1, position 35639, reference allele 'T' does not match the reference sequence, expected 'c'
mismatch errorChromosome 1, position 35643, reference allele 'T' does not match the reference sequence, expected 'g'
mismatch errorChromosome 1, position 35717, reference allele 'T' does not match the reference sequence, expected 'g'
mismatch errorChromosome 1, position 35819, reference allele 'T' does not match the reference sequence, expected 'a'
mismatch errorChromosome 1, position 35822, reference allele 'T' does not match the reference sequence, expected 'c'
❌ VCF check: 1 critical errors, 1 non-critical errors
First 10 errors per category are below. Full report: /path/to/vcf_failed/report
CategoryError
critical errorLine 4: Error in meta-data section.
non-critical errorSample #11, field AD does not match the meta specification Number=R (expected 2 value(s)). AD=..

input_passed.vcf

✔ Assembly check: 247/247 (100.0%)
✔ VCF check: 0 critical errors, 0 non-critical errors

Sample name concordance check

Checks whether information in the metadata is concordant with that contained in the VCF files, in particular sample names.
Analysis A: Sample names in metadata do not match with those in VCF files
CategoryFirst 5 Errors For CategoryLink To View All Errors
Samples described in the metadata but not in the VCF filesSampleA1, SampleA2 , SampleA3, SampleA4, SampleA5Show All Errors For Category
Samples in the VCF files but not described in the metadataA1Sample , A2Sample, A3Sample, A4Sample, A5SampleShow All Errors For Category
All Errors For Category - Samples described in the metadata but not in the VCF files:
  1. •SampleA1
  2. SampleA2•
  3. SampleA3
  4. SampleA4
  5. SampleA5
  6. SampleA6
  7. SampleA7
  8. SampleA8
  9. SampleA9
  10. SampleA10
Hide
All Errors For Category - Samples in the VCF files but not described in the metadata:
  1. A1Sample•
  2. •A2Sample
  3. A3Sample
  4. A4Sample
  5. A5Sample
  6. A6Sample
  7. A7Sample
  8. A8Sample
  9. A9Sample
  10. A10Sample
Hide
Analysis B: Sample names in metadata match with those in VCF files
Analysis C: Sample names in metadata do not match with those in VCF files
CategoryFirst 5 Errors For CategoryLink To View All Errors
Samples described in the metadata but not in the VCF filesSampleC1 , SampleC2, SampleC3, SampleC4Show All Errors For Category
Samples in the VCF files but not described in the metadataC1Sample , C2Sample, C3Sample, C4SampleShow All Errors For Category
All Errors For Category - Samples described in the metadata but not in the VCF files:
  1. SampleC1•
  2. •SampleC2
  3. SampleC3
  4. SampleC4
Hide
All Errors For Category - Samples in the VCF files but not described in the metadata:
  1. C1Sample•
  2. •C2Sample
  3. C3Sample
  4. C4Sample
Hide

Reference genome INSDC check

Checks that the reference sequences in the FASTA file used to call the variants are accessioned in INSDC. Also checks if the reference assembly accession in the metadata matches the one determined from the FASTA file.

metadata_asm_match.fa

✔ All sequences are INSDC accessioned
✔ Analysis A: Assembly accession in metadata is compatible

metadata_asm_not_found.fa

✔ All sequences are INSDC accessioned
❌ No assembly accession found in metadata
Full report: /path/to/metadata_asm_not_found.yml
CategoryAccessions
Assembly accession found in metadataNot found
Assembly accession(s) compatible with FASTAGCA_1

metadata_asm_not_match.fa

✔ All sequences are INSDC accessioned
❌ Analysis B: Assembly accession in metadata is not compatible
Full report: /path/to/metadata_asm_not_match.yml
CategoryAccessions
Assembly accession found in metadataGCA_2
Assembly accession(s) compatible with FASTAGCA_1

metadata_error.fa

Warning: The following results may be incomplete due to problems with external services. Please try again later for complete results.
Error message: 500 Server Error: Internal Server Error for url: https://www.ebi.ac.uk/eva/webservices/contig-alias/v1/chromosomes/md5checksum/hjfdoijsfc47hfg0gh9qwjrve
✔ All sequences are INSDC accessioned
✔ Analysis C: Assembly accession in metadata is compatible

not_all_insdc.fa

❌ Some sequences are not INSDC accessioned
First 10 sequences not in INSDC. Full report: /path/to/not_all_insdc_check.yml
Sequence nameRefget md5
2hjfdoijsfc47hfg0gh9qwjrve
✔ Analysis A: Assembly accession in metadata is compatible
\ No newline at end of file + .error-list, .no-show { display: none; }

Validation Report

eva-sub-cli vcligeneratedversion

Project Summary

General details about the project

Project Title: My cool project

Validation Date: 2023-08-31 12:34:56

Submission Directory: /test/submission/dir

Files mapping
VCF FileFasta FileAnalysis
input_fail.vcfinput_fail.faA
input_pass.vcfinput_pass.faB
input_test.vcfinput_test.facould not be linked

Metadata validation results

Ensures that required fields are present and values are formatted correctly. For requirements, please refer to the EVA website.
❌ Metadata validation check
Full report: /path/to/metadata/metadata_spreadsheet_validation.txt
SheetRowColumnDescription
FilesSheet "Files" is missing
Project2Project TitleColumn "Project Title" is not populated
Project2DescriptionColumn "Description" is not populated
Project2Tax IDColumn "Tax ID" is not populated
Project2CenterColumn "Center" is not populated
Analysis2Analysis TitleColumn "Analysis Title" is not populated
Analysis2DescriptionColumn "Description" is not populated
Analysis2Experiment TypeColumn "Experiment Type" is not populated
Analysis2ReferenceColumn "Reference" is not populated
Sample3Sample AccessionColumn "Sample Accession" is not populated

VCF validation results

Checks whether each file is compliant with the VCF specification. Also checks whether the variants' reference alleles match against the reference assembly.

input_fail.vcf

❌ Assembly check: 26/36 (72.22%)
First 10 errors per category are below. Full report: /path/to/assembly_failed/report
CategoryError
Parsing ErrorThe assembly checking could not be completed: Contig 'chr23' not found in assembly report
mismatch errorChromosome 1, position 35549, reference allele 'G' does not match the reference sequence, expected 'c'
mismatch errorChromosome 1, position 35595, reference allele 'G' does not match the reference sequence, expected 'a'
mismatch errorChromosome 1, position 35618, reference allele 'G' does not match the reference sequence, expected 'c'
mismatch errorChromosome 1, position 35626, reference allele 'A' does not match the reference sequence, expected 'g'
mismatch errorChromosome 1, position 35639, reference allele 'T' does not match the reference sequence, expected 'c'
mismatch errorChromosome 1, position 35643, reference allele 'T' does not match the reference sequence, expected 'g'
mismatch errorChromosome 1, position 35717, reference allele 'T' does not match the reference sequence, expected 'g'
mismatch errorChromosome 1, position 35819, reference allele 'T' does not match the reference sequence, expected 'a'
mismatch errorChromosome 1, position 35822, reference allele 'T' does not match the reference sequence, expected 'c'
❌ VCF check: 1 critical errors, 1 non-critical errors
First 10 errors per category are below. Full report: /path/to/vcf_failed/report
CategoryError
critical errorLine 4: Error in meta-data section.
non-critical errorSample #11, field AD does not match the meta specification Number=R (expected 2 value(s)). AD=..

input_passed.vcf

✔ Assembly check: 247/247 (100.0%)
✔ VCF check: 0 critical errors, 0 non-critical errors

Sample name concordance check

Checks whether information in the metadata is concordant with that contained in the VCF files, in particular sample names.
Analysis A: Sample names in metadata do not match with those in VCF files
CategoryFirst 5 Errors For CategoryLink To View All Errors
Samples described in the metadata but not in the VCF filesSampleA1, SampleA2 , SampleA3, SampleA4, SampleA5Show All Errors For Category
Samples in the VCF files but not described in the metadataA1Sample , A2Sample, A3Sample, A4Sample, A5SampleShow All Errors For Category
All Errors For Category - Samples described in the metadata but not in the VCF files:
  1. •SampleA1
  2. SampleA2•
  3. SampleA3
  4. SampleA4
  5. SampleA5
  6. SampleA6
  7. SampleA7
  8. SampleA8
  9. SampleA9
  10. SampleA10
Hide
All Errors For Category - Samples in the VCF files but not described in the metadata:
  1. A1Sample•
  2. •A2Sample
  3. A3Sample
  4. A4Sample
  5. A5Sample
  6. A6Sample
  7. A7Sample
  8. A8Sample
  9. A9Sample
  10. A10Sample
Hide
Analysis B: Sample names in metadata match with those in VCF files
Analysis C: Sample names in metadata do not match with those in VCF files
CategoryFirst 5 Errors For CategoryLink To View All Errors
Samples described in the metadata but not in the VCF filesSampleC1 , SampleC2, SampleC3, SampleC4Show All Errors For Category
Samples in the VCF files but not described in the metadataC1Sample , C2Sample, C3Sample, C4SampleShow All Errors For Category
All Errors For Category - Samples described in the metadata but not in the VCF files:
  1. SampleC1•
  2. •SampleC2
  3. SampleC3
  4. SampleC4
Hide
All Errors For Category - Samples in the VCF files but not described in the metadata:
  1. C1Sample•
  2. •C2Sample
  3. C3Sample
  4. C4Sample
Hide

Reference genome INSDC check

Checks that the reference sequences in the FASTA file used to call the variants are accessioned in INSDC. Also checks if the reference assembly accession in the metadata matches the one determined from the FASTA file.

metadata_asm_match.fa

✔ All sequences are INSDC accessioned
✔ Analysis A: Assembly accession in metadata is compatible

metadata_asm_not_found.fa

✔ All sequences are INSDC accessioned
❌ No assembly accession found in metadata
Full report: /path/to/metadata_asm_not_found.yml
CategoryAccessions
Assembly accession found in metadataNot found
Assembly accession(s) compatible with FASTAGCA_1

metadata_asm_not_match.fa

✔ All sequences are INSDC accessioned
❌ Analysis B: Assembly accession in metadata is not compatible
Full report: /path/to/metadata_asm_not_match.yml
CategoryAccessions
Assembly accession found in metadataGCA_2
Assembly accession(s) compatible with FASTAGCA_1

metadata_error.fa

Warning: The following results may be incomplete due to problems with external services. Please try again later for complete results.
Error message: 500 Server Error: Internal Server Error for url: https://www.ebi.ac.uk/eva/webservices/contig-alias/v1/chromosomes/md5checksum/hjfdoijsfc47hfg0gh9qwjrve
✔ All sequences are INSDC accessioned
✔ Analysis C: Assembly accession in metadata is compatible

not_all_insdc.fa

❌ Some sequences are not INSDC accessioned
First 10 sequences not in INSDC. Full report: /path/to/not_all_insdc_check.yml
Sequence nameRefget md5
2hjfdoijsfc47hfg0gh9qwjrve
✔ Analysis A: Assembly accession in metadata is compatible
\ No newline at end of file diff --git a/tests/test_report.py b/tests/test_report.py index db2f525..3f1e3f3 100644 --- a/tests/test_report.py +++ b/tests/test_report.py @@ -143,15 +143,15 @@ 'metadata_check': { 'spreadsheet_errors': [ {'sheet': 'Files', 'row': '', 'column': '', 'description': 'Sheet "Files" is missing'}, - {'sheet': 'Project', 'row': '', 'column': 'Project Title', 'description': 'In sheet "Project", column "Project Title" is not populated'}, - {'sheet': 'Project', 'row': '', 'column': 'Description', 'description': 'In sheet "Project", column "Description" is not populated'}, - {'sheet': 'Project', 'row': '', 'column': 'Tax ID', 'description': 'In sheet "Project", column "Tax ID" is not populated'}, - {'sheet': 'Project', 'row': '', 'column': 'Center', 'description': 'In sheet "Project", column "Center" is not populated'}, - {'sheet': 'Analysis', 'row': 2, 'column': 'Analysis Title', 'description': 'In sheet "Analysis", row "2", column "Analysis Title" is not populated'}, - {'sheet': 'Analysis', 'row': 2, 'column': 'Description', 'description': 'In sheet "Analysis", row "2", column "Description" is not populated'}, - {'sheet': 'Analysis', 'row': 2, 'column': 'Experiment Type', 'description': 'In sheet "Analysis", row "2", column "Experiment Type" is not populated'}, - {'sheet': 'Analysis', 'row': 2, 'column': 'Reference', 'description': 'In sheet "Analysis", row "2", column "Reference" is not populated'}, - {'sheet': 'Sample', 'row': 3, 'column': 'Sample Accession', 'description': 'In sheet "Sample", row "3", column "Sample Accession" is not populated'} + {'sheet': 'Project', 'row': 2, 'column': 'Project Title', 'description': 'Column "Project Title" is not populated'}, + {'sheet': 'Project', 'row': 2, 'column': 'Description', 'description': 'Column "Description" is not populated'}, + {'sheet': 'Project', 'row': 2, 'column': 'Tax ID', 'description': 'Column "Tax ID" is not populated'}, + {'sheet': 'Project', 'row': 2, 'column': 'Center', 'description': 'Column "Center" is not populated'}, + {'sheet': 'Analysis', 'row': 2, 'column': 'Analysis Title', 'description': 'Column "Analysis Title" is not populated'}, + {'sheet': 'Analysis', 'row': 2, 'column': 'Description', 'description': 'Column "Description" is not populated'}, + {'sheet': 'Analysis', 'row': 2, 'column': 'Experiment Type', 'description': 'Column "Experiment Type" is not populated'}, + {'sheet': 'Analysis', 'row': 2, 'column': 'Reference', 'description': 'Column "Reference" is not populated'}, + {'sheet': 'Sample', 'row': 3, 'column': 'Sample Accession', 'description': 'Column "Sample Accession" is not populated'} ], 'spreadsheet_report_path': '/path/to/metadata/metadata_spreadsheet_validation.txt', } From 8e785c29ede0c9ee962e9e1448f110966290acee Mon Sep 17 00:00:00 2001 From: tcezard Date: Fri, 9 Aug 2024 14:48:22 +0100 Subject: [PATCH 08/11] Update Docker image --- eva_sub_cli/validators/docker_validator.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eva_sub_cli/validators/docker_validator.py b/eva_sub_cli/validators/docker_validator.py index eb9c977..34cd8ee 100644 --- a/eva_sub_cli/validators/docker_validator.py +++ b/eva_sub_cli/validators/docker_validator.py @@ -12,7 +12,7 @@ logger = logging_config.get_logger(__name__) container_image = 'ebivariation/eva-sub-cli' -container_tag = 'v0.0.1.dev11' +container_tag = 'v0.0.1.dev12' container_validation_dir = '/opt/vcf_validation' container_validation_output_dir = 'vcf_validation_output' From 75058d33d51803c2dd316da1d2352ca777335242 Mon Sep 17 00:00:00 2001 From: Timothee Cezard Date: Mon, 12 Aug 2024 14:47:12 +0100 Subject: [PATCH 09/11] Update eva_sub_cli/etc/spreadsheet2json_conf.yaml Co-authored-by: April Shen --- eva_sub_cli/etc/spreadsheet2json_conf.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/eva_sub_cli/etc/spreadsheet2json_conf.yaml b/eva_sub_cli/etc/spreadsheet2json_conf.yaml index 10a81f5..57c8022 100644 --- a/eva_sub_cli/etc/spreadsheet2json_conf.yaml +++ b/eva_sub_cli/etc/spreadsheet2json_conf.yaml @@ -75,8 +75,6 @@ Analysis: Phasing: boolean Date: date - - Sample: header_row: 3 required: From 6bed4a9e1b6fc65abb6dd3436bb6f827c8325b29 Mon Sep 17 00:00:00 2001 From: tcezard Date: Mon, 12 Aug 2024 14:56:27 +0100 Subject: [PATCH 10/11] Move Run accession regex to the schema --- eva_sub_cli/etc/eva_schema.json | 3 ++- eva_sub_cli/semantic_metadata.py | 6 +----- tests/test_semantic_metadata.py | 4 +--- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/eva_sub_cli/etc/eva_schema.json b/eva_sub_cli/etc/eva_schema.json index 11090e6..25300a2 100644 --- a/eva_sub_cli/etc/eva_schema.json +++ b/eva_sub_cli/etc/eva_schema.json @@ -266,7 +266,8 @@ "runAccessions": { "type": "array", "items": { - "type": "string" + "type": "string", + "pattern": "^(E|D|S)RR[0-9]{6,}$" }, "description": "List of run accessions linking to the raw data used in this analysis if applicable (e.g. SRR576651, SRR576652)" } diff --git a/eva_sub_cli/semantic_metadata.py b/eva_sub_cli/semantic_metadata.py index e25883d..c28057b 100644 --- a/eva_sub_cli/semantic_metadata.py +++ b/eva_sub_cli/semantic_metadata.py @@ -77,11 +77,7 @@ def check_all_analysis_run_accessions(self): json_path = f'/{ANALYSIS_KEY}/{idx}/{ANALYSIS_RUNS_KEY}' if analysis[ANALYSIS_RUNS_KEY]: for run_acc in analysis[ANALYSIS_RUNS_KEY]: - match = re.match('(E|D|S)RR[0-9]{6,}', run_acc) - if not match: - self.add_error(json_path, f'Invalid run accession format for {run_acc}') - else: - self.check_accession_in_ena(run_acc, 'Run', json_path) + self.check_accession_in_ena(run_acc, 'Run', json_path) @retry(tries=4, delay=2, backoff=1.2, jitter=(1, 3)) def check_accession_in_ena(self, ena_accession, accession_type, json_path): diff --git a/tests/test_semantic_metadata.py b/tests/test_semantic_metadata.py index 2b533df..2a69af0 100644 --- a/tests/test_semantic_metadata.py +++ b/tests/test_semantic_metadata.py @@ -163,11 +163,9 @@ def test_check_all_analysis_run_accessions(self): checker.check_all_analysis_run_accessions() assert checker.errors == [] - metadata["analysis"].append({'runAccessions': ['SRR00000A']}) metadata["analysis"].append({'runAccessions': ['SRR00000000001']}) checker.check_all_analysis_run_accessions() assert checker.errors == [ - {'property': '/analysis/1/runAccessions', 'description': 'Invalid run accession format for SRR00000A'}, - {'property': '/analysis/2/runAccessions', 'description': 'Run SRR00000000001 does not exist in ENA or is private'}] + {'property': '/analysis/1/runAccessions', 'description': 'Run SRR00000000001 does not exist in ENA or is private'}] From fa7c32ce2d664b2f3f3c48c3193f1af1ae5e5e22 Mon Sep 17 00:00:00 2001 From: tcezard Date: Mon, 12 Aug 2024 21:40:58 +0100 Subject: [PATCH 11/11] Do not move the metadata.json file to a sub directory --- eva_sub_cli/validators/validator.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/eva_sub_cli/validators/validator.py b/eva_sub_cli/validators/validator.py index cd3ea20..788b001 100755 --- a/eva_sub_cli/validators/validator.py +++ b/eva_sub_cli/validators/validator.py @@ -109,10 +109,12 @@ def set_up_output_dir(self): os.makedirs(self.output_dir, exist_ok=True) def clean_up_output_dir(self): - # Move intermediate validation outputs into a subdir + # Move intermediate validation outputs into a subdir except metadata.json subdir = os.path.join(self.output_dir, 'other_validations') os.mkdir(subdir) for file_name in os.listdir(self.output_dir): + if file_name == 'metadata.json': + continue file_path = os.path.join(self.output_dir, file_name) if os.path.isfile(file_path): os.rename(file_path, os.path.join(subdir, file_name))