From d32164b67d2dcfdc907afe25f628d0f0a3905da5 Mon Sep 17 00:00:00 2001 From: mhdzumair Date: Sun, 5 Jan 2025 23:37:46 +0530 Subject: [PATCH] Add support for showing parental guides & Added feedback streams --- db/crud.py | 47 ++++---- resources/exceptions/filtered_no_streams.mp4 | Bin 0 -> 119005 bytes .../exceptions/inappropriate_content.mp4 | Bin 0 -> 71602 bytes utils/exception_video.py | 4 +- utils/parser.py | 106 +++++++++++++++--- 5 files changed, 110 insertions(+), 47 deletions(-) create mode 100644 resources/exceptions/filtered_no_streams.mp4 create mode 100644 resources/exceptions/inappropriate_content.mp4 diff --git a/db/crud.py b/db/crud.py index cdcec85..d7da58f 100644 --- a/db/crud.py +++ b/db/crud.py @@ -41,7 +41,8 @@ from utils.parser import ( parse_stream_data, parse_tv_stream_data, calculate_max_similarity_ratio, - create_exception_stream + create_exception_stream, + create_content_warning_message, ) from utils.validation_helper import ( validate_parent_guide_nudity, @@ -525,19 +526,16 @@ async def get_movie_streams( ) ] movie_metadata = await get_movie_data_by_id(video_id) - if not (movie_metadata and validate_parent_guide_nudity(movie_metadata, user_data)): - if movie_metadata: - return [create_exception_stream( - f"MediaFusion {user_data.streaming_provider.service.title()}", - f"🚫This item contains inappropriate content and it is advisable not to watch\n" - f"{movie_metadata.parent_guide_nudity_status} {movie_metadata.parent_guide_certificates}", + if not movie_metadata: + return [] + if validate_parent_guide_nudity(movie_metadata, user_data) is False: + return [ + create_exception_stream( + settings.addon_name, + create_content_warning_message(movie_metadata), "inappropriate_content.mp4", - )] - return [create_exception_stream( - f"MediaFusion {user_data.streaming_provider.service.title()}", - "🚫Movie metadata not found", - "metadata_not_found.mp4" - )] + ) + ] live_search_streams = user_data.live_search_streams and video_id.startswith("tt") cache_key = f"torrent_streams:{video_id}" @@ -577,21 +575,16 @@ async def get_series_streams( background_tasks: BackgroundTasks, ) -> list[Stream]: series_metadata = await get_series_data_by_id(video_id) - if not ( - series_metadata and validate_parent_guide_nudity(series_metadata, user_data) - ): - if series_metadata: - return [create_exception_stream( - f"MediaFusion {user_data.streaming_provider.service.title()}", - f"🚫This item contains inappropriate content.\n" - f"{series_metadata.parent_guide_nudity_status} {series_metadata.parent_guide_certificates}", + if not series_metadata: + return [] + if validate_parent_guide_nudity(series_metadata, user_data) is False: + return [ + create_exception_stream( + settings.addon_name, + create_content_warning_message(series_metadata), "inappropriate_content.mp4", - )] - return [create_exception_stream( - f"MediaFusion {user_data.streaming_provider.service.title()}", - "🚫Series metadata not found", - "metadata_not_found.mp4" - )] + ) + ] live_search_streams = user_data.live_search_streams and video_id.startswith("tt") cache_key = f"torrent_streams:{video_id}:{season}:{episode}" diff --git a/resources/exceptions/filtered_no_streams.mp4 b/resources/exceptions/filtered_no_streams.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..5d89b1f6f229573842dbce51ad599bb420b926e6 GIT binary patch literal 119005 zcmbrlV{~Ovw=KG3qhe>rwy|Ry72CF*RK>O`s@Qe~72CFLSN!swbI-l^y}z%ug)#f+ zqmQZ8+G=aA2><|q=B{3jRxS>90021PKliVb)yUn1#m`aYZ zzc@9}P@kU_>*6P!hbvMosr1Xh6|&1KPgYKLAOq0E!PyMR@?|=+G4pT$jg8FA*qNEX z98!#51SWYUaY+Vtps>2=7t_?t=_-LEtvk3h0)U0&i0Gr;OJ`QVDG{UG%+$ZG6Aswoz2WaY(P^pV_OFk z8xRXGGcPmH$ll1-%f$@D?8(NF z{1xN0H?#!obaGWZH*0lGSy+1gsUd|BL{+@>b3 zUxta39f3Pz^h4)$gsRu*~|7NEJ2i>ra7i;b1ze;EHQ;N)oFU~cYW<_cn91-e=~ ze?@!=u>x%!9Bhm%ze)!G1F`~LY^_YbD)T=8Gtl1ozmk|(*%`V1ry^GNu4c}*Mqi{a z+}PI5*~rVl#KF$d$n~pi^3_MK&PG=DUlLzLXQTgc%$<$w%v`>D%h&vz>1+jkF zMy5uN|7nJ?fw7g5%YTwsIh*}g!#vEaEG%7(zkCjkX7&aa4vt^m{{|huLT${vzO+HC z9L)dAG_bR>|0)7qOw8=fOx#>S?9BhErnAw1`qbIX#qulM*~H*~H}^k&XA_W#vpLYt z_^V_8)2y!oh?R|z8R+z%#(+55&(esKL;`R zc!v)k%?cCZe`8=}0I&oAcqjm>67cOBz!wMx3xJ9TkOcy|08rZiQUDn0{|WwYA+SDh z)BnN{F(LoIzW+Pb{~sF`4gerp5zZvB747~gOZ`7-AaEN#jBllR0%2bmv55JjB^maP zx9K~-FT74MJff6w;$8ewCrZir*RS%|b{H8(S)2_KcrVd`%vVeEYh0am|1;}k~PXzX_Ais^%VUA*zh_iFvhi}*__yw$zY{IV3B_?J{;5~g$o8h2!^Hap}gl7kl zX6St)poU*J3>ZQDF;kM^LN!KsozYz8Zz(HjznyIEQ)0VOd|>BUDH``)(6$}SvYz{N z7{WFOqvWDNErE3N&f-pyhab0au|QxGB^c2J;l+UCW(R^0vU0TR$5UkZ%kz$i*@Kc) zOA$1x>J%vIPQrwvIg+H6 zGEaeOsYP^yOlcmN5J%;} zvjy7gu*+h!MJ|7%%f$R1Eyukr!|3lK^5l#DAxIeM*W^L=_zZJG|L2FS9aLQP3B`+* z@Ik>$EiwDR3`$G#FH#K7^>!Qwm60_k7EERl{sTl4LQnh{0}nKcL$DQQMc(LdS4FPy z0=%F)r-NAdW;Xvj9eK?$L9IMhs3`nHAw{48$7 zph{d(m>_kkjaX#l^O@_hj<-d@dX(v#HtEr>EMSV>CeWME6fU?6)&xl8gkQGqP;i=3 z#CjAH&U(>I1HreR)Fvl}Bm!v~y96{QMK`*7U^SCob!EjDfwEC8K+u}XF@o4VOjAwB zHhy}rmD#!K!oHXg78vc3AlviexvdF4xAzxG`$<7wFozxg3z~)q=gFNGLmJIc!F?$+ z`bUU}KtOWjVU&87a;huhxaLxMnxPOTvks$VIT0L_QoEO<+LHC8d36dwoKbnOgSb0g)m>bLPO+#G zmACqgtR$A&OWyJ(uL+KbHfKWrF6TR%#nR`SsP=?d|G$wXj!+VlA3rm=6EBwQ^UB6; zpbJ%D#&!**a5yWDu1eMAOZ})C{vG#PSiiNBtQ{;HT&WEOm}K+b7w8!gH?mW`#(H8z zV*81~0Nn-_YR;S>7hBL(N=Yy+FlIoOFz+-y@WmGY?qbsh|R5#c`nE;2Rt*14Y?L2i0ebKUNOGUVQbP_u@{NLORQ!orG*S)yKp!~C)hAeUTq7G52f3yom^7P zDMY-cJU1ezf;EpP4%T?>H@#;CYhQUCg~!F}%>6vl(8n}JOIgJ5@cWflj?>;moXpfi zsq}Ztf0Hk#hW=9^DjA&RlQjw>k|CXwYvnwR$Al`mVi2=4Go*ns!~Ex!fQ>GqB`^ZK zry%RB2hBMeU-3>PeVOw0YRl80o)4ZCi8%5civxqsx7jp%v5+*%eOmS@WK2qlfA9~a z({4IFGtv;ey#kFC1G`;nd{%#2A};ANgi}n6m7~-+a}Q$J2$YVgHPr-kK9L+~3V`y9 zN=YDPX}%Cd>KO!YncTT#xvkt*G?I!Zn}qxp;wPY*!}-XIaSiZYr(`#Es;?#JTWCMG z1E|PA*pwi4+f<9X9il86utbi0vTe~S_q18mj0(}JB=hD(7%zz^2XGaWyrv4-k#=_} z`pn5xH@XyJ7G-ZuzqU?2wYeGZxoM!@IlVu(XmR!aY7ilS}a1P8k! z)(#E$+-;0~^nY}O!K$VAbu<`0jgZ%4Az`vK0LpugA*h5Z{}q%A&ga(*d4I5CDd!C$ zV9;eXQPTZI>2deo1kkZ;t$3+oFy`Lkv+QM_psM0-qMe@D;^J@(;qvZ z3oi2v7CSf7O0vTu>T(Bcd!`YwLQQ|JX_k?&7Zt8c2WD>N3$Ddd|E`llhf`Xs~ z?_n^AfT0*V+Bl0z`fn42<3xUQ`pz%qRpFvlG-{OrWGg-uLx(AnAQaqbzriW{OlAO4 zZ16tQ&sQSfQj|lRPu~IlW>FlWq2}XFc`wBTD!255rAN+bTC2>gc@L8^d13dt-Fs*d zl>{FnZpw(T*>fyP!Ld8r6^3p*a{My0F&g+_TS;wFmAwkQwZA6Qa=cf9d~>8X~Yg@N?Kb((Pn)FlH2=OurPy-AJuj#0G6h;^;$sQcRO zxN9?b{2`MK%Mfg<<%<;w^b$;V2vhj=yM?UF*^klGkNmZx5`%b(D$x; zOG`ZBo!AJiX#K=Jly!nuPzuEb8ZFMa1$NY9u|p9G>B+H*FJ72>@fZl3n3{q-SZXIU zuwRI#YJ@%UdQYzBaB_JPb}m)5?VsIcTmxSQ>D9x7L|1%fz0Z1e!e(0TOf?*BRTSgELFwOH_X@{;!e#bwW6<>z1dsiO zdGm?yq4v}*1RIi@wh|eBql&2>Y}s&M2|L$| zM^wOOkMTDX`!Vg7^^M@vX$dKu6!35fls1Fcrfr_5>tEwh-@extBqDy|tD!DxaeMfF zXHOrvknCN#pQR1MrvdM8Oj#q!0?p@Bl1>NU#m$cVrRVwl&Oo!>h;JSMayy)e6g`V)k76H1(dVz#o7EQReXnG~J?<4=PAb{jY5cyNm8p)f*-iucM3R|H z1tGoF#&sLPwS_(lp@klU4ylQ95RQFN7Cds zN@E?7G457q&rt_Z#>wkvEX?9d4Qkc*e6hMNWj&>IUi>Id$b`Fs_gMRJ_>_znAkWD# zBRo>+=LnMyB`LZyB8{zvJ*^;=TRPO`gwBcR=hE-@5&sU0*-1D!nyVzE8u2hBEA-#7 zH3xFpo8$e6gnP-7l~y`8X!=4y#(mjw!}$IXX&v6=UShaz|5R0yNI%Tc=mD1>KTN_1 zer-sSl^sE>L4Es{tfqtZ+0T;c^;l#wP0ec^dII;znf<4URC<}@4W{nS9bdt!$Tw27 zlY$f-TNpdA_Q(C;6l~?v5aw z%JD1-EoQI=nz>oo zfgetbTm+*wru}8O?`2Zv(t5jN*{QN6oJDzNFS;9KkZhWY3l$u>B3f+gd~}DM{U`aV9EYjD5XqV<1XE)+7;v+ z%{KnTtH-6xaOd}PiD^u}3KPZUk2eNqfhwcS?=3{}?Ne4i=GepSq~8o|M=V;$Y%8A> zGq}e~vHh5;$FmS?Lepbse}2lQR2g9v^h_P%$q1QXcil-1!7ZH zF@-D_p#gzSOt?Ivd1f$RTLA_Gc$5$a=Qj>Yi% zUFmH}vH9-}%hn4^Zxl7swHM>ig+~_8F#Zqfgwc&BQS8qf`4g#_RnQ!na}(}DiPlrY z5m;RMTJS0bu?M8{09`H1dg|aQj@DmJ<|AAS>B)FTf0t`DEnoZ0YJEIcBKEj2bG2RB zXk9iK(0#s(6}qZ-4({2j371gXXmK<@FozL}b+}0)OHtCUmm+N@IB^+B^0)b&Dj3MD zk!4`5w8KXP;luv@JnViGr3h3vzC7P|)%jj`i|@yPwZ`Tm)d!w7LmRUsF$89ax*HXg z8_RHZGL)w&2dM~ktNRmw?V29OVe_9)0Os)s%Mj*|bB1TzxxXEiYRFAxoH+N=tP5uW z4=?IlD2dkqHhdSvhfSWtOB^8y7R_%|HQmT@HViL4kNRg1RG|@Q{E(5ttrf~PIKyoh z1XfvFJbZxdR5a@wFotP1-E|3QD{Kj?l#=zs(KK`E)<_b&JpwCkRuyg zny0#|pVvQTN}D>Oy}s5SbZcK*Gy#RM3o~ev!Ay-L^*HzF49a4vJ-R z!HfC0)1r)Otj#HR-8#=H@DR)rEul7hdeF$z?Xz@nk5T?M!To-5R_M)Rx+P!x6Wd~K zyMa~>Rymb{h&?`fadz!6^pU_lDzm-plcnG}GE0HR0YF1g_%TE?pmpwPSB4$v^JhNJ z*Lz68JUA;(h6|~yrc}FSVBkUgYF67)lkq9iQbT%}&T(u;TSj?$WL`zQ0tx137P-Dp zp!!leUWXk;4mwOxU4y^@`(beMk}yKk20O|bRuWN)V-hS*IQv)-O0zO$kMra{&aj6< z5G^g_lEJyA-UOMTkoPPIvH z&#=y>kxj~#Xn=$rjO5r`yWxSu0jsxB!1HY~vB(`?0^Q~(KeF!m`#wW*E>eY5d%{d4 z%>Bvlr&?3Y`b1NY&R!!QLvuK4!CuHDvdep>*E7E6F@{4_=?M&&^Y)`#As6cXMSlGS zS}M%C$@0zzOdQ|7>_xciHXoPzY-%zre&9n^z&Ky!xolRqM?u>`K zbkgH3>$Wo0%k}+;*Y-r|neg`koip-8h{`^Gha6guGThMIaV$%}KpeBGGlD5hIA-~f zn~g!_qLv?sAOdTOfBXpZnpR;ZV+v-KBjg$JZHVAS5$V!DmQyH*>-H&hQ+8_W}7aRkk7Pn?s(;&3hKpbmZRQ2k@Iy(3nVSo?-nc!m*QXR6n?L!*}aAC%Jqv2B@=7t>|Gg7HQH; z^KcEdslH-^inkePMPR!I z4tNYwRRTsy6*VUzm|ooUYj~&_MGtkl9~lhLBzSt*X~=qEjtCRNC`sWt0bIU4;lDDF6s$LEt@20x~8YO5>s z&L5;5@Y?`7cs@+p2Hn=W#>qT%cDT4^A8{J<$7GCGn>uuNNSYQ6GYE_fzo9h*ur}Cw zzX!d$rgo)}IEw)p9wgs%xX8TSj{z5RBq#k#Ir5O$c=tyrf+IZGdgE<*VZgIa7994X zlc!w^*CDpOc&4JtW(q+(S;B*0PA5E}lSV{o4-1U}!$8k{Ymaidt9NImvphC3qHo}b zN|aKF#+!ItIbZk%lB`r_j+G!>2}p8vm?h!&mW-?ti(y=ZU~pOF!ZLYZyi3LPno>{- zeTQXl0B7z?sS}>wTThsfa9h4V8t-{CUch$@qz-BUy(jDByzKE5EgrVri(y;dDEC-U z*!e#U>E{Bi1%h;JALA>bA8S)7yq}(!?w24`WYpU6W-(yxS!4HlgID*r1 zF0&P8pc}b0;_xGcI~2H`GqK>w;D3g6(JQ$oH8e~{l{2r1Tpguf=7v%!KkzR|XRi+) zZ}vL-I!*jQzm>ahJDbAGXeWe z*xSH$SY|4Jd=Cbub>g)#jo`h_{c@(T;a#cf*SSbQ*@ohjgcBw<3OQYAmdwvFX1Lbu zt^jbZYX)KI1J2euU&XmOb2T{qLRXa=-p}1pGKkp|gm%QYnq4^<(V&D>92Vy-VaHSE zOksD~bdKeH_HieFmr8eeaO~8KGRSRHrb5%aE_YVK9YXci(+Isn;U&Vd!z6WODY8}^ zAY!E>Tc`%pMegv{G&-UJ!_!F$rtw1b@H|d{v_%!qfEo1)JQ-x;^`xMNq@mAQy8k?% zK{#WLRpX^x0q>Qp2Iagv?+a}yiGa<;MlB9$vYq;Kv0CE{x19yVwKoH<)uTatKt}DL zly~w$vWTy_NnHqIq>AhTadTUS>bT+x!XT7wU#DllO+xUup{R*5d*RWx*4I|Rh%zZ~ z!kE_Gt-`NP=g}|`*hYTvE@l2^Zmm z2U1ywCY%&eRy3UDv8Kj&b^--wMxbTY-+g{F8&vC&MWqiMyVN;r6oZ+K>Z4cfZ=d^w1DZIa8(pCpS>U}1$|JLjFQulwy{oiU*8eoMI#@*hjumk zY&e=4c58KQG9rt>v7X4m71JClthG#L{;u2}+bg+=A%EQE*i4bQL?fa+ni$Rs{h1A z`JZNT#Kb0So7tZtg8RRlR?y@x{pnc{casd(g4*-SLfU}gGHdP8eu7VZV#@MA44^UY z!oyJ$t^j-NA&U!yW+_1YKNb#PF*V0jK3OBVYrPNkfn z8Y6^bbk(xihIz1;b2lT;53|bz>Ac4zXFmO&ucXAoyV$XSP#p0TuA_K(cWj|^xNMd| z?02{JT}DA==|ecuuTJYY>Mj#)F>7l?<*RE0lQ%be8JqWVK3Fpu-I*F3| zq;W3CeXc#`H^4*i)TD{R0PZkI-Tg zeI(t_=8{{N?GN+>^4%Auh5permruDxoHyM_6D2&8`vlq+RM%N1BAL(6$9V>x z;*yHo)mY^nskbQg&Lc5`AoT8!7x`3q;ERU1|v>HMg z&ysQl3Kzo@`I!EjB<2cvoIx4dW2zMBdlYz$*A2pRUc%<_?6lAZll1&SqUBll`td`T zfvL#j&Z07{ix6uN>iH)^=%DBPM58v7M5x;zCacPj?@imLJ(ue@rBZ|+Nw`AkFL(h@ zW&9@=@4P2-=TZ3$1es)7iu(MLvNUMJr-d3v_`XNh?V{|6veT&(0=wiKETlGu2kxDp z_ptRW{6JMsiN(23(mIhE6^JLJ7)Myla%KLN0F-$$t*LqH46`22UplO7v1+C$E;~hJ zYtOHF>vN|?bCP=VThW{SVO3tx7_-AE2|r&3I?Hn_SABq-F2Adj!1Lg>;7Gz&c|U7( zWBKb_Pw1 zZ8)==rA{)?H0jR7;l>qobUXwf8N!Q{iuAaf4f|M(H z&j{&mC(jVclN(~P<2n*0p?{Ls61T+&eHkq&H zmCAGd>AN5S7|ThreLe4-BQbFSbgXZK(KY9`0dd(;*;g#AVoN^mb^D8*--v$jrfoC{ zRsG{s8cu{C8Y8BQO*m)zWEkd!u{Tk{TR!nAJj zFgX55*EfuZjUcE3g02?Pmfi&#DT(lIxL1g-( zS$?(jh2ca@@&B`mjjIFzV95z*ic9anijp{@3;77igWbb=eEz>zy0N%^gP|PwTr&piI#~j#>fj{UQ@}2V*|-1>`@Ej;e!QN zlj>pJ&_7)&4z=iAWNmNc$pV}X9M)M;j$#X!4Fl^5%*zG@>I7fxB9WL+e8IR>b3UnV zj2#N60-NY!?5v;l7(E87B#&4BKrNV-rZ*VdDYSmBV;Yg0CVJE^7alR5J<6!B;^t?K z*u^EoC;>0Vp1(~szD@=HL8xqQ9&E82r=W}%gub$xr25Tow#G7uG57Y)>tvhkyBMl7 z|I&g+`ICTvKp}=vqrTb=VDn4Fg3}HG<;=%qPM6sKuF@sCzP%vS9skqxljy})J{e{F zQ{3-P0~_9Tlu5}ko39x}))J0KeG%|ev)*Qlc<8eh8va*Mf=YJLvXR(tnFJgYKO^ie znQ4vuhh^O@%U|b{t59Cw138orE|+n;P?d4Y&Yb4H66V-_mcLxc<};+3x>#@E&c%4eeF<&a^)G6MC5!4nA2>W zciH%aqIhorlC!4r+<$AAI@_hD+vN!VzVYBlB*aIuz!iuxJVNsHFPV~y#Y!%17akVA zx{205tJf|ny6o=1Run_c54=9-MoO?32A4@Cv0PFX@@7*Gi{8P@%2&R8KL!U{vv4OP zk0NN7Ekdb~BP8ocO*Yys-Un6v!*b;cL8s3Z$N6tFY&N z3&5^DRvM#ISN1c})eFdi7ttiLl6V}!(OH{>ZDXsC$oO_uXEUK9_92;hPt3K_-l)SZ zb8m!XO8IX{J|jEc!yWAT9hf=|L{+bSKQZR*B!snLz>*kKK3qn(YdSEbZYQ@xl?(5sCAextt~*q6q{-;u0F88;Xq)o9CB}%i~4LbtwmcA z7;D(6TSB07_ab|tO|B7vR~P9+2BbBC3v7@fEZC~ZQ8tTdOpi*DF5?hv!os3_w~9JW zl_xQ!`8gAjd6v6^U|FgBcvkVoi>~2EFey?k7bM(XxqaDzYYS(SPeDX49SNKpNf4#E z9c$&+63yb;xN9(Rb{*t2wMdx6m83scN9AOI!*@LzWPRXEAfBkW{gG~{;6zEXPSBX& z1gzo#9E700H{6kyfAhesVp>4kHJF_jSe1;FUeLuM+r9LmH@ipiz%UcwKqLT9?sCb> zEH{*2xSc1%Av5!_t94Z`Cf0CaX-)iHoUaqkjJVzo)Zg)K)YY!=GGhVFL1GkY!SKW=OohQs8h&dIeDJeR{o+1=nJw{?aQn-+6 z%#DGlQ6#08Kg`--E&HFvIwW4Rir1?<7Kt0cAOmR!5On<}vt|eT2|&ZoFZ9%7(SsTi zR0^NixVa!9Sl!2l{%kaKbxT5*P5?rc2U@i)Xm zj@^(NY7byY%V{~*Yd9NpeL$wid<=>@Dk^dC$gT=7hFC1YLaQOD=MVWglrl z+4*#3CsXaiKJ|U7OyafDGSuI!SB@T?N>|g=jSNAU{O&*dsLK>kIHQ-+@{6Ctf|IDs z;f&G+E`Bj5NzOgCm!ASSHZ{Z^xM(Kr$ZuzcGuQ=j8v zO?jFW$|9Wx8&kc$>XZ^q#M44=b%uY-LM!mavzK=T>4a3$>mY(502C6WD3^{C3l4SA zpO=Z7rk_!pCOE8GjZ)v@D*baQ;Qoh^)+NT{q8>U&C`K3aX?!g~85WQf2>o~GPe;`F z*DDb3PlvFGrX44v;vqrphK$cp}%V;_5DQKc@l@%)vf)d?&zCg+8EJHxd9UTBhr;TO3dxTm}>E7SMFN#M7><9ODS!~Mm1}_c- z8NIC3jc-L;D9uISk>u35P35nmC^G$bWJlv~ESo#S)96GXy!x`_QEkQ8o;Q|JRyD4e_J%4}%cL?jSq!_qQ*gz-V=$}mNmce?l z4QEaqZo&(QR;_WU!KfFVM?{qsDzomq#X9BEY5l@HswH>19f$j+RDotdpdA#)Z^=(& z*N0Bhnv-h<6`q#no2Js2Piw9-2Fn3KB;G$-G?Qx6x3&EK!S|lA!d32pB*NfHT95H) zFLby`nL18C**Uw5CA<@dL|kcef@8n`{A(ik_AjW_b69lo!<>d-ioNv8^Ny6;0;kse zTZ=C+8A-?9b-+yJ5Zf~o)EhrmK4U2(9+6@aZxFmqBfreY#{3L5X;Fq^?<9Ltbt&Y5 zV|)5MRy!34hEu;5KWljTM`{pPbrr{ipjlF^MEz$d%;1>YYh+0CfwQYxvY{xBey$q< z#`?x*NG~N3T~2PL5)zTOBi3S2ZL)sikyF^WxK}X*5c{AG-Q@DT*XI*-E@NT zqHGmU6|+@x>u>IDZg*>#xuY!+oJ@=tV1o&7J+V%CKt62~C3x4>t;qS#ma$90PD#FG zGP*j5;<&~D&F53X%KBNgrXS-}YI%(s^-G!GS-pzvy{?gZJmdrd^ zu?eheri32@Zpiau`jY18l(a3+VEA??^fR`$lq!C$@hOtgwT&i1fY&e(c{Rhh6FV_N z?}67x@|k{&lHm3po<(ezVh<5tuoc5q#FR8K~t=kA*=3KpAg7k7^hSbqjK zq-u$Q(_MQ#>Lm)sDL)ip$!ZT%by@+9&#no_O&%_BoKl5968h(l?}S}xsERK;O;l4Z zhv?DdT2%viY6%pkM8or!=6eYW6WPp~L?#PdE(rzg-7E>#B`upi)+f^opw9p;i#K?K z2Q2kDUjYLC*DGz@ZCj4~s>nV{`kXqMnPtpmZ9=iS1Th1@r`+zJHr8_jB|+};F%}*F zsuEUFh~H~|9}h|-{~3Tgi5FI}=<=GzTB&dqFW2ePUVMW*!1d|lyy7crA`CaGbC#po zjZwH0@$)L353@=tnaqpD4x#)7Ch+dT_Bw!;I(Q3m^jc?~=D&S|Cj$$Ee>T+#W(R4z zp`U#HMoGRbez5`F^3F2)r>s!%OoaTXIG@4b8yTm_rV=Ylanv!XGy-i#TjCB4o&4{Q zQpa(W@LvSw`e?{1jA&9&yLwETmQ>z~wuLFsAne~6hFiL-Rz4A)T=r<9KRHVGi}QvM z4}Ue&*Qp$H^~NZ3lycCnJ7=CPR%lK4XYFgv{3~q~ z?Nmcg<$iJyO|NkcJJaMk@0pbINyxPm z)Ljz+z-qM7FjTk8w-sWKCCP>^7Hf>nRQ0t6LHYeGxc7s}<`?zP?Pw$%Qx1wNy1bl< z1I>MyYw^z_EFGa%u+TCob|rlFG0&T*=+gKY|HVO)Qsr9INE)HOo~E4_Q*BV)gkIhTQsQuBT0zA=;jV5b!Chyc=2jEIV&?pHP*UjqhAQNP5in_=?n zqjXV-rd19dtZj-oiS~OcE>)41F|k6cI`ck z!aCO0D1t??s-jTTza1OOf23#k+zh-%E$UHRi5j&5URD3C;72#L=#azhEHZaqNSgEr z5{_wYC{tM5ok=`m1u0&s`x8nvvqNk5X8>@^YVNl4Ma24U#MZOMX+`F9o4RvKMH6pH zT-Dd*xCHbh2be1`GXV-CryasuW>j}lz66}aB8ot!mcZ6H+|T9Ip}oi<^}ruLQm_X! z4@#FfvJxC&g{b4Y_3T#Eq`S4Sg!~6@FBUcKp!x`s!Ha!74gn7aOpPH)0x!mT@Cb-W zy|Bx6H_3y?%T)L!JJ26b7s*d`={d^sX?K>G=7rI-MCCK>^4UcVJP$!p!L8LW4QEfo z7rRZJTY@S$-WU+<2;%_3)8vi1GGlCGx<|)J*Zw=ePXI%T=M- zNphZnUsA_{c;Q&B?PYy=eeB|NCkl@bBA)TCu&g?H@NewhnC4bjt$R)mPQPp8Oug^@&`Umb zZNIg9;6#|zZv38=#~&n7(0e8>aH1FF7yCrKZbj|kXhcw|R2Nmw^Gvwz8ZS8|6je#8 zBA0m{$#@j4h=SXP$V{Bd3Pt2 zo9#y(OpA_c%EiSx`spY7-s%tGsLqN{alS76id_CdH+h83sA8tBxzB;xToK(w?T`bp za!hUW)6}7m14K=Cy-SHlaDvFquoR9@(=8O?5Y-{ac^AT(9nKK^Aqh$BK^b~eqV%Fg z{mY!L4zrA0B&4=WW>6Px0j2MrrsSV>nMQL9f4cgj z){`hVcVOsorAZ8{Q2ZxK&eZd1nNma|+lsB4bEbeGq3)kxtws$IN42VQSV!L}hMczL zW+|QxP8R|2wMm+QC|9SJPmI_eL)~~e!#cQ!-S^9XTzNDKWAl@oYgW}Fz|9c>^DV7_ z*yxde*rPuvMp$ff$wfTiDFXYHO$IYA9|Rp77|f9Tkn(w|`c4nC=n(eC7@gTca0g2e5*k|3r%vOiO^I9^EPNv3sCpcFhp*5X@lUhb&n~h-V|KKc^b0d(KNag8oW(WJ{=qx?-$mlPF ztVcX}qtnhti%y0P!fDCrv8`HIv`4$cGBBvu#{c|60DIslQN9{&QPp3;jeqyVvurfm zKK!2NG}o#h=P|W{b>pK#|EwbD730q8cyv!QB9)h|WmB5OrEFOOv_&Af6ZZv?7eAG2 z1ZtQlM6ac4axF^Q%De&Yg@SN0uM49Y$>WS4d-}6*I=>r3NCy3YJfS?um+*}P1>UFp zIbV|D1qt&woW!$2cLzNjH8|&Z$NJUkSR|NYB7kWkP#*x{naer?c*CPz;(_aaDP((UWy@&XmPi`zpTJpDmIxy(7sz*)s96+{PcKV=f+mvBQBBpr_8<`b&d+x{TQOOMcXlz^r zE&jdbxxnOB$B`M0bo?!C$pz>*kz%S_-2yNFzgMklZ6H?q3h%*^(D^JG`x- z?b6!DSFWlRa>jv_ySv6+Yi)kvaHdF2V=}U-A;-Iwb#g_-8l2$CSzG7E_zy^}tjf=t zh&Nh@>*D2FeH!)F#|gh9{z=j~+P0_qiRt;;niiaQzsU;HhfbJz&=2+di~Tucd(}V)=&RrF`;btQn&cU9@xQInio@Ck) zjJk~w(!E{bLC!hU&(Vd3J_UsPs`~(kqkibXNZ)7OA$j+{?m2 z9#{`6DYQl1cW)_l4};+$;JTu4-{OQ2FQKLH^b0Gy0Mi#Tu;4(%UduA2KWHWc8f;Yo za%~@Ap9mfZddfx~G*JO@AJ6`w3vT{nUc0QEvNQGo6W-X}@QV=wyM*Zpz&c z?h#KIIi9fP>UM7#Of4`drNbetnx#3ERu4h<)XH7k2OU;aINfL;)PrRgYvuRsUcybl z8d@@;Z4swe%!u7m+Q>xFT$cJ%;I{fyo0SEo?2kKJ{tiJUvkj4j_IS)hJQZL>ABpy_ z>bIaX^4Nn1bRLbSn9Jg{q2zCqD@Ivhl4r{d2nA=)g5M)5k8cdt-BM9?VK|L*N(=Hd zE&n>@g~|p%)HKn=M!{YrQ?Yc6T$wLMoK?4J&IKg9QMWU~BD&IIyhFP2DZVro@ri6t z?rXo~E}e9=9r&6v#S=Di6y=iyOD$bL`@AR&AHFAWXB1&2yO$t(6wc%}z!pCL z%%<)Llo!vMk?*n*m@Um}PH1n}OIx5!1L$Ctv22ZN$m^j6 zCG=UyWO4*9Ab!({1n)VihD9(Rp)})Y$9$CH7z9R}nM2s@+X-$LWfD_d=pMW|8%L8f z-Tt}9ZQD~rQsQmpxwvGwuxid+Ngiu@c!+_v8SPdoLY5e97aVBM|4lCy0#~}{`2wU` zvX=?T=;*?^)b<^)h^yosSH%@$@6Vss684l|8m$ehrpx$I@(rOM*_ZU4FKZQrlr0eE z3Z@~t47@L7)N_SL2&g<0SF=k-Z4c@NbJ_?u6v=74cJZ~nm*x`UJB6B{mA7ln<$$bc z7bG>e32aLwWNLKntZ+irhqA{W&axgwTSA3KoU-XO*D5d82AGO}>VVFDs&qfv#20ua z(U-n^51%)j{j#l1KNs&TS(}Mv=_ow*Gv0q~^>1mGE{+|4l%l2B%SMZKGxYSRu3#l; zi%9I3Gz$A51qtmKjp8oMQZ z4LHm+qs(L#sl46!7r$^@5x45~`}H)E9oF-Ad|=-IL5DwY)B@zBEt@QK#t<{QZo;Zf?h&+mLHaqY4dR?-%;Rma+W3!}cF)C5Zh#%e+ zNf7g?B-SpCd3&J4b&^g8@su4Gd3iUc?=oJi;hn50CO5Toju3Y|e#Mcr zxp;Qdb;<%DoK!g`V$p*kb_fQ~k>x4Ms~}-`P?Q+DO2)!Avt{qdGA+wAJSwqQxPekt zcv{wyP)423(lCc(PHvjM#OQq}{*XdFac8b2IO;bUWacfGf~PXbQ3ZFpABCrRa`oxe zLpa{oaPAHq7J82jxe!x`M5q3Huj71`5$HJv{Lt9TQV`+CWty#&ZsQ8#t8n?))dhQ;=&ehz7oWAfKcm8i0=9s3+FZ@I}oMv=<3wgEO3#I@ux$dD>dN43GNs0_u+HXPQrHZd*`^{H-hFu z|3FzD$WE%IqEwlml3lmadIuTOQ-!)&I=UVDiD88*8&vL2(xNCquh5h0f+GZZgH(La zD1ZBPl0KH@U-xXx`%}iQ)S2K$q@{&Mcul9n^=a!!0;>h z7a!V1A4MqQbI-Ecwm{F&|A)P|jH)Y3yG9SL!QI{6-Q6961b4R(+@0X=1h)`8xVr>* zclY3Osjf=DUDe%n>+Rd$8265wKMejb_c@bi&1dfQ%(Ztm9kF5>ujW1J{#gP6Txg3J zak|O+mx{o1yfz;ENF0_nnsRl5<4aWVGj|Gp;TC#H+NPf5x}Z@!lOLV}1OUYTYE9Gy zGYdr#Y3Tpa3ps;Mdbbnha;J7r!Z@;Jnjb^$iZ87p*@4qRH1Gwe*WS|-CGN{i1QyK{ zh9E;?{(?xogevo%SmFmb?Au>mPw(%%5ir-DW9cfyo@}OTo$;&WB2<^0a!8#EBDMoY}= z(GxVDNE}J$(|0DNelp8=(*e-AHo*F)G}faWF+rswVrg%__v{vR6U9YlOs#!vjkXD< zTjS7cpehOsuyKS$TDz>VM!L#NZm{Sw?#sWz}0JzP=9btGk+8{SWJm zt2B{jL0I{@$M)B?j6zru6imodPQ`|$THIICvk2|LcY5Z1A~k1XF3u$)n`}V9{VAxL zba>!6t>x2hya%+5Ek^_R&44*%ef(nA9zAY?%lqA@H?nGIl;Id_*EP(b1Jcs-zw^b^nPT`^u_%t8q`v~q&odly2QWXy*TNr^e2GHy-UC5s{FeIM56JL|iYG!%^ z;d){ktKjX&H?6nn59U0UPg${5WZ^Qv?X!S8-y5jl_@HoXr7Ks&oTI1;%bK{Hvj#0a zYB)`^09NYMrd~tw5-7{U?LIk#;^9O3PGCAI*g_KiHjW&f{^BPqjKnl z=oGxzWKrUfi_HWbo=7s8`UDu93o&QRCyeE`<_QM zP_KoAwP|`j!U^UXafG%mqRaa3G!xALvka6&VfPiLEepHsz$B^>2G_#U2IKk1Q8TE- zft|**`2)XT%e3ob^%ZsS<4I(AALgUj z8EBI`ldv?|h%RfYh|j8IyZ4p4Jqt*h#&+Wvz1V$2A7@9hO7I%;hF#bF z5Vg@qQPYzjIw|CO_l$BWFT8Hpy2f zL6p{h$6dd*N*+~mErxb=LyN&ca*ypoShw00-2Z~=pkfGCWvs51l2d{0t?~iS!BrJz zvs5?zzt5soab?+w$N{wG3gWQ=6R<)#9#$ zGM;>?xZ~#x8K2NbaKh2NMp7t(oy8T|xkGqpk-IewQ6!LquF9(zB-p0=8U(BMgQXpV zZyukGw#?h^nMKrh)S13RKJ;jhcd)hoY#zZ{1EhIpyjX z6sh+W#B4v{z_woDWPq|@f7i!BNDfy0Gtar%SNM=w^rM^_-)00^W{y^pWnvn<$7DV|7l1=20*yU3>Dg;niuK-n=l8YA<;(`A0yW0G? zxp+y^c2fCYZbD(p6%}Oi9imsbF>@AL)G$#fUJu0Je*Z)<3FRR^IK(!Ni@xcZ){0u< z{0&zu*I&1{DyMVV^=VnYu4>8PC2(@wPrw@22&X@ziKyN4?ptmr0(M`AY+8`- z!iTQDyu(y=6ejGxH$&$$k97}6p%1zcc`p+#A_>4TZ5o0FTLD0Upgvk_cZC;-^-o8X zOxP2yE#)6a(t;@|P$rTc18rx__-u9_-l7=l(ie715#PV-Me*Ad)eV&le}1tJo;;Oj z8@>|Av>YAs7}y7XMtsaoSBva;BH0$L%601zX3($n5 zn;;r%ZQD$(a8A5n3hIBd!pu6SIGjj)PL8e4sH9L%)w3Z()1A%I|T~HMvOp(*Z6BAdKjW2ilTc`C*M0U}C9Hq(8 zww!S=OU?EckW6ZA@+DlgB8++Fj<{Z4Xw1#Pp}4Xe9-OTi`12=uLS(b1++ zfV=iu?5&VAY&Fkn{wF>!XAscSRPO3suLv=06r}??V90$T74jURJKrVx9#B_UIXJgw z3OZtmwXl@p4>2baXDFIvrqFqYCdPWYGvt_UTd2m=WA{$1o4=-_&+!SD17 zEYdbnOEVs=q}_zdXO{t4I7uK-LmouO-tx+lW`15?tk1b@a(6+7J8kts0ewyaB1ULb z^4jhO%t&p98k|4~DFL4FPXxoXVjadP>yCnJ_gn~*Krl@Q*kz++hbLR{2aihC{5RNZ z?J*1ly$H8?^yw8j)B15K(M{Rla-iMZe5|A7CTgB5ty}=T&+7;%1mJNrC$&f^^0Ygx z18R$x@ARNkh;6x>Nf`JB6C5$svS1QbndadisOdD^cyCCcaWy`wfYv^SZbok13+&>Q z<0pC0<(YN3Kq{79h>h@WYh+#`qx&=C7*yVQTI#`dtv zFPL_M#^4M7{J=Xx?&*^DNec#h@~n!5I(F1G^=W>>%~!HC0MY=_ASx86;Cwb(rc6%zhw`4GrY$S>Dvp1uK0%M63 zx!4n9Zkt;l^-u6eV%41ZDAEEUk}$6oBRyOC3r4Ut`Jj$xGcdZ*A)T~Ev)Xu&@`&=HBm^ma& zs40RCvGWzNLS;iU(A6_ogz9y;4Ms-7G-zj6B&m{-TQ~ZWwPpkN|c*& z0=c^{J7Z0R>p^KOcKw9(r!&N9W_J(o+`>r zT*`{dwEOz?!qHf<%vdv+AiSMj^4ie-J#0R=6$&jiO}aadmu>?~#f z{KZTn%nQuHVwZY#?OsUd6VUnWbezN#Mu0Wvr_vXj9%S+zV!pIQW%fr{^>B5#bl~gu z?=Rk%;%)|H8F0x+omttU*nMO^J~Z(Q&TR5pN5nf72G&l;Z}1+JtDorf<2k^6tuAo& zHH_Tvs#CS;T_;>rzRpC(Q|016X;OE<;aihK)g!Xj;KDdR;a*N$m7z}LlJ#KTC5FZG zGVZn^MObrx=nu=!Fex%fgtg@hziK4R3koVgg#whe?I{Mz`iHFO>tpa&ZWaGGD5J_Y+!lV7VJ)k@OHJaJ^Y3G0k~qzhaWqXs69a{dAHXzWna+AFBd3jGn_RcfGLkI~DW&^&gB z`v-=50U!4jOLQfY(~NEh5o}|je+b^|L`${(RZ#T>vlK;HWd3n82-wpS=8d1TlQ+}Y z64$%^f^{`NVvKV_CkoLt%Gh#xWcGNu!C|q2jC_0&$ixLQo}hK=R2&gJ0T3;Kz|d-_ zt|bYB)!L8iz;V1@L=h;L4fgJLFIw69Dd&l^bS@7jaF}$w~oQ7*`K04 zX2A*O=CBi}JHN;^N8yR3`hk8WD#;?1Wb_mO;)9x1vU`Nj{(%YiYJkC11=C!9owt1< zhZ0Dq`Qx|^1eK3n0PZ7U0ZqGReNuB9#qI|lQ}AtDjG!|Mj4~gi@~t9TJk&u%9z(xb z+NnL<2mb!K6TiZf%aVpT1%VHP>e@?(>Yr&N7i!(QR-faymRTB02baZk_I2Zoko`&! z-cfZ>^eqg0pT#n%!cDr-rT0*#F(EEem79F2`f}gy88WsM!9Qh$P{J#$gibbH44Jqy zK6sXnb&D(}vV5bM0+FONPNLl=Jr2VG_O#DQ8E(5%Z6>@;Ts^BlzZt)3z`f^;gF`Wg z*TNkS9%|Zb}ALwe6=Q~p=@5P)**NK0i#n4}Q!D+nm=t+Q; z!(j~uzX_C<&q4NjT-^W_-7#zNiJ}o4mA_5;qujSBQZ~2hUfy>I1!k7(5i1czA7zmh zZaJ1m{XJE8^t-`A$JLtnQ}k<4fKVJkA$ND{StY!rhCXlIW)OMie^ClP;X!nhi*Uh2 zu20g>q&@4FoToS$#Jgo$sVj-L<$kVDA!<34o<=`yATv3&c4Q}?Qm~=+4*az2j$n_{ zY7@cPFaUP+#y4oxqNgNVya-GOb;~8c^42KE1`MO3C7K2m3J+ChxGyGF3;#5e3f=nj znCIiR`nQE1ebTUDQ7u#Z@3#}7yN8Wu0gom-NZl=^{-GATUZ=dmG%|W9U-i(Fm$czS z;8-V6n{g&kZ>sa4WUpz%KDTg@<<9n#SaM#10QaebhXe6BR24px6;qRHJ7<%8J>Dqe zJwSkW_g( zvhX1|3)G>Ob~fm18fFRxrlhQ9@%LQx&yjZ;%dx~T%PfbaUI6|%2f*z9@FwQbXUa8Cc;kB%J#-*WB9Me<0<;dfEGDryWR_}95c;w3tL~-Fc3w@7dX_VHi?hcYMrJh)-SB{^znl1y^ z=6jr*v=qLPpjON{4)KSG$7x2BH9bF;jJx2ZUFJHZ4@bzou&F_xX6N3#03V53pDOs& zk|PF0WTWJn@C?WfKsaN#vLQ`F3S&FK=6?*J=JWyh4mK=oqWut7%(GXm))dT2_`}En z*fVAZi)o0_FO1tovf=1p%O3n-C9Tl9PL1HJ1@qt)-&2b@zkO^LpE{thXh`39+oQ8-!W}2WpC_M-n+IZcNXF-yAxD9wriCTZk{2+uOc!l(}VBcAG)t zP%<@l=RG7;xS(P>6p7hJ12*4MP#+^9TehlhfuK0qIv~=DHxx@yn?%?iM+P73WjKH| zrN9^X@TMsp`_FP;d|pyG$p=Dg@N3e}SxP~{UX!~)VDDHW6`sBr8 zT$SJP^htgTb(IK=tgV0Y#BuF#cMSP-$k#Y?!1V@p8uhuHo`K>19$|{pBdAbTewaR2 z$X6wTiwHUq8TOH_E?fQzyvRJ$k>xHcv5t=tG>>B5Gy5>#TEAa=tr!N8jm7+-OhwAH zE^4tOy%(2|#O3KTB<0wht6YnOx+SGxDsso5+9g}5Q6g}44SQ)XzoG6tt{$Dy+Gk0d z88pbC-g<;BJM%9e3nUd66@flLjIEj5Z7ln2Pm3N``BgV%8ra3{ia2DJb&G1nZyqL9 zO!WXd@%ZKM^%-p%uIRXF9fd4wTv;twsAbQr78<_aE}Ft+z%(mwu!*Z?d|u%OSDh47 zf6U;qk=s|k^W{q!^|^jhXXFbU(1&dmHkd5;Mpii~kY^}=$Ui+vX^*TB8=87foN%X3 z``VCojuDkv%(ad>C>|~g-eCJ?)dL@Wp~fDXh(pz&sR3^toX5G951b+#=!M#@6` z`alEg?Zj$%$))rG7Fb|OYyPGV@H@?0eP}e}=shF*Q1<`?jALN8+c}H*x~P{!wwqQW76Ny~aJsTNVk6r_~Q$akm@E?}XBz`5VlVK&vh{-mq7jjCUp) zC#0(JMBU5UT%$i3My{5^!BgCl(T}+P06V{u`%p7jRx|pIiECm|%4bZ1AFCe(g!)xb zG=Z|_elIAmTNgH8-V&uWJI{L9pCC!c3Dl9Jy>0-dz>=1GX34VgFr>Lk0V3`gyHE(~ z_E*lvc>wqV1P-i^bGEU0GOvd9*H{|V2LJ$QOE7I&avfU9n1OKhpH#(CkfAInjWJ5E#Q{bhb3Z!>G#^1Z>XKsQeayDhfY`pZ%JN|>nB4Qv6YKRcE3 zsPIylx9}rSCV5~xRQ}9`&*Xm7KH^2dxt^=k&S%kYH3|)8vV?>o`*XvdAc5nyI68#( zRFq>pqYzNUSF?UVlim*6NhDZ~9!J2#I29B@FH%07kqT#QN27!_ z;FB3@POqpd{l7Zj$X&=0pI#>x_lg~*=YolfWUsG)@dkj&dWD=zoDt-jcE?B0>2HFw zU(J_Vs&#v6#oo1MXz7IN^AR`YSegn1c80(>dw8W$w&t`N;bld+!qT2)apscQy-7t0 z=aUQ;e}}wBOT2G5*&So@zF{6u4$Cgzng@Q3F_{I>3Q+7V1LCc{FK|+w1YG|sUBXdI1TG~>+rl8lP8K#Y< zT^`++1D2-_Wk}cz@U9HbQ7>MXgp6BXxI`)a*dgvp#d$ie#ZgbK;cRC5jGU zL2wR7rDcDI9)(x?yaX50dpR2KhYQ%B+!MP1`y>$CR=RW*jPVUNdE)fj1u1?j92Xsq zj2!hE)!SUO5LB6OC@w>PzbrV->t!{7GO_;9VxNmLsY>u6p|c7*D4jPPM4)=%W8Yj9 zg0Dsgg0HlG13PQr7Hthy{wTB;TiU0qdb2+0o|ji|*#6Ka;q#+(Ed*b&<$*GBez!1y z9}j$Sn=G$<)=bbmkF7(4{40P&Bsx0ySe$DfbMv06^lsVr$1eT50Z55gcBFLj-ZWf# zKOn*LUsr>hU@DMgk)TK1LJ{Gm)x6pY-tnTPId zQ@61CdC-kLowat=mgJ}h4I+2J7MShti<4bPqQ!m~7JcQuaOn5Fzb;|CRed!ZVt<@W8B*Pkr=a8@5 zl+xv-pW|f(d&vAn)eyBC<1!TI+MpF|!&a?f@f|06VSOYh%|dIa-&x??f3o38FPo*{@OLFIB1JBkbAwFBj z+7I@VUjMZKW5G=RKXH5P9VCIfJ*ZSw2fz%5#oUU!19(*g<>H;fQ!H@qVO+| zvM3U?`WM9rme4s6bFVxGqzGm1F1&}oJi`q%*$9y9`F^<6`3jO-J2Y~i#g82`# zzkl@5?CmdQTy(+?I~KWzcm`mbt6vVPfUaWwZF5yQtc-DVWJuHne1hJ*OFgkO<9>Vh40Mt1ES1ylv(f9l}dja`8E&%|hH6{;9q3&ZyBfG4@&fgM8%sz z!Y7?~r-4}_j2{pHMSfZ`8U2plhRAC_J_;D=uV3sB8K=J&od>_coe~JTbq(?8SnOLb5QrXl`YntpRtfAdxt zzq|rTT`-IOuPnU(sFt$i{*8eBN41ot@b9JT-!Hj;Cdubll2rd!Bsu;cAnCVCiv6#W z6#w5L>9*%q<`;Q{}WC6n`Ql1F5%bPydOU?eyyZei}l~{Z@-cB?@ZPIQj>lo z=}+v`|6Y^+t(E#g&#&_Rn{fX%$MnAx?%zoI{UNabr68BD?cKlBq^zGl>CY`?;U=mo@39Px{m4_R}Z*^-B7= zpY&&%^wTH(6KIzX$`k7Dqrv&c5tE8X#q`#m^Kl4d{O484K(qC9^ziQH-B)R`_ zKKUc*_H#e!=YG<^JQMI5cK_*<{>%dW^htkNlU~o5{_BHG|2paRb3f_NH0kHu?Jw_4 z{+zr0=^ppbx!Yf_q@OJ_ zvkr*6<#grv3MXRr@A6un34WZ}eRWM>s&#nyHXvPGTz`8mGXNnQ09yn=%m&b|0XzXf zu>c4J0De0l1pvwdz}Exx03bB};jjN@yWj}gDlJn!_)x!9I-k(cjEb#o)T^2_Xgjmh z5XIT4EVM#Cr0rD3Pjfqb&^`JJ?=aEaXmFuTvgtwQWPP`!Hap>Gu78}tGc7NtrWG*j zmz<;ddDrE=xnPeu>8O*lhFj^jK*b{?pOft&*CCLJM_V zZTobGLU;fr0+}Jd<$`?42Ear%)&Drp3ZlLQ{(e#q6*NTYqt&~!-8_{5&}efk>Bf=dnjNXEfaQEH3e;K-H}?0vImxM830C_zrWb z;*qg1$k-9zws$vsgXCz{CVVz!c_U5>iyZ<5 zIcOE~BvFsnzQicSn=}m&W55t|GO;C+i4r;q?k}A}E546C!R;w{pEcwfaZrO1+7)9`K*zw?_0J|od^Djxsmo_0z|3@T{j z?V_NAmMGUM$>hY;pse6esfDi(%HxEX%eIk<@}^!Bsf`mw8?hnRDJM>D%F(<-;g1l1 z3QMksiIvcWNRleT%bS>>BAvB1-FNQfilq4D0i7ix(LSr#2kRCodbMGgmfd4%oKqr%DZbjPHRbtb_?z6%XXrs%mnOp-4<(bO!w ze9kHgN0V>V2gMJ7WHJW%g!~S{;m8G@){|cqoXP|7%Yi?UbD`saWupYo>Ew~8HP8v{ z4YovUk_T+oBivQGM$-Dh{Tj-g?Wi~N*;s)8bMfAa2v8NM`hKp^wzdZU75Q2#+DL^{ zVA>nlI56{iA!ek0)b6k1O^J6XMY2POTrG6|XB-W)%=I}{x!yv7?`{T9J_<}X*TX5I zY_(Sv_q+Kr1$obZnSzsTC)Vk<%Uf<$=b4Ye+?4*<3MhM_bm>}49ct%Wwq!R&hi(6& zlE=&_%m50-3NCqWeQ8SoN|pGIdKN=XJ^w2!tVvaNJL3_BJ0_I*cQ6u5L&d?7)X#Jn zZ|q>G5?PargwXuky1iPfdf<@DgOZ0?(-;nd+KX_I$>%>|N8ylsPX!tLqeWuFr4ocEa>@l6OX(4JK#x7}`*Vv%@o3K-U4#B6Luk!N zjud+qcs9w?j-@~?QG+@p3B`9u5!wk)@unXLGL~3q9(f%oRcF82@#=aKZb_ZI*Lp8! zbEXrsgj~oFCPy1aXZ9R{_uZ?$*cxK54#R0wG%W_AT7QymcsWPeeXI{Z(3$pP%@a&K89wd?C)q+cA`5U*wzBu zJ3mslXR-ASvJ(9BV2i19}AH9$~v z44#lM%EE8qAP>7I)8^%L6#z$^H#H<@iXTN=K(X)a9LZ920qL4+u~#y<*!bP&Vn8P2 zI{Wsk^!?P_=MpWZ_%m#f?YhIXS*&`?u?F7s^Ix=g7by>qJ@n~`b?zvKlqHAL1)>Mw z^by+pZiKH_zBBR3_0D3I+j8o58}UE_mE4s`lx5NQZ1#bD)gHoCHJ3mo6r=-W$g}7# zD(J_U$tEjjc-M07w;4Oq!QUkhSihmWlU>dn!fs|7l26+o=EAwzw0xf+b4Cii?)yNV zFW+}~V9%H4N&OKFGX%Jr!{xdM!EVDMAytjai-B%u&ayJf(qBpT%eAjDT=F}@MlBZ{ zV}q`O&;oOrQiu=Nfgpw+UfAPxk65d)f=v_>2GikQ@}zm_V@*grFe@|MU8+k<%S({E z<4erAVTjo(c*(Q|lC(MBk24Lz=|%}8Y~#2k4X|iyse6PHh};b9Gcb!_u8hOF2}&ku z2&~?sA<3hT;I#4KWaRR{1hHIg@&yH2cy!~t?Gj9r;iG`09c*Q*aMH6%@cA;`o#nRI zW%-TRBtvmA4Sp%I4(u!@eezbEJT<{q&W$LPd8}g%a$4rnxe^6v}|E|dFkbGm?+pmSgc;WglPsM=_#llmsv?Gb zK8bK^&TYz9qe8I`GS3kcunLhlA|B4cS!)+;r#k~>z=UA#P6psPnvTN_HV8(>%u z#Pl_9C+k$@k4I@;+mV&EZee_@c# zFSoF!Mc>kG3fLHLCGQD#3EC;|>@o9pU((9*ZH9tRm(#q%mBC^%*b_(4;(FJV+zu71 zBZqYz?Kc|?_nrmXuM+bzXD(A~QSTrfw7_g-jN+u!_&Q`yv_7+OAb5SR>|UI{7nkFDOBv4t9 zyh&Tk&dZ`f=PH^=cq2Dzc@Ye8}>`F(9v2&rT_{tS4&Z!J@E0$2O(kjXPhxY}5V$zt-ph zns7+C@i>fLi372`B+M#rchM)JG{BCeqYedhSp%cN^xG;MhPG%W)N_Q z2+A@ox{0m9Z>!Xi6!nA;LN8r8obf)^)T0Dlb@>_;NsoX0;?+VXr{!?6 ziT0!-Cr)ttRZS9ui9))!1-G!*Sc6Ai?Q3vxfp!{`B5g zKRqCA11&Dt$|x7&ay6#osS=lfI@?H zJ+yM?R^48jZdP&S3Es5qfiIs1+1nikl{2DS=kD1auYb+)&5?KAOHK`uUR(+t*#|>Q zz6Q?R?9K=wtO9-qeuWiduZ)7jOsni@r~@SK15bQ*L*=Zjf5e2XKp^zN#<@-?t?zlJ zIan-;%Zb?i{3sH^${_Nt8*^x&80#zIID&V7p(QnXUDo3An5XI9$ebQfe?Q%~{WPsp z%+7gLkVGQ>AV+zxeE+kzBKpq;(i@n;LZ4{lr5jnikg8p4{mZ;-5<1oh$W$A;pUgcB zeHkJB2g^CEvmScet-^$Qai9a}r<}$vhMNofcy<$2I7I-@fg3X+Z@O0Y#`Wy8F$Y76 zGnH_9fk$4Tl5$h2uGe)G-h;6-V0R<6EraGLW7km4XB^o z0u1w45cW2PdCw)_60X z{dv%|Q=_&bAC>s*L(LT;o-^JkJAUaz$fwqPJ_X|`Q^H}C}7*_ z4ahc;?58@S(3|n0WRJ5#8)cuMy~4KYmU2rM;U3#j`%o68oO}=reVh5@=}HMENOh9U z|KYY+$(#wv)X9z75B{B}fOJ+2)wr(|O`9xk!XQyT|2K8o@TnK1Ab5_3K_Mb(h=G%? zX!>K`QCQ0Y)NU!b>K|grHG>&PT#=P4v##b0}7q ztgj8Qi9;hM7~Rs=5oc=MK@vbOg8sd7a?BN=T*D*%8 zv3_XPbWm^|sM{CF|=ORXsFuK7!?2q>&w6 zbL^Rp?`g{sJ~=0EP2~(j;wseMvF5cd^o4J6^DAwBAx+C=lpyIBwBL)E2}*RUW<`)9 z1|r;e1f)hGF;YSvwkJBQo&_9G-lV|{oSKe<%{t1o1RU{(--5N$X*}vgXlN)I*v>0% z00}@xfw9}NOFceC+h+R~YILenA)tTe@lBP}T!~?Gr?=HeOKYTZl{VO7Urb;3ggCtK zH0P~1ctWO)6S;prL*g_I$PdtKyw6Uy2*)z8Ns2{?GqS(m#_cVZfeweD9d;W-2;|X8 zc#hTt~>!e z0j%#Zh*qyh_X$t=WVL}l#uj)&WDZ%mywZM9YtKlgq0Ji%ym+_}J(<6joNk{mcx$Jm z+3wKogCz>Ecs02V;tewYYC?)YHuL5h4}ySdJaQ9DZ^>JvKF6_{IW@O4@xfgQ4XX$s zDeO~ z5nWuKRiAE1cR966lFC-K?tz+q|h{hvk%As9HSSrXq|A z7aaTCJ*pot4g2NQzQ{|JVl$L#Tzv|0Mnp1%wiiQ2%i!~hJs21UcPN7xR48!U^+tUw zC*DkUWFCggqXr}aZx&r89U8pUz?`bqUOrr`>pkD3jI1u1vGu+)@Ro$M?->7LO1&Vn z;kFOz;TlD@S<|8?D#w*)bNe&;0u@R{d8#Bawm)?#Mn2LBZTmCMczJI?#yY5~zVmCetNt#Ag?$o^aV5!1LKq)wOSVTMS@u=4Z9K ztUXZEqxYm(+Ck^!Bpky;d&B3UIMS>u+s~t(7v|8dULqM8qW!<5u786XZr%o_#N+sq z(2|&-&#sxlwnhIL9MSDMU7@-MBNkB$WiNjfd||#A=t`c6c^adc%K#a~jTH;*s%vr(e<-ABDNBu!}rEOx?=9Xz)ohhGrbT5r~k_$MP6#4GpLkWhC zYSp90=3{KtVvGXkHH2pW5INJ+GzRdp6yPQHEhp27GXM3LI_13WIJFjEU+!SXdxXlh zm|f<)kWi1!!zbJaFwnsQJeDxlNe(bRxT3eWd&>-dOzx< zO~v{7nB?bz6Glm)L(K4QZ2KybS?cvBhg2I90^5sZJ^qEoJi(3d>Y=zo`(?6 zSp$jbv4&0dQ9C}|+o&i_h9Bix-M>5q%?@sOexjmNh9n2Sr%rM%q1W-ok;at8#-~c? zZSH1CetjIK?#y?*?bb(J3FfP9)|2cG!j%>84LKe`E_EA^uW;TegI`J5ACE2WV^RgK zKAn1k$a?RPyB5=^zI#5f#>JXIE0h+n`(*XJ6YQIGvKvi<=ET4xDXd*9HsNE1j z1Uxn#*vtaOPjK-)V#i-*1E)|F94X*QIar9`{T?2o&no{=KcY$TutdcmE!Z{v=k#j+ zm}eDH^)+4x;+Mj&_)Hrf3&%@zhAR0*CN+@xU?%4T4rv+3wA4^GT?%LbJLosAn21k$ zIN%`6;uD@XNzY!AoplxLMjOGnHRdMZ%95W7Y7$z(xZvzE5RdcNAYx?V#t%P<;TJ}` zV~LN-mLKtc9jrgO02|!q2QQ_y*3X1{0P3Tp#&(~B?ik9V&ve!iU&UXIWsIsHWR;Cb zGt-B&2vLu!>lDW@w70}kKi7rv*$m7`{Q!c#0jH!f9%8=GSm$fnSH(TcUE0jJeTyQ* zQ?x83`TYndJF?>lastIc{j`H{{wsM{mKee}_g;&g>WU{>BLPM9VTWKDC$Y6dg&mH5 z*xNW9WxKSv)X~TI8~p2yy!NukWKW-zAG1VFxefe40-8|Nes3o8%N%U zmzS3Z`bXWlIE`wkEnub8HOy0vZ8m^(*Gf`Q-&8~;(|a7kdc=C_Y=d&}cr&b80?+NP zcOkZy9udg)xPdHsOZ%kQ2hjXiDp}G8Hb#u!+{CWk(xucEvu;@l{2Qk4T>UIqR=lt5 zc7?!|IKg2T=7V|K6G*y0NQPBx3rODIrcznQIL)Iob9ACYA4+cSMXJ~A1c z_ClXU?iHj58S(XvWM?UTK5$jU&J4w?GxoJ0vjls=MQeOhOmuHmktVxqWh;03`Gb*+ zrJnkry_E{3)kj2sAf@ytCY^yop!I`Z9A6YQQT-=6vzs+{yz*({SuYmEk6bV3pnI;^ zfm!ncyouKp*D-RtdyU~BBfL4b81+KRP{P%(&wFQc+COH5vMet}y&5lodZ(oTTQYH40Dz2H+Vw<~{gg};zPJL7k1=Ki z?vV)y zATQeJCqzZ4#=sa|I%L>3B|2R((Y^1q@goRmy=jRe(>5NxNRM`So&@F+S;}fs1_Fkr z{D43M8n~b_K>g@#IkRs=4bgTJPGM2g%HzMK!%2ts5Xm;L#xbk=I^M+M-*|{MEUIqd z)h6?%i5Rz!oJBlR_mMvJh-oIN*hKpfK5Zj~tK@^CvG1j4$OgJknBU)9;L|rE$V@t* znJQFrHK51Nlm@hXbAD zAFy)wLIuE8Y&F)9lZb7gbN+Up?J()XG4mVDV9e(C=|GiBjiU}N@uCx}FY<%Utg2J^ zrpFJD4t&ja1TY6SNheghROxuSO%JdyVE8_o;B6ra?ruiDot7p0x{$ITRY_PBr{9qh zsu8lP7T!pJpay#g7%&r7sm~ii;yX8kH)m1RT+_gq2BK+YtuvOU2x%pFW46dlSLqzZ zbK0j_B#`zJjxGAoh%@KVY}t7%-iqTPl5M8(pr#g0x|tT{6Yv0OD%;16Y*tmTMurK< z)xcBJ!|@w<^ZK5Zv1Z-9HC*?exZg|zWP9x4Fu^agm|jtI13gZFXwdn7MG16tlXq1QiSVm z;+)RA=@@xPVy|7{5k+@g%v#feiXtFg;|ZYWKU$wzHJEqu^8a7#y<>Ey+tw}m#U-%%{I&&e7)>v%h0DnB*JQ;M!s@V&2fi^+);KR3)pOGAKL^ zBXJXu96=DCr2e2&qkbosR%(ipe;#>Mq?SlgycbWWa)e&g49e1fZeLp6vH<-QI*1fB zc22_e1K~Y{(uBMdaD3967>KWo1IWlk$pR9esZ2#o3bJ;eav3Y`VBR=^5inu#o= zwZnMH7lhL{tr4AiHcDUD^8L~ep3*|z4O27KnURYrN8NhX9+1hnY7&?RrKST}ySjAa zrLA>-w=zJ-*wfe{mJ5}&z<1GwgyMfSe+GVVHG7534|hme2z(Jk`Jgu2_dEq*%sXug zS;Ja-og>@Ik;Y_T6E9?1z*C0#;~1!P&<}>4xBpt+LG&Uhyoy*`U#8>Yde~&qmknRJa+nR|@wu%V%sO2x@kP?}2 zj%+`F6<|P=LK!!s40ZCUYdXl%qibm?dgEm;y{A);$mm{d5Nuxo)jlG)iY~L+TBAA) zty_~?glTkn%PdbfaxD6wRXggow#ontSdl{}+Zim#oWmlFG7b-xje#aUU{GQWAWrU=lfusl8pZ@i>nwXXP1 zZ63kt@zvp)v>Cyz`YT*st${P^ZsuhWu(|RUO``Nte`V*4FWw>NJRj)j<75=5L@8$L zv@OYy9-CMmH8_tr-{>x$W9%xC97yAumEHv*IhUP%NE@Hhh`a(FE$)C(MIC{dtxS-8~HlM74RMYQ+13`Ee z5OGNxq4s6CM)mwIZdS8)0+Krv2_>QJP3@3Z3o*`$pk%KVxqhNi%4#&Innfpn7}yBf zV~qt07d*lVUDWk)v?nP7A<4%}8K%7Be@LkH51t1@PZ+?%!V#dbB);aDMpoGcTEMy7 z4%%9OWPkKY%o-m37?kKzI18uB!0Sro&X9@LFC2ii0g`XryF;TsK8q_V?kXoCUC>uT z>EL#!!aoj`V2aamwhqek0Zpo%f)b@a$J6XJKVns34Yz)GgI)tYe*NGuLGAuI^;s7# zdX%%3+4uJOb@y2xm@9uUKaRLbz0Yq+0g6*T-8@pIj%Y8YWH?tGtgT~z04Za|;#xLTvNFwrpL_ncY#w(llB1DjF_A)#gZ zX3kKvq!f#0ISiS>$j2RN>HB+4+jx%pE?Sk-UA6s1;`!eDA`l*q^@YNFUcfAwj^8+O ztl_Ke9ytm`V>=d8Zv~USd}eb7LwXT6E<{XB8V6bM{nU7X1fLo9SyI2e2Ca~_xQ4lH zh{=_mhwfkok4xs{t1r&?2<5pA*=Lnj!jzc@#~=*!dl7OD{uQI_I61OX74{a1DwgwH ziqbDa=Hazs{o?JGMVW!I@_0&^qk}UAZEvpf9)}BPKo)2v?pz$?#qD1hVbh)`wvYDL z^TtqHqvZK+=ius)9vY5xeO@8@ar9y#pa4J_f|ia3Mjh$8bc2d+msfIZGNi`KP}w%Fy)1yy&L_!EgeY< z_#^5_q?I-v=8%DIy6IMEw3&{-n z{G-4=;$eGqQhz-}y$t;>&yjqb)Q`H`Bvb!sz_J5w;o~{;Bc--*lylI%YJo`Fn|bs} z&BD#u+WTk$ufJdA(P_t$lygS$l6~kv-9vcw-0Kn$YJC_5MQR+bx*=;;wcGVPJMVJS ztK<$ULlU$LpUse1nx8Drlq4u!tf3~qs+9&47yeX0u6OSJ660=pK8HFIab@#rD(~8D z_1tR995v3l@~8p(m6^z;XfL@M!M@{T4+Eb@{GbF6tas|oj5U_oXYUIzz5^Va;dI=iE`))y7*+e0GgAA^f8G_qWmN6ZtT zoR`Z?zeb7eWaIB_{E`pY5hDh=<5kHh=74#Z@Fp|5$KET}&`I(Hc~>G1V@KBJx#;|; z)h<20QML3b2jRYAo@agszL0;!|0a~B#JadgfHUP}7lDjgZ486BJTMEHu^DVlUh4Xx z@%&h$iruzA=@82`cB~!tW1z(U0&a6NEN{h`$xFhZ6bip3N0UPp)ocq)v){LTm&Y-B zj5s##hYD;VwvlJ7T@e-HL0p7w0);;BS~ECX#)pjs|0$S)T4U+QKJrXMtvbx22i*)C z5BkBT0#JEHpy#Xs7JkwIu1o9{APnVgN>ITgmx3bwMZi1o0o+VW#&z*9>w*0NV`YK- zs$2z5aY>zba_1?j8+GPa?j3Cmd}M+Cz3}M=R@$V4eD8~1QUhzoz)LIQ#pMrf5m6AsWsS}~Jgv=k-yHJA~O`URfZYLbsln4<>D_$r7PkMb-o*F8;3 zg!rJMX5z>)-9IV113R9F^f7@%YpL)7jGA3q%QL$FaRz`y`Xl^c0j3Xqp)| ziW8wRKk4-Y*OT416h^?WmWzu9;WEtcCoG0esf`w97VP;YB&VZQO5Xy4Ts zIRfk_uT33CeMc=2>(Rb;fr)*UR=1tqVROQw*;KkVHM6BU+rtsf+;od1{^b1gC4quh zavA>5v}OELi~d&G<(+-}9l1&k4d%|P-405PXHKmEkk`9TH48a!e(LK_+<{qU+N+BF z$ZyOC`fkY%G_bP{ZN0US9FRGziyFhNgs+S3z$Xf|O2^~)94kXISdGHTlg{dN#zYK_dqgOI6L3ejD`r6k=5&_;J}AE%ORx^QXJY9gwDg5XEC>=jhsu7 zrTGM`ORPxEn~Qs??Y5!2_y|<6yoKJIfr@QI4V$?eST54X4$5Zff z^6dyQ6&4nw+F#@Dk~7T(5}4?TSxX9+l#6~H6}SA<#_2;JE|5waxlGCa1+OBp!9x{ur!CIBO*GQ%wQY>vz zA3mQ8I`;av8kB;|nicX7Or8YG6o6teh)HUN8}hK{t(wiCG^ib6IYr{II_177Z^L6u zuWwhe{If>McbkJ6tfBUxigpWv>tpLGo(s3 zqKwrC2%LgDC36Pz7cP+Nbk~X zFCf|u{si7@#IM}Rf7^>%T<`lqmC%nsMI6&J$HJe{pE(Ul7k?-oP}WZizOTrgO3(<= zeeYSS09&#XP!ht=iNT(#p*Mj&MzjWNaYZ9jTSL@cabv8iLmFbC_h6rP<&%Kf5kH|D zS~urwP{QQ%0M9paJAR|C0^I@Ko!5epvmf}SYc6*SIqbEDm8zx<8VIgLbE?y8%_$&N29E-WBpuX+<5V_epF=15oL9>Jm?|r;Yr8wVMqqraEzsX?ubsnB|{w@ z0Ls#4_vE44m;i$eK~#jd#x29gDiQEj+WUb_HZ0nkRMfYH{c^pztsp1IlRef#>kn1j z-&VsP4h+tyNrrm?IsZlLt@%dp_y-cDRGtXAU#4!v^NxIQxPhC(i-i#@DO_+6Rhc}J zC*HZfRXOqppYJ{>opBy`y3iCRu0R`4L-EWZ2gFLO9%U6;HRs7{Cf+kY`*qBoTd3TA zGp%$UaD^ApvMDR^FugeHi_?So!Li{9n@&A`ch}3d&7C_Q8=GJHzKpH^l2rZ;(N|zX zzv3Fdc}N|kt_Ih^rppf+>RRL}d5D^*n3}`Btt#KvElKOnQ$#YYt9JipishhrF{kg2 z;VvDY9MG1dMmW<`q4IB}Lt&$i%^atB2l9SZ(0F3ql)gHxj|;8)=~L8@gg)wS9HZ*@ z!8p}!A%W!r$RotuHHO?S6855LC}t&hIA+xQiGLBR}&tS5DLDxO;&Pj{iX5Yj_=e5 z%*+&0tF$IQ3^|epVQ!fr7k?G2;%g=?V-JcCfbe_4T{k1Gcl=6$_|?#+X|R2A5ZNMY zZdN}k91Q0Kwr$83MSm^VofUP(6W~Z5J+^suKVSB21D-WwanODno(qmFmj`ykPBriz3AAP`;p*%>Wv^Q{(w%DbM0jR?pUM^3n=>$~@-nE3+HCu-_R$nhtvtNXMx4CI=UiEbRHv zL^Z01USm_oPHG3t_=z2R;K_&khtd_3yKDL+`gK=)&6ctG$8!=5x!lh4C(q6eLy$-Q=wrGl3t)xT&VV+2;~ zu{FE0eFdW1*(p;Lof8KW)gzY_WG{ljw)18yrqVF;Y=9OQfvXB6UtF@?r-F7M` zBbW~ABx$o{R-|$iRkW3hxv)aIHsbKO2o`mmvP-M~h7AG#YB9tq4f0%Y?M^|+yq^!H zjKl`yKYJYnbIZS_}-A>R`&MIO5tN!8*i_F6lS5!2s0>6p-#Q+P8NKn`K zF1TIQ8+yKh6IhB=-Fr_>UH<|kZ3Pwj{XF`nw1>%DWua*PH*~66S`*1Ypp%y1kMBoL zvkz+_bXA0x7Bg+1zC`mNPkxaxG~wKU)MytRRnO@$A8}X?WL`cnjmWpCg$v|^F8a|e z-u3th{%jZ#2C0Y})Lp;V$c#UCMWT!?F9TjgRr5F@T)|C|(VuHlrbl8Zmz~G+j_Cdx zS|6L8N4dqVsYZS*4O}+uOdG$&@xF0<^s$dv8_`#0>ya#K_rrzryD$L2M7%es+1PR^uGX4S4Lx;Hc)M<8fSg+*PHl z%537KWPPl%S~JuX3}W3XhfLdXQLKvbNuo9dXNZwtslNYs8}ICZrQBbDx+y zQ~O%-e9DW_wAFLP2k~+}!Z}l>iXPB=S>&6of9nRv7V583y2T}H=^21MD;v#o^LS9H zMWs@&ruhNV??w4T4%LYGGb=XS7pNu<72^nSO>*>sX)jQl3$-=51wgwec<2?VAax1| zDh}F`2hWe;I@IANgD^xcU7sqp9Gl*STdlR&Sm|25SJa13La!yLlEsIzsts{F3WQTu zV7X{1d{<&T+`&J6+bHJW(y13#WwHrZqn-~nc!nb^Cp6w67J<{#hIGf)x&RM>5#GK# zrMT!9+1-$y<%-JTOK>_H+fdeD_AD&kNuG zl0`$=nPklr-GE(Zns14&=I9PV3F-ap(P@dqw(~vw*5FxDjEw)Clc5_)9|N$YX=DU? zu+YK`hyGP}2!$JA`Jx?FG_@{F-@W)Y$=wgLMRaxDoKVPusAd|as0}?fry##=SBaQa z7Xsp&O3-^}B#~GJrg=SIzly9pwNGWLGBS|Thdt0*(w$dvpwrFr_qkI$@MyZ04f*4| z?9!P#{PVuGt-xuP!;v5qvAq>B5?fat2+=|zS5h5XVC7~eXqC3@%M#Fo7k!TW&DH{h z6wDPwKi<0QK*|#HXvU#vy+iIu`Cr9HQ`aZfd@YhVuW$vC*i{a8T_&2HQ`m6~0-B9_ zP0fLLvhQkXTS#708E1SYSkJo=cm}f^`=2LNjqK$ZAxf%nIJ1KpRRTFS&EFCa-ig_4 zo)){~ra*@qf!A+*e!}8uE37ZC5mdM7V{1(8;`=zrlUSx4bJ0Mf18{V;My-&YEUry; zr(h8wR>7|_fBF}hl|;co!eTHKd%b@9KAruoU(_h&n)Fs9|Ozk+wp z4j~#n#0JbyhWG|iD)9MGK~d$ZF5d96j3@MqM_RngZM7$sxcK6sa;~*2-|Iop+B#3A z`PrmY5UG)N(-Y*Mtz&+;wEudl@gDFYoC0}Yez*JR}!A|Lyz zg2th&+xtygaJ_cj+9#SmChBfDk!jH(fk9Vf)yeyDZIKbqlAGnAt!i+hev=cIqhF7W zR^KZa5--HvRCatgav99KZH3B-Cx_cia2I07v%OaZ2+oL53p2kP3D)k!nj(%cVVbm~ zQqC%Z_930^SkYOaAB#fI{?ai=h6}Spbt$iDHLXfVcyT18%a8l$M_9<3hwesDRPJ6o zw_A=9B7DE(>gKE}4?N)5s00+Bh=#b(k64~6Ox-fX!XbQNPQC3b8L%)bwzXc?Gz#`zmGn%ub%G)1?KIk5gW&qOS2PplV*_l zZyM>*XZJT22U~cRc&yqa4`$CLEfSdXNW*;L^SI|v&&nZjCy_18Z4#$oa`)mW#2neO zW^2|a%emth#os4xb_Akng4g!7<2Nk|X~8MTSeZ_rI>bdbl4Jeq8r(Un-(0esn1*5f zfl4raVsum^W$SeLYXk{sGaDaF+~J=f6fH@}*z(Qo#yhE@y)>KccjfjcM|9Rt6dP~N zT0tj38U^MPPKgVqUyn9Ya82uO17ZkM2y8fxx*JH_j`#GhurpUhV1@??)&d-GXV&Z< zGfdt%oAyj@C51e-Fh&`2fBIB(u~g zX9=bx(WhUWa;x~fAMa_vfkp!YC;zPDMCckauqmetL9KY?s?HKJPz=kbw3Jp3Og!Yk zsn%>X{~isPI3j3g$BxB7Jk#oCcp39W7dbHG9V~-mOfXqUjdB)x=KD3 z;qa>EJNGBfF?s_7eB(uPZ=9eVs$9>{HLjX`!4sWI<^}@lHA~ zTh&6hUgne%u`tk%z80AiuWhsF3R>Uo$smdMI*X*!4n$nBJcm=Md1Ni8bs`oRTq_aS zOVkqMdU6QezI53J+Mw=aC?Jv}SSdP%A>PyTPr%k5dFjiHN+Z#K(e0_qRtV0Xv2Qcf zHP0F!>ySdw6H=T#VliT#RX>S1wVv=)@M}ZZvGG+mdl`NOAmt}xAQY?|ytyqaPWQI5 z6ybkenpD`p!Z*tkDrwbYq>u;d%x#gn0>!cQC}s?V%u~)IsK%TKP<@~I+!tL9TO>V{ zve>4y^fT7VV}6ViCTn^v)a11K>vjB&PlaJ~C%EY69mpt+;#Opp&A9skLzZ#LS^bHu ztgB-pqa#M38vbv39VEJ&T0YMGhZiyIx-&!k6G;XaOs32DH;?`if{LyL2nW$e$1DnT z6oR5PQ^GQom_UrUH@5q)T%a6E6Q`SGFUXTxK(8OfW~oH3_G`gwn9p|S0Vq+%qO1j# z>w!yat>_4nsp2A)8AbOc^I+;{9wb3b>cMae{ZB!S36k(beoxyC(@*cPau8|1d4Q5IlKz^& zXNdEBfwaKup+T7@Yg39TdauZ=yKXcWLI{5kiQB++6@@fqRTir~Ibb$*tEt8uN-wBH~=BE-x!&Uivx4Zc2r9H&BrcPCSVq!wk%}zR|O$Jk( z?(EQ-+P2E&Ws*xYPv!*;;xSmDdNr|?Vq#-O`pMRFjkJVQG%5#DEr0r|tYtlNM6DNO z((uyhkD=Gusm2aNnk#DR%!M>c`lO=O(3ZySQTcsft(~f17Iin|E4O zY*IgzcnF>;yV5|X`_Zv>g!Z^oo|i}%m1sfto)C>O$ONh$E-V^r!8=@MT>UU7R!AMb z5>GXgoeYXDA#bw~WteF14fQ*vkMmW2Df^dG*70RENJ`0k*{Nu zwcs6=-R&17YgISZ;yvoEI7sN4acHXE2nj23v&iBL*DNQ5lAzOrzLk3LnP%T7rb6;% zUrX<0TIQ~>-Z&0|V7Jrp%z{rW63CYHl8VKFp*sNU($?u7UKZ%3YmTHet^KONio8Oa zH8Ppf25FU}ATQg@t0EDzg3kfn2@fUyfcuyPF-u)C0r4 zOhI81S&ec)`R5Ly0F)*^B8dlJ#fR9nvt(*i49>QAdX?~D_<%a;`XSG3he@HR6&`&>}g4n6Yfs=lrqyE-3l>0Z~{yS{OZ`Lln+0~ z)cS>yq@%0yK!tg_QU|2lO-$b7shJsbf))tey@^YxZUcr`#RjP93ro-SCjd7p-r#1l>F4IQ`0hS!X8D`5hHJ(8>$KcOZ4lXXj(J~x`+lPFV4W_sBeM4) z(MQ#!y259yHRzC`g7M=T^}L_p;QX}$OEIg;sH%lZ%Wq2pWXfd2SA@Kg$ff%AF3}W~ z3|FL=T--}gtD;~OHBm3Ti5Ql>A_he1-p3+{AU}}6LC@5Cus9d1u~)1GxZ-cdfQNb3 zzSbwl3p?!KnC2PcpG$zA8MVd8=;G*-Os&*OciIxI@gjeSRDndXh}zp6Na%hSlg5X1 zbF!(3(vR?(_OYr4yzx8-yhoi~x zsp&+y-BFcpO^6SU0*-~!3sP>h{M2jo4YilMtKaH|UrRXVstjD01S^Fx|B1FT~JlDVJ=GYf$LD6^UQyAG`Zle_Q%Ai$ys@XsGCz8tu-(O#|bLx4O`D^EZ9as&W#Nn zou7&C>ECLcCh~a`2xSlku~*Nk0ZFoc={n<+V$5roePvFs9O{p`ck`z?hC*Q5*VDYy z(q%t_Y@lAa+mSw|UCB!oEjP*q3nULTe#Tr5QMqqj?PlH+B90?L?cET5&@0&u^!i$= zBTRAs9I&qx?o3{?x{1VU$Og&1?R+4A*Sx-aT(5sMLh;r(cWAfP|0STw+I#Ne_C=}F zreFVB4`Sc`Vp_lSByG95nmfC+f@A56=;9>d{l5AAuXDDsrUO_r-LHgp4QkBE@=S!6 z(*kp)c1s*gm-dE1Kmv`d9`kD;lM80B7iQvc?&2zj{d%lC;LrL=&bGa%+E!O}H0J>=W>^c?n1P+u%~+heg`fB<|4-d%Bl1d6>0k0$ts^O6qTpeezF+E-O?n0k$^uq}>7okTQ6a9@bY;0oTCC!v^ zDB(dXZ*+CNdtQ%l{T^{u!esHKB8>Plv}}xU0x3Xpj4qn>`4;3|5c31EkN*dbx zNWe{?>p<3z@1{Bw#iOLH_k{}9+;_*^@=t~6KkX-Fn->?ivNz)+fe3iCV|GJKu;;gQ zm3%gn3iDU`f#tVa9x{SkssFql$ufwxw2gja0;aPj4@gbE<=y0i%owrN*U&6eyeGSL z-?&Kqf`1s1oQ4Wxgv4Sk2}_A`K4wlk7;9iwOahctTN2|~5r|nR=qT`^Poa@yV-+rw zNL(52t7)`o(omlxB`?L{ZWy7_zVG%qu<6k1;ZEp#x25>#m_xYw(V8$jf-+Z*%xCy- zOc@wiNhH$SLAHICIc#c141idTj@oeBCAo~_jzq>`C;P{0M{R)(1)w1)DXJ+dyA<~Q zvTSx)_@_15YAYT}9Tv8vk&%8Vt${%*`swc}HY3~25N_-`G@WuqDk!@8NYXVb)1&l` zby4r0v$~0BZwvywh}p%9i+BytuEUD2!HLg&Mgj>=SO-nIs%}$*{51F*r44HK1VF8Y zKx%rV)#t#8vM*fy;kBNDaT_m;X3o^W@HO&3jK^S)w%B3ti zgGYdNyIllR#ly*}Pz~h!rHa{d$s1t2grO!(vJUE*VVpv78Cw^P5@fY0lir=MnGH9p zrEC-185mfIzJ~yIH~<%)OEHbTm#}ON!9H~_>KwPuB_G50KAxE#H9UlT-5KW~apT;j zgvm6gClIfzduVNm)N%i#hXW^j!^`M{rIlPcS*Q!3gIAYZeW)N;$i4PMRfZ2a5VUNz!(Wpq6FVA0{ z6Msm*70}-NUgl@voAJb?RJSDdFsQ*MsDOkmth=&x>Ve3*dWs3PlPJ95nM5_e8(+*C zWiXy7meRU-Pe#Des5wYW+-9zdTzn+wb)Q>aYf-r3R`@OU z54Eb?tZ?E3nH6nFH&q|kP11_>jm6(TnaL(X01nQiqfQ>;2Pu#gqXeQxnnbno%l^QI z(uuPdQ{pBKQ@uFB#&bK`r`dfueB(j5l#watjW%OfI~dGHR@EO^;cwSH|4p*}&I7kc{6rLR8 zTCmy2AgMGJj}iHkh^t#(F(41H>(CRf!H=rXY@DSWftq%x;`{sgF+_we0V0f>t)1VL z3XRTd)L$GU;QfoBi3SR>uN1m6g?a9wXk3c0&gpwru}x$^ElwL3osQ6LRodLN1%K}5 zKphWhB|=F3oad(ih{ApidRxg)xQtO_(^@xDQPI2N56aGGiZ3CH#;BX**_{*M*{mIY zU`h--Z-;I~mro;AZ+_8~C>5zIQFmnKRCDBUKaBH-wS3w_B~755t|a4{rt<(MrrKGp z!AV$qkk^TL)br9~yvt9+TFq?7P#NSEL$6v~_82OBFUJo8Q(G>NI@MkQt=5bps#;k- z$^oGC5(2#c=%!}*tK;@Rcd-5c?N@vS005XkAdSRYsOz8mbW3tR_~RQvzMew+9294l|5W`r&A&f+Xt2&sX!7sQrgbb}k*z9PB(lWA zARHjdC#~?#@?W5gU=LlKeXdSGdTb$pFjmY^~JUEH}HsBz1;G4(jpw?-{ZBjOjpjjn1GLdvo|*X!4YRu zY?3u4z70i(DXP21k|>maE12%9vNXG!ikH@Idg!9c8ll_s!p<@+JecL_pspZ^X?{ki06951h31kU=4gA||{A=z> z8OQ5H$$+bT^liX*&_&5Zm?6bn#vftRdNXB$g)&AuFncDEBzlM?hpfm*X??%7IWY76!$0m?w{;Qj`d8#y|>&HJY4G^G` zj+zn;Y(@YM5 ztkM7N9=1Qxad9RqJ;!@zJ_mcI2sjY}-KB^9V<3RL6m9}>E8@tBAJ?E%2 zQ4#+?j3{&ev^n_?5MBOji2i6O%OQ{r|DPc8`PH&#xH70F?ckkN)@+e)G|9KKhk~{TI>uHy{1ZkN%$V{pO?Jd;|da{>8Ar^P@i) z_IG~t$4>Qke)JzihQD&y-}%uW4EwuY_s354cfIaESVzD4=-2VeUv=-_eDt@oiQjzm zAFQL_eDsfX^qY_VR>}X(NB_Y(`prlGSVzD4=re`I{W^$h8$*(jPJL;?vG0TZ$A3X zM*`Wu^>zPqr}|r8_XorN*4O>Pu)p=*|M^b!x8C~?hW)Mg22cv5xBRtJRr`47;Qt>R zwm-j-@z+n_WdJ}H&LkuNfb{YH5JJE-W|v{P;D~fkNmofAe=h2vThQ@N_&=<{R2uOK zY(e@sIsg2A2VxEYwgiBb1EAdmcmjap01$`(f^I-60F(tlpbr=TK&bx@>%WZ(PuNv! zmHO3(T0`;br@Cfz-1k=fx*5Z+OM7(@-2K{OYm^h(UL}Hbx04sW(`E$6pY5%N*V-gI z9%RloPphg6Km9BW&N8{@#29$&3uJp`d_MFDi3s@^gj`|xK&G~81l6dt|Ufqi=)$p_(G8~H$0F;PiMtoMwa%I~9Q<*gXvjS^~rZR-* z8GSU+5XDGq-OGal0bz5w68;k!WO8`-P4Q`<`# zE(aFZ1T&!e&Ut=JSGiBV3v~pJiz;GKaWE)25mS2yJA*;8v}$shU%F2x^2aZs3pZ!7 zUnpzJCKeV%%{LOO%vj*WXkl?epdd%BL*B%j(7RU|C3%wP0HO?-qRysvpQNJ&&x41{ zXVFWafaX@dfxyP;+?^dM8>N<5acLSo z%@FiXsS_}M8c)OLs~YI0gv6wRHrXo)I_`-6Rwt2?lopg7oR?PI4;K0vVll^7GTNJZ zQ}}zl2>OIAxlScTrN#$*-qGLu^GHayqsYt>h;+b-6YT|ktO59^-sEY-c#SbF`o&P0A z%K~##Ze6~&V4&{9=y@dnTzeC|0_tveUFoo!FH?~BQq3&9OgFJkzkR`4ryBQCEY^-x zWGA5FgVMEcGi|J!cg>333EEXH$R&v3ZS2wF3WBh`TgflcC~XEjhu#IO-rTtW9VLOby-!R#wx<|+%# zD~}_k%0ja}kDe#duH?CkmW!V&`?D5VaO7Y;Bn*K6+6|;Lb;wGOMb4d_I~} zo{3bR!a2@sSZ8;$1$>IT*Ouxl;(0J8L$es5*T5Ptv!h`E2ibJgp1}x{Q8KjAP z?~0ongU87kQr;{bkjs+R2UFm+x$OC&+gck9>%3h|kR*fE)_F((w$dN_&2YCZf|JOI zxHQ<+L)0IBCSk<*lZEOaXt{=O$e0!3kMNKu{WIxHvU>7>)6WkLB$o=2A|0SOPxek^ zsd|76&CR%5X*?W){wq-+(`lU}hYk8+YOX8s4l{yzHpp(haoTKF{k1qlZ~CPg?SmD{ zlQRzkdSaa?$}uI0@eKZ$5qJZ{F24t%`}I2}UfIC~>`J@Odi}=SkU(WmW#SdtG(I~+ zV9nZNcq$g+XhZ^ZfJ`|SgB5v$SaX>arA+VdpO3msoahjqQbugx=$>TOvc_=Qna1SO zkH$H1A9k!<5~VLmp|^Zr$P49$PL3UT(>p5KS2N3PIEfdpJsk|8I_7|;c zqpg13no)D_YXYC5OVq06ifdxnR}@-gAzcpf^*#{9$ioX~y73iz16H7oLfmjJ+)IwM z0OLm+GB?cnJXfE}>gw7mM?%i3IVL06+p}1W=t9w>!K+ftDWq1a1d}b7Tal zAnC`uIm(~uS;cvMnVv55yBo9pCTvrnIGILkN^AmqOG)7(iz|u_7AE27*a_EDu@(gy zxPc3&BP!8mu>iAcVEUO*R;FTeJY)_;ir@`As_euXu;l=8aSDDc8wE@!E8)XtNGME` zDA!4p*Lt14%*33vppWU5-OEZRsvqgYHPs|brZx>9wRqt3qDs_tBM;=Kl}=e8qyC^M z82-CSy2o0^o$i%dE?HM;DvYZPPBR4(yT;wC4`$h@nX}Q$?nc+I$<-+Ye*Q7Sn0_(Ri6{V1YP$rc z+oPc^^4FIVX;8)mWvjzDMrP~NCO|Sk~>w? zU4Oh+Zai)8)Djw#16IZrRdZZPDg9q+mlsv?qYfN3?mV3o)-4u8ak;T4`@mmOncVU6{tHrv>UCh#2(Lc@rEizyKL2+JgavyRi z(xFu|j!gb#eEp4S_He6H7Bu(U;Zg|W02&V#{adPH@~q)CNF^rhsir6ufCr<}lvCi&K01*(14=<4Yf;6N~X09%bc454PCd6vn=Z%Ca~Ex%*El*5yK2 z$1OVuATD36{HdBgO!#Zc%`l6FpD$E|e%D6mK1=%zhoFzXK;bbSRu7e>?-8PPK?Zi!?K5rp0*+m(Q z*;4~!86BnDc9_6Z%$(0?64}jS+YiYo5I|>d%sLBYdwPA#9FbFPVy6^b)Bj%pFF?@0 zMPz(5P}(jw)M3OO*|Xhlz<3|EWcvys%R{>DiZ4<)5v{70akE~GCzHx9&iGnFkBeR& z*tmkQ7ii1i41TK||2EDb2-4ON93mjBo@&G+Z3g(VR}xWRL+Xk1c{p_*jkLEEhV;XM zVyH{ejj(>bCQe(RIN1P{9R0JPU!Zep?8kup4`Z^4B-)y3`2i2BD<2)WSraUE26jp{imz0&a$72#` zDLLu`)R7!tCz+|$Y^m10#l-PfnlYDF)7VjWK-@N^W+MJ=b++_{_ZMdK4USLtJXt# zW1ZHW5!0qrb(KPVs4UfP2{12X6M8i&I{PgzXr6c7%`KWDglOsEoW_xz0z2+;HDPu% zhqjpc#wWrekcPUBiR5xRfm^Fg*BsUZnz z78`7-=Gf^(`DM^0LTe4+0%!N=ytWgt1;E=0tFDHWTsaoc$g36wF7COd#Hyq zpzD)Vs!~4EFqq6w(XXCOuq(S$+=my>IhH-G~hOIFdZKLRK z?cungfuT=%=$M*_OWWLu&FKXenDzpmp@@$8NeY+{c2#2L%UsT#Nu(GY*gr)w)0 zwx8SG(0ym<&DdZ8$jC0w>6=^c8N%6B1C}B`hI3DTrGxNUL}C77OX3-aLZU2BOS&|E z60>==gRFnFmBHX3CRMq_{b_t-fiVb!%B?tUpZmtZY>Gn0914Ul)O67D%)F<^Jm;2F zIYa>dh2qwT4a45((O_|)8On&Mo>CmehOQ5(?;%~9)}4!}if_3vfF@lhYQ% zi&Wn%F*GuB)r8@*a&&;8HI!&P>DdIE?_|HIfK-&A>ssC-Jn%h_a6e0y2>rgLK2T-U zXCcO47n@_B=1Anc>N_>8Jv=97*1fBI@)ag%1+uoyd;e3rZ(ipgrH_g$SUk8VAg;sH-BXLLy5C$?n6DFX2f50^MTX{=_R<;A8$na!%OpKn7+YnkCZe7?wVj z|DFTVL1f6GjUmxm7s8V92{m`0xVa3L%gtsO#7k|A@K(fzNCE#rgT_uyGp_{EA!Js| zPPB1K3cUTUj52UwBZJu~67%<8OiK%=6={Bf2+A}Zx18LJgGe5-VS1_~vs{w;Q@)R( zKznEfHOSAv6Rh7cIOr{kZTJ$LZ@>v^b9-`^*4C7GwjSP=EdntnlUi}n`JbBZkpkJf zRjDnLDXIqZ?Mb}OE{V!RAiYz;6)@iSbq12yiyJikL|q{$I|YJ2`aC>ukH~ruK$>_UbObnvMO+`Pvj{aq5_DPD8#$RgP9_ z2Hq5(xD8cc7DqlH-S`sC=3i+W*1`3g-Hd>t?pbF}V~CTlR$euvzS_r&a^LWT>M8e|3(4*Qetn}QQ`qW3XcUhZ#PQ({g7{^FBU@oE_Q|{lnFOhEo(nQ!3Q?0Ra%3J7UOu4^* z1qP|irx%z%wI?p=A&2DVs=RRPdU$IT0!OnaZV~qrKi`#^K%g_@;5-mORg@FEG{&k~ z6327U*4S2h@JGt$NLXx)0ZJR9Z{jQ}x;WK&nUT;$v)ecw65XG4q%+5mc~PeCzdWHx z*1#66kl9s4!!4Qoq0K#y9*n~}eX^qWCFeO?s+X+aTTbYHWoMOEA`T_WOjIVPkc#f+ z@38|4KWGpC9E;9cb@K$QR%Kw95N^O=GsPvg0gzLi)PKsvLS1?L1Cx@I<-{|Vp49fk z0>6JMP0UVHcPhPnden?$r`mJJdwjF|8Dq##Rs~a$@SoETZbrBL{3UNjg7M(tR zlIqFK26C(i%21|y=YJJhPDi{Z>}iS}JXQfn4``6GONocvxigwpz^%-wUw_%VQxjK7 zo#b}Hh4>^T$L$~T)K{jSx%kHk`}Pz~yjp6-kD+-yH(H%GIXJ0s1BeGt}knVRMC4W*G1#GXCY+9~=; zf~r-T#|<{y-bB-gwU?Uw0g<}n?ek%v6p!h9&VE=)XDvW#=8NreedP$u{}495_u*td zYp^II!%vZ@f#x3xL5a>=w-u758057W&H|+#EgYs2qk2E(Np_g^jeo8;!cStG@U}mS zlLzz1^5(5wBC~QC5ywu-0Za19AX-{ELlJEUTFA>MGX2#U0^Ldg|B_ibGVW79_OP~7 zq~()Vy@7!{hjaQ6vEY&CGo*-#eB3 zYeYE`Y4<)@f9-wi2mYVQmYkAfyK#@^fIHj362Kp

