From 8966f369cfdd3fa919b7fc3fc4a543f002790bfa Mon Sep 17 00:00:00 2001 From: Ajinkya Pande Date: Tue, 23 Jul 2024 16:17:16 +0530 Subject: [PATCH 1/2] IssueId #223075 Apply Loader till model is download and stored into DB --- src/assets/images/boy-running.gif | Bin 0 -> 143672 bytes src/components/Assesment/Assesment.jsx | 211 +++++++++++++++++- .../CommonComponent/ProgressOverlay.jsx | 81 +++++++ src/config/awsS3.js | 16 +- src/utils/AudioCompare.js | 30 ++- src/utils/VoiceAnalyser.js | 33 +-- 6 files changed, 333 insertions(+), 38 deletions(-) create mode 100644 src/assets/images/boy-running.gif create mode 100644 src/components/CommonComponent/ProgressOverlay.jsx diff --git a/src/assets/images/boy-running.gif b/src/assets/images/boy-running.gif new file mode 100644 index 0000000000000000000000000000000000000000..f7d252452ae092b016c34f279f85d9beef68b90c GIT binary patch literal 143672 zcmZUaMNk~f7wu<;nF*f3HMqNl5C{Z!cXziy&>&$L+}$O(1P$&C?(QxjID`a(hRplw zUvKfMUN3slUDb=TxVP>({gYFW6?$t?1^f-X+X1*L@X|Io6gem@%*_N2bbnun???w6 zt<5nIVmB6R&s8K_uH+tIELcc{E(y1qQUKdZm}^CzmkrOHF+xE=fX>9(WVD%VC~Fb{OFnqpT{ zayLStttg$I7&FxJu_xGMIyZzaO1msOWoIFNBF$&9oX^|Mfscl;YQSfGDjc<``1^3{ zXn*_Z?hooTc_iMwHebV9U!`s|Bq1UYwLs!p8M`?6Dc?cqxPd8LUwkCm5q023h>PJ_ zQBm!0{=rs1Y-N$VB+*!H@_mZRTJ~v5T5gSK#e1W^BF3_4!nNs6#`Z z=2DhaMNxiBtVcp!e$jM~V5;TwwnehJOlLZLA^LNwl|rtI`qD%}rMtpqA5__2Z8BD~ zJQDnKg3=>9WvV|RAU(P%ifDI~YbIG~B+St%JMDANKyT*Dy9xBBc=Y0E_v-vTI!M$%+mt6Q+>dJ0|NsH z3%m5Rjc>WeadFkYZ)Rts2M{LywY8)1uE#syKD#TSX3$Y6luxRYjk&dLf9AVNH`LS9 z(*!zd274gf=4s-;-QsZu_h|-wBwTLvfsPX5@8vXj4k`g<^ywI1j(zK}l@9g4kYv(p1^)9Du3U2qOrs<(?q@PhSG@) z9;@+Og~qa}93hX>&9TPvnJ?lYn6DI@D&~siQ`k(#n<^K|)r%GL6q~;;Rp~c6ZjCor zt<;$hM88sMsa|WeU-)V=(NeR~>h^s+PpP$btJC-TbZeruZl@QHhDD{^R=+p!F|4}2 z&k>TyrV3N?-dGLCG05aMtEIDUIBJm8*BMjpXu_HPqUG<^(AMNMU#&ecJ^tA2GWm*b zW?R(j=3=Ac6V`{vPT#b>(X?fje;dOY2eUDJ+_(%KUIh!4W;@f@4K5SgAM{X1s{d?# z=XKx!i>1PlpDXO+6XhrC&_rf(^ks7!k=ws0E*x`1HxU?k@Ke^%i(LeJT1!6xM$MI> z8@8_eJV~iUruqx?b#YoX$wi+0u<)eiJ^~2S4VA56{S^TWzhR#)Dy*+%7BI0kxO*8W(`?hI2Iv(LqSBxWp3N<a$EDo~}HoA}; zHp91gSYF{Q**4bex?x4txy!4c)1QaOnPbThw~7sH1uZ3|Pgy4j*sW37Th%Rj`llA# z-;%#bX1heqlBiX*vepc$>J4F1Z?k0*{H^huWlko)$*dmIeOj*=R~-I=NV05k#C|;( zUC?}xt_!JDwKdALPbBxu7w7RdyzFXiUajp2b%=yThzYiAx7|QF7#u$$qU!8sA2Z94 z*d%rXn0#Uy$9>5f8&^ZEURO~Bc^X|@!!!$ih7D9tVfLdeb`j2FaMASN6O*FKd=p;Z z06ddI#Uq?kJ_?!FGdmZP*M?#E80VkGnV(HwNY&Xe#O4@Q-z*9W1THV?6Fe0!S&Ug) zFPp0|3#=IFkln5g$En=v*teSGt~+UYHEwu5k+2xoJ?~`5@oeKbV zSE^;@CF3)vLP?|w(Q5$!%jWt}9_LjDVRH~k8x4pK005yBQhF&I86tpaGY*OMP-_bzn&pW09XuH>Ycu3~a- z_o&x?zmuJA$D)V>fy<0>0JjzRG%oY)8}anq~Kg$4~=XEeNj=^ zOdNU-<06h9GbbX&ak8u?jBvqDSx~ADNyA#S9?Zlu_v2!q0?b7Y-EC)> zn)$v*PRwMn^i1TGzU6!hT_*1Prw3&Mog;D51x7%uxVqmX4@kaVLehb8@F#!KEOWkjpU$Rfdp z&T6D-=xUj!$>l1X)01$v#0R3m3gAL1PA$)Za|cZ%`xGt!EUsj*_^XI1kWROEb()c5 zud?B)3a9L=$~(lh;4AtwsRJ)<@G25KILS^CHyhk0d|t}>8qdhAeaf1gwhGIG4fI#h zus7bj3HuM5X;38ikU{qwj)k+K%`eRlC|mwamge&hyX~>;p(9Xx8hZ|rlR>^VyDHV! zHC#$(svhKhMT0Vx1JUS4;j8hc9o7A+oE;`ry2SO9C*ox3w1_)cdgF+IE7?-zboJMp zx(wDDEeEWH2wOp`rNB|<(J@LN!KNZQ9!Z)cb*MnKMY)4Ou%aCV{<_3HOTo*@F3&eg z`QL0?@N-o-Dw;w>QXsD8c}n)Wiu&I_*%C985MuXitnYw$1)R?bo)Z z>>MBlnwz@f*B5#3s;#KQ+tL}lM>VQu2W7~C0Gmi8<23r9SNvjCw+W9&fPw}ssGx}N zqMB#ue1J-?uc_p^p9i4t8rGNwQQXsTks)Mk1@S< z?a4To*v$K{@PD6eHC{0ZBMLPulvF!@h!1amnv9Ly3P=) zR_>1TPxY`_a( zUO5mjbpueL7ZbSs9OQb(6Res0ZaZeuK9I@P3xS?y>_Plmu`*DT(=;WVYUX42r2Zby z$mVg%mG~y}OCKt68UlPlrnb2&a^l-(n)?=&-KT2Ru88%oXMaCsg_wpV7YAix-Vn5|yxY_} zIEW3~KmYNn9&*!-ss);beJICU?fFNG)801ZVTO+bP^u~X*)xoB1$b&A83OX{`A(Bl zxbL^Zz79AEx?x2#0C36_nM(th0B)a-ES%h2bN~jmq4rE^;KqocrWc@%4F9SFklqzl zHwm0*#Hr!R>^&IJTjDyQZoy3gY~3|~@9Bb92Im+JboRu+{I6EZ`}YHYZ7(#^wJma2 zxEV%aHA!BNEm{L|`u(zMxlADfhvYpsI`ewgTXGXp3ydi)_wi=egjEPxqcuxqdhKt#@aWlyWGlxOhGObi^ z403)*J)%m;2z`|oeAKvUK8dzrb=F4^z)h*s!Kb{DxIj(CwhyX{p&ExE?sA1dX>-Cf z*@Q^4CtYPdAzMthAo61X2MrjF=M(HoA=y_>7(E(hVOhd!_jO1i7i#0A8?6VEFSl0) z!Kj*F+dj*ArX)t)-(d-c0AAOlx%&WmDx7@;(E5d93-!q3y|Ci+qMvnT?cK0idCUz4 zJ?fgE+ZJeyHo-N+vIMgslvh?d1;8PIk1$UZmmB7Re*8=K_#t0J!Jri~Tnpg|*-Dem zsE2YO!2JwfPsdUO$gosBY{`1Cstp=B%typLvAiG=7VOo?=eO&vN$?|(&kItY>HCQC z^=Xa_>I8rp+QCc@ae2~lQ37Z%Wb#Xi*vw!{-Yk2LOnJdE>##q*S*_TZ=21;|*zB{$ zKm{B(AAe4LooG)CZg}c|KIgwBw1YJ~@AwitMm z#i0%A3aYGXHOq4A3DuAbi}Qb5})nvtPJ) zuu}@q+GsHIke*aXAU{%JGr}i(5o~-_j5(K=X^U1nl9a2Ea-6Q0ge+0=g9=ASixmJU z0YDfJklPK@&{2&K;%1InA`uN3IxGlnPY=zO<%-5pHbhTCs;Ht$iVepVV*NDeX2F4e zFs`VA(@39saOKNCx!Il=3VzVY$08p$m4wHNinh{ZQlPDRB^2+=DkIk7p~`$jp7xr7 z(|DPkI=aLvqCER+US)LY?pFw&W`d4>W@>b{a1d{6nag95Nc2}i+5AtprGsp+J`dhQ z2Ee~^|DlJ_hZCv7@sh!`kn*oz?bhY-+-g90A`-$@#D~F2epMESppM-l{L>Pmu&>8{ zIb%(==j41W$2DN5FLJ`RagP>9>z2hzz;g~;pDz*8dvV}FibTnf{v1q7IstL8Oo9x?A=#VHIQN$$YRP9$& zBhgq#>mnNZ?bJ4`lC;*krP$t4P28!bmW@IBNzLdW-S#oY__5%+)vbXvJP=wmn9cN! zw_$J|_EsyFFo(^tdX0P6KMJ)i%Gak$x1O^_FX3AV47SZ=eM)pHQ$uf7IRRPvx7pZm)*ML* zEC!Had3ezv|vs=r~goCqfBdD2L9qtMWniSr5x)IrSf|4ZREy8xp zuA&EZp;2EZG27l#7)Z9o=eq1IqM^Y(}wFsfB%XHH#a*(!h{?{8<{>`7%+ zQ)%vl^Jiy90+3o z)nE?p@D$XP$ovSWxC##w46|YPSNM8571e&)U7V`U8R%yi1<0$4-tdnVDQ*oUy!mVUZUz( znL5X}F|uytbh8Z=kLqy;AagfhO2N(&!*RhwYEo z!OoN43}d3j#>YWPXrLsF@$BKi#R0+-T_<=z1J+Qnh%s@D=6>4O#Ezx}Zwv+VNpK;U zj0gNy9czh3d9zCe?@CVi@1*mxTq|HS*M68Or##WoPLp^@fb7E+*7Od~bcs2pvp8D* zVnNNVuB;mtlem0KfJ(qY`+M zkc!saP7eDTS_tCg>l1&tY@eg%0hb^#-ghrG!WM})lC+4;F}r8=;3)>3)n%uM)>eP9j=k!ID?^ zQduHIt^j-OpwOwrE@*Lu$s8m<)uK$^Xm_CQVouHM z%)2S(H))G8b4fHS|8jwEcNZ#a)}75?xKb=<;Ur*Qz$eSTw&K+GbYhpPPa5W;0iHJ& zMX_pmK;BmhA1dv>i7w}&IE}~H^0+D5IM^F^H#d4rwt8JK>BZ3)aWVp%)&gs0Ki6na zoL9c{H_Av{?TlMGso6f`Tyur3`~KH*MRy3_qQwYrlVE3j(peYhn5KT-0jO@(^2~mE z&ixEd$jO7!h@f#DWh z;dn!?CuTVh_JDe)p)yo|Yn3DaAaQFu5|*9m0#0>=al`hRo+^jQ7BUh)W&!phHqgjs z7jk!36~zu43qbU{kgxUWc(Y)Y0wjbN;|xnDUpD+(=U^J*p#QNW|zm7>_ga`Zud2N8fw=`Ry{~f_=52|s#L*k-YE@3GJ07=ya z$C_jIafJo9eb@LdQS%dm_>(Nv!{oR_r2Z0&7oD32eE@I}^R>8K9dlq8jk^HA4cKbg zK+E_y_pRqV!3FcPIGT3>X60wRjVBy}`f=%=xwnbu_0#8Bm*;Z3kdcB_DhX(1;?nW< z#rE`hSpmqp9>@9$c<>od_HrkeXYVZk=cx*&6wgm0UhvW9p9XL`miFP4yFx))xV2x<-x*!`(KbBz{sqt$!K2E)>;d-3M|%I&}3WZZ{l+}Fi`8!NNh;lDq` zw*KJ!{NwcHr)$t3iJ5VFwX3+PKaN3nVlz;`x;wnfxyra(MDMME`n_Hds6}M!#m~E# z_ka9%@0IF)M|57K?K~uG-DcLkNcwP>AN0E*;lVAa=Fs%9`aPCn!UL4&vF7JP9ra_G z$aLfT!{P!ETm7ZZ%P0TdhmxH~&=mA@{pDwxTO>7>Nj|XMY_FIHL|6bStG^U@`B(4D zBU2&37G(}y`>Z6ajwPr5JfpT%CJtmqLI+SA4B}plxiuzF67MLHG_gz|Va#Dc%4l zw}5xCBrBC`C|(C+_{^ZmVX4+;qvfE4EF+%lny={8qzmI&{xuD6-2k3p<1nI#SeYQ* zim0<|fBBcyXcFUHZemGljEx5#>+{B1WhI_~!0ER$vON|-Kd=utYgv7NC`N_Uk9X}B z<+9lx#+KO0!EbBht(e0UKf9DfK*7qv>Bo&Q^z$nx6%u+dGZ0E5xTKJV#z;nO&X(LqTeg?552q< ziiU{ZYe$BOVPFxAW7FSvPKTnPgznP#3gZWSJ21+bH*f6SO8a`Xh3K;4RekFudw3Qr znhUb8V4cH?gdazL_A9{}cW^x=i1y3}u_SFBt!KyXKQ3y}7v4T;d|Qva`8_de%X8Jr zkY-#agIQ@UKWx2zeGKlcXu492zX4#za(;6HDT_U6R}u2*aJ*C~$<|Jx)mnw2YUo9G zl^Z39s=G9$z64D23)25x^wjzS#S<9gOKJ*%YT@dP5@N1f3#9*0o{F5FgLmu;3$!Q? zz*Ie!mP$xQ&t23dwLF1I9m=BUP5PUZ7oqf2VZ569Z+}O{;Bv=t4w^J>-GnJg65Sg8 zPA6;Dw)##Xu{Njgb!(td_qT$XznY>-*XeHYc3X_-igrjG11DYCa*bsr!MYi7JuGDw zw+x{2;*(NxG8rc{i|*dccqftYF4;^Zo+e{lL$*!5N?*3%>!tyrX{Kf_az1(6$o${8 ziD)NcjbJU1$)O(6o9T0WOSN#`g9p-5nwThcrcuIb;=_=aXx<%?+mR&vs0rI@AP3B9 z()V_0Cy%6LK7oGLi`!ve_Lo&CJxhVOc|^9iVYHKLHay0+st0$Y`e~SxtM-Ah(aeI| zU8(>o7d7rok%Oj!X(+g69il=>d$H(!azGEtVNy5O?XGh|F!d^ZaSnHYqO=vhj9}sJ zO%swBR7LK3yMg84`WAOYo-Yu;i}5613s>lUFHRP4bVQualJJ8`7m9<DDFWO%fO4vbQ@ zsR|+6Sq89Ls>auiS!glQrzHFeEO6#tguWT9r_nRWl;smjr-=viN*l*^C*RBFF%%lH z_nW@@L@fTsx0;Ps%REk2d}yE20?p)R{}Q>{BRYzsJK|JKPCG0M>(@wT$dcevKbB^Z zEj z7+{MT2vf;-#t9E5U14yl-VHiL7TyAlLz0Y0Pi-I~=$BP5i^dF#bKz z@y8SVH@6KLd$fnV?cOxN*UqB3=fJKLl%P4|A9 z&*n_wq)~YS@IB1KcSoFvl4(<1Q0B0;3GZtKrZ>oV8omxo>0H)fsiFNZoyC2UgpP@e z(lIY@t`jk+vY4~}yeK}SlojEXMdm{;GY`qk#$^jZSM8M=jMr!aOVYtA(zAGZH`c_t zx>3=(E*T0OmX10ZfDG~{ZnMD zvX7aZOHap5OxT5%et@uJ+WlmLQ zXOh)pehLc4d@JRWxsdI}FG3st(6G7|zH61UA%5M2Wb8h{Puf`McQ>*Qs5QyO(yQHT3Et!jtP9 zY$k+42$zZ@u0s0X-_fa;-HyON4gC1Ux&48!*d)GK z;?s^vux*YUPY>?*sSv6^nml`E2jiS(l%27~7t9TD=T zo-RW}d0{fX4mmmCWTDM1?VpqA0P_$wPw}4)Eq&1Qd5`2KxtHoZ(h&%w+wmnEE(9-2f^cc`RkbBao_7T29uyh zJs#BzwjozCW!uy5te@B)u~Ao0V2m!7$J{4gp7sAs~b?IQ>gVIl{+t~y$tz|ORd-qj5&)Sp1|-{V2}5w;KyKBKSM-QF7< zR%N`HEenXQc<)V4_7MS4)T7rV3#f(m^^77x%e?I}MMM=Y^lt)7l_%^4zPK(7l+RMW z^EG=wD^@_B9B?~TK;Bz%gALlyXrf3r-!pZ^ zOjOalFMv>%^ncj}p_Ur?=m}R@PvdniMI9oZXEk|cBLw=r82Pw%U4D33IW{&(Vc}X;EgY`*!>6VStHkyU@~aR z)c__~T3H)iB^M&6k6^pPgw*$Y6qSN0hr~Vs#UJ9nCwCKvijQMqv_DDd1q_AQ54}1C z;E7=I7Z8IfUYRbY8AtYhc0d-aleO_jS;flO4Ax9&0mVk!81;J^)!`q<_Idkk4v|Nda2gN{!hhd?tyu#hbMzd;XAzrWA+=c8Q~k zzlM?qzi}Hz!HS1k#Kn!9(vOw;Lv9GvEaV@gUTblL>9Aw)$%pB74T=juQY|C3XVEBN z-~OEfn0;fJ^rIq!G3a3}i8m=2@DXeFaq$#nvXCrafWrG-xlkd5oG+Sa8#gNtbTpF0 zumeQTgAiC%tTV>01&3!Gnfp z55j9hnO9ma3G&5Qcp$bcK$=55VfJX5`_C z;o+E6A(M<780gER|TUiP3ut0`GB}$E_cFyH?4%+t^ri;F(uT2bC8n$KIPejJ5##~Qf z14Pb@-xV3ltFV=6*{hQN?HP%k=C4LllF$5>7U|uuxS5>tY{YmLk-D-*w@#g)r3rcL zn&vv-L)XGPJeaxvs|GL`rzJ(4a;R%aB{f?~3>k-$wDqPO&;0aMzr#>Rkb<<~DwtdR z=h8~@*00PACd3xIUwWzEP15Fz%(?joe=^n}p2EHj?bC*7z+@sBOEd_Y=ScaL-UXC5 zPlTm9PnKe9`a8))(nByVfb>&*_`(y-Mjf>h<2ohCyU_pQ#)FNmT#OE&0(gD+M7DWW>Ng2U_3+ z!|D;j;t<0?O}4yQo3s)P^-i#g8cTLp9=fhmAiygPPQ#reoe=t znAc+|%7IANOGgicT>e@g85yGu#4rVvQjit}se=b3?q; z9;!tO#f9j4+N{5$foF!TH8msX+?vV2+8KX^`H)IAM6|dtPCFS|@`+e27KrL=qv)E| zcW{FkMtFZ900X&fP}=D$8mUb)+et+0Pn3{6ss5W~UDIu}IL@F9qA$;4JoDNZgpQz_ zUH(isPwBVPd%yb7G(Sc}``&4JbV9}A!3en&1-&wE(%C4}(L)V1uMSP=E(J<14`D3@ z%p1jR{o5n%=N)e**wD;0ogRwXdR}?w3qNmOJ%45LGjOei6ZAQ`Pok;qdrfozcm!x; zN|pnB$2oqSw|(NJlOk>?Z*P$C%4GL>d)H)hVXAOR#pKwNwLEgsr&#m$;)_Im387+J z;UAJs$fi9GMoG8+h1c4}pUropyUl+#V@x(#;b?8I27iYw(7xUV3hq=5t%DD#k3_X4 z=yOxkb}U$AQ|#eqIxFW}+f7TRgIi|1ko_RYp76cKt85YRT%(X#14h9;g8Ug`s^12%B8%D@joMmq? zoHhW-?NKD(wtuoEwKcW(pPanQW^+rX^InE@vL^VSXP%`j8R9kDMI&hotQOq2#kJ(Q zRPd0B2xWPYYS~T-a_?ejJBaAuKe1@G&3FEo#F*#_$Zox^H7IjC0N~CEg;^@z<|w@$ zCm`P-k?$i@hcgXfV8g*!J-Zr$Hnd_kHmV!c#HI_JmiW5gV+ww}Cf4z%4>P{aaVr(Q zpTZV>#-J3leKov|YkFwoZD>oiFD(nPEw-Ihg0wZaF8xvC+dAxd+y14<@^`&lA*r3F zt)Z=$-Jr^b$G@$eKgJj|@S(glVR*nWDtrev)n@8x!|=}G79W@(-S($qMo$3ck2S&MX!A%C$+ z*J*BYrF0-)xqdJI*wS%p?_;gAF7bCyLHo=y$89eIBrXt%i^e&Nz=tD*eeK`hpE@75 zzcqCZ$bt_KA3(RWPKlx|nd~x3mw66%P~ErZ)BlXiaDoYuXzyr12TUN&wqRm7h%a*X zVbX9_uzgMUEeQ1E3(q0Vwu|Gp=J*AJluYN)XiHrC zy?Do&{8JdSJH*ETYUfVu^NWPJt-z(uH~PF83AZY9!WBG77d*rXKcy=F2q`}!B>70p z{ZULx_&h~4$To&&d9TUkbXLX`2$p&Q<@6h3Pbb!Qr=Z9L|ipU@jDTd9rtiJXGkk;( zAiRK8J8y40T;D2H4^N+a)C+NUvvQ9RY8h;pW#zU-_qMAs$`@Ye7#-o`((B9Z5KOEd zg0CJT26Rgo^O#VzwfT$%lVaa-`HjNR;+xCDfh!q3dtXN z1har@zxYeE0kPo0yfh&EKIalWhs2E2viDcwLGa*=YeJS!EhI^;cMrswPoT^v3Q{yu zq(7E97_ahtcFSBH<%-AcKdt7u!x=yu0jX3Az;g($y8Be)^SAvAXsixCRvvHwh2hL@ z_w4*l90`mt^FR#{1=6Ykv3UZ4!EpS0U|Yshdq(ic2yi9h8591zN*%&m5BLcS8JG1- zX#JG+{^=sYVdu+rCCTTXzW&u8f@}0X*Kz|6Um{k5J|87KkF~amnax2w7;*Mp7ww z*y^1ztbR;j@(jn)_RD`CG~1ChxBN}>QeFNf6*{9KVX}IOR2sgC-%Z6rg>sgdJna?R zG6d}Y@#6Fk`)a-A2-CspoE26Iy;6Q|k&Vqn+efqcCh^c}Qe{g?9tEINpIU)bknC&6 z`}+AxbvzVvpm3&wZZ#`UQjPNi-{EBT%dfmo-{qpD7!8yANA^`3(>>r!PIyL|A+0a!8I^ObT!c!acTM@pGn#0lPRZ2 zo*)*DM=KF0%1Ofzgs--Yer1aA1y;M;$HAMf;T{~zJ=vKOm*tDwBa@l=9Zx1XnMy3^ zNo?W2Q2lQ(ga^T&L}f>jbR(t6$V4*X^cTR;x&Na4%dxS&fTS><{ghx#;R-26=@Sim zT| z#V5kF1D*O3fPKx6>`pVRFM*2)`z~ljdYu-4!r8}|&i_LxlkuE1fiXI*OT`T*;3(`I zuhJ-Q6~FyLJrUzZ@8gl;yKf&qR%BMC6>&Pw*WHvYLwjhcod!7zvo~%3vu}JjTcPx& zsGJFZwn_9zES_NC(AzU*VmZxp^E~VbbeC6kuly-VM(Nm99B`P_ly=4;FIwGNu%848 z+v+*m`BzNr78_G(Svz#+ep6j&&MU<@$1I3pQXcqe^|sa|Va`0m2Mj-Tzu6&>AbHg( zt*6i;ul3GPP|2Yxu8vNnHSVLeMxCC|q};gk725UM%A2FSjIb)Xg?6l)<1(8lUr03f z=eqBzS`=h`?z*C#TYOSo%}4D&FLqM7<9nQd2K63r7(yx6<_Vd?~K@-cpz`eu#=F`_&kGqFH+WkOHU=eMnH_Mj+lZd6+g zTVD5ngXkO9faYoIWSD;Cei`jv8>WSB=Z3l@yzx7RdN zuKRlHSTL z4v1K)LdH62*6TRNq;LC;?8LTaYas6aJa0@E2vUH>^oi93V5s<2}+P%q}MnNRY0ecL8at&mD(b2 zsV}4OeT$5>VfY5)TJuRUAR}=+pKD|}OHy(Bt-Hc|6@_upp){DB&%W*Gxh zDO|tbitnXVV=+P1eWq%$cuMvq<;3&!KHjBDQcy3&7;O`cGG`z`ZmWE0MSRwzUi@6( zM}p|8eW{6(uEs*MIY#?{li@k*1^mbJ!`MfRY2obZ7}LpO;jDSdQss|@(zF>;T7GyE z-V%BRe;Fxc5C|H5Krz{$@^9mM{W`Wb1*Gc)!UP1FV!H9F7uu|v?D#SiJ&QiC76;!% znlGUJft3Sn7I^mr+Y#%Wg|i~ZYKb5W2d3s~oOT_O#UZXJTaP$()N6E=vhnOeoux0) zZU?+CylcFAMk=J2Ql8=+m;2Zlq8BZyL|@3^6VimDzkUrfZiv*f+IwA920F92B-A|N z97+#mbbhy_BgOXk(V0=A&j=4+uU*l*L0M@Vm~o`&@tcTk8(~vr42hcgeM>>CROM+{ zUm=;kECZ2uk&NUC&sf#gtgRuGlln1NZJ$=a8jwZmbVfLHOI$e%y!1SO;L60W0mORA zt7Ku3kXE=h#BH#?wX2%MWhHD~+jsSOk0x;(IDNn=mJxi|AC9RV_RiOZ=9Z zCbn{)+wxhdc+p#8-gaM zwZ8JPOwkgJ6Ez}Aj|m#t)3cHoia>fFe!4bE@+SSY`;P{;D(*V@UAdXi`i>G7t6V83+4+UYlAz{XYOw88DAw<84<3_ z+z7!4{dvsr9OK5Er41+N!OMq5#4KWF%AlZqAbXU~V$9)>dF&>G} znBO`#!;6d>_5K1I3NO}y+z*q!&vN@6YEtL<%&1nr9CiDC z!kW{pYv^hYGxB%iPs)3w@v5#iY}X)sF-+FktI+k%H)C``>M=^MKlDA^@^9`r7#U1&WYElZeH! z?QUwdzW%@RH0ZX{K+6^2_Rb(D)iREZ+Tx_RG1W#G4Yq9Pp+cBfbD~7w2%1|#4j~m& zmpS%78YvhJKg7t~_{$BiGP^z`WJzvs42203E5!bo|13kTfCI(Dm&0!`k2LRpAz4Vm zC;hCVw!XH52aULY9>V8BQV;f#wCqXIm`)Jx6}_e5D4-4G0AacHFjCVy``lauOuuPgx9o99TB6;C5zB_N zNq*;lq!aSC??NTM;8rqjU#W)`LJgQ%RAJ``rKbu|1>Ti50%43%h467C-*Z z_RC7V$4b0opOImo@m^fQZ;zwMGUtF^ic4I~l8!|D;63y}y2t9BDFX~-d3X;Y|HyD~ zKu!z-*>8_5{Vvav5zHkehgHD40K{8Z?+j!gugTL6sZoIqus~^Moyq{ zSt}nFz7Z?o{%oaV+AqMxh;0cFb`0ZlJ)qm|qcufp^c26JFOe@}RB>d~>!&eeu+ola ze4kya(_yKz|3jWjO0&lX9pA`UOquUrAKU&916MjD-5;i={fx*WGevW>L7P{65^94I z_|lRLB|l8b4^=K1EyZlXmng`~mThcnNn6zei)998@>2Qj0|kWbgN3-7`k`bOk|+1j zR@U0-uuQX`>7l!yJrqvB6$;9gv^}(Ss zEpV_sH2L}i{?Cdg6cJI&5*cp)pd!hY$RcoP6SdB4=2{V5dmPqZe|jA8+x}q;RgN&N@ZGmbqGC;kipLlZ4xi*Q8J|qEI)qIjgG?F2#T=4US(7a# z()gsO19P+ea)TU|&RPa%F@dcmyLeRffy~o3f_w#I9SMb+iJ` zWCs>Nm-;S+nCD3skd8g$cp26=7WV z?0$&yWQQ~;W!Y9@c-l&3wvJD-y~ZP5aSvPdXDQ@T=AAN|CFgR@umdZg($IAu()P73 z*&)<1vp$*aD)aQ4<^qj2iw2Wro!D8bWiX|(6Zi9U_^G3YI_lJ|zlz0PMMeo0}R3-#tAnQ}}$qmb6dRk-K}8)|kUHRead7TBI9b3q?TS=dI8_)PqnSbsu9=i{p2DpjBnHf1axB+6 zFMQOD7_ZJ(tU)fb5$z#&&Yh3tN0vY0v)r>Ses&pDtLdSAmNoAxmHvst4?)S``kGeDz70&Sv1FI6+Q?Hrmorz*BfqcTnGiu5 zwcYbI9lMuyP4LT0uAhFK$=k@m^(yYX+BI_SA{K5gUao7+%C7bEuJy~keb-XP+CL!8 zpNMLrSl3P6>ao*mIrX}Z*gBE4pS|U=$#R=@{0 zMsB0Eat(2tWYb`X7+m{Qm=~j^7KW!iR9x82%q1 z^`ssOqiEn*uh1-oVkQ4yAXOzAq&K=g#{WZ+M(}??s=YFeXo@M=@qa+-2h4yX{>phG z)uR6asRPWq1G)x#&Hn+ZvaiswCt5Jq{{vFv|Mu&07_|Qfq>8pl(QI|-W?jBg*1t4E zii!}LPPSFU1{Eok@{P4?T1FE6HMb|%Y-iZ2)tBSu+M7-iqdb24Og%m%Uu7l;f+;1I=&Hp}Y zR(zNGJr!Q8OyWpz5P!RrNEk|kQ-FgdVqY)?Ag2^B3Do>LoPzU8J1a3|Gq6GO1^c4; z0KuzFa43OlJwk^_72t0BLLA+KGL;_V*H~(phCajxD%uBvRl{47)mZ+$Ui6&_gFO}{WejvBgkH_nB4_B`qBPb zgD;1(yXp%rj&K_9##dc-WQBinHQjDtuj_c~_D_eYMwT;VUEex!29m8A5eLF+kxZ2l zk5xQI)$a;RkR}?-KtS{HhT613K?>KHJd(*l=j@-)(gJS}}RJqZlKA7&ruQLFyiH+>>cXcw zlM6cy?^M#&*CbiF7r))WA3Mj&*jYC`&^+60xyVw1sA1J5p4ejzt6}qgqo%(B4^?fx z!N1av{aN;Y>n;6i2TUE{*2%$(Lw&Uy)FIFb)8%*T+_7A4EiJLK z4>@vkiEU=!UJPzm&AWb0G>+a1S{1sk5v=^!t^PRIdVJYFN56d3y)}*VBzyJMqM>GC zl-a$#TW0=D;;aROHFPm0d^1P{u(EpW16^DSnLy>p6u{!VrP}jD|eVPco3-s0=klgI=*! zw%l{AFQturYlJ03BXG#W(=LXg3n8=&VQlb`eIk>Ta$F08ljIg|fsU z(G&p)cbg+#O4uxv%W#;H3qMparv%IKz|@Wl1mG(R^-Ve5OX%z5;-Hm+c$mu5?XrLv zbSIP_u(MRM4ctJTma@4t_Y3g{b@q_PYiTP- z1MGa&#MaWK>Kx$nU!Ab%0;FsAgaI1y&(&jD?K zkRgat>QH`FNgHydTF#xz3L-3Ti7Rr^LwzIzDs$2di@TM&}%=R1kjew~T-m!G(=P1D#WMxy&0DU|g8w&-{l!`}+ zTdGUNSm-9dHHA&@7n^3yS_xKsM1?V}b$FusDSAajf(GZfA{%I@1po^}-w;&+9Qc+X zQf;V=vQ@lL?lPxL>1=47Tiq`8>=tAX#ECyg9j%rGY$%^EyJ;yIJj?H3qzZ=O`@}~H zG`6O7G&7p4YO9gP?6~VSSK6N{EAd<17Uc9ulZ(;lK~~agt23bljjJm70$1J}k03O? zrIC;>KuxqyDEl|oFcS%VKtlPYN5#iY?=;sMVJheU_5-y<`*af*i5>K8KN(s~&$Z*F zGgS*rOvqRIe@RfK4>p4r{Z^jHn-FQ_xSlZW!f5}>#S>-=R@F0tFMgbGFh_OqZ@eKO z#db&pQ2$!p6_ou{Cfa_Txz&l)zE;vlqs|g16|ByXk=o29?r$0yfPuS~G|sE|GLzu-uEgZ9e0c5WM_|DbeH=kw@mJ$IFNu_kL6FMEL- zjO<|cxo?lF1y3COdMyw`mo%R#ymZdbfRs@c0lse-y%$B+N)s1OA|KZUn;D;2=WxBd zDiX^VWLdi>W#TdXjt3??LlX2i*4m2mh+qk+*IHL}OpSjN4nz9S?Tu?4!2C_Up9E&Xieq3XCCYx__ffhq!Y9IJkr7*F zCJJ^&juRwK`}K1U>M^x=k#AFSAUMBqHjZk*^2$+DAa`nn(g^~!?D<5NIif!t%mOD{yZnebgCL_! zQk~U0Yz~4pudKQKNLkL{&2UuOaz0yLUg?X#r9px-#Wzo>caW?BY6k@&7q%8q;%Ku# zPxGSr7DXC63e1bJ^4hkFr;BU*bmY&f?q0&qoIzHbe~w8XZ3F4|0n>p4mZEMyNJt9z zU0+ieVd)fDE8IQy`ClBXsFs|%`**)A$h&DYEuk$GX)N)O+@PjXO`A8>d6Tk&1YXV& z39;y$PSYs)3C*oLDHKxa_B+7%>9RVCtYYwPSy3ghmlwBXH60}P^l$C!(<>B+HqP6Q zA26Wfaogt5Ku^&pzSMOe|1S!0BR+bTdq;0Vo-QKj-+7Lv~I}lX8Q_Gf zoeK{+?!eR-0TaUB()cTN{30J27M~|lH(FFom6OlWmB-GM@3ILM*E0R%=PE;{%MS=_ zMg@V9KBESr0{7URlopB12;5c<AYC>>VQeSlgn5wNNN(YZ)rj0Moi96gbP^J>_ z{=pC24ARkqQtbFdi`euC1h>MyljpTc==fp7_NCbty4ad<7 zhTW0{|7};{){JrYPuA6gT9tUg3zCOmHde*2=6_Hd@3m z@jBrBsDe`Ca`4bKmc}scW5^fn2O8+ zkmcx-!~SVQb00L9nA{jvQ{u=CQ=2hXks7&p>EKQpmr(gWoMMfx|JANq$3?7Uc*V2t0O7IetRv9|~Vn*^Z{8PU91g|zIM{J!7$jSQI_ zr+#83fXv(+%jZu8gy{hvWu1fNeSJ<-Jao}!QwqNrMdL3Y1^(n>7$su5bF4|*;SI$kqatQm~QgD%OVfX*E9qJmmh1LHCk zp|t^LtaS~ESUoNTT}X-G2{54)PRXSu+5 zich3c*eT_hRmGy6mQYkQCb6#c+50_vr4{sIe>`o?F7v0{G<-yE_y^$4EYs8&yStq! zfF{=a`FA>6p7YsZxn&UQ(L$Bv?=VSZ7KaVvcWtPZo|1%uHS8>}JTGRV95XVdc1=|M zU0i{tkvu70ejBZ9dw_Z`ql@He#rLXc>%;O?nqnV}ifjz07PdMf2ClzV=6w2fGbh!k zLE#IzYFTI6oW#H(ihK%qCRKE3s#>eN8FM>BF&4LknwsX<5Y4L4#vf z5Y}qN_iB&+q==Vtssx61JQk$&F-s*c< zb{m8BcxLo={F(Lqo%Us(X6a_MT?!5SvgK@ozG4z=K3AfDym*b znQ?V3bR&jOm7gfycH*bBWr^po;>$b0<@54WaPD+E$C~%VKEGBeY@%$fslzs(14hv( z``G9=VQMQ@*qE|*N!4^peQ$XlRke*!e`c-DGQmcY0_Bm_dHI$;n8}lW(!Ga!yq=>z zsY4@eeW6En>ITgyg5BL9sX%PMUT9rFo32B0UbIepaFI#kIV0$}P93BfDi4Pk%s?(2FU|lIz+?X!5AZ+s08oiZRKA`YOSYmyn$tvPfj)|* z&nH~Aux^p?<8G8=c90qpDyE93gctPPS01*39FB}_{o}~-z1K1dvT)#QU;D*wL47F* zIQJGw_=5b_i~Y(?-U`+0$jW~ZAD%sN?3iJTIjA~fYxE%UFbKxWr73QIW(@Q3fp(Ob z*a+0y+CT(^3Y*xQ%t?(6Xhy>~Qho%EqNk!GJDRg?RJ(`NKL>qK+lf__sE;ML44|x0 z-*Csn7)Rp;pDB!+FKZ^N4%laokFyUq)enuHYKFe58Tk%Mq1u_0t@dPX*(J^Z4h*7dU%hp16QIGzWZsO>M*v$Jb9Cox#(gJ@56s zc3to=N5O2yImh>8690*qD80BsItES_z=6V5;1u7f?8z`Zp!;PlxO?=Es+mhbqJzxD;Si zFtzq7i0f(YyM*oNpV`m3?ZuhslL>RmDZp?ZY{{pt`M+}+E ztKTP=BBmxl|VKxHk(~Bj9}o8@0PC3wk8Ux)!!r0n^^`c;x0=Q|$ZO`gj|CapoMX%yPW4_oM;N0gcf-1mK#}Q4ff4kUm z@bRue;fRTO*nvP0#=HlH(hL4ffhZ&$#5El7x?zNPK!73p?Pf}nJV1(4KsXN;ArF?s zKM)3T-|BJ?brx*Hvtj3URLKJ}r`g`E`yBp^JeHmXljEHvxh*G7?P8mEtTvp`<1Zn& z_AB8S$!^OL{|?k9Tk~B{c|%VNL(UxCP`~PTSgW7Wr2=z9&Z-(gYDqJrr^?Y6XY~D> zty|yYpSInaJ$f>}cm2axhM|1)*zMao{kM5g3pZCPVI11Rw`@3{*!mu>4(?By$rZbx zEQN@stSn1jJ{2CBBhYG7&@(SDP*cH{W=99qSItug3UI6u2vZmqs1*f9Dw2hYAKmlo>^$TSo7t)<+T`Q@A>e)|_a6pJ(_K*W z4}eD?JJva*9s+f#!dIHUl#1H?mfT!`iMmFvG`@MaY7by6RdIHbbCW^$ zGR)#3>3OxO5UN=GfYSWX9elnQ20ckD%ZIp8NqEvA)f&3|u)&pqc%pbX?^S6M%{qG+| z9FZ7^iCrcYza7+ZiwC>ce-Y2`lLBzu;KNu7$kWx=ziN1XZ6yEj!xhHZ0Uuy_Wh2n` zE&jdz_IQf>WchV}@5Hhjg16*gldJcCLF&rP?$?NNy6IbMymUL(VAx-mvl-fYfzqj{*Bt@#SVrG^8GHV!cFM6?xaCs~CyT62nNstL8nYN;zxlJ(Cm_%b+OY z{`h>=^J(L{OkEt4k1<|Cqd7xt;U8o{o&rseAAJpPk#B%#eT{Qi(VjOlk={ylci2## z?6B?EsKCcQLa{sD5h*TM%SSCW)ixp9n1qF7dWU8oBT4(GspMWaJr4tX3xv}wdpL0> zTfM0O)QBRj%%Lq&szveQ*QGMeL16@Oj0PFnU2=!@F@qNlq=D9ETiPe2L7 zp=4(xa!${GjdjWal)xnG5QfP$$s+^23I=>yu%Ka6$zv7#Xbzss0QLN`L2GoIoQ_e}qY#5bX(j9^k0cvNdzry2?y*2vb*!@_7jN zO*?y_k;+$}`zj7APm~zqadRMATVX&rD3WN2{DbM$KFEqbitEv>C-KNCYz3v1)M?`+ zaXGReE8+Z%emo-08SzEv8oO;OtH*^#$nsBb*ha{D*F(XVh`zzxLJ$Rq7@5HG(^LO3~!6(-ZZ@M(X+ z*?QQoq<~5es?Q48+J3+4@v0i%VfCFqO@U=MO{~CjZW32YK44EEM*ZJElRQmW^u&F7 z(f;XE6X&n63=LVKFo_{)XF+2Uq`rRkZQ)fgEGBY)ql!xs?<>SK0DCA8{@f$*3itiP z`i`xgCLKVM(}|s7N25``+29VUU|DNyplS(dRnqi_85T=%1+Yu%mN`UuY}v-yf5B(+ zj3EPK#a1)JFwnWwxkQF|5<)*mBHiA)DDHrWAxuVzP3$f!5jf1zLT~UQhze2^SGGuG zd){#HU^u)aas?>RUte%D%Pur2Ms{hf9uPs$T zcy)FQ4@zTb&w#P-(};!o>~UuY;M~$x{~SPSWqBIq4s;pw7&y|N5^#_&saRDSy z21}3krn~tBgz4G`Wh69Op`*byRb)8K`so6RueW%lbS+zGW;5(?;s8B3v!P^T-2?1X zR#AFhgzgiVg~GFC2&tLYf;!9%A`MUUREGh0BdFSNW-y9EUjZtzP)GCAA88jXZkQlm3HbocZ z66Df2V%k%Xo87zz{xDjmN^BelFo^ZH5utR>OyM3kwyH}Ut~s4KCdZ_!4h+?Bz|3SubwiC=AhMIyZensSqo zsdHa6CV?J+B4sljde#3FO3o9d4f z^^WmN6NWsdG3WWkNp}r0MtQELb&}{Os$|OGkzz{r?BY`bV8pdEp*RxK`kl}*^C8g4 zoqRy=rR_K--Py=zF@rM2H*y3hp=rH-Q%&m^?oKS%F*qwQ5;Qn(yz8|Ur3(Ut<>n#( z03$+EF&uI14bw>Fi_J!>Ynz%PaH8K0Cohl45Pk-wKb#m@g*S)dvYLCM0-Ave2&GV# zq#I?KvX$|JfD!9HYYLY7438!MxKht_(@2aw#~m+5Ch!VRDOM_ng!E8r^#IDxnJS}l z5Khn~0D4A4a7zK3w6PQTCo-Br=#*2CHqE0(_cGC}ha?yU+!hiJMB$9?4ZYka_&%_v z>L$=EPyxaek*`Q-g^ZVebxZ3!D4upU1~&4XUPl|Gg$t%h7Z=$nlDtZVzgaJdzQPxR ziZw$ZK5zyBvzUaek)F->XXUV|Z{EKk3#|aemEHd+R3Jcx2CQ^XR8492 z!R=4qr%&v!Y>w288@2EQSS#a+;2-gK(T~UIAA-XoPWn+)Vj{CS8({)cGL&?R;1Szi z{mS|wsO!>Qhn|3sC%fEAzujjI7UZR{LlYe!We8;@C3GVR^6KqCs)G5>3R>N-HG_bk z+7D=*smx9k6)Z!Y>3k6txZS5%mS0g^0Em|JLu^(q0ah^Z1Y zLK59g1EYE0JaA%!Zs={&4f@|_WYim^C99pH%oEnt>O%G*G}=nHf-*T@ak7tt+_1~l z^QyvPOGJaq8-C@ENhMKu@zHab6VUeU^N*q;5ih1u9TIE%xtTx8A}&>=k9a zmDZW`7%UWfBQO5tqhX&UL95YYrcO?1m~~v|KIHGm{~}V*BAh?)SwZy;L&-EHp*+;L zl%=yW@$;gv56*o#Cp>M1Gg(rOgi=2u| ztvO>bYD!gFOU2-Q;#h%@yR^6QgctvY_53DBY9cBFlkQcJDw;hy4#>)s9@GqR230g6 zib&y_?CR9c1Kx zu!XOEC{Y%tk!awY6hP+m5O2st#Z*degnPlE%smO;TKeVrzqDdvVg7iXWB8JjO(@#N z9;#DI6b$?RVGz9_vVuM4O+Yx?Lmv(Z%(YUVD8pUG3#4Kwo6HGiw~??eNYU>6dde>B z9X_;{HuOugozW0@pb6la8N%J;C_&Hbs(I~>Ra(p&wx>eD)0wk^s6MeAd@UiTFN?`H z3dnSpx0i@{{4PTr5YE^PbizuV&;}%UQX_n*q18249tKBlsiJRb!M}#j_4RCfMMW&^2)U#2O?kpP&KTMT~wo$t;$L;fU!7 zd!mmd(@!ncop!*o#@FFK--;=ow`1FX@vE z9!E{o{PR{5LvND$T_Ww%EKzKqDMsA`X2L7Pu;d0a0aTMgcWQYO@hxF)Vh1tMoCrxQ zdsa~l`#6ckaG^bYFwK)WZ?vPukDUO1qd}P3w}Pfh)xaq(Cw&yGeKV=kp99P%YyIXR zZi|%w2YkJ>iJ63`%MK;n)~kz9Mkw?qU@1ltRLC;R&GPjwAX(()sl>>j$+{^+3^sEk zaJ6DGJ)=P#ou~K#9xQ-olFBHA9-2&34L)~5GrSWp#^wg~E`FH_rS|DPCdl#tYwaT- z=r68vCEUtaZ-a93T3O5XDP9UL{=}gYsVasN2vtNxpjI!5DY6oq-YJL z&yLWS<2eF+-vQodBAlrfc&H|8)0TGwLlc8T)t_*Dr@-%@mT3@Rhlm(mSmd*QBwyO# zs|_*T@C(Bmj&>uz!qHd+nu^V*b)5~yH!)#%COLWr15_LR7i%Gcrk@k#8c*gJY&T+kaZ3xK zA2UspiNhy|O(*rt`d!z3+n3^pOuDhnzS+JWK2*E%(FmGEQ1fhN6Nf*izB5^B*jStj zpR`^63^jATo8oRaJH9iG9bJE(G;_Z*v&}?AQEe^wn(RFpu(N<-^|mZ^RMu>Tj)&G` z0u=xL5dVH>_{r5|;$m%4&#Z%S)wezD1(j;Pu~2@q{q4>|ic@#g)#8_)@$RAdc;YsA zdLtwgakaR8jJ^1rxd}L$K4XN-4k1u^;CXWJmjJ5WLt~J~4y(g*#<)ok$M#Hx!mk43 zn}HqoMZj;poy)_m-?qje5pz@&3*8v=!$X-LZ(N}J;MwI^y&}nvGSmyJam2F~kb0wn~T659+ z!#xu{6L6&^FZC8rqmjhFHGaPxnj8>yquIN)@UIa>jE8F4EP7(o^RL`iBt!Pzgjl5< zuKB*PW^WFoi2(_ITA^Wz)a^9XanNJrT$gX$=evh1{ev?uneS6=@Pnol0uy}7reKskP^Z)<42 z?qwGyM+1_G0n?#@Tt|Vj16{umY8F}cr)}1ca&{p?N6#Kf7E081@`|ByD<^V_p?G+) z)F(j3fRQLahnY#ceduoN*71YuVWzrm{N*x{As}zdfe8*}aWH-txwAHPV8OI=xUX~9 zztcf;m)1{~-Re#~Lg!yE4TdhiUu1so)IWWY``%^_sLXN+uUH*NIhUk%?M&L9HU}6! zIL!Q8vZFDbb90&OJMYEWSWpjL5?U!(JYTDHeg0VFx<#_J@b7#>U;m5U`O5HdS%@K% zqO&3LVozT`L~n2Y()GKLD>MW!t$s#?h&a*L_c61IMY-I@xg1<_GaPl=`**2wXz=6H z`7b8dhkvK-?_8Gb+;t*d5C1uzn_ot6UP4)1{!U;0`{%5zeu;c%*l&&)rS{N~JFR-z z8_M#)Yjj`ib4UHQ2o7ucG_3-VieZ-b$Ly6 zb;A?|VJ-F|eu^aRxFy5=LH}zRrPGt^YWA7!y%%%w&6B!;BF_*0FPcc=A7E}TAqBWd z@{b!;6Z)nfOvg7o_ik^pe-u<~yrDjO;PN0`zLjG3Is4~L{@VK^wNXVR1nBOwi)AO{ z?tMFa`_SOizv-pQt&Gh4DH;8f@bxO+Yu{5{Z|W~U)S34s?0uc^?Nv8*QI6~zC-lqPCkR~S(jej6%DiItM^xoG= z!>#JV{_^lwh&`S;60)cssvqMcp6vR(zi5Y)e~9>!TptxFYvFf@ayOpzE1opfekQ74 z|Cf`(&5oH%JnrvFGSrllb0R!_F&*I-Pta9#wEZ1nHc^4}?DP$e2z85XQ;2q{kv3{4JTnzmeCwC=g` zSDOhNKMp3VMqpeAPknjX=y>nZIUNn}LwSfKoGI zlgID2n%Z&C_EqRFZyt4nwr?JyETII*P*4i+ zksHA}6L$XX5+~JIVWq2w1y@Gj06J?SxU+o9C}dxD2-yK80o zA{GGPot0Mm`DvrQkz`0D?&~4^L22EQfn2w}$2-2;2`f>ZM;A|g4*3s8AJoNzg6`U1 z?Fv<2Jc$SNae6U3c*b;KN$DVPUvHtP-9BUsdfRC({SG5q(z5366%$wVEj%&~fKmj& zRXfmasjcM4;ISnA?FOL{YV9qt!Q^6X8-`Q69WV!o&9TM%T1)%97&?L&nt0CfC27sh zcI3Jiu2aiOM51VEX>jhMeX(~ujCnJLi6oE;5m@d(!O;Bqfg$6~P$xVQ`brNFVXd2E zt;5r{ivI7`)5(O!lqWx_jKN)C~%eBCZM4B{ijm2no-u<52ZC{BNlb9Kc6n;(@I<)naKP3 z3b;x}_5 zccH#D9r+ZCCdK_;tMcThR`(yGU#p8>mBr=xUCArQF*GSCFAbp)vPR(XjI~M4Tm(jw z2gg+LuoOIh5QU2ctJvieQyhTec}mTCiJR{1M(9ACq@&HIx_onpF;7P~MuC-*OgUo9 z&@68L!&YnY>GPSEJGp{0y2i)J`d;!szhLaFIhkP)rS9HrxT^T(cdf7hPsR4oo5$A5=Sps(X8_b7MtG*oBi zQxw!D(sr=x3YySyXH)QpssWUS;}G>4xNh@tGq3Bl%q;$^-$D0)ltd3#TEcL2jT|uv zz1R>rqGd?;AmiFivfV#=%n&!UE>^EbE=T??G|N=b0kq{^;snw61hmhfHautI@)W3T z4%g)yUb^kCXl29EEubVGsIhAQW7mqL%I2MG0tJsG@kNy5VMbIRhO`Y-NeB{$dRee@fMd@!5OArO4Q76#9SS zKc^#l7!OXE8!2}aRh-&3Iae0Bjv*=L4sXkWq`c9R9+oJr3;W2&oH3JejRb|3!6uB; z3RtRk&LnN+?x=zSKPL#+8xKTk+Kffovy*EE!I;-poceFNNnYeyj&coF`jsZ=8kXp}}4!lyP$907}c9g6ECF{mL&7Br1%3M(W?WD#d~8c1Jd z4auuN27iqNsZH7d)|$hFV&I_-+KFiGu`+c00}()1Ssy93WA@i)pbuR;1Pae)!;C~F z3lQ_4+UkYOG{>ZGYUdoQK7T|bRE`cs@v$lRhR?=7Uo+iKx7d*2+t0ctYH;7rQlvh` z2zl*KMpOdVrd`>g(+0?f_R!(xuvDdJ=P#9U`L!szUO21lPL5%;BzK8^lQ1$Eq$q`B zX56yd=kTnBMgR!CMciKPHLDJ_64$ufez!`eF<4_tPJYJ$bbD(%74Dm*Z3*B4v(TdF z1L#}a-nluy{PB%Y_!nVvdd=Fghcitucca0QLdB z3cV1Bn2Xra5Me^VB3A@Z2&b^%p@r1^#(T9pL1&b#Pn8e@Klx-wEz>YCy)zX$s__zuG|y=)xyKgEmrnhN`BBIp#gk;g3|$mciG? zszmrRx$$Bo1NN3m(Ex4W>qJ1r03q_kcWx`;K+W$n%Q3CbAM~mvZfa>yy?5bv3tU6aZcVaR1%)5;I)iSTXYLz*{k>SjkQE&d zt)bgNTn-l1PO3%!=w+wE4A~|T9mRiWX_~&wQ~Y~M@-5&wBYf{>jqfGbLle|bw0oPq zjIu?@5;b+z^P{gKOsG09=-d1jv&6Opo?ySxwE5c4=B78--d>HhqE7Wd(2c2Xpb$9gFDw|U(f zo+n>^%&13RFVRyS0S45cJSxd5RClM3Yy}EooO`_ z%z+)0xv7}n7QM6ZR7Yw|f)X6_;gvyOI(o3I68}-a(!~DvwPTRjSQ9F!n##1&BYqLn6N;FPcJWZiGDD zc%|My;7f~pSweMbnR>V}6iY)xvO|HhcUQApKwg$0wT?9E$5sucfvKTOm(fVWsc*9w z*bMm>Oz{k*nfP8YZ=KQ`D5IhBAdeGt31{?CbCTt6dAaO$L&es`CC zlPYY0cwc~on$MVC*6PE5>I`zV`zKHvIVw}myM56jYgxZ?S#^d=yh->EqTsfas;iZtMS;t*ZZ@*}`9f zk|L|8I$45(U@g`IxS4 z=7;|&5o9AA{Z?scyE>})e@X%yXHm%#crL!%a+ zsV-jwef#3hBDHRo@yZYQLDf^;zvK(mjNaX-^#mxasLD}VOc#_cR>E+Ei`C6&Y%2@v zoGto5ZQmBxzy5hP=gp~l_|ZF2XByhq>wL%R+*xdq=i>GFz%L`*DgNcT?YiZ58{tPg zl8yl1DeQ#lY`(~<7qg{@{VP=f0TX}aw+n=rvFt{}URI>A1?vG2OqlNA0HJgo0uCOA(c$Y6-suZzS^qt)yIJvhvdZP{90vI}HiAa-X^Q6IUYLtHPh zn^V;s^o-%)bY8la7s}Qz=v?1(Z=BQc(QNs9^PrGzI6?$emz&g0^4+D1KEM_w(Efnecn_bG*V)4BbEV29X5l!Y6jkv@p+4>-e~2G8peAUuPVLz zlEYCxt>D`USCp|^#m#<~k0n$HVSdG?t#kf-zN^Vu^Z!UWNwcK=4@zcL4RQozUzx7` zT&R=8*7~Mv-;mj+&pa5m1g|>qSjOa}5?X9ed#5>N?_5~81_9E#tm{@``Accf7YZi( zYdn9f*@Az;?pQ?#yM`C}XB!913dLagkHoJh+-$Pb;C)_7^`%-lG)66K!;A2C6Ns?M z<_Man5-Ac0tg^>8T2ATscWbSm&m}(Zcx4*C*RjnZGSTxZ#QTyynoD9|obr9}Y%cxZ zjawta`j&|q;myAt8v3t0f3!He|G4{va`p7>3tRlvgFQQ{OJJ~Xa^FbP2PfjX15d$U ze-hq0SD6fI&`bVfvW9N=9ZCW)&Usl+VXc*VF!0d?xAm%0U7uXruQ!#UE(0_wC|+qk zZ@A%TXr*XsOQC#ZrC0#Nx#p6E&_69>ZumMypQLjL@RORY^g1Ik{Z7KrVgT5R02s#e z$7LoGx?K##hhm+_Uz}&I6JAtkRv5OHGEqPzL}GFehki$f0f$$6Z%&V>2``kIuK!(; zN;X#fAt}DcO(GpE%*3IZ`{i~SVtla6*ETAL|H8KvQ|JKYD?mU-f1*(W0N|nDXYKCmjc~kK_2hhPv<9sQe@mvo!BuzWg^@uBz296~%QBft* zW`b~IEn0nLLlw!m9TF**(mbvcQh+IKX1lIUiMeQl;P7}(+j#{hgh#;$im&NM)X!MH zD#L&=k0R7#gN?5l$#?CMZ!BS*pYzawD^>>{Ij|G+r<)eaR~2LKEK) zkUTnBhGw-&*ti;R{Y@H%Dny}0?}I3_8#_{d-KONm)|w-YiF70fIM}t;=lv|hOL%%nsjOr&1fQo%y$JWj}IwrANcNUi0hN4Tte`mu?`kQs|*>N&gPWA+6AI+Ha z{$mFh3`E>MPH0`}RpqbO;KiCd7)s|`*`C4SLQBFs;a3X|hA?^`$d3DE~H)aM|>zWo$~%b|*HHzaVii@>*z^UQAuK5F~A z>yxdi+tbp)u*{F#{jL(u@MpTu?NKMGxn>N9OfQ9N~^6AYZQ=OW43Jlw%(e3>I{x zM&ZkgTdc!-GTq->%ib{VK|%rmZk9g~;3~~Vk11)REV;)LBglcg4EiW1y;pqwxj@+S zIhg7v<%U>JsFP9Qt92%|X(K5FwojeokH?=R_0MWaai8A+wJkOl%5sn`r?uyMyK`Pz z4g3TNoErEUyChs~CsFt&abUFl!vRScD_s!g5O07@$$qBl2W&*a1V5;QXZPuG;(}@# zu%d|j302@yM;#pNrLBNioMN$bboz}U_(`fMzaC&3@n%IrQ&2c{Gb80rZA1cncig{v z_3a-Lbklcr^4)!3-+c*w6%UfC38e9MTN4mT-XbrQAeN?tWkj2wJ6pYvc|bD-eUQxk z6R0x*%*I>?b09D=8Me_aVaTd(oT;mYEKb8nye_tKOwiL2uwGO5K;V5D5;#Ysu-Ez?%4-!S zEmIq9F5MQwG2*@>go8b5SkLpGK{HT$QA?FiibN4lSV2at+!8k$VWjJi*$Hye3yX@v z3>wjRXd@Q%7uJ|zXR5I29kfAv@V(5&q5BEJ;c>BH)^ntR2qN4#9jFHB0;m>KLBu9MY5UCKoO5-gh^llNH`M7Eri}^@APd4V1>lATR~@LQJdHS zyRwi^6GSs9L{I2>`rA8@Gpl7k^MJz*@dDB!1$-3bV`6%V(3430GP0xEiO^HXV!^-w z4>Y;p_DHjA<7_cQc?i0WLi_7#-F61a)LKm%{EFlsPU7W$e-@&1~89c$FL3$0EesB_vgvTue zqp`r3$gpP-iEAeyegLo&kuZ?rz&#UZV2{!v5^<>w<*#%;d$3Z>kwXR~Ugac;>tb*N zfT$^UcqITO5A>74gkT6t$3s*LD7arRrH>5V{v{BKB_X{nj%X~7h*g7(JXV^^p{kL z3cNViPD0XhPR=ZK%9xnqg(O<^WHHAyV)D#6AK+h+7@JgluA2DuNN1DN_%3+*vLTwK zQYveWDLypiagu~0g*qt;d{8sh{d!W2~E-`iCz%W67`VvuQ<*DXB+Z*~+t08diFD(leJlAwVU~zGAbIk_?c_+bD^HbZaCzMuWvQoi;x{s{z>J^rQCo2;Ii60a^-Jtufy@(SJdB;#Mn{!0NRvEG9Sj9t7FZ|lQ%xv@*82aDb(e2ZwGG_w zCxIElp;5X!B$Sr!?k)jo2SlZ>A*BWB2I)>|a7gLya_BBa1p#MsKgV1=}^B~PNo2xC`8{H}!6uD9!#T3fRz()EWWWa(EtV{;93L9&iz=rcCo^WX=B&0oAef+4dlVNSBnF2)3+Lf< zNm`~{(X2&S9VdFVJ?9v%oKM)$(QK53!^F@4h{-C(bX0P8&K$#oY&r$@A@ND3@!hL~L(%+K&uAuFkL>YJ)g|Hdj>x3dp1_Lb{m&?lys3oBV@ zaYtPC7xa)lOW+xD(m*_}8)UBnWu6R11`Jr`!=r|iKbQ~8CjyHYnx))^vSWwtk8uhD zw0@|JC{KfLVupNH2b()vYj1~NRVseLBbt=~H3X2lWRDK=ba4bg^4CVoiwK7k2>RSe z#bgG)Ww%sjkN&Thhk<(7G_U33KJ>_vX~r34aY`)4+XKc2J6l%A2rzB{KY@vzHDX)p z&I7mc8sy}4Z0{z)_)h{7sRVF()#QT4REz{1Q-!N@G5Jtm6SJAbp`EU##^0pDCm1Kz z#GfYVn)Z>B~NkB zt8lrb#?%;^lWCVMcvq<1Cw&R$B6&w$?iOEZF1|foA=X@M*8uAQCIfQ%q;$r7ZkI!( zmf8ttkCBkC)wuP@72(SHw{Z)3Ict)EkndHvuXFllt5&M8%`U5%xD4`+BH%5 zeB;!7Y|g5A&casUWRT4U=X$M~)MCEnvN`Q{$!d@v;o5@uc#rGa_tW`1_tA@-7A_>H zIA_Cay)A`yGcFLr<_;GI%=y(7h+RzWbu67|ZmPP&$?})|@~4iSC!EJO&Iq@B0wMI8 zv&YNevO9G0_*Pr&S~dQ3^eD~+%>=tn9&6QC9FOftNer9D3RQOjD{mL6)(%_T4mt1K z(D0`4*-oPXyfAq?%&T!B2$It&- z2CJX#*w=s_`g&x@A*r<$NsU8)-l~4yJ^LU?JrcxThih0hExyra`EN@$uCNEOr_hc2 z;KizfKxC*1QMwgh^&@h^^_d zVuPy;xOjixS0(-P`^2S`BwV--CSm=HZ3|DF?@FetKzHef74kCP9Ugaf)ujc5P7c;1 zNsO$2QOf`cwa>!&c3aAvepV8AT%4!zZrM*B<(}cb)&P4o{FcZg)w9`)#{VPZewKAp z%X;|3E&qxw@Iv$aG?(Z|N)kk!|2w4irwju$=k|g>K6}Y8?ERykE>a-j+Vy%g4lNdq zSACN;`LLBdj;Z{$$@3?)tY)nUZe{b+Knfl=f$7Db27Mf2mcb9<|H0n?%c=v0^B-Rm z&9p3qq7HEQ^X3ZC$6eAt9kH*+gaNk_+F*Y)jvEH|QW`Yywbc!|zv*^pd@xX9c*zX7 z`ExQW{2z$f<|Z;5?gv1~7!k0D>P+&4!AQOIL|wz^z{G?H!Gh!eGg~4a4>wrM3$h&`!y*$i~MNPwK=1{*(w^(cZ zdW%H8iZg9l%V$xyQy>N5hCR*X<0iZ%0J}Ahx49 zWd^Y4?~(@WE^`KV(BAs$`$4@z<;owuRPQXvl}V1*#O&rg^O%+DE@zYWa(Na=<3H!$ z{&|1le-FoYjEy@VxFtVGhM$q|4#M?s616t>vXtYmbcR9_I{sXM$fh`om)mXE@a;3gR{%hMD3RO4e4V=D08PB#a1dX!j$`1d7*B>cm8nXV4Z|^h zQdBE-Yj#{KH>%`Q2&Yap+3MqZ=ChMX2q^ok@}eP2Z zDo6KlR0U=rt^=Z;bBKn-@!TO?LlKt#UYt^&vwvs-wHrueA3LKymgpY%Cv=Hm34U^u z(_LZ_KvTK`2J#H00|ZL>I$!@$$Hg33r|oYVcWxYgQf_59ne9XkA1w@S_-8wleGg6TfDNI9pA2U9m>uh} z&h}AjtbVRZ@pSPxwdu`EAL(W9{(L8r>3*;E?s)6(X&myGAFG5F>FSp5wT$4fTAO?A zX<~Rp)-h}+mzvdKs$+FaYAyM!PBY9agior8F5p6z=-Wtq9pzX5M_?lxhbzJZNg#-e zk3Ilr+)zzGeKO4`m}Xk_qY-jGDu^+Oa^Fg6u;Qh4!0&10_bi{SiiYmJpjytf#p+G< z=00=ci+Ufoj1P*_L}H!nZhC$N1U-II_F>|0Ek{{kxVeTvPb4?`zbx>=H)BQ9pS(dY zy#Xu#y&$|HuF;=-16=yiA__+iJwCg&2DCUf?K6Vj;WjNXBLFB7fhj!a>s+w5BbNNf z)tSszK4yK1A%@i(MfF4j43HYCQ!R=`6>t^QwKf778GG=aTy5Z6wboIJ@`s32Fq%yL zA$@jH0G2b8W2HLi7PgRuya+SC&!y~S`q%H^bScl%KhRHf{V~{C07O}4QVknA_T5ak zp`f;lJ_L>c#z{VXpsDX;@8%DBRYeYASP}=fPqUXey_8q71rW6es zOd=j<*K5oKjyN16rZqg|N;L~1?BH5~V9yA4;p$mO@o>dFye9q7{@7Qq*%HN44H_i5 z#c1bikc+2BVks)L%oSbs^`MAmz1|KcbWtGTmBG@7^@Yxd%O$oh; zzEhV{iQOjK?355*{^@gt!~mC> z0M}^Ery0D9Z8^R1zumO$!qv3EgSF3;$`yh|HIaUMazERr^Uuh!b!<*YHvA;=% z3|WQM>YhfKU-ru2L#z-WFteUpJ&^s6V`a#42fIrQ<&S6U69{enAn?S3ID1vt;yK1x_g z^ZDst(Khic_3>RTjw{TvF&fkLX$Ot(RnX=vi~<;?%eCpe`Mx~zt5w6?Q_espH2)vv z$4~D2PPAg%Dr$N_A;jlJrr=C(AMk>+|-BQ08W3^ST4492!n)1E25K#lE6KX2!cBh!*!TlZ9Y zXM5K9-5}PCSrh%|jW(^jOv}pP9i)|fza-cKKLa2~_p@hM((X-O`Z}?7V|^m`YJ`3M z@{>)uZ>4vy^37YTlD>F8!6T5yJK@XXn*y*H1s!{~SZv0nqR5Xf_Qu)T_D-dry|NYB zXP#sNyNHCv%1Uo@foX$`moSxSEvG=U8L0Kp+tHuM_u(IIF|CfG*_Yg&Ssm0O#1Zf1 zA`(LBe8TVRIJw96OlrFnp!$^W?pU>8RXei$8y(U@uk~Pb{hf zFWQ{S2`387GX`hI1)XVIw}U5n30fV+_J3mk`D6Mz7mJiVF~CREy_7-YFDHlip4s6L ztC+7mjSu9-=19oT3gN)dr7q0*-j;8-A9en#8Nb)M+h%z&F!l(Br0;MU`rG!~iJlG3 znrTXj>cRL<-JSQ;zOP^wgi?1se35Gwijsq4B+P3jU%p7hhz5Ff4*N-^sDWELvMDk3 z`@m4a+wOm)&pWfkm0g>J@I#m)g?mQDqhh#mvZJ61&3(ss`>S{YP9WGF_ff~w7vLts z3Z6aU*8MiX#O>GdpVDLMqNVs~22^Ncdh1t-uDi@eNPu8mx@-alG^8)Wn=HL-Ucq)D zOF+hv(gp}6m1Sa)Bj)M5U~V8i5y#f)H0;R9kSA3xdC8QfqXt&x=mK~+8~6mmsPPgC zib>_Lw`lX9(j+HeJuBOp%mqMUL=cwFN#^hlOttXR^Tob?GeMC2MPH#lt>I^ON`^kU zD=C(_&W_s`{~ASvk^siSvTVXH@r12@dR3_#6BjH%W(par|q z5?LrR^YjYcq1zk3D7_I@$_^3s@Bg8WXCMI8M>oCCYQ#Aq5TFt`ZttHudd}$r`m-W% z(e~A?9WDq#I|?i62Z+gg3tztMXDS1WqTB7{@$`oVp|eV&ZatLq-NMMMYTWcc z!Vnk+799d96G(|G;N^@6jjFLey-HR`#Np$GJ}^|@yP-!4>I!bcLZM0|VIyTtA=FMl z4gnmtwZZ@9M*5gTYde!p^)en3U@ENufmTT$g^~C zg|tI(0~Nw6nZgP1#=mwZ`HE+%qz6B~0NUVzzqzS@3>fd<847(V{6Ck_swp|7DcP#A z;TB9I+NnDV#7@&_a&l^>a6+N!D1L#_1;|%lVYOlljb%tTnF(sOX<~J3V)YLE;1sr+ z$Ps!O>KxFRvM+^U6Z;w?pS{QTSWre~6VOQQn^^5ri!d^u@bfD2q^vY`s<0pZorm69 zUo^B2c?QZu!*4Wnpq41a(4;0z!%YlIpNT^dsRRtybhID)qA=O%KMB2`y4C>V&XeJd zr|6}Z;~+-?ahl+PshXUZsr&d|M*|I@ zPWePR)MYU|onbaf=P*g0GedbV{fJi&Q9aG#koYoo3N`@PNSdK=m`-)o;0i<;G3fDF zPGQMpW_T?V@2|*qc(g4fMhS{%2t{U}x;Gh_=<~QwJvU4gT~E?zRe4G+l*+76XJ~L> zVIcfVpT{9YhBkq6Xo!us!r2E}>fesH9X`jT8H|%Y2gnHHTPOWdG+S~t zC$X+?swm2+udgSfXF!+$6BVxSpF`-2YB|gm1!(CwjN;mam=EX?kI#R+Ky~KljYuTW z{F*mYS2U^CQ-&H5(F!T47&$-<9PjbyT4PkN>!hL}*iJm+H=`}F^E%`Ugel_JS4N29 zY2Wv2QywhCs(mdwWK$3N8KftuF+ML&Ljk8=Nl-j7uVeaA2=&+Q*VEAUvmugn~a9uHa%tD=pbqp_D#kJY(Nan z?(d2IISA{p>g$IdVG^VX}4YX2)Iv|0!&Fpka{8ZHpnqY@Xs_?{d~C{@In|+4(e0 zaf&n=1hoGtwp&pYWm&*u-LngQyZwA{jft-pb1&W5XC;(tJ=XX=&SZP|mz@kBOq9(M z`?85c$v{Etflg0LZQ$`)p`OLtf3jJ<)?7E8-y!Lq(prebF|qB_41Phes~fS|GjAaj z|6SrY+VJ-dYeYC<>TaS=6Kt>ZbG0)3HySU(R_S+S&A3embng>-%{XukD7F0`Z4?g1 zP9?%I9?uR&@$#|Jn0*k+au1I$$kBrcrdP7r+_m5%f=O7ib~P-1BLV3YbG-vS z(0V9tSGpS%@Y*Z$zKZvO8ar;A5IH|(aC-O7xP->`yP{|iAMAmHd{jF0PTjLh{U(@d zXYPs$I*T;6L1jztr&1ia6mKW9_6U*=t4nWrGDN+w0TeA9vJyE(5ee!C8H1X4nl0P1 z=wMILE>&7b1bat*bnCSxCMc+m!tP=0^#eCKZd!2JCfv=1Oj&T>gbQTD(T2{_bp2~tsL~1fwjs+&yo!Y~ zC~REG1>$%-xi=k6ewq+Fs2Q<%IgfYF5~9NZ!s0W4D258nr%uM%AP}NMXLOhmVw>{I zsh*?mMyM@~M}$BfO7SA%=|ip!6$~#!J=1|~dbr~VoZY23X{ZE~nVgyK>MAkIKKU(W z5o)V~*8biMINdlqJ@dHVfGDbPnj>C!J+ol5aq@`Jwocu4r)@#Zt^70?Ol1za-8+M0 zJYb9GXC9%NDx8Xl*FS!J`91o=q3!QBJ<))>a47Z{#ifMh_jIihqdL?bpO@I{P$*L|%eP~q52hws zuMk+Xaw3b=xMN%t^fdL2*#6lwM2Up*u_U{R{_dVN8YP`Nc`Rw6gs`Iw1gIq-wVq#5 z)V|TPI~~vUe7*kDyLn!5XdDv%BhA&q=a-ZcRVeI_xBP3cFrtKg$xY4a%6|7)CBjLq z_UcCRqQ(0y+QF1N;n&%Qm)QrPIAzJ^!rSz4cU_`TQHEbMU$5TfPKdJ#YUjT-dmYOB zo?el`qtnXE&jAvQ6RZag6*HN=idZFnEk=S5a=?8rcJ5{S*Ne5(*q{7B_2Qvv0-!*H zd02llp1pu2;Ly}Tcx~PVd_`h)9{pO_`z2ERTZJz>_&t!%=a0%4{Q^Frrw9lQI+(K# z6`A&i9dMp61bp-Dr@i6(sJ&+?7!buZ*kRohN%7n{0r;sUj2d+v`QL9>|Ica4uBxr` z2^)sQ?I`Js>mtoJ-1N3EL>MR`_)}iUYi(bq^B<8_UBVB4sDJBQf81dmh{mt;b))}H zHucIP2}d>|xRU=SfB!GVYp^+@?Zx(=H`cchOBYkVggWnF>DJ#&if=?-O@^oWx3S;I zPlfom+`_PDFpV#SYPgU24JYGwHs$>J5Fs&Xf5xeO2lH+tKD-%jK?arz619UU7$DAR z)8n}ILQaB)(*V4x=G<;j&}-5x1L&lzl|Ct=i|8RTfF>U_);h-qVjvt zE$%;1ddN_VKNSFveHMp=M9C=k09Z7Y2qNDq7c^8Yelk>e$*?~t9JQS z(es$C#j6XgIP^Ki&i1MAh2SHg%8WgY_*^5qc8-MS8p7|2Z@Nfe&`seW8Q2G{)3f1q zyB64rCuPEVy1V_5%S*O1BzkwFN1)Xr`Mx(iMt+p4Q{}^v=1AJ1HM&lK)#LQ<7hC%H zS4me~z72h38dSt4S#RE0Oo;Eg)H8^`4xcFzi9l~BlQ8zymFm}e=mxv3H1W5gXmDHl zdW<0MsS*~V`#I9V@%63-zK2g0M8#h*z_h83A0mRrXcGxkaXJv+hmhAR)Le}41F0XH z{2~Kdkf`(|VAPWg#CWLkjs62IT`DcANl~y*h6MHJ8x1SRb*k?^uymI3xrvRj-tctU zA{B+e7BLRp-)m+=8YCr?JHLh=f^_q-=m&mQmTU7@yv-&uh{3M++f=3#xGZUwY|nZK zmT647i7R!$izWkQh4T_FK0JDD=DPB~{fKMprpp62BV1W5yH zmw;v&mDp-o)~C;<`9&P|9cOjl-bv_XP^ajC+Di2*x!QBeNBO>{YoSj&_>w;ZlwD#+ z4{CBm%8GXJRSR8*0e#73CF5lbH}E-uy> zSRElL^xwb4fZ-O};R3HNUTqjVoM=|^${WEV+kj90MgiI-ndNsj`Qn>~@O<6)#rKXc zS}B4xQ(8~nhRPXBy>qi;iunmKxLk7tS@Y8rFWHZF5p%qK$v7ws2dues8p=++EmvHV z*pHDO4-{QDfz*j|%%;~rZ;&>b2Vq{Y(3G|%j>L-YliC(sZxxtN;Zjn1S6&(L(%i|z zM60-*vlre;cPQk4cz8Gz!o34k%yub1MqZ~rXCL#Noe<+_;pT5=4^G!A+A)@u5o_xx z`TKY7+brMUk9B?z*`JfMsR}D5EHs~~ctZ@v67aAhM!iQ@%=+FZj9Q|B{l>UEGeN2*iO9P*jdI=%&Eo2Ooj zAAqemK3p#!gI{l@G7#x{DE6-tC#EaFybDG4Z-Mxp3Hh74YLSMJ$9GL-g8-YJ7*-V< zN|O9~_In(tf#~*94HcTF#?v=WKK6(NZ*ZZ0SJnL~GaY@&H|c-1agmAOU!V`*r*w9o zk~Hk;9=9neGY#5E9?Ko`M1jSI7{k+P%$~TH4X*|=18RcpN7Qs6Vq8Y_vv^O%DbBtzwnS*XyN*it+xZl=>wv0_=p!LBiD*tPgs z$_J>^yT)w0YZ{Tqsu1Vo#+=zH1w<7hjMGHc6SKxjLE;(8Nn`is%-(Uz&5KlaN+@Tf zV}GlzPW$QK{yc0yYbeGmk`p3}kE7|tB(iMOS??0+E0Zra*vVh4Xd#6cnFsURK1 zNBko@gw>8~3P+5r$j40y8f$auLPekNP9-?!S3I_D59^|2o8)qIYD8tKsz zmpT2C5Ygb5s{SOP*{s=YCzIA&ZgY%vqd04u7hB|8)~es_3vy&+Z>wTOT!F%*CPOnG zuco+UwK%id`s3f#>xbZAMOWJUNABqpr`;Lj6^axyS#wvEgM30$)G)bQ&-WmOEt7!jFc}u(?{@N-3B05=#_n zKUqHTTO*x)J_jojP>}BY2azL_u>1i?h0y3|d-ntRE;gC^*-@gG{V&PtK@bhYI=f9p zgm`_(`&Jqsgtv@I(-S{n>VdAlY+|cUB6%=4ZzL0@=jV2u11`4hr#zD=4(1 zjl>rd6CAm8V!>udheq;;QKLkea(}l=%e+LA16u)RM=2g9SguNYEdcTNN;wxKhSF`~ zsM3O~I)S-nR(B4lOP2HZxS>)?smennd*GzWb_Edjdh!!n*ne~HZtclM?EN3(SE(GG zwt2d+dsxZzN1t`%S9F}2&-A*U7egmpDY^grmPqUT8$zD;6;c@PjJ7s3zUb9Xi4rhk z6y&*dp_Pm!$EVe(syBOLYGK$#t?kyAO~<^eP|B!&f*e+=$9RlD^1cb`nfCHL9Tr;b zuO25g&i<)M`h%un^2IDsYiOb3BnxCl_4}yPtWY4y+aZAd`t+>v>wvlix`MS| zy@odUzm-K~q@H!^=iL*3b#;v`U8TLDYFWFPp-o(RPl@ep*dP!qc=!E$MMfAy(4*-y zxyjU>&=#Y<*18Rwr}6Ev*5{i-r@3Z-*$#M5_w#!)H{aiW!=37z+|t);&3h#+d=1Ny zE!_Sig3Ls-rvm2qt%!o3bd5Sy0)g*NdMRlP3CSw7M52e)@5Jo}_1%51AoORyCzeJl z^wKk)j|cwAZJq-H93YP}H=2`b7jDQ2Yh1_yYg-}sO7S$w|YrRzXIGIAjDAvtIb z0>FjoY zf}ZIz+Cfc=sui@dK{xF>KC=;2$!wF_c1W>)=O3u=CJ9t5i(jeK=b2n^F*@GBM1C~DJ zWk@o?YNvwrM+Rd5aLeP!;td6~A_!F!^SS6BD^i!eDUho#SKrS_m1~cKst4$)TXKO& z*L1@jOhU=UhIPvTGI>8GD_QwH2iTGeN{<6vECN4ir-hL5=1Q6y0V}i_pV)?T+1o-w zkLDUc#c;#qQl6u~YCM8^DGiawa@gS|l8qE@(Kj?Sn-GIEI^p^{dzL3;2g;O@GS4C$ z9F)Ghd>t&&g|MU?i&L%|4`4?ephYXJ9G4l>x0bTum$B&AKpC}$lGJ87G8swB4pmZb znc|2_UcTK=9WF-jT$V6i-5W9arQBb|-+pnxmPgiJWD3^o&lbsCnrR33E9q|WZqf#G z%AK8&0fLGc=v_^%_MUxGz2ZK7vb!~4d6uH)fH@l?}f2#LNifwD^E77 z;uK;CWmfG-l~5Bzc6Q6^+VF(v8HO`{{y>xtu> zhC)04>vS^~mrNiZdW{_jbO%LLSIICu(~B?&RKrajT~ir)IfkNmBb-__h!>FV7u$wr@-C8LZ#TF@YGk37E zF`Y_`0N_vJ_R-h;sVn9CQIfLmEcbGH=Gz$e$=`kqz6EOL3;7oL9`8DX#O@MrH@Gd0 zR;9qP6g}PiDv!%`<*(&*Po40q#EPjEChZWq%cb|F(=_8XYvR-F+tuph!>_{9NCC&e zPBH490Nqyb)&(}9HGRBmXw--k6Tg`>WLam!BwNcVcfZQralzDf*W-H3{p|&O<`Ujpb<) zy?A%?K?a1LiR|dms?~Mc^Yjl>5`l`L{~(9<-=Oy2=bX%gXkd1l9mJV*y%wLPX8&ZN zI8L-~Xs;OQw<)~8llSDJx%&ySP^2Kb?>3=q2-v{g(c!OQ)f2f5C{2FndQ1U1GYmj2 zm-mbO)`kP+-_78t<0qb|zV)#M0eecrOY9~^2$F# zLrO!pzXcnweBeP_t9zG_hvv)u{*eFZ%`rrFbBLn))$Kpu5>5lPVIKhz;F)gBl^;tH z;O(D)vp?GEGJ(>{AW|7m5(9WB>OVqVI0-a}$58dZFeJ$51wZO7&NU2w01n2yk<16E z7{G5BgW(0>2O#&Ff~+(w$iyIsT2x*d2{>uNx3&SV3FB^K-p~nvf0Y8bS`p%CXz!v{ z13Ey+BvgnD_UT(trvNUu04@=lD2IUn7wsi<1yU?SAW&g*zghbSUTLK(@&iC8%7k-M z1THEeNl3*+0ho0eBI_bVn^DoANa+a&su%!dK?gOIg5@F=R59UiBN2|Tg71xSma*Ou z|LuTDFCs#gf|AhTEW+TZNQ8tFr>?>a6(rP=LynpXR&3*usDnp?AxhzZBN8Ac-f+&= zD2T1D9g`X#+3W2;e(!bg9;z+jGERv|95@ni%xIROUYH zzQui&5cicMHas7I&_S7g1LIzR(naOd9#;6Gh^cK(DpqZcgRrHtxK$3>CDBK83efC>k(+l3qi zj#}+L5tn6gXetFYqffg|@q9KohplQUa&dGSiVFv3#rX-#L*Z%p_Rq18VQz0>6smH? z3GuVPISo<4Ol+YE2QhG8Ty38uG2a)G8H&XTiCO7k+>VN!I7ta<(Qs3|z4RpZHdSwx z7y}sBW`z12UX&2or{$p(%km_tHWf;l7#WrsH zdfM_fAF#Yqb?{p@5xq%`xk}2qhHx<=qveow^T?PRW$l~f$9TXjJX(;fK3G|2IoukX zmXV#I0aT3vw{b8ic;Y{^&4^NpKQz%RPxPT8(`dCZObc$zP$HrNhL$JB3@R)5S~uKe z)lvd&65_%2kuRXmBt`D@<=Gh&K+nT$P(4yd$UdON{o7&I0yaY_wkW3nMg~`4^%awM zM)_=;hK{vmdO1Haw83*Jd3-D;|H3H8i7e^d_k{&A>oAhG3PbRL!rHjWX45wl>#L~i zoD14yW+aikfho8mqQ`dgoP0kW;1y(nAn2cDS3=QGB5Vo&`X$=nfR3`Qr>N{g^Mk_z z*jKE@QdDgZ3yyqD92Gtbg~>>YXMH&YCFbLou!39#UaPD?M9mP*@-Lp1Dsd`U3uP)Q z52m%}uN1AuE2kf1lrVneq#m~_H)m`-bC)HB&sAwqtwdY>%fIBKuM^w zH!F6Onc3833fIj^qQ1xg(~4INd2iGZ{76+)*vl6yc1|{;M*T^wQA&vzaAbM~>=IO3 zr&^oopn}Bz>W6eHQZQryI5~c5&a7;ALBQ)`&Fo8LyrB*Z(SFfNt#d#^<;ny<#nJ>= z?s66MvMTzCio#Vz?_2zt73-a1m(PDwSdt-IM^(j$B36ahd%I-`-;#EInGcN^iNjJd zGb>01z@;XMP0huBk4$(=g73JjLsOJg5j8*IK>h?6?s0OHBc$h9m0v}$Xt}-5VWfDt zf;6&ld<6K=0+4g@$cn0VMb`r(Q-$#q60t})(AAHtKd+Rb_GdKy12TCBS13O;F-F&0 zsx_|dHmt+djqB=2k|ADdb!uhId)(tYh=@DRsv|zWo58eRz8GB#HJWCFdv;9Yg-f)j0IZWjMhheX#VpivON?0 zz%=9&;NSA$UpQNz7%3>(w0gU?I7xgF%>+Ldz%LTOZ~Wh6A15`YI#!`IQ@wc@w|4hS zDTz0Xqoe4d{!#QWhL>q?w1K-}pd)}5#bmn=uB{J&8PFx@mw4`{vX+9%j?U4Jhd4=Z z2aWi7hwsqXXak z?c8(iF3ATm=M&nEb}PGrkQInNK#by^jhYc$_2C^J7d)_l&skq@T;Vkr9X^gX z=z6tw1Om`Z*wG~CQogkUmQUy)$?hf703TJ>?-cbca04vrx(F^oILBsd4%Wqh=HC*f zVmjTNRlNr>?K>&$iuPT~E7^#rV4?Q8Eld+W1zzz?EzqR}0)*#kw#aAtIGTuP5Z zat?71@L4t_Ovy^!F}jFK!N6@m^e@mJ&~HZ5e=7mQnDy+-$}%hbL7?7rDZj0iE$03YwTf z>Zh=gvM7FZm6bUHaWY)j`SpQO?B^4FF;!4o8&UHds#_cF8vXi^IH^E=n_hv~)RDHw zlI6z?b)O8EU~qffMq`?AgtEs*?pnvQ$7lQ@D>kEdBT2FS(D7mLLM-WM)%d|$N69ht z9SUz_Ol8nwLNpP$bT@n$JK=_e^qk-*W{&=lB)zKoT7sNBxEphm0Sluiuo|SEJU!qC zhSP=XmJb2dgbpS^3vFfuXuAR{ zXQ;8n_+*%wr#Z8Y2|!^&VhjLUF97n-pB0mWaIVi10O$N&;`ci7)x#bKOVkv~TJz#X99=Q~Gzj$zh>$tvDBmt4Xm}kFO zcv+3hoB*ehdU)GQ3Q|*#G~r>Iv$nj;dE+>&UAW3J%WS7`E*m&l6J9Nbj7SfszGD|>*nroWf@>+CwE&=%2dIz9p+*AhG$h-7Q zY6;u9cq_Fqc|TKjKlOcm)D1Bg7x-WlmK*EVh6(2I&W`0_0wSaJ&ATq#m{Yi#*0#vT zwkg5)!1bjUxmy`sD^`^ov=cb~s2%m1o!0RkExLX%-EPSJHW_BFJb!a*WmRbc7kP@S zQUkI)+kN!!d(Ie+xYn+74s;l~+3C7FZU$MsU-hWLRj%9h!bsBQQbSX9^C~&$BoEiu*Yo4{ajfPh${Yjn)HEE z4Q_+tA!vL^F^2_?GkU&n~sLWi`$*9_K~X+YgDN(x9{Hj@3s6FcLf>;Q5LG-S*Jg4xaWo zTzf0feT{AW{Ghw&IQOtFXa_oZN&E4lndpZyYIz>JzE1qLs3z#LQR+Ca=7jhBa-8mn zp?2Sy@cXNYjuHSaUFHVm$4jKuMGg9=RNlpy)=HAcQAp0V(bumfn1bWnAAK9^;@GQB z>R+_A7s^PGN!+qn&HQZ^*rz(DEAAA?KW8qz57+)J{q=+y_1oy{KGjA?4d(n1Z%(oM z3P<4LE&ut|zcU}}^YNhH&fk}&<5wSJ<_}E(>|d|yr>=zl?be{LFE*}yYqt~sJNlai z4>^ye@wkqx1~qE+2zH<3KlqtnqC_=#R`j?&GjOn~82(v3a*;lXp!VpcM4qtVehC^nWj;@A|EO z>;LzADDN&I3(lPzAGV4gaeihleZNrqZ|M=D5JJRaf}E=|EsW0=eG1x?k0fT*Dl)m; zMCjQg-Tyy=VLJ1FvN`eDXvHvMy8wc*BGcKuL@6=NQ(+O8kLYZf|NaS^7%=qel2M5_ zEzOnd>&ff=GBKS$GORNFQbOjr8%<1_;uc@*8#1nwD<57XvO-ZlL#muRQH-BRR!(64 z>uh(m<+X7gTkI60L~2N0zH}6y<4L3YbPK`mLNUQx6|1iqBCq#4i3u?1e!ojbOOr=X z@+iYb%{w2P{vrZSgA&W9T-d#dwzua>ha_$`btwl!ES0YmCI;ilYgt{A?M_G=UA0>z z6qsM1EH`pH{V=S9^(e*Sv3oRbdR+~NK4V`Z6AuraEB#LUN&YtQF6+gA_p~N;$Oa=-tS5sur{Ep0bh5UMzFd#F(>n7J6R}M1G7*k{9J`aarA=c3Cuvdx}9XL{@cjs zOvNb1MzWdMG*sxNI41>Wtka{v+Qu%Va#W0Gu+;rq6XQ?ymE zoqU-aJ@*siONnLt5gHO>9-$Jhoa)m@#-qF-Rt!U5q}nDA6!tyJcomUx@cEVP%TO*y z@Vi%KsxDERl0Agj*esq;K`|j!NpwJz@)859OM|K(%sQ!O!0gymPYm>>NcnNW9AgAt zn_H)Z`0Z+iwJ_6T{UtUBNNdbS;dd!VUxD*Zb(~4t0O{2 zjI(#j-^80(9+C^sQJ`@k{aNtnwN2UjuTEjASkH3{_PPjs8XuTpYY*YOixA4Q_hE{c zwa*HXAy+5{EV|+GBY)>x^Tl_s;Cc^t8mu90@XdXq9Lhk%q(vC$uhO2<^esYen}Hh{ zDv{~?*g#Nz@L75q{Ee>6BR+dO{ImiB2L`){cV&$K?xtSE1jLck-!UTYmD*2OFCy_| z(*!ep266eeqXdfz2x~dIKO}@$(mE+n7UDz@KXG-3+nZ8wOvwo22*$a_+K}JpgHp#q z^djcLY$tdk6jJftUxC@6)zk!H0r`Y1w=LFW#yPAj#G}T{dn4MGD2{K30auh z-#yMb8uR8Dn=gB&);G~Ft`Lk&v)7EiAWh3;Xt`JU^N%rqR)QwWm8p;<%;9KKz(W8(;37&YBUXN8-jE(IMJMY znZHpra+I??1v{hQmAw?^zx3#=Pe~@HQ=6UIc*$(I{iBdN2CcYYg69@biPs#{eBERe zUYokc9_lS}kD-{I6L02z3VzI;AUt7>C*BAR4yI`p=kOx-vZ_6L_EOpAwFQ47?3yl? z`b#yx-}&g$dK`vkqpKeR;;E&P~IEIR58Nbmsw@h$)`4Iq(fkQ!HKwl&vk&$w_`KPRY~m4Hh8 zQ8*harx1Pc@HIuwqt24&tiR;|xtTF_0TeI-qcr7vr`|he#Pc#8=^D2xujL49GS|B> z_GAKlhx#h%b=(xV+xg<@L`XC>GwA<3DJn(^*6DgX$xVu_*6}sv9Ag~XcW#!!6H zE#R(sW%D%~znkd=UV)0lJl}{lc`gY2TVq<0L%LOOO>MDr2gE@m zv44-WAGUrwZ5%-@8QB}(|F_xw_hiyg*6%g0G*&~r5wrgQ#l?2ix7n!az^Z65U}Lt| zo{XBPsLC}JEd+vHTIL%V+~4Jn^sIlT&4#kFB|LAB$?)&t+n@cNU&DQn zJ@miKUx~kuD%^cZZ+5I__qhf19G3R0EjKNvYvZv9anXq6yoyWv7jf;tL6@6J!Bj;C zVt#u|xsnd^po$#UJAGK++i-z4v#X-Ce1Apqw*bECn^T_7t7VsPs^a$F_G#uDX*V4d z7E~QJ8?xtftoJi}E;0w^?_zbn{T_ev5`m@WCpAFRF?(RVtyrg&rvqOJtUV7q7`eN? z>uF4s5><+Nk}QJb5Xa^1Alm3#F9Ux}Ss392Z%6O3F-HOZ&LmW@b|#Qx?r!81Uvv;F z%YibHg4dCPHIX9~QSp+^!Do-0m7tUokuM76MO)>lTRRQ8+6mhde6D4Q9b4?rIwM#W z9Lbyig>=C2fcWzDI)(~04hj<3W^+tKly3$8tl$H`BF)7P#`*;3=2o`P67XVabJpff z`o@Kj_8q1AyT}R=9=$H^xX9(V-MD$tF@`a`nV&MrkdbutT^x_1W!q3UBc1YE@fDk`Z7ruQF0hCOHPz*GqU-9G%vJJ6WgID9dAOf_|>70M7iTborLk0JgKOdQcv@+1BAm2 z;?^4_fdyF+R=A%lQ3Lv(^2X0fsTw`#Pppt?Czo)PlARNgQ}pP$A6$n94M5FMa_~rx z1HOFsuU?|@uax9|(5opuz<3zSZc3?$I1b>tLW58PDmh^H^L9^2Zzv>ww);cpU*Cio#N} zkx(u@!egX}Vtk%ZZC-kGm`7(*Yfwc{^VdeC3Q|oA9`&xcdG>+M!iv@! zY9yd{=wNh6A}4B@?bA089o6fhvpk*gmB!+p#@z=!Q69Rrx8Rs0UG)7qzaC#%84LB3 zuDKnUYt!8~8h8tt{Ae{OyEro33gE|#{SY1VDsDaxofIb2A%#j@7Ek8&f~h1%2q{63 zFg1?r$rjeBy?O-wq3&6a4#k{~CEH~5^rReOkRonM&jY#rVVs^_%UR2S_+XF$I)>gF z!o1OC{@eHJ!&H@F57}RBwlML&P=muHFf(S7+es&tFhZU}(vEQCZshY6DN)x@qF%%c z1Hmk90(L`>tx1$4Nc2$Qv>xHzJCSgX$ztoqzo%>}I?@eevO&YLb8=azNs~;SCn^Se zT3X8NnlC8~A9`|t`=UNl=psstI37>HdFKK@%xKN&pbw@n%ab434AwKG3_SH7WEmN; z)eBe~mnDJQLycu94WQO-nM&H~4aV#;#*SePI2a@xYph+;FLY>xdpbp63#`qYYx*!} z!KZuMYhdI7NLe(t$x;KBsCo3xe?&p?ndbfX=hv)Enkg1iFeviq`Ji6#mgAJja-Y1U zUhRYVcNtQwylS}qGoQf=BPdAl1s=!bl<(XEFzb^n-t?VWm{gHFz|LwWN@gC_KIKe_ z&(Un^sxmIb{z(%HN(|G8IBYTrS>TH{HE;{ z?UQX;!@;7HWmy*SJ;U3HhDMb}B7|x&7n2o1W}&M(mX0g!{>)aq-(>OT{kN@b>03uU zSA~-%w+*d7V<4@oQ->6hvV+!b?RryllQUuZciMlyX>OXlq?}DrnZ|L&={UA>g<7wS zS?`WnGs7dFm@V~rEXfnBZ1k<%Tb`cP1Zlu`W6!xKTx)xO!EPS9o<#M{;Hk|q-OqE4 zzg82MD-BPedh2|3m+Xk6u(ia`&A$%`miv|@t=A+r=kE?}Qe~74J}<47Jq7iT99uOI zIrhHyUsW`c#r;l1h(Y10PL*3fj&u?qVVD1BrQEJLf4gFJh{U!+)zzEVWX7J-e|tKb zHB)@{lztU^;A-P`yZ*3W6S8f1Irkls(mo{Be;C#V7$*v0SYx8vP(ec!nIIar07XGt zdIBp=zCp#q=|~i0X^c2dW$Ik}X>{?%-J{a`H#-3F00%|9b>VOFx0y3`GxY&C_M6-5 zH{R<9nf;HwHpLmY6iQKYc=i69i%yT_<~<$N!naJN4De~OtwfHB9b1~E5Os;ICymPv zn`?>WMC46}+g@ku&+IUgE1m}EQq zIwN_+9Qnd)VErS)WPZW2egYzI>G-i^b7q*1w9>Y+rNqeWfQ zL|r3?9-BmPbgEYlz2TjEeouqqz@{;-X{AsVJxGBU>Czu!YN1FTKvX!v@Ky4p7=>6d zz1(Bb;Q*=a+qj6hstC@S=yb848N{i^EX?G#Zt<2oxX{fHp-pgC_408Ne#FmAoDUf< z-KmA5!aq3pIlAz&yH<&G5A!VskUQ|1e>ASm-x|uOCf-L{Z8*+OL`bzVQy{iyY!evC zrlvTUg$wWBV7QaFT6AEgRPD~lw^`?`oUM1snIpv(A)k+aS_%SHxPGd`xM*5HEsbJ1 z(L00zd&(3}DcjBg1WR|k%pig?z`7TB!wbyGbfg`0`0ghOskgbQ(vM=DX?Lo|4n|4q zc{2Qaf&uqB`f+qv1=t#Y=19ADoa1TBYNj0`%g@)%bn7_ub+n&q)0&Zt1sQQ~DsGRw zHtz{W4gAFRei~y)lRT=?@A1f?eV4}`Z=ckD!7t{iqnq*P_z#a}empN^+~Yws!7&iz z3vn6Q4SSj5B3SNHcnB1bQmDRO>-s~rdf91&lB9i|-L2TC^r zBDD*n8=|$%Y#{+SK9nXh<_;!^h+`P`gfZ2Z01wP!_E-pw{L1UQX>DI))smG+!I0`J zH1V8<1}s8ypUn#s7Q&0@)gCkvbe0%!s?>JJ`vSP(I1~Ei!?19or*|fHh2TIQeTjKG z#&$^Ib1JQSF4Oc&Xt7p!e2ksLeH}%?BH^_4*4AJhyQP zFiEWg>md!WAfLNYTHI}fS^%DUg#X&5^{Z1(5>eAWVHNS;KM;dDz58~c_*F$O&?9{U-w+$ zeR*N@?l|@1%Xoo0>L6gk^Y^+XfeKH5Cnw9~#KN_6K;#P-{%e7Zu@RahzZH%b>hhy} zUJaN(?9}zzntu>{TL{udM{wsv(ocePk5L~;&a^sT+~}N1yand3v4I=Do6WUuOHEhK z2H(m9DbNuhE&%QQ`)w{z4N1rsaUbO?FA*1i0>KmG5fm)~WU;K*e1*tb5G#_=^%%No zUkIUH4DGxM(L4^VSpZEv{98=|;zNWIOh$6opqK!Shu>NXo@!Zqye+Q3xhVv7tcA8u zgx#&mp_Fz**RKAy3jipX!f64w+>>Fn$Qa{qsv!wsZF!;gp^rV%z}suLD-)q(3t=4- zp@%zv4_^Z*yxH;=lyUbgYuN%!io@;nqad!p2iSiH6aV(t!frZW{aFj8;Cl65@l`p4 z#e!aUp-U-`yRf~Td(fny~kWbWF=}-DkdF-CBBCPnxZn=K5Dx@hvVT0(d^b*Y+9*4U|l=)2QNH&*f z^ufv{UCQ8yV)C&7m*A%wHy-_ z&lYMaKVe*_n{imjng_X{MzJ*p^@mdRRO*#{M&W$!Ii-u;{3JujA6G(K4I;uS>F!H? zC2Ru18)1(~$x8>{%Qa30*P=A4V`(})!pxlQ`h}-csyss+O6{@)2KXADu;OUx&>!_> z?uhv&`GVf^MmTsZF1QS};(WExJ3V-x!Nv`JeKlnm<>yV<S^4j$EfEn%(YBo3gQ(DMpcKW0f1o zXbi)ZX-{AG^v#@%HnGYz&N07OQk!SyLQ8C_30z~}#j3Fbfyp9`Xyb&a76da&X@d<+ zDf1{kE%0tTPLB-6t8R}k|0Yu&BvI_Vo?umbot|Vky_g@U%feQYL;LUgySnw5vZFs= zIy)FR9&94G(|fa8y)~|mhMCm`g~zMKB4^oe<}E~G zSc`HhqENYea~h)HRnn3tn-4Tt*H|dxoi%T+eXGD9x8_hz%%AJ$=-l?}XV@Pa4Nutp z!c}nFRjfF&L%*+yUS^EfYMfcskkRAbp4Yw)5x5W?X3w|Oldrydt{lJ>WV-D6*^m3X zLza2xO8305Al2qVhPz)=PqLKG=cY9H?(ZaHVm`sU^*5|mfJOhc+w_{ZzE-@6&fDmOBbK16@_79y!^tKI(a*xUsx7XpWi zpuTAE@6$j`-ibhj{i*y-zgX9vc}J|We9<-|AHguFu0yu_q;1ZMCJdh()ZCM<~7vCZLWnI1bk2M6af z!fv9^=ssn~lluWq5D~c>{sVa>@;$@@Mpie`-lLF5q6i{ELO!qV)r&@?{M(h<97#iHy#hpQsp zYAoMJ=ZstF{AE-gG2lCMt@Lx|*JhJd@zJut98AA`AFFNpuS^4+lv_P1p}oMwYq0sC zBm~f}?KC};z7e{^MGnVQ&DJ@rK}wE~pQt3+#q-quW>?&Fru9qI7y9ME5RP$LPKAozITiuQHsI6Ea+ezXp%oBBwLcr_9av3d$TC zbws~slsY)l_rD>pvT{HcN87c)n%+T+dQy*YAN-ar>!% z65*RqFA^S!lu^ycHET?f_&(EKgg1UM6fGU8Z)D$HIW5Z$v(vM_A0_`Y!<+Q?fH>cH zzLv_bSg<7CMc=*qF|@RC%28Wim**S9bYm5XHASBNS4;9|FFsYS((yz~tt`dNSArn? zX0Hh*uF!1APEGur;%}2K=1r~(vsHp7;Kr;@VvqV(Xf?&FddX9mUd!%kQIOEG1zyKh zmPg|Azu~59c8v#4;19pTIjQ0QKcc_@co6_HfF`iue~2RD|3MV2WVf?LQOS>tO=g2m zA#uI;h=SwuRM!xB8kgZGtD)Kw&CJJUU(!|TIJD_0^J{!hYh4gbJp5J1>h)#!h=RSg z#;&K-@FTVPOD&B#d~|7TjKS(~LxpL)*}DXP3zfZv*FwlIpX|@JmYTdb=_m~xKCgbf zX9SeoXWSL-NH9SR&1Kd48){q;t$oztjBWy}rb%dXtv3CureJvUZ$PhrJcC@Na7+Eq zrf9y0M|x5FNCAu}Amlv|L0Ha?l^{4)1Q_Yy?^<39(N(7x*?=D_( z4=l+Th2!G?MFV%r!F>BpRi{H*lQTQ_QIpUG7LX<-DM@Nz{rB|i!Px%V!`dTn69!{_ zFkBuPXzI-C!$hyQwiNiz4sgo3jv_2EnX!P`Ip!dto~4;MJl;FlsH`Q-jQoUt*#;`W z*k?mQiq|!V$cu6dsiZRt&x>aJ#E}8lsX2z?@=%qpQ3o+EqF*_O)O? zID=`+OWd?m?Pv`2bs?_%yAxjQ-MK6BT6fQl|xrYm;t2?8HV?AK&_2Je62z6d7QEN?IC%Ij6N z%&izS*`K5~Tf!LNzNXxPq)x{WP&UkGznz4MY9~w=JU%fhY(Cx?C~rBZQl5tGy@xRJ zQ1$KqGNYa25j5DfzWmjtJ0^A9&AS?Z+*3<4a@_k((c_EZhW_W1R_Z{lnSLfYHcP*! z5(i&8f5&{TmFL~%${6CjvD_aPZNm2&C3%ZD8=hHB66qZ~Bs?XD-rb5ME4uT3o>HxN zbKdE- zu25}S2A242-u-P*4Z;1>yBcmO{S50JZqU2}>W&FY+vVpM$EF&Z)o*#YoI7v-SdD2} z6Z@>ky0ay7(y~G=6fO31FyiH(1+%J2AkW*naEqbpR}77ZA6p7;X1&h5=$blp8ETFP zW%L71;F~CE-!zfue!CM7soT$cQ(TvJ=QK;nFQ+yjfRj(qH5psiNC6&0fE8&MC4l#- zAugt%nr3~kI(CMV|6D-v_GkIKzmSYhJ!=TSefJ&c?&F(GB0+vdF57oT3qVn2EE&uQ zOF8J0vnq4UyO4nm%TZMP#l#GvHL``EndHvGCV8%JtO5mn(-Hu-p$r(iC@&TQ2$LOA2hm22A}K^A|u7GH~3(+b=68vCKTmP^EBY7 zOie}%3N)4nkyc|Lx8k4jco;o}>jxpIl>tP6gLQ_mMGEN@GN8nhEm|VhR?PzTm_%}W zPHUz};hIF0jOaE=PmbCTv``ch1;4V&%`_{o2H)-%lkS-*0ho#iUF9QLJke@4pf6w$ z(|bUQ1f6{_J8H2GNayUPn#Z(GWj1OHnfE4;tSw1X&~nC6!DxT{%%u5UYxwIa^_{v- z02w~QdyV(zql)D+Hg*(7PJTKx1FLs+AC(PIx7iMys@Re1xyAjmTF&z!NcQsZQPrL#1HC+9Kuzee-q9}HAcA$%9+@G>ciEE>9B8vdRrwyi$)6Jh%7uiri>%KCHnDB068)#i zF)HrT1`nu9zGj~=(-Gdvx>@Xe(mnqYG#01#r7Ww&HjFQmU3ybVmFe!WW!jmft=9e&EwxgI86k}l3TWS2^db5S|QEKGLdh>4-bT&-!}ay{foYasdtaoKp& z`wxs1k!b0D25wzgn!l7^dmw}xZprQ#mDxa$7lWl*9K2_XqCSV}UVkjxf|8rc*L`q( zK}_*i|0+7F<(DbP|I}!E$3V3S<%H>42+Q4kyCWEgUXDgFp5J-Lf(CPOA|Jg1~WWR}SNuGa#?27e$!PSgR> zule}^CW7{;uZ3%<%I2zX-}e8N)3zQ<{Faigi4-(Z0Ds-><)>g$WBFqX(#O5}0MUAZ zERb3lG;*m6^RP!x=oZjY{L$GYNDXT1VURZabN{-3u~;A<*YDjn;i(PO1Z>!6ar75T9cfQt=j=7im|2TQJaDoUU&GBBHqECeq^$;jelhmd6wVm=%E zHU^@B&`Vfwzh@Q0LAVu#^4$YKTyKCR00{HOO_zwzpM^Bxkq@}Mh{kgUK%K!iI^CtK-|5u zlxR%!sYL1p9?tbOc}tGc*%k8RYZXmb`(pp3m_`_WIeIKd@hmPmNi3A~H)%>b#}Bp$ zm!O!fpoHD)G?yAQ%gf|bv(&4*pmaEpJv5She?Fc5r6@{Pa|L4xs-Wf}~JOp3C58-ulB#v{#d6Ku$VrX%mXp4Na5lW0}*p7$9Xzl;ME zlSMUNUj6{p*LB-4Zotu~{q3P@p>OF3(Hw@_9)m9NOK{Q( z4ZGdw+#HGiXs(-oh~Wm^6ASJ?Al*l$I9<7q;v*E6o}0W*^U!#m6mX9#@CVgD@_l+c z5}^%=_bv`}Ke|)T-1zyiPBa^pP*5lwQ@rg~tLptaxV%?AwN~Oj8!!Zh-KC56hv+4aR^FyvT)j!@DYLaTeZ})cnFY)~Q#A$v zvfT80{!|ln0Xs_Q2zS$Eu5w?gWhwtGWA_L8af7Cv^-JWxkalS|1=E^;EK@K~p%RZP zFv+Tu30u6<66-$0>9xn0fm7CypFP~;%I_pz*81FahK!bbc}v3a#XNZtMIe_9a! zyK^m7tO>0j?Cn(@yh~MVk}DwX73147Xrto!a=Hk;Ulm56T zg*@?7R@e$Q*lIQND@lIlSm+2+QB86G872An%hww?`7wx|O}pG4kxi*$P+#1aSl_V+ z(!SHfLBQW$wq`e1G?MXrn)(JON8@KltIWobb1*feHS2H)wplH=cO>|15WK;0?=TCl z1GdGD=of- za%Y!@rolM|e%mUl;pHY@2*t<5RdhZ1*2VZ4?uh=+f6NGW%W9?ixI?Zgy1ym9Ptbfp z^Cb5>0Y>zox#Tz{D!2zK1gX>Odn6BDKkkuD>gEvawNC2PY&8gXuakHCx@MVMQqy3N z1UItkGxoTDV1a8PonFA!Ym?Mzdz-k=-D>}`ODohB-lI>=o46#e{b}B?QeLqewsntyuqG&}ar7fK z77XPbEPODEu^PP3aV+bN66FnJ^NJ0WBXNoV%^pLq${U3bnnfl@ze>X$nTD4y3TQ>mfeuFBY75et;{gH%#rVSQz|dbfyl2FGV!v!9=XcppwR`;)b5o zO{OqlnD_F4nR`R74|;sQ&VkS~PydqL+a7y{g*w0hS@L|qZ6ADT-f{|D4j=YqSh&v} ztb4=!+Da68LBZ{mw3x|Pe;4HP`?~&&Rk_c`ds5J1N0RgJ8A1>F>Y(XlUzOF8j6MJa zB=+|ndy~J+s<)8cfMXpB72sQDjsWYy3H0Q_Uu+3I1YzZ?-|Dcidt9=M1-YY(J*=1R zO~^12@%=uS!+%#A!a$sbxU-eG6j4>a0+pc7}id-f#&Gd<;qof7({fEz}B`PesyJ!fnd&h_0$@RbM$?_9rvmo`{4jL zR*>M~@px0^cRo15VHlRCVEz8d6_MvOVbxNeJnX)WGAX!zoWIVMvT=_k9{gM9*O@LB zgt+Gsau#feg=6XeZAktbVbuXK5<(w`Zz?jb-HVg(_Dz2NjVInc3bI>@_vXQN4NwlKJ6vRmh4+X&eW^!~6_jf=ZHu2cA?O3DvJ0Zi_j z2}kRw!7PD~*QSNej#L3m20$pAQt9=$@cJ&KGi!2(s|uGDuTrq55gzq@M zi>m{K5&x95*{)Cc5Fb9^UicF?9OQxhDJ2VeD*LI-W%0&iz#aXwRCbN8YEPg5Mk}~$ z55uu#0*!=@b{BNl+3cTG;+CiEBgXf-CO^bh4R;^)amW+a+w8xpIuOu-8OadPPVQYT z1&4~YO?myCu{nH`vbWf=$!s&ta&*`nADkt7G#J`B>ve#G`T4VBbGhm;Mhhl`*-vnL zzu`3n5$OFyxYLkw@H=ITz5S>dKK!I+%Mt&mQuByc`$!deT*^q0-*GJ2@$0~5nwIH= z6CbCH^QcVvXkc`w^k|n+ZhLnw@oB>c9@cC z<$e04W5UvNKxSfhf$@A#_MBPnw8{0fM)nuVy;mT$cNg5%m!4}EJ`>wQ4>y$84sl&^tn_}WcV1E* zUiyUpcqMTD;^A+@=T`zQr&OUY!2Ao;uBR{WRgau-Kl9uJN|h|WK4o#)n8zmk9bt`)d?uX`@!b=iLja!oyjbY7-v z5z_tIs*$_(ll?RQbh-`=ZhG!Sem5D6Q+m0r{D|ge^`D1hfbkFG%-}NhNYp4Fe9RrJ4(#h#~c^!|LM z1=MAXF8g5J%wvtepifoEVKD7E3%gUsPn*$uM1kX6`fIHVspM|`GU#(bZu&Q8+7q)2 z_o3ng-%{&ujdv;{EYpRAe;dTrSxtN2gqOSYmgSe)ZaRu=?D+0_I<1x3tV#}4ErCOf z%MFytxqIz63RJF2Pj~CI7>dyBe{TwBDknZx(~f$5UulT->h9Cxlj(IIYBn0J8=^R$ zK8pgutfGE(wUT{$t_b@G`Vha`I-@I!ePg=|IXRDmCOo*`Cz8Vu9a7DSqlSQYp9|+y zD$=>v$0b(ioQ@T*X~E@D_%sQ9qNGK7Tv6oi2BaPOs)bBcu*D$K{)HItVO8F`&@xt1 zzpa#-ze(^eW;)P=NiFcXL1b>YrD39?r=A=wP8*0O>erIvX9msE`8@T!h$R0>DjPdAy7{<&x zJWqIGtj;|)&mre(HXp5-j=nJWbGz~QDhQN{Unuj%Tw1c{Zv{+qcaBBkh-dq(Kc&`C zXR(eHdRzFxN}R3I!u@qIwH3@{jy0E*v5MPF+z3d6HFVZ1v_)407vWD{f?u!!vB|@x zi9W-Mb5HU=1j=2S8zUlxljKWbS8cnmz|IlYFSXi>7`p(sAH;j+?}lXsY)`P&95{KT+q@_ki-uq z53aEe;rn)Ao-G?etY-hRRbT9Tilx_}uDX4UmTbYVXlmymW<-01aMZ6tIcVr)41Vm) zcX1>@F@crtadgZZ=GQXmuQX4XfifQs)LD=8W0iT@SNs%pE@7mao27dR5Ve{oy!D^vCJ_89RTv?u{SJBk@?W`ALaw(DC zKa$NB7r}~V$(kX)iOSrr3o=KPleoEcc{a|r7)Uk?xrO0VBO6R~0K;>hMZdr<@3s9b1L7Zf$<=gqtY|%SID~3)#Rs?IFbX zhgayP4plE7xNV)39sqcl!kVl9!0uTH8#~6?3?tV+8AFweA%wYU9If-G(YYy}(B%pq zQfRY=7do=1_2b-Ew*U-fk-UIo9I&X6u-AwUwKzfe z#i4?@)OL$D)YBD;A)koPFf)qCuiZt8Y|#)Tgb8w0M}3o#fsH8I8wTKn77?T)RmOqtKf>W>FTz~A@AR=!g^N$|~h#;<|ZOi~@9m)N5 z#R(^w3BN+INM4A+uDbrG9XJ%e-{(3xT36s-Y2?9UG4VPcTI+XL^}8#}TK&UF;;w(S zyj>5@@=MeY%mI6RH z2M<4bipN7$39YaGer#z<{EgDWW=NkTYW%u2V8Cfvf(JiSZu$&g9VUM9_S&ror7(iK)t zM0YXCaA-VQ#Kuw9*h3$q<4E#Cf4HnV~%#_ui9Y9R}Iy=f@HiOQwaLB~<$ zCOONKz=!t?F$$|ms^nYqotBMtI%q{8Q;p&@PhlL$8Sbh@4zK)v|MRP8`=B?rq@3g> zssm9>AXN^YCLxVhYP+`TceY4n&Z;{mOtv2J%IU$OMU=l#M4MlCk)}KMaq^#n9zy&& z+=$9QGsliu86B4}w|ucy%1_g0?OQ0VO5!Gj|D=?*V_|cR1L=_3IZ53(2kPX|U5j8A&NW8Ar@?EN^zEkKOz3cZcaO>j>Ozu01V?BMUmT3)z$+NUezw zCk=krSb%@3jPeVf*O|DRJqzh1Yd09&y_(@G{ zd)TFeCi`#ZM?Id>7ya6;1~*BEWD0DYchjq1pPN9<^@_9?kFPM#3&FRgsZ=g-#A)*1 zR3obc40ESPhDJ;5JN>fmB*CjRR_LPH<7n79<2%4}44|?InfA=@n${chJM*jcREAy$ zM6v@rRdPJqf{*jOw)Ozt5?3ga`R(&0IV=K;YAC~B8YFkgh0ML^P-yP7Dx(LdbASyh zZtG<0-U_zbamQkj`+w+#rtrv%2)|3p6`IMDd?l>HC)4DS{1Q?rH~hd+iJMole21r% z@Rorz6Yl{j2D>Ye!~{;KmxCB#z#Br`T!LP8YpghG|*eI!mcyZO%*OOf&tqdhPm3F_jW;-D_J86|~0 zIQFJ3&b>QoFoK6xS+zLj0ivg1v-^pke5qNlYMb&nqU&y>*04uPgAMGDQP!VLB0f{Z z<$a6@?J`2cqiJw$z57fasF;T)5Wi5MHtJ#2R2dmWdSao`$9<+4+h!9+muBJ8XHp7$;Q3FSZlIj&Xja|#Z<0B316TW{6;#oiZW za^Q$4Nv258yaCUHeu_a=Pu_kwQpJx#<&vc(A1U$OSB>Oblq51zqEIc`YB01H1()v+ zr|3H(8+;$v`(oqCo$hD+s5W5C0V3Kl5*|0G?@@j2+I_{<(FpGpZNrb61*L`#y>yJk z2~tUOR900d2=K^l5ll5&1bZV8IfNSakeH`sLkbj8+{mbx@%=i=d=jn^DsYXWO!YUS z8WI#>5E{u{1~x(_<`oY95rRq_L(6$bDA0fkR1Xdkg*!OREy0&z2o#HpD&rj~zu(;v zJ5W#2g~Nozy&l1>iIg-OE@Fxul1Vf6-};80OnS+Ng3KZ8*d~Z4f4T^ zjAoZ{1N%KjYaK!LD6Q;nWT)c@uAVjz7igR!;a*c1NhFR-XJ=DrPlY08wm5u4kkC@jT({;$^;F! z`i@jrr@H(E%s>~RrwuaJ z#*fo&ZWGTt)_GJ!5GOMDV|Jo&YvP|HQjP`yn4>4u)5SPyUbX2AdyM@SZSW{3#HAeE z&YUc?g1{>E2*&iP+yMJ|TKl|{vqls12O2FBDyA);RwKbFMpMxbCaC=N)vv)c7qqnb zQ$lqQFkPn9aVgCb`q`++C-7lA z7xUEQK@2bOk|g9Q&v{QiIh>XQ7{)x9fhB{TL}wyjMt9_m&MD6T{S8QnbUH_enaZN> zx(pKzl=`s-(oREU*qP|_nSau{3Pia$uE-&+*(=D@LDICir=}VoXk<&vu#KFj#E`Ke zK4^CKr4>ZOTc7%3Ru`J9$6yR<*SBMz16Jy5$#6z0SG8s0IaoT|XB*Ht#pNP_RBp3pKl==QE{;j_(<1 z?~e}8I~qg7=8&ROfn$a}$_UHtSr{cK9!fh48KomKF=AMl3!Q%BG|_mgEh;nVxH>E| zIci==m?2Hl5;sS_j*>x}${H{IgFuvAmm=K&d&;Jlvx~^SMF;iQnlW3W${a0l01#FLm=$GV(FN$t8x?Ct8eKok=cRc2#2SplJVTm<5fEF$7p(ewqiJy+BpM(*Dcwjy*AXiz`mkaRf7`~xAR00qyV65L# z0`0V0yIjq{xqh0{FjdjMID0-)Wo+$JV*NMS0ON?lwS}mfL8O^LR2(3_<_I!Zptm57 zgna6$%%F_Q+NKl0k_$hLX%$vQ>g)HNILrJ`<&+q^-DBg8eZCF5$406MU~|5`bea8q z?uI&io$P){j@aO@)*7Kuya=H^-OK3S$Fn5Xt9Q4Ljn~_r`m}#n*0#?%v?MOj;wW6; z9^aIDbJmd&5+Z`;M z-IShRpP<~*VRi(%wkj3C37PEa!W@aJHWRHKl#N#<|7nJ1YBXPLO_Y55woz?RN~%Bh zeLu;3x6fk1$>^u2liCkGj7RiK>nVmKyRx%(>#7vR3#UK%Pxn_BIs3+ME==G0&zOY+ zoNRu)4qfy(w0kRsf1LPZ`P%sDcZ(&UEXsVh;}n3T0Q7Ymp5<|!Q( zszI)Cvfsn!Q;#%74LWwm7AJ!lR~Eutyl{S`in*$0uk9w=XMCUCY=Bnf?4}jkzV3H* z=rEr@+=T}iF8Mos0TZ&F9{n=-7(0F9JBKv$U z$s>pGsJA3R03P|T{`oaNIk|V_-ygqVNFe1Ej`J*v3V{R;c>Pz%AO`W8c|Yj%!Mpl) zyXt(|;cb6`HL3Evm_1H`48Vh;%^*0VDG3|^)FiY;L>TBI;d5^-C_f%K5qbj$j#vtP z=w1VPFh0U0NF3_tcl(QajIYg^o1F8joCz1)VlNTT{SanwFuQ3SM>R}om-JIB)RN|q zr}LEesVZ>Io<;yf%Y_859dS3G2&ektb`lZpZhzySfB4#amGLyC;Mx6s$aB>5*m@!n zI8p%r8LKyr!b3lkCV(nh1?Y0fXL7D8cMM7OdvJ&I02j&|bTJkLJ+E5xW%m`w^*yuM z?r45-_kfM;p6bCPcSr4T z;}q4|fL8~1OmZHaVFp+fDt9&mKtbf<4GO=zh6#G=C;8J%94X;lsi<9}bc1*?k+|<* zJx99^u{+}LeqZF7x2?j0rWt=f5!_4MWIYFMr8o_*;{ z2hLsFz$;*1(2G$DrHad)f4@^n{%Arx(w|4Ds0G(`MwIA==;b76bO!H6@7XW-Ra|-Q z_g$OkB6;*6##b+^AD#Rp1%T|=6hwpu<0zwLC>=?wn* zk&?6~8iu{;=sfLoQRXKJQW3cMAReTkciSfrC>op4U}V@BYAs&io$&g4NMLg0Bc%xT zcKj;z4nwV+-s$Bn5Z3z|sEIsBkwE)X6aKXS$>IAk`1&tVOrY`oc0&GCx{G1xiPP^3 zJ!YK88REg~0>};BkS)`&GFKdO=Rm{1wsXlhan-?M0e^vGK^C-N8ccZjJ1>kHPBZ}T zktG_)b1xjaQ7~#@kN<=N8Gg8)mR_+ukXBgOYb$Qb;632Kjs@)}$05};XU8{PKzju( zEk=13bnFlC8?^6fsJEeu4nis#XEmOjOYc1*{*h-eIT=pQeaFH{6h}4svqh8d;V@-P zHoeIkX3s72kIM(q2&OTLvDJ~FN1#SOG-62qA@FOrpQ7!#>xf!$y+DDDxlxw{Vf zQWHU=MPRTss$^TH|3R9MoQrPu#q?;d0(rX@-HWK^Pn#(xdw&{C2n@yEA2&D2dp3Yg z&yFfz zAE2glc;9FY*~&kpH?FIFO9d9-I}qTql%=IhIa8oA2KmJ8>R@It8&qikxh4X%PE1IOp4o0jMUaJSJA2U({tteOYX9w@3xQfii7t*5|;l{ zJA6h4yoyp;9sYUvd08_osoOyKz9e zML=4*ySt>j1q7wL8w8{qq)WP6y1^l(L_icJpSiC0e%E@|dhYMD=F_abXP^7{9sl0P zGPL?e<%aK1G{Zgp1@!}_@%?XVkX6D|AF4*!bubT4vd>3wFbSk>A+knr|$x zJ{M(V%4~>(HFjnwbkW~I2gwZeJ;qXcV?UMrU{-g3knmJ-NglM|QaBwY88W(0i{_jd z+tvyle|oj_U8Y*-cGt2tY;F|vst;)DoAGj80?W2d%50W%E$wuluN+~{pUW9-Jn+u>G z?WT~(h=$mDjo>C>Y5Xu|W+ByROtryhzphrLAL4o3vaa@?ZF$t5b>Kx94fPMQ+KsQr zzj%s}U;}bKi~d4gq!e#*O$#pE!AuloCJIDaeHU9T)ZKLV%DBa8R$ibx>84AsGO)gJ z;f6{^Bnx1jO|t*;M5o$J;Ur@V<}_f!Z=EZJ$Rts7IRAZSCQ!*eRx%4s7%j|ZpUYO= z#PE$FXg@K~;tOk!frivib6l}F^_<$=?T3ZZAvHY?*(ERwf`xzUlw>j-k?gTXhJ*ys z*^kj~i{=%7{gFHMsf5VduFPO|DNcg_g|sf8#@JtL_8J5+{~B5aRh#C=t%N1H6=E2H9Lv@S z4V8^5SX)|YO^Cnt$2dq!a+lS2w`uZbDoGbkk?SL2;gHOz5KInipo{|lm?0b#}hj;TO*0?Ki~KnfnfZ$67gAJGs|EjFfuIef3$wTcn!n z`Uc`~fOka9_l~ZmeU@0!2^&VfY5lufjvNH5h7{I;PkwfjgMe8J?o$ygu4TIN+pR`J zXj-&9)fXaVHUol>#N7D*!uo%VOMwwD65Q@0#^ckZKmg8*m(}r2WX?Rj#6_)dbG~rl z-mgIz0VniUV_Tevi=uXT4hKfs2)6IAFCpjEYdSr=n2$W<3!?3$Rs(2oZg4@kw!EIgYEBPs!qP~~(kiKuqhHf`lt17XB{wMPwdfx=Tn7So@%|8)O)uoeG= z6{%Ukqcx-N7Wi6Z_a{AJ8pfMU7c_Gjv%+D+e&@&1!=(f=)%*6r!1AICG>{6(~dOKj=e}Rwp z{|kH+b1P!O!?9#99saLMN@K}*>i+UL^JH_psT@^F358QD{ulV9vYJeI z6{Ql3=P2eWdfT9&kX3C33izxfsp(s%TfaG7X|h}3^wNYzVH==Zja!zs)@{X5^aNP+ z>!E++;*qd|fTU|S2OFz4O{SKjYpOl==vptAVQfrnqDSjH=12gxFfXF{$UtwE*cJbo z?o>OU7Q#tqQrEdy5j(92I)c0_fng%}(BDQ?>5ZXY?ivJ0iW<2P)7BMJE+N}HyoYLv z67H#rZwMFDv?ibGOc+G`E~gCwQ)a}NF?DO|Ce5%l2UD5E#nQPF-=hkf8MQ0hLBdNH z(jT7qZZOQrI7SDw4j7m%Jo)Y9km0X5UhM?%qkcJV;k4~LQN$?`JJCGxf1f$x0vjaJ z@T-{jtW-q`V{On1D)tmVO$mI8#~eluxw$GF?j<*RsXxb*bmQ(zP*1qt_D)Y8eP;dS zU62IhGiIPmky{>7bW^S8mPoU6X&!(t>j2Fp*@on;B~_z-Gi3SJ*?bJQ|MPEFpD3p# z2``9$rQaDM+OJ#a$FErUQT&$0UXnV%J~RWb!NZm~d0|bTfY)V2{lr3;{jzV}u>fr}qI<36Z0sGqDG9TS1{)Hu+cn` zdS8BkIHaO|K+^CkC4#*Kvu;)juJbvW*L@NThzL=(yh_Vy-lq^+%T){EVMOy^eUy)$ zFf=7dc5^EHuzNF+i5{H(`?QbP$!~&KRva?sRgB}FEyXs&MUGuu1p-_EkRGZD5AsQEx!$(8M0W8B&7={TBI~4L%p~MsqIDXB_|a}PWL-lQh%DDJuVnxHaxTr|G=3-!K(Oma zmVmQZiD;297E)J~qT6xMx!6|GqSFy&!7R}^+Jkes0dZh0#Zu0y`g(q!Em{{+a@j3j zbr@7e_CRZCRj?@beV0yaT&tM{Nv(^DwCFF>($cjnz$Pc3>Ra(dEmbP;b0Widje*%J z;*11BeG9?yyK#&&G~4wrFTW~d;pq-&@3wVwLs zbpAF*P?s&yB&1#zLz@Ip!K|2R_lD6lxb5YEy&+qdGV2%er*s3Ful8-qDHP0VvZH(; zDpGh5Qw#z$D$PRZH#vA)Ro34Y@RF)Y;y|F<20B~#QmI6^I9Qjq<0Vv_!cB0Sc-1pp z-uK8i32*P!XF7_Cgb0y+cMCc2QD_Q|0u~W_F&7w_Bntpgz>LSxu`=^G^`-O-0!+V6 z{9Rm?Z*4?XTXe!!mZJYT)@VsO5_jK_XlYl8as?|m@9A|Ga{LZIz>l~7XtadEQS0C% z@+0Mb^)-mN42M#GiF|MYQox^vfm}7hd_%Byh$B$#Yyexjuis+$Cuza3ILH0HK3sm5 zz5st*Lh}ovtqGrpwOD@21MPkfEN9)1`&=;Wv(*m96G6q`am6WZrp3aV&2CC?^bxt% z+^U=L@aS6_?6(QVob&vGisoTV=}O6=zh^86C$hXqu~xDGSt`>Feu{}djgge)_Df+i zDa|TxG1_JdKcv!NsAjAtVWZ}D-nJ^&3i0TBiqbRRs0}8nDhZfcK<)ZU zTc7@VrlfXf-6!l39RP3gA~)OQ1unK!=q!nUh(=NwOUZnQ(JluAzOfRCe<(9mb~oz2 zoILkyO9sS^_tO8odLeX}?B+vVWC7)u4t?2fFppitv>B7JcdYTrY3bV)yzcEd>G{+J z!On2YU8WC8=+>(YtAGvGeY3j=iy6ER9{qt^nNl~lE*`cD<=pRYM+v5Go|*ah ztTP5yG^;zwko=OfcI68|-uQa(q6-oPA6>gl_iMf2lW_$2I+ts|BJwtm2)=%0EeHu2 zVhVBNMQ2I z+Ex$%nrT7AT9HH;SJrRrnzdj5w#QwOc7BTVd07e%H)MF@BvcLJ(| zB7(&EDUSOK57)|9L9EYkQQl9Uz}%ocKIRWd2!XZNo_N2CLBox4?gg~LOJsUMFBSsG z)O7meYw>nA300L6LL@v0B(!q_70i|JxsxFF1Pi>+TY@3J?MW?OXtwGp;cjSJ`|&i0 zqV!B_l4mD zV3rC5^>5>?t==FyQnRE}^bJzP$phRm5pVznB8Xx6Vk!S8iv#n+$&?~fqSMq3>KkY81oeJXj2|m+} zf(#w!T^oGL^!$XKtOW{F*J@V(8l4}v23cY$z}NZ!!y-osa<#u%` zmu@R3kmGEhRx0eL(nbc%_J*1|Ks<6_5wj4aU>SCD^s+=;jpRjHmoR2EM*#vH_m zEJbBB0)xu&pZaB*3$^N3T^W-ygKk6g3efG4(%}y15q(e_L{8i-9yRJ#I}u#ksxE|4 z(VYRa@WM2ofc9|%-%?cJTvA6}(*0pjC@s@|sH~!7s?ftLQhYG9 z_qW)>u=6;M91q{h*9XBJ#}Ip=R~&iR{jj zx*Z+(f_&YtA{xoC+I2GE6g)2mV&jmFaeac{(;$>=rJ{3KTj`LPT3S=iTMewn51bVy zOs}sVRh{(%GFwAP{1t!Q)>FR#XRnDMuWisz^R9+#E7Bl1rws(O)h{pHZ2x?^@|K#; z(N=k~3JceU?@crk76KGIlGeju0$<{dDkU+YvSZqbnqy5wgvR?8*C~tKCy~lNnc{QH8W9w*k^8-x2$`I~G z*@ki1v=y0Uj}aZ@5FLPtkGuettH+^mj5BX@k0CtFs2#fyLf!}44Z;~FbBcRskWgI; zVC%p^p%!jTltkH4kCV26e7v*m5t32BD=3J?D;EAz#trfTWQMSoS8sG|AA{dfei7yV z(lm+DghVq z^T%x2sgsoPGx<&vGggPOLhDQQ z$(y@Kb40bxEF{FC4_4DDJBvA*J9FX$AnJn^&khdVODXT9P278K1oqv9|_WingE2Ix+j z#T1=?sSGr@m}TDTk7A!LPlNouuQvz4lnrO&o{VPr0~gR$=AWbFO96=GVZnL|W{Svb z%)%fEB;7R53-NnpQ$P30dG;Chl5Em~Q1^^KH%JV7(J*lAx%yY0()>77$c7u;vU_?H zOTgF-%J;BHJ-zIRnAZuMLLrr(T}wV3U3G4d<4NaCBuM3=#OD$engp@_GQiX|eXq=K zud?7Yy{gUu7y_)gKa4XWXWj;`4Ny+67rEwX70~hK7i;?UhWz%XymOYP%kB^ zOr<`IW1FmGiEcF2;fp;@Rg}+qw`6<7lYw*W*3i2?Q+f5>i*{H5!ROf=FH;5HeeGh z^8)Oi3#qchGd=bx*M|3;ZsA(sLg#SmF3S$5Hxp~O&#)(cuy0&EY(EM^q%D#Kc@2de z@velYf8T-f1MwFT)Px0dYTcW(2}lf=Va#nL^CMEa5I|g&o)j=ingPi!X#B?mIOiV;&-uC;kijbD{dmv^A_-Bql@h7A{N1LJ=xA?30>X#^SV9Jb5s)r zO_Fo}@gqoVMTJsIlE4-&3io*f{cY)q zR1Cc$GeUKH{3=JX7t0t=C^(d~j%i~v>Cu1C;(*N8tlbDodi zKER_nuKKs%@39BN`7XS@eijHara5{0Fc`YouZSQL3u>VfCddmS(aPTrbvfu%I;z3h zBI-ldyR0;EjwIm_ajBo&h~iV9Q@}6Edg_k*W{!CuHr+*6Mz;?p9|_s>eg9OnmA^L# z!8xlk{Xy5WooaHn#knt7uqCn6XTQw^3|wEWJJ)kLI5S;pxH$Qluq!nS?!O=;?90CY z@l7~nPFZm_zWey7w(~)CKArl)TNPfJ1SUs(6W(bPwm(U|+R2t#h{!)*nQ15NofUCD zBYE1s6oFU;eHVHv1f))d8C6~g5zPF}|H<_ECyaXj5$A&A^?q(2#v-cLlLS;$KjrWL z&T9NK5Huy-x~y&XTld3n$Gj^I_O&q)kkq#W>GNL8rvuash40KI*Un|?`Ijc11L*lL zk*~i%;!A#0zu#^ynBo4hc>U*%GF&PN%=3*Pr6w~?jIE+)li}HAmDrNcr z+1?wAPuGHd*DUxgaR%`0i;dKQlEc95-k!fl3A6F8Q|CDU%wPYj`Fe}%vdg zNk@BFE2gOAWC=#mWzc|8z-PZQb)dok1$-C`7mqYb6w*0W6k`Zk%GL5DOAWo{6Q~e; zI5DfU^@md*^C?WaA+|6P?TwR0cD*cDwuR7IIAkK>m-zhk^shT<|BXK`z* zY7)xTDtgOD)Hrx|GZQa29z=7|yB=ai;+ideKVB+MLs+HGaP7$}cH)Rs3=n189)~x}U z%(m~{cH-jo7~cE|A2__E%$PUcdVFXily*^5=wx^clm-lnz1Dp3QyhZLrut%-Vvn9# zv;I~-l6=3(t&sj?&{YcO<*p>;Np|lu!{Yg5a1}&L`?3PI#HK1*QFn3_1b+@Xm5fd~ za+9M$^WW)AmE7kVOKUSRE1T!*PqMsGYBJ6%54mhz-K@9>e zEln6A*v?}T-*{4{n01IVL`E`FuIZr2!CyQouHL$}q*DO=#j`LfZz&!EYM+glCVWTX z^chBf8Z{Yx|7}{6>tS zx%TbO75zg20!lXE^)2!i`qwhC9icE3q5uYmU{B^|TBHPjS&{qOmy@*{?m-TDlf{=K z4mnfA^!|c#z~N{6ZB?MG#@MVqZrOS?=HF4Q^m^8o#9&SApw_c}KZpMNizm8V^2TL7 z%M5Zw%Ov(>5~Bi)<(3Y^+*jJW+Ep966KT&k-NxqA4c@B`HVkhkBFj`T>!rfOrzN3n z7)`gi|ITaPeXE(Ac;^JIKfSZblvc;?#gd<~gbZMsO%PM;&$JN*x*Fe4yuW-eVuQX~ z6mXTEKjLHMe?w*w)+eHNg6=#c7=B&*TqFBHGa!rhY$-86s5W6PqIz&j!6r21`8`1K zrlWBcdl5GP>k zovz=IT=i1XsQ~G+GjPq&QlXl*xI|vx(EnHtk?1DI(rX2iHd_qV#SI&4#ATC9&u7r& zJHG)6(Rw4fWmDpJ(aj)x7%BL%_-9i@&+Eavv-&RpjhA*Vyw5Od+fz_W9JLq7fi%DL zhs5%c*y3(51P2Ryb@X`>_V}{*P*<|+mJx5QWV0yow^da{4@A;f@w{Dyj( zZln#GSDc4f=*0?)1>=Az!>@oOZG;0SQ=a%tV@BH=fYXyDT=B_6>D_=;)FjAG+3SUx zx}GwExVMr-C2rIc7g9_^1%w!%TtS{^71X~M#CAD!M8Rn)ffr@XRw2icj?BoH!f&u> zPh9-XdHX1-cA{P#9rCr`mBiFUMAZv42okcCy?z0UK=38H0$I&j`vFQbaed;e8^-MV z?WFn2&H1(=8{{0t8dLW_b7{OY$TJSdnre5TDFG6NRp7zf>D@rNsAtOWt|Un&A_CLYy=qHbxKCDFp(AWSGIh+*pY6MmwvlyvfH$CW-uRu=Ht>ODo% zL5EWIPl90dld-;ZIv?iuzS3w&)M_0HM5^q5=yT?z@UUB$OHrIW_TEd9wD*6^>Ihka zjw~aPnvqyl924lqu>b=vBz}|i5e%Tdf)%&KtvhI|7qF2_Zzb6-51tk<;~{{aYYR!4 zb84&tf;vEbFzPW(Z|n)1OdMUp>qY^sFdN4Uc*+h<2(+<@(Ph8(H7Qd1p z;r9i5tIg^|yb3VE1|L6U4{UwhtuPZ1xtPm()zM$12NBgA2u+j>W<{8T*{Aj?0rfzz zcp*Y@j6^G;-hgsm4*0bu6iFK`sYMR1x!l>KXTcLzFqOOi{ZJ)?d7m%Oh9fDAR|y$Z%c#4wlPMPd(PivOnb zZ`V`TbJ!F}6^-_vms%U7yxIT)`r5#R@4-&jUHCj<{#N7_GV#p1T{YG^OOxAiCAQQ= zue)|?-SRHH%SmJD0*16p$Ogm#%$yetchE{3pN?0%XSQDlaQ!RJU}coO5h>5{499~B z&Sh#1r$Mf)G(F3tU*xcevP2w!&ZJ7lIf0XyEtmP1jjS z`QSlD{Y!TQdf`j7tRc+nA4Y-HYQXRj-$`uCs(8v_7AL^Kr~xpHOIr?@O~!q3nJJ?EG$9r;g=!W$WjE460d}Tj~ZFPabbLwx~~?QWVu$;{k>M)5|1P zs3lA-H>4NX*r*?HfJ@9?BGog&uRpNK@#J?LrR)&JC*zWOg&-cHn^1~kKQj47?iZh5 zQ|1=lU?Ty%Z+wqI{yy;M!cz)|T;(#+d+vwg`+DH=XbW8BCh%7aPnhgZw_BOI#AWP2 zv>_Nd|E@jySNAu32Hu{Ff$~R9g1tzmGCJ_*+xK@|^M5W=%~*!v6K~FbyuT-fXsG+w z|Bf!Yxt$CW9DfZu`@HM+;z>#9HZ?_owhvSSmmlx?yVnZy62FfXt#M2Rln`Lv_s~?p z*Pge-@MA_R`f#qrl9PL0QT7A6dI_Z^0C62q@)+8qR?_>P3XOg=&*YMKag@>$^wHwv z(zpcI{m-0wzF_v-O5v6xB=!X)zhO$!5}}@q$$xuFFhfMeq=*||;!vQnLHAuWtNfhC z1FTfp1XzRHY=kAD;!mTVk~rE@ld-(iPM?{MB?!|7zZ%tLdE(KQh>MUTULmqbPUTTx%9r| z^Ua}&P>394SPv^iNSJLP7_%i zZrPJD3y_hU3N=rYK{tRKN{@WY%Crnig8B_&d&%~B4w;6@sM7f{1|-xCBmlcauHo}>i5zZ%pf14 z3~4JumlEnHQu{P6tKP7CA&)d!d#^DMqG9HX(UWdiN?K} zL6T`5TG!a4U*ys4C1br(Dhm3I1I9BPrRBxt0?$x2CI!#^QMxSYfm7KKDq$|KQD%ii zSNa$%H-)0E_HgRhONF#ZUt<#(!BbT?5C z8E;@$>fMwp&mHSi=xk$G&JUPuR~9PBg+rZWyRNbLm_aJORK)=Rhbg%RqRGf>B`>03 zmWoi=?Vy;j^1N~CP?!=;Tv}m(ax*jVKjYQR!E}AWpscBe208U1<(@_59;XStGyn!V z=t+`ydN56J*J-kuU3q{vm6aY&X*J#KI}Q2o&hGy#{uT%WB>_1IKbl!hOr5D*=8gxP zDYHdMg9TMud8hWQ)c(}S7rH4QokfuZO&`~&u8BZU6VN|$LF$0;;!0)DeU-+26)zFR zfPf)n4fvLPY+oAgBCU$1qsH$y^Y1?DmL0fSqk6Xa^+y_zJPX85Hs=zQokgX7$*z7W zqF%x-7eyu0#j3jDsRpm@UFw>RO$sH+Qe8a@IW18^J&S|t!=(R4xS|K)L$g#%6ng1r z8KINi%5o0(LvqauvuU$J^eXJrLR7z_ZujR1jzDWznvW0-3G@(vycQp7zzIW~lnGmn zF?@kBPzHoPg1lF@j8iX_S6f8cwct?BgDC2QISAeY-K;7t@jM6}#ICL-Co^xmBg4!9 zxY(Q~%F`l_ADMxuvY~?vc-aTMlnPhDnt4MMD&Yj?A>z|fTzNCcL#pfd>ITEX(!Psw zP<10esA-98ee>w67VTt_StVj6uNo~?><|{_5Vr8i0)Y`xZm2eMce;mqVGx)@A0Vs0 z6goD0cR%-_y@-&}GHTH=J|MIUli9kTywqOFR#t4R(PG__Ly9ajSAYi?fLV{je&s1*Nc-)GY#9;?y2B5uzF3Bf%7_5Q?f~6UrqqJ@eV4mW z4Vj}tGXvL%$W}4Czn(PDeB7F8PG7?FHfjsspw2exqBb;FQ7oR`nC)IAvfB)L*y!~( zL=l;aymf-0kQBa65`D-b_Uh;`;3y5OmuI}Tul6*Vt~1pFnqJ!cw3WoLrCju5@}S#j zzIJ1K3M?zIwIO4ITIRA$Y}{XKx@nDKep9!(n+ebyzt%1`I6+SiOdq;Udxt}NmdvuSfm;j{*rhX<9H0ndQ?~7rVT3i3x+FiiJb`;WNrp{d&zVF?}tq^ za}dsq1$Eu_sERx`@wZE7;DfTc+i!IV6yD|B-b+u|k2nA4ZTk23G?}ic+|Ukn&o0}! zg)Nmf;!y+YvN{>Kx{DnSGqogrZ_3>I?TI&khuLQrZOn{4;SCOnk;&#PCugue$1c~Q znv$LNZ-%{HXGq2ZJT}h~1813{&O#vLjV#Q3EM4lD*PLKvPZVeSig=C~wx8b;ggJ&s z>ar~*`{otw0L?C3R_uT(0xBA}&&l{rQPu*FcuQmTRf81-Th`iY`5O_LIkS__<$(rd`OTD!g{+EYn{yZ?OSr{RMU%h^KZy;w>7FP3 zVG{3wm6+{$czCwx0LkhcKI2Z9jJ7`P&D5}!BaNOK60~zkaj6&^USrN`vuAFj*UM|` zC1$snzVu@9ku|-Dqv$d_KIbsZzN61aubR-0gIkTv^LI2k?LYY#H~tX63$WE2-iyjO^lP=v z!U4o?+b*nqSLNqUypYa=eGekBg*+@JKOUznTY|i7$2m?!%4|hB9bcF_IOW?%sb@zc zc;X9AFi4Kvw(V>F$jBlcx=e$J{%+qB?p&76tahzkIom^N<_%38RC`h%`iV#j5-Xb= za`PR>-kX(8A-iTy<^G68Jf8OPn?>0iU$sDX!;jU`Av^BCbXtnXj#Rfb^iBGM1RA^B zgQ+h)XI%*fH`NAUpQUt8r>6nVZ_iB~)Uxc;C4MaY;e;ZgCUz01;u>Sp+6TtT>ax?Z zx>K1}=TEA^-ab8rG#1-1O}hN=isx^#RGnIUfV+<|KP`g4&zQ;9Pfgw*bte4q($-@e zIqzCNKYU|7gX7fr_>-{5SVG|J-H7#XPM7P}q@WSR=4|le|f3B}u=)i}`nXu$Jujae=q`4>2N8zD|zWy5u zTX74Uahk+5JB2uH(_HE?UgmXwpSMBZm33W&#V)y^*GGlY;OZykyHR91s*9jw{|(`a z3MIX{^jvmbk+KhCFn%JGJ^9*d6(Iv;yVxVnINnPL`=$FMy5Ejf&Ljd$i5>08yX6uM zc^Y@*K@tU~A@$T&4PJ57Y2tI3G+70Fdt)yPGy#Mg_!wa#Lm+ythW1xXuc%R9BJy@q ztwzgKX1^-qr)jghyl;3SAcBnfnpN(a-PEh;x9cp9E54is(JIJf%*v_E^S9WKoxTXLvd*i0p6ZU8@fc>}r@&dtf-YpVRS@(~@WwVugs>oxW!Je(kB} zL~QG8_14(#v&&QTS8b5_;q>1Sl%{qVeG7nD%uddJdw6S-d5xg<4aIwF)N`crJx2xC zd%@rbx9v@^&y9`V3Yhr%7!S-i=9XXvzSObCEFL)O!Qh#?V;#AVr{1Ny zE&7PFF{8Taah<=q*aY?5zjvcIG6fJ=QrPxFSTgCqX1;gi1zz#;w*WkJoGf6R%~?Cw zpU%p=%N67XDM zZhMP9MXLYp!wq}nFs%MB4Swh-vFG0F$NslH2Wr|aTdEI3!AC0{g1w&62D#^Efa!9V z3p8|jTpDo#eK({;2s)G?Y*CzaD2jkdv&QbyatOvk;`X0}$ygHIYfic$B)y^{nO>vQ z@fE{V7LSIVWN=YX97xD{d9frmMmbwdQO0AZ=x7czIfKU9(96C=;8`}ilm3#!K#d-* zjrGye>0p873rj_yBmH_a9jS)oamH+QgU9#z+DT0OxAFU%6jcY z<>n_t=ld21y)Yx}_t=w}oT*I?uZlU2Nf-(zi{w%{RSbg@2ZD4c8L7Nk_r~DVTH8Wv z4b}^m*>2}5jX!K*?p}mkF897eq|!#Ot>6D`*xI?q-V&i+K=Ex%eZVf7Y77Qgp?^oxnKit$jcb6vC zU0FKJ3MAOIEl|4uO*;PpMV_Py;pPH#(ZkrK+x~EVbfbV~g+t50=BxUc_aAe)mCcp5Rs{9B<;QE2Ot~;@fpvRnOX&%6qqH*j%F-_wD7SnJ42+t?TQKrVdk;;m^Ulg9|Dv$WP z&gE161sn(HM;%#6>5A?>?Mv@Vi6*H^5e)MRY~5b-*hBW8M`=|2ZLym&x?T>5^%TTH zrGq3P&&6X+^ysAHfrRGh{3 z9b^)GXc~96n=07+Vs^_La%HRYETC;mmU&ki%I&-T3K3 zroTy0q!)0r4Ip&ZP?^kZ-3|Q5IH&YY@b??@ryd!^3p$Z0a>}2=goe7RPmfy$iCyEj z%V^*~fjIABX=Bxfw45@uL;8nTG=CoJOPOXtwhX^M9rC~E1Hic7S_l^a_eSucMG3+9 zLdy&OqYwooEp-s$+rOO5wrlsK(8cEV2ID~o$H)NA*SH!UQ1D$-uNW*0b(>~&y~3^X|_`rh}q zr{aa>I~y-_3W(W>Zxwc+bp9Iz!h@mC)$Le;)M&c$@H@q zuCt!jjCZX{b1&$idLdA2s^ezsDu*mK{9r)R5#$xfGx`g7ljK5^FsDEq_6k3Y5dy^i z1Q^avga?yJ24Q&LCdraT#R?i&MljA6SjquM9*8qXss{v4Ly_+U6P6B z$C2!-lQ}6O^Aa&Z7S$$V5N1hpEJ)1ph1vKoF> zob94XuM!DnGj|?BrNM|`hGT3R`0un^%XA7r-j3$a9TAupwVtBCA?i0VD}}0jwfYA& zrnGEpa~X12>C^~|P!^qG);~>o995>TSq5y z?l{pZOmpqd!0<{PgFDUL zRs_&QKIrWp8%251A5T{5L2S_N#&q3M=OP0uPKp^!8H2>y7Xzn}AkbC(niY+d_gsKsuPiyAMbIF}4o>NCMx&}T$4 z6kxaDL3RmR2JTE6unco8$VjsW(d%BMm`IvYVO|so`0}{D+c5jh$v?(9Qy(E{9700h zG09CAlttWcg2uYW(cNR`k7dW0p-Vroi~V~nyWm^g)-Z;c$rWb3%mI*de-I!0 z5d<%1kR$6dmry0S-`@pGh_Q)b@pN?+)&@A^=zoW%f|O(`fEw%aRxn6H{)qa*wdx^0 zOR-yoN(M}v*xUtBj#J4@^GP`zzB*c-zD~p4MMOGx^<`D6Qk&pp^R`D_Ds}S4IZ3zn zc|$b^HBx-ie~_}Qh03M&%*rgS^RAXt)vXq3?_j&ON?FHO)YkpuqjcM7ZoCiBT-5w# zW_^7mqoMN`HU9DK@)A!FUjc?mf&=BpSxOfm+I6j)vE6Q|Kek)!n(>(fVdrv?OK>D{ zox6$M;?kP4do8x=g$J(xq=)>?2=TT`6xe_J`3J$;*LhdjQjkINe1ZN%4z%nAU`OvK@*eTTv*31uv zj^?ZNn_6ocB{Nn&oA=gLG!(4@YV8)PO37MlH&}JV8uXRg>b5M|^*gpsmu1t*-hwg3 zZo@wBwDJc5$fw#br_~~#N7h~qHyli|1|OwQ8R$l$7Lvz4u68t==@x5MC#$u?TeeGAi873Y&da51-?0zyPJAMs;E_3v}_>$AgOJGo4EDx z>|d0zkFI#G%t%rqffmIu6hf$K*E*m+Q;Xbmqb3vBOopNIKG>>@eIPrUrHkEs=1{Tz$;eB&{AMylGOcmom#=9yk}M6{m60{ApBwtv>lvDMoD$|OP?@CFIp zu+elwz4>EiGpGDkzL!LKkHQNiu?*--8W8{+zk~>(+4pG~4q0z+lW$2XiXsfND(gp{ zCQO`bTRXFB+W**x66!CX9MyKfD9QE4{!!57js;#qF|!?f%IjzU3@>?)XdY$0U*#OP zZQhK4nk6jV$}uEuWo(ca@65=NbR4#_WxoaC=Wx2bXm@nAcjthecU5Kk{p=m|sh9kG zAE68GL;ob~)}Pe?kRHJE9GMuvdiBR?i0oGjsFoOw(R>8)jKplz$DQJ8JhefwQCHG9 z?rKtv_zRC=-+)sSHqY09r9u81s>&H9cVt+V*x(fHtVE#k_53JpptipfmuTUF=q1(f z`7fGVsq=boYJaP$E^c~%J$fIw(E8>ku4zr6Be!*0tBE6Z$(7Uu+V9Z>3ES}QeWJ42 zesQ_=YJy)KQ$R@_*VOA{k;Z@dJ1n5{ex)GRwK4FN6nkjw=-m^Mp4N+J zABH}}s!`zu(M3J}L2FP;LJvfvMf}z^Cx#G|n8HP}u^}0>Y=TJ$wAg}QFrJ2A(Wu)) zH3%Rp-=q2aP?@I7{C3J33`pAv=Vk{J0Q%~D)&LlsZW0h_^DuIsKEcZBH1wxQKoEjc zF&tyfq)x~!99?=hI@wKv$eTHY!lxQ8A0>|CNj6Mv+K+B04#KN!$~&P?qH(A_EEu;3%CUpE%pb2u^j*a+b-9VShz`)m_kkW)!81^ zar@XSkU4fr?moRIS+HshGPS^1ity!e2+wBn8)y0`0t=l8CA+J1>#RkHaHI@V&sDn7 z<}P9B>Zr0k+!N`_mUd+x%WnmLril|_y#2N7Y-9Sk5CA61bx zk59ob10OS1;|$@);Bx~BmN5YISwSDwAWS_`^1O_<^B+a&El@8!pGW~@7CB$A?C6zQ z$VW;&5c{bA@x{y_@(dt0PcALNBZds&<|W%9d+21Ayh?l!BO{0zI2LYa~)T^SFfr3ceLHMQrl>8K7rFs>#iiv)cJnYeNd347F854`ioDw7e zw<5(tbmg8^@mzGG0U6sSb$nE52lL?VyltsF^ZB z7psv=|MI!#QYHy%BBg(a@Oize@5~F3-9>bpsGs}HEAh4SG!5R`&snvt#cRes4!OcrAj5|9Z@a`lQ!>lg~SKy_FC@n4&!_m5GW)_`pbtlf% zJ-ENjS1Qkim#B$0(XQQ)=1PB7|2^k28w4f*=^55@&J+AA{ zb#ph)t(_a^e9rszezq*%cuLd!L4@jZk|yzta zFk6IWZf!DSA&`CH*MS(vFW6L7iO^6ojv}(>Y9lP=HdZ$yFM*C5AV50bH7yPP z>7zh=>MI;Oi{$C=xUlK$!0XJd&@{i1FzQLh#X zHi&-tDhl(SN3qrziPT?659Dd-g5G=#p*V12YB;DGz4`9rs+F{oD7YtvM{ zns?`FnLTu0z&j!qvE-kZ=t|i=Uzh?``1jMVQd$nLAAc;kYdT8f=ohu%O0*@UB19&0qM)%C<(zJQpaI3}uIT-`rLkrGxqJE% z%o_MtP!b7M>nS1|Ikf%RQ+aIT@oVDz=fv>v9Tg%{$E!jFKo1E9HFKOw?@bt^eL7qXD3RA_n4T0Y0w)WPuL)84%PN{~0iXtk~|&`~QeL zRGHB(3}e8OqEOZ|qUI(e<07DM9BM8LB6P-orz&z7BgHiocy+17br$qZHEQB3;2px$ z7y*!zjC>>kw!^bjC`FS!^;@TUCNE(Un;Ai)0Gj9k*PR(@A&Ic8ub6Q96u%Kx#X(k* z@Wx2B=&z0}1Of*C--Icv`xum!6f~`-qhUu}hkt1`7U{aEt9CmYXLbp4Aq_#98N9;- zd@8|0IDJtcs+VK%k3bD(q~~kWgg?7rmb2)X2tZvCka&fR1WmTE15Q6nfKl-ah$#VB z0SMPby$tdOl8_z*z#nqA)h_j`q*@G;^p#yuSUmaR3R#H{ z;Iq0;IT~^n4^Ni#r;UZ^zIyFPXjI^7F?K=a0APA&XkMqKJVDcW2A`%9nB`W|4ornJ zq)`Qt=nYpeD;PW_YL1wu&fV2$S$S>k}9eJ z4>8p>Mfpi3yyoIbLuNqIeE=*NaAy&i1VIMwvb~E*Q!}R!7!+`=G}GZxi#f}1Eqd)| z1eHGndFMjxS0J`La8*))y)xAW^*3(0S>3GRR2ZVu-pgA+nX(;C9QAg+GjQrPRtXxuHDa(*D2~ z<`f(v&zmB{Y>bJkr8Hjokhp)#qrzvt&y}~?_cPcrw$94m7>YX`O&&0(82mo3Xspp3s*oW^8YCm z`&lSlW6NbxIt(DDD(4Msx3n29mFu>pDk=uo07Q$FJkIz_&4@h!rEMw!8a1A2K18Ohq3b^t`*O-lo!{AhD!1iT1L1XxH~=6YqBXG+LAzp;nu-p8pmuNu z6N0R{Q^RUU#b2|+SW`!4qB8ZiJuIsYMdOnpg``lF0(Ui8%Wwcxk(Dob-#NBLC)eb5 zBWi4vD=K(Fo~y~42nYj!L=*{oaH*CTT%{AOrIuGw(;oLnyrvruDor$Zs;O4>AxJoH zw{n1G2y$M6!%-B+W>@JST;=#%`7S^;B+pw}tWbWWwlo+>XeefCs-1YVMWrC)(&U6$ z^#4@|@LD#7%6yAT=L0S24C1!n*WB%p{`UIbgL)m5`8!DNBj{^6RNdFa20}|gut46s zSAOShoVTzvPOLR+SB(#HzFS0|RUT%CuY}swow+p>pqe;5pzLtUtG%W>mKEAL+LS@$ zrGfSSVm0Le;=)_Aq!(AfJ#47Z@tA$hxN|My{ zgpX3Ohgg}h-X$;JhSOEv1S$%z#(o0pYBlR8H8tQ#wtb+Q?rmp(niBHzdGGrAxS_$_ zHToe<$hDS#$vDZ;@`S z&NZ|hZe9=rORg1YHgzV;bQ|OoO(jyYUN&T1cf8DNbIw(T5t~fr)YyIk2WfS8<~I>q zjHY0%Sk2Ztt%_o<&YE_m2F6T-t0D$8v}>(*zq{^Ph}O(RcMET0iGOcntwuSZ`Gp3t z627jE(t;RnDsrD?Hdzqfi6$7OO!#mETi=YS^CaOyi?Gt}$Jd zse8B34>~Br6M7=Xd?`eGnFo}TqMzfCL=9ILM_2Fvr_T9LKanu_xkZ-Ebr&`lOiVt& zq20V&3vF-;q-ScfLc#NMaxN@O8P58CS$>p|CEsPF#AR0>CYk@|4j0Aepv}%!=dbIHwm#U2Ve+C z4*vI97KY?}0S8ti-ZGu+?n8e`vz`t?etrn+r@GlDa5bW-cI@7S z8Ri}B&$u@0bxZBtr_*FGo1O5?-G%(U#|@t(!?)DXM0&cLrPp7c_76L~ohgG)k(2{u z%lg9ww*c}hp}0N%lx1JRuX4Bf9~^AHVw1iq!MAxK-p~Gh1z~mrDbx z;a{@~HC+(jENr&XI{Qq_pYx|X{V8|ePVWa_Zz&-l!6yo({ncfZy+f!2V$2~id~+^k z|Ha8-V`|TE_)O{vejQA#gX!)%IU0iR)635cyj|-GIqJ+O;`P}mVma8q0P*JU{O5f@ z-*7-o7{KTy3Bn$mG;G#`PoCKv9B5VccyE0_{&Xk#BtsUehFlqC{^IK;r_OS^P1*QE z@Ob)owi>o)Cr6NpfZJi~58lqSy_F$UVZh|WjFY3Ce;YENmzHckt|uRJT%QH%ocGFp zSJsui(K(oD_zr3!KE16c!NJZG<#A6^&p8T+nqj!3w=*p#Cw`(pH~ACBI~PCSp80rR zNIt<;6kW*4Luv6dkMJbRg)=al@9F8gM7QUr9^YDSzDwvG#mb#SKOa1o1yS@ZQ9r>x zX!wi*dlS9;UjDf~6TcqYu*`0Isi1o)_!j@z^Zb_Sdym)deBF^Bcnk4v=iK}3W8RNe zYkaWYSE|4FaEYTEqec4zd?%&bTK=|=L`60aRk zM`9~D2J`M_JMk>)mYKZJ>#x)4r|lW6-iN=HMVmz`>61|%2__e0`hSQT_SAEwhxG4sXfJc#5DFGG^c@WtkICGQ zMh1^@gVU$~5jDcj(?(Z{Lv%pZWYV#5!^)Y$CofKzEd2NH%M)h^I@cJ@q{)$&bCqc# zi;NAKINv}&iBFR9D2TWpTP%618OXUcIIk@oTXu2|;KekJ_Gfwmq7FD!E5F%-AE_!A z@@5tpN14tDhIf92py^Uo5fz>RWviXJw!AsT3K1?iFDY%eNSa2yqUwv9CB7nRe8u|} z+P5`m`&;LA2#=>3Rgj-I9;T7PL9_aM{H{=FhQo={Kv||Jn=caSKH`f_pTgDmJbpQI zQgz4{)0d%0|FO00KBaEZ5aXD_XQyX(LP;5>R-Wo1!ympOzqL}21gBRSDs*wM={IF? z*c9o0Xs4u&cmzHCL)o~L_~#pxlBn~eP$ghKUSjoNG6lxNrsHiEIt6AF;TSBt3p4n`<=o_mB_Fo*Ld4L(DvgLKAzA82c&*2QivD0&F zuM%6tHhlEAK;PR7V3nW+=CK`|lPma~jX?8gBTnF?Tt!``-K}5*$iD z7gVCzP0$xilmc+xFG$=iqi}!Wwxum};-2xi22BKH{JfH7@x-l(y+BJj;KVV@rs`IA z$7EwTPjBzH_D4sfM?5;cq2@G8+;?2*i^;O2<$&c6X`@Kpif1N307j>@a;TcT&b&p6 z@h55OrWcFF7={d)R~{CQbbe}e3_qmF{OImow>FDIE@i^=5ns-74Z8eU;|_^=GS#G4 z@M(m#I)kTww7)M=KCWO`U-I3OwTmPRMZWyLrXTxqW-Q`0$1BMWC728EW1++bhlgfK z$rOtBr~O-a??*&Z0s;rMyIzPoLxhebAN^*t{cZRG%=O(``p5g&0^{^q@waDIVF;Ke zcE+Y&vmn06#dBQYo3i5Lqs$l>W7S9Y=9kfD`W4Uae=++@yCd^O!47nyg}dSBzAZC< z=B3xtZOer$N7>x)x=iOY#9@#WxY=lmY!N%qB z^v~89qMB|LwT8ry#cYl5`#gsw_wr`Wh%F7FmPzPLmIReH-o5c0g`^tltYVGfHmPD$JeSBH?2IiP|DW;s5tS&kCg~%UBytiMiTX#OgR>(bU zr0VN&0e)Dk+r~k;Qk#UmcxNLR6mz$~oJ6VU;WymA#_ORHumrMD)P!WT;nvC1vCDrs z)n`H3$KXBsBHdW%PQsXqZd&$WDN}*BLp#rnkW#i2qm>^{!*v?;4i_B{?Q{h*vMSI^ z;FZjG_KB2z2yzqz*S(a8T2S5u#eWBE>BP0RblSHjte*?h)hc~!eJO_f5$(72hZc{&+{XXcu>IyI7JD;!XGU~-K^5hruwZWau#pW zxj76p>04q<@gD&qO0m@@;yP9jhgm*1fn28+9`dr<5)DXq7Uj|1Dx|?GYvbL=lEQt$ zYx&*Z5d$l;s6^ieZSWav`soe0C(;zKs?akHKux$|Y!#A`j4U!k9ZMPsjId%$wH$L* z!B*eaRefst9uC?XWNYA0G%4D3CafY$xXjGU!*()}?jHW3hu@J`T<2IEJza@XBvVj* zj^?(>>=WCN247D<(>alj|FGheb~D@?p5f8mb<8m=c9YOY=!m9jfExA3UF+o3CTj=h z!yZ(vCe>xTo~`A(@VEZlcD}RDEFuC{kWky2?N@wtyAz}+)CL_bJD6eYsYXMrU9z+w zI;+n!@Od?^(AIEOa)A|d04;8Vmu)*vv) zvVZUky@m|F$1xMEn;Lhz*v8H{a(P*tSSm@X?@>NF=PA%-W61LgxKMD=kD+Z;25OwK zX2w`P`F_CGaX1$v*h?@d zf-J17-&VbPbrf~KSTm^QZCmj{Pyq!+#B^`NRNBTAvAn;+O8&|eYelGMnzMPqmi6PE z35GB7-&fonh!O<5bNKqO;^`iU0Y9$=fRb2nkS=PezXCBY7psnoj}{)!V3hYv}D;yx08qGh>Pbl!u;q;bD({{g85Zv+|}w{R#K9j0QRqM{>I3~CC8K%jgCBx`XQ@E` zk2&y)rOA%At<=3$1+1GQB>Lm!n$Q?y`5B~aGHrtBOa46ML!*b$cs|5+oL)5hiEutS)WoP zTZXjnL6C>Z@(@^7F*!x=-EfbvWv;`75BFm|!4rkByyzZz7`FJ?1!sspvg&I7$jgnQj>6HudRDT@}w|W0YaiHM8vitve+zWK-xv>~u zvmARJs&RymROHWqZlOzRG16nb&FbCBL$GN7ezha@9Hxn>8~_3jQuL&q*@BB|%kdG8 zUq6Xkh2}6p-rI6$)=f=xsz*q2M@Yx_e@%*)4Ee}8|LCsyxJ`j#@q%W%r&bmwn#c^& z>Tg+hB-w&?M7yefxQ*nLp;l+MB5FmoN%C6 ztH6D-h2NcYe)1z1mG$x%v>%n@2VO-+{!8KLPH`soD|F$Q>SU;pR+b(5@=0s zVm&tpG4e@S3<(3Ais_JHX3s)RT2V^^^*WQGr0glC(S-^3%1wQKE{Vn%J1&|ML>y-o z(_31VX%%KOtp5idZL`-Y3BsK7COG8NVN2X3I;gqdjo=Vdwk!;oCu{Pu0k z$|B6DhtsAw#d-o3$(Ca+>1LCS9q3#e*oawu(xkTu`#gqS-v0S1WJ8bp=JR}k6+v%8 zG(~2%K@O_b9%o?F#v%p_ZC=xX4>=80F*e=9YdzRySxIwq*lHLj3QlTA<^~W}NZ@i3 zp1v75h_cOxMO<0WZDMVhHbpw-KzcC6y|_%$*gM>moUBnyW_HAvD+e)_*L`cp zavM+=`};6Fi5q~zEta}rD?@VYFvjZXOREL!Dswyj?g)~h-JVT?jO(8DAMp*cOOr*f zEzW;iI$kJZZUIt z|K4mXne52B?68@vKdo?5j&+i)nAI9_B3#AP{zX}LOP$!J*4jzGeXB#<(OAM+ui=Xk z{jw}8-h|}~Uu=xd$&Og+uEl3tm1*Zduec5zie%4O?_^8w(izF+BH6xRleJ^cwR0cl z?4~;Bs!rw@OKvct>rCt-+u&@`j`s|BdI$f+9gu>EpViW_*R61|8`*o2it}E2{oDri zO4X69VaN8wm11Kv*ksWbM*+LH;X~|Z{_m^b(k7f6A3;1HLY#6-rn4X0?h?cGl@M0N zPwx!#Tl>1~ZDoEXaU&Wza$}>681`R82RQskX_IcFovQln{)n#jOPBEeeQ)cP+=^$v z>t{r~z6H{|hxIvVquk!T{e0N_?2Vvnp#)YFtIMVC{@dEU#QQ)t)!pZMF&v=EY62xX!d$Mva~2CEJpK0cq$+Ti8_zgMoff#zD>t^Al`ax z?j7JMO_T(^>r!_}&OA1WPj+<|=Ttv6g?m3W_S)n!9BDWaVnz|Ont$c;HVg->QhIS= zJkO@**CkHJRgX`mz~4?zhK)`xRp)+59RL2ea}x%*Hu3yBeM(6Y{h%;NBb#o*=OAowaNcE&1L_+;OEc%XC`5e z)SEv4GR|mcPHLT_;djpN&FE097=0p~EUP@fYkN$!>Dzwv{YLg|Bm5xN>-$4ngG&j& z4zcg%!`@sU+{Llq$z3BUvi)*spZ&f(d-U@BQ6^u@61#S=9(VT=dOJG=Ag7p{9R zRN`V()zoa7985Vs(V6(l{n{cFy2GjG+OGx(d+5WKmU(|opG;Y<$RFv_`x%&?8VY?h zMX%oDJi1@#|M-c&NaM>RryrKKN!|#uvVf#6mL1#2{>&9G?H`#)3k76IUWN~Y_z5e* z#sWOE0quCeF87zsX%GHa9%+K#-0pZeR9?PW2_VA-c#cK_a$W`B#sZpt1-<^2l@m=k z61X9(@)3AuxI7G6VnW5Hn*7sSvM&4`K2?Fg#;?+@S%VmdfjxE(2JHaABUY`$!xu5gv%8VGwHL5+#X z()+`R3T|z@QvKaPZU+ob`RVfHc%LhHc;tr|0i+?6v)lke49ipWyHzhl&#ZFb8Cyq( zr_J*h!*LJ_+_~Gk%S&Apgd5aN#5s=>z58QzLo7Y))A$+*MNXh@IT>nkq4HR`f z_~z=yBawg>2-|=Cof`djTos-y7l)+@{Ni&B&0r1t^Z13~>rfQ;!=~tD5RntDEI0RT2Y~W{ zVlp>X3DMm&L5HcT@7qLzf%GWI_|8)n5Sm36O z{yz|mSF9?!Q1vyNPK`g$e1+~i#T4F`2lKboWRP|Rd-&E8=qXnu>=5@cCdEb6rW3R6 z3eEL4|Cl24qQOet;Y}h#&8t(SnRXS3l0Oi!^-Va{j1@j}?GG~!fWSHPP?E2T4851tG zq*$^)q8gcxgLriMg8v}79y&SBG=zl+ubSQ|#;*o?pvQVSAA`aryqMaBGiUy;i~O)E z&=USx)^PjP_T=9!nAF%|GsU!sB8$V1CD^&TQs3f*XY9J4-#E!#4k_Wx&2UBs>Y}&@ z!K4uiWE?ofr`yG57}`A^$+Sll67eRt4-|w&9=s?W_-d|MDbBeOd)-D{f>xT~BJq0C zYKJrFPYfQBJ#?g3Da&;wj=krlAtJ@1NGi{x z&uyTapzkttwXg&pbUmejVtVY#ZUAby*J<{YA5BdID5_>rc^{=M2N zMv6E%+bE`{Jw7MHD5Spsja5he?FS``pHYn}(fK^yB%d+c>2Fz+W{Kcgyjwl~8_Jor z!JK)G{fsia8vor!QWT|;krn_bi5TO*MeGQMY7C~iwI5Z78OWLr8y!10mM~pR0a#eR z=xcv?NP}fg=>M1Km*_pgN;(M*-u4?5G#Y=Wi5;nQZh(C3N!Hjh`{<*VsE1w0&HDe8$h>X; z1>_rYlr%YI7XA#PF6T%Ky*(H0MGR61^BXW}icKm54q_4>k{zbV14#u`hva*XK=+=? z-|Z+pwIK66oR(S7`S2XgX%bz+ijeO`|91i9NF%!#-ajRh&K=T4&C$Ca!>DaUD2Q8^ zMVo{4LbusBk01*DtK~vbk>(H90=~**5_#~coW(riM?M*c6Vr$(7QGOp&41!a;oFKT zgiN|BLAPS?GGQ<;HZ+{kCL+xH5}MkoV?E%jwUjHrZRQCuEwSP0Y{D*2<7mF(MiA$lyXTSoc* zlQFRM}T6ZPp{jDryme792S(H|AW7+=|au^r>}0GubwHrx_fZLkEGMdU4%NeaAU z$WouDXwE3T6%t>06P`y)wZ8Cf>ZnqHA=jW(Q?Lr7yua(DpovyAeq^fd{=~!F0O;9v zPY>%ptGqLagc|1zK<=2dBre478C8GjRiqhnmvL*NsTVZ%fY+~@G)n**{w;j7I&@zi z8-JP+eC%dR?qgPpiYOzjo)k!CjdYWja7yHyJ;9GJe*l>@-7-D;P5VAU0)rt#?JK#= zw|~kCrneIIs@Kixnx6%Uz}kHj8F`Vwdw^`xR?a-8ZcICp%d1K|YQ!ho!eG8+sbfx@ zgn}Qjj^@F1a+2?sXSJ$wMUdRZ(j9XZ^I6|3_|>u0ck*Gn*t*O-@jZzWFhoVchMoH( zeP!mY;D0lg)|dbI$WB!R2V{BcK&Z}%+w`vKk` z<@MGq8QIM{rIx-2n0o5e&;y8!;HNJW0LiMTd*c$sCvRSq$8yCr6X{KJL0u+n6qA9S z7B-?36AQZg{w!j@{Y@7A?$h+V^>c}-LSO8mv87$(Ckm0?ugA|Z z@Q6>prZ2kt>P-y$Ll$mrejB#Ro%t`Xd^#b&t4L{8)DWM)bze<0k6HJO(QN+JBX{lL z%|}r_qaj}yM}J`2j*i}>Gv(tgEEG$uyfPo;lU~LK#tR@~ri_{PH<@ROo~K?|YzD7A z47i+OzL-ukec695+x@{Y#ry4-RnTLfXQX%N*J$Yq56-z1M=eti9iB6jU?9N@39Gj~ z)k$INaeFVj1&U%AwSgq=Bz|k+oG*M}(kFhuBz@ZCiL~~uj~Q65B6M{3GRXfeQwm*f zT%`W)8?@RN&Td@WV!5)dROow5`jM8h@z5C)es4ZM zeH9+^_D=!j>w{nQVW;gmRpO>|4}Fl)svQb{8@X;Tcx=KKTqSXzgcPY3IN(xa?`ofc zZj1{qGarmIJODXNKSjU!{C%@DO&j8%0_e_TJ+r0a_&hFae&K6J((ulBI0JlXTdr)) zdVSB-Yv=)yphW>J`gI$I+=i97#`@a1h%~k6R-fke4Jx27`}NbeP{G{$(Q^z`_A*zW zsN5Gq=(ea&?8p=V@N));f`W~(Jsowis`(aW*5Dmadnt$_)ZOa;Gjp&2{#O7B02y%a z{}xC2|G(mht~p-)eaZi8=CBXn=aXL9N5&Y((J8nGT8%fC6U-cYP>{iJEX-W;#WoWe zN5%g&bFlkm71O2CUPitmt=03DNOO~?nm?=N9_hEZZ%i25EjFr|`ZH^_drm&Go8PAO zAQVR(6opL&we8ULp1=*iBCQV1nO+oFiTNx+$aWx}23(lLf zRJNk}>vpt_BWhv2`t@a*a<+xUM&B`RxWxFK$L)jD%LL-&o@x^*z5X!s%X|5!{(75r zaq+*1=)Gm%_uo!n#A6r#gK%+W`w($)n~@k9SK_0dOFgBtgqygTz|QsEwqlXT21uCt zv$3ss{o}Q#xE#q_8pK|*stwm`DZw$6v;nMnQ*DgF@xaTtGzF1#`kt~Y3eSJ z=ocCi=2R|{#iWMeS5jBD6vzn?R+X>LNza>y`yU0%zp+_(~=P=!-KsYIp+(TuU zZk^p%@9Y@Js%N3G?^jQSvLDej!e=W~>K-54oD5c|{B7-ZC4tJWv9sm0es%XWXKBPq zeRFj>INeRMQYeS24PK9%^4JzhJ#?k8)xJdxJmn9at#q$!y`cP&eFrikzvJ@;;#OGxVPjHkWu{IgjeeDvucsL?0jL*k&##oJOkp>93IR_ZyUi{M z_Aj?5)LdV^ka@dvcyvJ-{`ZZL-j_c=W;P8%yZSfUzC?!OU1ztOUlC_# z<%y9JF)aG)6ND4?}IEUI=m2wR1k3L+20JX--xTsi%<+uz|1i6(M8nd_+ zDJO}otiG@f?1R{M&N2YMcX$`~NAEktrUuqI(rLqi#^J)ClpS(tn%KmZmiHDX)`;;#Ui^N#>1x`K)O8|~E5E+T#Lv8LNjv5qp^ z(#s0U-n)?W)hSnI$Ld>kPU&>sU2UT~SnkP}2Iudd0ReQoj$?vcG&y-eCCYcXk_gpv zeu1(AT?r4?ZceM{PmLmji-rzWPHT3WvLY>z6$B6)MH3b7GB(;7P-Xmps_z3HJ4eiD z?{Q?+WRz(x&Pk#7lFE~kQDm{|g!%kp3jB`}KqAi^DeFVYs^o9di`64pCK35-6o15l+QkUK-c+b?4d9= z`R`xO`)JlrWw#~vEo|KEV#_&eqi5;0W!B}?)-^hECA7(XI$Dm*NjPJIm((4S$HI+YeHR_~|7X8(l!J3z#>zfn1NmML=+$`pc z=JVIY(scsTMk&tRLVO$ClmAAjVR_eljGWb*6l;>8ylb2ErCNbgi?(*p450@DZqa6b zj|E)ozK6Ra$Viz0p!A%G6e3y767@5S>vLhR%4ep}+QmR&I&Malb?Oha6-Z>^Dvy*0 zz|20FTM`EE$US9Q2bM#p_~yUw*({~!?)6MfNE(Rts2QERh4}!ex&JJ1NTM>LJmOmcFsp!n&!YcJh!$%V zPYu;}a7ja{QaN=DMCpP^7D5jUlRzLJmU_XnpLEjKRXIk!?r)Fp8(v9^4=WXjhb=}$ zKaJ7{vT(O|$|1<+Y*0gAn$IKn=> zr&R{&?_Len9ewfb>-4H^U0Z`n{^(D_M)`r4hzf6@Cr5N1=2P%3lj93F#)kCg+cMO( zwUfk{P{A1(oE2sxh}YnO5vB|!ZC+i zNYcD*#_8adrB1dy%~q5NKrr6M(~29=WaTC}Ul{Fd23jMMEd0a!u;6=vKL%35a?HWe z|D1)w4$z}6M#j~&sP1F$N&MLuM*2514FKr3>s6pBo-lR?z0WfvlJ1v6|LP|3Ai7`G z%PrZoXn=a8yw_?<#iwEu=s^#YI4;#_L_1WeI=nCbd6w}Ia}KNnq$}K0D0zt4RR0b5 zZ;Z;K?#T(hW@fG7f_}i6eKz3qtt@qGqYOEMhumbJWtPOul?OxkXf2#?rn_5nYq{wL z5gQY)7!V^s0y0NoA^1zW`j0=Y#r}>qih7aIc6?P9G zUB^nC`3j(c);2{DK3_*DvMYX4RB}VvGsZusQScnTBnKl%z!=JSE@)`BwlfA=r|{zW z7k@cofa<;2DAgz$QwmljiUk+d;tz~eg0t>fi9w7t;^T;op>QOM|F(l1j*J->14nVg z#TDYzMU`}8Ohu~VZGM21Mqf$;;#-sxGR-0$lPGIvYQB}!szs6#2%1fkD4MT8s1KA_ zoG)`MvXSB2M60l-J4;)W5tS8RIeoI%RDDd+JSPA1TbdlH6Q5Kuze&5(y-mwGu8`U?N% z^JPjv3rHIX$*B_X6xV^$XMJ2rf9}X7j7p64O-W<5&Ev|pH-ic_Ww;F{sV`-xA*=`X zv)}#(RptmX4jY@oQHfm!U>kvOM!ww5eJ|xUVU~c!c!m$iz3Ec#`IOJN59;R5dp!$m zj1dd&(i}}FnE48-F;BQtCZay5Qc9G+5ajoPtN?q92#hdb{6_ogd^mrT!EDUQWzsyM z4glE?h$tJ*K78h=k?~Fl0Nmz*YYQXUBa}DkfX;U5zk+-<%Ywx@L3X%zL|dja#; zElI8l$#_8?K1BC<0ZcW;u!ADd0Fa_YEjjL;q;c_rh7Kcvticou1QS`=5wr5b?;a5s|7rsNdDL4Vj3AP&dt@MIPgb-z}n($}$t)4j{>vw`r zS9BrO_VSpVm+qB9tZ8MtCL|0%H=O9syxwW*jAeuO? z!&U>G`EnI}Py`rMaFJ6p6sHG*5H9uVMUuJN8m!e(dEjavh&KY}lw~f~=0mxpR+wY& ztzunDj80#rAoQ&h2P9%mwcZ>64}2|Uds@`6N45)69+{S&S2s~pSAnYi%>!cM1=Q5! zIP#e3{IGf4t%(Y%lT#qxxZg-{U$*T^zO2^d^P*ydfw>mMN?chb!4-07=s9oW58k@% z)sme=^?}4VvKrlp;5sJ+qypJ=UIVg0QD$kH{#vcoIRKAHS4-KwC-V4T(Q`kklB~9g z$=wjfm#hJAe%TGHQfQ{X^?(vUk1a&e3l&rTB=zU_^EG_xuuU+CM++fT@+^V{b`$&V zmOv+qT(!>K@SWB3SptTQc&t`rvZx8A$DGcCJsG6SBpkr;U)w$S|7a ziZ}R*SGcTFaB^o0Yqd&Y+P!+(%zYr*A->xOB_M?gU@ai?PpXS*>)KfdT87+;yhC`o zMU}P8iLjYlp)FA|E2^lSjk7nK?P%&ROA^Z|UH*1KSIv&6YF-_N5=pX`I zD^taQ>s7x!giiMK;u*UL{?00EUz&1X?iySOSv8QK9I=aT4X#r{*X??=OicE6Fg8kA zHu9-9=pd>q_8!lUoc#v1y!;eMtlc4DfC##j;L!v3lyL> zf2j#goP+j=H-Dq6Hq;3{A|TxJJam*^3rb)^{Cla*l1EXp!D#eT!){R-5J^5IeH}tL%(<-RO%WtQdOcPaTOG>kOc8cwHMu9ERKN#RdKyZ>=N4pW(KX zaozm0&)0FSRsf>Z%`n0` zx5aO=^G}k&`t=K6{?3`pLK}PMS-gf-kV`IMAWpdvbHp;2&aC#-qKgjDt#CLT0n)(^ z57-U+cr6))jj}5MO$sNTP%OB}%>@)LsVM*x_-B)KTKR5Pv^JLY3y5foR&>HXrRRNm zT~FfaGinYe4`p6`pwNnhFXV+ye)>BSUbI@!hbsxIK*HDl^scrtlfU;_0~D@_9!&T4 z&7i_YJqaumVofFmYAjpTRR1ZoX~9-!WO8F&rw}?DRuOYszYq%l?3yy_SwteWu~32A z7`~atdjS@`0F^1D>~^1*v9r~vDN#*uFm}xbHg=&iXOgl>`DbGkw)#pI%8r;SE?nH! zSRD;p2~5Tl45;sY^GdAv?OX~2>?U36N-$uHK6PumYqM7eIDNduN;!Y`WMfod>OO3Y zbb3mSb$vg1@g*;j01Nr}@#fXh8n58?_NNkm%o;Xydt&2@s`n=an*_D)5g-xGvch;CRIXZ6E-hTIo2lk`PK3K%`H#6yp|~{e4dALth#T;KXp2oWhW{8 zn<|nlLU7t%e*Eq6cADHw2t~<@-LDn8rkR+z0ql4wA@4cb?Zo1vNQwCqzlBd1SASls zSU=d7{lew-CGr0l5 z6&ojFLmti99C@Hm5e+A=8?dwpCC50CUHPLO-IGj0eOYk)k>U`ye!%hlj8+twDF6M7 zcjr3%fU4n){tj-29Pm_KI7aL2XX-c5ErtSGxO5>f9oT@K$tU{WAZ~Yde#vq%tP5Tb zzxdLN3n>C+rb;|#Ie+-%Jo)W;ljjdDuenT8VyZho6=#|=eU8(6_wuo`4)x+;g6+cZ zeuCh@|3lVU21WG%{CX3Xl#&*f20^;JbLsBx7C}(JrIBt>x=}i%S-L~IyQBm`Kmob@ z-+AxMow*;+_mgv;=lAec_lI>(YEKNyNbVbfPt`e24L?AKYpxC3(dYd^?h?cAIU`l! zzkJ+}oZ-JoHg1yLMoKs_HQ<7!#<$+j4pQ?jl4C9&aHdKmfx+6>+~(()#=j^&K(gF^ zk+@^~&p_CeZ|y%E^XA6zrI>8NUgbz zqWsY#de^^t$yxX}torx08n$2j#8T&Z0YxttqHp=J>j8RQITOiV& zHVqRK4Ld7u>ZXieK&LlbMt||V!LgM6l^x~qh4mW+OmalV(f6e1)FW>Dt4s9*jI^>j z^x6EbjzDL$W!trP^JVz&Y>zvx7Ox*&S6g1F*Bjw&l~t;w`7@fW-WqVyBC5swmRkUB zFHO{|j}<0evPa*zA57dGRj|1OU>vVk@BOX_zt`Dxw!12k&+e_PCcovUc3%Cx6PLxQ zQgIO~0~Z5f(YpmRR(U+*LzB~bRsM$-;gCXC!-LFx;C@rl74{WRO^^bc$g{6TkW)q~ zZQV<)KdlZ9qrsrFp(8%wob{0Sd6i&`VMw(EK&mPdy&j4o;Ek1Q(r61tYZ0Vj7=Q(p zUkqS>qTEUpu;L2C!Hm56r4reU2b8-`@Q*7}MiV|%Vm_#M<9Bl^OcHUeQ!FkG4Ih%k z;JhQ^7W%f#n%r<`W>c?vbQJQaJt5>RqQIS@I1G=Vx^I}3c|f%RSO>XyOIm+lG8>6+%+!Jabqba8za5cQ?n#S zMft^!exW1ZYv-^OzcG zq9b^IztopEv|0KXgrpy#f8m5ISwj$_JS3S7Ek-f39DCAK4@nYK%JPy5Cl((3&_N5W zS)`$(#|swD>j~lhvx#on%kZPJ+D2h_0+b98{fO9vif34{=nVF;`N+N>(fo{BqyusC z76P&0baYhbiWm?euKMdjRV^S&ImrzYPmxa4Eth#}#|M1sUFl4rDN zi0z;Dh;)&Mk+$?I>`!CLX;?dJ1x4X8>du>q;}M2 zp}t~%YDoYFVk@Zv!(K3CxSdZEoj+@KSa@k^BF7Xz=Oym~)d733`ZJog*t!KeDU|; zk^{;$i#r=w$LSVN-s58yh(TVb}GzpYduJ9F;rbv_lNK_J}R|Yofs@H2w^CE^8E`{=w zb>ORcbEV47f$S3uqfn-!}{29Pru!Sm{^5x4M{Ez$-zOHtFbdY!VWl}?jKs*Mvxt@V|!d@SqG**yim zKErV@+|*yU6VwdOHmz3X6<)5Lc-s;&E<*)(gt}c5w7I!h2bN+bYu;M6fzjN9Jd>l* z(r%!&qZ=oS$7Z?m87+i4)n0U;28xx_TkC)SjIbuy#;@Tei)60-=&BusxaY5yd$g`4 zF{NDGG2(&7HPpN&RM{bup=~VxZHZo6XMX&dcW_=V(ud{ggAQ+L$V-}=hiL@J?orzx zY*p=0C~E7fELf|r=0eqQuZXk~#B_?OM8|qz7n(tfC369yovPh$rCKbZWM0qezD|>q zUHbgMTai=0`XkOwD6cZR%4G>g_?c{s=&9pE?SO~-1_7QXH-fX)EB>(a(_1(hZzxex z(Gw4O*K%d*mMTRa%JQauFjiIZ>r#W0ehi9bOCzkpzB2csRVX3l-^n{6Mx^+a(absY z+CSvQQJvB4NWp-|i>GEM&H+jCZFUSmzcQFkupcL`vneo1^g9OLFOxpq>PJ8*{7fX- zc(Ohu1*Mq2wcEqLo@m8oX1Kc*2}9f?L_QGXo~gh>>@UKC*SDr;F4sB6t?t{ zcIi7+V?SgkqvP=!F@VGXei@LYS!O6M0wj*Rjw3g26gPLpOE{GgL?rD*8^0Ub)WBl? zD|w_-EiAe~=lgrU#y9K{yseOV&|q(PkQ08Nd#PcL)apEyT9n6)d&~jvy>OaSQY9lB zTZtj*bB`+0e+@_Xc!##YDP-!7w#Zj`TmRF4vcX-jFT&JlL;y~UN>BMEe5<1GDnpBD zkWcidbHBWa`}{k{Fb>~aD1KxfS>@Y~l&7tvf%l@PbRvT?0upT|-j`*w1QH+NLA4n{WQrig z=q^c6$SfA=H9-(KBa(Bo>)%S*>kv^Z3P}RW?r@&CTR(|UFByz`sd(}-58p>qe1?hE zi1*R4yu4Sjm;_8n=Aeus5k z2g9!6Q9!gmVxicJ`Z#9mXEA{io(0_P1<U16E@)dc5*%D#S2{aJ1m==fP4eNdsEVA@rHR_RnQg2DoN6)#Lfy9}mA+ z%<|UqygJPk^Iq)?J>j)INmsJy+FhZ${g_L}EL(B(`LSV0;)6@DY-^-E<&dY0T$qkr z;%pDu4l-3!2;GS$8d7CQMo2-P%$PB(789wDrHx>uuC5dVW3>%FIEN_Nh0cz2nl`KpqUp! zer|^`0tTu>YhGq5)258*u1bR}q#7Vk%T=R0F9&NVM_X2VL{X#dW93@Aqm;oNA3pcx z@+xG_2t|&9v6;ulgb{sLqkBh6wGDOSY@_+Kh>=xnKV{--*|AQYG1Qx}vWC&#&tp?r z%-^205ZQ0Di2gYp)j{z1f`7hT(l~38Do4ZkV{4zP#LBqcJHW=9j^J7G@u|rBB@pgf`d(+ z(?op>Bj}t+-SS@LfM}xDAMmq5J>OIPp>J&9YVsfDutf-Dfk>m0M&p5Ph)q;I38C@l zwZ^w@r3YD2VM;Z~oSK)j2Da^|`_-wEH$|s98qajUb6`*5KPSP6R3-e)r#Pne&tEje zUo&lKl&nKK4y5_#M4Dty(;#SyDr}OX6oYgKL`I7D7>}@i-}3`HTK5H=j05&@{Vu-yXIatLsc|%8bF* zwD3dsYu?e7@@mlzO$}=e@s5-n@<9nz#H;8rBGVaE#iZe(d_M$RkgdK#ONp;r zuu=!41VmJ78~DOFRp(?*)ifUnxXOCuy*r2;!c|qZ_->T<3NUyR}ZIBOH)Ad^%a9 zx~8wz*S~PJ z2~b*Gz-gS1K&cx<8n8X(6Rg-D$02G1Gu&!V80GV54hQ|WFVrJR(Geah{mG)3^$YfV z6>m-rwj)ClPE{gwi<+>9KPYQhKGfH38>Ih^6hba#q;h{`HvH5!WA~~%f?_O343|1) zDKHf_immfATIWPoB*%0))?qmzdk&eR$wJrmZf<7os=mD6DCRaeuaVKVGV-Vo@zqwX zoX>c23Q&o&K!i8)aSD)^+QMP_-7D6(We*!swqmfi9CZ%tP1fc6z48^OsSaoLBVZwe z&*UQ#N$MZdE7LAntkvpoG86{mQe2@dfL&*{Vhx#enzkE5S0|riY2hpzo}y`>K+F9g z+H>Gq2H4Qm1n>9iWWd^Eo-Kq65C&jge=5m{PvNjnt!z@F{;?6~2dcVUN6EZ#K@T3Fc0xY_O+F8iW!Fl1wfVB_L6lHhb&PIBW)b>nmn zhs0rHEmiEGc=pd6>>hhb1GRClx*@+ACyoN|HRw9L*o-aPAQRh!bXs7+AZR`tHJKXC zdpsL_E5Ck^-*s3J&YPXB#i9M%aDCB)H(=E5q=O~Cg@qdiUEh3sA+3?R8I!Rt{A$ZR zZwu>RIQD$}^LdkyELq^brQqxobG9XoxTU(H|$u|c~Z$75%?Y;B!h3_;6-NH0!F09r3`knp%| zuFg%C^?14*nJ^U*G5M!yZEG|Oq(sw%1Pnxm7YbJlJ$|*zS+ez8*M`?_7lW@-VL)Fg zVOOcdMj)+4h&lK_eIOx-MG-AbRt$)IbYu*_&zj@#Y@y8$6i^(_I(MY zGbZFQKs?ko&DO9JD2;na$iA~8na_^aO(f}1JGviNY5(5rDWR|7Y^rikq;- z35*eO5|7H8p;QJUV89FKL%%>6v7%$@`hv&5AP6cb{mkC$diRswrgmhg$gegkJqJb< zV>^yhGyp6KKhiy$L)?MQC7o=~?CbdtO4T+s0BF=hgR#C)9w$KF{85DO3zgyfq zlg6}vLDWdw`m{Y;`Qrw)4Nd@-nM3&3BIlT?EM7&hWErr!WY^;4nA#zznE1pX2lQ(3 zu!r4@&EjN7FmaqKm^UwMxa5So;ea$IJ56saP6w<>}cM6MqG24zJ6v9=VHx;c-9DWTYFJ z`VX89CW@P5&xs3LyYsPuAQl)1R=T!i>PdTmeIWkYn9J2z(cNwSIH2z2F#yf;<+BsM z53Xc25Y@w9JDjiGuV`l`JgSMm2{yZR5xd!$UGgt@+RZ~$7ePWdF>{yYMt>fU* zk7t7}0vi{U&n^t)gJgbU8yxYg@SHMyJMb}uygEN-SG-iRzf@j0F^s!Ja9~mNo9(B=tBd2_x-CS;` zz10zLey4vM-Tc-GT@Hu`G`<5%=Yi4uY$gXO@Na;QQBBY1Jr@Jk<=me%(4U$gN#1fL0J=5;4)g=+6+W{%NXJFq`TPX6=Dsege)Dqi&aMWz{~_?A)SvY5Vc++C zEfTq1f1b-m0-ZFEPZ>^FLxKyVu+9gu`{=PQXS<2n8fBr@ z=h|IIk4{b(7=jiu)d90)0S0ji^O;UZ^5G9E@fOj2LFfAohAn5+(Vy zrD{M--&&^AM4vm-Mlxt4Ji&I8n!Mo?NMBntYH zg~p7BFTu^78sHJ+?M5pkDu=I*jJ@X{Zd_Ho1(P>Qr()qGoN zeV^=DYUsx`e39so6AyPUXK(w1cK7Hu%;iq9_sq1y@pJ8qmA%>;Xa@_=R2uZJ*1I=R zBXym48&_UasyEN`L#fcq*IVzlb!uk}qjjCFe(0W_c5|SQHq6_;hkkvdjqlPpO~b03 zo@qDwO0Ow+IrEMC=}YpP)qrOV3VE6g7Vc5PKUXiM4DLDv<-Hf~uD94DPI-1xsY^&h zokL=72elRCoA&Z0b_EeSwAtIcKZDtYkFmbrYvISd$f{lkR4odhv7YKb&n%<gv07!vb|AU?T{eRdwoicrMa9A=qAA4QKP;KF0 zJX|Jh$m9$+ttkEp}{$J<ZlXr6Lx<2T2w@! z5~l+R#^P@-a9@7OipFYof30NMYf{XegCJvFE@L&EsMKnyw=d-L|5u^)EgVH&(YoyM ztEKTcNnQ56>X;7_1r*Cy4jga0k%dc^3)Tjldrnn%CbODn{4Mr z?z5EN`gYGjf9!EJv8H#Xabu=S{OxhrPW-Zw5n9Fl)`9HX~>K;&dBtZEQKQ{5|5I8INBBK7q@l126rfpG~2BW7zxEl zOeCzB1@vLQIKSFUH>t8<#8W@l=_OR}L#bdhrS00KK=}{mvf2|`K&&fbVUp(j5aC%& z^8pWY1+|(y-M4Sf2GcbxOo@{15_HLl5Rzk8P-9Qpt1v=Ij~}^#u@e!*h#;e{U!7QM zdqyzTYaY-0nbi8uWpRuyFrL3I{>mhqTaLCuV)foB)k(ko`m zvFq~))7nc6t@O z)P$wEX4~j?D^uG56z_{!_=b_+J8%O1(|K2N6UZ`v@Mh&RS%0F?9U!>t*0PJMQ-bE`G@i?*95E^!P*UjI~8scL^gyVa<}U5wi5;3(UdXl!;m# z!(+9M?lRk^}}H>LazesfVW4hL>9!_e32MjM?jM(Im${p z9gmNsv-xM=gdsi}Q%G5im5?`V`rYHBzTz%(cO)8%8x%N26s3~)am4uRMZ7*9y}$U4 z(%UfZjP4i|X_vRGO#n}pm1u!OUQ4J?DJaP8MtT2=WNlh5(uk zh)DFpgo7_J<872wTu^Fng?V$PY_|DQzYHMB8FLMyW50bxqJ0RSfr6Tu^!FWu1D?2j zA_fLZcL!O(q6+c%hHe=$C$N3&$RhU6csbW_>!emHdg07W~^ zH)Nl(N!lK17&h~lIzopM69xJ?^ze_W-%RM#8SI^|7vvfTiOkS}p zzVOMbL0VT910;>PFj0l3 zn%IViya(cwcEh9|zOti_3C9YTWB$~oBNs*}Q=mW3FE9yFESKCR6KQE{8Kb#T9{gs} zVUPu5=O#dS?0Q963}XlWqE_Jw!Jw2xN8dzYDPQa|yAM3t(gqU0=lB@P*2^C?O3y8M zz-`V|=!r&oj${^=a?nI>0-SSdGiQRoH^ttvc>QyGng-v}e0kg0a;1{oe;*7!M^5Fj zUjd2o4qv=2{%)sTZAlxeCok9KTyYKku%Vi*l;h9X2F3E28j}^%b1prWFvQB(IMgVE^@B%Ccp*!3_sq4u6Oj$ z_UyH-@?n)l6VZu<{phPFm->p@rVZ~XN2&|lFSk8rNWO(u5bs@Ve=qc_EK1xo6;bxK zc4Z`?4X2=y>tIpKuP4Axv&h4cj;enl1c!#(z zb+0mP1vZX7IG!s}i@wYZ{Drmd>TP<7TA=E8giPJgrDMr{YfuxGOys=wh!Y{uU&I|K z7RN{yxF@3|1;8Y;e{J$hg?N8^pM%RfSW~VUX>0z&~9>F?+nC4-YgHnCX$ z^lW3`1hrAs5rrQnP6HOOpT_y?w}5Bl8h_9Jt-*)?A` zo${-K%4B1?iUXWO6Gi+$ZBrib8c<;vKo{j7IuOW0Y#~<)ES=OUsnTpDp>SSVHBW%HWBj0c>KczLGzvg)YF%b8sOn3y6`DVkq~R|f$mrYXrA|=;sh4M%t??RCzo9#9I|aa9(?1X9Bl1(L69GDT?Vj=jM!CXZ=xUZBrPx7`D`eEM4^+#7ub6gKgD%# z+4*Y>$v^qbKhf`xn~Bt9Nr6rBBo>JfFEvHm!(-@M`txi3R8pT+emp5l$C&x zG6`M`jOCpgJx8Pg>0NT1WTIDXY7*Ly#BRkHtpnL_kx^WPEWY-nF_Fdt{HX?ISZ|d4 z(bCh(U~n`$mJkK|-%ROU&GI~(@u1rDgdpV)vyf?MhIWhm{$ae)t@Y}j0%ntE3|R&~ z04?-moQzITVhx)An@`#;DVdI*8`3FxWbX?8M1T5{+8oJUXlb6`U=9llEoTYG_W))$ ze6j>X3b&ui#qy1QnH9s(Ov4O4T1dEILLj|-lTy|zKj8D0Pk%wgDR0f)7bB;BM6ypo z28HmRUir8le{jftR2^%{Zt~HdY5AnC!QPAZD(yhC_hXJ#S;qL&~IFy}$pXt3jVe`BDcS^+Er?)i@nh&VtM@0C7AIXA4D^zq%7k1vUaYTrUej z77#fnh+J6u&5w}Z^meHqwXeR!>-a$h^osSC4J<6O2uH9u@?85O^paW9U+$ao`4lU@ zgR16zG9JMq%MwCiHJ+E?E-UNT6l(B&Ep>7pmM^uw1_cV|+av&= z0Pg0_|-nhc`88TNWJA< z)`l?F6?qk%#gmm$^v7Pc;0MT2QpFZ&y*c}3?Jw}ssQUL2`gTGNJ7dO@GFW&nG z_1w!4BVoKC;ne2khVDFw5USp%t+^xt$_uYl@@=5aD}exkRqv9E^D0zFv1}wUquQGD zuqrk7YiKvKVYQ8>tlq^ntxBj$)fF(A#q(5Y)Ey2#xhraaO&L#%;vw6HEl2 z8uw|e*4n*?cuav2CWJDGK26GgGLL=+srDiihEaRJ1_Bc-1v0zGHxwPP!R~(o&Z!f@ zr^hX>CWEk*eh*Rn@uQYEE`x!hSYHwb3GyLdP=i_LgCATleIMC|uoIiZ{f8p&2M16? zSom%Acmp|D!-*$@E&$vVe>}CU;ZN;Phv+$DSPu8Y&N0I-h!G7J%)#?v5dMhO*huBc zh@1=NHay=C(e9l&Y!x$_h}|IB-cqyD`B`+Nr+wIkvsWsnxxZ~}^aLG|IU?oXJ)Jdv z^%WE{1#(>NTFx3T*@SKb2ES8IR3X5nC;gi-6Fs6JUclh%lZjF6Nk9LZE5yi?%D|m4 z7??0w^~7S=Oz4YZ4CH|T9m7v6_Zo1#`IsKUP4F@b4MS{<2oKA#!u4NEDOE z10tmqKoz`YGMDN)&xD6%6SE-MQ5+H- zyh((c_-fqi)nZY=d};Qg^F!(PWA#JH*$<~9)~54ystXOO1CaqBjXaD>Vb~1?!tH#y z=mh5K(B-Q(2Chx?U6*ZHD=rTOf|S`EO>QnA|nD*Nf6 zuPXozzOwhQZv0k@$mt+Rb))_T7M;bSYs|*LLpCgHrF##J7qEUajz+|} zaVfUOWU&zG4_OSz;z_^=^uaYd-?&kIBAXX`0_Lw>+uy^tc=50xYE8EREB|gmpK4aK zi*cR>ZWtzPpmDB+r~(boyTnhit?Gbz+c2W3`rGW~e;Ftxi=C`6m=E6W+gDqRf!jnH zi~riti6pVitr#sP2q`2N*~CDIz&JH_?-}GY-dWeHS6fUPTW_A4CK{X4|IkE%`|qgs z-7Pi>Ifn%>yEWDg;W^t&ZQCCoO}Bfp_t0`WT+Y$nQ~j{$1QG$(zi6OS=3rpwSgyU8 zCly`z^=kD^)gI{y`tJE&Qs;pr9J*OK6!dSGHxkBcaTqN!PZ+r8O||ft3DrU#eW^N- zoH`J{8wmXZs8I`98%J}+-O*d$DbC(&_}58P1MH&uA$oz9Rs{(i1_sAP)Zw* z;dKs8mVrNuACiT`7mBV2nf{PW_z$$26ZVx~|6m|-&MRsTyO~XBNA`?> z`bD59DBk0uBCdlyK2q=qe0dfXDf!(HzNIvN^`Qd9TXQM81<}GgmFOxz5WLc(z9jR( z;Prs;A}^O>79l@>EZ&_RFki`h`0eY9k)DS=#(8`tiiuFaePY^oqGnwZpoU@)ZHWk{ z4<}Z>7^5Dz>!+7j*lV@tXzn#Y3QjpzAOH<-SM4PJJ;$HEQtT1H68W#&;=pdDSdyu10f$ffSc05_>C~r)@v(Y-0=WN zrNr&KJTh1f(Em~L^0zQ%EmFqaWB(KBpLTb2-c9rjiQ702j!i3oSQ~mA5)hJfEgOF# zdx|L^TSElE1Mr{!fFCF38e%-3Ag{F?PI}4etNQ<7=l_K+Xyoj!G`W@N|0i@YOpx7# zkM$pRKC`cy#r3f~Ao96^VSYG<3h(yTuj>7u*BzjilP?-7<)#w46bGG zF9yRDmt>;I4Dmq<^f$?)J(%ASGW*aa zH3@hdq|Iehh%mn%=0(bjcpraP)Rc~xRu&NDrO~EL>etp=3g*>$17Y))R2!jWNPC$k znWt;^=`+o&WIxRty~+W4uNnnRD)JoUB4Mz#c$k9$u zsa4)MO!T};H!>I}eENCN%l6cTLX4gcPCYNLUovZ<|H1YY>%I_x{XU;TAqF>)KZ)Z~ zOu)2K-nSQkDZdngc8@#XT!8Ts;$sxy8f;Ka6SHz_V}_g2xBlobN^A4k#881liyOWJ zPEps(ldyc>d`} z(Z3iT%G|K|&m~Fmmqt4zW8gRB93>*}IkXYOmaehh8T2j|J2}Q2+SknF?tbU3YS-y%+Pk1AYuo8b(CV zH%z08Xy0zV|CyNs@aqTunp5Ym9ohJYX&beKu^FJx83Ohzegu>$CU75WZ)_kuAvdmg z*i*}!!@IUCRT-?6;U}YR#7W6

