From 9ae257ecf3b99a0d0d49fbf298fa7a1839ef515a Mon Sep 17 00:00:00 2001 From: Alejandro de la Vega Date: Fri, 3 Mar 2023 16:46:08 -0600 Subject: [PATCH] Add ecosystem graph --- compose_ecosystem.svg | Bin 0 -> 87247 bytes docs/introduction/about.md | 2 +- docs/introduction/ecosystem.md | 86 +- docs/tutorial/_category_.json | 2 +- docs/tutorial/first-analysis.md | 8 - docs/tutorial/large-scale.md | 6 + docs/tutorial/semi-automated.md | 7 + static/img/brain_result.svg | 200 ++ static/img/brain_result2.svg | 73 + static/img/compose_ecosystem.svg | 762 ++++++++ static/img/compose_ecosystem_paths.svg | 2489 ++++++++++++++++++++++++ 11 files changed, 3571 insertions(+), 64 deletions(-) create mode 100644 compose_ecosystem.svg delete mode 100644 docs/tutorial/first-analysis.md create mode 100644 docs/tutorial/large-scale.md create mode 100644 docs/tutorial/semi-automated.md create mode 100644 static/img/brain_result.svg create mode 100644 static/img/brain_result2.svg create mode 100644 static/img/compose_ecosystem.svg create mode 100644 static/img/compose_ecosystem_paths.svg diff --git a/compose_ecosystem.svg b/compose_ecosystem.svg new file mode 100644 index 0000000000000000000000000000000000000000..6f75c83eb2528806b77a1b37e7a5078f7e288fe4 GIT binary patch literal 87247 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
u{0d&l&$_L>8k? z=5wWhlGSa?rz(<(P>c8OqJ!$)SqGJ3>^J%N%|3Rs6^OnWR_Fa1=CB4&_5mhhZ)r=Slms*e@=P5z)e9riV&F-(7@ zG5oxXar2V6Wc;#8v7B2zj^p9I8h@Jidmmzdo1W#&l3?4C#FG%i;pub zR{`%o>&__CPc*prW7P6>x?H@~i#iUN>{o}R8?gN*Vm35R)E4w(s15@Z@mGU`F;KS| zE8btT{<2Y2COY$>q$ruZj)CMMoj7aL;pmNbe%G}bbqW>|ld!d|IMea7Lka1J1hn&K*A`%#$b#Jc0eKinB-o=(} zDs)~cNuKEB6!gV%oQsjPx3*Xgs;#I`qVEsq#=A8bzLu2QwLa%uM4C-5CW(zu%5Hz5n%=(Dre|yWmgr;d@FS(m#FIJDRAk*WJ%kj%}f6^F{$b zu*Dj6USd^LV>XWTcr5DkTqJc9;*yX-_0|u|0I6vc_-1tyGXC*g6}4TgoXoiERDakP z{E`%u#b?%c>Iz1;#+7n2_y_i`^wb#BQ(kfzVAM1)skb{gTARl{{BDdk_KSvcAES2d z^shm8=|GK@uNPkpA|j~9U5ajE`JQ2wTaq3w@A0VbP``aO{!Tx&g?nV~U};qy;(sS& z<)Bm9TVAFpG8c@_-II)6A@hda_GM1*`y2zF`odGG917& zfQrv~{XNucWf@m_euJr=7{@O~v@P>!k?o`oOES8Dw-lUQbjqFM7y3FD{Rp0c>k+@Pcf;v;w+%+D8wTol>PxnO9gY?*Ngo=4B>(vUZf>Bv zBCuz{NG7rLm18FY8XYLHL;laxqRK-rW(3PFWYgv%MwqP7HhjCH$IWS zj*Yt+7a1gTer3NTpU5A%o=K5~IPS9S7F!*>I9{MvkP(3G>VHomxn**5$U1dJh27ja z_Ri~iL#XT2*z)e+f@W=%!&^h9SRKkk%j|^J6RJ_`=GKI=-1|(JxqR)#KpG|?0ki`3 zvs;3)G&%e{|Z~lDaaaWkFa6uy7`cA|G?QY9dTD)e#8JAP= zWaFo9caNibs|42tX}QVbwXd0ng_-&Vr7mTni}W7EAKBew1mm>xUz}dcvUO5}xWerW zC-Nr_0x>BX)!jGB@cp?Cr?;BbM4SmUA$MmAQjd2Rskyni)hIYr*V7-RBZA`^HI#3d zdExV-xv<5N@3@ORLafOPQEH6&P}Hx&w3>VcNApD{sejGz_4ov@40O1=a5b^&rk` zMaP6DlQrJXRXWM2vvtX4D%=B{cXZZ)Ym_|;g%P#0mcM@c{V9&I&F|Q538M_^H&~`B zXVN7?^-3-6c@?^)(FksmgljPs!S!F0SpBVD{>&ED8-A)}EEteR;=YwIlAf7^iqcFj z(VysfJkZKSKjfowHU8|kNoK0>!FoIC%m3R8PzsM|(+lTGApxyWb~8A*M>Wttk+;}d za%q>g`I3oLLse;YPl-!4Hh8`e0yQ#CLaRA!TFLi>4zF{!AyOB?KWJ{f-|_j#8~mu` zNiJ}(7}>k<*`raz<2ds*`d7FOx4sHR#eAMfnM9+K21awiEY*qo!M`3m3w+vk6(rTUxGv zNn%xwP>;j4qWkUoE^8QmYlGMfbbjv=K(^Ded9wsVx?)FZRFH36u4)+lGxY8q^Ei!V zO>k3U%cB1BQGSmZ4YFcT=h`=LuC~)kS|h{?9bmr9|57=jeI?55S3KA=3at?D2a+gV z(^1t=HnMfrY|N7rf~+jhPL$?r2A_;D!DuqCSUp5aGFw9z!)fjo{Ol}#qwN)nfKuV)wceVqM=%BuUY#12YEdb)Vc=|pLn#BlFkEuzv*3xn+1 zsEUCtc9Nry+Q#P>n3o)HNZGQjcT1Imq`EgBVo{7nm6i5M^(ltKYAbN@H>kIn`hR-t zq`Tc~9?9nYp5j@(yFC#AQAVGm+Uxq*BqxkS+5P36)H+XgvYQCUwZqKN@_UIIx*=o1 zj81)0SIOMa22T8DHQjMH>aygM+q!NF8M3saodHH2iLrcCl9ZDsVan#6(9`L6Pl=zubGy5COHWU)0Pi}iw);hy zPzK#!&Q*dx4=S5hF+}ImnP0mf!=ObWBv;<>T*l4MY#&zIBJ@l+*lvP6oMksx47c!P zo=UXcW}=HsTCE_kZMX8l*sYF-nH=xmH=ICn9k>%_&Fl@DpC|T_B;JV5_Vvn7{Kbq7 zQYDkPm4tQ2^D$=wv@rv7iOnf;&4q zn{NB}=>%q@pW|((n<5xoIJG?!;>va}2ce4K5k(B$do75ZpWtTjSN-&ewDw@qjil<9 zFo*T~P&(B4^uF?W|Ne9TaVai#x*(o6i1XInKF*xGJJu5>q<9Ah?Sk}YTLCrVk8tB~ zR~Dm*U{)>di()$H#?+XRPz+< z?Kyx>qrQLte!9XSLm`RcSF@X?sMo$6?0DtfQe&lhA6Xu6*Ihbibvr>QsflkGDs5nm zqUme&4MJ1>?F>rGg`u~fexlD-81zuOw40Zfl<1@4P<^x+`;hOw`0h*4?bY9-r8&>z zWsyI(reu=;{xEV12nhUX`5@q+S#P6i*yOC5!}C_tNbap9f@zY81iuVY{&1gD)+m(yCaxqOyfq0`ga>d^55L{@gBxVSi7P0e)V z8v7ZJ2|s9o9?|bsx^pu9ydlMw{JgNaqlnk0f7(!U-w^2r30>`~lw?ed+_doQECfrR zbP+v7IU?J57%mdp{;;c^_Z1&%^FAsr)SJA|Y%D68x`N{TxCUW&lJ!ydn;B$ViW}Ez zN|oltW(k(BHONJxHOaU7EX1qQjd$h-EXWT@jt?ciO~ya);tBF`2JJ^npBfX4;a{I$ zwcH-J`N39vA_`60baf|I1JvDvwzjqwTKJ8RYX~rGRVw)U&#P5V|Nd4tvK&Zm5T`Ls zYVbZXJV@Z}T)%-9HAUmnIcv>l!UFgB86j(Q;fL2jPUQ!I00iG*UfR(lKG+wg%SYT#ogK;42g-woleoTA zDz_gkiAo*$XmVc#D<7~cvorAXXP9*O*LuEl?)mC{wD_wtD1bu9Sw%$!E9BvZRqElI zvFnauh6HxFK*;Sef}CwlUdB30QtQ%r^X0OaP<=agkVe8k_cc#T-S9_RCqLSv}JrYi@(OUXT6qvgi*A?DXfH zX43JpQn6MvsGe;c6F_zXT0v5oV&gZeQ3I)Y&*gJ#W(^4>6PwLoI9VE1`wX2<;Ikok zMwcF7Q&>?v0#kmsWwEYI_pv9hIFs1Kf3KA4Y!RSb@_HSy)$4%7^KiD(=)Gi+Xm!_v z|Kx@8Hqh*pfh{)?`@RpXMS)W!KL8SEu*jeHLOo8lhcb3Qr%2W{x~!R0G@JQwr`EH_LfLX~Ln$t`TwU79b zOO359EY)f~Ix9t@10GZ8S@dvO=nc;a=M<*R*J2{tt+01Q zIsxzG;}BdrvX-DM`M$_@zlxCo@EsS4M2S@5sKiia$t;}~e+(_wTB5?`nE1a7^+k?N zNU&Uogzbi*(y(cKA|@o19m(eQ`|~MgG?AR&{kX%d8{q&bC6AI;CLK{PB4#R9g^YM@ z3Q2*8bvSI9hQ`xqwk1l**--r9Lj=T>kf!h#dX59UenWVYN1qN)##&;g`$)q})^*zd zqC5-{b-vY$6AsWAgVUs-x3_m&Vo=)OUo?S~cXvYSkx5W6ThM9I_2CA(v+MCe43Lh2hbQ^^+LwTU;HyEsO{b&V`9XD89l(y5d8}m6KP2j=kjG$6Ev?Fq zfKno>z(8?Q)4`j%LL-RzvzO@{;9;jUI&qR1L#3v;Q z$VOxFEj78|im6wdbhuZY`HI_s4_WBxyKSq$@Rxcd`pKI3`a3N8FnlHoB_#Ox_~2nx z+U4mjM~zG30au4^OIw(&e&RF}s~rJJK}Gcwl1t4i$1)RnMNYl3_%yc-s_&oo5$?^$ z(D<|29tNCrdfIUTIsoy7?p<|E%#?^WlA%PsurMR|Pvxj(0^jBof2~md*Go8IO|kb%TA2s>@Sl^#A*(dw=E=qbmU+;m!3{ijsN`ULDYisS>3Os=WI8 zdcTtn*q`}Y#;*G-BROww!ymCcZ(CE-H;wH2udSKY3&j`qr%DqJMtHk^EISJUC_Poy zuW8qsb#-;V7h^(|k&#GqjZRAptv+lZ&IL=xKW7>u0Y@q1Z1wlguhK@|lHVT3rre*J z$s_}tFaLZ_F^s{XE(UV^!f7$Hxmg%a&~Y9@tY>UKmdp2fezhKe(Cw^`w5{{;;WmFQ z3ta2(I_uY)Tcs^!OGhls%u(2sf{_iD00O!L$<%Lum#H_^)z_CBHrS6lz~@SZbb2jV z=d>KI-L|tiYHY}v2~ToVhbgaefo?jB@L1H${h*m9p;$UT{WXZxgt0t-dq zc{tB!+XW^v@b;)l{yFS>b?5K^ZOEwC+}nY8V$Q+gVFn3_f+R|zsWu;%m+>=e9upGu z(673c6pRXq>raJk@{=r;uxseiQd34+TK8}kC;79N?x8-%%R}H3#yW@7^=>$zRnev) z_gNJcTvx{{BS3~d`bYDGCR#zss60G$w4bXQ>y0BE11OdNGID;n*f4SdhT*G_NM;Tv z=(0K*3Xf>)ogFM)3p!%hvWIr1A#o_QFkt+HsF!^?Q7vHNNbPr~Z+J|stVSoDw^d%p zEl^-GHy4^*ideb1$La%M&J&g?5;n#>q|Qxw<~`8{K(`!f=Ut%%KCRE6KX+|07Qg@d z+va4oqp%|Y<_}JKxX|KJ20h*ADfGM8eNQhNO=gQ6W0pw9_fz@xYeqi4Uye(SV;;cG zs@vFnf#$h%p5^=Pz7GwI^8+VWK7>BvXllM@mjPK$Fh3BIJyCbH9=oMtHb?4r-xeQt&-|oeP6s|sj)34$va)6ij;(m2Edu2t56*kZ${z$lIO{@Ojfi%Ex0r;ta z!sO8pss#I=z!+TG@r%Nq7~F~X(6*CKOwoRFnRWLT6?b>{!JDbyza;=_UWAsvZEL&% z!Y9kKkxV7>eA61H*a%w-S<`B9w=Q}X)#3pq@n2PJRFp-_<}%pye(2;fYUF|%yG7x_ zeX$_}msKWIoE}?L#aTjS>)_n&J4! z?^UhwLaV+J06|cyB~XMiSk-N=Pd7aOOosVi?*FPbm68Mt6k2-qX1dZS2c3`w>4=P& zlyqQBXf40K%W=|R(EKNo!(b}?Y#br0-D_rRwe4`U(oA*w~q#hB1Ahs`|?>Dqv zO{$XQ6WDmME$VSnBeilARC0T%p2dZIC*BD72e7cNb8mgjF`u&nVX+v`7x}yQI|hhY z4OlU8Xge@AjB7__@?t+MN^Z2j+m?pn5+X(({b34nnD-d+0wF|H9ISwciu&6)X%DW{WP^iVHm~V8AQz2$XS+D4X+xi1r9@NtT%VeQ%@O0_$e8+F!4jYc zLc@y(^g=1&(l^NuaK4tGq7A-=#|vu&t&wP3>Xz^FO%bWArnTmqlvE*>ebGj0#~9I32Q z&z11xw!tF3*R51$IVzKl!PzF(TP)Wq%ZGl~tG1c^C@t^(2)q@jWBos)Fb$fVsX^g# z1$!n2|L)HuIIpz6H#7bB(+vW* z;Eg%D2XuTV+sL`Qs_O%3+7JDPj)v~R@$vqvDr!&yIIEf&Obgq=(06Qw;ec0&%gWA1 zfyCl7CcZ_S-EsG$@!Q7N)72$Wm%4wkx3~BAcx5RoKmTwK__6WJ1QPDLL)gipL-iQ! zKH^uUk*^Fd8Nf4DvI0Q!9n0E2jXHbCp~XYx}ZsdGvuXjg$;3=Czk#w8?d{X3{G zdzC`dJ20Tt{A(^ZvK*#+W2rr}H$gZeRDYm*vZ(&`8AhB8oZAKg+MQ`kbUS8TE7T z6Sp1PD`CSQcHN-$76;1s1jN40z69>3C2UBF)WaZn*?}@W{%=6)!JI|)gVi_fa?NeQ z$YM6+LydKjlCf>lmqSEKAVq2>Lv%#2d5RO_SU@*Rt1f zZXDP1Z6$yWU@jzqNcj!c$}{WRPk)s*Hl|`#FDwB%Q(@FpH80iWbi#SvZy1iIA8K3Z z*FQWwyt$KOx;vQ0XzaI>RRy}TMKD2cB_FOWG1oh9k2y7dY3l>?!bsx~6C2sHcaM{G zsG|=QrvI(aiZ!suJUG;%RwTS8jzO0*dV#pvYAJJARJ_o>TdzC!-UmfoD- z9^E@i{1z{|nC;iPN=d&5!#`{7^7Y=nzKz5HEYdbZGH@P`{a@Y(v)mQFD}elI3+4v8 zYFGzADMY+0t}#=^axwr&s7F~4Pwy@!Jb)LVz^k3Dw^g45Rpk&|Ofhf@%R#Ue4Op%y zvZu+}V4Bt3lH+nS-^3dn+l$b2yFQ~bHR`ICT?&3sKQ4e}^aY!5(zG5g3w%~<8R7N(8=tTm*$TT_guzoEt`a_YA^bT zhtp{D3n$v^pj{xTh=s1yS!4PMu;mK5n2cYH7l`G2&28dJ0DBN}!HX<4*_cw$k*)TY zv>_BZHymwYqwiT0*k_`S3Ld5k(#dpxWn;rq6m(_K+wfNEW;=sw!T=cEJz(l;=XE;# zFY_0x4(6(HMRFU{Q+@v9E!K%zD1vNTsxQj)qgS7{XU7O@GyOp+K~ znZTBNCmjpQh68_~U;!PRO| zO3b_8U)+AH3hhv}?S07$Bq)zh2Tj>d>{b@1-uZFc2}+`f?qv2+9q6B83$4QSz5)bhzr3jui29I9ISvjFF+Tgp`4Td00` z!EV+Gq7|_H2rh?OOAPQVpBG8K@9yTJ67+0Bj(I>K=XQG;=YSf5EQh!pdxLG5iHEg5 zburC{kv1CKRKn(g_eX%fdYTMp-AcngYMsj*5KN*HNe9gzLOQXOWj_{A=e33XY{gJCHf1hIRX|Jqls|BR9;x`S^Dj`n zJZ_^#{ny!C<~ze#Kb)3ky>51L@&LMif0RZ{rj=4NG^B8tt*FiBHi}+4+ARz?X0IUy z)iTZo)RtMGSR$T(@Pw9KBQ8N_X0+1k#Sc)$2rxABUC#(~{v%4k{|-za?bSqfh-@Yb zosO1UGC+gcM#5wKhrN8U;*;-T?SKk!>D-|K$1MXu4zs<0NKlT{>DSv}1J9Q|u(biw zl4rc&Lgb1chdHZXILuWwJlsr#7}5rwhIu{33Qv)i^NJ`yoXvug2{4E+fXQ}93;6u| z_irFudKG#metr93-rlx)@&R3AX|SKM04D|U!Uy1(4ZWXl%-32b{iZa^-iy0Z)61;u zCor@Bk@P0>r$yq>Gy1{N(HFqXel9od3RX+Gas{_YY``+u076JZU#qE&li&WtRtBp*nF`ty2;JSl};KZr+K0gxdDPQsk0ziNnFR2w#M9NxmtM|h!$Z$Tc>ToeVSV-sik zfkGceTyqr0uIdTr{8v&cjH#ztHn9U^&*X}excW^y@?VsHa7Upi5d4zQOQet(J7`(@ zuFK%Q66H4ZBbzmer3wn3Al<~)Sq-qXz`#GXKT5A(TLQHNi53Whs0|w(mB6U?*1Dv| zJ_ulnOgx2%e6ruhyiQgNK&})`)#h_z!lIu2c--c>Cj%;cc=Br{r46u)(FPaXGNq<`w{_ z0S*X|4TXR`(bOz4r|xzy9xiaYk$cCx2rjT_ixS3DYFCn)&$%Z$hGb|eK8Lu72#D_^ znbyte$p7fH+hlQ!Bdp2>OUcwylZDxI=MeFLNAA$j?=>=?t1=(l6m^dsyrvX$5gqv|Kd&LKi%V?S2H=c8bu1fNMh5?zCh z{}rxSDB~}c*V%#ciaP$X$6T;m`Ye~TNm4^s>g$YBOlki1oC?t!VJz%1p^CjU+Fntw z3N$LD`*7paW`-@I+FyL01d;@EenXD`(i7LRsGG5;i5#mpf-56z0T72_Pd)(UG>L|7Td z^Jqk+p#RA?=GKnmN>9+%hK4Vw#}Hmeaf-8Ep}C9~XX%9A>kIvWdq=a`*+h4iMYA6L zZ0mUkG~{gYhN-h~UVr`h$pttuoyUvw&T&QvF8whfqA`Xiygj3-sAiZ8+G-F7%^BU2 zhc0rJ{OXCaB5SMQYAt7|tn_Y83!Yz>5Ta2}A}6}@t8{MD#5!v5?5X(~?590jnC9{e zSpxU*q(*vX$V;YVJ1GXZkc(p}d@ILv*fJ^ot|%qGcK7o~LB#HFBx{EfkE&#pWdQ@? zhdy@%Cuh{Lct$5a6Jg1&@K-T?O|BpkC$bhJ zDplk&|AxmV&903StmNX{1d>!|LMJiLgkhURzAsENXfMS*T$USg-hpkxFL z9*7K$xCj~Tmd^Cev8V=dU!&3fF-Q3`M=7y7q5t1r0H|c|(w$-E(HkQ9I5KSJH_GY% z2B#cOKhW=>mZ6d`jr%shavuqtgmDjLPFi5-L^34leJ*(PJ0)!5H7Ew1xVk+}~uCOd8g-+ojjB#-aQws;NPEqDq) zBx_ybH6o4s_h)y6!V=*Q+#aIOkd5yF?M*EMxdn?+Ym80-`$|Le8TTWT91jn zMrj^%TV{`j5t7ryV1J6V58g}it%TvViz*1VjO+;!i2gdGVWL?m;#zk)xiI@#gQ>}R zEqvNFsKO(tz!;LFRqPl82-c~=>)7{&37HFWq3CGNHlgje6O4vC-Cj))uqj@3h7x~)W-CInrx6cl(z7;DAw=dr|r>-lx($P$* zFb#dPPQBQJq?jL{v7A!`AU@0#IBAGQoGO|0jg>*eUC%IeLp@tseYtBd9%l^5npTi3l#dtLdF|@=ehr75+*O^?(E8Cu};tjbBz+ zHR!qI0OIl*7>V)o@voIKf1N`GtZpt(6vrmwe-fDSFyucV|Hb8R`~Y*q?X>R@#M%>5hd6y4a-ql2CqtPe`}Gi``1;cWKyOrrcS3S*mO7gk)hFo zpwjxz2Ryv{I`f#8J6NH8oa9s`*UcL-{B>$%`JGt+DrF3Lh8~)%aPXC6BQF1!2$);a z+S$#L)(>Yi{94bmXp-2zH?gMiW{-5}jv zf|PVOQi6cAbax}&E#2L4&+GTQ_piH_u7xk>J!hZUvnQUJd0Y>3S0`J^b-=t z@+ORXQI>1-BukGck~_%9YapHYVvu~aFL`S8g6iMlYiy$@E-SAlHW)aK=75guj`Q>D zL2q3UZYa;vp^vXt%t2=5kLO{LxTJ;6#grVLln7_err;&d_Q`;*9`99qYKk^}xjc(N zP~&5BDQh<{MW0cm1-ymtwpP*MB{3{IN&331DM3ou|&w9Co$^DZs$&JKS?b0 zc%B&3QD}w6ct)>nWm9fBQP)tQVHO<`@1#LxQx4r|BQcLT17R?N0nOKB{z5XPr8dTN zCJoEiqjXr!=}9b6(o`fB)}sFIEHBH^)>}zW5w(!-IAE6e$>7A8$NbzBkgfu|2 zUOz8#7mbKQryCMPN1VXHC)qTn7@mPglY(T|M~M(R>SFTrGuj)fs_#U?$Qo4{ZVgJTE-q5Ex#RjbfsE0#tYbO`etu2>wmH+h zOv4lSSUNEK482ES{!av4Xk=U^Gg zhO>l*+DLuZq%WB|w-v^&53+Sa!K^0$X%nysN{{z%LZz$UD)+a+ZFmTVhvvMHQ_i-j zAC}7`c{xci&x%Sc^W=+)V&|*QaNoXK+h4i!6H7`JcR&m?7TP0O#X=&HfmxAkE=}*$ z$qsg>yrEhy{p@vAv*{x!W6@q{xXlyg&V2w==yB99ViaL_DpdY8RQY99k%2odQ|ZdYUyjxpg@>6R2aOUxWF|GePf&nIG;hl?|Nw5 zzaLVd-80v0prt-#GyY4H+g>P)k|ehE!aTNaM}c8=N?O8;NJ3Np3v*Yp=^Lrm3}ULA zZ{qJaq18Q(LR}v|NitwYuxlf(9BVQ35es_ONO^jCMuKU0!ECV_lTL%QBm>qq#+;kp z&ytqB3JYU19 z#7xMBE6>b-wB1O8dS(r;U5f0!nt}X|UY0k9B~Gp~@z03u>w!w`#*bDqPe68`cui$bo#b6IR z!LcJ%lzl46N7ip(Af!C=^IH&FL@1I8!*5WHCjg+eBjP829gPs2INO@3_%1>qWuSm z0~T!9BUiu`y#`x=3sBfeEc+nDHHgCC>TJOA1x9%GcF(ma$RkaI+5p?{R*;znNe0OX z3D`p?$m{c5B0NjHs$vSq%3}48&a(kAM_GnE3an4Rk$(;6CSc&Qk?sDwd4dzthR>7S zf8YP=9prBK0D&RF35jHy_9ln~UKb>sb4#@EGpg}+gc}TJ8d$QrfFriu{+6&aq~!by zz5aIqK8Xzz_;$qI(0=43!U}NLQnSPb72Q&7KR(J^7i53t5O6Z8)CMO_L@O~)#8i1} z{f2;>uuarF8_@TMlg+oItdXwqt&Qxa<-Jalfn}~YLaTXLRIv)5#|0;4d6<5nwRMl2 z(T>-Og9}5f#(?4na4JkmkEZfKvCzv(8Xzgp@0N=M(l6$|#=@xpKLh7rVFlWWO|I_j zKpdHYn$h4N$;?ms;d3Fh&|)0f9B?52zb_kNR$%XzMb1B($0LCP56)2B@KS$(9slR1~4*5GjIU+9+Sxp!dJp zgwO}j1YwBv>toVX9HqQI1ipyQHV^;tmcQVG6W1V^RoiBf4Sl;J7QL2E4ua3G!&ypSR*vu>RWZhU;sX0ALG9^>9d8w1#T{ ztyR!G7tyD=fkdjkL3v;3$uLZZNawK{1Z!vK862nzlWIh~K`|j(68k}Wkp6M-_;1N7jxVX*}aPF1f<837I`vFSemOfVn< zgdq8&jIscwYr&a;i%d~Y?>@hf5&+mcQg*r*S2LWe)IFOb3rWs2K8sa0RW#O;8@ra- zebfpmGNClly_@VCLav%3-<6;_F(_a%cV_9$Oc7(*R{ z=?AprtG4@b7ug4h^)RqvHI2gd4r`@vZs0d6TlZZMM<18X?4H@>w6vt^KdH~XKTGN% zEav_=>#dtp5*D08=OBIpbsF=TJ-xmxN?k`XPsLBq-A;Xw`-RkZ+G;hkm<1yInoug> zEffj@#w&lm#Dy@|_;z*La_lHF!>wGC1@bg&Kh4fY>u-AwGaaMibcw&!1*&M4Lgk4M zL@5OvM3DS17Y03Ks|)h9lU}gPVsa<-C-6Uf!|O>4$QmGlhhXN0i4kkg;X7>YvIRF1bMc4ajWkbD zsloFP(r&(Yh1OLsmS|xsxXVWoPnimBH4+KT0x6<1fBQey{yo%P9nno;*Sz47A}YQi z9*v|{&9>;JfM*c_SNXU6Xm(J85MeQ@rVzFkp0tzG5TU(2fH0B*&=;V9nN7-`sTcCSURI(fk)`3H z%Gxw4f__A6?)_Dx5$g1$&6A zg8V6Ps#+@2t_m>Xqo|gm_9<3E2f&Iz*CP?*+IPKbAME(Gwglfk)vtZZuCzkUmZLc9 ztpU5O4H^M48EgmDh``L?aB5c{`z{L9@nbAawj7JgNU|60+2+HwvGQwIJYv$aJDot( z4dXi%yDmm|VD3Ow-)pQ)EaAgAn{mOuCgr5j z1|7G*%Kz*b?5bUnjKLTzXuQN8kmW(tn5yJG++r5-fIJ3ob+}G~d@y+` z>O5A-P%UB$@1{AZn-~+@)-c}#u;yIz#AzxbDP(a;Ls3!xnb_k7s6#k5SP^DMT9;U^ z(z422h-ISiqj@%jr3xg3v&8tP-56s2EQ#eD5#LF^!zMv42%>fT&6LoN1^E$Z0&Ydb z5f|Y8cPRkZZVO~WIU_kT=ac^L8r3r96K(nby?j+^p7ET>EumhrBuQIc}Sf z9Ow+hk=wUBadybJX^>G_hG}nTVV@-oPTKV=_axDvZF3um>D6H!OwtW36nYT)^&X;~ zuo1!mB(MfHY%mmsGoV`dYjf(~2}*|eHdWuA_Nt1$rIEv3R{C_Jx78vFrjm888*wPN_yj?{7=jEKf8wJAn!GK!{7+46IS-g73@wMR_dJ1}( z?kUCWv_nVZS@G@bn@9$^ZT~n;P{`Eek4T5#K})?q4Zdh^ka!iR_0N4L-C-9O9-v{t zGS!I+sxkKaL1Mb~T?PP@w@Gj*A_D2(VTKXl$$+l`dw?oH>>m(*)&UJ*`nPwCtg%5Y zc{hL9P8z=cT3d9yDt8?^k<@G_EWI5?z&Q&*lBW_OvCXzV%JA)wqF0@e_ zh&M!OhZWgaL&0e&gNJ#iI8Iaot;pk!!V?Vu@tluaGavP=uuKoIbg$$Q$PdCFf~* zH>P(Ij+-VHyZc@7I_e{ktI<|w1Y`emt*%Aqzugq`$O|P7+PS`TM6$g+jQWhyBbqV$ zQkk_>b`q0vSubyQKr+q{i)O zr+@$c)0o^_W3mY9ng;_D)u7`|nsyZls8S=_3I;zBYEkoG3j^_m4kFc(;=PQruX&NX z$wOv-u!sFLC{17&wHk1JVhFh5J6Y{`<`W? zLo_WIG)hu2HUv0wQ&7cy?1b$%(__&oSH0oC zgZ?;^#Z{l-OPowk1^fG<`tXUZr&S@JM4INIvZAuCw^cX3P6cImo(q&4t)v21cdJka zJ9sx)2MkR008kg)^SHG0#ml#3ekKRi&V@y8)m7AeB9ybG?}@5zLywejkBJqZZKKgm zXyIzBZOoBB>Vtv*=UPcSQjVik&S~zZ(*!fQpTcc#2Q~EUgUd=Xp*onfySULa9(SXk zr^&0hS-y=fzjSc`f7DJYevvJEk^ud+fAYkCjOgoMJ(c=YN_$)%4>bOuW~0Sj%xij4 zbSgjwLy={D0r#9SU4aZI!8rCx&8pxdSw5%x`=WfOr4P?A)Ik`^x{Us?s>}s0)cut) zpZ;KcaiuLAyF~>qp#970%LFTq3-Z%U8R=Y?qtx-S4?qQqTW#9@UDe#O%D7TRgra*? z!c@jE`lZG+WTwUWN88d&fzuCMlBLu1jW!4a#JfoX(3|;aSh!Ogi~IZZ$_y(SjernRl$GPt?7+lRQgUv9uVp z$gZ|P1gKdXpB>Ca7aYYM6u3B6G0a8pz4$c*Ze>Ppmw7|rZ*{)1)+3{-2{Jk+ntVKK zc$E!tB5gw#(cVTyE7cr5E{P@7o0~S-ORfr62REgjw^8TDKlO{U&Y4g@99hvHhpkK; zqJu79cY{$j8S49REM|dc<~ykNKhrtkg_nFiDxR5zrEA1~g4(#Nj!xq_tG+4%QGV*a zA(JG$O>L`Hx4})1rVzC{??63ikbNsOp*Hq4IEQwxc*h8Q<<85$V`H|X*;JsKWB=iq z<0=!pZm+uk=Bxt=`iYl+pHnUGG{a?t;E>%v4Q0}3xuK_A?gsA*mO=~yrRg5=@h?rI zk{(YZ$l6_XuZA&3D9X_rHd4(W1ocU+az-4Zvjz7t(Y=Xfkmh1{Lz z0zLJ*)c2BQWT)8*)ZAxYlZ8ipfZXK?;bk2R%mzq7uFYANN1$kTnPq6Pu9U-OD7|sJ zWjE-^S8dEWp5;6?cDAh!qe$l5)z@Q{XL;wbkX~DugzI9VZ1z}(rNHgg-!EwG)E_6+9cN8be04+D%On;eNQ)F5iaVpOY_F>B7xw5*HNj|gJ z%$jE>1M*vSQc~{Svq@UPsy2qBOMI`Z7qpl2XM9_WKpyUmOgPIS&~>T2fu+F1ff*~Q z+k)R&7co^hoZ!9RB@*(jXE>V4x6=FJK4fe7rN;cWbT+Fv3;#wCya&4Q;M-a~q;}$o zpAW{6-2x!*MPu9E{bF|X$tAXsdgl|+cAEj0TUKwzuC%bPpa*5}XG_8MgP!wKNaGl< z+e@7S`mblrOr!}ezw=iBnE9M0{QZcKQuwep`7-u`-*z)!x1DHu?7ni)ulwiE19Ifv zg9Rjmc|1!KHxjz!a~yp$JU7)ew5L)F-QF%owy1m2h^fJ10ZvObJMunvH6r zzrbZv-&W9jx?#7Upt^ANy=$K?+qm2VYWHP5r~$Tl9o47%pz-QgM4k$uza*rtK2OA& z<0@XJsQ@H&FLaNYWtzNK-B`gKVLJ1R$qKEun46XuKiR(b!aRYYuC)6Xc1s4Ym%8NL zw3G1Q1eUSIY=pJrA2rxugxjF3>a4bXJdF${iE!;a+>K(~jWce)j-6H$8Vx&$roB+o z_fPGRvD-ar463|ci%+yQnqi=J1;;Y08}84#E32bTPwuuub4p;K$bBZ`VC_k1Ws-!g zW(+GOU-r&coOCFL@qk9b1+{N@*IoYRa#%GDrYHiU{g^2!$VvjVuN*0`|5DPX%F@I)sK!`t<#Kk@ zq#fC&(=0G)cfOV@{1`rv^&KfLEM45ldHMi@qg>?=PTiW5*`Tb$Pb7cuVtcVhlv{Cz z7r}2%d0B0zrAt^?4>nG=f`-GKaO{DsX{|dYeROv^a2gJ}M0yP)Ha^jDaN-x4=R$_ENC^rbfHh{F(Xe7ze$z*s66%BHrbv3A%nq$^a4w zmo&dXFHL<9=0P`%;LRynw#vemoV1hYAc1DA{dmlEI43#p)z&nkxP*65mOJnj!B=#A zeRY-wEtPL}Ra+hsj1(c%Mq0TcF=OX1Z&!?tm6UCS1#k0zbE3keqqV7O<5muVxA0$) zt-K=gbK~n>70gXc3j{+uGNFU3X<&bOhU;!w%Wgl-?i2YUdi0ToVq7Y;uFA(dm^W-c zWp+NhkH@-P?`Cc4(q(X5y0hhA0G+v>xQS-Afn`5+KhNa2%Wgu6#C*8p{FvFC6GU#- z^=H$HbX2&xV1;zQm!9{&Np03UIcz%yF3(Q$(f!KF?@hguZA2C)dV6zTo8KJo%PFe{gKZy-R+EM>zF+U~Lz+Dic;G%t30BzXcGJn439 zv`O?dcn3Z!!24fDX6vax-5#q&qwFlnyf&H47LhD}Yb;irUseT$#L&a#QRk2xxM8HFu*2b@F;%(#&EJbwd^yyg5B1P)Ap+OoOs##;o(vRaH@+*p^_nOHrUL4T}aJyz|`(I_;xYXiGH# zkbAwjVe@i(%ETR|i>wfVxtIwIJ}fz`e|1(>e&X)~*xEO_ChL$?jFC)(+k*0g_+x|p z_KuE5A6#*3ltF*ZU0c4l=R>5B^zr1@U5G})4p|vbhh}9Y-7^#r8)hu149x3~nGra^MliKiw<(LAq?4rKyzKX9yWw_~P9( zZ5lf*aat4a{)8`+CN zVz$)nD)&6%&#qqU>uPIW)=(kNq;_%_jjrVWp}zXH#L@e-8^%ii5ahL@mibYUD}=Yw z&{jK*ETsodRnkcNz0mV-Es8EF{w)fMMfm(tFXhPl~a;nB~7f z&&+!6LlB1|cev!_@7nlyu~kqiu%5Ppw{m9X(R=Ni7<~%`Jh7%-)a+;;f8#tjbXjSu z<&UyH##`{woaR}fnB0E(u%;nt1Oe@KO!IrQRn{o?g{#V29iQIR)1iud^4X%q?(+oy&hW0N zB``O)cC%2|M!(%XFZ@`Px6OIIOFd1R>D*a)dON;y>YkB+uT8bVd2o6gzfc-+6|~h{ zYzMMbzepi+s?nCZlwHxt;;#HTiGig0stN}0iNuktfum1%rxN8mK@-PZ2JMI-zik|=PJyv^00l5hL zg=)P{W-s1c@?FG3Pq+4)(Ci(iwjmS?ff@Q=*5S7I3KAfQ@H-cls~sN9YZ3fOP#Ls& z&1zO0^8P)-<#`K390clqs(BHMk(cO6dqt!}@Q0%iKN&qu$X7oL3syuVez}0ev9-*t zTm18ctpXgrf70^bm5sg)>8_cvg#oqN|2 z1(q24^$D-qYYmTR14ulUJ0R!<7rrBW$pt;LADW?67 z3~W&vPDw!sAi+*iMHFSmlB|T4cVts?eJkoLTQx8OTdjdX^A#zsa~Kx~z{hs67hhY8 zU=oTwNDCusL>WDJl7rwTxiz=;s^lk`?7f=^`e`Isi_&LgPTOQ}O;7F_vz+vPqa>53 zC+Zp7joOZdHSND?5SeYphWb~_qD}!r2~;Z(zXwoK&o;&yx1YA!Z^mxi@W>iut{TR+ zgSlWcW-}=I+dVjTK5?L+Oes~aE6GK_10CE;Fpr~aIc&Y)9~V5bm3s63nw>Yb(sVz| za-BV92SZx7g1PFY*!3JuCetB-fW-Gjy9l3Ef%&mNI0x+v3fARqmto8lmHH(@J6ZQ~ z5M-65m>56+<@f%GF#wLym9m)2>jejb4gEHjY-W1tw+!Am{8b{0-u0&uj5&DSU-Q&K z$7oY=l~;ealcO#N+EIU%Z}x91dO0gQc=WpRbJzI(er*g!MlDI3zlxddR&}}*y`bvz zD`(L%?d#s`h0S1Vrxk5Nh9;P1yS3{&|qa3Dd zmu-Gs{jm8x`@1VC``t^-dxss_tDg5DQn~94kV5?V)G^jv+Tr;7&uwRJg)lPZ9;0dr zZ$OiT#=`U=S~-(Osdyt|tr54^g%d@mj;PUgYfZg9ro#}r9u^H=M4~4cmKcSvU6oCg z{q>E>Xyig|7#wiP>vyd2(DtH_Zfmg&?VYYuEBUzOGIeS6-H3lG14ej6ZMk4m$%l>= zo`$3L#S6-|NsR`?6fniFvfgdaY+*n4J?rpn5{bUGNoHA3_crZ&j&`CVb#GcS`F6Vs zqMF+EPIrPkO|nr!0}bOuhd3b?Rji~Q%lryz3ik1Mx-Tg?^{g99GSK9t^N+FO99qIB zUL7_U5Cc`*SK+dk@l$rbGK6WtqmM4lI(x9TKiem2sjsUMtATR7=KNUgaQN;2YrseHIeE^)N6q+^KU{NB}W!_Tx zs=au|qC}0rlVj&TtPQ}IYR+*t_6c{(wf^S)A!g*R_54d4({UVK9dm03n8Dk!Yjx@4 z$zRJ)Yq=L3JFT>CUijJli!{~Lay+GnW-1h5o%$&-bJtz)G7BCu>PR2Yu0qGTqo0!7 zbOx*V-<g$|BWj-cL8)~^-k>X`C zuD9lZmsN0=;RJ#Xep930GO3z3Dl+wbNW`mxI^kVub@T z?m}h`bhX{b#_iVxenSNiBvGAIuWqZ0s5!jP;UvJNym`j%F_Qqq zG0`Ftqad+)iS9FkKTW{BFIcUpLG+uDMY0B64zpzvM89mU;$6ONy`%bV$l?n@oF^s+^ z_Svmcn+<o(US)QYwl$s2Q{6DH z6%jO>zrsLBA{R6 z8JQy-0}QUzFyHTvvg&{BNUwPnK%UBl)^;C>@HoU}qvhR2QasCvI;}y-!`VYTbN6*! zqvhI1W#OcVquh$8eNdt8e&p-41}$6j7EDRq9%doy(Co>{PI4)9&ezo*BvOG1G)x}o`DGDZ z0h0H6`wQP1e(3e1{?b=@p2WF1oI*wRgu;>Y2eVP1r9b!FxltXh=f-si4_+2dDQmFx zPyJ*kZdYV{mj~%*U|N&3-y<>5DH(tDuIwjXK69ov=c6G6NiQr}87fIWdJAH1N^kvs zff#_BufvH4XZli`nXiJhYZY7(KHZ@cZpNvw@VK=L0AQyUZvO`3k_8knh@yuCQ58Xk z2go-sRS)^5-wA`i%GuGQwr4tx(8n7a$=ql5yPk~~;0|ND%K@@82}F1Tl8J=%pX6@`V@*@Tw|nYnp6e1WU}p6p%Yb6 z;e$rvJFkEE%541eFN%)on5>o%iTGb*pk;4u>&dg+1YOmIQ(4I-VDQIOfmU7r^Uq&$ zzHT!h6rBzaWZq|T7oXg@5u>`w9}Q$9o0n|_&zMgg-XL(ASk1Q;vwXA5D5;m*gj#xi zs0mtBXPqe+IT=n!9a6>5_r@7ojXx$kE0 zC5?!RDs%A=7WX6*=p8(V$$J;g72vQ*VE5>H9+p1uupY_!=mn>UBFYoxTmekYz+k$h@n8QKn7q8AsepV!k*}NczkY)nu-kwO zp1-xXgid&bcvvy5UG;7-mD)-)^1llSz&4+}P9OB4_fMbZ5gk=(#{ zBUDFUkBJFc76%E~0YSb<>3i1ZhGV+2308sv@jnJ0J)S?OW)Ot|?bMdW5Fs1%N&J(6 zD)?BjHl&-U{*;(k0H{$5EgK!&)p5ySSyad646K&^lCy1D&``g%-lFItojyAH4*#F@ zdlz~`v2~R*fn9W#fc0p z^}aLM;D0yJ0UtfF#+0>E14gCQnKT4;0T(j<+6`qV_d(2hvT2*%KqyP1djsF{~AO7|69$H2lk488my&5ZT=ZkD}8*mP@F_#{xBdRdbK7AyK&-HN5l(pq@;@SXVa$E^oj!**ZN;Gp7 z9M#;6*8qUcWxlYlZY1Ll`u^gOQhTqC`}$WmGjsD7ra6ZiuIRpZ&fwge2C;zqX)H*f zwq0$|HyJyQuQ@^P`aZEe@^*WwgGb?&A`d9cg(C0*S^+w`og{-kObM~ipZ8lB7#L;@ z5GG=k(3veUhyXTtd(uNi$bt>!lHUksI=z8u@5k&q9ekwgz(;n~WcfJjqT};q(?2{I z{KHa7-}lb6ZoMmn48>K41n0j~frPI+Yx?rgZL7=f*!{;Kc(Rz!C0xu*oeL0AQyZ-O zgyGZhZ(})wJ7P04VX|{Mio9iH5F4GNeqKC|4_nitmX;LUdAAndfK$r4kSXxGW!qWE zWcy-+leu7MjtkF!T|4<|k2Pk3+bdV(6Yt&? z@oeM?B+)SLY2>C&^=X)WYc}V?V6Eob9~9XU6$ToGuA_M`V6wcGfHb;JY1U!%?10tE zp=;Plfv@g4`6}R5xuj(p?r*!*)e^!(~)*RX}wMD1mL6S7hk7ank zfUl7Vp}fZaM$NL++%Trgs=|GTwTs4XR2jeo$SvWjv45A7@(?=gZIFjZfd(gF<;C7o z?VOMRGkh+kA6^#^*QhIlh!w7;Dt=VZ{f1fKX`@eZs8Ngz5$hp@(iLSkOpVhX z51(Ee^?uT`fF}}B|49QtGPRNp|NM*vtWTqTlV^I-H`@DrX3?D>`2j5yluF6K;NVXX zoJV#u-v8^Arn@sWumhW)l~iMOf*C>V#{`HdCDfCLOd2XeFG7U{%MqI`T<0Sm^)8IQ zvqgzuH}x^Y--zH~+0(Q!%`LF@q8v)2e|LgIY0o8L3zyb_@@jKgOtICmq6X~AuJ6t3 zFL_%dbU>o){44JSn^-sk_xDD0hleIhA)Kh2pl)h+?Ff`2sA$EfpNH6FbMd=nJ|$CU z+Lx2~30A6$Az33(5x#Kk!k+$9-6+qF?{J)jYbf#P3@w|Bx9qq#YfDw2Oh` zC^crP$EvR^ubDtkgIjBPAk6_#}MObGm6*|0!*4&NMfW zWG+4^D5#bnJ~uKKwic#RPH2xKUw~Dtt&w7jKztQ8>w!1^4n>sP-MnE}&#dSjfwAM0 z214-k=P+#8>+HC=WhX43hgH^U6mKfkA$)53o^MdLb|N?^#a4PZaX3FB`k7WN&ip}y z5OykB*six`K3Ys^${=K7gJ%a9v?Bd4cObt)9!LuC*19Vg^=9G7l`5t3H+M~<3RIb96=`N-Xlw{9aOF28MhIZHRcM2|YA<2%%!PA!e zqBQQrf|78n(ToB20XhoCeeDd+FYNE{H)tWo6M{EO?*u>##ythI2&Jj`2Hj*)57$6v zKH-1>1LshQw~CpHkB{){*RShRlcZ$qMP)CpZl$lI=jd9QWs{<=P{J|9_`X-YrBj|{ zbSK$_BdC70UAEd)Ufv+fVF}7L--S7@GeR4?u zq8?5vJEshV1+hF_V6;P-lZY8HEnCW;ep27}agXnU)LE6po zZ6;k{o?n(1OVuMtUHD8IrpaJy$Jijj?j=7|64uuOUPhVtPI0ewiyM0|$Of!gWeu5Pzq3FPeIVCNk z`QNkw2$xxfsOD))3Xa66IHaGv|^xRGwGc z!8!6>{PwrRw|aUlf}1fB>TfaX8KkC+?d=LG6W#AD2imwPbZ6;bx3fR@mc0#Jc4>= zjky5P0nb)r?9=ht-Y-6{w)W6d8?`>6osFDHAW7v(2Xs^2!FIewgvxVATA1;|$leK% z?XYA5-3S2YmGLc9`hQaH{F;#t6!vs9QyDW{dngL@&E&dg6`Q6o2ebr^vCwip&p{iP z=Co84zxg^cfRbI4yG03xI#?K@dS1=HlwSALnheD4x*W`WJzQ>@Ev0|uBYyS$y$(qb zz1FSN>>g`$ZNV=}S(i`iI(ibaYfFK#b*TJryRw|LGWiM;U1m086kyJp zD=YDhJ9B^BACM5{o9*rdwJAoYJPGlZ` zV;g{aa>S2HuaQ}BhhjrRLzh9`ta(R}rSAm)tqJ0Xk7ZzA92(dn?)}YirX=t0YAWni z+g0K$io^Txw~wNNp#vrF|G;(-vv>+d6`z&QJ1VEX+H1_>X^sepHi+mjtM1ryo>7OJ z%|A_d>SVpkxyq#l0~_WM{33N#oiA^t3tHy)SPH|o)_ zib+k>Sfv?ei%{%h6H`+=Qqt4&6$RO1X3F*T2}wy?Z9&?$YzX1mA|(~oqC}wzn-b`3 z_T)!n?DwaCqtKQKGDkP)&*t;_A#RA}bs0BG2zCX~7b9dr6r%=CQl(^N3G^Qr-CJ7K?X+LRHD5joJZ>f(9Iy=W_HDB)o?gD_ zbwpeF29(V{!;VvbV@s#eWX8gWY1YFLk_^e+EfOMEoV^O&*x2|95}Ty**)G-Vg2bI3 zRv=Zu!J(^HW;887pR56Y3V!;S^@IR=Rx!#>KfPkp7{m4iL-kUBN~j+jt-LWHCO;7m zn9Zowsz^-DLmMYg3%o(}2MpzldORoFS6Z^?;?wRwsy(f*k4GTwK>PO?36Zte?$4U- zzK7#VSRtn1YmK8GU>tg@dX*oO+LL-lpDU&BRqO@H!k(Y5`+j_9$%k$5Fr8~D zNA$BE?rFTzk{O~8G*mUIA&oY-cXT{Y2MJKNe=w;081@2LebH*B1nW$}IEHOGAwf%i z?R_DAZsXUY25EPrfuH-8nx}T5zt@UvqD_IU)+)dLjDcW2aJ^hB(yl^^O@>0iz9jqZrm8fxu!KVZsx#6i+leT zcTDNwf@w#-(mlAiBNdK`ZN&wgKbXLHUDf}wPQry=`ivD6!mNI0RbE&tU*q}^F^PwY z%k_aPeZ+jGvV}R`2hNQgc9yf|BWPuh6rxGPZtwb714(+{bA0H^ixv(^*3(twT-U_F zFH3PGByD}sxjey}EV@rI2%t|f*xfp)Kd?f{QG}<0qjRd zEG;c>GC|(wE!B~2O#eZ%2`w~fd|#w-Z}E*$QPWK#OkY*P@dc4`@;tS^u1BJo ze=@W`J>uk1oaPCu;1`ExbF~ELR$;0ux{*Ij!DwtVEEJSwcH%~-PL^iB3OZ58%9RPfGZ|oKkCQL@zgb_@*ZiqF-vXrN{7dT$G_vM*qkg^GPJBbD(!l| z%hmpkH_ecvuB1dfzn8l40mKWX4eqG0J!~(Y-6iX5kTg9`K;0T2{lfRNy?9XN7-=U$ zj%KZMIWFbJkU-M)L~GAHDeaKtUP7luOsu?x7dq?4CiA}ED^wb>tp^7mY6EwB-TK(Y z$uwp?VCehT-;;6Ym-SctVInZ51r$}E!zK@O;6)ICcneGAIC?R@zL%8)mFje5Xj4HAgnkbN%)f^xGxOs=7ROgDsKRnXyxW$-R$oE7RJi5>my>7y!ogLy| z0slY!A9`uYi3-W5vmMegHKaIA`zh@6u_=- zev{u(pm2U!mUX{B&KdhYmjfB#aaYn4-Hs;U?L%`Kje`=w2nsthtc)!z4RRPaN;LhZ zmc+l->{Ul!Rl<0%l$x$Fmv35r{aO5aAO0b)?1ESzr=-eQMr9xLBw~b{BXxM| zfzd*6U_QI#cQc=IvkQmO)1I%M0aM<3Wj?)gHfbm2d^^CelEuFFN#~{e0iz)NnFx%6 z4`;OPd`k09wk2ECj)HX0-}|cZ z_Rl>4k@1%7G@1)7z#4PhFxfnLi?z4}t$N^5s?AoA!#}{u_Tpw6`m~{?HRN^I>|d9I z=HOFanEgXb-06+?hW&H;vmUzpx%C{?GgH?P-A%CJKl}3{sQp|0;6t_a+Bm|P-4rdt z)qFE2vY&OS=53!ztx>1iOAs@_g=9Z_t6_aBIl1om+W79}7?wx+{rdqNkS=uFxlUY92{4t~4vlzb=j`(slDg&LGpPGh`rW=R)VivwN;cUC*>LD~)kTjV zUON)F&kib?IBfNKa2FGYr{A*Cw$V(${aB!rR5~r^C-tAzuB<*t8DBnqRKcb|3^+RV zKKd1@X4RH;SGN}$5eWlmN{DbWK9|@oUHXwby>LA?RBdGMfC=o=O}v88-BFrVndK8_ z-zO-@8=+G?i3S|J1J;6Uc#D6YNK1v()Kb_;g8n-+m#3f#9AFw)YS9M`ni?FBFwi>+ zu+?aIKYs6;pKr1%>0`TP%^>292p}T1?OI#B7`kX>VsvgG#OnL`_tQNdU4z>XdvX5i zC`yzym*}VUinq)B++~M5nPAkX!O2Yu+R9%{tgK`-1qCe1b<_j9u~VpVs&1Z_&j@mr zHVJnPN6(8PlS{O2E=?1a$l9#HQH zLcSk(-hvE%-Y1;1Iu{}$fmT#tszD@XBZ`p6Z z*{!y5Zr7GItOPamj=Nv<+<)y~1ilC%w0Ob$PP}NJ*nY`X6`&^eo`I#lCUEZb2vEE1 z_WUd$&7pmia+a-edY|$BIR`db@VuYu1SHxmAN{qq$duMSeLa0&)Qss~$^Ti}=PQ_R zP>b50zJiHBn(XYNOefNg#~*HPnRl^oDf{&gT~ZoISN_D|0q3vpx2U<(5S{EDm9bG)Wfmy( zDpasB1TC6m=(X3>LurAz@~Tior4ra(@SIs(ax$g<5u@N6jp!{M%(wjs2BX}(QWKZ& zRAte&VM5fr2fCx+yqFAv)6uksQI{Q2tiIwLx6nfTz>v=NQG^JLz-*=ll5rs^3(gymemLMf?`)qebUsWcwA{^|+_ zYAW7QUkiR_T(rMr2ZGB>pB7|?TJ>B0F6jboYc+^=xTt?dEyOn%oH_}Q(2Sa`(Dmhp zOT#D2efbC@sF4hRCb69sl{E4gMw-%i3>S34CmP}k|dhj>*L-@JA6Q0$XrL}C|uDWe%V9WbZ z(a-_>#+5bwLOIL=LXn|}H99Z|JYQIURlua-hpxw)dS5m0gh}`r&7Fuz{iJJrIGiqG zTo=oJyL+#Ynf0wm@n#dTuFYiN($dm57~KEE*ZK1V)u%#M$3JSw{&3td@+Y?jBVPA>(q^AGll2)Cf?W6OAO8LrR%ZBAg`gipo@>D z=IhClnB&w>3}~0z4cXQ&+tPgC9<~SR6KgLX>lU2y+SgBq)CAUx8Qg=F$vu?oji*sc zJ%r7kfM`U2=jf_kpQ0NHvoSxvnvZ0ZB~9L5cl*Iw_k_&O_u?MCE~ZX$L+S6U;&bNr zrMy9w5dT@~!l(>7WGX79z$vk}gDOjy#@2FuxfW)*NVN?&Wvld|y88dz>dj~K!%CHq zySVeQnTHsYjrJ)CE4H;|Ww`;3VyyX~s*gJGd7-D{JA#JpPHQvL9{@;(bZx0)AlRGS zhX~lrf5!q!LxNWBIIL+R^x_zSs(WP`>T%-KxElr@TN;tgjU45q3-TAHJ!wD)r3MI` ztQ@yWuUR59hs(XY8mMJzGv8fG5px;r7ZKh{;(1b1tF3?AkFLD{zs0630s`u*p#iO> zIc-7tj|=hE1mpzpjNR-HrcQ9Qs6r24u)1FMM#uCN=y4tgqg6QCk+DSQtve*tNmkkU zji{+R^cr(!>i9p!DRAOFuCB}zk#0JX8y}i(Ps=to+W|m5*6~=-ncRy@uCuDKZ>WEVyC&tBTolEi29o@ey;dvF33sI4N&iC;C%l2Y}`t)?dfI=tLl1fEmW24rG zHS35iJ{u(qGPoR0k~a4Yg#gJEK&HiCqt-2l zm4WBPQIY6aueT=F!<;=2x$QA`z>m@wq`6H(x}DK#(+9Ot535Z|v_jo9A~qv+}!LA73OR z)_gZnwG%C_{fwc1uy$Uee}vua<14l5iPM_F-)(ZFLz*%DZL~BvNU+|g_lp;K1lpO!#o(+wU7G?|x6UnX29bcMtjQ94!msV?8(QPzKhWMnZ2YRlmMfa!kJYRk? zieqdXZdCzjU!Sx~dY-Y(`HB=x43Uk zRYx&4I!_q}?Mq;$;AE+xOftMCxS$eo*GSD}@0n>qdVcG=oQ!7}&`A=IhNNV?{NtER zVgr%!f&zP1!&eHXbz6)qYdI_FruQ7Q{V7VgzEiM7uMRTnlh25;#VKeR4=$Rb9#dYt zJP}SYxz+P((70`zF80`I81$zEbybIr)*HsI^Rhv5sZQ;$^C?GAXBemq#%|1w#F4=6 zeRJiMHg*XKnsHo$KZ=?CJStslO3%qz{19*RBW1x!B@HU!Ue#kR;e0N~>LOYSy|jPz zdLEBDM>il$?)yDg*H8-em_OGcX=;L5h?-t&1+osYUKhe( z#|An5%TuljC}5UjM$7dz&Mz@nP0v60~@O!Oa3}WCp%G6uve)}fVsDr>N6yC z)>k{@@ii>pQC_iHaUiCj{H~5*WivE}IS(WNoX7GsJlBs1djD)W-XQ0awXa`sFR>~NUQQCgO3zz}lZh6iI8A3V>b|^=j?H7} zKr79kb4G4tv@~w1NM_%OW#f5M zQ52(>CJH16ldlkMRHqw}FuK>^RSDRz3AVy}HJP*int%H}1Kg}m({^`$(Fh(<=43#= zpG`G{a{5<_4^;0GH}xU!Wl9z+dnLK!J6*dWUpV~TZeLRw%vFtXDQ1YA#n%WzK~JAK zw>44by*(U5RdPJENt~Tcvii%)C;_Xa|G*dT1KK;*Y3|l}8m&vJsDj(*5E$$gPfyzv zgLv8ch>(qBIbk0Eu#9Mpc_ECo=dE;vfpwC}^xXP40rH@#!+>JBF8cek(J@c*sIGqz z+>IEY{A`(R0;WrvS)FK%5#0U?QOG19kO15i6Fb^|_Q%-$9r2AOz6XD1x|A5K#H#nN za#+LG0PsH5_fI2Ns*-VOPPsM>Ul}}+4PA83Fx81X5d8MyeI>ocs@ljX3k)>TE^r=l zolScvlM36m{*Cy@Z=X$z*v`7M&u_wWB3RNsyN~G3UXPat?N!JTgNs( z263;hwqPx#k*jIbCo3-73!TJmyTQn^G6jCT17tp2=GZMH<@5}Er<_7Gb0JH3_U#uY zp5JsFq%``uNyk*X81_xCAM(Hwrp!~YW#(w`N-`lvG`A;&_)kJADTvsC0%W+{( z&xMI{8yH8Dq3|^-LF=pj>Eu3~ahz4}Rq(yz0a%Wmq_Tck(7Gmi2cR~gHZSUiCEOKb zJ9I4}LW;bQkX|4lV_Sh2?wD{gvIC;KKxu#->UObzDZ)u+>ros>C7hnlCdl zwy!dSR0-5;Z((}J`|UJq9oF-uYoj#BC;wP@nLR}A&ZLNo36N#e1gzdCEdBE!N1ZWm zLzTAh@2$=?r4SRA&(gli-YYjax%rcsuQ{`%O4Koy@QgWnkHBp`Z0k^7eG3gxO}d+& zPQF;Ece&IV@01$PPdOqqvrf>96Hz!!AocVGmsVd`W*A?VQlig;`~4`pZj#oEj~ow{ z*J;zcp(?PrxwCLor1^`kIIYD%oJ%gbu{NqJmjfr2J-+(NsK3S{0(J``HFEb7#7H*$ zu^hKNJnZbSPu>LXcQPe`S={HM!R`takc>TA+Rha<%>=Jn8;1#Rrgqd6?(1Pl%fU}7 z(&SI5en+h%emzq~nK*{Jwzg?j15040)*I4~B*=V|d;B(X`-@MqG%rqda@ijCjriIA*;M`mMn20G^8u=%kt_@h*_k_62}WHOi6coMowP;$BugD3va6s!}CQ3 z)nA+!O9SQ=^QQr{=!OC7le}_WOt$U6Vv|y-p5^}>uQH((t3FpsibkNJdMj2|_ODTu zgZQ1V2IO{n*A-sv>H7->@PKZ4Dal)oG#eW|+8WHs+geeK)|Z;Z?s@w#1hy%(G)k27YIr*TPDa)KBzzxZd zHhk2-SqiJblg56%Q1(#82s`7%#Q}w`p|xdtZ0A5hUj9qj7cnZkbjgad)A>W&(1O^v zINZ=S&7ypO^C11PYvWx;e&^=h-Q7bYNaXWjLFmjF?54`E#~(=e0tKfhC&p#k3)SD3 z>nqZs)8_|6w(y^&3XlnYAY=Nqu%y%Ndc?eZJziPWiuFhpn%aR>0ITLK5=Vp0%U2IW zS{dvRRjCh5>8_X^LxZ1f@CXP5C7ll%i4nS1-{L%oehaa0k=Fhl)sQxAcG=>pPFM{y zO+d(5ZA?P?qjc=D_bWDL2c)u*E}BOZ#sPcvEfY^01Gv7vW@UFu-j(P1d!cC$_s7&L ze|YZ7?z=e}zs*FanK!*~bu`c~y+`@n@im>0xcH?XX4S$5LV2NvD05z*Rl9e|?6b1QTO zF7fyk5~ZJ>p5Cs3lx#4MbbY)|V16J-2dembYESr$6e%$=ov<(|%xPsB8y17-l+>W7 zyE{MW`OK9{wOL(#LLL~|6_|!gIv?F4_}oN1+{c={NT!0$?+L9mhmXFC2~#WCx0?N0 zqBYfQD?7jy(Eoy_*1>rmYw;yS!N_?p)_A%%d^ZH2fMBvLl;%euuKGRzY(H0U+xqIF zMnr72-MMn^1>O_1W3fqqFe2G0;&INM@j;mnkO1@m<8(d~#T?%u4>3^bFwRt0WF-k6 zdlG-XE$_A!q9`w~SaFC?Ut@0WO zIa2iWpJ|gCGfdWwPft5nYmEFEi6057HZ~dDpewoIgw-2U$3aEUggW>C72zm7wDz|& z8Qs)@JZUsf6i0)fZ)eKMjFZ3O?=FotZ*$AD!92tIi}Ar)g<`(^|CPj)Q|!hJ=}L?H_9FN$EPwAyp4(P4HytlE_?`0 z#XlCN?||W|a05v@0cv*s_+>brYrM`T#MLf!T8#P>6W}Ih{nFw!Eho*%NhP+twpIbM z)wbLh9$;CD)h5{RYw>zR^0?2?6mgIa3LJGP|BYCVIcJ-ggjrhh`v`;*RMEfYFM8(aFLhS z$YX~)=SACnNvjL^sOkOGy{7Hi(e)SO+JinPelw5xBtG%nyK9$9y8H>?OD88 zMcr0Vi0EGY=5f{q@34?@JvU6ZNN5|ZDDKNCAJ8K?AOnYnnfv6$et<&a8=v=zT;p4d4)biVC##RSJgi` zm7g9Q7ab2sz&B!2X!=4Z8&YwArgJaWRm$djf3Ku@2pRzBGM!IakSypOEnOFZG(6>x zT@>~MMGc|CZz*3cuQb~9J}PjvS?h#nwwk`6V_-lM6&2-89#kV1okLSt!kc_NSHK(e zr*<*0->xvz`5gCnntilzPQlc9$F4EiGGtfWcOMnqK0Gmd9~Rb=Mfpxd$JPzS??YbP zvJ<4t-%Jn@F;e?i!M553N#b3u~k{wpjXk z#W~7PjFvRteC{9k$)D`)hBAY+JK7dc=mUd&DTwf#-G|QXLy3rpWU@xX#8U0b6+iHP zyoJ@M;xz9lR&LKUaZ@8DcSf!~+9)kdo%0J8xA{)?zJ;sn%kAth%FF-bLv`H={hfN7 zb?;2qNw39fe$rqh8%*l4Lh~j1m&ZOKzrPl*m{59cS3Y zehR26n@WfxW~9wu4Fb6^#E*Km#N$Dh4z7Oc-_7e2yZbIDFQ~z_5SYXEJy&%mx$xz_ zTGFLUojyn{2GA0dbSbfiWgB8Y(zG~0$EX&1%>ZD@qyr?|7Qw{=ZN_Mb( z8a5j#@^R!W$IkkV?=#Rq@V$=ZJv>Hpn4IZ9Ud|dew%_vsWQy5n>v)= z2Kksc>eSF}O;%F`cp>#Ib?7w8`cInvEdw2apJbs+(GS5(F^7KV0SPQ9>MG;gU$|a0 zB4U?P^UR8TR5JY=qQ_*h=p=J)o6-G-J5-W)d&WO@*aX=aTdlFusO^D@sapZ?$I&1J zWbix2Q5LE4Hr;Woptn+lpi?58;Y)K@XCeFK@16sS|@n{kvJ8tnNo%elBv)n`yPlxkwT%Nbiw!ez~DqN=-&ucdq7Zd`wz$ zDFO{GBZ#A+L4h(IBhiky%J4aLtftXAI9sRm{V#m3wm07l*F@MviMkrxd6^Vx2LAa_ z+%dss^8IH*L{!URYx?{JJ#^_KV~R=u{J_C8l@^^lN-=J4ch{4ZlhbAxp>`pM5y z#f0~~7XQf?UKKZgXMKK|TooN@KNKZi6pdMQ>8pCH;-)o5Hi14r6my>VFZ8#F9gtCQ z=%I}9vYCD-Nw?9%E5&3h(OTxakc4Zyl3L32#Gc1-?QGt3rM_HAq(^alSeWj&l!ZpI z1}$w%eDlE{0XqD-G7x_YBR5j}rb{M(7Cf$-f!Uwa9-f}_nORxRU6Ie@;9yQ88j|%o zD6gLyEoEgz5!C}DVq-1AFipV+4PpVq5=Qd8W}|Wo>-vu~Y-C5JEoO(-2+{xakY|OE zV9y}$a$o_p2d)@~90Pyvn}7B#|K(uhHpIi7U%Xq;7(q)V=zf`!XtD*# zIy43?7mTii1i(-Y+zj!N6}~qbs$l-O`QEUL)r6Kq>VfB>_kJLveX!x?b#cJg z%vCZpNOQKJ1&XX1?W+ceY{RTw*cFq){9{lyUoAzJA?2q)7Adl{(+KQI!NL3c4z~*X zrESq0yV<1oU;>bPnwgPrD40fott#9Twlt2qTbtUeuQanUAUy_sFLbA1qBwZ(2UCo)zTe26k)QU zewRJ#rN}p;FXJvu={Yd+ERhcLP@_u+%cRcNpybXsJ*D^q2myW6w8C01H5zx#1dj=(lZ!8lpv?nb`Na3bGXTi|e9Q$oWrmRy0`O-6UX8 zDbTsH2$S-c@#P2VWL^mAmRLcTdf4;~Hqh?{Yr%X})Nb_IA(1B8m-KG)Cq03(H zlTJggyXT?tLKfJiTz+z+tX76;(!Fd-dYZlOSvo;SRXw5$P!{|YnEnC3 zl7f4kI(!Rq9WpKtz63iU==q>DP$h^p&)${i&*ZUB9?Ge`!B?oDcPDzKdij5I0ld?; z_s_`)f9=SNoyZjLm!`O!th%h(rUY< zc>p44gk1{$);|Iwg}<9dK7s#P`P8L_L??_@fUZ82u_TTV4KxU>r_a@~3W?WEkB88lPo7X7JGd8$0`$P3cu#B&)7$qD&Gx{E!A|h9}AfJ^~ z_mRhTZNk&KpA@H|Ngw;Ebt!d0LSJtXL)~uCzGCAeCzA?F#eJ^`t9=&_yTm0F0rZ5z zcHo6N6`G)tr3C$66wPER66;gFs}{yapL=-Mm|NqE+s@>@W1JROogDbYkc|&NE;Bi>?cAhX!K`YWS(K zzL{e{Z3$cVwrH#1V_FR88oN3=IE~$k^!EIlkjwk$UMHj`iF00`#@Of+8JOwKE`9(X=W?_W8i2WZna?5z#Dzc$*x@tXS7z@}V(BsObCc){IZ zJ@jx$-BQiB!%Uxfa|)6u(MUTix2A%uJQPHPg#4z9jqYp6vJOH}0~fQw8(Zz>otm*> zP&fr-hP!A;Ht>-RmagWx83h62jTCuX^{%p*4A_I1{aV4jMWe9sRZ4;|Zj0w6#NQT8 zpDyedL;1Lv^P}rK3HOz%N3ir5b12iH83f`Ir7jLmU(3;vLmkM5co7zcuGh;)oc5TL z40n`@2n`AT2L7J zHmdg{e+?>7G$lR+zwY@hY@vkPbZvyAM+|~0f}^9O(XFkmIN(WWTm#ZMyjze$y+ZKv z<;!Mx>Bsg6e}8}MlJhWxYTPaCF2-5A#}P9gkG+m`BPsF)$Gv`1=k$0uN8ot0ZM`Z~ zHw(d%F^YS%#kQr&piAP*MqBl^V*yeuUgw>1fiQKE%}b3vVduO8ZoQ6-S))dyi>tCh zdsnayy+G&k($3+*hqMUEv-WYVSx!+cnS>_BD5>8rmtPBX@zT=t#vXd?AGbfLN{h)t zMd#%3_hP$t<+Z!}r>ZF2^+IlasioL1Udlk{ZYIy*cn??q&>Pq+GWJSw5rHHo`-Md_ zS4F^2OXi=EWQq52I_C79fPKE8^cp6_u_}P|ry%N*_dc4@qxGvzM`qVyk)!stEUJyh zMS@W+pIzd`zS!FPc?x}1Wg2vc&)5%T@UG#AV~l7gM482(`-XYdzLLFW{O6(Up31S@ zlN_b{U1`(JwJo`apkkl&1lih*(m_tbAG0>pC^D9N9^C%qBqY_JK*hqt*El7OIwLmb za<|ZVEZxFqP@Q}rS?)O6cd)j>G_i3rLwspu&-2O`N$s8%eHIZpZ?CknPwJw3JlNv0 zN!0Qp*0sNSc=$ECqxQ*Wzv}H9zz(UfJ>EMHR(pfQN@_f)lh+^u?!Vu#hzlS0Zn^S) zA3=cFk5=4;O$SP`$3yKqoOEvaB3_X54ErYu2I)enR~6SQN-X zxEQ#|Sz$Zgm40uw*|W+JfTGr9+VEPW`Fd@S-_sog2 zUgqW$2CL+8x9{BEDmlft!vJu*Ik&WakUai`vD?z22O|c(oc$Q(ppBKba6UUIeb#u< zspQq3Nd;*F0m8|FAPhoGkmpQ%6C^IPqoJUf-(T24re+Zk5b!=;?Y#XWmb!_zaSmXY zx^&E#=fAbLscKD3FaNg?RJ<+NbkT|z6H`r^?adnYtNo$KLt^UmS1=mF@>M#G{05Va z@9al5H;=;;(cr*`^A?_+a`VulBUOZePGR1i4WYoiy=U@KzkIf0^0~DnzU@^KhlNfz zmCCz_mc$F(2tMrJG|hV7JyN;OVRmHg8d00~sp>A5{*$ip?6qB#JJ7Dr-}8Rjt+ye? z=_Y+*_jT>>kMi z({V}a=n#QlT6^aI zd<#A5X;~M5AelF}7>-!h#H(z)x$1+npDW2S5aAGuFQ8-3++hUM@$Q49cn}>3OK=;Nt;kK3-0_J5GjdR!y3? z_1?Xb@b1SYM_`0J^35T|;>@VY$=U}L_0yPs!!ygfIZ_Wpw_PdW#yYObZioqElur}5 zPv%ZOBzAavFAX*IZwxqIQg;c-*%Bb-ZpeKLx5$1&Zr$Pc=lbb=(*C|mq~38njGfA5 z@h?`$LfPKrlUR{}rBcgozhr4`im|mmHvAw7J=wYWSr(z2dQV%~Z%#M*kLk0LB|2_B z92rpsr)I8su63*ara+JKOfvxce1>-jwOD$7Xv4lO8olLf`*%b@Y^h&$Hxd+U zb^d)L=*<0k2C4}XGQleyK-Kf(4VGx0PYG1Uo*Z}nj${D|`CrS${q(X0by zs+&V%S7aAz(f4ESzJFk!!`fp{PezSMyF0mCZmZ{}l3mRkl5A>*o+0!7e&jmz)tu#b zG3;{v4MX_qTk>n8IBIJ7)}>c_x_s=ilgup1J2qp~Zb$GuLGqyZJYwsC4){_2&S3LE z;>iP&#-+8B@3;3buYn zlQ?s*OcmmRv!)ulu554HUDa(YQz4Wid67kE*_Tst0NKa$U3gsC+TX z#nTHNe+3vBx)~PWiL4yd4}9>wK+8yAZ1?Z;;X-U{$lGLjTvIdky!Nmmq*Grm$zm=h)?FgWXIa&V$?}s&(U{-;pf?;>(35>S64QuW? zN^J<}nfZT8Z)EFs1yLdR*^Jd$Nl-+PjZtq)jxL=vvhR_OH=(~vnvluO%$nbiqAz84G z;5kDN50tLp?!B+JCC97V%3Q*F0go0}#;E4i&pl>jkpyT3V!m{cgm&xk<{;WICJt1M znVm@-9NM1A;OTM?!-}J2(28t<8l+QHm+Us^f-$(ndy;Tf@OD!?O_hXjhW@s6gxO4Na zUE;}~J$%)(c+zIF+3jjL`9Nir0sCFWO(~;&HZrjg=POR!Ia>#VPTdhj!Fs4r)Zeg+ zLM_kl{5SUE@Lr28wV)0@q|ZCTfQ(a|Xcuiv+6GEnYu%(pj-$vXS{%?9{R4yMJ=|sU z1L{PAuOU?p-!u=C&6P+Pi&iFDeZA`&g{GfQ4(%(9#U4Z>^_ToW%0*jbu-XdrWzr(g z7ZzY+@LBL*by-9Q$wKV;up887YSA3xfyF{N zTDqgF{Ri`aA@z6{9)PSduqIKG(c7O!|>%-1E0&Hsyd!0&AN$=&d;!gQ-6_cHZ?$TjBqxeCb`Ja0_ zC*V(u59;l>OIqIUwE1^(xOnn5v}JcGcUro9JeNO*vU%WRueUxVVanriL@A3WUC&O! z(s*Jy)al*6KEwQ5yodXi=Sb&1ztcTYYQ%GAI6d^#&0Ry;Ze<~kF2s!cMoo5JMGK`E zO|Gv3ns~8Pt^e+aPD#|@!7{&lMP4%zuGGJCe+Wd9epn(dhkv;&9=5aFr6Rhvl95j* z%x%n;aUSZ$z*Sz61BhCV>@Mr{*bBsLJ>I%+?@3EXf=aQaYBxgf)*Y=Z@wxiHlYENx==ur1xA5gdd^wcACy_)X<}GOn(M2rlWaKMMC5vu zXOWxyBBo`xlw`nJ8*3v$lE>=Idj2fsUhUvfBC^+s4RHcZ_tm6@CoSI7sXH0A*SL_FF4mTqu3P<;-U?^Qg-q~v8;iyF99(#dEz-$l>Mo+) z#JN<903deg7Ysb}TXk{tRPnIc7&Th*eexW+`XoflSWo|5*UJymJ%$~`Tr^$;BaxmC zeV4Nzs@AS3>3=i1fLOn9EAfT3sAEuj#Ef z=f0b5dLgp8caRpcoIh@$D6PF7s{wp-_X;#}+8fRy&dZ?!@`hNB-10{8>`GqaZGK;R z81GDR{FJ>~UW167ls(OITXk@+1sQe$UCO|MO`{@_fmDIe#^qXW zgvbM>^6S3P@gKP=9mn4}vkiMgXq1U}LcoHZovi$MaS7w=-DiY^-2za$i5DQF_Q?ak z#gHW+p_V@U(T^!p48%nyw#bbCsDr@5IwSZ0#rQy5ApcMOKX?iZpZy2c5PVkxzwz{e zn704G6nX04|8S50uOQ+78W0e)%I=BgF6%#RE^3aTqaS7#FGNDf7KT#E%TF{;GPZUV zlrMmF$DhAHoW%d0R{_kxXB6;3Y+o}DxFyVZ&^Sy0;YCo_0Nqb`(SKdAon-{ZDH_nh zj%3am``ONJ0NRMOP#XBerrGA1vD!DcE&ZPMWc#VZ5vtccsAZ1o z(w7j8-54f#saqMMj`YDVoq*X8TpwJ4OC+^^%3I*>UgqiZe*QUT9u%F*`52p0SO6-p zY)%Y5p7_VtS}idR{8-+o4PPxQ?F!)v1tC1EAL6cdj~pe9Cy8Cffv|31zI+R43_g)V zdxH+N0TS>G@CZ*Jh+tl!vruU@en-fnDnU+2NH{Wct~N<#td|&yAis7u;*a$QphgocNV?Metmp{BLHf_fwmNcWBuWq=2X0>^=l#7lGFX{3w}R01S|ubxcz+g6Y& z+8aDlU0C*R4h#(Fypz5c5O@B?3kqZn0zBk5URD+E0{R9m>!3&lao$NBcj)UR%Joym zYL*z@Yh)42Pl73A&u@@wvq<(Kz+q;sFosh2!YoATkGcnKsa8XnM+HduUd0jDa=KoDNrQ>-Sz8 z1EM(kpvh5h>hJ0K2A0G)wsF~yjg8&lHmDbbmIu|N6IrPK{maF&Oa?G~5*g>s*AO(Rh`<^PZBg`X4yR)fa$*MGcai2{qV$eS%CY za6_}0mDS%P8UKf+lB|Kj^~02(KSe95r*(>^9zeGE_V}Cpub*T7+XuRlAd$Evl1%*% zYdk730UmDdp@L}T%!tU+VbzGlr`szZGajC=>3R%M+orfiBzO)5l1mi#` zCaFX5pLW;($G$!O?y4u; zpC23>&I&Qm3&iW{pYj4q_wjPzB1nrwNF)zHY30wKJrpKxRRnf-tH1?Kf1-_DI-%B# zSW4B2Q1ya6+|!E2_8Um=7S_YS*ZN*gU0s4RgB`qK3gAxrih}L@`vYnwx=uuG!(LGo z8C<_4@?y%TX5_(UMm7+5f3K<`60}wTClrnUH4g?SCPrQWjUlTmh)hHP8sIg>`n2z! zMwrueB;+TbVx*}oe|)7~SBClYjp4t5a@60DRfFm`K9AmL%Q1=tA^#`pA(%*mU?c1J zBXzpxX{g`PMg^b<6Pc2LF?o0>;gj4Z(LIg-@O1|En}cuExysP0&2CX!xq&}X+Hw$a zXYe5bq!m;IsZy7LPh&LEAT{K{LlYk=JEhY?0#sqN1ku~|0BlpzlQ$**8l%! z$@Yv>Nu}&G@tOOU{EKgFHjgW+XlJW=Zz>7|up&6TiTzPB{*|ryVX=E&5#^EpdQP@m z42oST2!*GG|F@&I=(RaXw(o0%@!m=Nl$^Awj(Tq@I5NEq($dfeQE(mci)9>ZF2^en z5p91@+Yg*jG0ILG>`bF#sqnhTZn@lnZ`}G0Q~Ao|eVFX>p?UW|v!#KB8%o=Fd=jIT z_NvFDb=v_NgZ%N=$fp0X&k* zS0}gg;Pt|MgZ+GG%s_H!P1$1a`2XzV+jI)-e1 zHqs;pEvbwYEi$l(pnA6b>#LLjzhgHJTA7KFwblB~f!yVRlb81rmGYEoi~G^8N%v)+ zU61S2NOh6maZ`0)aUevE8nf~?OOZt|9E_NjuHq|ch6vzzm%hf7Hk zhog_lr3H(I+0TvrisY1pxWk9uMS6oV06Bz-vzjk)31kf~MH?QwtM<_r?@Z+%t+B`( zs6nOBWh^A#dHt@qUYLX7@h?X`i!z=*6_zhgcPD%RgO*qZ9WXhjd;Om8_~ZlG3_q2< zmsBNW!EU|c`n1{T=p@rhdUBLQKwMw3Aeu5-XN2c)qPPmSM;T&{Z#Ya~mULe~?%DD% z@GHHoWe@ZTBGw$x+xTO=Z!MvU5A8LEBs`Md@SzC25+)5m2XN}6!NsaxPEe}(bZ3@# z{x$D~q4&ixgr8?$c92x=HI)cuMTQXwj@kc)`7?FvR#`>t<_#kPTLPa3TRvHu;wE82 zAm5Xc1Jj#t$%P6~KzH}9CuF)C@5lASO;>RYsD9}rPiM4T|7{R0dT;&+Y@BD#zOQ`OB9D>e(*7;aG-l8{G?=MolX<_1>kMCVoxw2Vi2de6?*%ce*0GEc8R|SU zJooWGIvYhY^9*me-0^$}q^F>0CV!f@GSAyyzjm~t#>Eov`i*D~+^Iw1KRT?`6nY_y zY;I>4l9q&q%a7f;?T@_!0~UEE&#_BMxAlj2+4DaGz*UIir`ESIo&#$BzwrB7RQNsk z!8T!Bw$|50;ba2#s)*Sbv*Ji8xDa)hxpTq5Kk)RCJK9w1E zDxub+xx4Jc2)+XY=yZyKvbnVDa%gu680Y|3_llX>uP&%{YM`31WDahg#(I@d9_sFe zOBX*vkJ`RhExOP_5#-Y+RS#Hns)ShXpe$+DT)PQ zMYsM!vLMf%f05!(zLJ~*9PI1q3ha`>NO(L`>f-GrCIpIu417r3egLB;!&Gjkq0&N7 z1tE?8|CS6ho9+g(yR<#Em^4GHI#XqmS^M*Un4sPCK0RiYqe>0T##{@r3+qxP-<@3htzBUgM zBH0l41x?c~>$|1iQ(}X|QEkiZynoZSD;m%qe{K(kD&*xMGqY;S#uz3KB=(5dj zj)3@JEiauZoSsNW7OF|`u;8SzSatgEfX~FUnRj=HAdmY#U4Fb9(EA#0VmQy+C}gtH z$o~OMGh>oJBa5t*6aU>;+}!DmqNxU zuz;rtNxXuBi#Z>Vnjb^UtBAZ>b7&Y7k`vGStz-&44#fglhDVDbbinco3v&h}8OUc} zcIulUO=c~+F`qs%nm#o8nPA|y#Bj>2K`B2!;DB97LEO~{s-m7f6mT};!NtXf+s_D~ zTaFX#hemRU=CG;ENtYe7GthsoKRMwXgO#{8=8Q)e`ibjyy*3Owb<2KlN zkOl?0BLOeQ21GnW&@>|mb&GJt4Bjwk>4^V)uJ8>R#iK|+>mtJUdDvE%g!Z0p2UAEA zE)C%Kaddsjdn1hDYF|cUI~>_8YUfv^>Wcd&o<{j`Qq5l!S-?lXjzZ5@8na0@Lh63* z)ABdmqvOf72c@o$4{=Muh1WjA3yy@IjcQp*M{3xmX0>{oEaWjr_>z%Gu)e0Q$CyQO}aqv=dRpGm@WZ8H>AGaTa|LSou}ZP z%*d6D$&uW#uV()jrkku@-$M@4zLBXLLx0FdbM9y;{x)ms^B*BM z&(9VuI2L6uCw@P!%73qr+545BSB`J~s5_V82X79ZU7am5VxSlA28>!8yxt%PmbWVr z+&usE+<4fr;Wa{1-{*^zYD5r&Vovf>oohO7W1b7>s4d{bR3@)}L7$o1Zvzd-O)hwM z8?A_rm;q~@dTU{f9{Ey!_%(h9R$?+Hz+0>SrYIo*j;3B|$3V%AfojXNw5IhEAMoW7 zXFeAX)>G_~d&U9HQl;>~rg+#6qo2S2NNnPfBCBC3dmWO1?44{70K-JTzqE8aXE%)I zuy^4U@@hiTGK3SZ5GbB)FOgXLgq=rRZyTRUI)j;GzAVGt0M>F(eNw}JrW`uc+8Lyk z1lO(qlFTY}++sc@W2ucSK#rr&O-gH(ye^-+MzOU02ll2LHYZ{mJpG?GVtPhcj*Ypz zzNXh$?>D#;@TbRr#Lj>{L<>0j)=V2!BAikl_OhT@5dqqDltnhfM@6r3O1qLvu@_K5Zz(a%#D!=(TVnp#B)t zG72)WqocUz`h7NP4XnBXtU=`Mnhi|~%&!5A``&bI)EpMw4^E6d%I0yymGL58ay7?T zzNDX5__z%-I(lfZ_enW~-w$>b=Slsjc=rw!tg9V_H?^;%y?X%wJUFGRsd-0}7BnwG zw{*zHh^w8(PT8`vo~*R;V0)W zL8S`WlPn4uy}kR#t*)_R?NISghN&Q$DeqQx#3}>hMABF783OvZ^;n}o=kE1fDdV*< zf!(Bnub^bf3fYSniB3TgjZHjfdRwKFR~=*D_y)WjNoOgCNM|W% z*Igx)|EAhsB#jK&ww53>$)d18FMS3{FCI?1`Cw;>jUH4JGpw+r{7i6bHjjon?NUPQ zOE@a9CCK$~i2in}%xGx~274m_M5Z{HY#ZsJ08+Xcj~O4)?I%&6Td_IJU=|~kHWKuM zc`6>vujm`+YTBAR98@TFHVW=TXxnW45{MCQV?zEG*ju}O8P=wzY5 zmaF4BHJj=}PN0k98z%@!-1`uRfF3}bv6-RH+S3dAuYxk8b#yB2N>QCVkpAC&Ln}`~ z)sQdLS{0K;U%|7zyX(GRJHr#+KLQcI5|y zxqY76a@u_JF!vjl^Z0u-hw7^69he>>PF^Sj0)mO3D%#T$ab`b>3#XJw$UggxBk+=x zMB@(ai=daM%gdpV{TUB|XVbV6>IVy9+<)BMRt;-S2_80?Z6~K{rSevaTwiJ;BVW(q zyUD%^Nx$6{vO5IcX5ck?C{Eq{93()pc`g=(ZtuQKNWLa53YzHd4$N;wZL14K?jk3FB^3>$B^T8ux!JJZ9g< z=>m3&FGzlUxw7>nx?}zlYPo!+<%dvB`I;yr;g`}?Ay#f?+bIoEXUj4BA0sVXWab$B zZbm=#BbG1XW zeFaqhCHCEF3tX1YCZ#|8iTc)$CIhjqYk%W)Ni4d*Z-4XfQ0mSg`YSbtyM8IK#sP%i= z2iw~bYbBH2(dw(?g(01DW-{W$q4$vGafr9002}s-aCBh)+RSu0=&oa0Yd!k;UhH#; z6E;yIAbMOJ1n%Yy208rI{#9A2;nj5Jtj)O*!dit0-dFfIRz)V_W|<|C4m$BtB2MA1 z&0|%V{+6t&-mpR$p`X8xFN>UP3bZtmS5IM>7ODtmwrw!4MEi8^(j3#(Q!aMIM%&tQ zt@rSzR~QU_SVGlHqqwxYim`2MDHh>&MgD`8;Ill`LF~cCdnOe!_mImn7@z}!sN~SJa zg{?j5EeDLr(6kmf`wT(2kEKFQzsFX3ZAG zk5+e~!T`LnY>LiTcopo5{9{*s-1lz{XQRabyf-|9hwA6?sXGe&vHfSZffkCE5G}BJ5u}1092V8~ppPmfVTjRTLx9}ca>aK%)5+R4BlO^h zD6_{|v{e2B|6d_W89XzyOtP1?cf16+n>Rw>`J1v9!C7ipD5xy>wy_otOm*8H%0Xz> z8Z*pXbly-G@_=dA-$=A1Y#2W$E^`W?BU8{iY7ZI>A%fNh!J%SXMdM=uoX@p&vc&%x z@m55|Ul30}@@7{kd%&o9#13OTI~x0^i_>$-{R4`4;_ZfOJ69=1sHZjzup26Bsg;X< zO%mEh+PJXZmv0~?{2eig6Sl>>Q3#`6NJaL))4j17pOVY|nTgiS0bI(8Uki(GUu1C- zqLN)a(Z|z&sH+^%slPA#XDU2(Ku-j&(qAE8P*!x!dSezCEES}W2sc0X+U&b}Nrac~ z5xP> zjkMvo9npFgNspM4+?}w%TiyZ8_ThbG=YHG{om;l%;Fzkr4@Vwpm+!^}pt6O0!4ki{ zy`|uOk9D*lp7EuYWLMAtK>K0 zn7FV@>{hbV(4r00cLlq{a6m*W`s2N8p+lHf0WV5f94#+A)uN7{m7{Qu^>RShOVcA? z&C8Xf_ir`hVy)WtxJ_!KebhKL;Pw2tG++udVdiv4B*V$ zKlo8f0+nV%Oh=?{0$0Os-uK|htOG~AWgQW~#1PzG6#`aZ#9p9&jAa;`B?~xb4!Bq^ zR`;%vchVD)x?a6MT&X9P`&Zc_U8JUEfz+aPkN^5vkaTV%erZ8}Y4Ao1hk}~cmjQP( zF!bhgS*kQVfERQny!(6bJN)gng7IYl6W`nskN1JXt<#C$mV8SPeJdikknOduAA9pT z$-x&!L_%w?Sw@J7PdjkIa1ZhG6RPFa-%;aAkjfjhV{u-FqnWiy}*vAs4VH+uzy&{(1YT9ghW(vXMQ3@;uog8 z@%p3t?HUNmaZ#67aD%><=4qB@xC#d=u84&#z7#((rQxTqXoqoWEvYq23y@TNOOAq%sxTFV2pgF`GV#?C+zD`sl_qo1in?X(g~Z zq@$b{o|wlZ(fSn!isb)HOM9`txw*V7sDBH9fMT2HFP*&?tCIGLF<0F5aqYDxG_Ycq z{${auQd`qBp1ke|9hK%uN%|oyIM`$l6K}FpcmQkDy&2bf9xfJ0%53?1eA?-D1$J=w zzL$1s1PD)5PsmW8^T7kjm$WSO!SaGwRVw|;@rxcgT-nWAB!dG@JsUK=zvn2|C-c_) z)G;40u%=068wH_qE{<^6P1BvugzO;S5sxpq&to_3x7TpCbfaJZo#3$UcQ77?*9ge0 z);)w(b07zWR5Qli1WiEr;j<^-Xx~6*c7^+|2N<|A7ZCN}s`c?F`#*WLB$2UPUD#B2 z7wNc;&i>CK8ugFbzkjQ=GG9D5H^wA8RYnqbw$++oY4HoZv2ab}^?tLB2TvlamGvc- z2gD`}xLp>^$XxSkS?O;H3_N>s6ny(!Kz088hDQS@{bu zlb<_2CUcjMw;MlWrN_R7zeI=7D4 z6Qd-sfYp2*PJKO(MzallwgVD~Fa2|=)uD#ePe9;|DO_c9r*um|0(=(tdLFducj9mB zITzsJ;ds3ms~gcjMJBigj|UvkY&p42 zZ#&8AE`(^4m+V{)xG=bpuaD*UrmvI#Ayxj=@2sW>^{GT!ej?-g`|$+mRa(xZRiG9Tvd^!mNS4FG)B$Kx0zAI@Iar6Trk0lOWa!ZdqL!X zT#UksYQL@$dX|y-dt`;<$79#f3?| zO9zQ>?ga6S#QL(q)DHRcNg5Q8#^{Ed(s%=+R@AM>O5+zjRxqwSF*rBpoOP}4dkXx- zI8QgUwYeKGcfR6_EvV}-I)GrRUga=+Ud~+j?EIeTn&FR6ecmNkn zdfcAhLmsKJCJVb403bp4onnni4S~Wn9D42(St!L$)5E8s+=;G>9^(5pE`|anLT?** zxsp4?+zn{JFRYeSPpcl8a`g$?qPF0!TtfFP6Y;`=*eZkdqIeqhD4Aqr zmYp_u%9Z<`(irX}a0qglyH4f}>C{CZvTa5|T7Y zpCWwGUr)wc>R`;g>`6lyCHReInEm&55>{kI&L*OG*WZq14`@((v$`;A2ZK-g^Rxc* zHy9L{H0lhz^93(46gwuwUxEg8QL`UQT zVtLXuMBSz7#gZF32cmHE`I$?o{4jXEA0LX3eMCWfQ>hVp0U)4~ zmq7Bm*y*`vTe&Zo7YT^|pqlV_<&o4*KdM<~(c@-$N*6OQRxk^|iaP~AEjLve*N)eb@Awdg;g7t zh*uR6U=ua8um!L{D9%3qwS{8hDaId)UUVdZTPUXYQz(GAGYC zA42_sFE-?W(EbLjnr3w<6lI*y&N`B8VXmFUJ1uiwO^28ClThN45}UajTNI~mahEg^ z7T}}YNOb=puF^`GOZAna_a>S*SxmfO2#y=t8_!v7-+q!bPC`%ztRfvP9z1je9Z`UE z`-`rNK~D1b1$=fSd>5jJ&!$k<4EnIa6wkLFOcV%F<%xpG0PgikS3R-dpB6MVf79lH zNi;7J$_$4qf8j5xS)is&5hn)G^WD1^*T~+V>l;c**LtoLtG{3J5MSWy1-IW`SQ;Sw z6Vi5UXG7{jGf8z7jAO4VN*C8LybN>fBCxc?Ux2Cy_q})IC?_r+?+@cLb&Wsan|}&k zlyJZr@e)y#0Pp0nMsMx&*C(&bWM+D}(zao~S#?N;>gWV2u5{I1@bW|B@|n&PbW!z9 z3F!+=Q@4u1A04PPmc{QMUum19yt9C766xU9;Hs&wfM2CN#>dpSLDQVB!*ZV$+kFP9 zZKR}44H=2AI&_TN8TJ=>6;g#Loh-XxS!|{>c65IA14Esz*-sZH)VyI2#)^%>#fl=V zm0`+5=T`t{#C-MNA_hUUp&DmTT-=WPU#pK6sv_FHls3W7^oW#f_M&M|A~gN2E_52n zrWf;ZFdr%C8Gc6`7+&s)I${MqstNpNI{(#oc*3`_LOXWv9y0SREgNV!X8agdhv|(0 zMB}@{LLEt~YqBvQ)06^z984?+VTX~zpyZco#mIb5Si$&kjenn2DusjNh8z_hjGmG| z;YZBd&iiKTn_dL!kJacRTpnLqDnk}G_USL(!b9AAC&(h@CM(?S7F3BsS^Sw}q8&O{xskT2rbLEo^ z8}}%#9H|z||c4{mgohhB#58mOKv^wJu7}?w_o^vQjulsK%Ax zu7_RaKz%S4!~hR;=1$D&Xp#b$aYxQH*@o$0w6a3LB?ebjjeG554uKBM#WtK09Ll3;EBwrTAxV~}X7M3kn9C+I!3 zTAI4AU*Aav-eQRNO{>%;f&|7-;`4Lp_hBI{W{^(ME}FdSO~b)SVbJyLkjjbXI&V=| ze(&t3gn0ZG+3b6_Qp4$hnlseMR{-c!C6LOw{$j6cc7h&Oc2J0JzfsFEvlbU8#c~-D zuzTCZ9n_=H*r1-E{00!hf&=`-Bz#lASFUg6c147tj~B**{c3%WoO?;g;fe{1MZ~At z&<+KFHY&PdEVCpq{J3p}K2FKeihl*eHr24e`%y7vW6A0OQY7Y2ebi`lI#mB{rQVgJ znXa&E`Eaj1>E4JuO=v4Qc)E}M{kQAvL_UL3pRpR*IO{+Z& zxwCV@56xemA|&3y-oC=rYE+Go%Uwy7PkiE)3ppR~yBR9MkrX zLYr}B(9#gDw7XspW;@syJD(x}claOTc3|7I9A}Kimd8Pl_A}bkA8M&VQfQJ5Pn?Fi zE&4Z9yFu0R9~1HmyYIQGh{=o90A*`)6~BXT1~7vbQuSCoo)j^bbo6KhL`xU6M4)u0 z$M^zl>=WeYMB&|c3iWX`;g(I%(P=t=!(vH%(N@}rk2em9<4Jr+?(1J^#NI;Ng1L9K zyNk!GjIZQ(_TWdq^GmmusjG!etdmGp1rJ8br8H(J$J^LBxCF+=rl6adRYir1+@#hx z%86?K1k;0j)#O;My<}}6#{-CZ7Wz`xZFf(+EDqPW(>8A{k+sRG+Go^iIO;t%$S&dP0pKS6PjnwP z3t?z6B#bTAf}i@;?)NoIxEd6;S1?Qwpnh}_m?DT+Uc&|&oDR%~zYI6Kv`p~CCE+eX ze>v%}sAR{u87bxy?lWEUOIg{+{ou2AUVn6 zxC})*Rjm#Chr|~L_c|VaSSf%YV&M`n?pwAjh5BaC}Ok3)Bf2V z*O~x+#QIG^VAHXIFx_$BL4y zXxsdtmEeJY-^38qLjf-BS2i5-44XO^4)`J!w8Vktb7EnBfaeh2unTGhK%ytb42|ep zB|>GEr}F69<9Z4S}CCb3dGrPKZ@O(ERt$@`~0FXme zKFE2$_#$}lW17@PBu%_wY$jCyw3FfTi0e2POmj9o+*lUaL8QZfORsgEWWZkvR+W0~ zZOQH-0c*oK)tarTV+f<(m2X?f4W}cEr?_X`ycMzDJ{`!q;yVduabL99LtR_GWzvWmb zK264N>i)`~>gL9a62MdYB0`u~cC9;}>v(61HR2%TQ7I7AcA-&egg;~&n*#c)^V1lq zY>Kuy?ad{FEy&*4Rpt{5!BDi6=HrDcG_~wrAm`iXEBI(GhWm>RSCl#d^WwcSL zd^#DmDvITn{B&jM_e3abYoomO|4KHJS9MP2)F0tX|Nnfcra1&Jv;3{?g2+ zbXJ8=JlC^oaucdV^JPT6oTXrv+QReQws0gEj}A(o3x^p`@O5qcL@P$ z-f!Z5gk{+D1|bV}o@KpkC_TdARn>D>pCLP?-U?(R#Z^aW8_;^lJi*%Ys*^n^nSUrG z40$uh0-<_r*(I*pea8Fix)1mA$9jDq7YLAs5ymi}r4zE*cg{|YYR{qcj3IDc_)7pz zWhFv0-baeYGQk+K?zb&3l>q?KWC?}g$^AJPPPp$*ymG{H%N46#u+?8GX-O;g=9NSg zBy%MZN-P&`P*5f(=O|c8caqC9!~H73-*;DwELUxL2W&8Z^)tjXE|nB5oj&`$KP5`q zmfLMjYRS1PQ34uHevhm6Jl4&Es(G(xz@>|{*lDOwv!JSQcUJb`^qIG`Q$a~-&#jx+ zJ-}Su&f}M&}!_GOVSeYF>XYY0S7Na zf;Miz<8O+wR`pqDVggq3r&Q!>iO`>6T28xoI;)cfZ#!8OXbW<22&9MRUT)y>rq8{P z7U1>{3@w~@GSCg6#yuV?v$G#P8ROzg_qi^JhOm!KSEQ*6wV>Aik@^aaL>v;7rp7x# zjTb_)HtTA^s&kQD;CEXMn%k<~U_x~{%BxGCEvnSg-<5Qs6k_AoNbWh6yst$(1r=Xz zcZ4=0wl zJ8*<${>cnjTMEnCpz(;n%@w>~^uO_W8C~UlryWi}3Ll}o{elc)impQ->PLSLu8NHz zWLryP>!;rf*BJOfLG+%|Q0{wbaX2_QRM@EM2UebHR6k-k*kZ+_cw}}?c>L8$0fW8B z5na#pQRAr1$NI_XoxEC$Wq5wit9*yYyZp)MU&*kQ{XR|qrg1u~I7O3Uf+^`uDUG(A z+ybhKrveQ%Z)?K+Z3k&JP&}}*sfCh!u@SNe+hN)RlVDgn<;tFw-y$L$`^Qe-& zll!8^=97QJR-!JEB_?-lXu}E_aF9VEtZi?@g={@9wS&rlLO>ANOM?Cb#6qI`dUN%s z2&Ge~SWUhD;qR~CLHa(Q{J-E%Fv=#mw+cSbm&_iRhdKvBYw%84aB#k~5EAva`zZSM z*q{vrj~lakZQ&tKZ~Y?SbwC`I^+LLHuV=x=UE5+NrKBwo6e0D-bRaZo_)3TBr6tz! zPyB1OBd$19(>$VMNQTlH63{*Wq3(Q?8q0)AJIcHX^aBNH)tuJmjbFEPc(lt4Kksa$ z=pO|T<{8TRv(gki@~gVjktzOuHn!Yw`}pj@5h{a9nFjVY_9rTtuj@B<_CMP6UbB+Y^5uR5qLtI>bvuyt2;G-_EbusoG{T|ayDvF*Cr^i5Yh zU^=y)#wQq+Frb>4K!P#=g8eia+zJ^`*VLfRgoUM{*_eq$SFX5|keeCc`N6J=n88UHB(~egQ7a_P#MLG}!-Uo(213LV4kS5^sr9yHP+ zpLe}c&&Y~ch95piNDt{{cO3={3=v^Ap`V(CA@`=vkb& z4arX5*fABsq$oMxfd?Z;DZq?cURdfvq3Pw?a*Z2JJaIP0#Y0dB<}c;ZrH|$5LSrEU zC!=lD7jtX#O)eR%pY{=%64+BujV@+irPaS1=A2R3?zJ#8 z62nLS*xy-pS?LljV0eq+@U4@xZYlJ~^+eG2Pq{s$l#obWOX zZj?X6jMuJi)_Hv((dI1fCgrVJcM#$0(#H82x6`yxI$fYrFqWf@jzW5c6^KTP>WUsE z4WW?%$)ab-YBK#Kkn(>9ABAx7KUxQs>rm@DgDUB+y5o|&W=6}PT)K!rG5 zu+U|H;KM@d!r3vth!gv*!3|(wkF;EHq{@;+cGSJ*qu!Cwa}QXZEZ^n}I947`DVuoB zpx7pq?J4f@Hbzp~rwij_Vp0P;{Gst8;L8}0BP3wtnMpsQAxUTy+P&uCUwcRFT=KPs z(=#i`uB-Qy+b*`D_U~8O$YWS;Tcfm%mu(Z>wwuG&>L!4NQdQiKk^4dHgt$N035$gp zIxCC`mE?+gDnqDPymq&$>WEu|p>f~pD+EW$rPNpB)2KIkFW7g~YVR9Ig3pSW9|}DO z?`NV3%ZVmouxSwPQL!&)=xWi?)sKi|<3AX`p;$!UBk5=+iUIprK?M`?nJQQy3vM(X zq4X#%`HdQd_>}L8@KD2OTOtYuT*=c_f-@nZmYmh*@jKf(&Li&2^Hk>4TD;Iy9C30y zKM)x;T*aenzVL3=TEa`^Bn%S_sxXuyp*5h>tFqNcSG)}>5CQs5Nzx`bVGO&ExsQPb z`h_DiU^>s|uT5$3xEQRdPtwKN`LT&376CB~?YLOVae`?ArtZaqptw>?m>#o>Qd`28bkR9O2+Q{`i^!zL6J6BhHZV9l;5xY?5qHHjWL=6huQtg@*1~G@FMpnj-@UrxiFp`MmKTiLltlA~xF>`nV>~>#a-OvP zDTgmV5GbrGv*hu3!bMP4*7Fgr#yIHY*#E>o#d22MzVh+lu_962ppWA zj>n8HU(gF~k=z4+RJp0rvpTT;q+^U{XLepCvOpJjyBhbC7m}v3ryrJ?v>(4TxxjgQip|{oKGxPe8|Q9)LJ$l0 znztde#L(tRF-XzAU=mfefl6L}-I9IQ1^}&UW&}Hh&eGRt=>w*zn0|9}MP2t@7>(Ce zXNu@}DI5;hMpwKnIJsN$#rq*vvM`kNg&K%9O%}|wWk1ZhDLh!8sl)cqg6GlaJzr!H za>9gTVtaa&JK1U0%T6YHE$S?lgQWsEKd|#;#4cxZ9QU@>v#LAWlPGgn(XkYP2&P%4 zgl7$N%Fr=PfL&?C+UuzFS7!Jg63q!|nBx|&#s2Z)wfUA_t5*{(?>c{?h@+oBm}#2V z`RKW4-?a#imcAt$09^=nh<_e{*CkPCl^PZHx#Y*kIR_#d5v=aM5aSkJ)u8y|w=fbY zHXCPW{-bFNTC0xr+Mpll2X~>@i=43B!0MR?kY7&12Mag( z^u&!HhwJc??wk9EK7jYizJAX@Uj^dwDX(7Cfg>cZT??t|j?Skq0#6o8`}e5` z382!0oWQiNU8+|_fe%o6O>HogimkPcpj{qab{r8!s>AA_{rP~KRFozsZ-M=2pLrvrYG>BoAh=F8Q+;3NgPDxu zW9bwf@-GHt3o9qYeuxrIj`+o!i z{kqdZ%AjL@D|pPMcYh47EOBq@%M`7uHP8lds)X{nD zOXc^hxjb2It;?++{>wps*b_lGy7KtTb?Yi&*p!-_eBGpSo~X*WH}aClafhKGUtUY= zuj~Ay6?m%AtHpM;W$%?Q*?GRg1Y%V^Zc+UN;!-+%jdZBz>yL3kC;0CYI?Pg0Q8hPN z%~ueEyqTj#*82G>7KWN?gB3;XdW3<7Zo(K-uYky>&rc68N|Om7ssX<5g>sO;I^cG< z9nbrBc!vzwh#=$&G&3_}zP`G0&hyQZhD7ov&HMKZV^A~zq>oSacFt@ ziL_eFTe@%>?Ju{zQIw}WYKT}SNF;K<{FN=B<+KAirNHuGT#^(O7gqQk5mD2~_?di~ zK=HunC~3A*zR^GVv}Z8@qG6GO58YTq%ZJxJGm0i1&P zohgn__s*KupGx(b7d*kA8|(YrZC_7U6S5ezeFC`cH^i!44P#?tdn*|VUrsyGeO;Z< z9CwEB$q@aO4Gh+C*w+);9Mi<0l@&+U)5k5ORLzYYByK{3s61dxn9ki(alv`GIdIl1)yDwOjxG0L59e((HLaoFZyuv>_E}c-tRK^8y733k&mtOU0mB@m0!NFN_h?6Kg1dE{^U< zuGd3jIaXX}oIdRt3;JYl>sQ)RveD7jdAz4{jy)fHRN5tizZb*DeDJhJNom>xj zN3#RnW?9;NJv)`JEGQ!@OAObxuJTj+XrX%WYOdVa7Fy`rx80S$3-1<>KLhj{;ZNd< zhztV_SYKH!5ayBDU`M)6lg;rcPtR_QNN%zc(*89WF!d*)3w5wq!E11eV%=h_WQPsO za&v3Od%H_))tT@fc&7fFX}-nkl#-3vd?_8+#A#j+41~yZ0&~TNt~3s%$My{_2HOxm zGlDmMPzHv0oalaJNIJ-RYg!ipd-C0neA~&MQt>Z=SDut-dP5+sW?u?E+t*;1y@{MK zX1%7{@f#4XI)&yxM8;b)RP?z~- z$-x-f`*5fB*^#+)JX&Xor?tBNy)9H5-tXh@?;4xyaztxCBn3L*HC7dObRTd4n8t=Z zuDCV63Znw&Nnz8l+wlRC#w|_yD{T9 zaab=*Z9pKkiJNtPkW|kS*KWsEpNFH^Oxl6Yjt&dw-jD3;j$qakIA3XYlJCa%@uL$0 z@CZ5~4yK)nJtzLn%}w0j-tVcYM+Sz6i3eFwaIvteoL-)vO8d4Q#`S!`0bFp`d7_dM zTU<1dyuV@dtM)Stm7#J!G3l{#ZVj3>X9;yIiG*q!m?lXRi`2b$owtwE24?L$&Yh)a zB_^qqx=BY;hb#8&|6=fjeeu?PSZG&G3x%GQqfkBk#^s^-(swpk;~98ay~B{d1YK7{ ziA#KN-fa18=2j*BZElZB@iJ&i9+!48ws$!JDx>4aom=6aJH^-k)5pCbV0&$)~RmGDroAF1x;A`Oi@Q@iO zSqxbwWjfXw3$4XV`-*pMF_*6X&yp`mB`Fi*YG}YDT+BrbtL_@tWym|TWal$DcInar zLgR3Q*dmOkmG$P!V{i48<;w+Mw@O2ir4vUVb9S%x#6^4>!w?~E^j}-kT<7RxDJrZb32Ea*ux1RN$d#loJ$|tdms$TkbDU50qQd9;T&uY} z)X=d5wf@63&x;Vhl;qwW!;HaZ6fg}~xDY#7cf3&@f% zr$jCOQ@>t_iuuiWFk?3tW-3%$UkZPG1H2RKr-|O~+HF2jLsPTXov3Ha1Fy%D0LCl# z5O4QXWZH*$^BKzx0nbfvp4`Q(lBw22D2b-#z$tOR<6yiK{KfCGUtV#Nr>UnIj>W6B zUp!mCI!{pRp)|gn}%6ME5i$;AV;zY zQTdbafWAT~;AEpCTgr8O!$TatP_;6X##0T+H+?dF)YdIai?5@sQ8)PCEP#Hjlh-E3 z%GYny&`S9#iFgTXY4LaFQlEPjfaPAynV=3T3L!w&}*e<{g- z&Q*Xg_@l3W?fE}`4FrzL+99c)Z1H}$3PK~^ueDijuxB?N(s0-rN(3p5l3dM*9nLny z#eIC94FGP}hBjM!LJoetw6dopq=b6J)b@L`>V;wTTdywnJi~*zq~*BGneSkTQolyAidGP z_{Zn8hX9aQQmpiG6uD{s^rJMc7!**2Z*QBd!D0Rx(qCBo@af><7rZ_7a^ZIA{3(_# zD<2$?**6TMK;;*4=RSbt_<4m0n9*|ah&_&bCn&ox`P@%6x`4W4jlu2c3V6kq7!&Jt zxl|5_$4TSPLtN_Lr#zax8BGjS;~Pl~wYP^rG?BPoYUy(Ae}DKOgWsMcohr}UDr?O& z-hvuTknXf9?C5d0$XZC_i^E|){p(#Jb#r%O=&De_O%?6IM$&j;>T~(vmcHrgr;--# zC!UzfOZiXt#-RdS?lH7TvOq8(wt_OFgZW@{8TF1c2tDPdAyz)`ZsuA2 zsM5Y?2QuBk%jY{BW~+bL7s798cV>JboGs5Fio5#3efZK$u$&1StLK>HPZ?7if} zuYqHC;<=hE0YSPLI-kb+^n<;HOa5xp{l=!xH=$w$b9>k`GzAY~t${9hH?qM!{I}+S zm7>~X&(9})gw-RSc&uC>C^d)9`P#d(9q)gfuC_DP|0F9*UR1f=FU)&qJRm(MtK{c@ zU&l z-8gw)t!3!^R3)UHCVUnLbYuvIOH-pDj zuM>CN9ht%1DH0;`6sE3`mKV(W1zPuMk#D4If*af?t!2i?Vv?(l-g>`eu-TYQdSaS+!yl;0vM<;fv6*}(p%8ogtJ36b-Au|NjwyhI zSG~@j$RZi`bUL^^ERX=JQV47)p50bsBcXa%LpmcWkGW#GS|`LSt)g8CRNqHh3`Ow+ zW!Gh?M$=YKLzk1^>&i_?vlOlL(|mObvR{RD@wyKZ0>iORJT;HMwRpXtC23c$z3%6( zpQnUuq!NR5dpcEa#w(Pg`Rd8aLIMsOu8Lxv&ASrB@k-i*iBkK;l@pC}{p)&Nru&Yq z6Fe3inv-1Pj-VFeB~XMIIofUS0}YYF7lv#%ebU}(mdg+Q{V!FV8)W7Y(%EDqt zJbIx=uU_&9@0TqagjTK96c-)Mf&_S6?w$?*C-Z**x#?EOLoIhO;x3N(cHZh=>c2rQqJKd&5y$0qR;?Y(O?Q=~PUkTrW>(Wy9E;!)n6 zRhkW*0N=BbMx~{fsE|anHee2c`Su@2WBuoNtIq%VcRM zi*+1)<}ST@<8YLR={6TsO7D();N|qI8bs-A-(v$3@$p}EKkwo4WR{t%CibIH4kCcZ zABHXGT}>SZTi9d0DFaoWkd?8#-#bh%Fva>NE^myhD}hY~hV{;!H0SF#-UtAL#1XCJ ziWNXx=hcM@AP4r_S4Hv1yZBxgfDM!!BnWdOU+r~-n&^tWLOq9#u3OL>M}B!Ve{2&YVPuB~GY*1EVf{&;*u38MwtBQ%O)ng#5kSJjiI) z8yIurEUzNIJ9`tMeyR-^jBiKQaB&41I*2yN5RBVQ;Rd}{Z9DptYLOnt?q8lQ$8`>dh`vT9cig5 z+Ayjq`r_Fr1TvP;#cv-;FbixEjCJqgPpFgf949S<_9p6g-|yD`^NJJ({oSPR=JC?7OSmA*Qm=-c9s((fZPBJfz8-WKFI_!?__aRL5Dgc(-tn zgHpd>%qlj{c(pWBUYm>q1@Oz3nLoRHN67CUX8*oZdekYoY-#6)+iQ1;J4B>X z2`eBPnHO@?dR2XDD%z<1l3+1zCLtXUnU%GDRhs$o@Y_~Ns7$T({hRz^r?|0|$q6cl zX`C3yCw+lBhOrgP_dlce8T4BotAc`hIaQ?E8?*ya@H4M&ZuE;)=r;dy*|sz_u&LI9 znfSCFfC(~=r*K?pH@Tg`)$62wW5HV(O%rTY%OTo!sK4!cC(i&&*45S3giAr3{j?BRsgp)iU{i>9+b*#K1 zkD=Xw>YI>z8sD%PQ7v(5G&-o`ywc$UXOBcKB%Pn8ZJrx}HjQ7iV8JgSmW!0fW`4v* znUjBgg4TBJ$b zb|wxH^O;g3vB*+;`trp&WW)MoZ-~W8=|YcrVM#T>@VzF6xS6(VhPAytDii9y829S2 z7eID4hQ5v=?y8o%q`cfgofe(i2>5ZuU)DJ56*%yiS5gk`$_Zqc1{z+F zA^BXF9IR%hEkBO$JeiWf8sKn;UA^^o*=St`q)Z0(eRn<{3-dy?8PS$K4{;o`ozr%f zC4yxe{ELgC7|B70(X5gQ06UlYHpUy|pOt zViBPJS1)6~U?vW4T_w3D@GSM~w-t5yG;6_o0O4(k#00CA)0EvI?fiD_uE(U8@9!nk**6mQiqrdkboY_V zy3c8g0+0>8Exk{6pL3lSuqKVv z4-czq!hzjBh$G;taTb2@4HG^URs=<qs;D zWQ}KXY;M?=f7xaTqKX5r+6Gpaw&-SaI3f;qW{(T999gilAEuT<%Wrnm58bYW6KVgX zxZaKjfB^&VBczdvMooZS2rQm_mh`pIR8#xBzBN3k!bCqz72r5IVoP{1YdGfsupC^Z zLbo+?99giZKmqSD_xKAx46+?YG;;g_of8Y@o@Pv~Q|sgC1erF~nAJKDrQ?^= zrs3jM%C`VseZ_)_xje`AGd@>WBl5&;*y>A6PVrj;Oh&Vw~F% zu$#)XC$JhnJ7phnt$MvfZZqXb-S633tSv18J1A(noqtdXIf!h>{oBOpq5cPSwvA>AF~Lr6)tfRxfLNJw|bw|Vb;|HPfk zj3W#@XP>?H>h)WDf$;OZdgS)ieHBZWmGrV$*L#kOuL6ZBP%k2s$1>fFrQ`8_&!dt@ zn?en};|pA1sqo2$f-7h}vBK$8sqj5yb(R0)RKNVu)$la?HLuJI2JI-28jlzJH=BOq z{Q~;p{sL(Z+c4Y9e26_dcT+!$_p6*}U0K`@LmwWE8FAm(L&uK>(dS<$%NAq`>MSvb zOkCw(op%;!5z| zH4bS~N^z`7P8M!$zCK8Jp zlw;^F6a6|yhoXB*C=HB7q+hM0Lu!p)v@9aMsn`{;;a_l}-OdP`XPt(kkmS<@-S1tx zIvR?^;Z|e;f%^ozrwRE8m6*)g2A|Ozvr+2E>qyNMgcA08!u%D}Cdb83Hz{aq=6t~t1a}4>ls$^n=P)iE&_2% z+-fMXziu|;-d;y=(e6=S<*(_3KeYOu?_IF=Dk*|e0d(6O{&BsqC0g2R_(rJx(amGj ztk%=!XvgVT2qyia*OgRyOw%kSBk6W&+O-MZ$BAKq2*t5+teEQFFvt=Q@Y5V4sAmSA zZmwS#V;Roc`d(%izOdd1yr<6FMKB^B#rGpKzFTF+GO^h8DPHB+7C&lgLiF+A3BUO z&etp2bYH7fq+YqXV|6@KoWHAWup&$Tv$3x=Tot|w`CEH7`;Fq@Y>lWqOTRbO4P3r^ z=aby|`j&7b=-@YSJqVV1wGwaRe;9r*?sl-BWU(0+d41c7+U9%LJ@AGQw)ktcyG-8E zH|$Jrx8RK1%4l(}t6<2Wol7Z~C91v!&DrTaw<|pRrm$Q;``r1YtT{$GWO(h*1U}{7S(HX|`2^Td?N!(p0?puV=&D+sEP@1I?8jJ`=obd^8? z#A`-}to^FH4g!BikYUV?v!@n@h8}ekM**ExBo=tb8P=fRJkRN>ZA)i%i8H)+qpXw# zjWpjw>SigMnwY~%CvQAuz~;}QB6TmQ_x?;P9r8+WPFf zP0OCd(6)ThKn8ANXc%1>)sT}H^n;V`2h(*@rKKrT>TbsQoik5@JdZq6ztZrNOMi)M z?*3HXH(7KU$3K0u&b`^bBAD@~+V97F-)k%miRJd%%S-mW-)MWLzVO=9!F#vYP1c|d zw2CxbNWM5b?`Q1u9Cl0IxECz=pepyzU$t+MENKdzzU*-&AED>f(1Tp|eJ1bo;*BAykmfD!u+@{+vvU zc>PB1wDB2-P{W<3k=H(6{^bU^4N8kvnov*D^s~*Ntzbae)x7&x13r(Aa@Bpm>pqgK zsFm!dC>Ik?676)gef}9j6AF(tq6r&D<#nOdarYnoJ;F=3gBzUw%Qsotco(38nBeWJ zvGF37bYti8TdA`rxvO^E$Zqq>_#$4G?!uZUapt18?AX6DZHsX8#n1Eh7oGI3f&Mw` zwtXCWSL+`G7j-wE3SS#e7@sA?^ZEvAxL7$Ja5|KWU8ar+wis=6^BbC9Y3Qn-X+d&Z z+&kIIw_;noUVCs42mjT{T8&c`Hqq~|#d6>SD9b%>n@za@4ONxLHZhC2S{Qh||#)qWtlK=_!L9x4UYfuxw)d=Y z{I&UB>je5!yHmYYO&Ut)UDt`pLz;TCf9Z4g9?9z->k@mM!q@Rl1+z~~hb(K`#Fkf@ z8hx+{2*{s4#jx{x|KYv%KikS%>8Xz7JBIzgb%E&>b)Q<6mDYuX_a+6iBwE(814TS7 zcd;jSw=f_k!}-#aMSW9CB@=uX(wk8>(m+p-zUzbD!6g>qxmw)pH@t`MD+fzma=;> z8z^_AHF-NXxvIDUmz_PWQSs^;Wu^EERWnu+)9&pbCSLG% zO1rpixsGZl;=JNPsLYUEPy`%}lTVxs9`Q(NC97Mu51 zmrM%34|1w0CCzu!JQhEe$e#4I{CYeeCsJ|9TD<+-L&^sJrg<+)%hkv{Gm!L@+;{c9 zd4qHCc6oVYB-TASD>J98bvVe1CzXAp;^W7qv-GpyIHxh<#U~lyYIa%8fB>i6=sCg~}Yj;ZDBp1wA*WAq}1fG}4HQ`&cRkKNUNppdPI zSc-m;s;J>(uI;-BCHr~P^I>1YkY`3SN#doZ_IvZXO!+PDo9L_O&$LuJzq{YRQRH;W z67y3ZU21eh9lD&D{C+na)A*+_Hsi7n0EUk@ILAbX5z@+fQ|&&kX8I`Klx-v$N_&(% zYFeJCAKtq$lQ|1keU_AU6p&Vws%&MbV%~eee@Ai%#w&anS1Zr$@3g!#Ue6p{7p$bM z{Z!$2b3l;YwDYE}Kn1IB5o8W=+Ct1bil)BaH=TIDIivAiU4AEC@Xcze+5LJU>nKkM z8q-@zji3wCqXP1F)x1mbcSPCiHth6s%L(VydhN zdt6)Zxw0D=*ziY;l{Ch%^29yg0*uVIVbha(7+M3Xz$E%_PPdJA%6|iM)XO`OA7&Fr z7?3bM%*cj~mvIF@4Drd+3CDPta7sy7~jFoBk11R zOOSy<;*tTtS3ZV3to-m*GPG^s20g3~`;&&ZOj-FG<-fHNJ)k~F4yvc1dYED$^p)p1 z#K1GTI+~!1vCJOy#G(t#^eLN~faW1iuIKm+JTLK}*Ch&Oj6qA}6yO2s3w98$beoC4 znG-wA@>9LKnD^&Vi3waT9u}~}=b|B7Q(qKgaNb847%)LNwM2Rt%Mz%)U|J5bf-b~Z z63{Y>^;Jt@+<|2@`6Jfn<}2D7?C6i+ZR-RHu6*3vg1Ny!v*h7(7iIU)WrhPU#82Srt%k2UD2T~AGOp^&U3jP~dC5+hH3i2I2 zLDoS`nOadNB2f1|<4p5t@fnXWi)1+p2w7)@6SmWDDqaB6$rzGunb?8Lw^@T6IB0n$ zWFAoi;5{#bTgk?yEui=EGiY+MW=R(smf>Uv#57QX>X07Ie6VOnS)Tk6CJn3Fa@fo^ z2z=#62bgE?5-vaF{T5=Xb6X~+(3Q!1+h1`r@L35=J$Y*jeJJ0!tcS3J13arLvu?fm zxL$Gv7ryN;y-9oZmKd-^dk1QkYEbK!owNZsY+S`XBw+A$%~&uHsR?O_1x;2rvP6Ts zOaTKhlDWFzCK9LN2i&mE;)gf3md%}NXQHG=2h2cyr5hk-`IdN`Mahgc?Myp>`hOnp zPN{ZzTA8b^mjAHqtp26@w_NpyhufR2>3#%a`S9lt;-dcLxPEF@f8PW)?oc4*c+)($ zDGAn;!XLeEO_DOLh>k#qoFE^xXZ1qBL0Plm&&BKjG{e=m+x40$0uAqU_0WI5(c zJ;HhWRu+()ln4E));eJb`AyS}|0yPkX5Qsyg$-dcSbjxt`iG{p3-e+mF}bj{QZ)f(G(eBCMrM!5-aOKeL2rexPJZjVPCW>=0D;8?aF?! zWfU%aFYxf53#gLt@FA2pA>hnUo12$r@$ne!`TCi`44vGHf?<{<ngKdqgd3AeGn((w~7j;?@{gfZkD1 z%WBH8h9_!3L3u1`V~5`~BBdf+@jR*gc!xXuWuFvB zCbcFJpZL1rBK-W&xFI z-iP(9nNIv-IrP&=suI%^X6Ag;wtyc41D#*=YYKYIBMsP5m1i09ia}OFyMW^KJ?FRvN2FbCj4sN zb;O!l#3OOFFE)0Xc}0&rlH=)9joUz)%)fKx%rN^0-ccS!mF?lCal2(b+4_`;+x0W7jsK@Ok^AePgYmAhvR^k zanO#0_X8~T_A~R>2(v&vhP=two1?iGe-l){b$7#{b}+!K%I9>;D!YqO)&zr{KF5dM z;G5jrv;c>O?XOLL0dEs~NX?e(K5GWR_1d$gZ`MQ^D#a1e(Fx#9pdc{q&i;~Au3aWT) zj?({i27uv6faTNMnW;eod>#=S+Xny{+;4`dgw4AnP*<55Y?Ocf{>^PW$=>L9>4E@> zc#o_iV70Mh{lb%de~(unzJ`L^ceAyNw1 z;X|YOvUtL8N9mw;06{-o^xcmH=O&FFjDUo?Tvq-y{`UGjcK(?nOquzymQ*F+%=QYG z=pF`F7Z(PX^w(fFghAjPi%%~7wpMzg`Dl*q zfE%wy&;7;cOXmPnqFGa2UC?h?cKk>RUD$C^lmlP_C$|+96(_!%=pGZ;92uCHWch4Y z)Z3i4+=G36o1ZsI!pD#MV~MPQeiM7W-zHJHe|x@UYP*zd8X$ZC90s;+vB{&gL8OhJ zg^J0Ovk%zoVAoS1N9CWBlFG11+0ljn{InAol%@68`pp-^h+Kg$YsOlz9M?n6YxM&F z3t!%d(fFUJAMVtQU_zTya9RLKeK$WpZ*#4srDe9*?7eb4B0(0knDrWX_nQk%f}%8d z0CM;&rA{UalI zeoGm)k!{904b3LczBV5zR9OvC5Rj3*SI>Xh@yF>0KvF~|FspWM9RKlbyUvtTR_;N< z6Ky{;guRR!N8g#yHKo4jz8cq5m9eXi4@91{sa23s{|jKMYXDXX_ze`f+Rr`bon`4h zf)tVsK-_B=etEil?$dGv>S5R)R&Xi!D zUIggKkTG{5mo{$egh@m@F$AEc2TD1t=M1UI!cx2?i6X>*(lIbn|(U zZaD^C&$Y|%J~XOmG}FY&QVY8jAk%?nlERSU`Lf~@tBnr^O7=(>AmAi#3kD2ZgQZ;o!8&y>)^oY zvA>7|rHK3cwDdoRuqg$wt*xzp3=VdIE~NCUIv9+@27uno!9V(J-t?h{wIsv8U3e1g zXt-35zUA+5D;aAQQ4Qt?D`B)PDu&+-J}Wsh>`bC=>dXwiqsfNORRd+n2Vp+vslBmFYpx0$?Ml#IfQ$VYWd7g}-Yx%l( z6uw1aVkTW!kDY)w2kCF;grVvV%XpN+!q#JeQgSD!=2BM%1PeZ{C@W)OWyKKPIKKP@ z><3`=F#l$`Cva%A=FNyt_WpdM>+*GVb#+lQ3V8(B7_lhU9nca460L1j?#3Z+Drh7E zsPH6iobnw?lM@pofGR>!@tK*Kc`!kQW$bkH^a!NUC_&;p+Y)i!qFKGouQ@u}xr>&std=+iuU=FDL)GnS%w)$MR&%K}l7w z(WNkj_svH=(1BE;QK`ld*Nj-gAEBO*R~c2!Z-J;tA44N%@YS$h1!@Oc!>Nzj6LxZe zlPMJ9xP87og$D}m&JE1m2#`*>wj3)cD`+Ty!KygHe@_S4;E7-i>a&-zG#r{58i@UD zkl#TEnmN$p1f>!N`_VvQL5dhs?(;n z)3WS-DGZqqN@YZ@R?_gcyk3tH`P$$%Nm)6)Xat&_yn){i!*LO!O5wLn%HVk&l>z>* zc3ypHH~S4Env{bO4AXUM*?7@UQpchMJluk4&hO}fSHH6%s9dLlu&ivLmv~7~_W<1~ zmPYJvIlPs^;fVRRKKq8b(|)c_J`isjxG{r)x7()fH07;x*D)kFB1&1J`r`LD$Ltty z-xn#R#=m`crWRgwOC`BH89HGjW0b-1h2*c4+7m9^b|EjZwr0QKoh1*E?DO^Vx%w$n zGU@RUDqOThuT>m-&?Xhtx7qt+nXG9ZQ+JltTX}fuO+J14I+4YRO~H{E)|*-djn53`UD7d)53i3Dm9KqFX{u@K`iWA;;Bxk&7LkMyCaFl4km zH$jUJsP@0-g==WO1G*XPd0?m`(F9z)`e&MZ0A>dh+-YOndJX^=4e6Rj#N*4Nh5yNz zEEP5#h;d43@Wf6&QHlErLH@$y!1-W#Gm>S0;0^}(Hh@-_?va4A8mrq|pXFe*g21q? z0y*>HexpbMssZ&k@v=K4{?)cH-mLtpLXjH!zg{-BSR~%yvQ6fTy=Qp(cRM{bG^G7-d(d+ z*aHX3qxg=T9meqlcq>49;K(P92w>VXtdwdwfoD{?l%u9#!Qz(!XRRK-ir zng`c9;eofdRd2@_2t+##lELTYp$9Mf!Fj9l+&B5Vv5{X{i60&wKH<~PsaGiptc)>Y zJ8-i;eg0fH{u!1n?oR?pD$nA3ABhHC~$8Z1sEN(-Gml06j9*#|xVTlzb)h zWm&7z*1#STU8mOqQ5fLV)Xa!IKtx~;V#nZqgMa`2xqv1dLg;LF?)~*%lWK#JHuWm- z-?rgxoDR*0y_Lgb#GTZb08aG5}80AfM>yNnCW`!9WixkNqs)VJPj5B=EAO zLGPEOyrQBez%uI)JQdynUh7`-u?hx6LPFB8Q$5%Xy2ujCzkXLR^7&Vo2doQd_ZMRX z2>=Qs4uGKW+02zB3xAX4{Sug0rH2PS_t*jVzfG&pe6!XxGp(8V0K6Jq5RH%r-O-x? zIw=6F{u%grQMO+jUn&8@T3TANkdu=S0Kt7gldg2|RczZ!ORpZUNbd4}~40|02% z1EyXl4rhw60q^p?oSYo`HkI-&5|N&b8aTm9pm}yd5FAfV9_%6xT8fuJ%dwElU-W^& zQ%-TF1Pl-tG(NO7ojnN93^N7T%Y(=t#Rx8b0uBLcPHf$ST>+RqBfrBQvK0_7jPl_C zbC_)Gp}(BqS4n2#^Jh&UG3aEntpFevoL)X4oQ>u^ zn8F|fUU`LHR8(XR8j5F$R7L4;cdNjCM3p|LHvffIwYF2J0}t5>r$LVTAHhgyM^6@_ zl+p!;cIpi7am|ztfNmT9^p{_9xh$$WUgFt$V-_}3Au*o#1s%}W&_ggf-4+q17hl@`gD(36%nBjs)O}%M zLIdtd`t|D<7mz?pE31L!kejr#y#=h~L6q_d%s_wp20wAyI){ZQ&_WgkoFt)4mFZm% zaL8uBQlx-p@MThMV_YhsAmCQ0J!l)2s1V?nm|dOxb2<9kuYn#6{5hc89tE{VMYs9o zajvbc{TLqpDv)ct+#X!Q_VMV*{w&K5fL|+sexGU|81-0p7%MvjaWgV1nPl?@kq9)H(_IABNPOj zS9%VPim$84HpU3c;55?$bCVu|T|*qKQKBi};YS0|R^GR7!~hP~2iOZJH0)9q%&4d+ zr@ueqo-a-9dRTzm7j&Y&bfp6ZxZ!}f89C>C5%&$0PvaksZx=Tj@{s!Ch-N8`Rs{Y0|luwVyn}_TKC=JgI(CE2Wql9_iP*9`Q z+VjgAhmOEuaoxyC=(W20D{tBPpYZbj##I*8arHGa`dMd6q7lX1_ya)(N!GZukUN+W zvvW)jGg&{v7Gb7*R-lH}pxjPo0QrscA#r|aPF;BZS4(7&gyVPOOX{Sj+b?SzvWdA( zDrZ8er=&)z#i4R%d<-5^COtH!r~Lb3KOBO{RI}z)6;er>mC*?jYT@)o{Gb==;bD_( zS}OzUx;EAoD|U)8)l}_P`Jr#w!tjLx@BEIgPPdCmNl86Oq;f#Ez?WGytNF3G_@afI zAN>WzVtATjxBwQv)k(Ti(e#$68XCrvu8nl;<;VFJxhY9_W~v9Mv3(Z(pk3QQL*o|$ z1b9o~yXStEMa_))q0#iOi#Ma44`(P9vBcL*#vcqhp#{Bxu+c_Q+ATmzIfvpA8M$O= z3W^r39Z$N&_p@3G`oA(}h>EB9QtU{TUyk~aAv}Z&Mo1*c4vIze8cf-Ym?rvEQl$a0 zqdGl1!3$bK)I(opL$b&t*z5*vFnH7YAJ0pGE{ z(_AB`j6xy9fmmcg$cu+|->((TK{X$BsXm}#t0s~FCux=eE2s%#M;yfnB5J3FM6rUf ziazCniUa=;9W;W}@a<>=4`Ci}Ipq~78>M8X&QwwHknykMKVf8i`6VnT@TIJggvFzm zC;Qkk))y)J6$`O}epkj9j&y2#4l94hd!ote!zVUao?A&u^x+`oAb3%>cR?;6u%mv& zCTK*Yt%E5FPyi%m-9puFviX>Z8s|fF-cQDE$#Ef1OnQd+W~S$M4I62PURzm;Tw5WW zuNdJFm#;?P6Jd(6Kplnv5KWdUV<*hk^^fke_~VLs-y*lmK@!Lbx>58>AOe3Q97I35 z{mLH#1MSgIuDIR@JF6$k(N(S2fiNfG-D$h)`A8?@>UBG@)yftb?VAqe8d<(|MpF7_ zV~SIz@kwRGO2T$jNE2Zv^seKEXFTPn3^CRNb+WPA9T83tDv>3P*1$Z>8^NFy$ z$+y%t_BJmO!8PQ4NP@3dI?|aRGxjh3T{RMI#p}i1qS)J$x=1vL6slER%~jo;Ll%1_ zhQ3U?nV>B^7HdvQq?h-j|Gmj$0rd9tQALcbU=sr;qKo|sWqb|!ueB8zm*x0~WFPm! zCD=2~x zZ)Rv7wIyK381m0G#m9Y-JvMmeUXg;&(Cy88W26RcF4Q8?T*6B)`fnm*%8l(MLl&a? z9NO^7V*cS227gH_AFMUhA5}#0Kxn}AS@97GLV!$AeC0LSIo>G_M_LqdcR)dop1B$A-F!-6}iq>Er?p%tYw4E$JP7LCboa|l>BB)moF&Q@;@2B*#49S=3ts1 zze}1a$WgQj8GEHRxQTab3~2y&iM>#Ah?owgK;wd zL&Bz-(8u(p4T=Wg>Id9h6Q;tmQj==bx(fVJUE~{NAFMC;?^=;}*hZP-O%Ph@+0@fP z+5LxCUvB-<7FNs4Gtm=6|8(d}sJP~|xt5bwCcczTfJ}8)6teI3h3RSp@8dBCj1xsO z9J}%ax5vJ|cNEn^TibS`Q7A*e(-YRK0FwyTM7qTexs&_LdfH0pS5jP8%o z*M_Kvx%@>Pf$&q@7QUveTc6D1?~hp*Fx3al3DrJ)joT}PxK2_!E(yHJ^3WQky+o;vo;e0E*w`}Thbm54rVy%VUt6P%f* z$97~53#N#VjBd$;)e6HgP(A3;b>frJa&@w6^5y+3;9m-C_nUp!UdEJ_5Plo;rB0C+8-Xzgr!;k9^0*XcNUe9$io6<}A5tsVl1uBfKJk zfopiJi#7(_Hdg?ppth*m3Ive>dKf}C=#rk$d2l~lttM44qm8lMDABYpf~Agw>kG%h zQ;MM4W%kt)p+<9OLHM9+r&WDQ#bnxqZiOTAiq2VbT%z#QjSd%I6kQz@1ZNnXZ%7KEjP=YP~=OL z>7*w`Pu@sJ@IY$XIA1ZJ4P-iK35gweYv*^BCy(Ukb^d!1{u`%$a9h=c9(lNd@F?{W zc^7I+&x9cmiB?pzr$L&db6Yr&ll_O%#2G+5>fBxZh5I-Ih~)Pl%Mz zAmDIIJ_i^!^3^|z6G`jC)gmybD_kLjaX%IhjhuZSSwv>L1 zpcVmCsmIT>C29Y8qxlS0u;rNQy+OFJUVDspWh1_?6Y!e%spERQIxOGoeRjd5;6^IBYdg@ev>nZM9VnO25Hq(x$| zt6yuN`)m9#9F-0K3e)Ck$~lU|Tejdz1&l94#<8j57~m}P%+CZ{fu@by|&8s+Z~ zkwruO5Eq)y%5zF>PeIIF=5pGQ#}zR34xsXGpGs--q=%GQdN7s6&(uIVQmSutkyv=2 z{CbrC!UOB>(nx(1Sx3{Kt7Dddd!lfDP5PDf(1qnQ=@9E%C8!svfw+AQ>dh%5-sd~f zK3YVo#JyRTCDsOp9eq^x!yWu+48e!c7bVCx_dKnI=nBOf>m1=#&l%Pf^#8&2` z6z%KNskj>U(2{T`LNbC0W*VPo1A_=gs5!EuuClqY0|DsEyqnSN-@JKyKPr0|ax|8F zH^zo8dQMlltkpJbuAkCTH&#Os(O-Gk3oR>Ns?tmYo@RqZ!zSAMi<73bbbqdEpTLVh z$woVQ0+c75)HQ6hk3+J`gT%jIv7Q{I?Hh_dX8;%pJ%%z<;j))TC?|$Ru57fcIrVpq zSUxdJ8>7#5Od%n2SS3dX8JXatG@H^!|EaM~1B@^0$1jdAb5deNCL9(hd1Uz&vw5(M zDsV>cP4G~-sC_st+@Oy+8|N?XeQ#NV;5p1yFiS3ALWwys%zW2YF(B*FXJ@)v;$KVs zpmy?2w&03)i|0p{ifEJ^X+_HAjmql8JI_smT$Zxu;pK>R$QGp1BJN+2`&=-k z#hG)Aki}SSW3QwfUHOr&mi{cu+pB0T=zGz&N0P>VjGzF)LPXkAJfGdArcuXY)!;0A zBW(Y?LHEyilC(Wn)kjsNK1259Pr@?{YkrN{33RQgSN)UZK!R;70hFW z(>5C>cvN1yk^ZWI+E#C|NVW4sLDq!HhI3K};hXnr23DsgtikoV{<@||n2;3asS1Qw zE2lR03WW>XN6dpMNFGAXyINLaJ&}KB`hwPa0X65Pg%N{|y%3@z?Byo1zonhc+LUvN zc=;06vIw+MS$OZs_6udAaY_M0ihSBKajD{XJ`%_0h-JdqE}XKVWyoYjna-x3GmNPBOaUXHJVS`K1yrHyO5o9^AlX{no6hS-f1P2BsD*c(%|q$ zf#9lL<>k1`Rg^C~2>5abH(WX_oL{yi(lOT)!&}?L<`+a1;HNL3SQvMK967RonD{g~ zB=VHj5E%4J4k|JN@}S3no6Da|t6KIUY@#kZ;lJ;taC&clLG-6b+h`ZmY+H%Raku^BHTr$ z6hDi~st~j1a1v&y4i_tXUUS}@#lW48jGQe@Z9HI(fsung02S8Y+Sna54seuER62?kn2PF=T`8O z6OnWIcCAv15C>j+kr`!K)pDMqM^{{fTDM`BB_{)e$_l`R#g;bD7o{a$q|H&* za0UNf>lvio?He^=ZMf@f-Ha=v9p3QhNZk+SUqn!B&R6eaXK`6k9jr6IubQtk)x^V^ z-{aei*2D*r2z)F6nv03mCCHs9JIi9}mS`3I5aoiWmAy!yWJ59ky3lDo^L^77;xvPE zxw1q;@p>$ha1^0{9k+sbUFZ{2LO*3`C_o2Ng3@Zl)~otCwgJ&SBe_(XX5-&!i}8~i z+JBDA@S}oe>_Ykr+RZ1(L=Tcga#M!5^zFIy*&$@U3ABmT;4NqAfdQlE)mZJ{wQ5p% zuOdq(mO;H&T@2(2iRwR1Yq&OzOx-MAXe1o?_&I5N<&=JYT&*E>>hs4rDL1bKpF{@5 zDLJWq!$TW{qL!At)Apd-n(s>=CxN;JNKi1?Oc(PDUib~A@sVgER}O4G0;87!NQgik z>1X?ON!5pn#Al|NWcp%ibQy z2hEX8s@)vJ@o6v!{FKu_mOEb1E4`ixs?VD})+r~K!f3+^Zkc*=LMu!T?uvnVd)MsU z1zwLaXWxGnMx$e}u?F5K17;}xN{m&8xyW|p&V)2 zlOLOr*$%x{juW}+8Z?Q*QIY7Mq_mTYQf zxXi~{=9`ywPPQfJDvf&?rTgz`M$4E&_^pt2ig3c$H&Nkbo#s{Me@n*X6ck>*dV!EJ z+*?su#&UER`aU-6?RYehqh0|680?jtTjLptJ_jdsw!B+bCZ%5HV3j&#g-s!foWR3u zF`mNBm8w)yQewgh^cn&Y94(oxsWV5^ZWivDr;nq}<*pLXfzW zp`M;z#qHAa)l-aW{w6}kdp0AW6w%$cUG4|qHAvUz zua1jirVob%S=g|Ic?{RbM%QXa#9iMVUlS4ZV15M9&2U*cdZoKCP4wUoAF>+WUh!Ef zx8VQF6q$O;=+tOL4~86lnuO7nqN(|nIja}oem!Od$6>r_0lM|G;05tSn!@_TrmZY*Zvu8p!zYC7Khq z)OuU?84o!@1C=?7-Z~TYg|!kQ6}y856mG))_T4}9^qAldwm1Z+EJo6RJ*m=^c5m00@h!1VuX~W2 z+gIO>Z}cx5)u2D3bIXSYYlFXokB;6Lrt(?*8nfOzJX$6MBK(oWpcYK8(=nllCekN-O%sT`}`~X$R$cPX* z)@P-S9P`Km8I#)LENZ!sM)(g2y;GQrW4nfkX<}(8r0!jI)<_o>D<##=NJ&G2%bevi z9UT?bE4Tr{U}K%(*bxy=*VfmWNJ&U=N*f>U?>zMZ^)p=AmRr+UdYotdwqu6GIjXH# z$%ROyC_!8uznxj;H_kecNeD3u`lBvzwF^sRqnoFhpLOaN5)mrn{(K>yxo;tmZp-m@ zRIjW|1)=h*J{mnk6ygK^^Rt420;&RQLP$Mpl*WdQVJ=V-p!@)M=y`G+M+o)Oz~03q zjvFf~Q_<$!pvcGW@=KyW<$g1p#I#oFr}4#$c)vzHS-T^8l@d*iC3Vym9I*g6-q>)(hCwEnd?J47BCe^Y7 zN-QUQ8J~K4dg!^ixe5D00{d}cBGo2cUP>46ElUPc(kMGC0xSA0dFX|O8#}-itO``+ zX@lY1)ThG;i|5LC_A80Cs2(}v?t*fg}Z@d#!Elsxbw2ib~CPw@t@PV@NbjoWd&(xL#3tZf;5+2~+ z#EihG=XpF67WNi`Y=?H0GutN;7XjbI=!JAw+v78lF!AI4wpScm`VK$rBh2f+wcT!y zG=dRp{-OaoRTRDr8Zpm^;Tg?8MafR!CZNkV`g^-j1t#*%nwp#)mKEHZ(Z6O)(Zq zNWc#gIt(`Fox75wk7AS=GUYlwUR!A^g{x@&^{%S8>3m7uXD1;0-7ko!F@j|saAKYZ z2QxD>P5W}%TzV5?GPs>_ocp`?`75}u5Uvke$Hrlf7SpQh=}Vz;scAKuGv~a@40h=2 z4;ffhxG{P}i7|jKAR#;%pQnjrw6qtX92lfj5$AQnJYQSFMDf{Xi=7GSR?+!6k%S1< zSuiCsCD0{B?*+g4yD8vvozeaQ~N zuk$jrQ2FZC>sSGpa}Yg(h3UV|Zr@xUV?d~r^ECZ1E(&7=DeFjB>H{rw{`++~@O9b} zc^cQxWVcRO+#-`{U8MwHYxmJpS+R6x9>ebL(WUbo>&Tb!BcZUc8iN z%{MFtss{Dp6&>VR-%rg?W-wZAGlZ3R5>Li#)!!G6m)-6VocY8qXt>uwJ|tvh%(dg` zpyMRmA5cJSTfc#o;ZZ+7DVed`tFTT(fwZ(`^!3TvNu$3RR0K1=3ddI?W)xbo(|Tvior>_b z_DGvviOcp6twJzH)USq}?^RWbtP`N}dkmlp?3AFr=KsF__fa5<`yOvBBH#RD*zzz0 OzT{<8U|*%oLjE7k)bcF= literal 0 HcmV?d00001 diff --git a/docs/introduction/about.md b/docs/introduction/about.md index 1da10ce..5397b92 100644 --- a/docs/introduction/about.md +++ b/docs/introduction/about.md @@ -17,7 +17,7 @@ slug: / * 🔗 **Share** your meta-analysis with the community with complete provenance and reproducibility. ## 🚀 Let's get started! -* Check out the [Create your first meta-analysis](./tutorial/first-analysis) tutorial. +* Check out the [Create your first meta-analysis](./tutorial/semi-automated) tutorial. * You can also read a more detailed guide to the platform in the [User Guide](./guide/overview). * Learn more about the [Ecosystem](./introduction/ecosystem) and the [Neurosynth Team](./introduction/team).` diff --git a/docs/introduction/ecosystem.md b/docs/introduction/ecosystem.md index d51c78c..802beb8 100644 --- a/docs/introduction/ecosystem.md +++ b/docs/introduction/ecosystem.md @@ -3,9 +3,12 @@ sidebar_label: 'Ecosystem' sidebar_position: 2 --- -# A Unified Ecosystem for fMRI Meta-Analysis +# Ecosystem for fMRI Meta-Analysis + +![ecosystem](/img/compose_ecosystem_paths.svg "Neurosynth Compose Ecosystem") + +*Neurosynth Compose* is part of a broader set of tools for neuroimaging meta-analysis, with complementary roles. -*Neurosynth Compose* is part of a broader set of tools for neuroimaging meta-analysis, with distinct but complementary roles. ## Neurosynth Compose @@ -15,7 +18,7 @@ In *Neurosynth 1.0*, we developed a web platform for users to browse a large set synthesizing findings across 14,000+ fMRI studies. The philosophy was to leverage large scale meta-analysis to provide new insights into the literature, overcoming limitations of database with sheer scale. With regular updates, Neurosynth was able to keep up with the growth of the literature. -The database was released with a permissive license, and accompanied by aa Python package to manipulate and analyze it. +The database was released with a permissive license, and accompanied by a Python package to manipulate and analyze it. Although this approach was surprsingly successful, there were several major limitations to Neurosynth 1.0: @@ -27,7 +30,7 @@ to capture the fine-grained details of the neuroimaging literature, or allow use Aside from obvious extraction erors, automated coordinate extraction lacks the ability to determine critical information, such as whether the activation is positive or negative. In addition, it's not possible to segregate the coordinates into distinct contrast, conditions, or studies without manual curation. -* Coordinate-based analyses are inherently **inferior to image-based** meta-analysis, which is becoming increasingly possible with sharing of unthresholded statisical maps in repositories like [NeuroVault][https://neurovault.org]. +* Coordinate-based analyses are inherently **inferior to image-based** meta-analysis, which is becoming increasingly possible with sharing of unthresholded statisical maps in repositories like [NeuroVault][]. _Neurosynth Compose_ aims to address these limitations: @@ -44,74 +47,53 @@ _Neurosynth Compose_ aims to address these limitations: ## NeuroStore -[NeuroStore][] will act as a centralized repository for coordinates and maps from neuroimaging studies, stored in NIMADS format. +NeuroStore is the centralized repository for neuroimaging data amenable to meta-analysis, including coordinates, images, and metadata. +NeuroStore serves as the data backend for Neurosynth Compose, but is also designed to be a standalone interoperable resource for the neuroimaging community. -In addition to the database, NeuroStore will provide an API for programmatic querying, as well as a web service with which users -can contribute to the database. +NeuroStore ingests data from a number of sources, including NeuroVault, NeuroQuery, and Neurosynth (ACE), and provides a unified API for querying the database. -This repository will version control study information so that users may curate the database, -correcting any mistakes in study data or metadata (such as incorrectly-extracted coordinates). -This database curation functionality will fulfill a similar role within the ecosystem to [brainspell][]. +Importantly, data on NeuroStore can be **curated** the community, allowing users to correct errors in coordinate extraction, and add new studies and coordinates. By providing a centralized repository for curated neuroimaging data, NeuroStore aims to facilitate the development of new meta-analytic tools, and to provide a common data format for the neuroimaging community. -NeuroStore will automatically index statistical maps from NeuroVault and ingest newly-extracted coordinates from databases like NeuroQuery. +## NiMARE +[NiMARE][] (Neuroimaging Meta-Analysis Research Environment) is a Python package for performing neuroimaging meta-analysis. -## NiMARE +NiMARE is an open source, collaboratively-developed package that implements a range of meta-analytic algorithms, including coordinate- and image-based meta-analyses, automated annotation, functional decoding, and meta-analytic coactivation modeling. -[NiMARE][] is a Python package for performing meta-analyses, and derivative analyses using meta-analytic data, -of the neuroimaging literature. -While meta-analytic packages exist which implement one or two algorithms each, -NiMARE provides a standard syntax for performing a wide range of analyses and for interacting with databases of coordinates and images -from fMRI studies (e.g., brainspell, Neurosynth, and NeuroVault). +By consolidating meta-analytic methods under a common library and syntax, NiMARE makes it straightforward for users to employ the appropriate approach for a given analysis. -NiMARE joins a growing Python ecosystem for neuroimaging research, which includes such tools as [Nipype][], [Nistats][], and [Nilearn][]. -As with these other tools, NiMARE is open source, collaboratively developed, and built with ease of use in mind. +NeuroSynth Compose uses NiMARE to execute meta-analyses, by exporting datasets in the common NIMADS format (see below), and specifying reproducible NiMARE workflows for common meta-analytic models. -NiMARE aims to fill a gap in a burgeoning meta-analytic ecosystem. -The goal of NiMARE is to collect a wide range of meta-analytic tools in one Python library. -Currently, those methods are spread out across a range of programming languages and user interfaces, -or are never even translated from the original papers into useable tools. -NiMARE operates on NIMADS-format datasets, which users will be able to compile by searching the NeuroStore database with the pyNIMADS library. -A number of other services in the ecosystem will then use NiMARE functions to perform meta-analyses, including Neurosynth 2.0 and [NeuroVault][]. +### PyMARE +[PyMARE][] is a Python library for effect-size meta-analysis. NiMARE uses PyMARE for its image-based meta-analysis algorithms +(with some light wrapping to convert image objects to arrays compatible with PyMARE functions). + +### NIMADS + +[NIMADS][] is a new standard for organizing and representing meta-analytic neuroimaging data. +NIMADS is used as a common, interoperable format by NeuroStore, pyNIMADS, and NiMARE. ## NeuroQuery [NeuroQuery][] is a web service, Python library, and coordinate database built for large-scale, predictive meta-analysis. Predictive meta-analysis generates non-statistical brain maps from text, using a database of coordinates and associated texts. -Because the [NeuroQuery database][] is more advanced and accurate than the existing Neurosynth 1.0 database, +The [NeuroQuery dataset][] is accurate and maintainble than the existing Neurosynth 1.0 database, this new database will effectively replace the old one within the meta-analytic ecosystem. NiMARE can ingest the NeuroQuery database and convert it automatically to a NiMARE Dataset object for analysis. Additionally, the NeuroQuery database will feed directly into NeuroStore as a source of coordinates. -NeuroQuery-generated predictive meta-analyses will be exportable directly to NeuroVault. - - -## NIMADS - -[NIMADS][] is a new standard for organizing and representing meta-analytic neuroimaging data. -NIMADS will be used by NeuroStore, pyNIMADS, and NiMARE. - - ## NeuroVault -[NeuroVault][] is a database for unthresholded images. -Users may upload individual maps or [NIDM Results][] packs, which can be exported from a number of fMRI analysis tools, -like [AFNI][], [SPM][], [FSL][], and [NeuroScout][]. +[NeuroVault][] is a repository for unthresholded statistical maps from neuroimaging studies. -NeuroVault also has integrations with [NeuroPower][] (for power analyses) and [Neurosynth 1.0][] (for functional decoding), -and supports simple image-based meta-analyses using NiMARE. +As of early 2023, NeuroVault contains over 8,000 collections of statistical images, with over 100,000 images in total. +It is the largest repository of unthresholded statistical maps in the world, and is the primary source of data for image-based meta-analyses using +Neurosynth Compose. -Additionally, as the ecosystem is built, users will be able to export meta-analysis results from Neurosynth 2.0 or NiMARE, -as well as predictive meta-analyses from NeuroQuery, directly to NeuroVault. - - -## PyMARE - -[PyMARE][] is a Python library for effect-size meta-analysis. -NiMARE uses PyMARE for its image-based meta-analysis algorithms -(with some light wrapping to convert image objects to arrays compatible with PyMARE functions). +Currently, NeuroVault supports some basic meta-analytic functionality. However, as other tools in this ecosystem are developed, +it is planned that NeuroVault will focus exclusively on image storage and sharing, and will rely on other tools for meta-analysis. @@ -125,15 +107,11 @@ NiMARE uses PyMARE for its image-based meta-analysis algorithms [metaCurious]: https://github.com/neurostuff/metaCurious [NeuroPower]: http://neuropowertools.org [NeuroQuery]: https://neuroquery.org -[NeuroQuery database]: https://github.com/neuroquery/neuroquery_data +[NeuroQuery dataset]: https://github.com/neuroquery/neuroquery_data [NeuroScout]: https://alpha.neuroscout.org [NeuroStars]: https://neurostars.org/latest [NeuroStore]: https://github.com/neurostuff/neurostore -[NeuroSynth 1.0]: http://neurosynth.org/ -[NeuroSynth 2.0]: https://github.com/neurostuff/neurosynth-frontend -[Neurosynth Python package]: https://github.com/neurosynth/neurosynth [NeuroVault]: https://neurovault.org/ -[NIDM Results]: http://nidm.nidash.org/specs/nidm-results_130.html [Nilearn]: https://nilearn.github.io/ [NIMADS]: https://github.com/neurostuff/NIMADS [NiMARE]: https://nimare.readthedocs.io/en/latest/ diff --git a/docs/tutorial/_category_.json b/docs/tutorial/_category_.json index 5682ea4..753167c 100644 --- a/docs/tutorial/_category_.json +++ b/docs/tutorial/_category_.json @@ -3,6 +3,6 @@ "position": 2, "link": { "type": "generated-index", - "description": "Follow these tutorials to learn how to use the various features of Neurosynth Compose.", + "description": "Follow these tutorials to learn how to use the various features of Neurosynth Compose on your use case." } } diff --git a/docs/tutorial/first-analysis.md b/docs/tutorial/first-analysis.md deleted file mode 100644 index aed5232..0000000 --- a/docs/tutorial/first-analysis.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -sidebar_label: 'Tutorial' -sidebar_position: 1 ---- - -# Tutorial - -NS-Compose tutorial \ No newline at end of file diff --git a/docs/tutorial/large-scale.md b/docs/tutorial/large-scale.md new file mode 100644 index 0000000..0a1273b --- /dev/null +++ b/docs/tutorial/large-scale.md @@ -0,0 +1,6 @@ +--- +sidebar_label: 'Large-scale meta-analysis' +sidebar_position: 2 +--- + +# Exporatory large-scale meta-analysis \ No newline at end of file diff --git a/docs/tutorial/semi-automated.md b/docs/tutorial/semi-automated.md new file mode 100644 index 0000000..75f738f --- /dev/null +++ b/docs/tutorial/semi-automated.md @@ -0,0 +1,7 @@ +--- +sidebar_label: 'PRISMA Analysis' +sidebar_position: 1 +--- + +# Semi-Automated Meta-Analysis with PRISMA + diff --git a/static/img/brain_result.svg b/static/img/brain_result.svg new file mode 100644 index 0000000..e4ad649 --- /dev/null +++ b/static/img/brain_result.svg @@ -0,0 +1,200 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/static/img/brain_result2.svg b/static/img/brain_result2.svg new file mode 100644 index 0000000..a66a638 --- /dev/null +++ b/static/img/brain_result2.svg @@ -0,0 +1,73 @@ + + + + + + + + + + + diff --git a/static/img/compose_ecosystem.svg b/static/img/compose_ecosystem.svg new file mode 100644 index 0000000..f537bc9 --- /dev/null +++ b/static/img/compose_ecosystem.svg @@ -0,0 +1,762 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + NeuroStore + + + NeuroSynth Compose + + + + + + + + Neuroscout-CLI + + + + NiMARE + + + + + + + Text is not SVG - cannot display + + + + + + + + Create + + + + + + Run + + + + + + Share + Publish + + + + + + NeuroQuery + coordinates+ images + + + + + + + + + + + NiMADS Spec + + + + + + + + + + + + + + diff --git a/static/img/compose_ecosystem_paths.svg b/static/img/compose_ecosystem_paths.svg new file mode 100644 index 0000000..817d1a0 --- /dev/null +++ b/static/img/compose_ecosystem_paths.svg @@ -0,0 +1,2489 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Neuroscout-CLI + + + + + + + + + + + + + + + + + + Text is not SVG - cannot display + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +