From bf3f98923413c885620c26ab59cc330d189c9f8a Mon Sep 17 00:00:00 2001 From: pohaoc2 Date: Thu, 28 Nov 2024 00:48:30 +0000 Subject: [PATCH] use vanilla ABC GP MCMC to find posterior --- sandbox/figures/abc_posterior.png | Bin 0 -> 24217 bytes sandbox/figures/bayesian_inference.png | Bin 0 -> 53359 bytes sandbox/figures/density_estimation.png | Bin 0 -> 52400 bytes sandbox/{ => figures}/mdn_results.png | Bin sandbox/figures/y_sims.png | Bin 0 -> 18697 bytes sandbox/src/activity_predictions.csv | 126 +++++++++++++++++++++++++ sandbox/src/approximate_bayesian.py | 70 ++++++++++++++ sandbox/src/bayesian.py | 41 ++++++++ sandbox/src/gp.py | 85 +++++++++++++++++ sandbox/src/mcmc.py | 91 ++++++++++++++++++ sandbox/{ => src}/mdn.py | 0 sandbox/src/posterior_samples_mcmc.csv | 11 +++ sandbox/src/test_predictions.csv | 126 +++++++++++++++++++++++++ 13 files changed, 550 insertions(+) create mode 100644 sandbox/figures/abc_posterior.png create mode 100644 sandbox/figures/bayesian_inference.png create mode 100644 sandbox/figures/density_estimation.png rename sandbox/{ => figures}/mdn_results.png (100%) create mode 100644 sandbox/figures/y_sims.png create mode 100644 sandbox/src/activity_predictions.csv create mode 100644 sandbox/src/approximate_bayesian.py create mode 100644 sandbox/src/bayesian.py create mode 100644 sandbox/src/gp.py create mode 100644 sandbox/src/mcmc.py rename sandbox/{ => src}/mdn.py (100%) create mode 100644 sandbox/src/posterior_samples_mcmc.csv create mode 100644 sandbox/src/test_predictions.csv diff --git a/sandbox/figures/abc_posterior.png b/sandbox/figures/abc_posterior.png new file mode 100644 index 0000000000000000000000000000000000000000..396cb7a02a63a781d60c022860acac6a3dcccdb2 GIT binary patch literal 24217 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�$aL+R_X@TVJ2qC6 zp_)I_n|T$fpEN@DD8enb5*!-yO}k1gyXsJgEZ}(NzvtkJZ(qE4aRyVwd6nOC0vYjY z?-QrQ8Y{MjTfC0;v?DmR+aHjK8elv#J6^rMIWzB^xiuV2BRtddgZ%mTXSz@jQ_|Ab zx@0(?W~vps*XKL0=>7cp(;Sy7kab=Bc+wBQ`16S;I=D2YR~VFAWxx2_p-&omKiAhc z{0S_XT$JFUvx`gr+^N&2)u6QIigaxBs#~d|TE=R9?A(JhFxsxOOy_i5w#R%dFkRi< z?0lwwawyK9Znyi}mVM%HqUvs~u{TOZYdOQ(7re|;8f$PBU57!^CB_t$7ydfYNK*x)? zbd4`9S(VIwjWx#*uDUgCdl;4Xs!kSpXj%z#_y+bB!1^E~At7n``R-h{suQ*$sH7L_ zOF@C<&_LE#uD26rmn?=6;fC_+szci_ol|6x`^zPhH>G%NbzPxe+}f^b@5`FP9x znhNaG^nfzhr*xj%*KfVZ$k|gZwNJP3+F6}ct@0FQQAl9xn)X<(A+UIv+$jZ>E?0$3 zWVssOv12Gl_W?1DkO3ybVbC0!)O3410~=f5>SPPX0iQiklFsALq7CdbL8nD(8yg!` zlq~a$ER7}@pl@0grI}hPDk{NPZ@WCZX?ZrXb1Fl7PX?Y!Nm~Y&A_U*2s;zv#L7XkGjm&&F;*a@rV>ODj^ zHP|Zty<@-~ty1YO2t)VTa;OxItEs6Obm-HB{qw%KxcL5&R@R}%gBpyoF2+W;uAyNZ zhqLG-D!Yx`u5IeSyCSO3t;2vj*Sw$m{dvm!uoKK3V6)0D4Oe7S$~5fpr)?<~Sq^Y$w&%axnYe&x=)y?AHwz^Fa$Iu}>yd!nm`n7(2g z{Z>OBxK=VWqj$R%6TD_F_x_C)bh!Xu-!r@Gv$cs{htb&ik8~?5E6+03dMq)>lAUwa zZp>J!sH>Cs`0*puB~LV#>W=xZk4!SFf%PLJbU9jEJ%(*D^^+};enCN#3DBIg%zlNy z5+&TzVr}jdzIJUirtj$=+(U_!Z!<_2aV;A06!sye8Gl0}mIQ#V9101q#lU*$V%7=4 z_SINSYnAHJU-$i$Mi*RRU-7{vX6JBkNfjm^mUNP0>f@-kDf*Dvx#=pcqr*K;=o=}I zf~XuZVPRqYg=UesVEfd^pQIENIvmq@9w2+>>~4Wccd_*tUKoo)d+y@9bL7h#8--;p zQ&ROk@3WNUvnBsC7Dx+Yl8N{b9xefh%c6pvaD00Os{woHZ=}L4|2|UxsS0um3Mp&r z+i+(qvMPHz%ZiPKS zDeTAw&3g*q!DwNhR=xwBW8LlmrRV;NB;X0LGSysohZ5(NFPatOzUhF5ph(z36*S+o z9f$~nMm4eBxDqF5CnYaG1;zJNj)RxD`?huP&@W7(S>u<70lvY(Q@ElL!`3LSlB^MT z*jli>F z)9~Yo+4`$)M94Z^DTVSDgLTP95XIrVUymyFj@4V=aEsD69Q3I%O$N=qqIvL+&$6}R z!^1CQ(1Diy!Q1-3jd=~rTGna^=nTr#pHp*D20i*&TdP`Z{dtI@6Q6*1V$X6Jx@Ai= zkI}-%AReQ3q}#i0En39BECsxWG9M^lZCon=0G!|7s_8WJ4&d0);nI<NR+Ks=&!8h@(!?u_12IRxmn=D9U&^X*w$hj3?FV_VR5KT6>Y9s+0Ny; z@9gg3Q3C4)wnrOUJWaR}>N(ujX10q7=z%51aqbT*8JmiZ@{-!pyZuUK+wnPEZ|Kn@ zU#b4D!U&>g*DMW(=`g?y!_%uPFF?ob&U+~XrA?*8mI(ksL77tbSGlVwc+JBQ;l*Nn zXhNrnsa4okh$(J+b5?G@2DluB--gFMuGAQ$JE z!~Bj8mb`$91zKRxlP=~kCQwK|Lk~R3uKlc`?B0kuzm zviZ}X*U>?L`zNl$HGnR9fH+Eq9}bnf@Jx3k8ZD33IAYF~wyNoBR=V$$4*dR+UD@n^ z<N%LT`k|qC)qF!>oIinxS~O~REHVAqM`wT0xlKWMAWR`-en*kF7b>K;vqXikent?LE*})Hl+F9<~dFpe_^{oKpW9H`m zn59|9?YN)<@MLH74TtOW zOG^5QM4OiQ25lN?M79R)&eI5mvm`jbhN=jA4OkV?0<&>huiN#irB87Jc|&B6Y&>WK zd^P0GBB=Qii+roi9_-uV`K&Sur~yD-jSlyBqS_1rgKYypqTn$M%(R4BJMe7F>o;%Cc?5SROWGaoyC9DT1nf?kFq(47OhG~6 z=8FuewW+pfF%KbNEoixzi04{~_>^Z|@9DvW<-&?%Q%46vXJVF*lL9c|yfYao=rH%J z@}j*rFwK1ZM&eczmA>g*-(NlF$=beNr>Cz5Nb|SE&L|jbz$2R|7H^c` z^8W4HljY^*SuX7|ksMEpEH$C$n--aqR|8T-BnQ}fSU;A8Un|>C#(>GX9PUiJtTwTn zbG(--;pxfQo@3B-@$`9$Y8bT#@XGNt@|EFrQP2;~J1Oi*L%DCTvNkQQz{9EL8Jq<| z)3R0!wf+ep5qG9(op=w|{p}T`N%kA+CEV7<`~3N{VAfM4QI z^8+~wzW8Y-;y+iXIlj7pK-AOZN63RiL2eGDMd*{ZF=(25bqS9#MgcOJ;{NZ#{Xf)etA*@(~D_kns6q z@zRDAfjIyO+KC^)KTmD%?cw+G>)yTV9hS^0WMX2%rd=5aBw!3a3)U%@mDDduKKt|3HpM^s7$Wn|Gtj=sGTO&?wkYo6c z5)KHxuCC5{WxU?Khlr4H98g5ejmQ3<24d{OIkgj#lCD)uF}*z&ZbKEB83ds<-2@HH zX;2o4K`9v|IyVlk@VGJMlpS(t9K+zuny}GSd zx?-wXFMn)X%Ga*|pfgjXksD!mwzpB%K(W5R$o#&z$mBgtiOgB5R6~><&@&cEditzu z*!)qowWq#j|G6HaNqM@jx7fMIRG>-y`*7TaV)*ZK?%%iQIduPgdwQOdyUr2=@|kZ@ z5&u&88Zk`XPo3LP`IncMlR$?=Bq31U^zX#tg3l2V75234t~Fe>5?J<^kRW{Y@1n&i z3gQRhWlNQ@(8iV%kM;??#XNScp|b{43;u*P4XaXEL2QQ+|MdB5qM}2K+f89CcJR+- zi9n_YDI@9WKXR%W${};8(GESxWi~Z(dlO?tDP;f6qAW6!{NBBLsJCz50?FsM#s=|s zB}^WIvuO-&9BiG*O{3yhWHnBaxaf4%HF$|W1>{~gA+PFg2umnyI~1G>rU7A?I{BS z7K(5s(+SvjdCtnnfsTFI}D>I{pXy(X%R-o zw{%|np@3un^w33cX!=)G9r1-=D%|)HQ4aG0fCRKJ!u5T6`u6`m!mrfWl6rGy4vt{h zE9Wh;8?YV2dVVN(Lq`LEC1+s3h+<`BgIS0epeypZ)S5Tp|T==6D+^{(M&M9xi<78W+)7Wq@&-e?R?KHJNd>?;^ko25NrHh%0iZe2HbrDCc|}F~i%hC`VJE|eKuS=j{+%bDn0i64_sib-qq;*+5{4G0z~MJTiNA$ zKdw?yHLuThuQ?2ZhPL+e9H$O1RRF84fY+gj(})NEi4!M~%1A)#>RO8SzVj4&T4pFn>Ao}RmkLh9*&nS^&oFi7i;OfX(9Mx=k%8t@%jnO;Y+#NJ&VSn+|9E? z(vcUjzdt_!;V1@p^%_Xe`400hdNb72n_uWso)n9OlA@ z6hHv|rjkp4czAe9Yy|qEfb;UTqG4AvE{WJ#Aen}M^fOd)UqfM9gUYx3iy>sfr4`mp=~Q*!m` z%O{9PJ39;L>gr}_S0()VCFQs{*aVWYxx+XXI}0OHXxgI((g=t(r@g$qkX@{%7Lz#) zUvWM<*a}#?SpVvHsEUiJjEYvOzn59p;#D^rDsb&Za7u5UZ+*dEUmL<{xf`ynUZsP% zv%0mHel@>Wcg6p5FVqr{1&siNA)W@W9IWf-*looT<)_ATbzpi?Wu4Sg1G=38HR@VuiV5`sW5nQ+mov>1hdHz!mEY zoP$K-P}JmHdb@#t#lakm2G!~lz_tL4mi8Ow8tMd;A-=& z?By{Zx{on2F<7nua?Xa@+BdL7K7gpym8B_c*dEse4^;=m81*;bhy)>es}oJU=6^qY zm5W^kv6&QhnpqkOXuAPS5VeSN&Xa7PVzT4P!Eud)DVRYk;P2>>HvKJPy?Z;0)KVhe z%4#Ac4}+?^!vjyLC>?Ql&Ik|%To3X3Npza5FurvuDAVbONNc)C&K!rkB8Sj~ngk&h z3Ks(EkXN*wY@SqMF&m$qnmVrHfJdYGt!RI|$kYQ6z2jNAzHSfW`xBApH*px%B1;;0 zp&XnbLi!L}p&{sMKX6uR!5*o-F7G5fU02*q4 zslzQ;Q!hbtSr{tgAK{ud1a1ew<_+v3%wpd36kIF?==3Si;680H8fe8LUffwu0Q8|w z4KKQYyn%Rpu%iSMyx@NU8Isb{T4H*k=fnD{hiN0Ew$jpa!|_!f9lD9_&M<5)^w)y* zb*5T|v%;WE{|Gpb)|x9%hI&!(R9mc4rWzjx4KVx?n6EGbc7fNKm`(xb8XV*nZ}D(< zN11UFc*7(rf-5Grx4;8?TKe&0WDO-lwRhC!1s5a$ZoM*{=tb6cj!`~U6=@%FGa<=d zx9z%R$re=a+NK(mc}#a(8qR2UklHs1^=@Pf$<25)-lSrzyo;^#S>f+#Kd3v6KjL`k zJxA{NRD4R|W+UBXdljwzCi~nXN7iihD}2!EK}<9*s(^W8WKkcv8X~$$0a`q>_s~fb z;5p^Hb3a6OXOi95J0*8qD?#_?&@8P3>+zd%HZ2O2Wi&1XB(Hv>#8kjEs6W}-;(d07 z=KUWd*wqJUt6%}MspNPAm*lb>6u@l4L~;TBM}bHwIP9^d2?e9byf3Z?{A%1sq~)xF z==--P9qQ+!WKyV9;3lq?FG3|ytZ>~BnV*lksoD_q3|Vhp%TBdPcNys+}PqOwCvoQEp6HLan5rS9A0qY^lLb4zUCE= z^R((@9OJSq-lrdq@E4@Da$FnDSFbb}4`E-HtB~-)*UlGPpmpq>Q)laA%(5CNHIY^4 zXU8}O)ayAp?Yjs zGH4EG1uW_V(+A26^kZf&E>dmn5wnCM7`Z?yK7UxN-T6ieuoFr^?mbIPjMkErI7uS5 zeGSnbfvF8TVl2=Sho&G+%f|5ffll{HDNQ~!AwgbIQ4uXXL)k>9;)V}Q)&?+~2zCL` zK96B*j%a(P(>+fnCZ>J|tB!1th!k`6+7tPhnm_|a@B%c;Jj^iAeQ@zi-87Ik6>pRT zLVjy3e+Z&I$VPd08c!fl0f-2?Yz~wX#4thn11!_iVNG@5Im#U!9`qO6B;$gGRhBBt zni>6VJ^s`~)~4@}>M28MQMxPDD zBG^yAxsG{D1B@B$$BWd|fgpM#lEFw-6$L#xY3Mi*)EpHyl`Prq7isP^Q$*2?=|^#2 zT2e{UW8H6gepMSRpSRl&p(7Zz{8)}oHvv6i0)B7pQ^M?+1+RLq!}FI z{=5(F2Y2i^9k}&h9VGH@jtu#2wG6_Tb+rJ?N7A?(e{{-fX7g>dE?_l04Wi)h1=F5laNphc-2~KrK>FvgMgj30=MnA&@OY#9J=5G z&#w*5&3@r;D9B=eJy>(~>Is3_8F!^L@#!~5X)FWpuf7=eB%U5tt_z zZfa@*%<%ylH~IF)g}!8t#rhfeE(4hRU>|gSen9XQ@E>A`0255mG(@xlo(_=*0E6;z zu|f_v0Sk-4YbOKFD&HOtK%z(BTweKJ_R-f@V7O&Sn|aRqauHuiP@1qaA3^ux>JMId=kO|g27w8E99~t26Ycbn)9<}~&Tt-WzREv3 zqw^eeTq})J6zt5d2Ww zBWWwJeaJwd&ILjOus~mC5lFd|j0_f(2_5i`kVrynoM88&1^^ChYcvlM`vC{x5+!95 z=ptv&sI-iXKIBRQDY$<2;*Zw(U4op>8`#5f z0NgH7Q2fFt5dqEZB$ZQF;t;? zH0qi#zp8<>E zHnHzT^+pi}sdmrYL%DZxbX(1v^?7L0KgJ$Rj*AUtb zX6lVf@|y%;?oL5%`U9!Ej;wad`7mwK@Fb`%`|I5b2rUHl4`~XBCO8Z?yNpkLEKY z+uOt?JIwbUXFLc%tk3~gT+(m{U}i%I9r!3~bih5^!H`fXcecs0JFfv*4+D^MLFW~6 zT=*rrHCPKz9WCOLmnpBOM-LBNc-0UAQLdW{(olPLwy`0|eH27i-dcEpHo6U7*567G zVW@>EkTFB#Z(!VIpNSDo9=f(u<&@TiKBF8BQ2|MR2~$%<4&H~0I1c?;0+X2o0)`fY zQtuT)smakKT2P#WF=m8c@TVMy6A6dWD>|2|Pwfg$}$BT0Cp85iBfu08rB4BTW zz0)PUP+jz!J~FM(_i^?yJ(2K#JrHyGPh+h3RQ-q+qp88=w(oaZ@)sFGyuI|;vOUzv zv)3hB7Z=M#^a!{nsU}?pUAE#SUMwh-?>$8Ts0Bw=;H!oCYXr=36FpY7%e+jXi&L-m zUR69vYj@C0EKZo1Fu-Vb?5}6FEYaAriY9n$s)A}~es-!e(GIaU3qfhiXUHU$e5He+sK)kDPFKcw~d7| z^%nkeYn`w8O2AJ#5xMvF-s0kKvuTX8W^^4+YH3*Go60#SrD0s=O(F`<6$N6q!~5M6 zKGmY4jjm^3Jy+>jJ-ch}a>>b#YN{!W%VXc>dbYgAbI9F5;48mBF59w~a?6xEIJC>^ z=i9SDEZ+c3!Wg&)ZyyMM$vgl#NM!x@16b+VvIW!N;H*>~9fUwHpLVS<%%=p857d<* z3Fo9LBaP6D_T)B@vRtg#(h}R52-9dhf29GorR_p+AqX9c{X~XPy4s2FHJ>TuD~XVc zytA@9)@KnSyyKv^wiJtF-YZc%l3%e;)Q|TYm{@E-RJTf%tbbilctJ-xfloGG{ln%5 zPFg>|<;lp5xvqB;^!rYdaUEdi0-A#goZm*D5DCfxx&E{9$Ag1|&I`GXz9At58PaO5 zuBEs~@;0~H(T*LWTPT4AwYW@hQlS`J>zJ35lVf6K^%FnbezR`B$7x;28$18>wU+En zEootFz!7%D%IoRt<4Vho_#m)KPtVQr z#xEcs8ImgNz?Ysm=p)?)-W<#YrJ>+dmGn$$PlP#{Xv@_GZrJTNZ7OgVHvSO_v-AGN zk&O)vKUrP+Xe(4Bm;UKfQLbphzFv8kjFPU zjd+$lnI`WGkBe)~)o+9j(V|T51O^$%c`I96RfbnTb;G;uf0c$J?+{Q!0=T#>lUg0p-X58SXR$N(bm z1zzBV%aUJ45u4{r8cvRlJ-rzg(B-N*?)s;fk)LaY>->?4 zfS*Zk*+qt!U>&tYlVZv&u3_%$uNIHoQQrNd4XY6yUGGJsWNA~<$jdWnR=|*0Ww=eL zs50gyF3P!Ya5b_r&*Ws${+d|ASH{3ZPydyA@_SC5GDKlbZ)Q-~3}gJ;koScqgYpJT z2+{@ldmv1UfTRh*g!7pn_7DN z-yekJ{ds03A9ncAZRcBBO5Vss+V|sw1kyJXfO903ZU>BVdng(Uo1<5Qy z0Meu{iw2k~e8ZFoj#Q8@4>nJ4^Xw|1?(aX?9z)YD+ja~GuwD%~b+{#tshwm`XiBy{ zd?su4IOJTk*{@aqh(ANuFNSS(IU`H`^tD#J#Y)agWmwVuje5&g7JolpN0k zS0Vcu9ZV6xD3Ly6NZ47TCplnrpcgWO$PSegQhL$=?EP6?NlBZsHyZoa7DtxwMorcy z(lB0MVzdj*s2v_YySy+=RDGC~MV&qPT}to!r>@A}NNrTL-fhz7W5gecddt?y_f2au zi_~r<2;z@;C^L4jf=cl&4Kbcl&J>(8Xa;en-qYP<*@V;ODe+^ewf-_GwAtZTFW${kaSUCi?7F!{@z@ zG*dd*;jvC7|9h-=&(GibyLyk#!=TLWzzxe4HRSL4NK@PHwkBtLo~YKPZHlv&EHygb zjroJQ5M817vJCxl$7xZcIg)c};kJZ?|2xDO3%y_Z!Twbc%N?@AlThaRje7IaSj?!z zpYgt$OtM_H{&{if#I>OhzgV+JGKC)ndf$AWF-hn3HjE{J{dA}qoOXB?e5)G_C#p9! z)zD-qx%5r~WN7Kz32zOMl1_F&d_cn4{wp2aMi^>Zt0RHz;nka-37)5fYZSz5-ks}R z^(EEVOjldKXV^L0Wv@8I(IvL%aPupFk>&d4dr8_?%G&SN?YFn}qj=L*uotFXCPEi5 zY-IT9>0-{VR5zriL-wQi<_8=In;RPm=;#u^h_5(2mXoXR?(Xi_1&=8WB1SNkIlI41 z#W1^+h5^z2>PB{~JBl?5tFvj*lX2W>^ivk;5{YY72F%l{i5OgS;>moYH%-qLasg}h zIMp8kelB%d3I@p=yca}$2Aw?Db;I;g2yGjj;p|5;GGz#lyn7b~uyh=%0g_wyF1&RBD!594F)1L$TD{!gAWj0D zKy8Cw;tYBw5)tV~TUjV&EYYIE`TL`9F1w73yG!w>aU)fUKt&Pi-Z|S$uCMK} zafQ#U*8mhBM7?u|*zr0J(--lZAK-qWSzn$2R@C+(;8W0!1fO$H*`O>dHeQqofie3P z=67MBFaWw*KUy3H6NvX!Z^SYL%{>g*mypxq`D);Q)gb+>dFD!_{ON?O3u!2xK%#v@ zoI8^P=4yqIU&`Q=@v z28i@1pax*+gPG}~72q2#cI<=`>U7OXYe=Ex7aXku+)U^`9)xU~spXy2)61BAh5y-f zMV>hFlDHE4xDxh+O0m)PA0gSV_Lhnkd82jOseKw5@t$O92!aN%;CcVPE!}-2;Rkk{ zG-#Bng{D`4+v?W5K1Cd`VG2gZ#Qx6l=0j||jrl(O-ZGr3i?abodQ>hiwg;27NXAK@ zns{6W-3L4j`ROe7&!DtPw7;%LDHdOPS#cG*qds>q zLJAVu$WbF;5wLxQsKq_wz*rb)c;)l{{Y5%Dg=fz$LvXYX;y)m|^8o3lb)C5mEAt)H zJH#de%mPjz#jyYZ2UYw)J>~*c1UVxG`ig~9sh!g2`=?-`)PY1H3(?`u&Q7Fq)E^4@ zO3i*gF26h0f|J~P?Ku2vb>eT2>~|H$Mrnn80CEs+aNRX1nU43L(z8;KQVLtN9 zFcoRuEN)3qh`aDf>JT!lAkH>I5j24;8WOFBH8=?z@pKX>uJ z0KACewhjvTW1U_ul1)=5UxQ2VK!JpU^$3W)Utr(_M0(NesS#HpC5(t8cdUkGfgK|P zA(9^S-+Fikn#X>r=qc*|vcYcQ2NDvDiGxFfCD}b5?_}C*N*7%o*$yZBXxc8y z;y9}GZdnmKhmBATo$@Xd4B8~9bbO&gFTVkD1YGUN8j399!h+q_2>Ji%g&c{La3v&6 zHGV_2Ppl(~Yv|N7`Lb8PQ*=>`l=|B_52k4LfBCP z7TclYSbTmIq_syA{Shh(0_)tS-1e4{&yDdXBVI=p`429Ha!VZtjch^UcQ)-;DoE&w zAr%h>=QV4YW$(~U>TzDgQt3H&cYo$z^om>+l$xAvdUdlN1!em;&8`Ncaq|UMS!;L@ zHer2m+%_l1ix{d_wpOZ6{Bv%~A zud;8)D8^Gn!+z~Q4zw|nXCLguWbTh}9M!iy`Q>%TY3aSge8%Kd+h@60dfzN(CfDaW zX5R|0R(h?fs!4D<+Da%sQTrw-aX0Z4Q_yi8qTct|w|YUNb?UB4{cTGtSGO^RJ5H8{ za73U+r?_&I`dU2WFpgSc;8WFQp~d+5KhBIt+!5ZgvaYcZ#yw^^wkX2*Mt61sof~4uZv$Hwhi&S3bK90_PjEl=COh-7SU_`whatZ?yR7&vG zz=r#W!py{}2tJ*-DXiy|B6fqN@t|YH?g2$>YKEt&heWi`1trN#zo#fzD1s|U&z=G8toHL zhRZ~@iYlv?S%mFQd+yY$5fi=^^YFiRztQ-L_$#Sw@e@(DN~i~0b)>esEQKBB4mc=4uq@vT696j_Z+eSeF+2)XLj5%IyY=M@KEG=wrRfX)v z$GqY@=k=v6R=1JZtVD^$_-~Feo_*43>8r!;qxryTIC$p|EN|df(pG=3 z{Q;I#pHm)ZrFROWnahOK4dumMeEW;yc0{l_@Be7I#A99bs%MQ2%SfP@oW1p9Fd0v)s<>K zx|t3^+rfKN7yIX2GX3Bw6yMqtz`AZOSB*8)t#R$!??i{_+21m-C0=f%%W*3z94x%W zYoT_MwDi5*35UOk)s-Z(_swnBYWg%I{CG2R%s!Nxok{dvKLjF2$EIoyGPCXO7iEOi zetKOtt*nl*zD$XavK-{^NQYyIzTtO}wU;8hXVVuFCns{QdYQR4T`kLWOo8kYzW9Lw zyK*{S(J*quVCN$JR^vh+R|P78`EwQ|o@soYK)d`uAal&xEjF+onkn)X7d0>3??ZQg z;8XwTQWYH}zL(rNrnIZJ{;C`j5i951&Q5iZTaS<=7Zhd#tf}|_@!P{yG5SUMn}5|% zF)vIWN2+NOdgayCwKk0n4(SdS)BFA|qPQ-EdW&JBICO zv9CCAN_iM|%3Z7%;|fLePX7636W>{qu=@4%+mv;bju+E5`(>E)M|brC?eLLh#e^&? zsc3tE4BCs^7rkw1CyR?FE8dAm_n!x&U}szWsHA;HLmB(F)o;lVLYDOsd-&RdT=ekJ zUH=|hx)B@PU2Ln5S~RgCIiYppop}H2Q#oE$g@YBs1(upHWM6+z)NDt+MydQgBfqOX zJ7t-xft3O^q~tifqsYvc)fGiVVxhB_jB&|YvwJ5V+J8Qb`K1`G_+hEO-Aha7-#1oH zpkys?r(O9YQ1vEe8ZF2NYD#F=-LtM-dvLJeED=#XcyXlpHRcf)7}y$8QNbsc z1g9AcH_nAQhzAh9snOYj5}G((c^=07hf5(yE>F^yS)#=04iEa&7Jr{`-QtL;)=){V zBe0k($*g|O9Ds}zA)?$MMmE?)2xkJm^!a5=1Y+aC<)&4tkfYfnM+bDk(DZ?o2f~3R zke`rbMVYI|?)n&TIdmcz{SBm%U>Yj(#Ewly^3W;7ob2Q2)Hpk4MOY|D=9F|XBmESP z*gYs#u&pT+`ggcFa$jJv&NH8VC`4U(5zr0D3l1rByKOE|&pXZc27%Px1;z-7R*hi_ zV$z^vspK05X^L`kazg6FTpW&2S=UX%#R${CK06dU}2PFOhQm8 z5^8yqvPB)#e;wu?K83=*K5iY(YvlK#T*`4e#zf5OK1-`G(tc#$3ol& zmLq7@EO3$mq9AjuFRAq>9aC3l6SbaJe_F6pJo$cL+|6Z(eWbfj211c;jYH<;R71* zI6=M7LL}p7SsIkkLCwuGkN|}WEF)Xdc9?v~*`i=7>LJP<&Hd7!{a%$Cc){r!CETDm z{NlQo2!~2wYab6Z61E1TkMx2yjoD#oR6zmniwu=}VAQR^5^@w!^iR+HWUkaFUmr;6 z?Sm0-t&Sxi+h;W7X&A1sDYNaXS)B+Q1XZC=;D%R%>&<*~-mjg>jf7vmxax72II8dU zl`-qPdp4MRSHDwNSzOUY3w48a&e25opW#mk94;Ief>_2Ska-~{@Br8s9Qi#_ZGPtx zMDXB{{;CIUe!qF&!voXC5V~pL{}9feE*@!tGvA!q<`_{Ck;jt+`X&_|Hln6xOd)WH zYmFumLo5Dws^;eb@rWCV=h2W_7UXMWICa^+pg$xec*HhM+;c6RM;8iUuhTzB>B1{eyrTKR-4NDF)XL zi-(#PEW60ursP$PgJ!Nf3wAOUh>UP-PZy%=U||3L{`?j_1B1n-#)p!U*r|ve8fo}7 z5RlB61j!l_#J|A2ZtE8IhnF>*Ce5-QWlnffZ>ZKap|&%L3r3EZ&J9!q*R$_U zq(bNWD9kid53-z1iKB^jg=^su7EIz#@Q1I@4i1^*z%RAY9#$LMB|6Hk}3`x7+ zKkm#oLPQjo^@Cm6v9hT=sAp9ozAFl+r}qA;VoBf-9CSN}2ScUH2U}Fn;vZ&CoN$i9 zm$D1MrZp^gX7^ey{?lR}=_3&1&n=@Yd6jWZiZ-!73gs+b1gdQIe~*|7EMlYMeBM?! zfBMj9O8qiac=(T8DUr7`=XUCe0--$A(jS?BFwNi?rlo347F;c!99JH^dR3+^T+F3+ zLrP)%{R8pk!48^|qawGl@rU!l%yK$yRNs_*nxR z&E+^+_E!*+^R9Sa|E$U38loOE&Q#}!$HpFE|zei zE|y;s+db19>GXJ?>7MnRTsTk9wHoKRU$+IY=WrzMwc0`chC$BIpYx7S>4ZN%^vkvH z-=pNG-hD+ieON;z^Qyz9T+hz5)r06XG28nyGUWJ{Z<&VM#1E}LTE1P1{TUThMf$| zMKx?+m9xVioQnUfXqu1eVbH}yfKO||iqhS7Gt9#?thiBkIYmpuu-xh&HCt-$o_0#qm# zL5PPUw<=rUKK8^-Z85y+&);dbGaCD%h6V-abKePUy+NH!bFA&7o~XOqLJO)RN9oe3 zjF!x3qUxg30GJtD_G1t(Vd}OltVXAL=5Dz%lNj;QEBj<}6oChKqe!0&)mY$iGq07* zL(`OXyiwmg@0uC3_ra+caIQkHexHwH@Q@PgTXBRC26;?YW`O zlQB4a^burg$m5tNXBgqb-(2#c5so8=b2d_Ek41&Yafj;6*hF_S?=}a^mu5ri79g}_ zunZsEKwW1YbB?_wjQlXK%WX?C1(c^T9y9)JuS&Z&F#a|+{~kWw(S~!#(evb8|1!=I zC)W;3FF_@ufjYS_?rIDUR!;N^GS~RR_V6xXNxXWG!TT@1W3qDb<#NMOt+6zLj!Vmm z1{=9v(Fmk!?yPXyV4^kuC{WD?UYPWEZBi{Q;jbU4_c-#LJ_Sr?eEb-|H^Ct&3*w`b z)l7+|Y*s6>SA$wfasNo3AEe^9C z>U7%4IEp}x0H690HP(X@0!qZ5=N=9rIqlVd!}9(O!B`{RiTR;5@fZ=kB21v4g{PHm zXK^28r!>bLQ&6?>%2e;ASK$h$d$WD8jqx-QK&oUE5k|>Wdvs`|E-CzdM=7ObZvZDY zxg&fPFJXGmG)RT~!dT!LCgd5pxTnsGzZa1!3sb(sp)u3?0cx*C1hOz~JR&)37y3~t zR27gT`fUE3c-P(Nma-gfH0L*?)gzIWob8$%w)xH zmmg8)G;L5n)&HG(bEoM=R+#;dWco0?ZJh&xXX(7L_nd0xo{aWs$J0RU&$s2cm}glG zm$yP(+z4Y))2eGVKQQnpfSgb1|8Vx!aaBd%x9C9xL`p=YK~Y3Pq?86x8VTu=4wdc> z1?dp!Mgb9}1Sv@gkuIf68tHC$b05F=z8k;ydH214;heMAUNP5?!NQ+{WYO6bm&u#js7jSqH&?xl~U@@)H{c-Gju~ZBB#>R zGjFTx=Cyac;~|NiYPPJr#<0O@F+2llTbNz6F|`!}Ah0H_uwXND(m7pY&8(Lmv??)I z8pN9$8N>}wSGI=K%_yyN&#yV?H(fLfKo0U{^vs#_xm~$$Q5dWJwXk#2D~5MkwA1w% z^TENkgo|dY0Q-Xq-IwDp$=!C_M+@z;wqC)mwY`qmoyHPYop{a8EO+-G!}BP|x7HnB z!pqCMyW1VZYzO+jxI8e7|hAgyP&xk1ZFrfS4i-aQ{D-B1hfoLu6c>YFlBa_No>oPPze zB6cLv7USR288=;&k}Zxs+QWGSDs~b3tc5X4H*?(GrByqNsjt@Bp)BxUl6b!mf&-2w z|4s21Ia$-OUu$NTtSY{_(DHX&_btKm!~?80`UYWM*WMuXh|(@^8}0(w{4ynFFu*xL zEI|L!kM>5scoA=5D70lkt}>cMJsj#KfF98s{0-?$V3kEqPU?d=(*+_TGpJlOc>?9Q zsmsEjL4Ec8;o-wFD>&u~{9OQ(KwXe3kbJ$p{B$yFhP?M#U|v-rG1_%7NreY*gNPoC z_B-%o8Ude(aBvaKAXMD=`U`;Oakl4u)(iw21W*UyOH+WD0xY#%%?z-gRiKUlNX#fG zj44A&4PmX>*%f85$%kj#f1WIq0%fu2Su0M0Yn8TdxYZzX!cS|D=RC%fPi9nwmGf!7mdK+U_&UyAxImU`;E|#%)|h1?*L}3p_C+R&S+1PJius288pG|9&%WoPrnoZ~ZM0ntn)+;x%Skej zZO-OwhNGyJBIJHGsznUQ70adSpVh*Ug16f!00S=I;v&Q(fO{f{W{5E{fI;&mW%{qZ z>2jsk{}%moDBCf;vAvVEnAmtPCyz9WgmHcF8!1Y5sXtRa=Ph5-k?LsM&srS`qr|Z@ z*>9ucoIGl^kr%I8vys2m)S|omKK766fK)TK`j16>Icjmsj-3VPKW?o*)A$$ypp*xQ zo*TgRg5omVwI88iJ7yQp$|UmPaY8-dw3024pn|!vvs2yq>}eMeNs?(^MH9a;7yqoL zawV@Idhd5ZS1Lor-HP9zsn1h)5c7G`kI3Ir`ofvGb{SfwNax+C%cN z=i3WkUVZ$S8vmG~Hcu`s^{D38o3`A;16?<2|8A1(#pt$6I83zvc@-gwYV#&XKquV- zxika;0@DaIyK_E67PlaM0;ICpBSF*Rp?>jdD6s-u0Qht!vOlM%rZfN(4#2OL4Hrm! z0aC5Va&LY8b_`u;*3P%aosW4#vI=*PzhH+X_&2LzyqWpabt;p>kv&pdnl047CF!$M zT&#Ia;t=d!u&$s{k4CD+9hb%qjF>2X9^u{EK02Q}bb&g+e*Rj--Qp~lg?}sWxUe_r z21y1aghzyzhD$AFA?ii6NYEj?5Ty^u3xW_zJs>4f=FZzlVzNM22)ITXAkl$vl7L-= z$}Juf-ub1Bkko*AmIf%5bx2tvLGwr)Xznt|{j69ye=`k3U(bf8-D>DegLmqrI8TS8 z`gMaLN%OkhUj1iTB8}pnZ+{|00Op)R6%7`g1ZEL*J3}WCs6N<1IDwG65jQr@w0v6z z_zU3hG4?7*N$D>Set}vwH60xtz%d#D9^L{NH48^T9V+E428!=}j za?-Gv(#ODfTyZDeEj6p8R4=g(KgZT+lULJBVKaA*GP2N6lV_w?IEO6%-&u8;_*lp_UY8SOipeRhjah{D?0+AILHE2l2~ z8y{tI(X9nj{AHrQiDplEPV7~ugf^v4|GrLMdU)m#KSFs~+T>ZI^)H!4?euw2JH3Pf zna*<5SU9Lh2W&}KNQK#tpm?9;U|N5IquF{^ATA#&0SvbHhU?IZ>J-u+--6%#1?b_Qubq&KWX~HLem}KYU7FA{&Jn4E5u8NYRu!|9eg@ zN#j_w<=K-pJ(QGVrPRUpEy564ordq}^1rH4*y*~3fZQe9UmWPoc4p)Xe64yVbudO-9ms zs%g^IHXlg(-DF!({2hM$gzDRtIf}S-*sU56ro)ub!()5C)D9r1_;g31r{|#xo)6I{`UVl~*$u zXnwk$Y%Q=lOPhaocTaHoCFbT$I69oa+Aij< z%^1j)==m|#F65CB$$+6P*X5^K1irhbR?0likf2)m_xZsBZ>zNQY^uw+a}anyllcs`VK5rkWP71<_P1U9HTjtr^CvHe=apkH zjyTI`c6xb{(qJ|ERUZB7GCDpGpB8>QDlfo))7B9iQ}WYS#u?60o6GoDc?9oZWJWD7 z|3rQh4H;!}0{iw$=!6GlcD!Wsz2L*x=?+HMrg+J{a0X z8FSLT!O8qjtk_-P6k)jE3?YN)a-I||k!M!(Qz$mI&1Jt^{KW+Q61t-kK% z88${q*y~DF$T+3GnA_Nu%8r zaGUwb7EFJs-AXhDVTiPhzt~!EBeoxg;?nZf(e~#W>`^ZQ?a}!$aRp@0U17;!iuv|s z3B^0F9%6s`uGI4?EA)qmjII?A%{zXM7{v17$gW#J zmL}4W)Xnq;AjKzJ$LxK-m#$SEIb9x&z)%#*5}>^*lHGVa|Bey$H}8wb+FrQQKgi!# zlNo(qo=9=g2#SKSn<|Q)X*ieB5;l=J%m3yeSpw z(a9DhD9K$`oma#7X{ZyTxg`s3E}&@Sf0x8$RC_y0Ac?;wbZ+|!RprL~Z|lx4 z;bmF$!gHU(FG|aNTwqSXb*nvDO&GaH2)0rN9iu6+jR;Y|Cdhob%^T-XB@9 zRnpyRA#Y&V^OWgin0R0O_{zX)Bi5^4ekMNHOG@Z;#T7o^Au)~iG?dP6zJ+!J<>W`_ zx#8a>U#k+YJm^mtHBTE_Mqj1D0sngt3b4(J{*##~g@xe~7O1wSgVZ*JLS~;ufbWWr z?K=i4+n&KkoKR1=Ide?dnx%VQ-@9ARX}T+;n$v77KSi*+=bbdJQ?4D$h?s3j=P=`f z>Eq4|$flA42TB6SV>IA}APP)~ST{tUh~5yOg;I=8K+XtJ8{7o)_!rnr}?~59IvMO{{{qOg?F_rv${BYElvd>qO0~k9jfYvP#3fp}kiw~k5L4Z~Qlx^pi zQ-q@j0xF2EIY{hH0Z_9EU1&2=?`mrc0SeEE0tj7G+w#%VAM{VoywG;F-dQc(!oDN+7a{q!Om9NM0@@?l$NMP1HpjMZwykk&e176rH-q%4d?1t9ouF_r&DXQz9$08WkrBA)@bXqIrH#D*#q$z+irBGIoGqin9G$5`i#V{9BH%&63D z9)&>4>5S|%$#1RU)_3#wl^9nrO4l!u`g>acg{6d87rAsn559r2O%w@oKf#fdQxMo7DUP=Fb^1!!_rzzqQFqTgvC+Ybf-6j72P z$v4skA13%u-5H;fI}k|dps+#I4dk~|Xq!O2_7-H66HgB3$C9rGL|aL+nB7_^>9qLK zFeNF~dIxorJYq{>S)}tKX!p&0`xtVh3Xmc(NR)&uBM|fd9>dZBow)12Rhj97AA?ge zRNy_{p(f9W>+C^I_a<7VnYrvoCTF?g!AVg{VsuD8>5gY~uttM7FzS z8}rT8u|{^XQ<($Ioo*IRrh!VqVt~k6HIUCbeC^F-M)=Nl>QOY8x-;5Y15(xrGf>o~ zfEG9nLa^+ScWyC?-O74`+`TEPNF@pVJ0O}B1e`@s(P&3dQF94q2;K)$Qz3$mEcG{yX|WTuevG3VnaW1tL$o5Ivab zAhWSO@1T$Qifx5qX4EP4gUVwGh22B1A9tzdFc4CdTfmN!T_$*52f&n4Pk_DaJmyFS zfFBbewty&dU2L-1M?g@edG01e(Zj3?5h$FRvY63;r)qRu(e$7rx`r@ZMy3+(D)}pA zBtBZ2H5U#|Chp1y$%3m;7@e+Xf`|ve)r80lT9#?Bib+ahg1klxf-4VQhx&vPfEz4l zA+E%P7{CvY_UxSEy*y0t`{aYT-IsM1V;G`Nn;BOG9z9ksy)jqO4N3VEn|I`ACz@l z^`FFrZvqZ9g&2;u)VtfFwK7%{Uz?kor&m^1CLw~7@!4700H+snF}&otB+gGACd@y- z-K+t&!n`7&_W81FH%#dlkjtxc!|?=asEeB^8y0X*q=DD~dP`=>q^VG> zYJHo&mNVX9rOs#XNO?2N!9h&PUrgQVQFoT7OT5xYFE7Ssma_Nqulc$2dZSa!oHhaT z&KG6l&pi8yS3m_O*Ien9SCe(Err9-U+rqt8y+;cSANg=8vCQ*wvD0WjPDteJIaW;d{cnZGscW$9)S~-Ci08{lP+m_7nj`m==I^v1Vf+ z$sur?8DI$4miD(;a1SXWcc8l1!QsjnSidE4VGbg=X>xCC{csw%MX; z0U6Klnih(8NLnKPvIEk$pdm&x0J;{WP=`UG-Ht(&hiY_CyP68sGagd0>=mElMW@J7 zop9NKNv$RIWg~Wf_Hfq8FWxgEt2ypE%#5VS9HDFwbA*AOd-5v0MB8271YFsMmZ(B= zG87U%5A_{lnSE8CD^e?YdnCZX&7>W!X7vbCj(H?aPY1ESIygzeseApNV?iCn$>=#a zdUp4L_lk%z1HMjx1F|k;S4d4*OdYHhYy`e*cHKd#$XCC#o4b_lcgrMXjCY$AUE4w= zXw@kMUD%PD2@1)H0zsw^fc{DVH(9Okp))qcnqn8Z01qSV! zOn1TC`1n95NuUr(K3HL({@H?8Xa^7Y_rp%hh2f$&4f-+kbUUFL^}+0ups(>>$<1s#E?3KwwBS46qSc zbs#HJBK$2-%0Ek%tIhN1oK5c%&tog7V%zcho(2))w2}v`K9_klmhg0_f!V*OQ0Wn> zpH{oAqS0PHNCA$W$o4>=D)0_}B3Hz-XSboymkz)0vt#83h|U7ruYpn&k&j+^{W>BW z`7liB%|>`N#e|waX{EA)$U?t5#Huu2(@h`Y73a&~9;*5i(aD3y0AwYQd+#l+28&w- z^h^2B$6}4*jZNS6yfxbl4EpJ={n#Qxjk2ctW%>!Q@H1tEt99NG?dt6~fmyu<>9tQ^ z3Ec<*3VGq;#iEh^8c%md@f-A0hHClk)YI;>t9*5ZT-re!$5FDYN9%?Ad`!GdpTSN$ zJH8svF=b?SQJ;LciA7H&_SRIUp<&_AB;p0+%Yhg07J3GO1fLYRG#BvjGN6FwBtlPb zq6^CmoTp$3L0st-(Wpia`3o|w-)UDPFjHoq$d^%7oI|-%58XYxQ6L7zk@r-&D+fNg>(0{X|`t*aw zFZ1SLF%GcfSEv-dQF?3pl!Z?AYr5H$#r0RT{EGXg)qJS|j_glRB4q8{XG0n{8Dc zQ8|S;&B2Kr7KkZeXry*%gCLR=r)Xr)=G5*20UHbOScx;B*{ zNGc?gr$;*m>5}qJ>%}q05ot08b0yS0b3i;Q`hyR!{{d5K>vRGACbPd!c@J?mayC$q z2M?f<@o%gEb8RHoO+o^e=$_?YbkcfL4o0C1Eso3rt^tSm>fKIOJ?U=mp`#E>Ww5T{ z;Ziq~AkFj4eF105wTVc}MB&<m#}tf8GVqz6XRm(m4(aN5W@1XYnCY z6kn}qlKG78>@8xBk1q#~bw-9rqCTb$6F{1DYl@^|N{gh)F@GrGLBRvIEFHtemsy!f zeYVbhX^-GAQ99t9fZZiVH2Y4D_P`Uc92o~!3(!laQFBaa?F zgi5gOLosj(^m}5AN1p+aFgFQujZBy+#4%Ex!zIP1A{@j{E3KvOh>!8jWn#+W2)1gn zI4l#C5d%X)+Dbiv_N|hm)PxIwAKsxgCvPolVG9?7@6(zt>KhLY1A*6w0=79w1-k-@w;WXY zQ>as*YB$qeUHzis6Sc?GwLW)+`9-QUCnbIQif0qT#mSFe>9&+zPBC}F)?cfrUKS~v zc!JObW~BeKu>lDT!s{17TX584s{^92KL9>AFQ}ed2Ir6ZuK6qBXK(T}${s#Vt=f>5 zD5YNXOBdS&A@cq| zmX=99Ke@PpgxEHBP-Fkd+Pvbq@<;WqijBaTfP%Z+)>e1cMsYVbhCUg~b^rIDV+A!w z$QGG`e4yaw&l`vu4V0N}HfKPMU-n(+!T$p7V4Il1MELv;pvD6{e?{QFLb|8;H~6*x z3#`M-v4bSiu*ikO*yEI-|M7~_E91~dJV^$9A1o@V)U6(mU3A1)8eV{X!q3hNenc{p zXl=dW7j_VcLF}Y_GOs9*@Sj7!7sMM!l;mmnzt+tkLq!)BZ89rP*AQI3ub>7B@{;x- zEJnQqNw!1*ppYYN4M7PDcnY7Z`_{AYi5fxC+p;v}>kuzOr2e!zH65 zVo}p*`~JN*+Jzqh-yi(duNXY$EdM9O319edPKj&q|HRE zrt58hIPN+~oAGGd5dyHgY#oMb2F3wofLj6V4pjIuOM83!8_@U&=5Th28Yl=r&v*j8 zx=7l1%mQmbzNz#o`%TC(qz83TyQd)D$-IL zT9*Aqj%rk`z@LOsO2F>?!-vTfv2Dz@jzByFL+ zT|g6}@wN`xuOi4~f}A9t=l_~MDdKS^DcjXYt+wQ?Z$WKmr{XbMDJLCa6`-o*=d=WXEr7y{hGzRj?-a${k6$n z33uYkCjF_NvN$+Ce#7?ht9O3TlA^Z#|IG_Ixd>`J?zCk-p%OP17Z(qN^N?ke!7>UVkB*gEeY z=sbAvpr)YtcUD#wBF6}Po**EE7B@sH<>r39*Wf&1@K_G34!AN4JT}+dyH;i!?=NM> zfDN1r7fsmG72JvDde1r*`h(kTTSHVuMd9&>-Vu1m?Zy5xs@`6Z!9YEWN)4~jtF>^P zR+_rt#S_nMPZ`F-W7;~VOii9+ewzhW!vj`>F~d2poDf`m&=N-E;^WjirqH>Zjs?}blwck*0D|Up1Zb~Eka+aO|O z*_i2jt}ZUotwcZ2(n&I&+S+f1V#at4&r1*y#nS4$7`b2GqhGmnw{9;^>A|fioW;eg z@;p*Z?Y?E`E!$CUd*cW7cyWv%a}Qf4jd?_#2@sa3Lqtrqz4CIIcHk{I{~M_U_mC92 zNln~ax?+s&448rc0-I8*IR-a7$O2zb{-9BthxAuPB#FSsy9aW~rM9zPUS6PbZ@^CO z@;4{j1$t=aKr2b;*YF3hb(vu6O7CKT0}Fi*P3iu8QvLHG38nGXIuhUt{=Uh?2~yux z3JC9+*MBjB3{GEfk?~pr_Ak1+VIy-4jVfyn1qYY=WsF%Q;0ot<0X z8c&Ns8m#pFML%ZE)HB}b3 zucG*#C=RHzP?KzbP)$^V`@886v#bR_xK)|OP65@@jUsZpUpjW%obQxT9b zx`~67=Wg~9i5SOPS9ZAC23{e}Am(@a8f#=Yx&DXxv*V|sAm$oXRG{D`X(g?<8IY19 z{(|l^q_hwzdC@Br6iUZ6zn&*T3WBLepIBn8g9W*Xo0mo@V(*s4o*m--HPw^oSTHqK zY!LM*-Ql|2cUjZ++3PuN1QgPT$gE(bi*FkWK4wB$=Y~;uxn@N~~sDYU1gk)$| zmT8+=qcT!J94~hlKfcmX?}2Z?Wo2Whx(7uHW@aX9>yp z+(UpUCK{!yE5CE69ag@TF%mfnj+8w3R83$OuWDjo~C9 z?cyUjJM!J#$Ns=q1B%%SVgbV;6J#~U+2#tB>qnG?Ut+w+x9m3>A){mdn~o9gF>eINQaKgiiED&?yN-0wU#eDP=ebrW?w zxF<2_C$LJ=eTELwCt zCk~d|Yt)=C>6p>B^MsC7Bbnm8)W$~@+~Lxa*fQ$?Xg!oS47UN?XLFsV&UW5QM>JQ` zfh}dS+DQmtPU?c$9zFPtn&v$&!UK=4t7mZ(F1yaJl&$Sd*@g*WU zza%Do4@)s}HvCyW4f%GZc7%nWiT}c$y={4AC$|{jBkddo3@A`dQ@T?Uh3r5l&qL$b z8#lIcKh5aC!~X4^=@d%IsOdIT`J{Hrqu;qf`+zygtZ2ei6mY#}_1BmoOZ8}1v8Jk| z$`C6vTL2+nMB*c+s5Sno=C?BIJp0di?nee`be4|57T|;YbAXL=K&nvQEFKwWW##-S#LIiLKTXg*_`1NS(S6%k8O`Y~$5%SAk)wI@AlxZ*TRPiO0vpwI7n|qy$ijlo$3*GIT^{-*CjPq`Vd`@#ZQ+bR55FAb97RU@; ze=M8s`n80`I@y_Y7snB6GIPK>vpfYSU9A;0x?!soN>3PbPgJk)TGuDwPJr$=YI0sk zB>y4VkWd(EV)7dXH|$5=l7{5S2enEF(kd3>4HFem@ox=dm=~A|ufjz*Ep;VIo}wH6PWvb<{IKLkzjHXf#Bx)rYFc!FobxU|4P-G)Uwe z-CW_GNAFo}^-*}l`_41o)5NjuH|H;3yMD{ri=Vp%LG2v#Q(urA~T zUF{lD%YrWp9=qO%}hq&rK@a$W_#u%INRKm1Q# z!tyj7kj?h}@tGeUPOg)3`mu|3?cSuhlV8pE&7bBPPwbOph{bckqi5JEHcKmBDzPju zSvs?v4XRP-E;pUt>;NnDJNzP;Tju3k=1_%SZ0W6%L{RRpWW%rAXOsF$pBQMp zFifgdvf1vvL%KWxearm~R1^VOmlLi6c1gwd>2CCuDXK&ld21fqVxFH|7fZ(QGY!7a z#u}4s;QBu~ynUF=*AGeh$QN>0aGQ{t+6z>q?{Du``CM@NwMO*dMP1pF?w;+pWYS1QF|kj)q;Ny3s#HgfGSTYN!7EcNp*REf@KYW?W8f-|pQ~7XwR?Go_LqmjQY9J`jF@ zlr)G7m_aSoY^4&aRrwWjltBFmH6VYSbbsZmaD>PyufIWbq88G(vEYFib1`9)WEaN$ zdz9EdN%Xtt@1W{d2|qmf&MsRNw4b{%{k^M;>ulIuQPHM9|Hg3GdS}-Je{EG1n3;R& z=c<#DBp|eI1>kl&REib`zuW+%J2l`)LQl3fH=z?M6R3D2@BlN>?Z-KEdc~KzI!{^m7c!>?S_g-{HqYN^&(3b}K6CHS zf24(fo%I^NkN61L6Acv&Vq7=|7nNV?$|LV4`8J=~=A^(Qsy2A~xHfZx|tpt;hf8!o+4(Cb;cEa_oqROYW2&0p3(j5|h(uPnx% zToEePMGwP${rlSkCgo1ID?&f-1~&Ewp^UGZZVs(>F<%2}yow2PciYQ`Kl&hCh}3OI zfRBLapn-nFsdB^#hwlT6j09tVTAo+Tk*_`-zMuA2iHfN58^WB>FrYao&8w~ zw%fBalecak{@lG$y+w(n-A-9WK4YqgL$$GC){gk3O{%a7GK51=^QQ9}-QRZs!SOqY z0s~+zT&98;%OMUzx{5&+#%%OMVd0zl`nSrfMMXs@8~zmD6jigvAw6ALRX4e*B<8l7 z{*5}rwd4K|anNaM#C6uesj~Q&0-v|Z=7fFk&0{k6Q@Vt+eH?L~vGby$*^Wyz14&w< zB|mTfoNP#;dz%oqNHbPl^pSPVTi|*}4#OH%sL8NB%DJ0uBogJUozI?P$0_ zthN>3^nGYg{s%gq@aB2K82$WI@`*0Z8$q8lHOV(G>f`qAB{h71(;$m+J2Wu8X~98j zFphoxC-phYmpV#YmkrN#3HQI=k3Bu{bk^Ham5q(=n0APW$R6LDFrpT2&lgym$^O&O zHCSL4mP(Ds`-7o`&EUYSZKLcUPR{4zTpNtCq22d@<`I%sgsr`1r>1rlq(Tr333QI+Y%{!<-PeNX4g&7z z^fYG6H&TT##z2oNmaVB^zdeCq=dxz3;1$LS)=yl)^fw}2Go^9v4vJbFl1%n3J29Rd z-DTu+y~Y-2y=q?b7oX?hff42X#^rv3hS~Q!p!*Nq(*h*ItxQR;GqS?e_pfO>_2Mi83LbRcPhg_w?RQICrvsu6xLi^PW+TihnQ9 zYh|nrX`5Ae5*e{-F8rze)ZA$m-+6+d?}Ne2{PbBJCiKXT>G3_HP4m)=VirG2THAh`Qhqe%Z< zXzjv>g7gF(Xjvf5mJoIr#M4G)BNeBIOL?x5^i%GS5s?8@w$Pgu0_<~z0_Dc*pXLs3 zbd~2wsd9LE3<;^dnYKNpJ!T_5cwYF7xQ|5G*nZj|>#%B9Ye*;!PN+3yQ*|;TSD2%m zy$LNBdO%qf9*^{-t;TGo;kEIBMm8=-bns}XX!Rj&dZA+nBny$I$k62Ob6FSg)XHHz z2=Zv)sWS~^bUa|t@R96#y|lpnk91z^q5K5Pfh&^lya_IbMN#7)Uh%o4E@Vhuo%{H< zQqGn0V(VVVTjR4yYU2-GbpKKu@#_!@4<8VBd2LyUH^GI(EFsz5*5iju(&;911WYiQ zJ3LmSrXnQZX&8X82mm?k-@C`eXWhI2bT!u#)DEZ2b$_M;i!e z9EQ)X8(=k)R~oY3CDMHLJX*N3XIeyP|N0KjvVTgFz{KMeMNjY?=xZawk=vVr&TAoM zY!sY7&;VGnH2=^yBJL&9pzl<0_J(4aVxeU0T^IS+#frXf4BWD)I+JhlwT@n|C9V)h zenMZMs6j_o>xu3o5f4yZ922r8byRt22aW3+QXnyuqqlhdP! z+QqJ2vow!%-qq#|{&}F;dqCWOp9bT>8?FHN*qe2$W8*tK4&~nkM9hlA--iVLT+28I zt}64-mX|ZeT^=Wg)S-Xz>)uSuE=F;LIPsBuTzp|-@F0@8o<08eyxea8B7{_4%=pw7 z0*EkeJdc*D%|5js*mhbIqF5j*Wk$c%_sv;FjfDg{{ww$jFE8o)_i&!wV(WAps<)w6 z4e7h<7Z<>KJxfhMp<%o_mHuSk_HV#Iwslku>eyq-te;lb+&~GgcMJ4eVPz+ecNQA- z&tA&8W#{|eWwFR4GvM9^x5WsyFU}*it2{c2c8NyeagEP z7e)q#1?hi_nLcCfV>_e%`+JK!R~zS1fSu#?_w&P;81ZE$wBoDuc*@|hn@pKG0-*mO zsz3MTwnNu(y6B}Vji1)tZ+|uErazM~#5;mLXDJcM{8z(8xr^aewcGa~l0rKM;tcCQ zyJwZJ>wGR*E!bc>JvuvsB{}~1fQ&e2Sy*sZxBXGT+qHHxv!B|$mYU0Whdxw&N?#JL z_s^2#{2eaw?GpC&I=Lo5C43U?{hOR{tp?ADbRK5%)FHSMMzz!;Dhc@Uk!1-{B1d`6{? zAq#fMg(JA^yEE+UYiN{JR4k9XPiF-e%b6ZCaIHdlML~^!cjo z+0&nOLf9zxu&7*}UH_(ckZy>}K~^j@SsnnoTy(@3ak{OCH)>FH}8Bkr^bxOS=LkfX!L@b<2u-eUM{t=ZA`NcYyy(68L7 zfzeV`Ya+iK1~D`=)@}|drxx;pJH3xSDKR|-Rt4DllgdDF(5>rW_a`8G3*gkBet^UpQ6H*R;`3_5C0$?-CH%I!89@Ji+G%fPcr? zf4exvY56waVgF~cgzxw1bLDO-<%Q9mjd(u(Myy$RkMW#S;X7LDlrs$bd?{1OlhfLz z3P9x&`Gb9v5tT$vP?BDFD&`!idiPeX(BiHHkM7eW<`2)c$RCS!{-{g0@0<=D;_$zr z{LYF^r|hq;#VY;h3`l(up`){*WIK>04WasSGUx>B)m*7P-o%cN=Nt61f}4e0RBC06DI^7n5IYkCZBtT3r+h{Yd=ttXX;JS^-{D*H9P4NY2S)7kmGX@ICCcn3 zEGgcz-RL~iq5&>}haVF5wa!E@bjP zcIOJ)$oiF2@dLGHpq9|3BQ~<=_HCao;jQ+8{Ej6}Js0(`H9Oh{sgOX0L6Wa;9G}qH zagv)l`D?ibRJhD1{g2<<-<18?fu-N4Ds&)hLV%*l5a_M;a%PDN`nlH4zoxc!Ohxu; z#OGyFYV(|vRyUVR@cwT4XewMzG35o>WZ<3C1as?cCgb+axwm9oOvF3vd!f-HTqo6Pt-B`lIl+u%L5V92SRplu_*@P6G^ANyo53+f}8T10su?-FOw&osNg`nFu(4yW&@ zFZQfGk1cJjSD~jjWI&d?W_3Qz;K-@#SRBd@UrSs;*~+gnQK=SEFGuG5(pFQ?*UqN7 zmmb1oWFfD$|81&o#QvQA>1>!yIrUYX%aKLBx2y$G#GP}-=LgQGZ`GU;Csa?MA3%zJ zKt9Ch&ir*!%{r7-gFbs@)z+4`h?z*j@ccPu_LcHwC!`g-^)Lz(tPZU_ho&HFYlwyZ z-txi|jgpHbF0;K4P`z8d&$T}1lvKd*2G<$$*)cGwSVqQQ_N^Xxd$ok0U0V2A$_p3= z74Cmu&4{Su*6blKmAG=w#&)#HA%9?KSchI|uE=+3({rl_<;Tmpc+kfhLISa;xH3%m zR9mouwKrc)=HlwAvvw5Z496;;7ED%Rryh7|>(;Z6^w`u59`}D$Gjlvyl5#$7YfQ*-293N-uT85ea?( zd_#*mdf@Q`L?O9k4Kxoc<`T`Hjh1ux8?ajre-$~2r&nt6+$QFwt{NsCZCdMhcBsbm zuB=7gzWpHS&y`_L)czN%tLA^*hmR~>TadX{>VddD3ZRuy(b0{7SRN`gzy$T|o6xKT zG$T^Kcis~Njp??PX8xPH_bE?chqA6JorwDB<(p~^AMzu788G#9N*>=#tnAL}muY0fOb z!?hvpcAv+Ob##5R>9W)_p_p@fc)%m#^o~b_aJ{PS{}QwMX}tO9aYwIa^zQ{Fx#;=Pzv ztp@RZo#YzIYY8BVosi@?A&3cn@7duzGdrtEBkCoN<;M5%Y2|&V%9O8PzbdT&FvyGs zm0v|`52|~h$LtzcTvP-wB%|(hQJ|Hby<@HUx#&;?OdV)S4d_mZ^4Lvf;-kck)ylz; z+MZoHzPD}ugePMWwrkZU)H2M;W2>3oXR|jMi5h2nkF*?>x@xh1ZR+&yI;`19Sa;Iz z@7sn~$99FKh2Gwp@B7bubU_Q};59{vnxSDJ($EY#AVO31bCXV$KvggW>dpLkc_&{=vm2Ng_JdLjKkE}J%FT~OM2q%4*Uh{rbAyjbcFC*SlGbgaUHtEhSrNf7`6Gk{d z&|k}9q9z5w-24w=W+OlWt50YMagatDaAtX_2|-$65K85c>)~H(z7olNO(-RlG_7~j z%4IXyCfxD4kt02Ejy^Uvjoq0a#cgd}OHZ?FDC$@VlA~f!Su}jfGj`#z5lC z?CdRw9wQSIWdNP2@y#K}`Ar!n4xxT=jE9IFNX0|@h~=lL00IDFL>7R2K%#M~3Qp}O zpMx#e>Wq-F$aM|ltCH%%Ep2ht7LLsD|rUcoarl-gGXv-VbPK^9#%+_}yYb|jb0 zNV+il4CdBM=;S!={Sg_o5BR~|A+iIe=74Xms-u=|vz>~3v~QZ$95X180Uv+uIB_nc z+^xgckCfUM3lCcSzVq_L>jOjJ+QYO8_r_FqT6|n>Y(vvDkM7W+Orqrdvinhi8u^gc zDi{fEww$EUpZcwy7Y+{HtQa_Sff4Kz2_1MsvaxGRu4#@2VvUUP@zfWNqXlrhnkL*y zy)BYBFgLgI2;dH!eTaPFF1wtt!YNTw$XX(~-rhsD;L4xFkLe97bhIy~i4)E~_{nqp zIa}nwt8QcZ8?Z?;gOQta3QsL>s=_p9ys37_?Lq^4=a-j(DmeE>37#d2Q2T_YKO8?c z5gdBnH!1idAM(hp;>eSTG`Nl^gstZitpBRVeIC{^vAjmSK|y0ryWJ@=a2J(LFj#~Y z%ld^4#4n=pkQ+v=t$k)O`7O~f(T+R5NRn02b$Z&85Po8H8wwQ8E1LF2#VW(rE6A-W zRiOx@GUV7wab9p4loP}F<^0-Cxl9|G7~v20yA9(9Oeg1TDC){4>Id|+$-qx(O$I-O zm?hyBg4Nl(Yj7rF@Z@X&cN_03e@x(hJo&u%FP3G3I)y)krvo2cUL*0Q3KQb%?5 zKki~rghsNI7&B&)!F0VFncLOXa!g9@^>*)Lj$AF1r%2I_1epa^o9?QV`l*o6{DT~Z z*Vj{6J8sa&0CMJWs!q}IdV_vq|12!L2s)O*YWuP>ofLl;b;0q0(VhzU15zf&iMQy$ z&6}fY5W4ZLKm#Mq+X``~54g}?UE#@Sc;6~tt7Bipj&#Vk`YADR*210&#u~eZbzh%EN&`6dMW6o$)3mQLYW+U3A z7N4l17OJl#=`_F;;D*62RVM|XPhrf z3QD_cJW#9OIW>c^X(q%7a6(6iVphT=v{R(SJ_UNo9de{EqENeujPbUP$!1NvE9<|M=LeO*Uk^k4 z^-VQJ6p_gCQ=MOy!TCaDk(@^4*j)rJot4MN^A_^{SJU2YMR+f$I75_$m>DTPyNaie z-Pm6GHt(G)%sWLnag*!A`sKXfA6RN9ps_-wTW?{^Oq{8AT`Z%Li12TJj99gw2WYoD z+%#{WQMopmX16Z)cE-bjS=>0|bhP{*ev^)LGS=l%)_VzJc>78_0oLkHO|$3<}X z`;e)Lj?$52i}2haN4@r%#IFc$h+MfN&p@xL+7Rf!9lErrxxVGgXMc^pzF5$jwrc;q z;~z+AR3UCV6JuAErvTIG0SbR)x@-K0HL}k?#YlurcJRo?(z&37kJ`Tp!q!MaKgZWI z;Qy-bE5oAd-hPKxX+Z%=5d}$+kVaHW>H$$fIs}pKW@wNU5a}6%loIJq=}=0#Q#z#M z+~f0}|A%wl^Wj|Q)7c-;3&%Y(Yp=cby6<0=Zk_lzV{JOu_cKIBQBj&aJpGdtOG*)Uuz%H)I>~bOrv0;btzmP{-Sdmy73G_9y@p?x*PcCM z@6O!&T(v{WBKfErsTWXUDNbDJh&0>%n=89D_mr(#r?Sep8lXCn(D zseQVZi|%B>+{HYJ(p{GgzF-FAx&Vrq%Pf z#%-MKT7A1z_(6pc`XpMZEje02o=q37z|^{mS*f>KuXH7Z3tOX1Kbk1T3n+Xp2@UQk zD_JYn9-O&b$EQEm$AR90zFgGdT^NnI#*{%wXbB@s*0%wb9uZRb|Ew z`;ijcl*=Ttcxlj(KmcSF9IWy3qYl=mO)C!JNYq;vPZH#cg{Y4 z>tbWJ`y#nr<0x2OLKza~@hMCOUc1lvTdB_rZL^;dM?TfgbGw&{)7#too4X-&=r}Ns zq{9>o5`wrK+P1kGD+CdR+d^k!Bon4uI}xOaNvXFk_+TYklj$gK6;ie06|&aY@lc}P zU_WfVI|w=es#A8F@18wMbpynr`+qO&3eSD<2w#m?2uMjuY1`D}acX``?LPvv&5&9q z%M6sv^M{uo%{_n7<(2ft)9HzZ2Z>rxaxK|xRqF^isV=sK`zZ;az8iF~i0jkSKGfwb zKFb)Ysk(bG8_j%rx<8#)S;x;M$HA;toq3-}77~A1A&L~RjzUP~h0I<#u-5{{xwz3e z1mxO6+`K)8Bn@1~x8P=AXvhq@u-gOH@F^gMzDcwiL`zq;>>lC1^4zqS5ZU9+zUKD+ z1|e3PQ6Ag!+*O+o zbY16T)lMO+4Vce|fe@By@V11^&v;(SUGFJs!b zMwAf~^pPkwN-wL9mVUokm!o-;7=4BOi7;Q1jQu9e_Kp?Hd{hTsq;nh{(}b% zW~a}=Kpyni7)Zu>!j%>D^E}5?Ow4Hsx9)j}qXho+R(~#WZat&@0}u>!LbnMVyN*N! zQY;ZeF||P(4_VO@X8mj~%W2W`mFvDdHJKm$F+(9^%ftF#cq=`<&KGgWkcVP4**2-a zzn^bUMM>!oHz^4GfIpvjODXXyxUa(>O~Aaz_$N43o))!ma&o3_zB`ULdHE7+%0a|d zBn5f!=P>bKcCx-p&m4X^8P9 zXJ9yU*Ns-O7fIpNt4a33A(+|Nuy&-&VgYU2$x*m+O+sC#B0^BGGP;pUPtk7szBc!o zxtiC%$m_3~Tl3ug6KLgdq`uLf%-xW?@m1@dfyP`2{gI+4B75uM!`W2LC6@g{9`Vysj{jBC4%LRl z^WQ43)hRtrcpcU*u`25yFWs=T@&; zF_xs5`=z|R9D;vIyfN8wFwSnrllDF07-1hq{{d5e6Xd7h-zj1(g^r171d&eOX}|NXsC&yTrKuF>$M0E{0sZKZ`~WPHkJ#08;r|D0w*EiZte(S9X^bKnQXo?z z=taNTOh3THq>YqXlX{O^nSx-4h*mHR+%)W9(fk3X1VH>*;bXW-6(yOW+#X&vHg5mA z65YWhw6t-R^)mTw$%1Z$3y#0e*CHMU*4>D7SBEJIpRKxuK~ma!+AMw-Vufiw3L6DZlRiXUb5yKT*@ADW_75IA6<~cTOlz z_RKuLJ^Yj~;GXV$II?jjQ%#}8!3mqbr>W2?oueGZUN=$d6htsznriPKKACwh zFv~ZaeWJ7L%dSzmKYETYYPpDcW<#Bvamc3Fr{43(OfRzMWX1!Z=`W?su+nc~$8rsc zqi^5nXHL-;TGl-SP0ztsan4kh_8Yi$mO>g=6XZ%f&&^KHsLnZW7mMMHG^Y$H&LsA! zya5Pr=Pw+qQH%CUAHLXgGOIT*BiA^L>FE{>Nhk2A)_#>l;O#j`gwh2zwz3bjEK_wN zk9xkF?T@LNOhxkaZg0k2K|KXP7gNk*`!A;1^-%F_p3-hMn36Hv4SH~X4TDS+ydy>) zpCpAF-K0Y7l53w|>^pl5y4 z9u(SZt* z=jSfZpnstZ`%`r-k{h7{1~IP+k=J$hs|fBp{bM;%xrDyTNVv!?uPh175);0f`)`SVf2m3uWu6YqV&1npZK=ynz}#uPpRdr|YB-6*0~m&h{T4r(_KJS>wYGtaxP`Hd&O=exwoB0UMn%Y!)X zrU%QVrNcM;lH&Ub`|=`d^tA&4gy<(aI^uv_;>!m$hp$4R>N?1i33z_zpsD2`$&~T) z?D4{9&0h{e2!Tr~cNVgf>iId?KmE`1TnXx^7ue8gTy&QpV5&mA?+R>AxZYXrfKMIx z9mrcANm9%EZP=r{PI$HMj|u$B(?`Z|nn`$sg3R4nxh6 zb-(yw%oTDNDGauu#x*CpQ~vtwDd$MR1#kVn$eZ?KyJEQRD-JM~uUTq5n%f_t7mFl1 z=R$bs*o$dBc$_CWc{Q#sq~x67zBdOtskRC$Y1B+!8LlIy&QNz94j9&!*tgq=+F{aS z3SF#NE@spYWZc+w!|5|A6-o=1o9~m@=W%E)pRBCarZO&>sY^@q4|;J34;}Z_(YP=gorvvvcF)kAFjdavv<5C{Z%#DY!c$I3_gwyi`x?PITEqB|%OYJM&B-tX^`lg>#EH zSA|MGt7~O)y%pRS!wU#N1*Wp>4Xjy7i2&gw+j4?_w z1+k*O-bw{J>aQw&mgjUTaO2AFRMBEqCxondiLpUs)`ZtRPe(q1?Y`WQ+srdDe?Q~f z*;a$526C}?CuCNAT{SVs2m2#P_h)&!#3~ZY38kacDb7%kR(yr;uN^jfIq$Ka>_*Ia zecfgWa$rxnL{JX#!DNEm>U72p0~H&F1Rv00Cgt*)NI_`mnL9aQ3D;(c_{6d8t^EWd zP0c%Q{AJ>wOQ7vc#%QgoMjrM1#@GO^s88Am3BG4@>&olsYgdWyC%rSi{Ok2sn38(X znuvP5meRHH^HmBz}JWbEjK5k-09i2|j0 z1{&E0DCPVrZ2LvGg~kT`J&VnqLbifnxj#<5)~wuOIF1Y#hn3<)EdUf#)L#wZ{pwX+ z4D4kOOnI5*pxBqXkyFz-AvQWHSkk94I8pNcS+SPuwVFfx=;+6SZaYdqAoYz232x=N zc9rD%*3h-r!lPJIMWTnb989(>$wch|9Xvsv$2r8epRd;$#XFe%@oS z5X+ZE{!e4ybSpWv1YJl70Yk;PSJ~c+&|b_*nL|fxpB}v!S(uo&JpL+BR845|J=K6j z*_(ouQ<06?kPCCl+d?|sY905SYZ8umD$tD0=XC%i$L6$l2Xf?j_pA5VP1bBiBGvVQ zsUu7!>08dSbLDabQtoZGAcCg;&K^7U*cvN|9$zb8T?XuSFi%*I5uZ*R?c<5!utR;t zET_ghE>=_a{Gk@ldY2p;9DmgZ5~Jn=i47*ibey3#?sx49$xD|b!NkQ_kG7+S;ulW5 z#EED=F~d5I0fT2^E`?rlb(`-i@=6ofutuVtORGAbAJ>Q+<8xDm(Gx1fxxF_Z^jDD# zsBq+9&V%jb)bqKmMZvsIRD(pJ!%H;>bsFu=TeLUyYU+J^=O96V| zfk!fK*J_U=aBwQ^zax(dZac1N+tS`0|6pd6wrdmgWp}<~x#{-|;u-ux|L!swntd5;38$~{=^RF@gc-k-*I^L9T&D7-+mR`$kA0=z~j<*Qk&{JT@p}q?(8meZp|+m zxmLuDhE64BWqHrxaAn)GeScz}f!J+xKAz`rHLz!iY<#+t)^Z3jUQyp3i<*B+2K&>p z?e=X_P5?);ZH<_pd9;+!pC;_xezfS4sHC`XCKM;wH)=Cq#R07Jn?Nc_g53%cbdsYk zIkFsIpnY=h{p*#{G9DeH%HHc0IH9uKCIemBOMPWM35<1XfpL0)q1?XXmEx9;D-9u6 zY!2t=X@E1#u4c?4h4yF`_hT(Q*4rGr8{EE=bC>tfW-(~jEBoH~d0$FVGQW8tj1@U% zey>9dl4swm&5)5As}qRVn%Sg zAgSk$@hsnJ#CqF_GF9Q{#g)}5$C@_>k~5bmUcHx$mceVhaHlcX3t}b~F}HquSmXSM z#%%gl$A$N=OKAl01?gKcy}XL90o;o8(c{u#BSHa2Wad?a|D&0m6RZRXOHbIOh$f;EJFk}{^r z>U@J-m^E(n`<~J0;n|P<9EqYto_)_YRG2sd_YiOE7Ycc^m8W&|e6YK;m#c*Kd1-m# zdsQw4NewA12w4$!^jv$_IC{%)2sTs`i{tzp$R@D0ts3HuT#)*+#4r*P zpDBal3Ak}XToRd(|FokJ%&LSjbwq|R$~l?pd2Q?d?a9JhFNudER{8cg*x2>|)DP@h z_Wl|bO#Mz4SVWCYLxa*nTTZOrZog;c&xpj$*jZJvD0P=HQc?6@$@9CV)V}KosNNM5 z>eNS$OgF#apq)^UY^LQC=}u85X4z%teWi->XFk;eDx30z2W2;jMm4KaI`D!>Y`2H5 zuQOh-8oi}|+m_(tsPhkTybAh2UIcHC~>OBy4<%xOidzI&*9^ zth{=&4nS^tn|R60425P@zVB6I%FZ^m!(&lqaaOj9CA20rhc6RNODV0aPgyRdYK$iv zL$6Ix+I1eLGTkhlcS@G9hi==Pe4JV+{)hgwdWDdfw($4qY}n{XC*l*mc$VG}T0>TH zL2|$+|69rBq=H!dmU};^nr>aAn^ZJjub=eDk`_dg$T%8Wk26^0OM0UX-Jg(=VYz#o zp8c=}%mUZ@q%P4SR6$=$+c%@0|00K6hHmq-TdQL-T%*cfuRPwiCj0fbi?`mhm9<6N z;mr7vqn44D3L}Q!KAx(^S1+;fx+}XiD;*LG`>6JpeZ5&^MQl0Z;su^ChnFjom2)Nc zgAZyW$LE>YO(j)_k1ueENx^_WprgU1oHvTM;%1z|@AH34c7bq5F)9kh!+wq5yTZ}2 z*{5{_>b|B+=@)}Y8&xD-(^Ethyw=B84h7HY@RJw&PX5WiO1lzJz{(!16D7De=wQRf z8C3L^f^zt=jI?!%y?GY4_>Uav%xtXky@&o+2R=)A5hT78Ok3M}C6bCqp5*Ai)cN!g zI$2)5+sh*TSW!hUgx0VBh2_xm4BF%04yJl3Rxm|Av@*D$^1&K^PUQ{}P@xI7gPv3NDX=*R8A9*Q@L^w%n_ZaT~r?=h>$`=)g zi-lIw+sttj;wZ_l+=Z8g&-i@8RF z0aiSC2*-kXrFv6G)FcOAVd{l*M_yFY@#rYJ!Lsg+zR*>*yJ_d!e3Z)g^+}-$);k+{ zG$$Df&DIi5U18^U*47Toh(*(<47;A(TTxd zxbD?hs>9ET)HjR44yQ-|d~V+Gvc&4vX0|6Gi>>Z)=NDslN0&0?tGdiYp7wUjs*=+Q zA%Iw-qP&3ZeSXqX$j#Qeb5pwGJu2&IcC;(;C60l2(6i?Urx4Ix#Dm^xYikRmx$yVL zby^>jhqk!NO6}_b_Pp9NH%!#bmFL>^;20yXsAvpeU6J)9gZCoJJpy^UqSu)y5DG2q z&85$g81FHNBmqk^ku~15(=64!J;0$x)3CeJCv9@^PeS(T?Gje8FF zehnjKzn=%P$L`tG?I)RxrN)Av6^uoL-}uB+5B9guZpWN2_;V24Ta-`}-~Hj)-`&N+ zDH*6zk+KCL}9XWPt|dhv)u&Af!U*u-3o zS=5H@%Z(Oue(Xk}4ZRGIZ08pkWIR*VdVQrh?dh2YLQyeUCZaUbY^aqmN7~ApzOl&Q zn(3Kn3jGC9oauvDoatzn9z@n?snJ#(MBn58dCik18~^-Sp4({`zur z^Ks9lc|+qzCrgrFBy*u<%nc{zWQL?HnXOEj7kopfM(CycJ9}>3U1W)JrRis9J9${^ zH|Cv4M`$hM=E4^dAaGr@jN27Upp7smppgf+)L=0m$svJ_iX+g}e49eNy!tyZua&knfI)9x91;OShRVhh>&F#Zl?a`RqW%>B~g9)y``lO zRBV8@T){M(L5nm77M^0eKOScMVFaHH=;V5wY_&|3fMetjkhXxsh>uw!_^@o3)}Dp~ zPDJY6*{O)JmRiXzrG`*gYm;_ps53MB!mq(ZsbeYj42y(fV3mBAmFFqI;a}Q z3t9eSj04W}dowemq%x-$3aMgYJGvfZv}lWP-FsSC{;`pGVxBSLq%I&|&qcR(klaj? ze41T2iCJKZmW04V%Kt|6P;w%F`=xZR^q9oMW$5)?MxkX~yx7TIvks`{4fu4Z(`l2I z(|<_5gSH>#(EtBYaMn6;fV zc^;D(o}6roqI}kdc*7`YhP16LZc*Q&uA^UJI(fH2Irz)(O1Q%NYP8tN36l`@4Iye@ zzc;(2rixaCJyC~s_b*(6;xb5x>@BI67qwv0qJ5}=K6ObnTF@`Ti@1#CL;2#nCL}_NX29gyU15bUCrKDI2xxb=5IrC!73{?HC4?LbfO-c^#llvyKaBKIzACwIX3vg z`+}?yP(IIQ?CO67jLv19iakI3DOi=K#D2XRnYU~qIkBz`U$pjj{DZ7KemHqQ!}{_2 zLhPxmR6WN_xZO5`2lLiQg}LeId9Gaj=BKr%$pT|<1(14KCF2kEpA_0#%;D3$#WNnv z4IR#*;kS-}pICWuAEruG?nx$l#RF2~9@pg&6X-+yhA4uCT__}TimfC!k_8$>Z$(4& zohf}xSU#E%eay2NduO3l`hnPyaKz>636nrCUo6cIu6kkqfi^cQC=JWBTWl-;NIh$h z+!MgiO4|dm{L61#w3kss=cNsb@7(Ko8DiC^^V`}Z;zrQ1$fT@{6h7;=$~#3oR-q{8 zBu-RtGl1li;W}Vj@ft`#`Yv^Wom*sufrjT-f@a#@H`l}>c zd6}&0mcvmHTM|v+sArY>sMV;)w#7}x9H$(SogKkTuO4;0jULTCOGf(MmaN8c5<}B7 zhi34VahB2Aj;h@uaYvbIddBx3D~gADug+Y2!4Q;f5+`x(yxsBb80A5@-av}^$A@;y zCFi22E+aHt9;D35G(0wz6lI=G!^h4FJ`#oX!zHB0WDVlP)3DKli$|xM*Q7Og9E8{GpNXD03Zm z{FSoB3wd;_!tpusG4Pb)H|tHs{KYgLTpJH$I~Z;oiTLV%S4tKt=vQ?u9qj@n3oOyL zQSYBzF@E`yoQkRiaBD}mh<6--0;>LdBj37$5ias7LAZ*Ap;6D>hL7r?!=6tCee%$n zQ?D`&3lS3+S2%>!@mWz&P}p~$)t)FSD13(e^0Xs|-~G#Bku=oQa#Q*EKQc877dBjP z$3Av(DVx|#d+>>YNaSw3T@dwnCvSLeL_~L~NA0Rf1g*8sQbLKB`HXRbw zK&T5p(~fWe&Kw)9g)axu+V6hH#KwN#pF|=D0o=hHQSBf{=}=Wuy9}vj7<*WUjfoVq zzVxW1qz*_gN0cq6CuM>q6A+fMrcmzdAAx>awb?+Z?R7YhN!m91Gk6N? zqTGJp2H*eb>aG_S7My^+KC4#z`#xZ~00`$#i2RaMQCTc#VYne65DRGr1rEz<@C3mU zvYA2%YPHD|QRz64!v&m=l4US}YXXk^zN8>za3^)}CSY*!23D?B?WvP8O04Z>oOS~! zEwfL>e}H>if|%>JS;kK2JAwb@g0x!qc>)vg@8RK{2UL&0#}*cbi1uH`YA`$Amkh?Yuy5o;9px}Sqm!ruC8uhTo>8~P*>R5dl zDj5(ShY5@W$9nKD&xv4p+6l1u(qJwvsHgjLwc-HUg{_pCBWD&q%5{NeBiB!Q&Vl_$ zTD#kn4?%Evc(F*Jx~iztYTcUC&WL$F#u@tTum^e9sF?^Rs<9(~*4#o5S_Q6H46BL> z?7AFQhoWGA7QrC?8vgM?&Czd;^@7H9yctNl9&t>DLOstvS0MS}8;qBfu&}VU%XGlW z@#OhJRtD-5P?%vu*##)Bgsd!lYe4H~OGd4X!1LSR-(Q1X_DdA(9w7fcH{yD1{C_Kd zFS(PT?wF8}fN&#?v9kx+tnJ}^T$~${BC79Dlm31xXF_@#q=b}X+}t251+G}3NVGZy zaJ6TkU@!smv}dwWk0FoFs7#w1CZ9sFtgLLIQ42|^n*7s6r^@pE3HS1YnNYLIn(6`D z)Juur0t*KB`oJG}CQH8MD&or>+W=qL-++2C86*Vt5V)x55{OY(S6i&iPhp2d z4p<@hJPvFy4g#SN3UI=UabgFyjlo0}sKuk$mmnN-48U=4a14U%lI&R!@#*++$3Ad# z69LwVq$xUGDaj5NtF521j0V(!rQ`E<2Bo7Iy+6<{*f%oO+EO-Zu9A@<>R@dHp9WI! zN0`bjooF!W+edA;2-A@~cWEtDYYSJ%FO$(9dXKI$fvi}Tgi`c=GUq#M?x#teV73#N% zX$3ipwLi-cBjDCbpV4kthtN&Wqur07?^a9^iQV0G*r)&x2ErKmmvO*MfC2_H0mdtx zO-G8%;1;+GB&6)m@>lF&((pR3Yr|M5YG_bHx&s1kdNMjX3z)@^8yXsvIT{{5eE23L zM9r4l4j;2poOuJ4rO^BrH>~E4BXN=WB?k%C*jA$Y@O09$U` z6q7%QfZWy$^<%icG@?!x-w8nHc0Z#GY~L`)0dBYn@ZmAX3=Rfm|M#~D=$-z1NZbb) z@ZWPpb4@ol+@KJ0|EllM&J=t4s|gX=<-0e{r4Tzlz@yt7uWGU2;|$A zqHeovXpilS5X(^*&;|p9`}bq2)7ID5V;pr8_)OhKF;2(V1TEwsd?<$y==#hU2nK9W z<}o)l7&5?~46!+=WzFlfszKEFRR{zK!PM|jeilRqFAM1dN=07v-U~?4cmyF8!==`Y zP>1}L_GRsXWCtu9nXjzC|9=Tr5YBZ6^gkH&F0;e~jEwTpmjqZX42_I#v$M~Dm8A*D zDW1u~IFrMK0V}m)AP&M7Qu`q|0>~*U!U_&=Pl@4CGOH1%!Rg#~Ujff7Hv-Pc{2e0* z1}r5yDyklY@@0D?=EEhHv|uOsO$3vqP1(m}3ojdxgRGyn*4C+EQ}k0?IMa-g119Vb qb2JewUHk8!CI1(Xo&SGcdLkJ)|7ClTBWoT3hrG1%qr38W;|=_F4weE(m)EM`L$=+%sOv}|?7oiw zZb+3)xk(^gbWxN)r|A|u(dYR{%e+r^t!d|`P2c{wwee1@)YAl=0y0n3x60uBxiGPLGwQY?|e&6-g z&N6q$Gj{z_A=1=N2V+^qup8tGZ?EYf`1zNq;I`gf*vG}hJz*i&lG z!_TCaJ|~)2G^VA*v%G&S66D(No)YG{&reOiz*_hIAwdoXsjshbDQ9eZ#Tdi~9~_eL zax44#W=D)q&&b`0(53k?1yTqb#gn{j^inrBxxvP+zf9Z*zP9SJ0vpq%Cuf6?UwTY` zUAa&#U@|-Wo@?od!@KXA%ROmVdfYz#u$2QIz=JkvXw_9t>pv_mEVkL1gL$kWHDN=BW0qH9OADw z++P!XnDp_NAM061*w?<^!!MhrkbE2aw|2U_ckvUR9*;S5^NQ1Wr(nGMaEwllnc{fm z`Wjc1?DBZ7{b*WBjRL#(e)7t&DCOO;P&g>xwOOK|ZEum=KmhkZX6a-gd3}w>)xJzE ztYm|?IvKcqx*JmfI~w7!3R_R=s9c*bf}o(tt}m)Neg5^CCXqYdjicXVETd>;roNu_ zt)=m@YvrFOJ;sh2IfTGKQr4;7B!$`yJFZ0fz( z2rm6^cgwQ=xMf#hSy|a338x!QQ~lBoj*gT_ZKHsjEy>kCZQEzkm1E8ovb^uOia#DP zEXTAlRvZq&waT$cTKm*Tok}0?org{zJ>t7Ey-=rJv3Dfi({^xpxCR1c;DfS2Fn-W| zW?_?1X{x`!ziFuS*~#LOc%4!gn=`lCd2{2qiC#i8GcyBSmc-!qPec{qk(GI0XlEJC zjdwYwjKuu7TSiP~ZGqBC{Z7u1+Nz;eJxyX~U!Ev5Hn{!E=H?RTF`aCa^SnB*j{3m9 zlES!@2NHt#1AA;s`6?FQ+toa~cjU1y4Y#iM_S;?4^I5*qTXr6LaMP~y)pcIo98Nql zF}NSfW&O_;!xOH*{W%+MjnLRl_`OQJRB`Lwzl6%Jxs}bg>pvtCjfXuj486wm$*0EzW zm#y4WWwWYjLr+BQRPijh?J5>6!Z?!vLbmK;iIA6{nQKvtzEKIl67GL-vWOCLrDttO zz&A!--eJ1>pk=quau4}9+2I>zV(RPwVAsDUe6k) zCvL>+0&>Bo@D=u68J?M`*)FG;67OO4A>n+`AOtmUzI9u=7VKT^W06~7XKlJUNvw`4 zIW|274KppOl6*JYU+M;kr@Bt{*J60EI{kXC);!wqs);AN?~45ub@c~3S;bzpj@%E} z#|;aLg%D8$Pz#6njMkyu*};D?L~7>U^Y8C5)cS4Mq{JKKZ?^FD6B7#!KW%QZue8Cu z=axIQ%ThVd*zvsx>?(u>dl=`US-kZ4tG8kNh9#Vb&sx8mJ1l4-9~K=Qy)tIJp00k0 zKqT>*6V`mgk6#Kbr*`u|pzg7ZbH1wb_)J>WOzBjGWWUey!~!5Zi(#n?U%tGb4lI;JT$@V~gNvh4JX59+dc+>Km;?~ZB2YeeMPA;(b0UAb z-*c)u%V++@yZ0iO2;=Eb>?*|Dvy9pIajV{kO^eWrkB&Y_UhbzQcrQ~WdmE!GSBCuk zbxNFWCQra81$s^vbE}Gd`solnMVj-^yV;MB*nPbK=qdvW`#pF#I2=U=Ai86|6vB;i zgKIy~Al!7nF-|gChYFY{Y6NRw>z~}|m!9wR<%8JVuiu+CNz-`qUz*oPF)}s-f-EdH z`5sY|Su~@6sK1)+K`JbQ3jkSrnDva?*N?ERYkLsS@>U^|0(KofTP0dC9qcg1Eai6F z3u02xlRB=_lYHsPfST`;#!hCT=Q(dxsx3$A0rM8xvV558qxgcJ*p{5+;5fiQ?^7Qf|fVuh;E9JXf?Ijx4b7_kDTS1R)Yx4Qb$s9fS_2DZoDW5H~aXZ7-KFdj5?y3A`(bh;*# zon70=-JI2>^LkqO7QnZ!Z+DZ{mZvJ;PHpXCu8$T7_4mg>XrV&tsA|v9uV0y6nW&i0 zu&a*Z(>H-IhJAv>e*?B4K)*!_GEO!C?&r1_+H<3AFXTV20brh&AHVXk0)WkJeU+vx zeb%~D{fo`URxZq~cXu4D0Z=M>>(gU*7(%t9>ablIW3-XSP565r{*uoLLd(11iTb^1 zeUBtvZIf+g25aphaar71$-$K8K^?I}hSA;B4Wl^;2?=f^ajpsag|Ag5Yr@?G19A&;ps z=m6gU08{;3*II|7x%akFm!9ZyNU|{nrXk|TF;_GkOqW?43~x@;NV(CHd@1dBZq`7R0c;zqL)6jv#&3Z zngJd^x1^{IZ>OpGhBC?N(YL(zI-RMm%D?Sf`x;Ti@1kSnT$-SdY=PY>)ZTL$W?)`_%j*_A@b^ zm+vx;=u1%}?!EqYVVa`MEBpEBkFbaX$ZQvg>x;xrH~=~?fh%pf^isc&pTp$dYzr0e zGhl&JY8{qk`svMG#%aZm{Xh!*7dY?xPLPChdsD z&MB_mPaZN8YWDO!>+?ckUFeQhV^L1aJKM^m9j+agy=A zYYHG8GCiJ?k-rSQzA zeI?G>R&D7E0M5Erix?d6ss0F3K;u_908Orrvdb6R`6|q6=ssIXnWEq-)THM%hbs!; zkAvVD+-7RI6Co93-~ROG5X8y(pAG9aY-Qa8KjLd!`_j`*cx9@<=B#=A&^mBdrrlCs z!db zJ#c4Ndwc8(U>h42uW8?BmzBX{1?gk2=T!N0)jlZ=M`u!l`hd!IX*L9cnRmzRI}BaV zudl7vuUzR!cbRKeP=Hd<^yBLv1R*7ThE##MuEBSFODe-g*Qbq7phU^D?h;B?jnf+y zgv^Om*#IR}HUtR~66}Rp;<^E!bG}W_*$~;ag+~(3RxkDPPvLVS2g&dK{)pckQvE1i z-Mvjxvnol2&2Vyuq&=K?_3}=v!Rjr#muXY%cyq9%8OmHPC9m=$xsT9Lt<8g^B;Yak znGy4O!xK?~?c292dFfKA%SCpT(WS51o?3MKBvFColq&Zy!&4$#^@p(AZuoIFKg*jB zh^Xl=cQ!L^AAO+&;cqhDnLXVoIaMX#yI5}>y{YvwJg4e1B1U)K&FRQ2FRn(3v6oju z8IN74f-=EmY3>V>AO+aefo1Z#PZ_oQR#L${kRbClR#`q^bHTKJPXSDNSZ7D}sc!L0 zcbsq2R-n`bQ+(G(d`*B=CPi^8=4kXVL%jr-n;)uAqFHx$p&dJ<7^4*^FM{C+BlJeF zu&Z31u(MxV9EmQ8o`5Rr;v6APEh$X&VRMJK}Ky_#&|(a*kj| z!rc=Z34-f*|u$Xc<~mK9ZuTo4n%BM69{EN4y}fj|(OZ`Gjq9}Drf^O=2u zTEqo;Ebk6tVuvzJxNT_*1M8t^0|!MZAZg7N-pgV@->>w^5VWQ+UEvLa0-5skM+UqP z7a;VHDTe6)N5^{%=cc@QfT&gJvsyIwL79^NA~O(fn0cnodRLRr0ZjM?4z*ld-R$0T z&2FEc-Ae#sjv*h}-A{edKGH;Frx!iuNFiclV|89#I~VKHeG?Rw@Hg>CUxuQ zTQOl-mt<7Qt8M74<+VCy9Evgwf5pN;Yr&3J!ruU}oW1$s`3*Y(~BR0Ql>E{Rqb*;9mm@qqHc1gmg} zxSI7<@_MzFwjq;Zn0!a3A^r5R@*jm9W2KKf21K_r$6R@MZK8*1|9<&G+rELj2aRq^ zGW)T71fmcOM5YEZ4Mn?hNz1xB?&jbrOsV5tNTaVzfSjW$a$9z` zK{!!4n%{mbqp)W4L4!ST;gxNA2t;n~uCB`Ko9PN+-O!PLLOeVw(6d?2`C=F+)S4!c zb((=cg5FZ=qDaWs3**eT?JGg5J2<>VTlV*ddahb>s?0Qg!^ME&WX{>0awQGInoK`P zI={jD4z)ys3p1fKj)~{0e5uPsj^TyiuK*bG%hZWn!!56ENd~jq;E&o)H$6D}gQTt~ z+^9#Vum6SDxI&79gF$-k*P_Xiu>{}sHAY6%1QsA!vI7AM7#JA96poj%IbG{ToKG+$ zi<&?t9;}nHO{xPSwWbC>BeXJ~KYt!?%MAde0_8Npf~g(weG&~KTrrk}59aaD(!cGk zEdiQ~2Rnc_iBoX^(w9xF&(fFamDwf|6qGE{#y;*1j|7habkpTK#IqR7cxJ%SLDfps z{Dzq*I{Vr$cYqryoK-^2n{c99bfbEr^^!yf7sI}9-t>KYiZR##WYjKIEWU6vp?N4Nt7o5gSN>#k**Z2fjC zo0B@`nt0frg+|wkeQ$r>6@F__=X1$&W1w=~oSjw;F^AS}!u2gf-a;Bc5I8F0j$xfAAm)${*(Wv5ru2$Kk5i zKWsY2LC1AbvX?NFNX2h$fQKspQ*n;iA;$(!^z;;jz*CpKMd8k<9j&b{lW_aS+B1R> zO?!(SDa{J(!4~fyS1*nb*|iPq&yRz2dKoZ;ygKQcXxS7G=M!ojO&8=Je0Q6B3=&!S zLVIBa6X-&=D6TQcu6%U^WFfcXS58fB*i4Hxi{yvfrF}U58{^N^3 zyk?`nxN`LNR(#>N|J&XT_~Pj1jsKRnphAoPxM;H}G@fwnnz7%Mp1t>}MA4f+`HO#F z{yC$99k>9$?o7%%<}UsXsT&MF{kd(FKX%>xiy&pEMF#3UsH(ot1JaA!y=eIHE&9C$;vQL=0k`A?KYyc?z^PN|AG$ZB>ciF74b9@z?;Co2be*1GutL z`FMGuc>sEAM2{sXPT7z)8ceGLnbO*K$n{zLfhZ1lC3T}Y6}@PsHXN)iR96~ATOV5@jd}G z;B0`;M^f$%^isb`X1QvIK-nHlPk27|0H>D49`vJ8!@LGO__vOXQl46@m|!D_6;S-1 zqjO~77}6*;V!iysrmZ#k9Y#;?TG20l-EqLOFwU+|Gt`M55>zNgm)huOs2L(~iB2y5 zIgFs+!_*fNA+eV&mH`EFO8D?&Pm!4Z38L~pX@tJ3ciBMDjQjg@ClIdD)cZ$x{l5ME zUY`218>#eFlm`9XDxO=7Pf|AdS)Z=ln6K+jdev>=%Dh!w_)iB$IwD&o{@qHxc{;%Q zmXPW{GrWtSkb z=*vc(`i<{g`l#A24K*>o2g?oUtVy1=>t}^#mBUL=zgk9S>IFhU4i^w~9&L47nI=)< zT>Arro1}z;w0;A!i2oAE@a7glo6H2I)HmC><>jlY0`^fp{jhcINq1KD5*$zW>4uvAHYbYFQMeTSH z_;-i&Q{d?)0@LOGY?+KT#^K<;VD~KqD{k8Dlncz*E`~m;pm|+{VSjt-i=-M?`k-#sLLGgPRRfuYS=y8Oa?;^9 zXn`z{V+*YsLHC(KdZh`G5wn~l3S@~z#A-h_$7h>lWiyKg0y}|CC4#t##pMO)B-gLL z(ZoaX8%2CNuJULPBO@p+C!1yL2dc1L42;iGc3BsDpTPeT;W$ul#D;>1HhM`2>N1cM zqd99wsMuRXDGM}U<6TVjrD?``{u3FRp6FjUj{TP9353*aFN=*i@Bdd2O|I(?C`~Wk z`}8=^ln&!%;n0Jn%h@&xvb%wC`DXq}obGpO^{11^|N4st%}WV>k5hrsInU&$>G>3> z)5bs3d=`r~wCO0eb@q|8dm?DFUvuG1Wd6l%h-3K#Y{DOPIw&^i<_W-xC>ICbHpYK9=VGj4zbU>wpjB2^VyRG`PCR=gS%6oer@Tb7!dDpB{% z(+~g$^+@1H>XO@f)0kAnha$vKCxCV`vWA6UcKhsEU8aRD&WMpe1BvHw#xqgrB zfMu-x1*w&Ps|n`)qDsyF-()TmASG@(@bZ#c-)n-(eII>`zU8VW=TNt%uYab;!Y zT~kxma2+9)=Whfr^LENra99)$fU@fkjLxidKkkd4|82mqDztPcNAcE58H31$B`Fmc zC_;uQRO*;bZUCn78kU^NtXLYwCPyORlI}}-rS);0u}I_C3dpVZf!)Z=t_1RAf;9p< zMd-LdamJs#MlH;S+7HDJWX$%IV9}+0%D8~1HGAN%fpl|+ah`NtObnIL3;ruV`sX2p zP#O+MZ&vz^pAyg1p#nNN9b8XSxg=uGN+7iE`WGYkzh7xRfUHUI3&gS|W}=?7D|J}O zFI`>RmsEe)^{la{D|rOmR!#pa_%?)#D6Wr!iZwWrAlFxrDDLh$Z17DdTU(o{gq*Ye zzl*2fss1Ai86D*1<`Lw7TMosjw9GlZk zkY4`#d;XtQ-c~=C-fYoWX6XPl%+R@Z3=<r&OL1=@*~b$-3ieB1QWWH?rhI6nH$Z*I7N|W4<=U2M_>BZ}WEB0t?M#O1BI!z$ zKGrJOVQC@~tLx}*T4UEP(x7C3KZb)t4_ID8IZ%ukbMuq@{2@@{HOzv>lYVlKpG2+H zCOIvkCW71q=WWYBh)_Yj-)DM)O?}XPRlqFBJ$d-#)IvV}l9-K%^Y3U?Jl*u_ zMT2lDx2$&RV(*ooS+by02*M#W-S$pEhqaEEr~dDmQF@*#Vf4U%z@}*l=h6Lu!6B$2 zF)FY!G7?wBhg#HR+31!aLjhS?*_qkd7imiWH@o`;Fc1icW)?314MZ&T0E%44VH4?` z4`F*N>uouw(bkhbbBXNd0akzuH@-7!rf(3D1CqwVi0nEu_8^BBnY0ZU85vPrLlGPy z3^NL<&M-TEll1I&EM|P=eosu9v@`aM&Ow+UX=LjM}JpW$R z=pQG3Lh3f)J`X4MUMnm}Bxes%wrHAiaV_?3eOhqZaziV_pADDvQg$@t@5%Y7dVkYl zLMpS%8Er|~O`YDFbGb!Lldo?5*;3OV)?k$G39ns1WJ_)9$*Qe8j5Ri7@lN;tLVyMv z%D<@ir7>kzt}Q_`;N2dWA%i34DDAq4PoBy$UeDuf!U2bb--K%UB49ySB z#0B;A*gFxfU#EVn47z5`U}XCYgkdL}#F>7t+4t7bbo=vzPaqTBee>o`5oo9b*v`hWbT91A62YsZ*LExuVwr}CMGTIVnXYNzm+FHNap_qSe5X)F9;$E z*RNj(%jS339jyT&*LYaMloS#SO(IS001;KvL*Y7WV;NhyQ>(cdWggG?XFV^Mk1k1t zUt;pkTJG};d|@;4bLp|!hRI)IH>=Z%l6K~Qi1(aiMl&3k7oYdapm+=tn8gvEt1nZ5 z+jaJVuAHg_%Snwh_@tTv@-KV!ha_bRcq9JMeY8!r2(4UyTQa~S54{_Yg5AteJq4V? zfoOiX4E@PN;G`;0rWdvTAXjK8qZJZ6$Nn{FXxYI{DAQS9Gvxv(! z`p!!ZMhVeh{Exik^q6vD6+hO)rLOEgCHI~}+w1o@xvcmm@@#``t+qbV*GB$y!Qyu? zz-#B%r-g@RNasi|%{n4PL%Ppw@heF#U@LV!W4TdXG^U=An(@DT?Ff5NU3ZA)V;6nO z!UNrsn+lFMZ92iqu=RI+>CZCi(>r!He-rnIvM$HhmARZZPE0S{^m^pQsQ3*9(%g*E zTPcFGhI4Gz73U9+)jq^V=ZF(ENtRNnwdu#$FODsQwNsz{%aXiRBwDz@sgBMt?8%}_ zp+K1q6#n1By?lrMZK&;eOy)i}Pxm@Dokx=fFmrT5nwOrTM<~3H1YW@wkf(PHph5S0 z260Yk1ZJW`9(%NZjd8h;suQn3KR|sN?LRG1&|5*T2$VRM+4N}lQ^N$-$vjoL?t|U4 zKgh>)9Zy!o?q*-grT;e zT3NZVdP6OV^ps+#FS05m(9G=y#7jBD z5!f9GmFrv;KM6}vn^B9lj(*5A%i74J5TMjx$X{YcCtD(5SqDQ$M9dDeD!s*s$fMlg$C1kQ_tRyKTcuZSidR z#Z>=p!}ZM8cuqw$FktmtTP=X6SxQ0w+xENA?Wg-QtxH^hW*>n*hDIp8?l5CBb8 zIFR22C(C#cgkDN0UAlDc+_{YS1uMr@tEP}{15f#h%*venjsl8Rw~SQ8Q0ZmQ)wr$}ExU80Vi=v2i0N{qozlcQuQR%}9OU236lJ1F)J2!k#RAh_2X= zX8&I3`e8pr47}4hhV=T-?{!?aDG24$U;_~a8%YT?N6lI7s~81gRacCk)5W9*yFeR^ z#8rFli0L~I3%`Fvx}=pD+I}Fv*eBmo!6s8W!KK6a$*q*pwl>;5`@^n=>e{4B^XWWO z!j#_fLnD((nfJpVlcJO9_d{;G*Jc5F{Qu)&7PDW#S85796YNBS0oXFucWrSRlFY>I zI55M?)Ab0*lLiS*D86mlveO^iHsG?Q`#$*e3(WGV-~=MUz(SuG+5xezK=xU#rd80& z(bpB=LuAv3j{z5=d9)RqtdAG^Oj*uaAA<3jX>bsazgmZBhD5N0Ap;cyL$wK;7W6SV)NBw8pQYlxE+t$?wY3vdQF_+d}> zrbUiwG?R~6MF*~Vb-dKwhfNib5YVZ{3U-^MkjVUV=Skim-dYZ4W0wOgu1BySO15gb ztVQyFoS8t02ODCn(+5TL>Y!B*JMLKQOIIhS3dv4Q#DgsGuD(9#Scq6c-KZ(;a@Xun zCpD7s0AlTHn6>n;DSePB%t#xpb3fNTvMi!yC{9j$CngFiwrKC|@39e%dkO}VP%z_Y zndY}LZ&RN@-R8L`ZL${fd6+LauxddwB7)z|?cNv|+a-$u6vL1c&Eip6EP`(^3``kZ zu-TX5Arj2sB?GTz-n2$WK@+AywKFtdhjVh}sZ42IDFAI66&v0~X( z3ur%6>JSI{`1!dXx70$P`^gG8v{bQ0Xa@4M%GC@#EsJ#=6-fgltpgO5+-PHWn8@!q z4o!D8FkHue5r&zX=kP4GP^vyc)29;ZM8~1|)tw~KlJ5KN!FRP#l!lKGeP!IC*&hxT zCs7;)m;oD%`4S9F@WRt;D2-DfJ}t|sX#U^4c{A6j9^AhGnYR2X9=&DoT&gEb9yIn6 z#FYqv_Nzi1?Vb|0Y*g_9Gx~9`1S@lJxP!UQrE@)4wErTDsBJ9X`dVdy@(3JXQUv)c z4E;|_nohpzrJ8di`UVEEUSE`rl~kqYTh02*+-sqr4Fg;Eaj+w&57)U~I!}@Y^ARW1 ze>iHCW8IZA2v_bBv|__?YNX9zF*7aDRNh9t+1}XWOHwTkMGb;SL=k+A`DV~9RD`jb zaOgQ?dTdu!JWnd`yT|VH$Z4`yTpYa2;ZUw?-wbZ`iIi4D(-wWO1PO0A)Sl%Yfqk2` z>}~b;wMEX}Nf#q$1&r1$s-7pgL-Us#I;xjI#CwQRSMhA4WH{Kc+DqKyAFF+2Xd6$8 zHd2DkfO=in2E_S`Vc^&*10(EEW(OFU2Vp#j&vg;h`taV~-o4z8FlBTR5#ndfHr;0yC+vKm+yqmY zPQF)a+KmY?gR8*c$kj<|x+8gN)CX;9QS>*0pH|4GEuSoFW9dW0x_I!{?|1VxpM}2W zbD$A1Bc&y>sa>a*X5+v|^Z`!L4C0|p%Oo=ObJ4xs?D4U;-)!UR#`ePCBh!$y4-zk~ z=#l)plXFH`&>SlSTRFEQ{Wudd4XiO?08?j~r9JXq$2Doi%>D$}$qBKe1Rg!I*$``* z&>#0(D|V_w-g(F?C4piMUpP~5yp|*11Lq$D^-Z4A*z-wyW#&{1@aBX<6IK`;!UE>q zOVkO-rp41>Lz}wY2Tic^(8o>$!>yoIYbrD-z7Lo<0&@xIa8l6+?_NS`>WMWlw!zI% z(}&ByAIxM%Mn(ZtI1dH*QwnTO2+$+ZFwQj1IJCCIaKQ!aRN27Spf>Xe26#Wb+#2_D zTJcjIoOn<|6kdLQe&?W+3&AYaU|C4dyE+TE|RC- z&<@b68N8J!$KhxueV72a8Vj6vy)~`nx~IHZ{M3!ow#&;Y$08s+K6`yHJ6bVg#v%&W3qo%#`?|Jr^F^ku=VlfU(}n1O z@K9_eG)m1je1-&!SKjCAkL=h&FkM? HxXo6oQ3wpQbeCjg8an5fR$me052JPHDO z2y{NRdMe0mt80+QtI#`v{<8q;Xy;Vq<$li!2r;@98OC5-7rigSanY7>AjKCZ!%Tp5 z2m)2Z0ZV)Yj1RqiziL_Z!kAb9SXE_FTLkYQT>_rj@^tbJ^?}-E#hqIecGK)KytqgL@c3mfeMWXma z&$^SGcjxtcD4q_0Z~cCfa`c60e#2Aceg5fL-lf2Tk!i5P+^jvYZkUluWM4foyKW4F z7bXDTI5?wu>UP!`@Tr4nLj-ts1pm*rCldPI5==X z2U?&FQd4jU=9Jb!qJ7->qZIY8s>MA#qm>+II6%zqB(l! z$G%z!FH;C$?DvR$eZ48ykfAgU2PwoyV)s?9&1WUTS$6TKC{6H>6cAJR;}1r-R#Zx+ z@{CBr;ARsAChq*9?!aaj@)jtS%8KA-g1X672cd!V;p8Z2>-p+PmPR*r?<+GB&Q^aFyo7VdCeM zCV3=HWwoadnn*b9i}Dl;T#5yTWf#c1k45c{Km$pUZ=o-;yYK}h53f%6oDNcYM@AiQYz9S{&^kXiVM z)dF_Yaa<}%B;}b9Wvw~XXa7j7qpBBNBbaDj`(%yr1cs#=oL7DKzE67U*9CWye_vn3 zNsWOX@|ufEoJ4+WhO>((8WM3}neIk~mOIBl_)$K^Fl3$pue@j*<<(Zaq|r?I0xFZ~ z;>?hJ_stY@DAjrnfP7s&4j5HZe~?k@?jN_vIc~~QAK7Swm_Cfm0GMC1?ky68rT>WN zcAr&T2%2;TY+M@mTFc0XQj>772Id|6J|zM>L^CN?l)NxMmph4#vQBVd9+xLG_pI-C z^d!I_P?JuXn|*+s7xEoF%H{`#o;2D zy+v7^Yckh39_JtNf%bk!%}lqRAQnKh3`0_NN78_fv~lz||DkRKT&PC#ow^VzJ%Xh`4@HLyhMje1jI z2vP(GK6C)>@}Me`s3+h2gYS(>kedoh94c~oWSf4U!-xNCKmcA#%(>dm#jPS;D>YYB zUtsAlxWjniFF5AQ4TL}$r|@ykCT7U4eEzBfWCkuZ*;OZ?W;sv{3_@PIxCR5B$AJYX zAMyD7?78DeV=XY`XkAPAks>(N!|=p(VPQg0`aTDJu@+h=IeN<=eT0KbI|yz&xJ0^P zWzeUHAz?8Bv=97<+z2Y+Sbbzwu6a0sQT{lLM5tmh{ac-ZRJs^6-Y~$elf^iZjKoM6 zt`2;HL!QCou#K;{N<{4~J33_u2!Xa*2f3uE>%K!#*-mU#vSrbHG8 z4pu(GiKSYA_*}hZ&|ShnBRHcA6Sp}qb2SKEZdEAS9$_x!7pxfVq%mc9m*Px4GhFsG z>S*s2+*f5R#0EiZR)fiJm=%63wZ1Z2ig0JTcu^3^6by+gW4Xqv;1*-M%f?O@kb^5S?nOM&Vv;QAJr&+!^cuE30Av} zJN5y#xE6svX&OF5x^;dN<-u1sH2bW z!N@s)h(Z_?7%op?+uvXH%*<#^&1l5Ib{<;Jpfiie5q&3}zO(Q~l-P zAX`R$UMI<}35r9Oq}M(WSvQ1Wq-1YBC{(0|?u?G$p-CDBS zLd*Gn>KBNO{<$SH3ovV~DhrZM|K(OmPY_83o@=Du%5U+g#GpZrt%fikwwTuRd$U z!J0A%4G2|eh=zMpySO2y9m8N-C3k4$mewnVu`CsSN7u8|gNp9`n;eDz4SnqY$+vu5 Z-<0!{t!%rQiVCh@@w}>h=3lPe`9InJJIDY4 literal 0 HcmV?d00001 diff --git a/sandbox/src/activity_predictions.csv b/sandbox/src/activity_predictions.csv new file mode 100644 index 0000000..339a974 --- /dev/null +++ b/sandbox/src/activity_predictions.csv @@ -0,0 +1,126 @@ +test_activity,pred_activity,mse +0.2881355932203389,0.0320321559160905,0.14964211691085133 +-0.2967032967032966,0.015439026965906827,0.14964211691085133 +-0.2444444444444444,0.24127334651266327,0.14964211691085133 +0.9649122807017544,-0.24960949249244144,0.14964211691085133 +-0.3900709219858156,-0.05166626386959243,0.14964211691085133 +0.3935483870967742,0.05944704079236342,0.14964211691085133 +0.303030303030303,0.34077228058006337,0.14964211691085133 +0.7227722772277227,0.6936648867205155,0.14964211691085133 +0.4814814814814814,0.1716131833688073,0.14964211691085133 +0.4901960784313726,1.9498261421907586e-11,0.14964211691085133 +-0.1225806451612903,0.007147101705297528,0.14964211691085133 +0.1578947368421053,0.41133347124907976,0.14964211691085133 +0.1450381679389312,0.05225591286135991,0.14964211691085133 +-0.1188811188811188,0.020597466404647435,0.14964211691085133 +0.0804597701149425,0.05742342798246397,0.14964211691085133 +0.3958333333333332,0.4907407352431381,0.14964211691085133 +-0.5522388059701493,0.0023912471372003305,0.14964211691085133 +-0.2396694214876032,0.025164311319724367,0.14964211691085133 +0.1132075471698113,0.5333468036220377,0.14964211691085133 +0.2363636363636363,0.0037748604729087782,0.14964211691085133 +0.0571428571428571,-0.01917858705622959,0.14964211691085133 +0.2291666666666667,-0.03467438031143768,0.14964211691085133 +0.5,0.016519049195556534,0.14964211691085133 +0.2804878048780488,0.24907439357940833,0.14964211691085133 +-0.2452830188679244,0.00011930710025189262,0.14964211691085133 +0.263157894736842,-2.0804846379430334e-06,0.14964211691085133 +0.063063063063063,3.480491783291631e-16,0.14964211691085133 +0.858974358974359,0.5972619003647274,0.14964211691085133 +0.776470588235294,0.3776222242068719,0.14964211691085133 +0.3402061855670102,0.030945842862629747,0.14964211691085133 +0.1724137931034481,0.016461106920334194,0.14964211691085133 +0.2125984251968504,0.35587005564413043,0.14964211691085133 +-0.1794871794871795,0.4435127664251056,0.14964211691085133 +0.8873239436619718,-0.04613697966917962,0.14964211691085133 +0.04,0.004765907549727924,0.14964211691085133 +0.3043478260869565,2.1747621837153478e-06,0.14964211691085133 +0.1044776119402985,0.009638815672365748,0.14964211691085133 +0.0,-0.09551030362326311,0.14964211691085133 +0.849624060150376,0.04949132434795511,0.14964211691085133 +0.5533980582524272,0.02969272996581439,0.14964211691085133 +0.8043478260869565,0.08409662196404835,0.14964211691085133 +-0.381578947368421,-0.0007688401570315462,0.14964211691085133 +0.3538461538461539,0.001479319172891485,0.14964211691085133 +0.8645833333333333,0.09408851102519691,0.14964211691085133 +0.2307692307692308,0.04408560431473308,0.14964211691085133 +0.0598290598290598,-0.03307559174759021,0.14964211691085133 +0.2463768115942028,-0.05906986495431228,0.14964211691085133 +0.2444444444444444,0.001591913584868495,0.14964211691085133 +-0.0416666666666666,-0.0007622742405358294,0.14964211691085133 +0.25,-0.03900115334523043,0.14964211691085133 +0.290909090909091,0.0123117938369884,0.14964211691085133 +0.9161676646706588,0.004707789193654139,0.14964211691085133 +0.7124999999999999,0.08778887688772787,0.14964211691085133 +0.0276243093922652,0.04194115286865411,0.14964211691085133 +-0.0799999999999999,-2.7684018572137924e-08,0.14964211691085133 +0.1688311688311687,0.03602496839646857,0.14964211691085133 +0.018181818181818,0.032611672740677305,0.14964211691085133 +0.0204081632653061,-0.037058324334827655,0.14964211691085133 +-0.0769230769230768,0.020579005546984375,0.14964211691085133 +0.0975609756097561,0.10318442486572048,0.14964211691085133 +0.1515151515151516,-0.004692559786531981,0.14964211691085133 +0.9190751445086704,0.09857295500067376,0.14964211691085133 +0.1902439024390243,0.42120451353592764,0.14964211691085133 +0.0728476821192052,0.010757164652300638,0.14964211691085133 +0.3793103448275863,6.349676610973473e-06,0.14964211691085133 +-0.0769230769230768,-0.024464769244889276,0.14964211691085133 +0.4054054054054055,1.214944705492033e-09,0.14964211691085133 +0.3333333333333332,0.04982603536277974,0.14964211691085133 +0.925531914893617,0.4508852295127753,0.14964211691085133 +0.2125984251968504,-0.011076788299805719,0.14964211691085133 +0.4621848739495797,0.43512098105399505,0.14964211691085133 +0.3706293706293706,0.07315018982579526,0.14964211691085133 +0.8431372549019607,-0.02129938809060519,0.14964211691085133 +0.5853658536585367,0.030762693724065617,0.14964211691085133 +0.3703703703703704,0.8625794377009051,0.14964211691085133 +0.3057851239669422,0.7588897270737066,0.14964211691085133 +-0.0754716981132075,-0.013427432690170042,0.14964211691085133 +0.0708661417322835,0.0347600994637629,0.14964211691085133 +0.5245901639344261,0.003518616773381634,0.14964211691085133 +0.2365591397849462,-0.0009694495960736764,0.14964211691085133 +0.3066666666666666,0.2878083950454676,0.14964211691085133 +-0.3,8.362186080916291e-10,0.14964211691085133 +0.1503267973856208,0.00012279542152452482,0.14964211691085133 +0.064516129032258,-0.22832277661647069,0.14964211691085133 +0.1604938271604938,0.1610779387444944,0.14964211691085133 +0.1964285714285714,-0.024578131683524337,0.14964211691085133 +0.8810810810810812,-0.07311905484122926,0.14964211691085133 +0.2473118279569892,3.33716665184024e-06,0.14964211691085133 +0.6723163841807909,0.5147050575689928,0.14964211691085133 +0.8974358974358974,0.2937144415451197,0.14964211691085133 +0.2714285714285713,0.36001587652149114,0.14964211691085133 +-0.2299465240641711,0.08175471879130508,0.14964211691085133 +0.4366197183098592,0.1270522912599153,0.14964211691085133 +0.1746031746031746,-0.06393134971594397,0.14964211691085133 +-0.0847457627118644,0.024660612223296522,0.14964211691085133 +0.1935483870967742,0.08158258631906268,0.14964211691085133 +0.0291262135922329,0.1345346941393369,0.14964211691085133 +-0.4583333333333333,0.02898012682282674,0.14964211691085133 +0.4411764705882353,0.010457736297429802,0.14964211691085133 +0.0384615384615385,6.436518099689194e-05,0.14964211691085133 +0.6860465116279071,0.00039218972214958463,0.14964211691085133 +-0.0482758620689655,0.12318231100298747,0.14964211691085133 +0.2941176470588236,-0.04733234696326069,0.14964211691085133 +0.0082644628099173,0.09329049525539315,0.14964211691085133 +-0.1489361702127659,0.0062734019313363835,0.14964211691085133 +0.3661971830985915,0.0002757070913911144,0.14964211691085133 +0.2641509433962263,0.5024898830236015,0.14964211691085133 +0.1910112359550562,0.8994354486043559,0.14964211691085133 +0.0384615384615385,0.34745428244543786,0.14964211691085133 +0.5391705069124424,0.04179207352799518,0.14964211691085133 +0.8148148148148149,-0.06950291141584586,0.14964211691085133 +0.0709677419354839,0.031778961045302395,0.14964211691085133 +0.2575757575757575,0.25455544632615257,0.14964211691085133 +-0.0172413793103448,-0.002083882672317004,0.14964211691085133 +0.0769230769230768,6.128097381832908e-54,0.14964211691085133 +0.1014492753623188,0.22530801421134486,0.14964211691085133 +0.834710743801653,0.524686854416369,0.14964211691085133 +0.7222222222222223,0.23396185091436283,0.14964211691085133 +0.825,0.5184310788180837,0.14964211691085133 +0.5038759689922481,0.011002819150578156,0.14964211691085133 +0.8631578947368421,0.28418029435382075,0.14964211691085133 +0.7086092715231789,0.4491041626707194,0.14964211691085133 +0.0,0.39584627396853644,0.14964211691085133 +-0.0344827586206896,0.14835743656714118,0.14964211691085133 +0.9148936170212768,0.7776484039691169,0.14964211691085133 diff --git a/sandbox/src/approximate_bayesian.py b/sandbox/src/approximate_bayesian.py new file mode 100644 index 0000000..1342fa1 --- /dev/null +++ b/sandbox/src/approximate_bayesian.py @@ -0,0 +1,70 @@ +import numpy as np +import pandas as pd +import matplotlib.pyplot as plt + +# Define distance function based on the paper +def distance_function(y_obs, y_sim=0): + """ + Distance measure between observed and simulated outputs. + """ + sigma_sim = np.std(y_sim) + if sigma_sim == 0: # Handle edge case for zero variance + sigma_sim = 1e-6 + return np.sum(((y_obs - y_sim) ** 2)) + +# ABC algorithm +def abc(data, y_sims, y_obs, epsilon): + """ + Approximate Bayesian Computation using pre-simulated ABM data. + + Parameters: + data: pandas DataFrame containing ABM inputs and outputs. + observed_activity: Observed output value. + epsilon: Tolerance for accepting parameter sets. + + Returns: + posterior_samples: DataFrame of accepted parameter sets. + """ + accepted_parameters = [] + + # Iterate through all rows in the dataset + for idx, row in enumerate(data): + y_sim = y_sims[idx] + + # Compute the distance between observed and simulated outputs + distance = distance_function(y_obs, y_sim) + + # Accept or reject based on epsilon + if distance <= epsilon: + accepted_parameters.append(row) + + return pd.DataFrame(accepted_parameters) + +def main(): + # Load ABM data + data_path = "../data/ARCADE/C-feature_0.0_metric_15-04032023.csv" + data = pd.read_csv(data_path) + input_feature_names = ["NODES", "EDGES", "GRADIUS"] + input_feature_names = ["ACTIVITY"] + predicted_output = ["ACTIVITY", "GROWTH", "SYMMETRY"] + input_features = data[input_feature_names].values + y_sims = data[predicted_output].values + fig, ax = plt.subplots(1, 3, figsize=(15, 5), sharey=True) + for i, feature in enumerate(predicted_output): + ax[i].hist(data[feature], bins=50) + ax[i].set_title(feature) + plt.savefig("y_sims.png") + + y_obs = 1 + print(f"Number of samples: {len(data)}") + return 0 + # ABC setup + epsilon = 500 + + # Run ABC + posterior_samples = abc(input_features, y_sims, y_obs, epsilon) + # posterior_samples.to_csv("posterior_samples.csv", index=False) + print(f"Number of accepted samples: {len(posterior_samples)}") + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/sandbox/src/bayesian.py b/sandbox/src/bayesian.py new file mode 100644 index 0000000..eee26ab --- /dev/null +++ b/sandbox/src/bayesian.py @@ -0,0 +1,41 @@ +import numpy as np +import matplotlib.pyplot as plt + +# Generate observed data +np.random.seed(42) +true_mu = 5.0 # True mean +sigma = 1.0 # Known standard deviation +N = 20 # Number of observations +y_obs = np.random.normal(loc=true_mu, scale=sigma, size=N) + +# ABC Parameters +mu_prior_mean = 0.0 # Prior mean +mu_prior_std = 3.0 # Prior standard deviation +epsilon = 30.0 # Tolerance threshold +num_samples = 100000 # Number of prior samples + +# ABC Sampling +accepted_samples = [] +for _ in range(num_samples): + # Sample from prior + mu = np.random.normal(mu_prior_mean, mu_prior_std) + + # Simulate data + y_sim = np.random.normal(mu, sigma, size=N) + + # Compute distance + distance = np.sum((y_sim - y_obs)**2) + # Accept or reject + if distance < epsilon: + accepted_samples.append(mu) + +# Plot posterior +plt.figure(figsize=(10, 6)) +plt.hist(accepted_samples, bins=30, density=True, alpha=0.6, color="blue", label="Posterior (ABC)") +plt.axvline(true_mu, color="red", linestyle="--", label="True Mean") +plt.title("Posterior Distribution of $\mu$ using ABC") +plt.xlabel("$\mu$") +plt.ylabel("Density") +plt.legend() +plt.grid() +plt.savefig("abc_posterior.png") diff --git a/sandbox/src/gp.py b/sandbox/src/gp.py new file mode 100644 index 0000000..e787dcb --- /dev/null +++ b/sandbox/src/gp.py @@ -0,0 +1,85 @@ +import numpy as np +import pandas as pd +from sklearn.gaussian_process import GaussianProcessRegressor +from sklearn.gaussian_process.kernels import RBF, ConstantKernel as C +from sklearn.model_selection import train_test_split, KFold +from sklearn.metrics import mean_squared_error, r2_score + + +# Load data +data_path = "../../data/ARCADE/C-feature_0.0_metric_15-04032023.csv" +data = pd.read_csv(data_path) +output_names = ["ACTIVITY", "GROWTH", "SYMMETRY"] + +# Input features and outputs +X = data[["NODES", "EDGES", "GRADIUS"]].values # Inputs +y = data[output_names].values # Outputs + + +# Step 1: Split data into 75% training and 25% test +X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=42) + +# Step 2: Split the training set into 75% training and 25% validation +X_train_final, X_val, y_train_final, y_val = train_test_split(X_train, y_train, test_size=0.25, random_state=42) + +# Step 3: Perform 5-fold cross-validation on the training set +kf = KFold(n_splits=5, shuffle=True, random_state=42) + +# Define the GP kernel +kernel = C(1.0, (1e-3, 1e3)) * RBF(length_scale=1.0, length_scale_bounds=(1e-2, 1e2)) + +# Train a separate GP for each output using cross-validation +gps = [] +cv_scores = [] + +for i in range(y_train_final.shape[1]): # Train a GP for each output (ACTIVITY, GROWTH, SYMMETRY) + fold_scores = [] + for train_idx, val_idx in kf.split(X_train_final): + # Split the data into training and validation sets for this fold + X_train_fold, X_val_fold = X_train_final[train_idx], X_train_final[val_idx] + y_train_fold, y_val_fold = y_train_final[train_idx, i], y_train_final[val_idx, i] + + # Train the GP on the current fold + gp = GaussianProcessRegressor(kernel=kernel, n_restarts_optimizer=10, alpha=1e-6) + gp.fit(X_train_fold, y_train_fold) + + # Evaluate on the validation fold + y_val_pred, y_val_std = gp.predict(X_val_fold, return_std=True) + fold_score = np.mean((y_val_pred - y_val_fold) ** 2) # Mean Squared Error + fold_scores.append(fold_score) + + # Store the GP model and cross-validation score + gps.append(gp) + cv_scores.append(np.mean(fold_scores)) + +# Print cross-validation scores +for name, score in zip(output_names, cv_scores): + print(f"Cross-validation MSE for {name}: {score:.4f}") + +# Step 4: Final evaluation on the test set +# Final evaluation for the "ACTIVITY" output +activity_gp = gps[0] # GP model for "ACTIVITY" +y_test_activity = y_test[:, 0] # True test values for "ACTIVITY" +y_pred_activity, y_pred_std = activity_gp.predict(X_test, return_std=True) # Predictions for "ACTIVITY" + +# Calculate MSE and R-squared +mse_activity = mean_squared_error(y_test_activity, y_pred_activity) +r2_activity = r2_score(y_test_activity, y_pred_activity) + +# Print R-squared value +print(f"R-squared for ACTIVITY: {r2_activity:.4f}") +print(f"MSE for ACTIVITY: {mse_activity:.4f}") + + +# Create a DataFrame with required columns +results_df = pd.DataFrame({ + "test_activity": y_test_activity, + "pred_activity": y_pred_activity, +}) + +# Save to CSV +results_df.to_csv("activity_predictions.csv", index=False) + +# Print the first few rows of the results +print("\nSaved predictions to 'activity_predictions.csv':") +print(results_df.head()) diff --git a/sandbox/src/mcmc.py b/sandbox/src/mcmc.py new file mode 100644 index 0000000..bdcf8a1 --- /dev/null +++ b/sandbox/src/mcmc.py @@ -0,0 +1,91 @@ +import numpy as np +import pandas as pd +import random + +# Define distance function based on the paper +def distance_function(y_obs, y_sim): + """ + Distance measure between observed and simulated outputs. + """ + return np.sum(((y_obs - y_sim) ** 2)) + +# Define a log-likelihood function +def log_likelihood(y_sim, y_obs): + """ + Calculate the log-likelihood based on the distance function. + """ + distance = distance_function(y_obs, y_sim) + return -distance # Negative because we maximize log-likelihood + +# MCMC sampling function +def mcmc(data, y_sims, y_obs, n_iterations, proposal_std=1.0): + """ + MCMC sampling algorithm. + + Parameters: + data: pandas DataFrame containing ABM inputs and outputs. + observed_activity: Observed output value. + n_iterations: Number of iterations for the MCMC chain. + proposal_std: Standard deviation for the proposal distribution. + + Returns: + samples: List of accepted parameter sets (posterior samples). + """ + n_samples = len(data) + current_idx = random.randint(0, n_samples - 1) # Random initial state + current_theta = data[current_idx] + y_sim = y_sims[current_idx] + current_log_likelihood = log_likelihood(y_sim, y_obs) + + samples = [] + for _ in range(n_iterations): + # Propose a new state by perturbing the current state + proposal_idx = (current_idx + int(np.random.normal(0, proposal_std))) % n_samples + proposal_idx = max(0, min(n_samples - 1, proposal_idx)) # Keep within bounds + + proposal_theta = data[proposal_idx] + proposal_y_sim = y_sims[proposal_idx] + proposal_log_likelihood = log_likelihood(proposal_y_sim, y_obs) + + # Acceptance probability + acceptance_ratio = np.exp(proposal_log_likelihood - current_log_likelihood) + # Accept or reject + if random.random() < acceptance_ratio: + current_idx = proposal_idx + current_theta = proposal_theta + current_log_likelihood = proposal_log_likelihood + + # Store the accepted sample + samples.append(np.append(current_theta, proposal_y_sim)) + # Remove duplicates in the samples + samples = list(set(tuple(row) for row in samples)) + return pd.DataFrame(samples, columns=["NODES", "EDGES", "GRADIUS", "ACTIVITY", "GROWTH", "SYMMETRY"]) + +def main(): + # Load ABM data + data_path = "../../data/ARCADE/C-feature_0.0_metric_15-04032023.csv" + data = pd.read_csv(data_path) + + # Extract inputs (theta) and outputs (y) + input_feature_names = ["NODES", "EDGES", "GRADIUS"] + # input_feature_names = ["ACTIVITY"] + predicted_output = ["ACTIVITY", "GROWTH", "SYMMETRY"] + input_features = data[input_feature_names].values + y_sims = data[predicted_output].values + + # Observed value + y_obs = [-1.0, -10, 0] + + # Run MCMC + n_iterations = 10000 + posterior_samples = mcmc(input_features, y_sims, y_obs, n_iterations, proposal_std=5.0) + + # Save posterior samples to a file + posterior_samples.to_csv("posterior_samples_mcmc.csv", index=False) + + # Print summary of posterior samples + print(f"Number of samples: {len(posterior_samples)}") + print(posterior_samples.describe()) + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/sandbox/mdn.py b/sandbox/src/mdn.py similarity index 100% rename from sandbox/mdn.py rename to sandbox/src/mdn.py diff --git a/sandbox/src/posterior_samples_mcmc.csv b/sandbox/src/posterior_samples_mcmc.csv new file mode 100644 index 0000000..8cb3465 --- /dev/null +++ b/sandbox/src/posterior_samples_mcmc.csv @@ -0,0 +1,11 @@ +NODES,EDGES,GRADIUS,ACTIVITY,GROWTH,SYMMETRY +1715.0,2074.0,57.0,0.5,0.4854700854700854,0.6857142857142857 +1936.0,2368.0,54.0,0.8089887640449438,1.36022792022792,0.6415094339622642 +2061.0,2521.0,62.0,-0.0754716981132075,0.9878062678062676,0.5290322580645161 +1997.0,2449.0,55.0,0.7730496453900708,1.293903133903134,0.7132075471698114 +1695.0,2056.0,53.0,0.1219512195121952,0.481139601139601,0.7833333333333333 +2214.0,2711.0,56.0,0.2592592592592593,1.114074074074074,0.4622222222222221 +1898.0,2328.0,61.0,-0.5625,1.2252991452991453,0.56 +1982.0,2414.0,59.0,0.7605633802816902,1.2868376068376068,0.6978723404255319 +1985.0,2434.0,56.0,0.6855345911949686,1.2996011396011395,0.6377358490566039 +1814.0,2199.0,56.0,0.28125,0.6632478632478631,0.5727272727272728 diff --git a/sandbox/src/test_predictions.csv b/sandbox/src/test_predictions.csv new file mode 100644 index 0000000..7fb2603 --- /dev/null +++ b/sandbox/src/test_predictions.csv @@ -0,0 +1,126 @@ +ACTIVITY,GROWTH,SYMMETRY,Std Devs +0.032032157730647846,0.795663276554849,0.5529447079264727,0.4512581223962164 +0.015439027529708334,0.8533861878031682,0.6313000952317039,0.43333887134935395 +0.24127335457520924,1.4048167250837855,0.696977495041543,0.40887353551893363 +-0.24960950261147952,0.1978521500141719,0.2768234260362332,0.31553050123897 +-0.05166626365392685,1.2263328288899058,0.6599885817713087,0.19966018175830144 +0.059447043798926076,0.9435340045081364,0.6445924088894532,0.4896574255649451 +0.3407722870794434,1.1623070821567212,0.5671146753289017,0.32464638862027523 +0.6936648882906145,1.4335096227617683,0.691303687601259,0.13096516478067305 +0.17161318525300395,0.9061969873081497,0.6808369773958912,0.2696555589968289 +1.9498270134622498e-11,0.005572640513373582,0.023993791342587608,0.6503444102225956 +0.007147102125339278,0.628350492629497,0.5920598350137529,0.5210047951998896 +0.41133348074168563,0.9277305066350501,0.6772041816870352,0.33550503405525073 +0.052255914384086444,0.4761717609766739,0.5737192820549789,0.472623127725131 +0.020597467560319292,0.7181216452911201,0.7176274380391636,0.3652785375531416 +0.05742343236103416,0.9826556423885796,0.6406201105441037,0.43307770913995697 +0.4907407394255954,1.1782549633304278,0.7441949158998122,0.24738897662651071 +0.0023912473447064973,0.575901345901925,0.695962685999826,0.5514359949598538 +0.025164312528345896,0.8864615506273303,0.6902934429899745,0.47790931108180795 +0.5333468147530066,1.2694660378409197,0.6048968470514298,0.32722545118498525 +0.0037748608327633233,0.3756151145313195,0.3668496221132053,0.6005126815441822 +-0.01917858800113109,0.8853001138042995,0.5293593290369693,0.4184308799289116 +-0.03467438218627103,0.4170348639029174,0.34857248946580643,0.4773958349052343 +0.016519050168824153,0.4316885357153286,0.4754608907137614,0.5132266708782663 +0.24907439610968793,1.2145017721722835,0.683124544873409,0.31264543958951113 +0.00011930711861959361,0.1564397286937008,0.19355201049669427,0.6294361284771391 +-2.080485109545165e-06,0.09026402163227912,0.2846594467292429,0.638597713481199 +3.480494096066391e-16,0.0005441560416944747,0.006978307284533555,0.6508317752381056 +0.597261906932249,1.4036152930332548,0.67885223086451,0.29181798620527843 +0.3776222264452026,0.9439355324887517,0.6016715016242022,0.12859166239000386 +0.030945844910747238,0.6020829205644009,0.9494864662856806,0.5270106002093043 +0.01646110794869484,0.6770992587234917,0.28066931903240233,0.5586071400435835 +0.35587005563163554,1.1211142058564816,0.5917815776709432,0.13405814726653495 +0.44351277256716626,1.2343874114635431,0.7509659538698858,0.3611457022597116 +-0.04613697996873922,1.1055229609271544,0.6675013375138109,0.2441738970318255 +0.0047659078762849385,0.4015377526964074,0.47701284871793337,0.569725472749659 +2.1747627375206484e-06,0.062250025015964675,0.1500507395921809,0.6447559531160509 +0.009638816156087596,0.6674945693789764,0.5932711818513889,0.5236877249559951 +-0.09551030474419563,1.0305840160161908,0.6402739505485066,0.3336006455420016 +0.04949132493914733,1.0364124914728379,0.7021715700352769,0.2814664409971365 +0.02969273130075492,0.6314724612415998,0.6286437898907553,0.5006536330076624 +0.08409662365907158,1.0179185819619652,0.5696959948019504,0.22153687941794678 +-0.0007688402361561823,0.615814517643156,0.4115966370034655,0.562842419881466 +0.0014793193362616374,0.4010910013469473,0.16851929237803698,0.6095587051520494 +0.09408851387443885,0.9365773650220853,0.6166971518451967,0.38090162057998017 +0.04408560591332132,0.5851991415064643,0.44906600050779805,0.49425858350499746 +-0.033075592307299936,1.0255632411939963,0.6475527635019144,0.3362052158767159 +-0.05906986639401574,1.0720494133806195,0.7158852597919285,0.3790555269172371 +0.0015919137703793837,0.5730574953264406,0.529028047865228,0.591538150406224 +-0.0007622740623130595,1.0450651107984306,0.6811333683132532,0.3915506487807774 +-0.0390011536807051,0.9520475465418929,0.6033170682350202,0.2692370927020544 +0.012311794596051128,0.4364268273179797,0.35507793218177625,0.5548142015169393 +0.004707789703404502,0.8150537735222376,0.5837325852030801,0.5490793658697798 +0.08778887962174994,1.0293416854418356,0.7334403308530392,0.4485936828361527 +0.04194115460625788,0.5817836098147943,0.6907204446447736,0.4696767421742218 +-2.7684029613791967e-08,0.040826189708873785,0.10345344783093871,0.6447366351827286 +0.03602496863546715,0.8502518166457975,0.5733900684824814,0.34370564382259355 +0.03261167437376871,1.1058919667690625,0.6828118578494944,0.4021499320602446 +-0.03705832533510541,0.9096596317095795,0.45976212841402125,0.45106426189355053 +0.020579007090690656,0.6741771974791202,0.5695765684376282,0.5720897539741396 +0.10318442686058457,0.7104461124338365,0.5013570836002911,0.4120617817426302 +-0.004692560116575677,0.7078352163896108,0.7785209050578596,0.5522376682088664 +0.09857296076225897,1.0658251054768475,0.6933874328226973,0.3894226113392196 +0.4212045146628361,1.0384894166508327,0.5947647174596502,0.24238280450490815 +0.010757165221175969,0.6243384185682581,0.5536615795615127,0.5349843115350033 +6.349677882932663e-06,0.0898646900522003,0.18154151260130086,0.6409792307073475 +-0.024464770231852135,0.6990329072343149,0.4348313615303977,0.48458218089534544 +1.2149452094918015e-09,0.02471114851464222,0.09990448226901795,0.649947076258405 +0.04982603677530058,0.7570711544749869,0.6275573939528492,0.40048950354115026 +0.4508852374322702,1.204866729656084,0.8101788514097442,0.2626955946375693 +-0.011076788896877453,0.6687583195884509,0.41164306953657853,0.4976899248527367 +0.4351209854647889,0.9964790905403618,0.7658574150927251,0.18169541676805342 +0.07315019181923521,0.7520368236067693,0.2972803106270783,0.42989729670785404 +-0.021299389406308964,0.9080298444508947,0.6604539266911649,0.4932785459326216 +0.030762693150323078,0.9574767356932423,0.5317240946984532,0.27149307351546703 +0.8625794385616484,1.3949387607028203,0.8397038499979912,0.1292057712175219 +0.7588897310131427,1.2113777330166522,0.9747963285232517,0.1502452859665177 +-0.013427433480973718,1.240850310670248,0.6974630666250418,0.41259970604604224 +0.03476010073342985,0.8254766951615126,0.572072271090477,0.4371603358266108 +0.003518617124505849,0.5580363942917146,0.19293050856380572,0.5430632244505718 +-0.0009694497188763756,0.24305179442405966,0.24858830769239293,0.597249577603735 +0.28780839674314357,1.3703666919655384,0.774829770830034,0.1334472360873387 +8.362188981121434e-10,0.026636591876981863,0.10186448540980586,0.6484886455583879 +0.00012279543926919213,0.1305804746951489,0.31843182919859814,0.6280930121461171 +-0.2283227790281972,0.8487367423597751,0.532329495031407,0.3061527428261401 +0.16107794195230016,0.8532457307087311,0.6912443513839087,0.4141822201330963 +-0.02457813269442209,0.6939511247159894,0.5187784913469452,0.4814680420428257 +-0.07311905600879982,1.3632015921723728,0.745686815159571,0.23844198895272553 +3.3371674237242387e-06,0.1398366152224071,0.2723276486632289,0.6384429017310662 +0.5147050689681691,1.2904237440221373,0.6211989800229463,0.30580620980477985 +0.2937144537275254,1.2004055345002187,0.6422903125273087,0.3130030871236627 +0.3600158776694422,0.7525600580132634,0.7196948485470016,0.23951579344159887 +0.08175472164972966,0.7610911535084971,0.5266126083614452,0.48714608278092486 +0.12705229620263248,0.6871444461686309,0.4295428412115256,0.4864725716862486 +-0.06393135173071168,1.0581424788801135,0.5579405340591558,0.34759061038273825 +0.024660613117954866,0.6994201099311937,0.5504822327887323,0.4950894767883267 +0.08158258964621837,0.9049862306219614,0.6484817443006654,0.45395604400581835 +0.13453469651031894,0.9969425908773387,0.6893807385671286,0.39279160244913597 +0.02898012866534743,0.7234232292053808,0.6827225364330756,0.5123633576096032 +0.010457737141381106,0.5271135573963771,0.6505391317161854,0.5479220493251311 +6.436519196513446e-05,0.18662603682818146,0.3936561527201487,0.6244849278850387 +0.00039218977504338086,0.4870195347529047,0.5277946155616646,0.5749429999598147 +0.12318231147334731,1.0629187543696865,0.664217201633079,0.20547445053554195 +-0.04733234832089601,0.8119546398645436,0.5668817383394515,0.44442857180249956 +0.09329049726971345,0.8984845368550468,0.47805125695869083,0.40426399231309595 +0.006273401904167662,0.7836436686291715,0.5337949446339314,0.06328699960000746 +0.0002757071123939917,0.4005471492612732,0.3369997311319767,0.5813319722480476 +0.5024898923121384,1.1702896890253538,1.1164964454249502,0.27832724204113196 +0.8994354514820319,1.3401959765271978,0.9348581519748653,0.154897892855731 +0.3474542894700141,1.205656366306198,1.0260946559627513,0.31327505297166386 +0.04179207615236678,1.0127790230317175,0.7126918290283586,0.5170524918415099 +-0.06950291298782892,1.026209254911449,0.6980210010973751,0.42537408109197594 +0.031778962707189426,0.37316598001183404,0.49349790737502963,0.5443927656857133 +0.2545554515217073,1.0505234667358554,0.7363162380642602,0.3504211693102697 +-0.002083882803858394,0.6192500594346589,0.6184788306270782,0.5332509132980988 +6.12811218437345e-54,3.1155225815120875e-12,3.379537260539137e-07,0.6508709680944763 +0.2253080205329664,1.2856420208905237,0.6804899222368631,0.4048182210418712 +0.5246868610449935,1.2750577665262095,0.943857340820502,0.2510624490683279 +0.23396185976475428,1.5111916441036541,0.5285332549876074,0.2980158754460448 +0.5184310881037733,0.7816913361207938,0.4664203336674291,0.2469943602287754 +0.011002820016590292,0.5349802415051382,0.4339603766838116,0.580482614243901 +0.2841803023493519,0.8256539916929497,0.9475262402001934,0.3140895949904836 +0.44910416796935254,1.1522949353920182,0.8114957906392378,0.3428499513628174 +0.39584628340465494,1.1082924805204748,0.5736507631933137,0.2862152137527709 +0.14835744050488076,1.1902816451126959,0.7398594357414707,0.2880777921840107 +0.7776484139296373,1.4696686979200264,0.6607354381272152,0.2159047791365367