opGL)}tqXV1@e&>*4RAgAi=<<@F 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 { const [selectedLang, setSelectedLang] = useState(lang); const [isOfflineModel, setIsOfflineModel] = useState( @@ -96,13 +97,34 @@ export const LanguageModal = ({ if (!response.ok) { throw new Error(`HTTP error! Status: ${response.status}`); } - const modelData = await response.arrayBuffer(); - const uint8Array = new Uint8Array(modelData); - - const transaction = await db.transaction(["models"], "readwrite"); + + const reader = response.body.getReader(); + const contentLength = +response.headers.get('Content-Length'); + let receivedLength = 0; + const chunks = []; + + while (true) { + const { done, value } = await reader.read(); + if (done) break; + chunks.push(value); + receivedLength += value.length; + + // Update progress + const percentage = ((receivedLength / contentLength) * 100); + setDownloadProgress(percentage.toFixed()); + } + + const modelData = new Uint8Array(receivedLength); + let position = 0; + for (let chunk of chunks) { + modelData.set(chunk, position); + position += chunk.length; + } + + const transaction = db.transaction(["models"], "readwrite"); const store = transaction.objectStore("models"); - - store.put(uint8Array, modelName); + + store.put(modelData, modelName); console.log(`Stored model ${modelName} in IndexedDB`); } catch (error) { console.error("Error storing model in IndexedDB:", error); @@ -185,6 +207,7 @@ export const LanguageModal = ({ await storeModel(modelName, modelURL); } else { console.log(`Model ${modelName} is already stored in IndexedDB`); + return; } await loadModelWhisper(modelName); } catch (error) { @@ -719,6 +742,7 @@ const Assesment = ({ discoverStart }) => { const [openLangModal, setOpenLangModal] = useState(false); const [lang, setLang] = useState(getLocalData("lang") || "en"); const [points, setPoints] = useState(0); + const [downloadProgress, setDownloadProgress] = useState(0); useEffect(() => { // const level = getLocalData('userLevel'); @@ -799,7 +823,174 @@ const Assesment = ({ discoverStart }) => { const { virtualId } = useSelector((state) => state.user); const navigate = useNavigate(); - const handleRedirect = () => { + + const dbName = "language-ai-models"; + const dbVersion = 1; + let db; + + + // Function to check if the model is already stored in IndexedDB + const isModelStored = async (modelName) => { + return new Promise((resolve, reject) => { + const transaction = db.transaction(["models"], "readonly"); + const store = transaction.objectStore("models"); + const request = store.get(modelName); + + request.onerror = function (event) { + console.error( + "Error checking model in IndexedDB:", + event.target.errorCode + ); + reject(event.target.error); + }; + + request.onsuccess = function (event) { + resolve(!!event.target.result); + }; + }); + }; + + // Function to load model in whisper cpp module + const loadModelWhisper = async (modelName) => { + try { + window.whisperModule.FS_unlink("whisper.bin"); + } catch (e) { + // ignore + } + try { + let transaction; + let store; + let request; + try { + transaction = await db.transaction(["models"], "readonly"); + store = transaction.objectStore("models"); + request = await store.get(modelName); + } catch (error) { + console.error("Error accessing IndexedDB:", error); + return; + } + + request.onsuccess = async () => { + const modelData = request.result; + let storeResponse = await window.whisperModule.FS_createDataFile( + "/", + "whisper.bin", + modelData, + true, + true + ); + setTimeout(console.log(window.whisperModule.init("whisper.bin")), 5000); + }; + + request.onerror = (err) => { + console.error(`Error to get model data: ${err}`); + }; + + console.log(`Stored model in whisper cpp memory`); + } catch (error) { + console.error("Error storing model in IndexedDB:", error); + } + }; + + // Function to store model in IndexedDB + const storeModel = async (modelName, modelURL) => { + try { + const response = await fetch(modelURL); + if (!response.ok) { + throw new Error(`HTTP error! Status: ${response.status}`); + } + + const reader = response.body.getReader(); + const contentLength = +response.headers.get('Content-Length'); + let receivedLength = 0; + const chunks = []; + + while (true) { + const { done, value } = await reader.read(); + if (done) break; + chunks.push(value); + receivedLength += value.length; + + // Update progress + const percentage = ((receivedLength / contentLength) * 100); + setDownloadProgress(percentage.toFixed()); + } + + const modelData = new Uint8Array(receivedLength); + let position = 0; + for (let chunk of chunks) { + modelData.set(chunk, position); + position += chunk.length; + } + + const transaction = db.transaction(["models"], "readwrite"); + const store = transaction.objectStore("models"); + + store.put(modelData, modelName); + console.log(`Stored model ${modelName} in IndexedDB`); + } catch (error) { + console.error("Error storing model in IndexedDB:", error); + } + }; + + // Function to load model + const loadModel = async () => { + setLoading(true); + try { + await openDB(); + const modelName = "en-model"; + const modelURL = "./models/ggml-model-whisper-base.en-q5_1.bin"; + + const stored = await isModelStored(modelName); + if (!stored) { + await storeModel(modelName, modelURL); + } else { + console.log(`Model ${modelName} is already stored in IndexedDB`); + } + await loadModelWhisper(modelName); + } catch (error) { + console.log(error.message); + } finally { + setLoading(false); + } + }; + + // Open IndexedDB + + const openDB = () => { + return new Promise((resolve, reject) => { + const request = window.indexedDB.open(dbName, dbVersion); + request.onerror = (event) => { + console.error("IndexedDB error:", event.target.errorCode); + reject(event.target.error); + }; + request.onsuccess = (event) => { + db = event.target.result; + console.log("IndexedDB opened successfully"); + resolve(); + }; + request.onupgradeneeded = (event) => { + db = event.target.result; + console.log("Creating object store for models"); + if (!db.objectStoreNames.contains("models")) { + db.createObjectStore("models"); + } + }; + }); + }; + + const handleRedirect = async () => { + const modelName = "en-model"; + await openDB(); + const stored = await isModelStored(modelName); + if (stored) { + console.log(`Model ${modelName} is already stored in IndexedDB`); + } + else{ + alert(`you have to download en-offline model`) + loadModel(); + return; + } const profileName = getLocalData("profileName"); if (!username && !profileName && !virtualId && level === 0) { // alert("please add username in query param"); @@ -839,7 +1030,7 @@ const Assesment = ({ discoverStart }) => { return ( <> - {loading && } + {loading && } {!!openMessageDialog && ( { /> )} {openLangModal && ( - + )} {level > 0 ? ( diff --git a/src/components/CommonComponent/ProgressOverlay.jsx b/src/components/CommonComponent/ProgressOverlay.jsx new file mode 100644 index 00000000..d5fee52d --- /dev/null +++ b/src/components/CommonComponent/ProgressOverlay.jsx @@ -0,0 +1,81 @@ +import React from "react"; +import { Box, CircularProgress, LinearProgress, Typography } from "@mui/material"; +import RunnungBoy from '../../assets/images/boy-running.gif' + +const ProgressOverlay = ({ + size, + color = "#ffffff", + showLinearProgress = false, + downloadProgress = 0, +}) => ( + + {showLinearProgress ? ( + + + + + + + + LOADING… {`${Math.round(Number(downloadProgress))}%`} + + + + ) : ( + + )} + +); + +export default ProgressOverlay; diff --git a/src/config/awsS3.js b/src/config/awsS3.js index 34d950f4..7bc68e0a 100644 --- a/src/config/awsS3.js +++ b/src/config/awsS3.js @@ -1,9 +1,9 @@ -// import { S3Client } from '@aws-sdk/client-s3'; +import { S3Client } from '@aws-sdk/client-s3'; -// export default new S3Client({ -// region: process.env.REACT_APP_AWS_S3_REGION, -// credentials: { -// accessKeyId: process.env.REACT_APP_AWS_ACCESS_KEY_ID, -// secretAccessKey: process.env.REACT_APP_AWS_SECRET_ACCESS_KEY, -// }, -// }); +export default new S3Client({ + region: process.env.REACT_APP_AWS_S3_REGION, + credentials: { + accessKeyId: process.env.REACT_APP_AWS_ACCESS_KEY_ID, + secretAccessKey: process.env.REACT_APP_AWS_SECRET_ACCESS_KEY, + }, +}); diff --git a/src/utils/AudioCompare.js b/src/utils/AudioCompare.js index b229e215..562e3cb5 100644 --- a/src/utils/AudioCompare.js +++ b/src/utils/AudioCompare.js @@ -1,9 +1,9 @@ -import React, { useState } from "react"; +import React, { useEffect, useState } from "react"; import AudioAnalyser from "react-audio-analyser"; -import { Box } from "@mui/material"; import { ListenButton, RetryIcon, SpeakButton, StopButton } from "./constants"; import RecordVoiceVisualizer from "./RecordVoiceVisualizer"; import useAudioDetection from "./useAudioDetection"; +import { Box, CircularProgress } from "@mui/material"; const AudioRecorderCompair = (props) => { const { startDetection, stopDetection, isSilent, isRunning, audioDetected } = @@ -11,6 +11,7 @@ const AudioRecorderCompair = (props) => { const [status, setStatus] = useState(""); const [audioSrc, setAudioSrc] = useState(""); const [recordingInitialized, setRecordingInitialized] = useState(false); + const [loader,setLoader] = useState(false); const audioType = "audio/wav"; const controlAudio = async (status) => { @@ -26,7 +27,7 @@ const AudioRecorderCompair = (props) => { setAudioSrc(""); setRecordingInitialized(false); }; - + const handleMic = async () => { if (props.setEnableNext) { props.setEnableNext(false); @@ -35,7 +36,15 @@ const AudioRecorderCompair = (props) => { resetRecording(); }; + useEffect(()=>{ + if(!!props.recordedAudio){ + setLoader(false); + } + },[props.recordedAudio]) + + const handleStop = () => { + setLoader(true); if (props.setEnableNext) { props.setEnableNext(true); } @@ -64,6 +73,7 @@ const AudioRecorderCompair = (props) => { if (props.setEnableNext) { props.setEnableNext(false); } + setLoader(false); } else { if (localStorage.getItem("isOfflineModel") === "true") { props.handleProcess(temp_audioSrc); @@ -81,6 +91,11 @@ const AudioRecorderCompair = (props) => { return (

+ {loader && ( + + + + )}
{(() => { if (status === "recording" && recordingInitialized) { @@ -115,7 +130,7 @@ const AudioRecorderCompair = (props) => { }} className="game-action-button" > - {(!props.dontShowListen || props.recordedAudio) && ( + {!loader && (!props.dontShowListen || props.recordedAudio) && ( <> {!props.pauseAudio ? (
{ sx={{ cursor: "pointer" }} onClick={handleMic} > - {!props.recordedAudio ? : } + {!loader && + (!props.recordedAudio ? ( + + ) : ( + + ))} )}
diff --git a/src/utils/VoiceAnalyser.js b/src/utils/VoiceAnalyser.js index 73fe9bf4..a0ec7b69 100644 --- a/src/utils/VoiceAnalyser.js +++ b/src/utils/VoiceAnalyser.js @@ -34,7 +34,8 @@ import { filterBadWords } from "./Badwords"; import { fetchFile } from "@ffmpeg/ffmpeg"; import useFFmpeg from "./useFFmpeg"; import * as fuzz from "fuzzball"; -// import S3Client from '../config/awsS3'; +import { PutObjectCommand } from "@aws-sdk/client-s3"; +import S3Client from '../config/awsS3'; /* eslint-disable */ const AudioPath = { @@ -165,6 +166,7 @@ function VoiceAnalyser(props) { } catch (error) { console.error("Error processing audio:", error); } + setLoader(false); }; const getResponseText = async (audioBlob) => { @@ -385,7 +387,7 @@ function VoiceAnalyser(props) { }); }); } - + useEffect(() => { if (recordedAudio !== "") { // setLoader(true); @@ -599,23 +601,24 @@ function VoiceAnalyser(props) { // TODO: Remove false when REACT_APP_AWS_S3_BUCKET_NAME and keys added var audioFileName = ""; - if (process.env.REACT_APP_CAPTURE_AUDIO === "true" && false) { + if (process.env.REACT_APP_CAPTURE_AUDIO === "true") { let getContentId = currentLine; audioFileName = `${ process.env.REACT_APP_CHANNEL }/${sessionId}-${Date.now()}-${getContentId}.wav`; - - const command = new PutObjectCommand({ - Bucket: process.env.REACT_APP_AWS_S3_BUCKET_NAME, - Key: audioFileName, - Body: Uint8Array.from(window.atob(base64Data), (c) => - c.charCodeAt(0) - ), - ContentType: "audio/wav", - }); - try { - const response = await S3Client.send(command); - } catch (err) {} +const command = new PutObjectCommand({ + Bucket: process.env.REACT_APP_AWS_S3_BUCKET_NAME, + Key: audioFileName, + Body: Uint8Array.from(window.atob(base64Data), (c) => + c.charCodeAt(0) + ), + ContentType: "audio/wav", +}); +try { + const response = await S3Client.send(command); + } catch (err) { + console.log(err); + } } response( From c1859e718f1a3c72c0fe25b950f9478669f67e47 Mon Sep 17 00:00:00 2001 From: Ajinkya Pande Date: Tue, 23 Jul 2024 16:29:17 +0530 Subject: [PATCH 2/2] IssueId #223075 Apply Loader till model is download and stored into DB --- src/components/Assesment/Assesment.jsx | 6 ++---- src/components/CommonComponent/ProgressOverlay.jsx | 1 - 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/src/components/Assesment/Assesment.jsx b/src/components/Assesment/Assesment.jsx index 8cb7301e..66ab9e7f 100644 --- a/src/components/Assesment/Assesment.jsx +++ b/src/components/Assesment/Assesment.jsx @@ -67,7 +67,6 @@ export const LanguageModal = ({ let db; // Open IndexedDB - const openDB = () => { return new Promise((resolve, reject) => { const request = window.indexedDB.open(dbName, dbVersion); @@ -157,7 +156,7 @@ export const LanguageModal = ({ try { window.whisperModule.FS_unlink("whisper.bin"); } catch (e) { - // ignore + console.log(e) } try { let transaction; @@ -828,7 +827,6 @@ const Assesment = ({ discoverStart }) => { const dbVersion = 1; let db; - // Function to check if the model is already stored in IndexedDB const isModelStored = async (modelName) => { return new Promise((resolve, reject) => { @@ -855,7 +853,7 @@ const Assesment = ({ discoverStart }) => { try { window.whisperModule.FS_unlink("whisper.bin"); } catch (e) { - // ignore + console.log(e) } try { let transaction; diff --git a/src/components/CommonComponent/ProgressOverlay.jsx b/src/components/CommonComponent/ProgressOverlay.jsx index d5fee52d..6657c7d5 100644 --- a/src/components/CommonComponent/ProgressOverlay.jsx +++ b/src/components/CommonComponent/ProgressOverlay.jsx @@ -26,7 +26,6 @@ const ProgressOverlay = ({ variant="determinate" value={downloadProgress} sx={{ - height: 10, borderRadius: 5, height: 20, '& .MuiLinearProgress-bar': {