From 9cdc18f6d24ccc0fd86f2944a62e1cdf9349b2bf Mon Sep 17 00:00:00 2001 From: Karl Gordon Date: Tue, 13 Aug 2024 10:55:33 -0400 Subject: [PATCH] adding docs --- .../metal_small_sim_f475w_nsim_plot.png | Bin 0 -> 44503 bytes .../metal_small_sim_f475w_prior_plot.png | Bin 0 -> 78880 bytes docs/megabeast/simulate.rst | 188 ++++++++++++- megabeast/tools/simulate_obs.py | 254 +++++++++++++++++- 4 files changed, 432 insertions(+), 10 deletions(-) create mode 100644 docs/megabeast/images/metal_small_sim_f475w_nsim_plot.png create mode 100644 docs/megabeast/images/metal_small_sim_f475w_prior_plot.png diff --git a/docs/megabeast/images/metal_small_sim_f475w_nsim_plot.png b/docs/megabeast/images/metal_small_sim_f475w_nsim_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..af78ffa17ae4e507d12aabdbb69950a182d65a1a GIT binary patch literal 44503 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

3LJQ@i;HU;M+@rNJ!tqA>p*nnis zy-_j(oZnAxLknDu+*lYQ+qb?v(sVyN-*6F5GjzX#A|;qWuYLy4_rajR+*{!*Rv9t* z2zoG0P++wF(|whTaQmX7qT=pG;)!($2kcqUIu~G>2NQthHymSYYfs?SCjXD-t~8v= zbqy~v&r*>PvLhP}M1y%~BSgv&8LBNxp$tnIqroPz4HXR}X(U60kPHoS44GOi^RQT% zb{4CIeSdYXbN+O$>s;s8`Rj7M-?!fHeV*sO@8@}+r!n1tj4s`N!K0(2`1pGJ_9gC@ z(mq5#ckUb}(6fA^mWryny>CoqU&JMS?{UgjHg(B{uU;L6k0JxVhl&Ne zqLY##j7QG)C1zXnOig)WCAPC-udFh5xuUf?$KiYCsrTk(NWxlT-Dl{^N{-Kk2=hkh z_1(?Q%gYOl8Q$(3N^Sn-Pi}aos0QtMzM7hvYnu;q+_SjJgOEdg=6CAUtFH|D4?neB zION;(Z`9Gdweax9a?3ehadt#1vY^;?Hu`T^?AO5M~Hh_q=4Df z%*@Qyk^_BxmAb|=Vbe1+)reD2VFhk%Kh1&UF27U=)3v&`w!f%iK^cbXHoE*R+wAP@ zn>TM>BJTO1P4|s$KCJluV(Ok^ckbMIir7W?vt*TgfXHV@2Y!IJc=JBt-+w@A^*_S@ zD`+Ri^@AFCuJ{T1<%|63Vpcf|05w9-+0gl(J} zPW6)Au|u4Ng#|D5=H0t7|6s%jE}>nhTerH0{Mf@lCB=hpw4pGB6_2i1 z!ZWgg;eh80bthVrGi472ulSu_lnYCl#3v|XA~B$LJ+ch?k$7phS4q4koKkJBiH>A(Q2UtGDKR-YA zp`CHOs?bn&^e;{xL&KJxj$2F(4Ody?IeWCfuyJ#9?^;GJ3qp+pDeTMVk-3KgSQ4x; zF)=X>dP~k8K$EWLK3sx=zX1x3(dqnO!^^oNsa6gSyrgTmV(e6kjeAv9#X=(L7=rg` zPDfTg_6Q(+SZCphDzqu@qtlQ3#zaIc)7RHe+xuV&al|?&2lx&ym5c|oyp;By`@Lhm zY~FstwvGq`)_@8wTW@j0eQ#PRpf(Q=Pw(*X1tey~Br|Lt#U~}5FDOvMH~xd`uh5g0*?ff96#oiE6~FGRE<4etNW?qYu4mqs6|;JD0VMIC|*r1 zEe0iX?*?E|$P9NobM75%2Kj^W_x1PVh@^MQ+gn+MAec6>;@O7Iy3<$O~ zP&{($L$Ee@2GNDL1{n|UzE|uqk~>$y0mju0Sw7f@au-3fl*j=ur%g3zI$ZlsW7moM&zWM4%0(2m6 zpjVoopYJ4{ST_V>xH0b9wM(FoGfY1mcfTwb|E;BBl9HEudtI1Jrmn(@I}ac7zzVnd ze-eWv;SFIAM~KQSJ(^pPZd4lTjT5xXV7K!|kN5aN?rSjL%}Lr9fdoHeDoba98^d-h z;e|+D*V%&sf`!GzI_Nv#ATPDF>{D_smw*$Slb9SC;S?1W#mUrtVp9c94)~zzopWwHi2Yz0U zfe96^xZ?h%uFk;5CfP}Bg8N_U)`#AP=f6@m1%I9KNK8tSk&|QNInN4@+fu*iAy{ms zu!4-qTg9Pqm+oKj7KA9ncz}|gv?ovM2Q%;JP6{M6U1-Em=Q96r-LSYgp{^H!BIvG8 zzlp|TW#k($8#vJg@v0IDpx}+8M6jt z#G!} zE%@c~v1bS7rk7O78YeM)ngjAXTMTot_;C9jFe z$^F2aq?syp@1q>*8#fAKoSXZJ6E&E4@o^|z4{k{6n{6^7SlZ72BQGz{51(RL^O7Tf$@hd|R17&S>XuiKvT%4!aF&0hRN#vBeSeYBW(qc7A>%3kv}l z)4GhJu||$+a0rs16MXmB6=LJw91DW({hT~4`)y%?-z{xo7S(++s;VMbqr?RTnCBrF z5&8mAojK0=BK77?Nx9|RP>F!*BM2N4({v&E-8)mb59a)Q>LhB0=yjZ#dohj<$ArR!2Au z>-%#TX=-lnqNPHlX(l1Rei|P?J01JJ0n6Ik+jrz26$HZ2{xT@i(b-v5SI1j1Pn~>< z+Pes8|HW^C)R-(A6O*X!%ALbJk+mT?L%qFeseM60RqDc4p-0;BwLL~F(}0bL0Dc=f@f6 z=ZQTYAI5;S*P3(Qb=}u>uP|jrX>?RVR0sruF7sMK6#{_^g8oBB1i!gbeBcK^c%3A* zoz!g2oLt{Jm_iiZI@wv-I$2q~BX==%aI~OL>{RdMdTxbD-fk0#=MAh9s@Ba04Q(tS~zCTDaCr818MZppi z6H9=95yXzj@=2F!6H`=IWybpFir$ZXgR)?w515{=a@n=Ei~$;zGuDPN-{Gwijr3r| zBgFh5qR6l1Un4JJp@_!$ir+f+vOdO?X9A)#}`E2Kk zs+t-}PyNkM7!D0bv<57S)`R=y(ntQK@i_jP_e0%ZD_TE+pYKjLhg0~R>8q=&=Y;lM z+ipmFj=~MI3ks+Y!zn3H#kt`$aKHW0Le`8{1mZoQi_tdhD{UZiRXAhZgL{Skf zv5*&jadC0ljj^$DY;3H5LIQ4K&pmj07g(%a4~Z*}U{q)*)Bw)z;m;X6b0xzATF|1^ zH8q!$+it0#&kPAc{4C%;ayZp?e^wE4q2J>1ED#A35h8FtWn8KKBbe2=C+cSu3BQ-F zqt@foG06}i5rmww_+x{q>`0F516!*a*x1hK3Qszy1E#M zDP%`H`{$3JWcc&9n}2dPhx3qZ8n>u#haPS*XJ%*bu4fF~*PeM@Zxvo1Mf*k!=Skl< zl?&e=MMM0W_8a?c*8()ZJ`?mf_51m*W4h)&=S6RIL{JbsSoYCM55M5~sFH9n@Tw81 z8kgNE7@0WYijBRxh3?hf_~9m3+taO4B-eR&n(sD$>AgxDuRaZ$b#0G-WwjWg{L$Ub z=Yt8kP%v%1-hS15*!cvX(-IfBz#p*m2vR{p;fJfC;kh{muK^O*xuvNmGhi3NPw*%h z8PUOdSga89O0{%)fYD2*7m7`sB^68)W)r;gMhlfD1vKww%HK2uEZm>hr3kpQy)!np zUy0;?*X{>{FX+LM>3y!VJ6oqzFGP`B?njj;A@O#7r=qR9tZx3(OX(<)ILa@Dg)feMUr8;gG ze_dH!cD3j1dq~W!tbY88efhR#T3JIQIP3njkjHr&SF=oaEqSuw^T~R;ZTFDRIeXS` z=j|~%FAzNtKd_m(wW`|MTJ1_B7|RbIu%A5(Uh4X24DQ@1LPbxH8c(Ct{X2ud%KOG; zAf0>2e!(9O>Ce;@GGwaFS2!GRx%quzJ+yESCDBTV>qQ(Cyw*7rsajhF{3H8r)U zq@?qFZx;IP=G)_b=q6~rJ~Q-RPSmvqcXoAF-Je~40-m>A|fL>-xMBC33{F{_9eaowoX{T1bc&n057yZXt`Kki55mQvQRynklG=b1_83o=>b!)Dp^}M_re&#j? zxR{S<1Qc*FPo6yCyjXDG$Y6t9fj~LmtSz!$Xw^p~U$E;!cL1s3_M`Bv==W)>YKGZ| zc>}K_NdiBsD(zJz;XCz9kCzk_tM&CfS6!IGPIInj+ZsI!ZNmoxYyHV<5fNwvegf{t zCRabgaH4La$b^~Rzkd&oVt3c-YNqx>TF<=C&0f?->&<@C8n6xT{s(Jo=c}|t=LPV4 z(uIoK`y$`MF)r&FN^ml9ajS4h80Py;9%m)Zrv1+wii&=%U5AEt639t~g?7rDno>a) z!)P+?=mU4BYiL@}%4}cI(DdXv`m7Kwv@7{utIgR3w%DzP5ZScb`kWA*?oQ)4J3I5( zFT>BfZ;+hsOb#8T&}4Z%#i5q>W9Xl%HVwCBMr|j%KSbJ{s)ADzI0`ac?`=7o(1ZA0 zoowWRNbEEQzHqog_JB|3d&|1Lvtz&3_sr{REt!^aAP!qx{54?gH` z$tfsckuZqc*9X&sH#R3L$Uxp{v*1gSl9WvKp7trc^}Gflwx*uz)rHPY&diL-ZZ?42 zJrWwqhX9a6E(^QUrZS`*L=xtkMyFop4QM*fu-Tcc$a=ZxwHhl8O^JoZ)bc41NSa{y zd{J51&p0YM7V|&kx7U+x=UZ8A<)lq3FeS@?cM_)nfR zrq}7PbW~45QquDAT7UgkK{{HGq1!f+@TGtM>;p&wOCXyoUVyqogeiC$(=$}KOXt0r z^D!t-C_z>4tjc5IcAZ;4$-{+fZDAA?Q|8b7u1vqag8JqKg;AXYAn2nmFWsPzc`Yyh z1C*=KWJ4cT4j035CN*B?sXG(7dbIX~Na(|%^gX51ao zF;!*U!q@Z7VwA;o{|%%aYMMcBQ2C+A!*55Yy}Fvs>+Wo_{^U15NT_R58}8Sq7K8Tp zzc66WcQvG>LJnJFUrNJ5m<(GP=7>^aW0$yyXdO;BRUqd_m{JLXKCNXqZPkz4}I@g)3bfI>Rg($z+m zw4x%$QyiS55jo~15Rar8?9|j!ZcVD6HursWk_0`3YM~YH@~{i@2pDiNec`rXazh2W z@+in}4VOP?RGVtmk(SrhDr>$6jXO-q7dNlSBch|ZiF;Y?7Daj<9{ar4x=WSz9sCV) zZjTy>i0*K$q_0l`SrmRa5oQIhDgT*gcaWF(=j)H=s-QYm= zJ5w-R{3FKF*`#3))LSMdG@-TZ^II7SeZt3JdXA0l53tD!09Zl*cYI2Gr3DKy@Z96f zs&?u4GdCB({{A=5owUWK!_l(jXI{tdJ)sKj1uq=G7F=b);|`){&z?cZ=T5lacEUs9 z%h}l(kKH0fR!)xf-4A5x5UbnA`hp4w0|BynK9a>$O5uf7DHMckTs13>nA;PRFYOhM?`@kJ)mGBWI21-&#i~dLgd>5c@MvRTA3q0JO_~_S+V9ESF(%7qOyJOTW)%M4s zQ8c%)wYL7r>~r)4B4TC5VAFbK)>a-KN~`WR|1KglG+-M5I#6!fJAEAQ1|sI< z=Ocjh*#o=`3kN5V^TPzZXKKbi2ynNJ3|9!`$#VufJ$iG{0Zg{tKl8oYF~kO!ot`>L zNJ=gNlpJOC2Y?Cyy>Gkhgg-xB?5#!%|GCT|JpA{r^|h>Q=Ujv1(dnqt%6s7(g1Gp2 z6#yjxI)Z~FG3u=!3COwvxK(ApA~okYBzU=7GsI#w#S#IWs+wWtWJvhqpc%BcgH|H~ zu4YyTkoP|G*uzFfM*8TV*cbu2K~;}J5pD+r>{A(xx^g(M_rFu1G_ZJIJE4*Ajjj2}g2KyQ|M7n%1?({a zWpFhp$J`RcsP{cZ=>DjOtOwLZ()MS;<;TYk0vB_R1<^{NIzk&`NI75?8ec-GhgI&L zD3UG!qTXF!HXXF``+Y^R9vmDby(>*{j{pm}|53mOet^$k+>8IFFBk~UL|t6CfHjS( zwEwjEJ{U27{KsebRkU8C0tf_3C&+jrB3a=uIhfGvYNo+|cHn^i`_h>2-@p3_Bf*K0 zX)`A?co``@2M#l&Dgg@*^W5dUL9U>zJC z?ZGV-r<1z>=Q97l=TV@G|9{Hzs3ed4v68gVcuAO6)?t7OXsTaLFQ%RV1bUo|Zd$9Y zs|}NmrcG%y9jKGS%}O=Z4;GB7GXTu5lKkh7l{0)G#35y(lp7TR$kt<%|+mrJ{Xq z^qhjyQyu?>jN4X+%IkNqGU-JhtM-s-M_s^fRUeoRMX;LM~CM;^4&j zp(l==n(&+qF8oUiqgWgkiG_VCFZcqg#v_3!FB=irS&dYK^`N@_yzqty?;uznH_ zfabJq0qA~^+t0dbWtGii7wwI4Rg_U6NJ<8WLljLAuDur&xyp~<<1o>=Y0Ctw>x^rb zFPu%bEi-|@-`w{VBh0e+4l>CzPK5wNbQpkxb9VgCP49eViD|o}0Dvog7LA$D9Q%VAv2(a_;w5aqHiwjgdS#wGNIfEdJ1-c%%4m zC5*r8tG0Htx$|Mr)rz9)@3ei$82LscR{dZ?LD{=fAP5ffzPsZTdRUqMv+4#F4c3lV zbOOG%Aw8mUz|T?F&6a@Um?xWN1!RSoy*lPLSeQkgy5MGFEEU;545~yeT33)4-9LmM zX&Da2Pgp$I|*2O68OiyqPG-2UNh0a@GK&qE0_XH48$xD0_u{<9^1MSv+{0B}e8 zf4d;3W)pMsboz49^yC)%7DTTI?B@Wn@SyD7wpnG(oz3T#v3{nQW^dN*52ajqWTHuULTPCb$Xd{*AQTehf;Zrfqo&+=s@Qz} zOM4*eGa5v@rlxW9W0Rv3JTM#Qqd`PAT|4A~nJ>q9nwy$_s|d|Z6ErGgq=D#f?hphK zwTiW^&vN(ovRh5|&u;X7G1L@bo%ngO6l;y^PPu1i9-rZ1AM zlra?>(wP(pv4sFd;L6G!&>azjELvn^g%aN0L+jR0lDT*`6PY$KV4#6YFn|yIX!1Y% zHY_$F=ZpH3HUY6CbX=1ABLi+MJEa~H8j4n9ox!;Qe>-}CoJ493LIgqmIX@n zCr@)3*6&PgJ@IuV)|g1+7l5I<8m+o7);nsM9nFYZA@>0BBm1~NnAC$w0;;0>G!$Ch z55N<=JgpN)tHMv%w3$G9)JKFSBHS1&z4wXPX&ETy31u9*JDF)GiaKf#{EV?lrB~2c z7czr}qTfTcwTKa6>t(0L_Yw25=Q78h6CjNDblLpP(17Oa(_+ z^yD$2`%Hqe7GfL3LGI`QUuuS(CMIR z0wPoU*|Dq&FCB!Tw;#D%p*8TpW6_bIgRnPaOZun4R$9pGX@OGYK=6S)P7almmy2{)irHTWHcgpCk0K z9S+B`hpZ*$>iFH0!d93NzEb2ezM7C#h$&8}_UIzh5sJzp|F0b0Ox>T$#oF#CBq&H< zaawy6{uI(JA+;D7hz|0=44raqZ~I8(`L3yp!{=E?LX~PSv*Laum`lz>=(#+DCbZ+3 zpfR5qh{7QiO#O!+B6Ij}S@jLJ`tJpty9Y^#{HDLksr-@A;q~S^?6t5U76yRhMX)~L z9DjWPc!M@2eeIH^3IcuxgK{{Ko)QpuyQTdwRz};Kwa*4Q`TnG^b!-f+AwHxtyw7NI zzw}(L2N;gR_iYF`ZLeiZ!wj0W#QEJJoW!)WVW$2m*Ibl~NEaUrUuV8&WrK)|TNYi1 zW-_%(BuXG#-3CL;dW*qHuJc;G(^?v}V*_xiVNQ(z!PzZq zi((am-2jVXZ5GDb{)jB(A4ORIRUUs;Na%CG)bEyVDJTzv8g!g1TQNx|KKn;fSWFx- zrmd=TCxm&wTiq#mF^ohF5MyMIM@2N;+K?aoEXLH_>{$sMt8E~vQokfsZ>z7e!rwop zN`vkj*o2Vt367=vUD}F(iE@F6`Gq_&5N?lhW$Xg-#UM%m7Zny&}$BXP}&XL*sgL$wwaqKpb2X)Q=ZvMbpwG zs}FkA)L>b)M1%Qre}Cy;H=AzCl%34-yqaT}wj$h&EfomrrIO6dY?aGLQ`~l&FAzhzTAb#8lfg&Gu|@WAY$(WgAna%` z%)VRjyi{4^^-_1o;KmHK*YVjd8T;1cP$wM+2xz#+lL_;&&7cuY6AnOCktt9~H50FS zh7cgdVffklXqAc`XCmj-K`bT3Hq&F;nT#Opq=nG|*W_zNMj5Fz?2#dDzmR#_jTyN! zmYoX#9Np{&omuC%#%)p=iroDGsMXzn>L<(O9pP*bV{GgAW?-v>T8i8hxqWvzzjWE- zuT~`BE#ufE35$xiPR`HEw9oH+Qd{TwM7-gGoIeaSo1 z`5(Ampy*PbHmbNid`n+BT4~cjK2S5rYNN}qT^eiPAf5zr?eE7*V!-QpRP7iuX&-1V zm5nXu7r>zP)Hv_(V#B5@A;3EASS1{O_cnL<(0*t>cK>2TGtWCEhvD)2?;fFI4;1j6 zZ>tv0nnFB3q$vZ)NX5?f*XP%3k`4)$v^d(eylvhPC3!ja0TbBvI$M(MNlyH|E;N&g z!N~ywmI<&B|1M}oc9%dwmWb4$ge>^h&BgNS@(7ZA{jOyZz<|>3E6DQn?i~fIjrkj8 ze)Vns&#>+3RO2D33byYtx1}9v-+=r582U+;+Va}~U;u>Yk46urC5J3dDHZ)DE}K_b zOR$fJne*;%k3k_lHO5I=HO)1W%O7oQ$q?M6N5)BmKXKf(*HcA`S&8D_ZvD-$X6yZmGAa=^o{ z=K{m2AE+sE+l`@lL?8|zZ7TOv?eF=jjyD}@co|WgmJBaZVEc?lk!(HmFfzK6#0z1j z()(}SqzYyo)95P3lFJb3E05osRn$D55Z(mLQY!mhx!83X8r5`c5+2CN2D z7y+b}VswMk)>F;$H(^jtkH>YN7!eKM&-0)K59ron^78Un1_&UYdSyR3dqzk;O*WK$ z%3@=_iSEKpAN)+GHV<{&u-53Tu7}?SXAg&iC}^u+6Hc^uw?)|vd9Qlc(X4{~zn8*) z&ulRo*WFG3O764kAEM zK>TVyOfCa94oVIk-kuEcM?DPM`at)v2&JvrhXh88EBr%g=Rns}<@F)I-x^%#BVBcTn_g&6Z8QkR+oREH;;E%5KD(!c#Fyt23a0xF z8>EFsSP-DU`1QuqEcL6ex!@rEp?eHuX!0gAWs9V~aq4!{@dk z&dsa!4}yXrzB{^S=50qvYC+h*V(_rJyl zTDUDp-ZL9?&%`nRMQm~Gp?bm3t2pJHXp9eR_{OQ%?{KVG4KTHmfWryFB*TC}WjqKu zC#S|G{@OVplDkd-A7pv|GQ5Bd2iw^mq&c_k?;Kq>R1nam@+>$=x;<0~3#=y}ApV3NajEBG<^prV&`uxLQswSonSdaTyyTHo==Mv9{Uj^! z*WF=;rB0Oe0tFyjo^3V)vGl-FRN?qqpwY;8L3{K155@gDe68UD`dL&{3-x_P_wY(%n~~;=-@9a+E*9# z4r;jmI?Y_$(@4Pc{Im-SY@?;hl;hTHFKAK<5tJ)ZB-e#7q$F+EZ9qE%Dt!uZKtfkK zZK+z#d_%cd@D)ZyMK!82H=F_VGYtL#wz>`Xj4|?5`cTosOBqswchnTyVhQ%>pzp5d zY!OC0-P)=@h^AV0Q2qJP;Ek_&P!v%5VbdYIyjYF!Hx!4hEjazQlY0I1_=Jt~1}1qB zeXt=680;SFoIs2Uf3De`-R$@0uxGC{dCt*G@(T)}!x&R_wq&|`dYl=+!g^J<3qoiF zZ17;dC8NO$baY>SFViJh8Gufqd5fAnB0LP2D~ax_1)CMm%24*MwC{9u3-%0|Ce9_c%tRoj2CZeEuR7XJZN*%{7XRrR1R_ETi&EBJNp&=I5O5FyVf$!4MR`E0;)!q*|%${W4 z)8f4mzP2Q^3mY^|=+e45r3YywPtBky=hI>=rUzd_K5SG_?Y zV+Se9NrVdZ(|DdmqLl@(SM-E$b~y@YP82;~4SuHiGw2qS~_xKYeLmN4G{TD@6MdEX83L7v(Bvarjr!+L4T}L@`TW$uR8-gFF^_cak$~2!Bn!o zA0vX1gIA_vA#ZH5ffos_+-k6mCdLRDW1J`#Cv|Sk!$Fm;Rs)&(X7{Q1sl0dhNV1uLS=a>eCODPQ+h{1VO{JE} z#TwGSACND^OcP0d-uOg4BCRha$D|$L_FoH|0v_UT6P{haV)w`;NTvAe+C`1q7#_4$_m1CZV~BtUrEQgOm**88U-O3x^K}BN**(rm zjsoP$BFGLiOFz^gsEOjG${+Fv>78%-@V$Vme_ualWJeyacvWEmlno7yYQ{#|VdiO! zp#KuJsnvakh7W1hQQdRUuj#>%0yG@7D|x3&IL}b*QaY^hd{9FKuY^R9pC5Q8#ls_E zNSd0-+HNgUWK#l2_Mh>iBb8=_f?v)28>Hy=@%M%RK?H%=yk9Y;>EV@S17uW6+d8|# z#1O^w#Uc9Us2YxTk|t;4-nYhvTU^AmtuPJ#Z#DQWB&Vy}wQTqR*%&^OLeXgZv!i>g zvTDzqHFvHv?sYy6-#6FET2_8vm5XMx$bG7uZe=TxH{=(_=doSeU#$i@2=>T%c!$6F zc{CsAK!FwFN(5sZ(O%P2%jfv%XuJHwtHfxXz6z!he2(-T*-aa&W^klMAD$-p>5^wA z7wxK?a+O;rn?kR1V9GIY-P{Ci>vOdy-{0P+=>sUjn4MuB7P`sz*nnWy=<^Bl+Pu-- ziq6@}WlC0>Pckd{TF7^q(o&*c|C`2f6s<-b_`>3qXNYI5jSMWXv@5(2U|!a^cy_l* z1P3EFlwsX4T4^YbnIBz48Z?J2j$`CjyiPM~_B$?<1WB5@l=kO?YS-(mkjn3Q{^4R- zGNVXjxhWd3l}46nOD8t8Uw_)(yAQ0K>GJWVmb@oodR5{yw^7o}ImYjCt-8NePRXTC zw2g)BjPS2#X^m$e8?%p=m$f&k9kXIPytpgmsB=$;0W3R|C>;ESqLs>_a=3&-m3?}O z8?Ux<*w zQ^VD0B{q89``&#MJK?ZcB!->U>9%$w-9p zkYh0rGm$YU=r^La9V0KCwSwfnwEc11pu;rOVxPr@k9+quIb20xU@kfJ zlvd7TGeY<{gM;n<@sS4jVU_&*Dn1T~!ouskSaxX|K0&G8PtSn?2|^#?*e8ThRn8Umg6CGFCO1j8 zWj}xvQcBBLf)Sg2$<79H^G1(`M~{ZoU{OODEua)c`;I9lJIIZOu%46ge*|VDfSEp2zyyM{7X54QdJ!=3mc$d3iObdeVMFUYBZS{nfoe9 z)~7M8X~JKnUqKs`Xt*=Chef(9DaK}vWse8)MZUas8AlwYKFh@N-0ewf%Q0BUhw!}$ zQH$nWUs3`;N;nWN&!Xm#IefWNSi_C!00sAt8n6P4h6%=YB$8$#>OsYotbkeP05Xhs zx7?k+A*?dXlRPY;v*GXc1QA?JI6>(Mx zlV+8^>23wN{&|Wl>mom9MEyrcHY%T-;u!srHIQ|2AO?Gh(wNPV6Il>;Ba9y@If~Rn zM3F|Og$aZ=n*Z`5>PC`)nUkP>q!SgosHE>Mqv#UnW1qR3nSITurD)F1%nx#R3$VuI zb;{D<7aPvj(rTCn`#E-nP}{3)m3<=++O-(9fV_Ifi*-_o1|fV*$A<=#Hg3_jT5jYFIHfMHGl-U+>EOnx4_xu$AqfA$)X zt18X)8xDoS;Y;0}1ac{C?T9YjMw(5;b;@489`2Xj4jfX_|CWVxUYhx9B=xs~2|&d5 zy!T>vHAndkvh|#nfZK+8lQTgE!TU!Uz(CDxkRTR@;jea%#UY?1CH-wkbKKG0D0rt6$?!9PxW%a-e*IT;uGCp>h%j5@u*rL_1({6-7h&)Si=AbaccInm0Qk zOwO1#pW7$qQJz2alSW)%e12NaNXOMz92U`Z7q*=hSvRQBS)~%*RD~-cLHVfquhs&( z>vef!e|zTLjNa(#WzDdFNV*l7NrlZ^?#6a;Lbl|XTS0!=-!lq@&*JrlN{E?yZDi2O z1$I7a4A21(8_1@6?JuK0s|yIw0VNjpd~pyO1|;H%j`cI#=09fF>8-}ZB*wfSt8WDr zpmml=mPPk1hg$UZkyAi>9ORz?e?xu)RkrF`r18zm@Alo^UMK_$nX5D=0(!gN>+@Gf z+6X>h*m5|TGd|!L7e&(pSfXa5<9w&h*5ywlY;u4)Lktzae$lAeescAUV1Se3(pVhICO;Rkb|%Z2|(10B%O|Kur+;o!B| z@TrjDX^?-k&u&nr3VE?Xk8f+!!kXhw?RVY-CJtTcAj-G<^^|JHtaC>uKM;Y4&Aktm zqq6`@nIhye-009F)Ka@Zaxm3YI8|Rk8oiDtDQ^;Vc=SQ8^+(NUB%BzLA0U9MD4B8k z!|6Fa7e8TSxDeObdGM)TOB(lfqZT^;IzAIU`UIj7>{nW^3B4`F`3WV8oBhc~2#Lse z^ytCQc*=GPBJMcs45fuVwKn0Z+QD_e(%iNX_*j&WO#c-FwA()-S_ul{d{x;d_R86v zn^g@O?55Km6Yl>w2%TR06)0Y#48?rK^M53h)54GZYO!m8iQ`ZwU^Xip~$qN%bEsMqFMk5ydSObe(0|=`@})H zBYVa{ql*p~+HORE=ugo2=h_(xo{t-_2uN{^85}5OW!g0e<=?82q2;bLr}yntSuEiy zxF`;pn_t)G*h97I{8y92d2|dA(#+2hbY07=LY#_IDjdX(-Tn>AKVKgFr(U>S ze}C%-UplMt@t{pF3X~>D9I9-Z(I^b#YVst(ITV%(^$ZlObCrL}lz$s%_}cGo>hWNh#BBptAEmq6RPvH~*rp zWAV1P_mc8Ku_xJ;s>a+U0v7V)VtdJ{nHsz3`eA<^^HYE*RJbGA8R z4y|J%ph;&=7*lE*aRJ*kBG66yq`s~IWjvBmo9*SOb)Awk%_v>}_ocJwuV{uf*V=hk zVL1au5nOX@!2@!rMVkqL#b=q$SLr79O2p4WIkNiQ97e~Z?Aqa^meyoT5c-RV zVe(>L=6q2;toW3G%ND5UmVJDVA8Cwi6>yleXCdbN5hYm_ms7lN*8yKsG9A9j^n@1X z^1f*;s{9L}!J~?~sgN(|w}%+vv^CXHUbh1YPO*n@PX-?AxsJG&>9?F_8%{HxFxrI2 z+$r?c#){Q@7gP%c%`Z9AmV6-H)SxD|xb9>%KC2KA=q~=EhJpngV0U;SKLw^tj=Ldr}+2X8Zi!@v;bDA~Vuq*XZ_lxObyiVhRk!H%AFdPH%+#%>mkgX?|EJY?$Yx zuZmWq0Fd>sp?;@EL9w{Xt!cXdXs=P=faP0!@WiyoC1 zpIT6A(l4@(w}`uz^N#ZA5C6oQE+T;~(@j*qZU;j-#@^D|`OINXwUcta>pHXLqTBeM zZ$r=)^+nB8TR!drHCVf;hL8)>Fj|!wb;>ZAQU+g`<2N0T*ZR4WNWjaQViWk9_*zf4 z!F^}PNi6B!^=isE=<_)q`?xmfyw!2TI?+IAJt`uMXN<~S;*Rm@m#Bw0ezTit6Z3BU zO`>dk=Nk1P!Z9%IWtGN@UdLGT+$dQ=M__Bc__i4k4pu44uta@W{~4a};Rd`A(>H@!%-5I{ zGO(nn2?2Cn*T!BYf^gptBycjHML0t~*Kl6jBtf8K2Q2vCAhd5%0(Vz=yqs1!GA~CB z>OSaQ9coivgp2K6Y2I!$-Eigynf2b+e;RP{v`Ia-?&{z1X+?k!)N8f+sGv=T+beLMZ=tgg zKFQC?aAHmr={0JKzcFpnO1BDbI; z`tPKE10sw74-*Q}#rTux@ThN?N-SyO+W!VGs(|_KoiEYmXMIt*Ad(*y`G4owD(7+N z+4s;YYp5;w9u)bfWh?f|?w46~B77jamXdyV`-i7%l43@0)3yT*`dC5eiQ!`PxdjF= zCW?|t(#Y7Ei~t{+QfIDHpqu$o(U3);M5n?VBULcKv zm+IODKyN#e?@Dp8ewkgqGTbXpqC@A}wVKEn!WxU+d80R5{>~z2#|W$P{Y~ymMkbHf*-_5G`N1i*(Jxmuw8(l*HM%J|x8q3Cz=w%I8cOpKQc5APQIe48 zczh`u)&>x;qTcty2PKj~llSxX%~PqTl4-BcIk(aS16qeE+ufR@1kH`qU;B-@le1tU zK>C`DXau2PTrbsvQas~-oJ&4{xY%pa735zKSF7eDbpM58No8eD@V{mhVf*5v^89mu z%RVFHr+E_%WO_crO31PiB1AEhJNa)M|9$`Xyl9@44tQR1*0eQukFiKrX4jL;Uzy(VB0(g<@d8XnU_v`fR9Y>9hTpjnL0}xfW7QTn zy8d#0Z!67=2C5mkNjHw#Kio{Cs14D<;AatTRKt(a>Y3q2&==%ie59Oauegp=qC!>^ z&S#i~TLPXn$IUlvtJCy9#X&X(!3=Iz1TfV@Vp?TID=vYn3yoqG5zxWp7};nl2X@Xy zxPe)hFzuHR&Crz@*NV~b zgin61xd?_JNOp!uGP5nD=~p~-irT7Oq|l8c*n+pKwZZO4cACju}l* z-a`#HRJL${zY{aZJhP>p&%gnSTSFJlVc$z*`LeFiuOX~xw_vsd35s>c=m1|>Dex;* zOl!;Luc2*fa}+@!!kqjD})t{;5{OVZ4Lll(?qBetmrFx{P}L= zg}p0RKCzX&1Ku;`P}G6VF=Jx1)r|@Qu=55<>53y-3D=8pu>VKNm2vP5FxTey}eb#u?8-w*=Ex^wiCf`#>n{2EU*n|&)`KDcUn ze#2nDfls`P1<57z(Sr(A*z|!o^CFcl0cO?KX+d5Jw(>Z(Dy?0fpd!b&bhzPuXs-** zeZWF&;7Wi)M#*P94Wggs$-k0UFn$H%9{_rFoF9OW(lfN-@wB%$2wCEjfDwSop3aPq z@4PE=0=JPpIe_k)^_$_QY0|)t;w$&mdSTB>YCmW#R;$ZT^~oIPFCo4;zTXJ!3c0x) z*cDdq<};!But7>sb}Ut~wItK4ZJ=(!BOP-C4_>W!9B(Wd1^&M@lIU3Ufo)QqDgg|k zM!dICk_MRsnC5kOv_1UmCk6R$tz~M9P|*%j9Mhl5%VX&I}zb)klMd`L@$_sTK>Jg3bWLPYRf! zzwR|}Q3~T!)Xq<3NR+afqB&>8i_xN?afH&?OgF23eg?{H@X-5MKN_%%NE@ZMO$;k# zafGFeSE`pYp`k@PkF_h~xA||w_iD1_v*pu=%br%QIL&cbh#(5Vt9+VK@@yu zvjn<4R7DzD&a3)*Eig~(VzZlzWqN-qT0mo(4ox(1$zf}fiRTc^_V@-1ZI*F^nd<_k zbPE_T&wo54AzD%)F|7fj83S5e#WWzj~G?_W9-3;8;PeyPN@p8szyK#uCMZ`CkKPkm@I~KsnA>SJr4a~V7?cnR(}w5m*57UaLr+$xQ3Lf? z985FzuLw?KZkC8*Ts(VRi zHhM{gl`h~2Ie*cC*8*-(!$Jdspp>#RpNf&)?4jE(j|bC~+(~Hl!_ZET+<8O>U!`hv z#~~FD8-2fiV^yc!P$rG%ZS!AD+L<~Y=oIS4TdCO4U&4<^pu7neSSMQ|&P9&P84Kel zQ*1w_VeCVei$eg$2CCIg@Pe5Yv?BT(tRX@?Q+_v6G<+GO@q#|ByGZH>dbrNk&aR{` z^i&kbWO9{wBH#@nEg+Bq$ra9TH0D&kYSOFYub5FrmK|JHv|pWX@bj4RGKqJ#`1CV+XxXO$54!0N0L|me1qk}i#^Fl& z$^IPgcd^hmM{$%CmA(%IP~1NUd5}j z*e+v@aq47D5Cd5BIobc2q%?`=OR}sa`T-wZN+Wv%L@?|QsISo@{4-K9!yX}8(}o*G zj<-q*IP>&n!*k5^gJa3Z9@S)jCY>k1L_TPe03{3v@Zb%{@nWE(3iLqBikMgt&|O)m zTH3tJvn_oW8voX6w>3Ry+l9&Xsk{XgMM|Qe_9(}i!rw~QCw>QiGowJDMtR!--C_A_ z(kpGXH+wu6px3pz=q3T>Vn6L9C1GaBLLz9yZOtV9ne9%1Xgg2L$Pl&D&v@g%89nlK zDtU_eRt(}2t0a$5(Fr8HjQh{gN-{sm5Jcl4gk zn(=IEyV4@4W;!vRX_SOwLGe|Tu(VHc+>ww-+0CRN!F&iseDV5F}tZ}Ve-+b&@zTfS5!P=SwDDVr+%;Tcj zqBgd8;DscQxT+Bfw7vBR=Qn>S=9R-zE1k3JQf42Gm`Xb)f$==`G44Dt>bJx@U%_L& zJy(9-y;si5-0VGmPOr8>l12F5(n~xWPU?(MVrO+;1kCI`_PsBbT8G0j2(cQMdwrzR z(FE#z+6o9FgzIOCxan%MCN~TOUcy15wCq>}0nH14=XbnME|`M{MhUMu<^=h9F@_Y|dM)Z(;1?$s20C|H z14-)WYA~Om0Y;AYPL&vqJ~}$;bU_Qr7rhQl0v)hIUjld`PC!!$n7HtXWH5gLbMbRp zj&@2l?6z4xf^=lE5E~T)Y1d4~c%}2L4kBP%5Y{6U95{MoO|y@7UKu3U0g&^1TeWSU zY84rUB6soM0aF1`x1uJvb4u{r1cD%$cv*oY1>R=S9UaHiPk8=;-<9@0pq_Dd-iO8cndeg%&ivw^vb(UooIuPo66~E46_d23t8~lMmEpmZX`W#*+0cl zop9kUf`7ssW{wzHd}v7{_n&>(7(J zVkjBX(}O|J&X5|rb#c-U0X&}w;NB}!BfdH_{_bx-E=x=+T_zK{e>xodd~i>Sa%uy= zToWM>^=t|iRBB8pflW&ZWrtJq5D`2HLMTzR`PfIXV{|BuhEJVtPg}7;E3`tJA^!>I zeLrL=<3X3{v%5EX7LrIFo2W~Y3C zB&_O6oo<;T3tQvdj&|9$1@Hx)Vy&FcWt#R4=y+4Wt+D5cy+>?_imY>^L zUQy(>KUWVweu{Cqv2V( zVu|=|V&?j(Kc(JaSi#NLw`qxZOA_F5YRD||3YH@EL#!L7H(2n$pn=d@k+5pXd&B_` z{JpJ?=(5w(w3)a&Iw&?Mu3=m&_ARyU7yp#n*)`Z;Es=SsnmmYJmDC9|PpWddXTX_b z8>X?>`@?YOo^y0|y!b6F4cnzKndO9eUd6(gCmGFhGtqL*C~i)%J6*SIkWXU0HLycD z8|s|z>6*78h&nK5^sm+A|9bJBxecYBUkx9`LH<4X>A4{Zg>a9AR4iB&ZQJ->H_MqG zt2(%4;!W|>(lljkxtE!Tx2=eqs~9}=3~3oRh@O!~)5?mrd}FBhiqZc#Ne&5jAbtRU z;@M!2a=6TYJ>L8FwPe&ge(S3bI%${r9QD7Z6Z%a0;I`9r5S}LRt>y9?kp7=e4t%IQ ztlAVhUDw7PpD_2Xnd3EW-A_~3wYU(JRdpU8x!%O(NI!IGQ>*0?{QUG4M!bCD!dTst zJYyRhKHlEg$<%hd(F$zLIns#lZfk?QtmSJv_g>;-$E7?g;?mj6D#&x?VQ>AC?c$z( zv?X>gY;;JsysI+)2C^7Pql$^xKGZI@L7s{{fhPa`)9ml3BbN>~wtGX1f85Lnl9Pgw zkk$B_kjDIbv=tbLfR<=`PlO3ar!;@8XkO*kxD!d~?5BM>{rkb$U$SU3%|@kXV@Xj) zU-TvKmh{i$C5Z3Sv*_y4(-)uHv86(pb#UZh=wicd4HY6p|9k}ZwCTWoN}ILzAf|WF|I7;?>NMHn>XjRX=r9NU*>ep-Tu+;beu5$HnUJ( zVy$yid6|DCI5Wz!210TkU$x6@d5&=II&jb#!dVsg$H(XhP^%$&P3j4Jr12k zq;JE6LDm-3GZb6Y`qfI5l?8g=qIT?L(`{Q3Dwp# z*XO6Fom5pzQ1D$RaCSal6hA?=DRbJKPXsD2-dNb#1Cym85Zz!f%~@_2H8*d(ET9HY zryNeEnu58cTDnE|#GB7@YUP|4`rqz#eVn*##m|yWJf45080Dd=2mcxdY7N`VB~EQL zaz3AXSXzmFywhBqswjb;^h3#IY>szAk~08;(p(=sg|ryzZRaWy)*Z7c&-wauBYZi47J{)rhzoEf?g6k3^N2bhGdzT z8R3gGLHBMV>hY88u$f&pjUV}qE1xV0zW^j$#a4Yk<11Gc*R>1^>x+@5rgran_I&D|DBQ zCi{fOmDI&h-4(DK5L_-w{y;hJSnf6OPA8^7t&>()NbSL|$X_Za-Qj^*!sjC2OXa9* zOQAb2MtI6HF$j4RrFWye{7Z^2*idGdmVTj%nS73^v=wLha!F19CyGXUMO{+i5= zlU-7Qt`Jk!j+q@Jftt&CUH($}Os1yFo!2r;V}qO3gA==D@B3y+%to7Bi+>m^lsPYN z?{%drGDMF};{-^4Wy4?P9X&=t7j3Y^-5Kf@SoP}G zX}SVrB6!O%Ca@kSbqV&FF5V;vw>+(N|0 z4a)4OKPoNooFvGKr_6|e|ILb~#KQ8CW?J)hN8)?#AoG38) zrizSnW^ax)YK-kRWv&PoEh5_s)inP!H9G z632g%V|AK7sqYP{Y%}hY#9KS&$gL9ipE?xlSqblK;CN@H!55vfc2Dg4=!J7Vn_v;` zQTrtbz4VRtFR=bzPWa}#TeYNrs$UECW_SZ}!?@x^nScK%zo7QOcBaO?!XQ)TrQ8h7w_9QOn(yYq+yWux@ap{KQjk+Nz}q8~3W(KF2oSyWK`^UK z?%6f6`${qoJ@I}+Ov*b;bclyq8*R$v?6hH3DB4lIM9H`#PdnBxi#>SP@?D0Z4X2!T zVbv{&vns6RSM8tB@$-`bb)&xS1%{fwKK05hYzY+LCH%uSO1ff>shP5;ph&2?VN8m0 z6&X|;wz*h0A7PL^gGJdX*oWlAcM{sV<#A9LB%k~hwR==`FA!iESvFJr<5`yMOApeD zZcdiS{jQ}YhZ?snCx8{^)SF8TrX~*B&qgGz1|ndB#TXgp@a3{I(FYj8ahbo8bv>Q}Uyc`(uFZi|iV(0mVhQEk7|!PNPbR3ZMl zCePC4k>PRC=xTQmK(6;_MU5*3G3%Va?#MVNf3%B!C%Uq6ez{4DnK|cG-e}~UZJwOd zpSOU-cyD?oRR%pNfe-J*Lk3y?Lr0+j{~bH#gp7rg;%)#+Ls-@*Yo5+};KD^e>h!A2 zt%MgVYq#Ru$}5gF>yihfyF5=IQ}Bdk1_SZ>Zq)`@R!QVF z^g8(tCB!OSb^$dunG5@@QW4Y?eO+rTED!BCE8_{(9xrwX_?8kYMYEFwu{mg95fnB-zmbHcv~g->j}RN*W|PMZUSk`GhWo)4GUb zjIr$x^o2yyc}3#Ad9YagwIBFUT0 zlBDXx{>K8=^-p}~6f$&wV9tHo=cjh$U@?WfPTP4Epq%NcOQu#V?X2_w+YfySf@@zj z6PiIaL9AO1GwW^CDSvgBOYCJm_>w!6p7EM&@&?b_(k?`qY@)u`UO3!R(vDTow$Z43 zPHB!Vb9e3kUD-E->FAf}|NAhzqJqH*uJ2tdY$Ajus1H2sIJ8G{|hROUaW=QZUafj6=*UP<`{tddQ7O#M0~y%Qfbqhg)PzJh-MkLQKEY<+sc5pz(W z)W1m(?ri&E4UrP`1^OC>Aaa6`_L?FM+a%cd%0rjy&Umi-1FiL5oZgQUG&E>%2HPdU zC&Fp@gb;comoah6ClL(H!jr$|c3gRsbdo;258!w9puCNG-`V*KQztb=$pAa&D%N9* zfQtClkwv8`sy3ZNMQMxkIYEj7JhonGY4(e4cQV-sP{h}kY9Re1f!&KqHJAN$O@7QMAn*-{}~?Z%@IF-d_uAY6dBTDWgzX~DlzZ?nRzn6(g1=UWjv6p5}+<)Ux6vWh*wJV}}S zs&?fwzo*EQzIzVlgSPJB4nw7Qyq)#_MsrmYV*UK%1p#pD`HvO7hZz)z(UkULBK#!XMJ&U1t{Jbo;+6@q6BqRh_Q8Uk2U1zw`} zNVrn@dUJ^)E_33(+iKCSm1*o%|JlR%_2Y$8pJW{F-z45|_iu=+lv-pZa882wu0aJL zQ+dyFA3S&v02tZ2M@0}8B@q-91aP8*M;C@5vHRzmO7oosVQ(>KJ=jw3ZL^dE zyh#~&oQl>v{M6Un7!Wn&swGeKAkmwnSt$p2a`K%jd^aFCsPoO0Yh+{ui5)|#r@_I< z!r}%(1BTxl2Ll_guHxBzp=rzIj*LRk#Bd zm$gq?&!1Yf+zAx&t|=;^w0Zu3!6(CEILqCK*|_%NRU!(Ar;ND0B*i)KYFWT_rpU_u zlF`&6U`~-9ip^iM7IR5@hHPz`A=SP&9UaM<9v^!~MMqD6d`;uncHjjl-k-;AfK@!` za;ZU>gKRp5C-6bYS5kB;A){0=9c7Txe>>}A8BzC`_ z=xix_v}5?q4$~r3nU~}pk~y#lTBiF3Q(V8Jz3(t53Jpp1zFN)N26w|^%|EuxxW13K zaT330{Ux42be%hQL@E#Ezv~HRCqS-;&7hJvp5LzdWPdX3l1r$-bIs5kg}4@4vzYdS_p;D_cBlm%9Gz8wUC%Tv&fJ+obvJCPFB9ET#ZD z`Nf3Ob@3OIrnYcQgMN)C1z>{dA3l7@Y1)i8{Q(BfTO2M%c@QZHTy(&oiRUhj)E>A4 ze*c%dIWyh)FBxP&7)0bF^mM2+C$c01jEI4CMoTTSy8SS^gW8z7wCkUb`9CM1t#v_i z6ucl-x4s$PC<0OwY~lBg9oI) zdV2|IX~Pf-A<$<9ybgIGY#!PaOm<;f3)&ZswKz8zoAf(XGOokg9i%b;`CxWMEkltJ zsZiYH_LR{JU1hP8DnzeAp^x}aWR}~$T)T^QF1$lSb});7i=8lT#qmh_f~^}gF6E-rzaU|SR&flpo#0`g%%~(M)>XV`b=^GG)5n%eo#SNv zO49@}<#5CfEGq{d2AeqLA^>SLQ3)rq+C|Zc1MAKEbYh-;pFD@>S^gZpJCRfDqOA>I z>z|~%P~O2$%Lc4#Ny!)4rXIUX{>djRmS~26X4;?m!N#A)F#xy@PB9WBq7xPu_0B_& zMR_K6%!J*Kfd?&2EDalFb1&yk*m*bWb3XtTdNI}qdw&?FW<)x>q^gG!;naNX!a z<&n)X#_LWZHEq%XM6t$-$t)R@Hp)YT=*ym9K?oLxDQKlh&;w!9L;oIZiu6do1{5BJvV53=UtMC##y`y|miMmeZ+N zjWx!*BsdFMmN-&A4ucDVxA6}Xoj8XE(S{D{IC=E-$I2os#0UXqElyvqwz@?>8kN2I zTQx2%oYPJIUAS30-7{fN(lW_Z|F`4!P1#WnGLE_*Mg`FsH(zb}H=RdR8xt?EiA6s6 zLz*w#NCz$bjmG;`{Kqx%JjB~Km`qRd9}c1NM%4VZz?Cx3iEF%rmMpfQ%gsQfd-oAO zhCtfi*SRj5(^O@6eVA#9B&rmmVI0GPkMRnLuW-+s5($fa*4GXr1VVTmgbvY$5=!E4( zT=)e3EJy|U=Z?{y)*@|Hnd!hafA(NZX}J-({$Oq^8!S`iK6r;g@&-+`D^|eeiEpnz z#;&^v)59}$KfD~7mnKsd&sEaIsd}#x{5{9eZ3S^0<@AMJ6DMY4z;`%r@Q6W%kb=BY zW-Tj^k28$WXW)T`WYEUK`a=rsqHpqgd^ve7z16Q$36;ID)i?i?nlwy0sO<9|+TdXW zch1d4_bsH&?!wC&_23SGF|1uXhElwn*up$q zTBF7(ZSJFBdQn0X4~Nc5c>3n`e(q ztw}~VZO(cjud?9ZKbm`798>tEGeFQZve3b(x+N^;+SzQJ47&H(hE9memu|j<;wSOb z?tS==JIwIjDhi-|U|HUAi6rm3$(U+|EZr@@;zLo6$q(E6B8CU%p zi^i{zZKP#IQ@%Ts#&CN`bIpx&A?Ri%e&flo9~$axyWS**>r-BPU+f~TwPu4=MqY2S z(j$T7cY!a15a1%Qs;tKsaO1y;5fcajX`LMJdFt)g$_(krfAON2$vpwH32|_jzxy{7 z2E&qt*>MOW9K5o#b~GDy)jOdK8swCCu&MoR3SgTOpaer>$5{A;ylU;>7|?sBXsI+( z#u+X%Q{?ZQvp_tD_krk*qf?{UDPLCIIl69UrdzGWpxBbnHB*>lT)!hm3C0FQor0;t ziMtFgMpYSBeF`4Jenj9|f8XB*AV zNkGIx>vebA<4fk;x8*rL6wUf$Wz$kJwU?re2V;jP4J(rqL`q#upScUc*Stoxnml!z zi|@?~Isz;#gsBitbYggm=k6?;hweDEC?9Gq$dDoi=Eznwh+kAOW+Eulj%sdbnF;N{ zwoA4Av6O;jR3dfmFvGlccRaJbdL;fD7=HfDn^%rm=6KUI1r$F#&WuOf=k`Trh2R@z zQRbss)6%j$+d0B9_w%Q!rhx%$1B_JE_%pi~7WWl9DdJx#&F+SZbNpzRhM1%VwrZc4 z4Ib6jZPuI#N+V(C-t>&h=f=eqkTI*o}`aZCGFP}dU_S)fmq6rrl^KZ?7p}m z?VpM`{)>-G*e5(=GpBma3}|5l32>@AEnw0Mi`DhxeG!>ErHYO4Ul*UB7z(9TJFj_9 zO4BpqaJq&#vZt{pf9yM8QUxAfmd9_1yQSK;(MrZv#s;b@lA9D#sE#*r!9rbjGedch zz5QUJl>(Wd!SLf%i^yhXHOg1z{X~#9Ek&@0EycoCLfd*Me~9-a{Pla57LQIe${sCt z+;2HiOyP$aj{TKCFtaQKJ|;x%$2rS?bw9wv?(wJQ;UNwR3_(_`KBd?ng$w%*i;MS` z`*fp_bWZ9*mT7YAuO>BgFipms8C}I1Q{kuT4%cL!VcI#`*;E&R!zZz*=$al%yFz!m66^Nkv7%%)9o&&TA~#~CJouv28h>})Da zAqwbb<*zPknit$knguNNiI?))hJ$0&e)gD0Rc2K25N)itJyR~LvL13gQrbKi_+%DB zyHt61KJ2vEsQ0J*bp;7;!y6XnSN5{A-)srrW~uMvS9b@7jQ76%b9uA59Wuud_KvFr zu}I;P72k{L@p4PZUuX!v)VdRV!Ng*jU@z0kuVI+=DZ;e0cHdiCs0`lgBUA}&KVQ)y zup<0Yi&(N*%!sWnT?J-6qyK#i_9)7+t7->`a&8bnSO|X4l=RPut3%Z(>;;Hp6M%(4 z;5ods$3-CPktrtRNC_EPfzu9&LJ!VE4?Z4uslE!$TUW*nX1tR=y1(;0ZN~k+Q;r5? z5w~Nzi4MaN(0U=2c|AJznKsKkX)}Zhw?x=Ce9K=vPRwag*XUnfRO%qz@JwbRt2C^V zql63-Djlec!R({fx&CtpZ{C4;Ey)f7vIVD|!HS%gUC@%o53vlX`GN4W`-`5? z(D@fA(Mo+xGvG3L7FBb-osVT?#~=9hX$kGJJcDL zjK)W5-HPhfC;Z6(dMyy)#(wu=GkcFM?U%d)?Ex2$oU{QFNXPZa-$S{L?$kdXh$*;+ zWnfN?k@%KZPhD?(=r>;@gTh`2-o3k3$%!pgO3|<4%$<^~_?u=fxJ-tK-ckDSj`B5P z(g6HZg=n&4(eIj`xl{aVLw)o0HzN+ymLRE{;RoFrW4$Nc*AFA~)WUh|EAPsbXwkWr z+qIfEA!kYb`4A)gt)|bS7P+VjxKY|Uj!Az^4Efa?@Bhj1%Mw?TKexN4^*#lI+Y(3V zqwQ1dvM__veCn8d{bxsZ3-C7z@Au;j4shMT;@n>^ta=|sq&E2I{HQ$7^c6I4PIa!< z@Or7fynpid+bZ+pCuzh51yOe#%beog^ zQf17Qy3>zbtis{-bXa}Bw+NL`eX1~Vae6&H32$@#>qGdTXLX3vd}#k)l$y;W^O5=e zxk-K~aS*4Q)b#UNz44XnVBrKSu!<7xvFLI;^Gx}=bmYc8EBIBxX5U)q^28H(WkAcy zSVXZL9`#sWkNIO>dHjpD&HX=?YCL#}@y%}*dAr;;8^ZVvRty2XclRSvNFFGDufGxd z2+Ln^CPKBmV8TI7GQ#)eg%Vhf%F;wMiSf_}IUYdH9!;<1Z*rSbg#FWZU==hd6<%d%CNln(s%dlkThO`!1zG9n9Jx$69e=d8)-XL5my&baO;A?BwpuN%>Q0*M08#KCx z^_Dx7Nc|}G^7|+^o8mRT*>y{J^-VIhTo5G!G+xiWS+~p+&A(Kvbk2F*_p_72tK{(N z#IGdpPU8{V@TbX=aP?pE4*lxT7| z6xQh`t6kPZc!rIl3>R?EPP73zSot4t-Th3zvIt%Ego^AWUh|~_o#&)!5VI#2-HKGh z=kH-skv-At|ABXEE%1exT?S%8Kc4ER)#QCi|9lOcR*I3=qfjEkz^!!A#Hkf{^ILd# zGAxj=wc-uF4|rQVH5aK1f0R#1e~-bW^{dZU=?iRq96GC)tT_XdDS`2uhh>$eg$=W{ zTC-eB^AU^!?2jlCwZ}!~PSt{3Ya1$bI|uG&B2W$RGpcADR(R$<8{RpqFeQH;%-%+R zLZ=DaBzQg$vrcc6hb2?f7EfXzdMKI+89_diH?h04xh82H5D(TcSa>8gEl<1R7Rgy2 zK1&%W|Gb3T3#PVUKnmCQej;9 zwVd)&Muy;O8PSOz5PSP+$DDYNll5wi zw$~>gcXTdY(`wkVyOi?dD*B$UR>W$3YB9fyn_4=b@%W>fQRp-{$ge&}dl45SJ06); zx*24Z?P_ZIWlkW?;*!NnW)*MClkkr`BdkskDTIOR3_tCIM^FlNw!Q|b*!#@o3j%Gf zbD>%>GK+qaD#XJ|kM<$<&c$`@gy(<9_$Uqzx9&6^RaA!wMdH_iPy|rk1PzMJg~=r_ zFczi%=Ea?R)AA{BZyxM@ms&oPf1V$W)Yv$C9wh9ab9O>iogA2S_ZI$zDNXkLi3^L? z?^(oqgP4DwU-1XH;`kaX3{+mfd1(kG-v^x35O2#fuLHba7j_&meSTx#oG@VWaeahP z4SL7Ef{E&@c2bk2QIgA;MdXX)2HfM*X|8~?{HVc{yx#jiSy*g{)XwxlpxS8gVkk6z z$bx`-!J}qVf(QL4JGtgJt%s&d0;ydakd;y+CrAebU@2IpnzDo-(tl<>=h3USRP4 zPJN2h`xmesB@Qqv*pJNfAo5!D;3b~aHO1+j5bu1LXqJl$s^M&FQGpjIafkV*Zn5=4jVwZ3^2I2d-NijfXiC%@|~%h`(gISx@So_1sNZB_;BLe zRX!SQgvBK&zwVR9L`!&qfZl zdWENiP|YdpMcVaNjwi({{aN9Gp}zUXw(qBF4Rl=`ixmJ@!R5QiUsjh7lfdo< zufSu+1+tiT29a8(vBZ%7fsG-he*v`6zzw+qD`=;dJ4$6fL$LDVQY^*A+w_fw1Ll39 z28n7IzS^f=_g#}zZ-r5lPTt#||F38U>bic{OWqQ)aONSvk~D{{Q-rb(J_#6qYL2>O zrvd;#q6GA0Xz@PX+#wX}qDM1Is18)AeL`Fl_U&sL?mY{OM}J8-y(Jiy-e9Y+=Pj~2 ze+r%6KD?Zc%hOMMeE()@7yXao+UF@w;uRGY0?+2~urE^w!r6jwx=p2^w#O{W82S?W zo7FxNNmZb00-7a3R?D+^M>)pyW)z3Ygt|`;_oxzQpL}6VeE%I?HO5x@oX>IMqz+u+ z&FB7}2mcQw!fkA!^rdg{^YV2^@DLE`*ZJGykT-gJjV32g1t@j1V4!W- zFa77^h>=998~d}5r$tNq63+8I_Hj2m{VJlCUfPp;)p)#b) zoi^Q3q5vnTz;NG7+Oy9MJKG~>9)tBG1rLj?<)W_?)UlJt-leb~@h~%kvUf}<&&Zfe z`i~`d{sn(o@H{<&$hwm1WnLeR)Kqvh|lIm_Nf zPs{&^aAzP_8vqq^5XX{FEBe1s+(?I}I$pOV6edPLWfk zO%mmWUi|D&@1H|KLzvL4I< zAd3V?grv78>B3rRSiq$@&Yk5_7$ZSUiU1b>JDLO;Nquy=(i`?gzHZJk6M0N1YvzFl zXkulUv9Y<-RnI|8gKm6fgr4z;$_5BMdqef$ghALRj(Hl=!zx)K5B{d6UrFj)&&=nJ zNLtA27V!BT1E6)DSHxdMZfh^*%-(LJ31#BpP8^Av`qiuP)DM!jHVU$R3YLO_;)cPs-?BuRCsWo z?3k}Udk_=X6?iLbT(9?)sby{Ry0{R#=jGX=Q}W^7*kp$UpZmy(6`uacb+e@_JX^oBf>R{~(-$ zRa=TE93I6+ z`*?o`%UGsIt;}FUWO}h%$w#I-{j-69-@Ow`$b%p=-AMnqoW0G|=Pk^;vck{1{P$hdV1{G|QVz)_r#O)O$W%MIr7S&`s zw9+`zrhde@HPj!3%p9Ah=KG;t_h(XR*Q$KvcF)oiZDVde15epSyONPI@*}nI4MEbQ z<+zhA%7!0@<6n@3H{xrME9nhvh!z(*qBL*Jp-QasVrgMrkAy<$KZBX4YLD-orhc8Y z<-=V4Cq&V+RMmr&cMjb*YY0AMTPLK=uddV^do?>epg+$jH$|A45P?Ule&Cum|NbLBxjDs< zM!nsfHp4ql==E1U|2-VW^K;}miOR86f%Y;0b(q9Ch)SCAnxVfied_SV#E(hsN48iw zxAhu5y+YlbzlN&I#2a8ptzG0bm(V!O9{cKK>OZY>A+0+rDBB@JysC1koKaX9O79XYZ&}^I({Q)FSDMf3{_rQc3gMSrjGf8kNlnh)b+n} z(jn}Ola@=@Hcryg#jHZ`MOs_z&$rv*Tn}!!P8;nOpm0QFtLJ$r3PIYuz;yJ0IcK z;*rBg=F4wsv+@kE{UlRu7y4JVTB+__q@@wUr~1Bb`M+~Ki`D7@AuxcAbEhSHYwvnG zfskx5b+G}{kJG(<*n${qo%Exk%xCuXc#?0OQZf;&Dd`HR`!N?Hd&jduPKmRRxiwNb zHNPLDf%G3RQ!Wvc2^L!^?~i*qMU3^~AGg0s%la_&qaVcp<0S7UnrmA5$fhMziXr4t z9@Co=GqNNqgZ07H@nM{3meZy_h+EXq$e<*)nP!I<7Z=E`1&OKg8*et_w&s)GmmXK{ z`PlnTNRgEh=L47Z)vq){pJVMRfy{VgLG8lb2s68f+xKlN+vnB9SRc_dAOwZF(^L1! z$1@UtVE)CX;mqs2JN)N|<(q=UPgRNd! z^eK0tyBrDd7o-7AckU_J+r*of>RPm zx_B73qh!|Sf!p8WK}cMwc>H-%s|8}bo;NUDH>&{+6XK7@l%neC2>$xz9U0;Kz3r8K zc8LVhGCJfnCrk~@Nidwld*Xxr633&M^jq|=I?F|{m4qdi{X3?U0*_kYYEx5Fz2W6p z@a{TSO0iVlCSU$JDGphRQFiA;!3T$Qjz93`BUI9!eKXXbeN2~jne?q#Uw?rKjQ)_Y z_2}Sg4!$r!IK}D6!*8$=;Pbe^j_zq+hz62a;Pf_>Pe6ouwLaK}I?Vf|Q;RJ#%_&7s zJs?lKB*fDNA)!i=9+F?irNz(p6V{roP`|?|51R$yu`zhQsM&=!6xQ!TRQ=PvKRZ5a z>tnt*J`5mnx(jF?(!$Y{o)1|DR`N(`Kr;xyd%Slyxcn03xcS-&!wtgCU+)=|*PG%3 z9#XL)JTql2QkA)kk3RRWWQL2@{O^m9e)xNQK$=*yO^j4~$LR5^x6giVHvQ-n3>k?a z%i6~(+BZe z!<(lj;l3ck>5Dx;-vFvcObc@~0Yvf$dNyycxQ7*^eW@K_Rg`NkEb+#8=vHhjZ zMy55$HpdPf^F|FW=wc^zDK*B)wWKZlw2Fzni-L*X9Yp^P;GVDUhT7qO9l8d%1E5l2 zAeSCbs!UL;@*L9xMZNBvge|i)&-;+f_*jfqk%6(nzt^1UjIho;xhY%!A&wCZ&fkF*trT<6DexSdMb!qc@8a0JPwOU>oXjPBg1o~Az1_o54a#z&y}&=lb3`Wt)I-MpOt;B zpnPtU>4`(=g;Rpk5%gh0uGUkR=!*}3aC)lrr(wH`;D5OcN1g-${w~4Jim0Ym9tC3U z+h9q0>b@pQ|sd#XbzzE`w_J26t z9JI1bYRfMDv2CS5VW`+W@;7=wdg{jUm0D=^U>k%x*S{aRTutU~>u}ytB1(bbIz)&e z&dC5iN78xoq1sn}1#gu8s8a^m(s*0`(st-s0j9q@>5uYXj|M)}kL(*txH>3*UzyLy za)@c@z|yr{r=#Z~zZxO;ZTNVi|8LbRKFCYuF{+{T# ztv>}@P+y$L-!Z2$?XiWD7o);~twd<}7e_}%u2N7?v}UHzO?iG?9_!58(nS0x!3pss zY)RqMyWPW)1Cz4aX}5h%3+>mF_(xvD47~=m^8V^wF^I5Cdq2{y*H;vu34X5F@~20^OUcKUWj5)* z>@y&la{d}q#bYwfdZ1rn~bykazLGNvfz5U|5 zne60AE&wqz88%1ogL`D_R4-!Fh(r%N`eHoTf3$xGcPxUb%>RMgDsh5!ge9$}z+C2X zHT)(zfem2VB>5Iq`LfH6?uffP!*>mw=g_e^%!G>ti#z@YIDr~v}QX8vp#Ga56m)?c@IXj^;oPW0ayFGk6~ z4SOyq=L}Od2$MV+dUucbl^Z4An>JBxIHdrnLveotmfqlb{m&O!gEN4lqoaqu*pNM6 z9r3UB*#F(DBHoml?2W4sag~I`9}c`1M*pssCMy{s?N!q{SzcSmFB|(Udb`ECnaLG7 z*=$x1Yc|!bc{cUM#ijluogg6jJLrR4XNyq2bc`a+exU5e1Q! z>Fm*88?r5jGA*1sjJPVJEZvXB^NGqmzDoe~@d66*-LOZXaeA(6qG!M{KcV|5ioJ}7 zsi9qOp6fP4HxU@j#c%AriRYk@$tpXWw4{jJYLy;=0>}M%lCh)&ZQP=iVOQ+&9E>8)z$u1ns*SXT(4fv9>%uBRj8j;+d zpldum-2*BjUb04nFSIN8^QauZLhw1^-4j9+csrmrardp_{TYhrS}=HU0Gm7$_Eo|wL;6y{F=*(wN!d=@$Ny_JZXajl$Z zc&CIR-RUUZJ*^PH?c(}UMOSJzIR4b~HtrrVABE0jk&1jGeiVu=HZ}+(agt%980CqC(UaeYPTW9)EQUKSx4hf!15dZ&|nNRJ1z85!D#U~VP%{L)l*D-q z)SRDqzswi2+)mkBHhEijw0lur0o_@;p{If(ovM}bnX{o|4oyBVOM&9ae#NQ-?qu=p zuJo_&guZ7-o{P@UHw>9C1e~nidrOawbS##Pp;Va1APaox<*mpQ&~7YlyF@e6O`L1vl(QE zQ}!g^o9`_3Uz%wNYdQYA&1LnAF@##Mxa57`Dk7eJpy4+L#ieugiPF=g+I9yK9PX3w zbYkaXA_M;iS;=Wozo+4)$9lb5L+7N}3;ndzjG$c_)Xm4)X>2gSxItp`=1Y1ZAidpN z1<4`N3pMx55AjuVRe9n$1QR|XYS$MPCbUOD`aqw9Dth(kVoAg!rNqGn`h*^=D&Tyi z80R`@o9}vLoo+MP1a8OuV|IBP5{0Y4(q%hbjD;*+`36<08X6e7?|U*;XhUelX~IOd zF5Xa12!tmJi!|6ljsrIjZ0$pFLf>5p%_=X^8LX}onID9_tT*bU3EFuz5jSri{gGI- zAj@wtB=qCvlBkHqODWwia|n-;(WlasI3O!gM5rtG3N}gV;FHJ~z;}f$-{3op;{Y0J za{P07xD@pMIDTq#S`&z8PkV&-ZPHTd$5`P~bvQ+NRZ{vbENu@OXa$N3D-)^h6aMtw zcrAW>osIO8ZPhBD$W|-E2VN^eZf@=&1>RSMcbpG+aOuY3BBOb4y(RDCmy;)igY@tlCTsr|=Y7F;286}8xmOtcS!81qMBHUfFQ)vkvyihy~Ge=J#lD5J8@3R^$qq*4qV+q1apTF8x{~{quKP z~Z({X$QgV2T)WkqcXUZwg{hykxcG$+}w+0a(d^ z?&sMW3W@y%bmxW)sFu08$i4JR4$0+EPo@@sZCCKw(UZd6UO&RrxLO_8!{(v*H`a^9 zZ@D9&XN5x>y9^^(J_ssEPb-|%FpkMxJQ8Vu6A=q#2cPPq+m}z%8;+{Y@*NOX`&3oc zne}Nsyngs?j{Fw=mR8;T)%TDagZHoz_OVSk_LIif%h>Drb3WuTfI}}CgoWeL9=$7q ztKOW2tG@gRt{M*Pb%-*GtB^=J9d{@z_!-~K&Fw3P1S#0(jg=AcF(bt3e^l;&8sTNo zqO57`UWhJKaj+7=KL~x!g>DZ>0srj>12p9u~Sdu z#H|ULsO?{`aJMM4Sr9M47fbhBF|yU34~<^JTuU0vDhkQ<@*~Az z_mjMo(486Oi5Nu@fL-s!*#sM!YhhWfREQPcM6P~Tj};kK5d&Lz<)Xaw^t}k*1$mD% z^fb3uwH^YaeYGB58?#F%dOVqMtWa-1dHzA}3@?GRQKHaudUp29NbGJ64tzw_L8|Cl z{WKi+`Vw-rB)JbhH%vFa7JjBHeZ6InwI*o=f0s!(k0Z!&|J&hF^!WGum-RP=+P;Q( z+PPPzdEWczNddTDo1qDVMVcIu*GXVlwmp*4u~3wrh9+@1S8=oNsTFzRnD&9UO*mr# zc0;WeoVa$P_g4kl{IDFZkU}yP!C#ig&n^}iR0Y5}o-IC*2D~(^wR}63ZfRxhDQKY$ zqtUD*7MSjKS!xPVRsSDZUmaCd_eFbYq>*j}rMp8wln^AP8zdzK=@z6*x*O?EX^=)b zrMtTu-oAdnH^v*|{p(QAKKJas*IaYWHP@EP;SwkzLW>Nif2NKEH!Yg!uYG2I5B#U0lJ~HebXv3PH*Op0p zU0)R^W+ctlPzPpMpxW42ai&$9a_zpr(nFh%t!{8z1PS%|-iE7)!S|Q^{>-dyY^Xp% z!#7BzTsklfw4eJgw86|%wxWC%bfv#Wl#B(Kp!3MwnimI6nCrzeuNftq)%R2=IR+=A z*Oe8MYd!R9)-jeD!oB0IdUS(z5|}%Cxb8s>ajYN`0#fMfVSKoomqatt9JrAh_I;`-O z>hsQ5iV~rSyb*GCExV@%qosUrh%uE(Utr zmRp1lzM`Y2z2j<(1nFtxgLmta zFmKj&ucYo1IIo1<=D1AwXLsp=Z$;S}>+0ulvRWF72x8*abhVfI{wE>&(BnyV5uXdv z^_6%U5B|a;nQYyUJ!|9y@ZX<%BPc=H}gp|nK&8y>Pk9FlPdXV@1<0gLdZ z(C=n0y2l}n%ks9uEx8Eh=o^~mq@KI`4Tr(`1|86cb<9obRi96INrLvfiPXAPFsEuZ zO7$5b??lT{kIoxLCcM4trG2BdAzvOys{z26R+Y$gXzAhNKj{X(hYPfE zD5ic++Y<$xMqq+`#`o16_lK-Z7>?)XkB{4h1Jc!p@~20*o}wJLH!y8?NC!uT-l3(ad)#rd0Z;h92X&>LSfoi9qSM0&x5LUK;^8*4FR%W zz|ZQ*`mq_QzHmZ;?nnbX@_4&~vO72qax4V|(*t>;As zz02g}4UK%Nsv1A*LYo z*rD%BFV#pF_%i);51?2Fm|(=Ewr(0B)w%hA?qAlS0;XMhQCO2rVR~d+cLHiHWs~l? z;+MZh8D3@Na-3R|M_Upel`&V8Rp=!XDj20hwB{MF8os>h*9D%W|2)$tJs*EDsGuvy zD>|~hLJ>*TUGw@X#|C&{c-usiN0ub zu|9ULFeUt=2IiY#?J}r+Dp^vzd@_-$$vvkR7+ala6F+Y<5!fU`IFvZ+hUf!ve1u>C z(0(ku2a?#OmOL{P8gQnd6%8a)>Z~_Epc7VBw@uI>U>MH}ueFOSnC!#$ezzaA=q1_< zd%Mlb_A9_U!(3e|^XZ7mrQ3FTLXR&V+Y)Ru(Mikgw<=|JuMRBt%xXRG9p=rbblu=kwt9xlK35o-g+~GNs`dgJ#eEB zProCE(&^5+sNS-udCrpq;-8VTS;g@@9toQR5DWj%2_`)EOZP_l9%X(!?F|D5fdC*5 zKzP7-g=!I=qN008#_=eg$aM@WCMeb)KREsI6a8qaC*`O{%!twkajP#H)up&N<1_KJ zvS%R)`|(n8EeN1eFf;T!=*Zw(8uJGp_FTrs2w%&bI3`UIbHX#n08eP!?urLIaOL0* zgXp-(Uf(>`IUU(5PToAV>6t1-iHa*Li(%zJSk3Y?=rm@)ErzcN-$&QHvGHkN$4 zvua&hu!5Vjs^eg0HMS}#wfN*XI;A5UNk`ePwfMZg!1)C>p27fst4KHJ&_+rk=M~ZB zh5PH4rK$Rqn}Ni{4wv++tus$veRYb9y`Mh~RV~$+J+Jz%@O$vky;JD>#GmQq_Y(Z;aDs;-AB| zeU}vFwfWr&QH%GszF8L=GZrLCqtwM@;prA)?sW?D3w4bbwo8OsR_{3RISF5$GTK-Q zB3cTXIIWa}2N{{t?65*ay)w-%$voINsi$6fF{V7+tqsLVw@j4=1;*5KQ|`|w>A~um zvyRqUX#t0o)yAWiDrDp`?Rp>Jbu#a=m3m0}JW`AAE?`*gjytg|;^x!R=VAuFaJ)u_ z@?8lSLQ}@V2C57mqwCYlWOz+}r6^|UB9YWgcMg0ad>=I$%+4x9YtE*v?zp{tE3?|| zJ>wKvTu3$g7~!R#<(k`eRV5G@AN|(48MOJ3rZV0!ZG(Kh)><_#gAi|57^*4DZ zN@5yugVq$-t6`0fTxYXXdRqaa$nSwfPGimhv695HD~l*O9&?hUio)ezS`38^tKUt` z%|ksIHa9!`g$)UkN)1lp17y4Jtwj+`W_!O#`1{daZbucpXL!4mW~lrY9!gb>nmG}nkv#>L~2G#0FVZ;c- zKcoq7GU~XWPliN^trL+mGZ@OI3wyA6J-XXq`u1iwE!6%dZ_!npWWzh_Zgt3N$q#io z5-C7Z+q&$h6`2x_Ur@QIBoZd`o#_md!f@w&@i z38(y{bJwPXr$UBqa+Pjb{)_oNRyif-=m?Gs+(Xchl4y$hVR1Npm3G^r@qvM(@u0RN z9*+o6fh(`r&*?JFst&i+)I^K36zQ(<7ZcXElg9NF%uJtj=<3D|(SFwUd*J2600O3- zx)RFA_(Qt7gvjL&oFb5?B&m1nWn72z*FFfSY_8{K1IfIYdL9>e_5x>pS`(V|WNqM# zX-!%Pd_bx6v930?<>|G%5>7}W_Vw8xRTp&QL#dQ(eEnBf?PFME{T#c8F}B2}bx%W- zxyo>KZb*_A8w>VVi7t}v`^|IQnMdzf2U(iBL@yR%$oN>6v3!0m#(}YeCDl36GdE$J zoeP96Nvz1cfyX=Rbqb+?-LtTSrs9#!6RE@Nlkm}X5sHaQ46DwW0q|cr%)9b0Vnk)CXa}*O3(+9xcc{?)zi;V2xFrJ3>wA+wetpA9X}d_NdgbYl@>VT9Uczh^e1G>Olh-ZwEp zn38YvJL+J=(I!3c+$21(YxlQwUTr4MH$Rd~t$CA!Yomi-)_Vy@;q*@*??OluQB6N) zmw`S-$Ra@`BC(TT zBm7}iUXRp%1}%c$soQY$`eler=EU>05=o_bjz4-6OL44T-$%9j4ItoSc_Vm;tXlmG%ak9+FyUIGEs3 zIir~hx0-J^uw|N>^W=|EO{bI?JT4(jt{w%0z5NLJRNk+~KaTu-V5S*P<>2ejQRrGu zkOQq``s#HFwpwbqq(#1R%1#K2*9>(xwUdPwO(s`g1K$gwpA*b^*6wOWU$l4OZ83)< zxtX*4)t+YN{qSj{6s34p<=Z@csRpXBsq*VA0YCl6B#!7g2P)`u9G}9Dl_lh4Rb%(i zf=IVU8L}4|oqC#F&Y%Dlnx;X4$H~&uBLUQ)?C~VRE5qyQ(HTTBc86VMd5nH)3h_F7oLe89Zb>K-^HwT@7uAtn|9U4vf%^*!dnWY!LC5N{_=z zy;?k7>8#)7F3BmnV?bO*DbU)zs2x4T2cP-K^ zs)A`g(G+zn#s5G{p4l#HW?65|2U9`&h77j^6aMGH!__iTF`K#K3s`j}WnXS_?%+G+ z&+{%{$Bm2dpGRKhT^2^F}A(aRx)pJqKq*E*H~W*Mhwl(~7$GqzfaP z+pB}BPo4!f!xYY64(y2OD=vD5cocFS;#>@ZyC|%t>oVQ_dE_2*zl;wLUvK6X;xpLl zc4GJ1tC#SiZ9f)Q{MU5lR4e;V)TkiA;>x7_x`J*evX0WtqphhojVrxwt5MigTh2n1 zTs-=15Hv!zwz&?F z#(2DX?ddUtpG5Ah$3_1T#AR+e>&%UWf{=(Mj{VM1ki^<) zb2YifGIxw`!tUG#D?Sv9f2ah;z}%d{^`deyJ0x(vV^rkw@%2Twb5bOP(C6*XqOK*C zG&Qv9b-6c|CF6>ka5+XQo(Lx4p`84poGtw&*ym~su{;IX-m&s%-*|qN^gSC{Omdac z)XZmKdqrhDR-pi=Kb6mC|E#&oXd#2RHFX5DLZ`;R`?9;8GULgEwSO)Gb#R&~X^MoL z`t1dm61ues&Y&q1AyWE~!q;NE^CSN%gl@mKYO= z1LvLzrTzW41wWb%>6A@cU}RcNr^8JEk!ccoo_slxG+*kwA(eKba@g=k?RbAyD0t27 zl?CMRaIRyu1z@N`A5oY#kB5e}C8XheXD&tkQOI9DC-@{ydw;`k%K6gFJA70K4Cx24 zWrW2z-?X!Nc%|pqY01jMd;!Lgze@StIp?N1ppFH@G^@|Avw&^q*Q9;o)S>r;h<(GE zo&*M$wX{>@E%q93txFdqn__R6L85W6YAiI-XiZ)2WaaiNIiuN5F4L~<loi4G{st8Yw@EPAPcl8($FgAfhHd(ztsYzO%E^BaCGjO<lIb1?eGmq!M{QYW-*6M^`Q>1QA3j&gm7C3Ll48 z&1X>Gbt_5h48|()@IOTNer+Ph@;q)wGBY;^-pcD8O_Tn=$<1?#X2vZS6R0gTr|{L5 zQhqy7XRH4ZB1V|WK4{owMo4I6+=GEpbt5EBPQ(sSLBPvJFt@&sw?GZDOtv>HNl#k( zLu;IOEaqx6F~Pf+=ehVxhc-!W)DqlVSA6y;dq}UOIbrRojsb8eo>wvGB}akS<-X(` zp`yY8C=8fT7VO$ehLf_p?C;N1EpWfgQXQU5d~H*gS>6Mp{mYAO@2Gy)obJVaRJw}1 znI?9(>1y>qbh$lF6>hB_4OcM+9+9)&+SUW895|7U8al?EZ!)mGS8P)io$s6K0^SPu zrlHbKiz`Xe4nIIj6p%>0rl6^UsrY@+ zkPI7vrVjCYS@R_^yr_3R7d!dw%{d^gJ6b&M(4I`d??>olbb4Qa?pJbkBvS$FHdWoL z`iKLuD(^nFsrhzynz}(l>v{>lzG+yRZ(-y(@?PvtAJKQ6W6D#j2ql~(H%neF=(qpJ zn^g|)9WKWm!dS2Klu5(66u~tZ7=MPJn?1G9;5_!!WyM;$N?CBqWS(>C9?nx?Ortw`$P9r=p@_W@h%LC!7qMj4TY?M})w= zPi(H%N;d85&8abyMkTyfopl%RU4*`CD48Js+19Y6nOT0vQEczrd~DxY{PX3@Ca?Oo zp~)GQ&$opqTpXW;utR+~6yfc7C=feI)NaDm_oDf{WQkbx9{Nhz`w^SrfrDQHFK)U|RUxgqdL%24614&=lA5cQV)a){3@+5@4)gUf zMA!X9{Pn~6IN#T9hgU-+BqSA%2b#z}-oObGmD6;nQ|M~m7f_0;T?BfaV8}M=w!J{d zT5?j-Kd(?=RwxPbujBP-d1%4tsQHTAWFX;Nky=@UrKMOJjqzz{Jwr4vH#Z_UbQO-5 zUvP~gF6(_byuTjl(Ko8kjqFb(tlz@yQl@8WHEopl?UgVVbhAFyOWMv+k&ErH9xh7VbbVXrrgo3B9sa!>e1%m~D&7m#X;X$;op^XIB%x?w=q zvhsL$)N^~Wr&D<#mnyIVK3<0;g~#`JJx`+6+sU$HXyp)m3UN(MViXjVAL;2f&i92X zMPIf@UJRrOksP($vFJLlAT$9~njqxH1L&-Xt0k|cS8G(Ki1c?j_SwU+MVu~?1}`x1 z#7=Nc7h7xgvpCn~*13KhdC^@U!ZE=qzX}g$2j~K ze)Is!Uysjg_UswNyT4yLMaT``7YWl})x!07!n}s?wKJQ!xw(RtR?)A8 z++3RIrz%yU*j_Dnq3A8^@Fp)O6Sc6sxy?aYNqbXf8jRf_@kA+qxbmAldRec*AsM?J z!o1w><-L7&Lj0oAy3C4-2PRZM>_`smH=k96AmeK>H|!QJEiIMhE)?U|WOFZ^f-lx$ zVpOVm!juOM-A6(42oQAm4r2%#hm+t`tg;&bg(d!K#N$hVfVl>CsgcpqzV8AsUT|=X z6&%!5SL@%LZUB%(z@pv8yX5W*bQIK#jHtj^5u)FV+uhyWZ%xg^gO7lKkY8M^Oe!xe z9jvtWl4@yVXy4pOJ@@Mvi!rBp!-NIxZi)` zS*iK>)EzZV!JPvZy%sfH?|4AG=(@+;(TX72rX(-q2QH^+|2Y<&26%|sQcLqbPtF`G zs8dFgt+!1$qW!s3 zAPo-zgcCL(noN7<`@Mg_PIbJ?IzBm!rcvTU5_kGt<+S9#5PLz#RMs)ON*sOn^DSHV zw@}+3Cc@0~f2%D1lpl2>3=9Om1J8Mv%UTLrVj4=k`_g?GymkXVtVhffW98=NetNvW zN#M0fTd4)gu1`mc&CaVqwAz;fnVFeT*e zz{tpXa|O&>Z7=sV;w_T{&-c*}?^lBBvS~R#9-F$anm%6ZJy}FZMeou3W*^T|*J)XP z_$)$Sl1@6;D#$~@hyErVJB5ddnEKYf>&M?O9fYS5X;rSUA10C#k$gXv$Mf=%rOqL( z%{1CT-{5tlV?^IsX$V!zU$u~Da2HjPp}t%et*@}#f_3oJRTRGU(JTH{cN{x*ON+%e zJtJH@$mmZ*b$T4bjPKP0L?EvC=%>^La7xPUcRt1=et#Y&;Y%*$s(*XFgN%vUb2cmz z0f=;x)|)|_k<52Ukba^!JB}9Z**CNAoQl0(q8MEwI@zf;5m@~_ieg->mDAnlueaSa z>Yf#z(NeN`4k#@Dv1n(i<~pg|5ml2mch}vFZMJt{$eq(GiRIWnIN92|#zOKLl1om) z9Pd|G3#}}{{=Zp?Vbl{6jZWr}yyIK>zKeL+B135u&U3rr$ZfHN`$Gq+a&tAmLBr6b zwI7YawR~&u2!0U0|a1Lztc=Uv9@@9P*#*k4jz+2s&q%;VYo zBi`h~x>QeK-9kwCG^@L(gy~CPv)(lwG00BC&zct*XkVLj;rJ?oTy(u+E+VBPz4f)_ z>Ec!yy&)U&1I4J5DO$UbhlWwWd1y#`Q^N*w_vKOM^{*O~J@l8h2 zadBB7qRSEddO_90$B{~3YLUMm)1`vY!w&e|%%Yy!%Fp4Y9kw}UVI>|>_;VVUF7E~l z{R{ih-j6G(9Wul(Y*vzO{3`Qusx4rvV&i<~ban8p^uVUw3)A))Okx8|@ZV1{R%#YA z;dYiOg0S^UQ7Xo(zVI-doS)bY^f6MDkv>k;i#%z02_fU2CRVH=znu1_c^-Pf? z$OQd2P5v;-3=R(Z`)~tmaazd3`4ALlfc2}_S|;|b#WQR9gV%s6jSeZeu=_rm*XUbm z8XKu2n=E0Q+BV94?-)$7G9FL){K>}V1De*Ik%B#6E?PK8y;uJ-T?me-8%K<^XfAR_ zPUYf?{_)BS#afDW)3H1IZh+ppD?_sP$vtF~Dp2cthk zf%7zr_Al?ucLA$?wCP;0J*SE_{?=NNr~(&va0h4VwR-Y7A5%iZbV>@;EZF&I5DS4% zayk&)B^`x6DACbGVUPfM9!v0A%+~tD#AMue>otInyMuSl=c4 zzfOBHC1UWh>`Y5Sw80Fxk3obOO`!#QcM%()dpFhZ5aN=B6Liyjaxxa8gp97dfO3i} zXzBB|vT!{S+12~I{}P(A-}V?zV+70;scJL=Vka)&)tpzM1= zMFqRo9o7NJrTtO~0rLqufTR%t-2@!HTXcqBQMmwe!SQNF3-G7=O%Ff9O<=v}>BH4X zbksgF&%r4iJWSQ@y*EIRybR(jLxOmLge~rXE&w^9NwWS*nBfI1wO#F3*%y(iIZIfO z$?=MKIr(pLxF>@r6cx4am!{rgLF%jOYpMbmYirr-N^@q7Tnle(CuV#&!^wLBVPk36 z(CU!BUp|M23BVw;>oC&>ji`|}(9#6*dmnfhfC|ZkPs$xmKOObSf}#qbcI$eX1UMy} zTGPhdVj6X8GMhIM?f zO7UX@EaNF7DLJnqC81yjlJ4!gTZpChVN9|TV@XY#Le{sI)qHIPMJ<@rF?K^Ij@;{w+jM}S-R28)#_eec8FiRwgZ)|IL{I!sTR+;Gm!!K$J{}>Lm;qZENr2q-T zvC6kIzX{;a!z?4H^H@nP>*(yrOfn*i!Yv<3hD2P4vX1}k3*M?9G@1`v!u&Lp$WVE9 z5uiaUR@w=C`83i0dwESaA+<81N>$yKtkO|)w(I1IXV+(~5wmxf_er48<6r~(snP$_ zdmE2Nte-eu<_~t2Q7{m{4F{U>x-hSfk8QP$mE`~M@nO^@_hy8eCiVUwf_d$r5)Qf% z=%5u8g+q1D9Q)N@Pv0+uJ;>&2y2hP44aB{RMJJG<1)KW|5lQ2!^6ckSxLVH?_Oh|P zQDvvmRD>@QTlv6U0S5`;ZUGT|u4dB-P#?PKJjleNG2-82g|244zD&7{(mziQgd(GI zbBV{1+x|q~&WUWRzM+LJYAuavmY?0)lQw_NOL@uw(>C9@y7Hb(7rV{(11d8t2fada zYpzVKI6JYLTfJCaOnc|9cckqi{_Yp zrQceVO#jT5(W`8EF*nJ8MRPpzvJOBN7SpRzV98P7hb@K5ep$=!O(h2ad918Ibtvis z%*-P3c$R`)+MOv;+*W+D(eZjX(iDTmtX53F77@SO5`iM+DlzZ^g&6Bf$;&pv)sJ02 zKdTYj+;hY?p)t@`rtLV3x4dgdKk9ESp)YKorP|Q{a_>zZ7=qjd9s#p`wU?orinWkP zTld(Xw!9R#mlX&&n`EVG2dW=c8m*<%&a$a4#)AlnLHYR>@Q{!i`^T}~G`x2~mQZs^ z+_q50ok^XRtOO$X^O+9thDP#O%s#EQQtI~`2GLCIMOxt*ly22h5%0coj=8OM*c8Dw zWCV|Cd2uxJZqDOHfPxo#9U!Ae{U6lt6)HdUP^uFl-LQl~a=JC~{VFeAi0fk6g~|5? zZD9acrpnYw=A=MI9grgh4{(4_8hP!liJ}tr9J(T16DpS;f@Cu94pVesaB69;0M!V4?QEYN{F2M&atTe<{x8?BpM{RKB{ z(1fMu+2c6NOd5pJ&HXt@J3nu0(2YV860t3=>&^wS#WSL7OZsf)Qf`t2Ed12hVGC6n z8Duo`-9I{_fHH+`R?AFId05P7+-wn6q>Vn<0Ah&JN=3z~lnf=WG=C%pf*LmaGnSuB zIXAUj-hB<^^^baC%+qjGgz)FzH0r_+us~+DakFtt?f`STsD&yDX{g2Q-ful}oZ(qY zO7nRJ=LYM&-$erPSH?9(=7%V$;{Vx#)2#cjThInhafIL?T~s5p3{I2%kHO{PM7)#d`E}oX zTls3v>&?+nX77yM-??`$kOHZW&oI}0MbXc{MGA4jvi)-UwX(EHU<1vOdWofTLU_kw z`p&Oe5}X@1Y?MC9zrfdO&z`@9B4?F{&7fY;4hQ_0WozZIVmU(W+J90bkV7Q|d~LAV z+^U6Px3KtWwlY5`^#S&0-}7B4yh{I)ogbpT43#xBb6?PCh}KVY4IlPB@O(?2^pSie zM#vF7<(XF-j$U;XSe3BLR8t1tZJp%bV;E{-`G4Zb@L#^h|B)V-8>jriw>@NUe!5N& zSRt$(7+n9XfNL;33PMa?k_>~$d2!o?(88Xje+b%Ph-`=u_IGuaM^Q;uXI+%D}uxInuwv_>v~L z$6JbC+i(+3AVXt5I0I_Vow9BgyA@wL2F+`_{j%3@gZpbTe~_@=L7v|T|1-ls%ZZk@ zU}g+#V&*TTzD)nMeJ&ozdYRe{!Y?HUQ|C)Yr0uGWJ9(~zYCnZ6oNu}Kb47U5vC7Ht zzR%YjaW_khLw&`ynnsZn=#!s%qXTRjSE7L{WVo!Qb8g(TD@`45Mew{lK+-!HqI&Zo~-Y~YR$+{ zaddT`1LJ-U@HarVUuC9$!0>Snh5y?*lGU5x@N1(*Wc3~HLu@p}RBFien(u?Lh@>Js zPmBOL8VbbIdLmvyN?a#<)z42OdlhW@PYIP)18UPSQ#@RMOgI-DWT?#1VRw#bv9as_ zf361Zi`5T0Su*tJ=cak0KHh*Cf{FxMbh!{i@?J6`hL-ewQzB4wx?!k9l;m#;gZ!2C z%rwn&OmL7)`5=P1(*2}WQ3OD3ouP|o{i@+RUtc4eY2>znNL$Fdmy`K4Ov4>jB)}oNSn7P%%Abr0N5!@^a{Q$jd$ZFwCApKl=~Hg8yzth=N*|SIrJ|FXxv?uNjD?H zdEo;>T3?6yQ0&fgaoEM2Hv^(SR4!EEp=mS-+kaT~(5=GxkHO4R+Pu921XNV5dQVAk zR6O_gQyX>)WwJPDWU}6Lfs51ym$9`*&Q5KEyWA4Tz~%)?&49eH__loU28Ur57f*b6 zTU`)Dbwe!y9#sJQ??$e-0%U}>lDehLK{hh>4Hc}qfKbX7AveVxUF}Pijv9&O#Y0NqX<)DdaZCH2pN{bCLkh$FJtRCl!Du)k^G#6fpmP5C&x+r11gmr1~6Yf zMSdK`MB8lcZW40%qiXxi)b(Z|bpl4oP(wg9 z3Vp47%4-m0G5{DNL1|cLmycdZb*magbrO_L(v>Tit%z-_^nKR?ZfH|OO`_daorT8>T2UIFW+b=3@&5Xq}HZ=)E(mcUB}h8O#70Saw6@BcR}XZE72)BN}>h z5%0qkYB=73ekUW`Rm2Ibn+#Hjx_;j z^3+A2>V1FI{ntT}%ZMSY%41d^y>R%?)x}pM4evVB=htxfM$}Hwv9IJEBDd=-(gdUs z4>yFh{-iOfLTV6BuS%Vv8O4%J2rlIHS2c?0W%{dV9alZe`ph6RN_kZj{q4|HpqrL&&?J3$!C3MftOb zJ6#%FC|J1j8GbpjakWC(ge;8}2d3#lg}+6_0lP}_LKLW^AU_6q2#-2^47bY9i|l5s zb|Ll{&0Q}!%}4i|wlsDUb%dGuFYmOl|V+O2$M|F2V|esH1~g zHKU`7zKW=yR7QrQ)gmCtwar>gK2mn4$iY|g?jym|2}@waBk)Ba%=F?wW13=-foFUB zlvG7YfivXCd=)iDN&|8#@=O-f<7yH0*70QISDJC0jY{ais8;=v}b9CHf=# z6aU56Y&>oJWn!jYiL|yX4l%I_a}7rI7fwrA1236U(|q)noJc%fu1cJpy0P5#+(y5U z&l7*bKHEH>a%~x`=Op(F>0Sod)*lD)4Cle&)ugjUqdQGSPXA*Zs<&|Cue$E@dO%D? zCdclN1pUd-C9AM^4K9TIQM)&>goST!IRd`~4Rf=`YpB*Tb3{h;(k!}7Zx>Y%$U!WR zw+33q{$UI`3ws!_)#QN>O<=W5zis)+Fe; z;*?q9S_~Mo=izRAPYt=cJn%0;8ZLCb&-v-so0>JOD~-S{@k(rYPuvg+BN?5@)X10? zrdyF{(DsA=sCoU)Lch}yxZqlwV!0mtD+VC@_SjLs-lNAvCMp({w>Zgp;%`uZ>61gR zowTL`dP99}D&2=uOz2yrYXQ(HYC;v2{rd+X z`1SV7y87KWs5tD#KP0x>F+-0nG?f#Bzlk;?^UmYEU0(1((Iyc0;Iy_u8w&I9_7}X@ z*0Mq!Aj(|~E+%A&G$ZG*6;wPrUZy4Hw+bm$S9YPtFKut19S4WLK zV?Mw_k9ZAED#10E$?3HBKA~o)v}y{)XwY`NR;Vsz+bZB&y315QQK;Zd?~~2}WK9nINdzHD*fx zoPD6L@n^$GGi)?hR9XrhWbhIF864;Jl#4=bbFe#dH!5!&+U^v)g}%mJ##+V*967sqti5wEb`YR3iS_T0M^ViCXl6wDIT^fN%z&P zARaG0%W}E(M(E{uLznhuW>}TlwFdgBfRak&WN5K`sr+aI_M)t+C!@0T*`1tjx!L)F zjTknFecatI9je^CX3anApJ*~1rvHZ)(EL37dz>T;Zd@E#y^~7_bB0-g^zhy~dJW8% zZQ^G}7)^brjPSjb=_MfAqD_c2VcHlq;C=wD$11|hwWDH){w0}hZ*p>YE`DlXL+iS( zfn%8D0RjP!I_;^Br|UyhVE#pwBkTtKBahCcCbg@ZyPAuxW7s6XFkNrRAfFn|AA|{G znko(mp=AX??=@cL)%<407%sFGK4t z(J@|%ko#`nntx*RnwC+6#|$6lwMW2blDKr!&O%QLk>S9OMg%CCr|_WD|J55Fj9IFUEBIQ>v7bh#dmt`|2uR zNdE^KCQ&6e$5rw$L%IX6O9{v3PRJ9&Pp46J#Qxo#y#e)9a~pwg^p0>q%$uk0!>0|m zE1?CK3V^Z)=FVxhTJQqqb4gq}yu556T7`gB7E|)nlhdPS>m(>-${F=Izd+Qej=udIR03v9Y&- zBVHI9ph_(@Lmz_r5v18PGny6zp#!WeJ0TAf`m%~)J#ZXets~;=EKu&&J*8@fMbg== zp^&v4KQwtMj|*L~RNeqEVI;+)WpGt?K1UYq8S6h~m)5*Q9>}XWR*hJR&EQ2Rai!?n zwx=q{4yA*kc>x-N9QX*)CElM&14)!z>BAsQ12P=&zF+}n(>(7l+*FD^88lm$61Y_G zAgbMs;}tq21wxCZA22 z(nQd0)=Rq*OvEcyjCsg|rv`@*g0I_No@n^Mf_0RiY{XF(Vd#gtqQ2^dbkd-u#ii+E zZ8uGWUs1@*5$R-|aYynbmBDuJplOh!mGALl*iL=-)S_AHO7F;Isa{N@v#k#9=tLH@ ztRKz8Bt4wonmh1ACx*kzjv#(OuR{rjh}9mu?;j4RY~t3Lq@YI_0qsGtbc0uhAT@dC zCn3@8)IPn@pGX-7DR%#aT-|PUa#8Wsd9TQhb}7+;${LZcn*cquRS*Qqph1ZeA{xx_ z-{AMQl3U`$_%#^fEkj5cq{c&0+3>_ek>6!=bY$V&;=)D;N#N(e_n>+^`qyq@L~@Lb zhvL`GW328cS=+Erc&gZK2crgmmA-y`Fx>Pe-+oSPnZUwm>Z*x0wkEg+;v~~ybc+`; zq)MX8;H_Ow7qK|KdemiljZ86Jk_kbW$Oj7oWOH%~YQ}bn6fgS{4A+byAJp_Y^%=aL%rfAzA~s=NqwUov4O5D)LK8 z46vV?o?@nMrRJjCn6cZMA6zMgT2LYSs~Kte#TKXUDN8zMO+P{Nf~linDAiYj`2C5g zw0mMgw^D<>p8UIX`$q$p)K#a$pU*r-OV*h2Me|NfKOexh=ftErk{PCyVD*Dz{g2hc zt`8J~0fRaUKwXV)GgAyQ;(XCC=@8%pG4ti_tx;U=j&09C)?W%joEOQ@>++bo<;RGm ze@7_~3HIPs`bS69AL$IB0bWj*4gUMsmgBOrR=|~b{7CI}#Ys}f za9xjs;&+~3%%DvE8)zyjBSvA&%tsCEf_Dr7Ug*p)`-74`Cd^z?7$Aqs&Q;3^*?7o< zVe{0_u@ogi*N?i1zC4OYl3~Sy^29)rt9;RDtKz4iyZt{FO-%PWxR(HR3N0f8ZoDYM zgNqq4q_ukVTo)cJ(#1V&rO;>1zk9R0_~L6!Wlpy&P~)6;0*Ic_Qi%-2-JMkyS9B)W zFyjxVEzD~L-hftD=NqznYH8RAG?)i~g&oM89?$(6%quo!r?_E{Z@xO|k2hfxl22<) z@}$%p<+Pyp=DJY-u(covx%&xmGfe#4b`7qcnPF52xDPsjb_XhsCQNLE!k>#fR?a>n z=^_ZFsWb+aXbVFwe^7y zcUS*79L$5%HE)lX{V(i>Y$YiNDl|MAK*NpvwIj3Dd1rO`wVL+>%C>JxZk&aBeG%#B zid6JO7A+;1Xg5C%%RhXCiVS?&Fh+OcL;Y-4BQ3yV%2vtU?M3 z*bCjr3P+tU1n|Q@ybYJZKWw1W+z$cbGIsdCAlb(zwwy6}hefH?D^9=7aTreztFHAC z^e#;LLlk%3`na^ws7)9{NuS3W9`qQzw?Xp(fanPfbpLKYW+6ij;gswqlFN-{P-FnK z1C)tD(t`tp4#(y^QN;hcv7kij33fP=uU+W$okyyW#FM~`A?~z0y(}yDWsw^Ww25TB z7X2q}MP2UV=GTqfeCcuNjY~I>W!<;EpV`SDo0#J6;>M5V25n!F_?cER~cD(UuxPBnJAb zkCR*qJ7=7a zmG>75VGKy)_DhR<9(*m;qGFPD&6(a~jo9f}pVA!b7&lu+;(i57x2mE3!Kj}dgMIf& zj~PfsY@AVBN|LMy9qCPqe$|Qd*y1BZy%W-$6P;P ztX)!fgz%9Ksame)cY=4%6tM=Zgir5IK3j5AKu2o3EXo7#{{B@2!WD6s# zh766kHGDp(zJxn)%7@U9)yww%h57)!)l}MW-l==^;O8#l?V?dn5S2SgCdGa}CS=xC zw?E14hp+%;#TOe7#z;VW(lCDv<@`R?%~!5QTeMbgN}ONP65G<7R+x`Q+LsIklh`*{ zYtiow!+B)m3x%MqlOT-)iJ}_!f;@+CeSp*wpQNq`s6MOE9&U;fL82j6Izh&YsX%r& zQUVf5ajA*&T0}(w159)byI*Dz%`qsmbVMQmM{j^``+X<2=4F@0Dyj|nKy)g zRWx}{v$%*enpy+RCz8$vy&);ZHax{5Dp@8T=|W+v4<-4bLNLWev!Ai}gP}v4BO};E zf~v)Tv3m?nb^OE`1x+rF#>qT`B;Q0wSJYdov}^N&G(lh3oF_DCu@atoO&9%GS8Wse zf7*M?u&lbMUG$+*K|lc|1O#a$MUY0yppgb?knT=V5eX3yBqR*FLApDXkZz<=TBPfY z1%9#5wXeN@?LX&i{=6^v#9DLBIpQAo7`Hhl%|}lhpogvwMErtcTu?D4xPK4dCKV3un4k0@J(jVkJO3la}><(8vx0JKThinE0t9P#Jl^tb% zU7OnumB(~|da&xdMx}4AQFLaT9min;O4LF}lZ`%ZkO8xMUNa&WpIonkoYF;j&GH3r zu&-O5C}6cnTDe}wr|P0h%-P96vGxpVmf{vxrBX!XXtnK(0YfD39v&=_Dbgk*)T zfyZ*L&-AkQ(~)0!$5DG<23{eX;|KmkLN&eXC3n4()!jd}=8Ka0P~BN1{xafVrQ-)uYj9+@p8mxV2&LbF?a>=HTayEBwu;QdN8v1nn>`&uujBd|83iT$$jQxZJjidLEgT3Bgr4f zG;)M~stR~qdsa7#Ssmlv(HHOV5TPMWD_rt2Mw)0TH|fc>bG|)RBnkcnkmZ*tHx-&wdp#4PAmvdlW0(~Wq5^Wo^YP7NOn#JF4#Inc?$KG9BwTSgkvJL*| zGD(rkhcuQqbN3oD0d(*1i~O#(r#juxl}B*2_*luV*I6%LY@YZK<$ve%G}q0JW9IM8 zmMF9%AJ@O1Nj~aTFsph;9xQ+VWgJ93T&UJLzT{C=WTWxP^csD51wsO%Ew58QuYONO zJ<`9(n~?+6ZAOaF2B2ibhJGb9$(HP6RL{AmU*$WkZ7OACwyP>GI6Ug()xwX3gwJs; zNL_V^(NT;bD_)pV&n&DCkY-i!cU<^>*Yl?|fFf5U6}7^*Y_f8Mbe-#D z`Ih2Nypm_WiSB(~r1|)7q!ffgy2VFagZ-#%i_f_>cl=@Vlc#)k zwy`BEU6lN}F_j;1^>x^jvq2Ach9$Sk#zc>$D(SUBe| z^5oI)Jtp*Br!{7_35TJn?+IE{VAKIX>rkU>9=6!*Vn<$S$TNRSaWJ+XS=TC?=+-Nz zYsx*dQcqGmfD@aWt>SSw*wQ(*5?}nRPQ3v8s+R1R7T3D2fSqF8_O~8Rd6_`+*wk0_ z@SZ_+CU~!{`cw970}0vo2hC#~Z+f*dvC6dR$~Nn@W&YPK@TSG|Cx3K^7HyI{p5KyF zVXuxAVIzm2Mn_HjZ$C#EuwQP`Fx4>V9~C0}%)wOrdIB@{sg9MX$vXO86;1mDFnAO{8Op@FLRl%KEa{OUD4pndSyvjVAG=CjA7_8 z8Rt=cy#3I)&q zI!79F@1G;X4f#*J-cFAQFpu7lVbs$5R^*=OWoPzS-)OJX;md-Rt2rm`Vxi=A@ik8B zQ6L>4bQgqk-S+MLc)_tH&~hC*2KYLwSRZeVJlI4vOl&=y{}RDB!(2t;99mjo>&n(H z%RRRCeWVL{7chnFcmL7@4s;k>5AhX)`GHA{Zlw#NHXz4eKM;O{y8?RSR8h6I60I*l!DGWE>r#ualM%|9BlEL>&m1!c&2#V!NC$uzU$yK?R zH&yYbO1yd~j0qjGQJ3<&%g#!YD!~^ow9qpr+Y3y zAD^~y#|_cP7F>sGho2X+igP)uH5q?v>*_oyPbsx_>?BRsOwhCGu@JX8pOH;_qZ!M+ z5Bm;8=Slb%>mer{^74g#5&Y3h@ocOXBB57MNWudxm3XS!S3({>`f#2l)ZD=It;qoK zKJTZhdI=;019l8aO-=LUg)$l)eC&6UuTN2zSsbg#mXd*-IwAcrUDYt&rWDI>l0^JU zlU6^P4IrVhViIPq&?ORE=+;JT2HqN-UZ?|1vH;o+mcB2CL_BU>)%p!`G-%#^{+s3V zJenj#tPUoRzg6B%8&SKmZQ2mf>=K3FeFOdP)A#mC#!Gh`LY@s%Y(2*78pIXT(lM*# zy!~Ug!f=HrVnoKNr?_Z{@qO+wa#pvRLX8XBAVRBPjl_^DdKzEkEhkxwh|SXe!RU-? z;k$TMYNK))yfC-hcPPZUCo`HnyNIvvb_9VaVA%XwL#hUUuEyiOQ|q5u{}s$0Q;&<{ zkXsB+lq3RAV%X}z{$2Jiki!%;9-Hwzym3WL(siI+-j~-W?2@*MM7D`zWPt%B{H^hC zv-q7KJ+Bu12|dTLn5ktdYzH?iF!iC7U0^LUJED7aa>sB2?O&fy7Hj%#*%{RyRv}53 zL=-2p%jZ6B3~n-W&wW%uzEJq)S(J~ae%s*vH#V|dxd?xmVeH@1VSEYIxF{Z;X|@cd z^XQzmaxvpZkDvwMswk)ONjWWEldJE2yF8K;_#j@u!T+|0<7Gr`*@yC;o{VspmA?Ov8rN|Oj3GO8PBJDb$g&ACYZ-#P= zA}FycA2z;0janZs?Ja&>uzyImyeFC%hPSi!uLHp^uB9qh1co#cTHQ}Q#NqSI_L(@d zsPBU*_upx03GvOVK~=4Jc0*Y#kCUhEhU3C4Hy(ut0F4#5dY>J66h>J#HZUqD<_!b2se# zx$<(oeO`hAEw{&M3bJ(Es$~56QL;Ax0R#-YHV%JZJR28K`KL)7iMs5c)_p*E^Qz4x zk@)?OR~}eYu6$svZ24F;8PL}><>La7zm)E#%L%T}U~y)jzj9URZ6E9c(z zOp$6g`Prvoa(hdi*7~8A9!oaSEye=}bR;qae=_U;~WXOUj0%Aalfi&J? z9T@;*JGLBP4h+I`h5lgUg%x#SXD4fWpp=*OcQ;bz;XP_0STt~^C>~Mxmv=L$DkTq4 z%xm%`vzc3Dnao4H%x7bK5JHBNI^ZuPCdxZdnehwAG;SuF*DF$_V%G}Iq?dxfryWs# zVNPr&Ah?8y_X=MI7~@dPT<#Pg57T5`bo^?VmdU*!`Sjk*3K}7#q@MR*D1cKYp*G6o zmpR2a)B^vr2XS#!?H*bL*Cr~B(-SXBUZGAqEJc4}(Jj-cf4r5JENomz@yPJRylKG_ z^GJX<{bN!#I|`@rK~->xS2+Vxs>{9f7_dtNPl_eO>L;|UXZ)FNPNkv6&+pCOK!7Emkw3P zy{}(iOT{2%bgA5x^O1k#fEqbpIo~mRz9Cb%>uFePk-Yrthw06{h&ZYzUY~5%$aBI= zTvYLJr3$ya7?6^!+_%W*q&X-vDWes3e~d@9m?JK;CQATM$M0>w@Ct0+$MrS+ z*UHP8`)=0OjrhD7P2gg-tLk>bzr#%;h~{m&v|269$s{ng?jfqZmEG@bE%4*(lVBK+ zVKGN7Z1%?%ZD5e=K}cb04y`sn&c2wZ)d>}n;0}M{>JfnCaimL$eTj{?fUnwHEx=^y zd|8*wK6{()JI)+qi>}zaw93$(0~qp=?hH zGY7b?V)}hFjp0j9cs1{YQoHhKy6K#^u3Efudt$~qZet0Lxd%{lU%P=1)yJB7{(5Gj)MfgQSYFR`)F$W8mH*E8 z^x!)W@+E|}hoWU3g8ncTK8jXQPHkV-N=}u5cJP#!J&Rrqw-_lr(ub*FvHeW>wgQI6 zN+csngVzWb8UA7TAVX)pf`*5vsin(kbgGbHlnCt~RJc>6!hxwGDMc=R`jX97~&gu6)WxS8}Ztqo%u(%Y& z4{Wh{mcV`&LRD(p#Q&9za>vFOX~vRRq@ zpsjNLdnoJ6SRUV8ziJk9a4x$wI0sX{eAm9F6_>;MK!`%C%_ePO_C%+Zp}bJ7cpZ9B zmV2412LE%c%t7NZYhCoALWXcTz{v%OK7uAY;%D;Zdv>z|shXefYuFDtslBA4)q0 zi7=<54k9f9CnAYeT9i#?f;1-8HBtZ&cwu{^uaR&0y<;UcS}te$lrCj9vP-qEZ`YaT zHq3R^R{puUClPJIYvimE-Rbzj`|g2?*o6WaI-n#r&CCrn$vyaGZa+;;PI=?N!-0e& z6v+8TkXFf~<(y6IL&?UzPVbu*pI(&0v&$#Ama8FER+ZBEuxflyoBtR`!Kv`cI#7h-y3Zi;6!Eb0!a|HEVcy z`?k$ra;E_LDlM(UIT`e{(wvW^nu6jV?Qr#l{obtt+FK9A1k$d4)K#c74f`o#Kn1Db zTY;Hhc@zn7>7A87r8GUG`_6%W?@N*m3=t&ZX`Y{qEWDBn?Wj~&VzuyK9|tynrW83toTE%RqY;WTFSAVvuOh2Gs;AK0cuz_4Co8h1mDDl}x&B9k9uRX42Aa zrQzHW2ah2<)N4Y+7NJuY9b(j8ZIs_L%GqaU(#3r9?P}bbL~{MDOO}!P$%9{AN4SV$ z5SFMUF-;{=+R*epF7iz=BUja`{<~bw!|BilIE-?FL1Rxa^`}a2M5Mp&5h?F>>M&&a zth{clV2P)0VnNq%7bxh@DGSvo=9g$g^+sdX{73RBaDpAso;aCh_XmBBrC4G8&YDcl zSLFINDO`B1E27u;l@QXK1c|Hx+YvQnhZn#Bw$zBtq%u6vx8TN^Z`A64i5tF#|71K#pjiz)O{fgl4RGU=hfshz3Em!GF#3g$Y=Jb@*`Shk@v6m z+t)2Tj+wENlxymwD7G6ajgo0lkafvrrUa#wkd-ipd#JAp+Sd^hk5bgORf*25z2-3P zf2H&9{_Sp2ETre(;kj70 zEk*0>l22nxL`B%-wgi5Gfq_D-zFG;Ui6=z00P6=C#`9 z|IyRWg z8Sv{oYXE=QY+x;r*&}lQ_YX8EhrjdgeEW+znlmr8Z9Ch9w%?d=u6d(=NKzuV2}XL! z`yNYHKSwtE9=+aDs>~`3$_rV>Kd@HY{Yt7|wcWacRC1~_vs$``>>~8LqsMNC#AQBg zGC{g$=qK-Z4$AGflXn9KBP-8^UjUVOr#AlC?Y5*vJGQsx=|qqWkB$B*{JO2HNbx8x zj1F!JIsrDKC9*Femhq2Z^^ii?*i4oG`6gQ0`NX0kl%?WV2bw3=6v}o=TB>1tmhH0W zD!l!?x*c$b&=O+=)%cGI|7doHTelFz&qn-3 z(+YX*=iVD&2neYxG)txBoaJ0YTOuYM%`IGj_W(%$Ov^X*sy_!Rqsk4WGX54+j%mE7 zFpE!%`haq{Cvy>kWOdG<{n%?J9X_y99sKLstWro%URTiZGJ7&HbKszyvsSkctBk9+RR)~1FD2b}? zh`6U+BWg}9ucwKCm-)~-o;~A2GSl^@h0>xU`a0kzHM18i(_5=5btRjGXx>`NF}|n& zqgF?!u0CEg@I{ySX-P_IlH=k{HDBKx4bO#8i~0wNANj)WWM#;%)+46mFe-IWIeeil z{<-JxMh#|~9+bs$(Q(QB^KPJEfn84x1Qn~e|0GHGK>{$64Q9K_f;7y;@ZPx>ZH_4n<5{WtBtblLK;XT>X?W{I`#*55_NLF!~Yo2P8 z&C_w&0NO5lJiB=pth#5(?S54Z?^-_Skw77h5N$@h=y*GOcbmrtcDk=L-^)IWt3+oW zF2#9;jyMNw%dGsczitSZ&0{=JDKBsf<0>NK+Dxwm$_jqn*E@hv z+nS86>`^(Wp~^0w#*Y@xSy-q}`8vnhS)J8cJw|kN*%3;ukcNcxxYhIBv!#VcuY|>2 z!9f5$$#LJ?^Yf=PzL7M-wyAeY5PhC!%8B+jTYINlmYzb67A+_+L9c=)tb4Op%jFx1 zm1;!fu0*6FJzVj;O6a&!e-t_e(t0OJY}aSJrxO#&)#ZV<|8s8T+MEVIJ9OPTJ6NzJ zrLrn%eX}XEs7Y@d+4IDb*PfJcH8p&7-0N++HcKrG+b2Bhq{MX?jK89Hu+^={nKUt$uGW-Nc-vh-3;a)b8AV z;`B~uzTfTYu~0{k&`%&AsF3APP>~jK`&=V@T;)N6j2E&0S&Q~aRTU;Gp(Sew8}{w81S6~}^;~CC$2d$deDv*|8&4el zdw1UXu3oleG2g905{($Wr;!yb>)?MTO@-TbcAdqBhK2%*EC&sL);=v=%Bkosb2Phk z>z4jtj;I6ouk>dS6ofk%2LM z@a!7pxe=jZ$_W*iHq!cf>}ZYjk$y_tV0jEqgM*aK;mr$~&znqI;|~RB9)0Tll?U={ zD6zYD{hN;H>FI|mTsdx$;~N?og(oDuhT&=o1Q8IiX%Q)GhiuMT4!6s@(|INnLgA!gf7~78#{uTfK+f5=JefrbgP++k2C$#<=ZLgsadPMQP=#5fKIi1WdPv z({=xH;`iKUE4H0{ja=_gp&0=(3kW9RV4#qZcM%I)pk)^(ynS_gW`@ggUbgahe@X4^ zIM65Hh4fWNWfrJ54>McmVS|N11|binFv4x&2IvwQdpMADgtNjuDSrC#r2DfBfo!74 zwW+Box8uEqjqOp}8NQmm(Ef#F7@*F;fGrb7)in3*JwDo(vVsEc2w#}NL~7QR;5@vG z?9m!`Zcbpj&Y(D<7X98d6UbUwHoYpttd@0opV9JI{bkkA>3#b%(C-?7&?(9fc8zKn z0Re%GswzorTpS6;-RyzCNi?|rj?W<8p{+4uT?8c*k(oj6#2ls|JM&2ay>`DgtcFh6 zK_@Af65dDXTm7E|W*=wYrg_KhYCSUK6AY7|5b=YgehVThs@2txV0*(8l_{Lu_8Ya> zHFy@RirWXd^_%P9VpPovD_&zpRulWV7nq#iBZXa!jFf^=OwXT3AN#=t!2~%BROx1? zAR6jDhh8(xsU*B|#q7@zt9s7Qu|y4;z}s&xp3^BvTYP#DbxCo`vYDE%CZ z_f6Dh(K3g7lpfA=*Ky}7$Q(I%s4$!r2UZbg;|X87e3=X6US(sro8D|J^`&1&IY6D>^KV-me$<(iq_*^Xg>ewUtuJt7($_;Fdurg`= za3|kI>P-@Z#%7Uzqh=1SX`eifiz?bxJ-k{ku7igOr}#)<>&0S!b{T~%VUipC`vTRE zh5Aju#u2qQKQofPPv|$kXE9{4XNb=4U!KtIy{~)C zZ_lAyzB>36!3rk`zig|5E4 zCmvIAA1$2Am;J60hq-|Ho21Eeud`MjogcFDKDN-jF!IXE04Y!ewmw^KBW{add?-Zn zZqHCkR>83t6;e@{m7VRt=1zKca|HRW7Kvl8M3NGx=h~9KUtu-$h~gwkO{Ok>3qC5Vl>rABCPfn3o(!68*@T_a@>fg8LkfAQ{ zlc}XWvv~$kK1J2?GyGlHF}{%6^7hhcupZdTB9r-f{}Vu<2!$J1323P26eS0no&_&@ zjoQfny@1OonoECB_K5bj4$sG)HdSLkt zx{AKG>x-WcL57(ueY&dnRLL^>&%@QT?aCzPZeblW!knH!*!ncQMq!VB=M=q{Bu)~_ zFaCaI^cw%=t9#0J4`PSX=f$;UrpGu{Z)|6oqj@x7OGI_8Fm$X&`Z zo*1D_9dwuO-r@4svM!v)0zNVFuNgj(`)n$VZpmu3p#{=pA* z0c7aiZjb3uXM7i!qLMzpHbZdhKfWpuwx0wi)}kkVb+l`(Ew}Zt$g$XI?>&2M^w$Pi$*lcTU zkx{e4VSBcJC4G|NVF0urxI{i;p>PZ+$>DxgndjlLNYTK1yLKkT4DZ3Tgwvzat4?ZQ zyy^mMiS6w-trrfxEwVZOec7RZPkBD5BH&@7zo}8k-ujPi!C^OkHD+@sy{Ovn-=5;Q zx6~YBKYsOJ!I~&s?`Js|?cmJWgZM+C!zVqf^>0(yD<9vG zogLJ`R%@79OEL1|2__9AD;e-@Duvm~pPuatT89hC6XD;9_b;B-fnYb14tU7CJsU>^ z-BuWbwRZxl=)9@VEFmo`e3TK~qU?X+FryNGD3-7NI?#9&fIOOePkYEq;YQJ}_4VDp z^%-0m(x$PBv;F$7_1RSi5^HEs>6aQP%|H;Yvzb`{v^M5ln|K}H^01gc@Hxc%%rzg{_v~{I0>eQ0`xe3T* zK9jAe6D`cs2Z9I~jg9TRR{Vb(g!b8~CBsEQ`p&h6;(3w%9}kurcrLdvpS}GLBNjMz z+G_v?gA8hzFQhrEKvD@1wxxKqaP5CKmG&9L0kg*RboaVtUVv=_N-Z+R=^GuLtG*K1 z=>>6f!5A|D?i4i#pM&YcewKap-%cukx_iACC+a`!fs)^8ap=_3{j=&sSWN#8x+GeL zD)w_$wJb41Lt2Pr^Ub=bf)8NSa|o!qhENHUV_@UeMspeExosHUx_#TjCl7H};BjwM=H43(*ILaju-6+g8W`b+@S(SJqc6)(l}-^H7bi=!EZy zch|+((+$!3P)k*8w^MNKCycSJMbgQnB$`tZfd4kl{9wK_{zA4|@Yd3xr$y<%tM0cz zuV1Sj@SfLR$R%CGW!kJf7Yd?r;A%#XEO%Kp1yTf z^vyfBzgG=QUZn(#-L9;4Gd@7Cgb)5l^<*6 zMl%Hr`IdbAIAQsbQX3*Bh=N?^eU)DM5oF*6JE>p3@ZV8BeGBd6)DBraq!^W;r0g~y zWA^6Fo1ZIFzy(5l41P@~;ql*I1rQgIh9{Qbvu_?3w$}X-12u=2|3H$TX)7$bUY-|0{3c_LpoLNx%zj~4b!@_WqDy0?6bpFa*+kE_T5;Ala{o5NUs z>XnhA&27T7Eh%)Da9DTT;InjSJu*VK%F`7vAWu*J(@*O=55r+`OHUz6Sejq|aY+BK z6+eB#{}~DXugx<$GT9E8Zf9YMn-0ZUWf9!2HWE#Mbkd@v*nbNY-SPg#aKvvQpM!xE zC}@fRKaLj3Y>X7U;Rh`pM#d82J%D-YplMXeL&I?v>BGOk2yUiZ{=cmM1%`O77yg+( zC9xp93*z!>-2Rx}kFMUpbp!evATX6e++7C$OzU|Kh>kd6iZRduVbUainm*xwel9yV z+l`;-;^)rtEpYt*Wk~F+kpq3X%;(MGR=sQBj}G$1cH+5o+4 zkV>fi94m7K*zO64QdFNDdzMtIQIyzJMfU!33OGr)p?c zK)4fT-h(iKn5f_)$fm#)U;h)RMZId&_0wk?Z`JJo^&h(}pJPB^KKA}1 zq@-L9n$m1y{(K`7>;ME)mlMn2JZqKl11;&k5;C;gWn{TGhH z-v5`={O`8JP;|nZ=;$Y#T%a>1W^DYWqa~D#2b)nL;awHS&71htKD!^sXDn|aTaSjvtTa_3Hwj}HPD**`k7LpB7G^T>z8Egym-xp(hgZG?iztBskK%n9j- z4=<=?X*^XBJt8hDD#E>Rp#j8XH$dCs^TYS-Hk4Isf{yce#a6@qhlgI2qCS+)&d$h- ze%3wXvK(N;BfoX8-z6w0Xua{W0@Fky=wW~ou{!=JN71%28i=z%TO#x z+iSY$IV}$Wx-zCBO#M2MT1nD{4P%`M(L<1aHZShDnLs3yHO@sGE1eLp%bbW*wT zRsU)r5N(93Bf5O~SvZ}{C-`$(Mn=8w$${SCPR&V^Wp0(J`g%M_L<0aHJPP_vOYH^+ zH`NalU{hHmka%EFQ2kf)-fk$va8&Q2_om35hI9bHmO8ZhB->6_2Q3hvz#SvnEi`m= z5?kB5-q;gvGx#5b+%Ewn4rejW5QVl#@mX|x$O!S%+}zxp0FY7&IN>5%KMx)}SP%0( z#3&ha2+kNB2MIt@HVwbdctHyE&mD1mM)Tie+>W*exopPx-&cz2CBftR?T8nCua5e7 z9f#}sb#X8Flt-dwe;0pD!|ojCXF1t|`auxL#!SORF3QBeX%4PSuvps3Cjr9-;46rrs-o_)fcnSYFFU z0Gu}f_;&cVd(>2Oa%7vImexAG4NATFpx0<FuRzl>(QRW|s$m6(fQlFg?<$R{sc8_%h`PF@Wq0;xsyD&&%LkEzX@J|U zL=q+!;;N7LEgSM(Ky$_rN<*av4cNmi)ev_gzwIuFo(#`!i=OOto&E};bDBp7K zl|b?mpMqgvV1V2vH#__Emx~m)WhpFi~v|GclkL>(^ao%|VCugvh=S=}A(^1;qlvvjCX z%WMK+Av6@!ttPI8nqH zkTys_Ca^kI#<0@?x=32t19n2ibKf{>8k>TzYz!HNeS|Vkz^Lcn#iuP)o_HW8zYE9P za*|@hz+%VVQl#bQJEgZpptpdOFPDe%T@)59%+19gKc+%T2w#rU!gzg(4v^4X(KXY-S zN)Rf1KOo3;#s9I!f8ZJAa|PDzYbggE9R{MH%FZqgyYyT07`fNsMhnUhvaF$;g^h!( z$0jE9$kl^n%dnpb7;sRW7lSOR!$hq3^~u91HgV8#VUUZRE!a2^^c8J^u&IDj*bSo= zb}1WaBqJl^Os?+{tD&Kx4!4MJ@&8a^RHfEnWo1P}!BP~LaxgLBR(WjIgH>OL$YI!- zc6h{kC=bo=kec5Tee1w##gi1Kc|&>!hA?w9Ehi^HK2^fXDr@9PA9$(Q8h zkDxAwI5d~#p{F1jbs3T+sBvMeRv*~Jjh1=saigMT)wxN@$!PC64KE4!VoWU`()cD?dv}eL*oJ}Q(HswOs_7AVYxDkb@Lwp61z=quO-fG2 zLXxeF%adStX9jDId8NasLc!zR;^X_Am4%1M{2>`PNV+XATM>jzxRy=tc!3&SlO|7( zqxBIxx*Tj|@JkE|30VSxGdsgRIYJX!g2$VlHtD<{j5ukm=p7s#AzJ&izo8(s@qAkK z3+Skd5lewSpZMo|+n98B=X{V3obFfG!%E84C<4i`1|dt|+3!BpkoU^1E6VmNNdcoOZe)oCxi_09|8$P4+%k;?&9KY>O*1A1lTojBcR3#Iw_At!zRuC zT*;oJe1>Mgnr|~MaEq5W-RBV0p-dE#oCU7kwi&|>l{Olz8;wd=Ni_uD$aM4O){0wyvIDgEtS?BQ~O!J#2s$f#HOW*_PlCAzMTy;?}{yr^651UmFyejp=M zX6%(ccVHC?M;YQ3Yty9U%x@3Wza)=pTSoOi7KpzHKA2YIov^{MjdCOL2i88J7o%1}#wja(!99kTGRQEP>~&69;_7}(Kc zaN~DiDGh+rp;iJShxo9F8exX=<>LcV5n@TeXn692)(a}Rr6 zF@N;+5wDZ1e!+0o(71XGAx_01fjW&>VzzhJmr*M?P(_w6pJL#A`t+&((~n%HASO1p z=W3ZnxcnHQ_MH4ahi;YozcblyMk5v(m3?sV8_(0HtHEg+s~&sI)YC`?cu~edh|$R%xA8h zr1Edi!zWf&jivT8Yy}?hS|$z-zOrnEM3H-Pa#Bi4L@uji=A~6&8f+^!uu+3Je~*n} z!5MHYwACf{yrUT9Huk}O+Jo9*!wRA&B)C@j3s1>zZ!^1 z38jA69YDmP(AU=omqR61;j%JzVCofpOYSdNz&f~$btEjY;B-4abcZ{cIo#W1D52)J z6WiXP_F6}SJOZ$_;MrN@_piqjhYmceoqk<{Z$XsWB3jH$Og=(#;07R)T=fz}4)q{Z z{(5)U4UdewQEsii29c^n0tpNPAwP&phFjJTmIeH2egf}7T1Dk@)J<(uhsgqyZ=jcC z%un?Y5-O#~k6){#%Eyc)#KgS1cunBv=P;4_U%jdLC7@PGjvz_(4Gs2P!aJpF9lLo0 z9r}Yl6Nv04P1jMN5G``ZrhuAseze4vZ>$>OEP?4yPfuSQE@ZrW z_pYL*<|{~`kT*Hbe?K?$z5m69D{tUS;aJp>!Yun+D*RsoeFdQy|tsq(UL7>*?uP z2Q5wwAqKcAO-;=J-^~NITx9(~Boay84wubD8=jxLOh`^1l&xJd4bD%a)b6^+)^8KH zLqw_6YOIv#&Ye392d==08me^XL9EgTetUGdEpWfh1KHX?GSxYRP7XI8ySY{y0k$|) zYEK7F6_`l~MMhg_KEZQU9O5uE6e2RYKA>%D02v!%Iq<{WkxVc}jsirkQHTzeqa)Au z>Ub~$?*W#18>3^Ob7FE6Og=T6)>qsJMg?gbo1Cfb(o+8KiK5iGHOB%}UhCpxu9M!d z#cxqsB2J>*DkHZhqJ3SvLac4A(0XYww*^i)8Vcez-Z6%)^OW4ifdRY_$Qh zCS+^>T^b~Sm|GHDJWwsTjGFNxtk)o)1}BDztRk#2xeWp2ybn35o`WmZhvf)x42Q&J z2B6{H(aGb1i~*m_v#1&EIvKy9uG3JS0i3lKK)2U{-GpS1h*)2m(q~TZeWwb~!mkYR z0?zedgY#`CMV80PE??nz+<3EO%pbP1(DCk!+j4%(a{F7vpY4LLeu01hg08EQu#J($ zt(ZKz2>Zl!MsUL#67qoGUmS2O#6&xqcJ;HLPnzlPu1{$cn&MA*ZOU0qRFWZa@uf?b z*6S~DT$LxZ`tjrza)|N`o6aLg2GDU4Fiy{3QhDHZiJnv%o;wk{E|+X=VS$`?x`Sv4 z5+uaZj7PqjBf%edTp*930Fp@%_B4cC*X?(DDiSii4;xP`g{=QOPZz@6K@Rjlj&3lL z_(MpuJICSs3i7Cm4c*-^AhS$CB6pSFjs_|aD?TDMU3@DORTLC_Hn+;M!5RXp9N_zK z!TKMbi=Y>Xg6h zykOtz%z)SH>w(RVZfDpulfKJ!cnuJx2$tMT3{_`0@yNCie z2*uuDV3>}xtyU7If|f1WGaUC&TUHhi;wvW4N!Ylwo}O@k3knN= z;lskxqtrwnMEdpPk0%hI*x37m>E?t}7Cid-(h7=ufXa5$hL36!at(%3IM8(ZW@etU*iGRTT1- z5T}1_^9HAl$cSQ!gHC1sa&gVUsvsr~juF_|j21AyuTKSX8Rd<^UjBY{62`C5$Fa=%ZwID8cU4xs4$VoNS3=Sx2_F2@YPqc_2vAMZ9 z6AMd$TMlvSy{BPTMf4apdc>r7?Gk6lvdbQafB`tW+4ozOr1{AyC0-03se* zE$z>3<2*S@Nu;XY`ivdW!7F-RM3B=uF(nCl@81F$NT{DZ1$F9&+gvwq-URE=fJ85_ zdbkinM|$fhD!#Gmc7QhDgS4$gcaiMf2E+K(|JhzvREgJ&x0TKtywxI2nq!BpvhEGz#vNjLp z<(m;N+}PL{JthKY1ONq$rlzKVEsLIa%?1qt*SWZe5L&j9Qn*3@Z%?6;k$4~ClnDMpSgz;@jh zMaXUes3PCImqBQ6Hewfm>L1nKo((ghg&NA;wAs{@@I6-D)4!NQ0SruNvc7-+J_DKo z+#Uc^)IX5`DbIdJ+6!DeMFK!`ut6g_zc z@Um>YK>x=<1l6*iZajx1^sp_U+A8W>-Btr177XD#iC=X`J(MmH4syf+6afMOiI?c6 zl{0^b{uZpc*H*tezw>WmkL_jioqh4Ll@{*yczC2UrW+cK#*i=;Pm+xp@#@04_ug#(E{h!81qNHP(6_cUORlCT8e zZJ#0#`rbk!LTDB_T$gxRQUk#Ug6>0r>0+|_p#W8uS@|!Agb!5Xz+0ZAlm_q32x{J`TORo?UN_9NU(@JSr9rcJlJYz zXh0JyUYG($mZ7QjNb7?XduL_M7U%p_1Er5{VkdD!F)jrM`Xp_M^~D;ra9D8e_-r zYYwqc5M>Z(2q~P`f~RfwyN@}7IrME`-y6=z1l1wXTY=R1k+^bdJ5xQE zoZF={WY0|WAZB?5_T*5RBcrm43Su1UrhOo$gpW9c2&k@Nt(tW-L*hIkq@Cw$cl@ns zKMkCA!tZ^Bg#RZTYVbTYQrPW7fZykXhyMZ+l;{nBxgpgS2os`t%w8J^Cvk}rzJb~Y z560jP;(NO?`h=fm|7LIgXASDj4BcyAV z089^6dGeu-4&K^C3>@Hty(Ql zB4^DN16KPZWN1k03Tewrpv%(;2~i>x1jq!yHX3Y|0UU^>e$ z?bOgiKMI#Izc<$q1FgjhrV_D~ErI`8Kr9qy&3N{I|KBI3olwWx2_7C*FuX&-&wVL* K$(+0T{{IgvMTR8+ literal 0 HcmV?d00001 diff --git a/docs/megabeast/simulate.rst b/docs/megabeast/simulate.rst index 32e4801..b87b6f5 100644 --- a/docs/megabeast/simulate.rst +++ b/docs/megabeast/simulate.rst @@ -1,11 +1,181 @@ -############################# -Simulations for the MegaBEAST -############################# +########### +Simulations +########### -To test that the MegaBEAST is behaving as expected, it is important to -simulate data and evaluate if the results match the input. +Simulations of observations can be made based on already computed physics and +observation model grids. Uses for such simulations include testing the +sensitivity of a specific set of observations to BEAST model parameters and +testing ensemble fitters like the MegaBEAST. -Simulations should be done with using the BEAST tool to simulate the -fluxes for an ensemble of stars using a BEAST physics+observation model. -Then the BEAST should be used to fit the simulated fluxes and and the -resulting BEAST outputs (especially lnp files) used for testing the MegaBEAST. +Simulations are done using the +`megabeast.simujlate_obs.gen_SimObs_from_sedgrid` function. The +script `tools/simulate_obs.py` provides a command line interface and can be run +using the `mb_simulate_obs` command once the megabeast has been installed. +Simulations require already created BEAST physics and observation model grids. + +The physics model grid includes the ensemble parameters as these are the same as +the BEAST :ref:`beast_priors`. The module uses already created BEAST physics and +observation model grids by sampling the full nD prior function that is part of +the physics model grid. The observation model grid provides the information on +the flux uncertainties and biases as well as the completeness. + +The ensemble parameters can be changed from those in the BEAST physics model grid +using ...to be added... + +The number of observations to simulate can be explicitly specified by using the `nsim` +parameter or calculated from the age and mass prior/ensemble models. +To do the latter, pass the `beastinfo` ASDF file to the `simulate_obs` script. +This is done by +computing the mass formed for each unique age in the physics grid (combination +of age and mass priors) accounting for stars that have already disappeared and +dividing by the average mass (mass prior model). This number of stars is +simulated at each age and then the completeness function is applied to remove +all the simulated stars that would not be observed. + +The `mb_simulate_obs` also can be used to just simulate extra ASTs. This +simulation is replacing generating additional input artificial stars and running +those through a photomtery pipeline. Thus, it is very powerful if you need more +ASTs for generating MATCH-satisfied ASTs in addition to what you already have +from the real ASTs. This means that you can avoid extensive/additional real ASTs +as long as your initial/existing real ASTs properly cover the entire CMD space, +i.e., a combination of BEAST-optimized ASTs supplemented by MATCH-friendly ASTs +should be enough. This simulation provides the information on the flux uncertainties, +biases, and the completeness for the additionally selected model SEDs. + +********* +Toothpick +********* + +The files for the physicsgrid and obsgrid files are required inputs to +the script. The output filename is also required. Note that the extension +of this file will determine the type of file output (e.g. filebase.fits for +a FITS file). +The filter to use for the completeness function is given by the +`--compl_filter` parameter (default=F475W). +Set `compl_filter=max` to use the max completeness value across all the filters. +The SEDs are picked weighted by the product of the grid+prior weights +and the completeness from the noisemodel. The grid+prior weights can be replaced +with either grid, prior, or uniform weights by explicitly setting the `--weight_to_use` +parameter. With the uniform weight, the SEDs are randomly selected from the given +physicsgrid, and this option is only valid when `nsim` is explicitly set and useful +for simulating ASTs. + +.. code-block:: console + + $ mb_simulate_obs -p physicsgrid -n obsgrid -o outfile --nsim 200 --compl_filter=F475W + +There are two optional keyword augments specific to the AST simulations: `--complcut` +and `--magcut`. `--complcut` allows you to exclude model SEDs below the supplied +completeness cut in the `--compl_filter`. Note that the brightest models will be exlcuded +as well because of the rapid drop in completeness at the bright end. `--magcut` allows +you to exclude model SEDs fainter than the supplied magnitude in the `--compl_filter`. + +.. code-block:: console + + $ mb_simulate_obs -p physicsgrid -n obsgrid -o outfile --nsim 100000 --compl_filter=F475W \ + --magcut 30 --weight_to_use uniform + +The output file gives the simulated data in the observed data columns +identified in the physicsgrid file along with all the model parameters +from the physicsgrid file. The simulated observations in each band are given +as `band_flux` in physical units (ergs cm^-2 s^-1 A^-1), +`band_rate` as normalized Vega fluxes (`band_flux`/vega_flux to match how +the observed data are given), and `band_vega` as vega magnitudes with zero and +negative fluxes given as -99.999. +The physicsgrid values without noise/bias are given as `band_input_flux`, +`band_input_rate`, and `band_input_vega`. + +Examples +-------- + +Example for the `metal_small` example for a simulation based on the prior model. +Plot created with `beast plot_cmd`. Prior model has a flat star formation history +with a SFR=1e-5 M_sun/year and a Kroupa IMF. + +.. code-block:: console + + $ mb_simulate_obs -p beast_metal_small_seds.grid.hd5 \ + -n beast_metal_small_noisemodel.grid.hd5 \ + -o sim_475w_prior.fits \ + --beastinfo_list beast_metal_small_beast_info.asdf + +.. image:: images/metal_small_sim_f475w_prior_plot.png + +Example for the `metal_small` example for a simulation based on input number of +stars. Plot created with `beast plot_cmd`. Note that not all 1000 simulated +sources are shown as the simulated sources include those with negative fluxes +that cannot be plotted on a standard CMD. + +.. code-block:: console + + $ mb_simulate_obs -p beast_metal_small_seds.grid.hd5 \ + -n beast_metal_small_noisemodel.grid.hd5 \ + -o sim_475w_nsim.fits \ + --nsim=1000 + +.. image:: images/metal_small_sim_f475w_nsim_plot.png + +High-mass star biased simulations +--------------------------------- + +When creating simulated observations, using the standard IMF mass prior will +skew your catalog to lower-mass stars. If you wish to have similar weights for +stars of all masses, use a flat IMF and a log-flat age prior. To do this, +set the mass prior to `{'name': 'flat'}` and the age prior to +`{'name': 'flat_log'}` in `beast_settings.txt` before creating the model grid. + +********* +Truncheon +********* + +The code does not handle the truncheon model at this point. While this model +is doable in the BEAST, it has not been done yet due to several potentially +complex modeling questions for actually using it that might impact how the model +is implemented. + +******** +Plotting +******** + +To plot a color-magnitude diagram of the simulated observations, a +sample call from the command line may be: + +.. code-block:: console + + $ beast plot_cmd outfile.fits --mag1 F475W --mag2 F814W --mag3 F475W + +where `outfile.fits` may be the output from `simulate_obs`. +`mag1`-`mag2` is the color, and `mag3` the magnitude. If you would like to save +(rather than simply display) the figure, include ``--savefig png`` (or another +preferred file extension), and the figure will be saved as `outfile_plot.png` in +the directory of `outfile.fits`. + +************** +Remove Filters +************** + +.. note:: + This needs to be updated. remove_filters.py in the beast repository. + Maybe move to megabeast or incorporate in to the `beast script` paradigm. + +One use case for simulations is to test the impact of specific filters +on the BEAST results. One solution is to create multiple physics/observation +model grids, create simulations from each set of grids, and then fit the +simulations with the BEAST. A quicker way to do this is to create the +physics/observation grid set with the full set of desired filters, create +the desired simulations, remove filters from the model and simulations as +needed, and then fit with the BEAST. This has the benefit of the simulations +with different filter sets are exactly the same except for the removed filters. + +As an example, to remove the filters F275W and F336W from the simulated +observations contained in 'catfile.fits' and the 'physgrid.hd5'/'obsgrid.hd5' +set of models use the following command. + +.. code-block:: console + + $ python remove_filters.py catfile.fits --physgrid physgrid.hd5 \ + --obsgrid obsgrid.hd5 --outbase outbase --rm_filters F275W F336W + +New physics/observation model grids and simulated observation files are +created as 'outbase_seds.grid.hd5', 'outbase_noisemodel.grid.hd5', and +'outbase_cat.fits'. diff --git a/megabeast/tools/simulate_obs.py b/megabeast/tools/simulate_obs.py index 759b92b..aef353f 100644 --- a/megabeast/tools/simulate_obs.py +++ b/megabeast/tools/simulate_obs.py @@ -2,13 +2,265 @@ import argparse import asdf +from numpy.random import default_rng + +from astropy.table import Table, Column + +from beast.observationmodel.vega import Vega from beast.physicsmodel.grid import SEDGrid +from beast.physicsmodel.priormodel import PriorAgeModel, PriorMassModel +from beast.physicsmodel.grid_weights_stars import compute_bin_boundaries import beast.observationmodel.noisemodel.generic_noisemodel as noisemodel -from beast.observationmodel.observations import gen_SimObs_from_sedgrid +#from beast.observationmodel.observations import gen_SimObs_from_sedgrid from astropy.table import vstack +def gen_SimObs_from_sedgrid( + sedgrid, + sedgrid_noisemodel, + nsim=100, + compl_filter="max", + complcut=None, + magcut=None, + ranseed=None, + vega_fname=None, + weight_to_use="weight", + age_prior_model=None, + mass_prior_model=None, +): + """ + Generate simulated observations using the physics and observation grids. + The priors are sampled as they give the ensemble model for the stellar + and dust distributions (IMF, Av distribution etc.). + The physics model gives the SEDs based on the priors. + The observation model gives the noise, bias, and completeness all of + which are used in simulating the observations. + + Currently written to only work for the toothpick noisemodel. + + Parameters + ---------- + sedgrid: grid.SEDgrid instance + model grid + + sedgrid_noisemodel: beast noisemodel instance + noise model data + + nsim : int + number of observations to simulate + + compl_filter : str + Filter to use for completeness (required for toothpick model). + Set to max to use the max value in all filters. + + complcut : float (defualt=None) + completeness cut for only including model seds above the cut + where the completeness cut ranges between 0 and 1. + + magcut : float (defualt=None) + faint-end magnitude cut for only including model seds brighter + than the given magnitude in compl_filter. + + ranseed : int + used to set the seed to make the results reproducable, + useful for testing + + vega_fname : string + filename for the vega info, useful for testing + + weight_to_use : string (default='weight') + Set to either 'weight' (prior+grid), 'prior_weight', 'grid_weight', + or 'uniform' (this option is valid only when nsim is supplied) to + choose the weighting for SED selection. + + age_prior_model : dict + age prior model in the BEAST dictonary format + + mass_prior_model : dict + mass prior model in the BEAST dictonary format + + Returns + ------- + simtable : astropy Table + table giving the simulated observed fluxes as well as the + physics model parmaeters + """ + n_models, n_filters = sedgrid.seds.shape + flux = sedgrid.seds + + # get the vega fluxes for the filters + _, vega_flux, _ = Vega(source=vega_fname).getFlux(sedgrid.filters) + + # cache the noisemodel values + model_bias = sedgrid_noisemodel["bias"] + model_unc = np.fabs(sedgrid_noisemodel["error"]) + model_compl = sedgrid_noisemodel["completeness"] + + # only use models that have non-zero completeness in all filters + # zero completeness means the observation model is not defined for that filters/flux + # if complcut is provided, only use models above that completeness cut + if complcut is not None: + finalcomplcut = complcut + else: + finalcomplcut = 0.0 + + ast_defined = model_compl > finalcomplcut + sum_ast_defined = np.sum(ast_defined, axis=1) + goodobsmod = sum_ast_defined >= n_filters + + # completeness from toothpick model so n band completeness values + # require only 1 completeness value for each model + # max picked to best "simulate" how the photometry detection is done + if compl_filter.lower() == "max": + model_compl = np.max(model_compl, axis=1) + else: + short_filters = [ + filter.split(sep="_")[-1].upper() for filter in sedgrid.filters + ] + if compl_filter.upper() not in short_filters: + raise NotImplementedError( + "Requested completeness filter not present:" + + compl_filter.upper() + + "\nPossible filters:" + + "\n".join(short_filters) + ) + + filter_k = short_filters.index(compl_filter.upper()) + print("Completeness from %s" % sedgrid.filters[filter_k]) + model_compl = model_compl[:, filter_k] + + # if magcut is provided, only use models brighter than the magnitude cut + # in addition to the non-zero completeness criterion + if magcut is not None: + fluxcut_compl_filter = 10 ** (-0.4 * magcut) * vega_flux[filter_k] + goodobsmod = (goodobsmod) & (flux[:, filter_k] >= fluxcut_compl_filter) + + # initialize the random number generator + rangen = default_rng(ranseed) + + # if the age and mass prior models are given, use them to determine the + # total number of stars to simulate + model_indx = np.arange(n_models) + if (age_prior_model is not None) and (mass_prior_model is not None): + nsim = 0 + # logage_range = [min(sedgrid["logA"]), max(sedgrid["logA"])] + mass_range = [min(sedgrid["M_ini"]), max(sedgrid["M_ini"])] + + # compute the total mass and average mass of a star given the mass_prior_model + nmass = 100 + masspts = np.logspace(np.log10(mass_range[0]), np.log10(mass_range[1]), nmass) + mass_prior = PriorMassModel(mass_prior_model) + massprior = mass_prior(masspts) + totmass = np.trapz(massprior, masspts) + avemass = np.trapz(masspts * massprior, masspts) / totmass + + # compute the mass of the remaining stars at each age and + # simulate the stars assuming everything is complete + gridweights = sedgrid[weight_to_use] + gridweights = gridweights / np.sum(gridweights) + + grid_ages = np.unique(sedgrid["logA"]) + age_prior = PriorAgeModel(age_prior_model) + ageprior = age_prior(grid_ages) + bin_boundaries = compute_bin_boundaries(grid_ages) + bin_widths = np.diff(10 ** (bin_boundaries)) + totsim_indx = np.array([], dtype=int) + for cage, cwidth, cprior in zip(grid_ages, bin_widths, ageprior): + gmods = sedgrid["logA"] == cage + cur_mass_range = [ + min(sedgrid["M_ini"][gmods]), + max(sedgrid["M_ini"][gmods]), + ] + gmass = (masspts >= cur_mass_range[0]) & (masspts <= cur_mass_range[1]) + curmasspts = masspts[gmass] + curmassprior = massprior[gmass] + totcurmass = np.trapz(curmassprior, curmasspts) + + # compute the mass remaining at each age -> this is the mass to simulate + simmass = cprior * cwidth * totcurmass / totmass + nsim_curage = int(round(simmass / avemass)) + + # simluate the stars at the current age + curweights = gridweights[gmods] + if np.sum(curweights) > 0: + curweights /= np.sum(curweights) + cursim_indx = rangen.choice( + model_indx[gmods], size=nsim_curage, p=curweights + ) + + totsim_indx = np.concatenate((totsim_indx, cursim_indx)) + + nsim += nsim_curage + # totsimcurmass = np.sum(sedgrid["M_ini"][cursim_indx]) + # print(cage, totcurmass / totmass, simmass, totsimcurmass, nsim_curage) + + totsimmass = np.sum(sedgrid["M_ini"][totsim_indx]) + print(f"number total simulated stars = {nsim}; mass = {totsimmass}") + compl_choice = rangen.random(nsim) + compl_indx = model_compl[totsim_indx] >= compl_choice + sim_indx = totsim_indx[compl_indx] + totcompsimmass = np.sum(sedgrid["M_ini"][sim_indx]) + print(f"number of simulated stars w/ completeness = {len(sim_indx)}; mass = {totcompsimmass}") + + else: # total number of stars to simulate set by command line input + + if weight_to_use == "uniform": + # sample to get the indices of the picked models + sim_indx = rangen.choice(model_indx[goodobsmod], nsim) + + else: + gridweights = sedgrid[weight_to_use][goodobsmod] * model_compl[goodobsmod] + gridweights = gridweights / np.sum(gridweights) + + # sample to get the indexes of the picked models + sim_indx = rangen.choice(model_indx[goodobsmod], size=nsim, p=gridweights) + + print(f"number of simulated stars = {nsim}") + + # setup the output table + ot = Table() + qnames = list(sedgrid.keys()) + # simulated data + for k, filter in enumerate(sedgrid.filters): + simflux_wbias = flux[sim_indx, k] + model_bias[sim_indx, k] + + simflux = rangen.normal(loc=simflux_wbias, scale=model_unc[sim_indx, k]) + + bname = filter.split(sep="_")[-1].upper() + fluxname = f"{bname}_FLUX" + colname = f"{bname}_RATE" + magname = f"{bname}_VEGA" + ot[fluxname] = Column(simflux) + ot[colname] = Column(ot[fluxname] / vega_flux[k]) + pindxs = ot[colname] > 0.0 + nindxs = ot[colname] <= 0.0 + ot[magname] = Column(ot[colname]) + ot[magname][pindxs] = -2.5 * np.log10(ot[colname][pindxs]) + ot[magname][nindxs] = 99.999 + + # add in the physical model values in a form similar to + # the output simulated (physics+obs models) values + # useful if using the simulated data to interpolate ASTs + # (e.g. for MATCH) + fluxname = f"{bname}_INPUT_FLUX" + ratename = f"{bname}_INPUT_RATE" + magname = f"{bname}_INPUT_VEGA" + ot[fluxname] = Column(flux[sim_indx, k]) + ot[ratename] = Column(ot[fluxname] / vega_flux[k]) + pindxs = ot[ratename] > 0.0 + nindxs = ot[ratename] <= 0.0 + ot[magname] = Column(ot[ratename]) + ot[magname][pindxs] = -2.5 * np.log10(ot[ratename][pindxs]) + ot[magname][nindxs] = 99.999 + + # model parmaeters + for qname in qnames: + ot[qname] = Column(sedgrid[qname][sim_indx]) + + return ot + + def simulate_obs( physgrid_list, noise_model_list,