f8tI&K{{7%e7FvO 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 literal 0 HcmV?d00001 diff --git a/utils/exception_video.py b/utils/exception_video.py index 327ac60..a276c0e 100644 --- a/utils/exception_video.py +++ b/utils/exception_video.py @@ -23,6 +23,6 @@ def create_text_video( if __name__ == "__main__": create_text_video( - "../resources/exceptions/update_imdb_data.mp4", - "We updated the metadata from IMDb.\nThanks for your contribution!", + "resources/exceptions/inappropriate_content.mp4", + "This content may not be suitable for your preferences", ) diff --git a/utils/parser.py b/utils/parser.py index c136d6a..db0cf4c 100644 --- a/utils/parser.py +++ b/utils/parser.py @@ -22,7 +22,7 @@ from streaming_providers.cache_helpers import ( ) from utils import const from utils.config import config_manager -from utils.const import STREAMING_PROVIDERS_SHORT_NAMES +from utils.const import STREAMING_PROVIDERS_SHORT_NAMES, CERTIFICATION_MAPPING from utils.network import encode_mediaflow_proxy_url from utils.runtime_const import ADULT_CONTENT_KEYWORDS, TRACKERS, MANIFEST_TEMPLATE from utils.validation_helper import validate_m3u8_or_mpd_url_with_cache @@ -92,12 +92,7 @@ async def filter_and_sort_streams( filtered_streams.append(stream) if not filtered_streams: - return [ - create_exception_stream( - settings.addon_name, - "🚫 Streams were found, but they were filtered due to your configuration.", - "filtered_no_streams.mp4" - )] + return [] # Step 2: Update cache status based on provider if user_data.streaming_provider: @@ -229,19 +224,15 @@ async def parse_stream_data( user_ip: str | None = None, is_series: bool = False, ) -> list[Stream]: + if not streams: + return [] + streaming_provider_name = ( STREAMING_PROVIDERS_SHORT_NAMES.get(user_data.streaming_provider.service, "P2P") if user_data.streaming_provider else "P2P" ) - - if not streams: - return [ - create_exception_stream( - settings.addon_name, - "🚫 No results available in the system.", - "no_results.mp4") - ] + addon_name = f"{settings.addon_name} {streaming_provider_name}" stremio_video_id = ( f"{streams[0].meta_id}:{season}:{episode}" if is_series else streams[0].meta_id @@ -250,7 +241,14 @@ async def parse_stream_data( streams, user_data, stremio_video_id, user_ip ) - streams = await filter_and_sort_streams(streams, user_data, user_ip, streaming_provider_name) + if not streams: + return [ + create_exception_stream( + settings.addon_name, + "🚫 Streams Found\nβš™οΈ Filtered by your configuration preferences", + "filtered_no_streams.mp4", + ) + ] # Precompute constant values show_full_torrent_name = user_data.show_full_torrent_name @@ -265,7 +263,7 @@ async def parse_stream_data( user_data.mediaflow_config and user_data.mediaflow_config.proxy_debrid_streams ): - streaming_provider_name += " πŸ•΅πŸΌβ€β™‚οΈ" + addon_name += " πŸ•΅πŸΌβ€β™‚οΈ" base_proxy_url_template = ( f"{settings.host_url}/streaming_provider/{secret_str}/stream/{{}}" @@ -355,7 +353,7 @@ async def parse_stream_data( ) stream_details = { - "name": f"{settings.addon_name} {streaming_provider_name} {resolution} {streaming_provider_status}", + "name": f"{addon_name} {resolution} {streaming_provider_status}", "description": description, "behaviorHints": { "bingeGroup": f"{settings.addon_name.replace(' ', '-')}-{quality_detail}-{resolution}", @@ -655,3 +653,75 @@ def calculate_max_similarity_ratio( max_similarity_ratio = max([title_similarity_ratio] + aka_similarity_ratios) return max_similarity_ratio + + +def get_certification_level(certificates: list) -> str: + """ + Get the highest certification level from a list of certificates. + Returns the category name (All Ages, Children, etc.) based on the highest restriction level. + """ + if not certificates: + return "Unknown" + + # Order of restriction levels from lowest to highest + levels = ["All Ages", "Children", "Parental Guidance", "Teens", "Adults"] + + highest_level = "Unknown" + for certificate in certificates: + for level in levels: + if certificate in CERTIFICATION_MAPPING[level]: + # If current level is more restrictive, update highest_level + if ( + levels.index(level) > levels.index(highest_level) + if highest_level in levels + else -1 + ): + highest_level = level + + return highest_level + + +def get_age_rating_emoji(certification_level: str) -> str: + """ + Get appropriate emoji for certification level + """ + emoji_mapping = { + "All Ages": "πŸ‘¨β€πŸ‘©β€πŸ‘§β€πŸ‘¦", + "Children": "πŸ‘Ά", + "Parental Guidance": "πŸ‘¨β€πŸ‘©β€πŸ‘§β€πŸ‘¦", + "Teens": "πŸ‘±", + "Adults": "πŸ”ž", + "Unknown": "❓", + } + return emoji_mapping.get(certification_level, "❓") + + +def get_nudity_status_emoji(nudity_status: str) -> str: + """ + Get appropriate emoji for nudity status + """ + emoji_mapping = { + "None": "πŸ‘•", + "Mild": "⚠️", + "Moderate": "πŸ”ž", + "Severe": "β›”", + } + return emoji_mapping.get(nudity_status, "❓") + + +def create_content_warning_message(metadata) -> str: + """ + Create a formatted warning message with emojis based on movie metadata + """ + cert_level = get_certification_level(metadata.parent_guide_certificates) + cert_emoji = get_age_rating_emoji(cert_level) + nudity_emoji = get_nudity_status_emoji(metadata.parent_guide_nudity_status) + + message = ( + f"⚠️ Content Warning ⚠️\n" + f"This content may not be suitable for your preferences:\n" + f"Certification: {cert_emoji} {cert_level}\n" + f"Nudity Status: {nudity_emoji} {metadata.parent_guide_nudity_status}" + ) + + return message