From b66f8d2d8c3d051f0506efd3977decf4db4f2bda Mon Sep 17 00:00:00 2001 From: Konstantin Date: Fri, 8 Sep 2023 23:03:07 +0200 Subject: [PATCH] chore: further fixes and improvements (#7) Add Loading screen and phone tablet adaptions and playlist lists support --- App.tsx | 35 +- assets/icon-512-maskable.png | Bin 0 -> 79257 bytes ios/Podfile.lock | 14 +- ios/reacttube.xcodeproj/project.pbxproj | 2 + package.json | 13 +- src/components/GridView.tsx | 13 +- src/components/PageSegment.tsx | 1 - src/components/VideoComponent.tsx | 12 +- src/components/VideoSegment.tsx | 17 + src/components/general/VideoMenu.tsx | 4 - src/components/segments/VideoCard.tsx | 31 +- .../segments/phone/ReelCardPhone.tsx | 1 - .../segments/phone/VideoCardPhone.tsx | 40 ++- src/components/segments/tv/VideoCardTV.tsx | 29 +- src/components/video/EndCard.tsx | 90 ++++-- src/components/video/phone/EndCardPhone.tsx | 7 + .../PlaylistBottomSheet.tsx | 80 +++++ .../PlaylistBottomSheetContainer.tsx | 73 +++++ src/extraction/ElementData.ts | 60 ++-- src/extraction/ShelfExtraction.ts | 11 +- src/extraction/Types.ts | 26 +- src/extraction/YTElements.ts | 41 ++- src/hooks/account/useAccountData.ts | 18 +- src/hooks/general/useAppInit.ts | 14 + src/hooks/useHomeScreen.ts | 37 +-- src/hooks/useLibrary.tsx | 16 + src/hooks/useVideoDetails.ts | 79 ++++- src/navigation/BottomTabBarNavigator.tsx | 29 +- src/navigation/Drawer.tsx | 16 +- src/navigation/DrawerStackNavigator.tsx | 3 + src/navigation/RootStackNavigator.tsx | 72 +++-- src/screens/LibraryScreen.tsx | 35 ++ src/screens/LoadlingScreen.tsx | 43 +++ src/screens/LoginScreen.tsx | 17 +- src/screens/PlaylistScreen.tsx | 11 +- src/screens/SearchScreen.tsx | 4 + src/screens/SettingsScreen.tsx | 36 ++- src/screens/VideoScreen.tsx | 10 +- src/screens/phone/ReelVideoScreen.tsx | 160 ++++++++++ src/screens/phone/VideoScreen.tsx | 299 +++++++++++++++--- src/screens/phone/VideoScreenWrapper.tsx | 16 + yarn.lock | 87 ++--- 42 files changed, 1309 insertions(+), 293 deletions(-) create mode 100644 assets/icon-512-maskable.png create mode 100644 src/components/video/phone/EndCardPhone.tsx create mode 100644 src/components/video/playlistBottomSheet/PlaylistBottomSheet.tsx create mode 100644 src/components/video/playlistBottomSheet/PlaylistBottomSheetContainer.tsx create mode 100644 src/hooks/general/useAppInit.ts create mode 100644 src/hooks/useLibrary.tsx create mode 100644 src/screens/LibraryScreen.tsx create mode 100644 src/screens/LoadlingScreen.tsx create mode 100644 src/screens/phone/ReelVideoScreen.tsx create mode 100644 src/screens/phone/VideoScreenWrapper.tsx diff --git a/App.tsx b/App.tsx index 6b7c39c..74d17f7 100644 --- a/App.tsx +++ b/App.tsx @@ -20,6 +20,7 @@ import BackgroundWrapper from "./src/utils/BackgroundWrapper"; import AppDataContextProvider from "./src/context/AppDataContext"; import AccountContextProvider from "./src/context/AccountContext"; import {SafeAreaProvider} from "react-native-safe-area-context"; +import {GestureHandlerRootView} from "react-native-gesture-handler"; // Polyfill for youtube.js Object.assign(global, { @@ -31,22 +32,24 @@ const App = () => { const isDarkMode = useColorScheme() === "dark"; return ( - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + ); }; diff --git a/assets/icon-512-maskable.png b/assets/icon-512-maskable.png new file mode 100644 index 0000000000000000000000000000000000000000..8686bb949f846010b7012140e7f29e9069994501 GIT binary patch literal 79257 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
jSM%r>VISEu+j9R;-D+su;G)~3! z@OPn9{t;0a)!HrQG@-%z2d*@1Ov!kHlnz0md{k&3d*{1v;(~u+g2HD4ZM;3OGojN@ zc$OHVu4_a3C%lyqP7|x5>mEMBLY5A%87>?xFJ_6>17f4Xfyz*&}7^|6cERM;jQo})HF36({feF$7U4XXE@!LDgLRF&XV}T_>#oG2*iqjJ;=3kHCGy0D z4hNsBY$`u2z;avPXoRmX`Dl5O*t#?}L6FR%pJI|?t}5?N-uHBmE3;T;g-O~97Oa0$ z$Xb@~qIauQhG{?I&uN@^9-DlO;WN1B+6Gt6^KH(OCSq0kwBz{M)u}yr+nS+67LpV* zt*k@~DYt_6dDQiNBt0>8YX7)P*YU>rHV%yV&^K;LN)Z@s8BPhLM!fXlO#kNl#`k9b z#eK8B;s%g3Itg{zoSgk$_RJ!v0Znur^+WdcIOFIT8^;;$EiRSM?HRcw)t|Co75mPIdu3%3pX_E{Y6`ME_ z2l{L4h05<@X}EjDR1!YS#g;8jAe_V7J%`k&&EcO8IC?I|>XyD_(U=sY;%Z`E2W;B$ zRp8m^RZ#o>`JK*LO#2OsqoI*pm5AI(4mG_F_P3w>J-nLZH^Y2L7ITU2P|BE+`2Ej9 z)5gu-gwI{Wb)3jI<-;#l?RfUTAu{l&4O%{R9qUq0l76G-5OUP2X28RQs{3y4By@Lq zC^vm|_Z1JH8QJBk#TigE1!G@6v<};weXOP0Gwjv={85KP_!j+k=h>~EonNn1@DUzL zCCVUMGVoZCPJX>h$J>j7S(X?7iChl)XI~VVDp@gkzo@muq~N!nOIvz>k$~his;@5J zcUZyh6MB<%dRyP@`^!Mp%nF_ul=flMJ0eO=z+9YF2%?amC8U%FI9&TK49EZ?G>f3Y zyr}a+NYiZCmnDM&e@@I+@U!SNM-s-5)Zi)5V9K6_}v zX|{BJxY%JA2Nh=-0zy;Kr^0YzDt)s?x@e3HBB;ewX;`V-ejaC-e`(L))NL&7)ML((psy?on4)kRi9NRaTNrz5uW!sb)Y z%OCrkg8?1)H%9S#0II~H5w=i)cksYpManeWv8U51sJVuO!2*Sw(6rCV96H*!0- zQHo!QpC?22Ha{V@+j7wsA!~Q@fE2r)IsZ}rM0j*WN?Y5)P>p$M{E#oCo!%k?bjmXN z0SX)V_`jRa1;4t$z9iCFIKww8jpNT+Rc(%nXKP;DXhD=Lz0!^5S|lJsYZ>R%DNQVQ z_Ppk_g$xA3e%s-p;vVwsSK(;hc+$T&x=Yn@LC#Y;SHjD6FeY*PEbv+3n<2_ezTY_B zsV#D&%#hf-#%8zm#$yN|Z5j;JYtm&0*@d+3Qc5YzVJ`o(3vj`YX_o;bJiY|SM<*TM zHrC8b2UZyr?*aQnmdyWJ!MEG!dhavPBU=|V@fQAXgv?uccy2VW3u%_0dLvF1c7W(- zZ}Hpjcm01*q&f3G&+X+kn#`di;E7Kbuun>8^E@Ki7TWUM{)zup49Csx(sd`!Q9#&4 zMY!~W<>8!S@bcJd5fw^pPyF4~eP0sdJl|QpX#af$Qw3L+OX9r@!d4YI+w={1hVRY2 zH;r@m3Q2gU!S*1B}ZmvG^KT#PG%3VFdnHK=ZIF#BYV%5x8PEGtIvn zTMF|1;ktEM8Bh-E1;CzjM9j9+L8%7l(m zz4c|QyvV4+$Azz^lf^#KvnIuy3HUt+1Hb@#W{1P)4BGzBoi*p zI53LU-5~_N7)l_y&}dGvuBI!NjG&!0Okh#u2s$}%SvXl?#-oLse>Rt^sAO}V@b=xd zf6NZNmb&zjs1}#Pck#J5(RcHDP>dp4N-bv!b={*??=jTB{0tMaw1l$9*EY@&>pR+p zUZ)+u`FORy=Qo6!fVUxB|@b_}>-a;087DozbA^!FZ&c;*C5u{xUha zzwkT^oaez3;N3PbjvVsef(a9jSjc{<&0WN!bbUPOD)6wys#-5rSIqePqph8UKh%Bn zGg~QfOl?Y5W5{YuqRZ5N8GiugOi`u2O z+IvgvRi(5jirB5$QhTIoQ`A<}-dn_$Jo){f=Xskq$#EpPzxRE8&g;DQ6|EMkk+*TQ zlQGVyVUoRm@R_mrpm9dI;!LIG5>%E|9tP=}6s9$h527%j<=ZG*>QF^9VC2$NL}Az; z(2=0~UKr;%9imSu(v*v_=`utgek$k^scmvl9gv!8wJW5*Ex)iOd5Xs&USM?dC-qw$ z8n4Z0AiB5jHsM@h?7+Xe=zpP%rrt|!k>&EJgL~F;DY(I+j)Be)3`p;>E#L1pb$-!$ zD9|5llLv!dhCIq?{&6s+W4kpchx~0|IN*DPzkT%vD14cwH1r9IGF>{vqpol=b z69?<7hVygTrH5QLm}0nX`kSnd|E<2mgj6EGmhvH`O5ccM;nu|HK8Xz2w`hzO`_;CI zFfPyrD8D;by5pq9DLGz~&>H<;B?puuI=Gvx=b~5?c(y_J73;Swjsxb_g9G2(dVFty zO;F-C-07-<(ytb`x=LEBC}V6emIJH2VgYw+A^pT0ZDoFyUTYU;#LG*JQ zP((T6KTk(ir-Y6RB*i^HSAmjiZ0MX^V<8xDl_Ag8_-Sg4_dM`C?^8JW@lO}=!J#Y` z!1G}UG+QdT4M?zQ;>0fxJA`}3$iGSX_2DGUE@Bm!uus}>?+*MGHpOSv8D0Ic^WoNO zQnr*mE^^vTW>eGTPYlc}2zjNUwd-C`Pmi;q(p^yUF0A@-H57;ZM$=2UyQ-6Feb0SRqd;*akpFpvV(@?y{W6sB;VnzLzoFG80VSnVWIc24s zm?F2uMy(2wD}4&NOY%jj!B8SGz6hrBoSYJW*Gk~2N*LC&Q9t-X7vNSif!7?SqS_9<;SnJ2SNf|tp{1!EbWIVz5obsOqOW&{%d^G9AEYmS>^s(S`a7BM-!W&5p za?8SzH4kUjO2}sCE*P@HCIk}``iQ?$Y?phWZUo{=centOd+Mq~Zsz&R@~(Yw(sh=~ z>L@ffboY=Tv8;>}(A1)Qg=Li%eN72U$2IkBaPEoxx6O^Hf2dnE@Nm#GPc~&yY&e1k z23{wE7feg=7l2GL3vF)`uL2?y#GRTl`o`$>C2{pOpLg=|C<_8V+n={IDJ&L+&%?P+ z{T0p&0+l7tF-|vJk&`Xqbq6mfTh!)nOcx5znL-Rd)SN&YEV!Ha^k6goFPYlaPaIKUn~LKG!@2 zd}!Ww^mE1WX36rGI!$P^3ONS8ypOSf?HXr8Y|s+%d*Yz;d%57hoc9_aKZ8;?e4n45 zo}J$A%m-K9T}J2E>}$(v(!aWtHB;|!%aHh*u_WpAMlA>FwBJ3Uu;7*us zaOQ^}=E0CF`hqV|{?|@U#umFW;7#479zkNhjvdgV1_6@*0X?T5GNSSUqPj&-^-boN zyqqksu@uy12l+~Q5CUY?S&$`od23MO=*>Dle)>fV2tl37VQR{=%&DeQjt0KwSRJva z<;$+mYE7apHm`NPp@}#c0S|x>5WBw+6e+=^>2sB+xN|Er2_mIcd-m_e*+fxBjHsiA z_rog0jIKOfYfH!Hf#mJOJiuPBZklOLys0Hala4S`tHBq2CU`MvghY%oftS10jg*CU>ggA2qOANMe^b9<&#Tb?-b>N_+0RRIpnWH zO2P;iA82V&0>uS)g1mbKng-`;3dAg=T_^*bK_6b29J=XRNM(1XB;pDpoea*_lx8zk7WkHCkDV z@oh+>3r%I_b0TDeLf*(kV#OT`6|@p3LGr~hhcXNY=rY9xJ3|Vj_B;zb&w)0W#T*^D zFyCI9AUaOvAuaWjP2GvZiEz{6Mi4`Qg)bk3Yqd@3ExA{iQ8L5(%i3 z0Fk0tVyX$1lq<3OvuN)9JH8GU=V)6_l}V%NMf=1JlJl&XzYy zDUjDs3Jz%B$iBi6?hBGqAc!OQnP7{!*;N4h<&)aW&tcXBl~?#%ujL4HvGR#Fhi|*e z_W<(Te*hwlLYNsJe2{gOgLv1fRIMDILm=y^Kb6Rn&4c58TouDBi_xnSr`KS6-O|NH zm$j8f+X*MBAN^E(u8}V6D6=RJ6Y34xoZHO)D~|R)c4VH4`%M1(5rvgVSLEj3!+5f3 zrzERzHq`@d{L3p6IsHck9YVjyw9G#v6K>nouf}PvgMU$;)$}!(3cF-`i=qCV8}N3w z3V%xdtw1+9F-`{XD^b64xw&USfm^xDaJh9xv_Gz~;RC=m06B+(lnK7Gru3l!UGiAH zwyT0uG01bJ#V2ZoAaIRj08n}cnBM5(*1P81!A!qwNzu(?+RLMS&z(J{cmG6e_^@@c z7~-y0agkB}%2GK;Ibt$JVm&sv3P|Ssmq!3uG>Ry=doRd8@xX5h)RT_;ETITxv^g*F zn8brJ8A`(^JeEWGPFA%Y3mvH&AD$Clh|5TG;f3LAf0e@6sfJk$cV^N$dB4az_W8(` z>8I^i&h*tzS?-ybY(tCe@_RP0n#Ou@P87=-n0_wY_gzdyL5hC{>R$>!trde9V$YEQ z_T_npFg?(7-kWxtc;#xQNDzL-?a0>=lq7{!6D$e;FG>Um~S#PG}Uy zM}B=!0j7oOKdZolkG?DqpMONKU#TndUqiXb^u^(Gq8R17fIcGSk%%>$iwJUHdP&pG zK_d~sYmoc#hmVfZjO=)STCyP`5Sl2P?N7w>3?{Yv(O?DH!3R6rX-`Nq+^l#iiAiPG zpPMX^J;?M;IZ)6aRWr+L51`Dn%V7`dKMzvx$3UW=Faz)Drqew#TZFI@ zG5JzNFCCIKn917_qGwg{mW${H84fQ@89>bs^1}NHNjBw+8-`+=81ZqKv07^|nyOBZ z9K`XDbH!}aV$>-qyjRA&UtB~--O=kXZc4`({Fa>Bt{Y2|nEcv`=) zhm-=thZ&{N439r1m?ERh#2o0BWTz1jajq~B7(ztrjEv#+U;T@Tz%yK6&4PF-em?Ca zF=?}YzK3Ns_~efJZf)@`zL)#Rm_!+gFC7NS|0SB`h_@p^T0)gu8+D)(&bNq!-16 zC8@o&BHga|tBn^;(W|+9<%1Yr{pM31$HNTB%owYY-X7hIN7Z`wKN-b#nS4bGUu0(_P5pO=lX@*O+%_EUeGml`cy zh3-B%5SlEAi0<=`nZP7tW3t*csbzJQUQM>0%|Hx#Fc-Xkcg7<7t)a_W<1-#Es)_Ds zNvSU--0nLIu14>_s2`xMpP3bLXS1h>!sv100kAgy= zIA_^|SKa7-Tt^9rCls-@G$59rodvOYy){2h2H#C*zJcv?094;OPtM%4!9+!|`qYF; ziT;Z^U?7U}cSPQ)=J{*b5*?V*_h>$1n*Wi9%|&ZX%1=EIxCmQQIm9@vK^ zq|Sh{zBhFC7aZru@#CJ|%CwMgq<%BFA9=F&_Ka}1xYBpwsMPfpPHUR~PWepO1xq{0 z=+^L`QGo7{+Ya4)-e+rc86HJtF(SAjHY7j1`?aOCQyA;n{!(8S9G%lZ28?*d>F4%V}|Y(aUuj^yBcU&g*o+-*P>8B*ScO zf|Pn62QaVNtCZ1=rC!w>nOh-|slRKX$@c&1DVi!9+2l$to)n3E&gyg#8O1EJojtxc z+GizHu+*|?nnp6ImzE@IVW9AbALnestFA!?i~lhiUiygNy^Dj-Fo|wTQ~XL@S#l2o zxccOrtl;n}p}pg`jdB08CT79JPW^^!@^f{Gy^nwn3~3R=wjN?R&Z)HEEJ1mt$|d?3=2-=O&Do zcVI|4T2{GYt_&QMxXg#$T3QT?_HFuTRG$Ou`hGu`=kQ`(q!6SXWMEgysmOb9Fn?4B zx^+6a4H2K9tEy#6m8~ei)U>aAz6)Ogo@rRB3^GBOPHD2%Km_`6JUNv&BJD4IbHUA! z>Zsuc$WsJwYZ-!S-)rTnhJ|faaxz$7am8_H>OGk$-y%jjSQJLcb;zT4O6XBtcHwAH z?NGWXw?psh^lN~?v4vpX1tOXNU3{@NTsPj{cgOH?%!-jq8ALrTJA3luPR?3s6VXKY zlms;W2)|75=_2M`@1g#o@}jc*>T=YzHuDgJAc8XXhAUd>i-I+#l6Cpz1S9Y|5m%KK zj_^Sg51>Ww&BD5f-}LG7^}2Q6y7iO`Wg`OhZ0M8#Qy#f^`$?HRVjM(>)c6XeS82cN z2&)C7pAhf$PCR9w?^UEs`*N@zOUrQ_=lVCX?%hwmU6pRxAS!?@zyy}~?1hh<^#6i} zH`##v+Ip@}W<89zz-aC)3Vp#gG8-*plf&463zw=#BNNiNAe9ig`omH}X)txy)-3IW zjUf-F(AbI`Nq2-Y=oa~&s3rHXKaRMsT39SmP`ec*6;GkuQ1yLJZ zgQJHlN@8TdT|w2<@bxUYPu<8YxMcAbe>4NF)IL%kEQz{(xN_z5wYzfh6U>U|*9?wT zrT1{PnbL&3@2mSfKWve_dm+y};k9cuQs%SS*LBz0dKvV$pvM70DczS9SNcn@lODlds^ z{m8uvEqXI}TdHdgyX4)$JkU0@wLNspsN+A75BWPHJ`8XhBoIajqid;M!B0~+LMH<; zoWG0|d>96yviHKT>*$W>!4)mwocQL}MH|~gy`A;h!O8{kF;30bOfKts_6T0k^jH zA+lU(A$7*amO58E0U2YkLqlM(qADX)C41eUs#bkOBqm$ZWZr6Av5Z6Qof@=Ldd=f~ zV+WAo8@CDA{qFHJTrBJOo-WNYN0PxbA|i%|hVO(VX3Cg;DQ&5lLEjz*}v zo=ze>*m;-_Ev24;bri+|??dT}W%S`9Yq_zFgYGNeiX5Fee$mk?)Ph8<3eOvH4A!<3Sd^R#kOsu*)1c3T6byRd zvV@|r0K!RK_@W~Nlz(bn%ZM8=MHhRtFm9{IINF&fj8_3s`pF0|xYgM%4qc)7JGO5V zjt69mbtPA*z5F6GscKAAa|)~!;JEhQx;(y(nh19>iUXuQ63oU&T0y`TYscyeC2gjV zfr;nzPuT9G0$85S%c=R80Li%wOL@6XXxf9`TWWDv!K?3b@ zhRYaXwW?@>iA=w3)kr0B1$@QLYIk#S2Cyy=e;;oHCu`lMYho*LeKoyiX{AR`#B}LR zk)~jc4XRb4Z@M7sF}TNYW0t%tbrG=_FDAMz6{AEg-oAd~eZx%wOmeuXy(=Z3)iinN zt2Ol|Crt*dNAy5;3(k6U{UMON93JjO1z7R;pT0t4N${wzYKk-u#2(!v!%0)pgN(B(3dzYI7;k&`|moPd4O zG~U*cc)B>TCEP5m5GU^qXJiI&%d^cyvLASTGs!67!u1*jaDlyY{b?YH^#wmcqFiy0 zT*W8=EPT%MJwZP2z)q%BNT3gO#1}3H5szvar9Bke9SX~+kzm65HhB4%YIdh6U=JE~ znwR@>ZetRZ8IJ^>cX-b&u=EF-RX_c!5y(d=A`-q6n4phqkGr3@2A>N}ejcB;fE7k! zqQbUb_V{PZ2gv!x8qTCV9nYRs@+8!gCJOEE{WuXvh0=%jgX2FujD9NfsKPWyWb?@V zX+qQ_2L}Wl>D` z8#-frf!Q_nZ9vXY!SvRu^vP`)CUGE!Km3Z!mkR)=BY;{nspWztHx(r}M_FL9Jp4Ll zWCK9NEOE^CbiOsO_|H_57@N4$ks{;7VQ4fhHl6=Bx%oYN>@gnoHp20syn&2Wny| z(7y(W9$JgO=xT*9_UC3*kKhTr8(U-6COmh%s`ydn%2peO*L9{+_Yn!`z8d#Z5$uVK zh$eZIB>Qq5!ZQ{t&-MtXTMdvR)bYAcfF^Z}e&c+Zg+URV$(aj`o+Hika0E(ge14R4 z@o<|GM7)Z{4d*7fDS|ab$^h_^p7KCJBnF8GKk~H9i2ifw-YAd(B}f`fXX~#@$(vTE zNm?P)1d10e?SVhk(Gi0w03r$})YE1l1CGdMc@hF`-ApU4(aukwYNWs&nuH2!=$|$G zJiWPy%5*%^dpl7n3UU}-{KSKJ4$~{TRxmiJrt~6J-(5Oy@2u=&Cz;bRbv95afVW7C z0>}23m*l~d#CZ|yBtA|v8UOc~aU!1hCTe~g9yF0@9>=S`$4aM8#C-3lqPj~d?N>xe5 zG8&u?zd=yiJH~&7mJr`=ThI02d4=})fioDpH8f7bJ-l>Q1lUXw;!Vmlt`YtgYM#lX zX+?35`yP02KS&0jiGh+I8fx{ZchRG^n$o&j*x%_0ah_uV&L`F&<9iJoOBJOw&5;8f z*VZ@x;XOIRDj1Iv9HgEcXwPI?oJVvOa}VwX@JHQH*(zuzLYVw#j^gZ6I2yo_V!Qbus2;2~$FPGj4vuki&~dWF0>%2C9j)K7bL^@~nd;N2g7 z;h57BWf>B2uI@fEf$4_-&jRodA0G9j8~`q~EN=CU#yVR^*|~lO5ivn?n#_?3Y`96y zeNR_DUspHS=55^H0FN&h%+LnTdqI{WZnfvy9u*HU!``VH%=K9yHdpazEf?49#`LzI z%~>HAD<20YJeDH+n~7rWey-_x2i#Q+bL}X6bcOcYVh&9f$Qx1Z1e=svQEljtNX!uv zFC6x(8HwDcA`B|{bgm$ZovLnuB4RP4+BtFmSYYHPm=l^{;;cydSp%en$^j@Cth-VY zbhG5Ilid;d2;lZYbhA{0`KuG^$(!4ngY>zz$6c=SJAY9^bRYh7#y)VxSUOpMfycxO z0e{p)#6&8NLD8K?Zp*a#bDuUhk$Vz@vcrEirKy^Q=M%1ma5R(9H^j_p<~iKFWaHO% zqY%QXwbmV2OjY|o?LkCjeT?Q!pfDI7o7F@*_*WPg67Q^BfgdlS)pHk(UvGVLj?{ll zcaFWG`S{%b$xYefKU(~`PTEpAurr~6V;9=;@G4~(x)2817?lX2!D3cOHnd$g`joD0 z@T!A6J!NQisGr;$8dzjaUWI(t?O?kv41sriDCqV+_)Gt6ueq{sulJUKQ*{uMIOlWj zH*7fqr0zNkeviiM(rNSnwU$(70Jx*pH3_+&eatSdF+)<&QvH~2aU=BdA3G-!Hzqeu zy-w?$Ty%g!@-hHUR9UAN7YM~>y;#4XJDe&>rhr<`UA*w~yDSQTXW9G{a8HqNvx~1A zK0NZ>#slUJA|*2&-Y(FQUS-)C=X`i~#}3mht}q?M(pTHi84$Q0YD%@COS-QxuQbko zkMzUQgh@v%9}PRISyUcY=ei|8%TQR_{3Qo8xbQb1k8tEs){vLy%U>T9^;m6(p{I4z zWP*UK9Q@x^@1+WwjgEtrU}|`1ECBtHWa~jQ%`LU6o1iqnb zKI2t4gw_*9#byNPQVjEm!W>k_|2qT}-W=fLJ6}RJ8HT-Hb@5ea_l13$|RSBkt-yoZ<%pIfpSOp_i zq@}!k2(kjNtE)e@w@5%2w5G5IQo?WrFo!ntv+$iU2jset1#nyVNA1J|Ck`0BK6>}hIOPM9Gdp_=JgT1Fi)m(4{KKG zmm|T`KM!kSmajJC>^;kv_^MxXCk7eBv`050&K=-c!q0E0tE5jjA<5Xn^G^ zhO8he^2JJ8KoPPvt1+E>bb~LRjKpI&KfW1P9;_M9Hxbkzr3XJTVs^x+1RvaN)@!a3`N%_=z8MyKs^>$&1Q=2^@}wWIGdZ$JqZn>JaO%KH!I@au9MpY2!x zLDBdDJN0lZIbqJKJ5d;_aY5yOJoy0@&r(-OVya%bKI|H=|o_^!#(JZ5yYtVj^ zE=Jo(b5VO?jTT*A*4L4weG}f?lC16}N8nch+AVF-8>~n_ITap7HaIR5P7(+ERYeLr zFN?YHtyCmaiOpem4-*LBidIjto8j8?II|LNrgqjHogzh~bi7<|^}iP`%*I~l-HlMv zXN9R0rYSBX2f*fEC^lv~a@Y{QZ4yUBrF?)=W|uq!bc7Ix5gXwBlu7xY zR4QsH!K~$MFxr=7o`4!&&(r>)659bH?olQb#S-` zWbuf%#^_-6p^i?$ILu;zuHJ_N!bbOH-*1lvNo@a%=0xkeAP?Ax9=? z5Mv)ChK|;mq&LN&Ggz$Qr4YX4W{1tsCVfKQhh4P=DrvY=IhbGJx-hPMNYaH5f3IP6 zib0RaMB$`ayUxarQ{Yof+Ukip-n-w6yW+ z^AH^0Lp;pI-fHDV*vjFR2L6F$j%6A{*@Y4FF93&u%qb%O^X;84eVKoJM`)1@fSN9b zKl?csTUpYhw29sz!wm5eemklTYOvgW`f$eDk6&%oo{E!?-jm&_Y0?1tZO$gHES$*W#X<05ojpy7?+ytjKPuVpQscW1u=&ou z!~H)yh2hP44b*~PuDQEI1K2Y;cQdx+(+RYoeaUxu>+hvwG)Fk1jXI=v3v_*Leuvb0Ev+w)(&CNF$<5n1)sSC{BOF^~r-G6w6A4`wi#}N^7xaTS7 zubYHHCEPk~Q-sjfy{?vQf4*7DasXs5ap$l$X#IB^Qc#c_DfPfL`H2)Zx#{t=xAXOl z$DmdwZ_UJHv*-o?{&q|8cgdI|f7;1+qBH=brMd#R81tJN_`fOWCRPf4G76qllM&@{ z-pf)rO(41SBu0xS?VeqeAW`=? zts-(gjk^Ep7I80~ke95l%_3SqQud^_EJXTgErJKQD)heJ?-OJ1wOkOLI)`7WyWOp08P5IGNcTzeTsP~TiFxoOTlqEZfh+eAtoSq0{tC+Y4m zI^tzUX{_NnxK*o!eWCu>i2u)AIp4>p5;yE=lu+j= z#k-lEBjAb?r?Rn%`8t-m z;#qo^ks&q^nx1a&6asHnEo(AAlD?2IjkL8onj$KvzEZ#T~w;Kwi9{v}uW zksaSvfiZIv4$uI`FP4uAg545MUv%l-3zje3bJEyEir3)wUBpgrdZI|m`;Oj@@?ZKA z+;v68W_b^R1`7<)odEYjcpYFQTkfmAX8+*+RsfTV^&AKO=D7+^9xx)vnuaqXV|KP! zUwt7Xi?LpOIlXiy*T(XDF*Hg8FiZZ+sUChvWcJLpb&aMuvzfqEK~g`J9pAAbwf zH7z0*^wn}hEf1G)TL07kPFQi{P!P6skinaO9JdLjWa(TvGtVf;v^2}v(4C26H4xAD zX~%ef{#k!$Q2g+j&|H?`@ufq?^~QK@F*JDN zrPLa_2qj4BLH?6GEY-4SHC{)P5dP#Qz|;BtISFn{mfF#j{pcn9S^?vBeEX3)o`EiF z5ie^|1xUCG;fJI@2s0wEsDggdHh-JeNi()-HnV4TAU9@3OWwz$fUBbV5avp~c%D09 zq6i}nGn%g@0=lR&4YbU0;M7+&QC#f@W%~>o@SG5~#H~YdvNX|7oDpRSQoeU`0}wi0 zX2x6IJoxdakq@4egXLd#;EnLoiF-HOYBhlblRbh0^Z8tgW-eUhUp(3rCVGOaU^FTw zo5`+-V&M_`a{XR7o!>S;hE~2dCORi3K&jdB-{JVI6kbFSum(UYt0rPL6N5 z!yM7n^9*r+Vu@V7LR;yR&Si-@`a!{UxjNcw(PHq042Y-X`=>9j&+26+KdX#5fYhiMkAbRqh$(ewo)l`X?d8!By%*klEH1w) zA8&golp<1k_cY#pabWvgW1JVq@e{#?&x+pQbHqBbTPDt!_Hgf?G@(3cY%!%Gqqjdv zdKQ89Z8_h%{ENx7!Yr-u7)d@$Qgxi{cD`9Xe;lT_TmU_|#xdwH&BAPzB%$s48&n~JbJh|+9_E@4h2%3t z=f-U1lLO7?7hI6O*?u@$0b`KEcIw~h+zU|!5R&#OP2x7>XF-@4&0T}6CG*$kzjp)s z&XXDLzS3;m$i>eHQ!&Trkg%s6|bndQF&7a*l1|G#hkAqnqD-0AE2S`}~6E z@Hv`UnKIFf4-w?ShE@3F-(Iz;P!kWR@{wI|VDsQiuiZ!XAcq{JCd+pp35kDbp}=4>i$&3v%1f{+$C(()F+qO zbkL_wTWW_Sw8c$mfd&_OMS$$Dl(It$@#vj6C0rQ%8)e*RFdGCY&{4qLE4(z$xe`EPuoew$gTW9T%ei4gnOw-! zf|I!3_v}Qsp-dq#v2iJ&Z-esR&l@($KH%C(9xS<6ja|@d24=Zh+AC*%mwS?)`AhXI zUje)4fmZHS%!6s%JM)W>#mXV~nOe!~6*nDoXBiIhc-d90J^LhooHps$4`ah9o96m4 zz5dn{qd9E=70yr%;?S?;WwRu599!TUF(B90SriYUo-$mNEofOjex5SJX)jgBQIudS zmHf5ueetpIQ2obLR$m~ zN3Qkh=+*5Ot-#&3hF1mzzNt&5ys`t3_^_EuHT9u%m7aiSHr_#NQvVy}i1} zNzVSE;7}GX+&lW?BKmi3-23+_q6T!q#_eVJuUY}sUXP6Zg^6i1ZtkG*@1A%LTL3r;KuP?U+*Y zaJLJ|{@ut^s6_6!s+;gteHXT}Dh!?%VLITZ%w5axgf(_}KD;iAK-ElLUTbGIU6@l8 z=nNNV%>2dS8$kS#K2#YYAJsxn<7fe!gkp8IRVO^$pu)b0TB8hA4J;9#OgVhI2(jm! z_vm~L3^OJ6y8($1uFTw@|>63oOlD2UjiQSZp8acnm1 zJYM=JQ-WStyhM*%Lnqij1NfS3^1i_S?RpzOzuabkMD6XJ+C<-!}zY>B2Nh&U5sHSt+FCD>}u%TZ=n6A0}5+jIUQfj!sW9kW6ugAyt za=(Ma5QtZe_(GNdt7LIQ*Z+8$1ft7&dDx><`y6lrkrFDw=(`SwW^V`_pZ-NLG;UE2WW1hb5k|5!%gv zGHcJ=0rrN_uR?Xe;Z4@+d!i^W9nWq##%wJ7+*E>_9EPT`;;S)8;OIr zEzjLf&?Gp6pn9JTx>ZXMJ08u4(?W7*YL%Qwjmkze-+Eq|tO zk6NE^6mb7a_pkZ!GvAB3KVKA%BOXjH3BgCtN4at)rXKs4M4UB-MC0|v!YM^Jk1|uk z<1$HuT9=B+Ue0hDGeG(lSo!0bhy?xpyP~LM?5|Db>=Mt_5``Bd50W7p!IR9##}mA| zlGyzS61fx+=f1+9u7?O8=4%q`lXH@5+ZMg=iR~0ErF@u4GLeAZvRis224+6_uOX*+ zcQ7G!yuJ~8%j82Fz#`LJx^U$2c+dOSVTAc10Cs*fst3Z}^xDy4E&sK5-(e2{j*Dr1 zkv^(g3kiW3+@(OVEnZ2Wx0U49vy9hQrHa1Y4)=#=t|8^D1n42h-LKi25TDp^+fMbt zmynk~e^Amg@8*du%lX6ShbbUOeeqSDW=frCz#vbV7HmIoh8?FUl>4Q4?H&=2QreT! zM+my#QXlx|7pC)a3p;vmwlaX?>6ZQac-!=zjw<^Dz zJBXOO;G=C+?A{II-MPi-JxWSJ`LQRrai-heq|@ty`|>Unex!%>m)MR_wS--j2ITwu zo`<0`bXYcp@tYd>=|-u(5%x*;H0|Z-0WIeGq0X{&*zma2s70CAAA9YEBVFy><`KS6 znD~@?duod=gy;|Nr3jhF`&}sD0frPbwC}~|bUU60^1eQD=KhZDEJx%AQ0!W}@wE`H zSy!?4Ad-bWpFYq0GEMmjk0E)XbNsiOg5&jhGs*7gMT9>2o^NjAUkva>pIO9>FYE_i ztBcz`vS@Yoi#_D*km^omFJSwwocfGYhC+CIK=S2l3h`ho=p32=BnqqPV^Da1K>D6- zba`35aegGq1#$3ZxU&R#i-;?}OdbjA z#k24=O;AW5c${1I&lY!aPR!j=kUXy_=2I*BcbIK>uiRs7pQ6&bL(`JwkEQgAj6QU? zWjVMcj`xj2*Pc$=Tiopo(H(8%L7@OLx2g5a1^a0Wr+NaFbnzFMbHMKJq|M-iu@s}M z;YH9r*@E@!knNoc$A`X3Y6p}g5kY4^iVtI+^Y;RXW?p3wkNrgFsDfv+po0T!`@-00 zmWL^QIx#IwwHNCk>0%y;+xOWe=#-Xjzys$`D0y1Km*eY5xB>im8zlemN0y>c9z)YO z4mvn8UH~N?W&ea?)$axygw>k^X*X}!CHq=CT~vpqe?&3Qwmx0^3G;$7(3)9-=jnDo z^;`c~K@TXfrBhvM^HOBU5+8(kyi&>$h-#NO#9M0I+JPMY$t>@3KH+|u z)d5bnmSUh^tOBsrffr7xDgkv^-L&PS+^Cipl*+z))kD+i;rFv-W} z`pxeo*J5y?8D_|#^#FO_qT_J(iyrMfLEmO z31Q^x4?L0OjJ!2c!f!_|doO9B!`Ae_3d*Gmp1t6CCP}UOl&37@NX9YlFnI5%HXy)n zO$=YDohs2n$J^B6^=-e4- zSW)2KYClugNMa2+z%xD{I#edTDnMOjij!o@$Z(8n*}f6h!1Jn*>QETJgFt#o`RfIDwa`S9kP;L9+nf9K7XhH1E&ow++9G(p)KCm3)~6peYoZTvJW=)(c!#Wu;rDRf96yr z0{Lb7jv?fkndZD}du`SJfhC;eB2aNZQt?vQn@1f*&5eDIm89cXt7P!SgCEXyxLIFy zwb0J_;fd^yNo$)jGAEbx2KV?l$0*5&*G;(pSXb=7TI|}qG9EBxv&tb589=e$G^r`S zq=<@97f?`AOIqVsx|jmalIT~jqU!pjV~qjSCC3lChLFfD;1i05f-X6XI{-RzC!=z# zAxO*nIzN(?u}i9+rhoD#A!5Zib~(Vgc$+yA5bv@-e2Pyjy{r-D%m2vI&T(m=kO5=zHgKFSY9~K?Y70zj|lPqwtZA z_ET3CCFX1H9yw#}J$}5;1P4|~jIx&T=6NlBR%GOK!6?kGpW$MucWa3XRG>EIb2Bk} zJ5(U*jL})ED-w7LCzLeVpfXE(i2jj5g4p2{xX0kH1jtAmg)Af>!g%mXb?}{*kGkP( z1qF)lE;kuNIle{6GX{Q*U^v~^P=slYS$i=7#}psqmkkju!^+$$&ydQt~SsX=h&Q{1}j78Y_rFbu^;5VBpxe^k-%54_2TO>wO5+NyE zqdeM`fKhcU`z{K#OVEXPc6Ss+@IM6d1E@@vjwcaf_(;7daT<%@JQNVseCbl#dr~Ex zU>B;*5IX{Pm+4;WhK=LHAcj}W6SV;s#bF;Nosg|qk^NCEuenu!&i>; zTYIse|DOerKEKgqm$QOA69`KrY1_@3hBEft6g<|=P3bg(FZ;sSZ{zRZIT3}cz2t<> zDotJgYSfK5T86n_N?jvs_=%oxZisPs^5%CYP!F6Z*kRotcYEx@-`pR*NI$D?vZml@ zVPN|_3QOA(wiQIvmPhw(i2??7J!rh2A8Q=EcMd76KsT3^ZCa@OwjB9ir zT;LDL-WfmDkSTP5uT)W+z;wJWFsDxls&je2TGZ%pk3uv`B9`bP-+PR2A*_+3>hVVm z9F}y&Ga$3F2BhREi}1bk6FSkt{N$qDB%-MOw#AnIr|^d2#q|!NR-6jDm?AdJaz;(U zmbsZKW^F~)E7^v+t(-ukgAG#d&7_wJ!7`rMuF$)GiH3QT z94g3O3+>-q?+J+xXFwEgQKJEy0CYjCE5QFbJ&TF$Vl&qd4n-I@m+c=GO*^uN%opM! z(M!&@6to9feWHM#(2(Q;`h%c4B&~57Jx7rPW5=2~^^^OsZ>U@1^KiB_7Hm+ML&P@y zyA^wU^iV2WRF5d7B8;xgt+P7DTI%5m^xE(XFS5ToogUkhT?ztxHn`DHZr#@Hgp7^x3#BWDeFf2>2! z%)Bgo$dv5w-q1a3EVx~eWqHGpPg}3BeadLq^C#9A{`rCsgkZDAWNkJ<-Pk#VednFpRDBZhAZPxPuBS zqU>wQ!~eFJEq@%~VS?*Flo2=xHxeQ@VTrX^*hTH1U$|}HauDLzc>DdDkf)Dw{``RO z;fEOguGcyRKpT~mQ+zKX$glx=!234>U!*%JEy^m)5!LIwho2W7?3ggWEaNlaL~J$w z{6hIFbdKNmojY4(SUcE`q;%));EW}`YjCo~I}@|yz1$v$lq}g4kB{wTl7R^}`+jBR zU#h241;ulHpJMQ9CsJ{@yT0vY48m|~+*|?8Zbl85DNIE#yvSIRXjsGHKW=i-&UdCM(Rqapt`2vho7%nV7NimrZq%J8fL{4cwy48`U@eA_jIz73x_x8-#U~)vJ zvX*$nHcEXB!tt?r*9PFj>f5JG!@^$LSpj1H%LJHZ5>3*hKM`n|pG5{rc+m)5M##@R z>Vrv|f`9YxoL#lQ;NUVBLJN3J&` zOO!kPQiIEBrA{B))X3m7tQD9Upov$)bl1U&Fgqr$vPT#{Xu`CaYu!QDPwcDgM> zlN?hU%`MB%=DGAMX#fhvuc9)Y%oEE#We+K5e#X;iZ)|Xiv5j4j=6fmcS6BKN+)ej{ z+-qn$Qe`@H$_LFQglxh)17j=HznN0_SJnouGBSgh z3o9{^QCdu!kxykCY6vmBb%=Nwx6hVy9P13?-=P68?!@4g%=g6#{&g&WRW3|dqRHOz zQ53>jqYnB<>D}zQ!2Kr|=f}VFNkA5ll@M}?)(HL{?MnXe4A5Iq@VcBg+iPQ7)p%N0 zDK4NGx||L1*GQ1C!iLjV_enOD293Uj(Gmym62ASpIITOp6EQ+cYFJ`Tit{12jfMJ~ zh%a952~v{~fDJSi3l4jmi@~{iL(@GiY>I^P!6tDTPTSrrB-9Bj#ICmtJZG9L;glO#j7Q$f*%QBbZvCt*58y$ z_;rkV=n~ufFL;Xf4oC4c&E4;Bk;UH43ue>`12zI8`x>q(j(~b3-W9jO|Ay;Fjrn?D z-cC}lC!dp0&zO5*5og@Q4C2^P5ZyuTT)?ZW*vJ4*@702dS4t6Rb=4s@w^^kK)BVQJ zBrCaKwW8iXbTp2DAD}r~SiMmgdRe{0u5Ws!O^N73#G1lynqT#PU8cluf9(~Sg?kQc zy%nM9M<$KAG?Xi2y}GlqMzKOpxyMelhEKjWVAt2Qkf>gt5cT=e?etnyvL*{tYl@aU z$-{;?a1QpqLsTPS;HV`Pb1ilMk@IR2I?A|z^-Dec&E=jrVQ6uj2jtpP&ebt@Go|<> zo5}s1y23lhJ%=Z=6ic2e^1W4$Kr>=(R~j_enrIU9SU+ zRGP1<_2p}eQ5GFC0M94~#etb3n+$ay$5ihaQ~y29iiTLu@vvDSp}=oMi1U4WrM!?m z6BVxd_!2$F8J~=$uaU5!+|&F}1%kX`Mcy-Pva-fd--({85* z{mb(ih{fw)>r<)VFZQr?sI;P_Hk9|lmrN4M!!Ea0OEBsktc0Zz@ZIy`3(3vTF?8k$0=J>Z=uVZ`CZ&l;LHvrB295Dg33qjnd5kfuMVixM#lOMYBq%}c(ora zzW8n%-4;8qGXd2}8VoJ(?^lkSseeXY@6e^8)*fgs(uCI_zYq4<+`*uJF z(zkv_n@BHD;n@3d?3lmds+1QaZx!APZ&t@wnQ^XAhT{d5e*tvQE53EJRbZ<6hU1ad z?@Ue9C#b9a&^Q`~7QyzS2-Ls0Apoi7UA8I#qGlKto6e{BK3DL5-@eyclW>fVzq)s$aq{9L&J=ZK%Uj)NIy(OF(HH((7={ z&#LV$UeiqFSVr?%S}$Rme5s3n$rsl*`f(4rVBSjfD230pIc_c7hh=I5i&i@$?@;0W zqyj6zw+OWH=6zkN@;<9LMjxl>htkq(aMMj&n-b?|8Fwm} zz?6*_?q9dFTuOp=>>ekNI|3K&y-Q$>_rWR}WnXd~kH@#25x|_=-~f>>cE}PQFR#CB zzs#mqqoZ(hKp%(c1nS{k#7z?L1+#{&56dwFIhnEk2$so$*UUBzRz2t%t zE$*L78t~n8W56kBKLTN@^0fb;+o-(;F~v&{kx2*N`>G`{Q@QMx^u6zxLns?GZg3&y z1(DbbS+3-VOeL3JT0<;PM znd(lD&WOupvZ%ng&5&}f%oJPu#dI+x!2E?fkrZ)P&6^|N)M=Y+iFodvn^mW8crmeR4zuxPmVJW~lD9R>Uy#eTsKPyQzucXvZH$QyJD-+!q z<#djl|Jf)9HKJ3Hy=^eY8yUo{q+&V17=a1riLGH?I?9K?000AxH7PsVJMXVqSP)e@ zhq?u0qHUTkuLvDQ|QpnAek8Bn`aN$Dt6`yM@ zDsByM@Qlf^xcI7NJJont>DhV4poxQ>a}IDLi#0SIimTxJC9)gWT4i>FSvWh*<|4Wq ziF(EoFvCI~OLIhsMNB1h8flrZp?aV7jT@gZ8gWRAXf&>CW!!j6+hjbVqm-|%DyvYk z@&O-r%?*MFH{yE2LmkS0enagxE6t3(q4s3RT|4{T*urSkNY;3@dQ6R9llu4_${D0EY=d? zr2UWL>Bqns3+B)_{x_aq5L1mAhMH$zB?Iuvb-Wm!042l^geF+^Zej zE~Ho+(>%$(F~U;3Lq3MTP!Y+{743;(75g|s6M>dCvOfSD8TWKx3|{sN#j%R{@eA6; zrtH+7Vyn0tQTG;7<6xH*9PJmdO7(SR50e1L6-1Q)Yl0(G(3H~x-wB7?Q89geKBD{w zT<68{A)sG)r>#Wd_$Mem(5^z8!Kw0<4XLR;ODatFrU2XNNF)R|URfrpMLJ_&#Rg~K z;S0n5A`FN}hT5ph>|&_=k9BG4dp#!CKnKR~hB-`pJB(ujZU>~V7tcKy4q0#R9aXQ# zNIFc3#Vg>;N*)ue#ARyL^u^v|(`5lY1SQ~8Pc}j*L#4r=NnxsRoT$~(hC~9m3QPMP z!zwyB;hW&m({`+aWAFlYs55S;i!S!M!>^PvCTIjz*G7s&1y$*fJ>SiDFPpz=&o!FI ziED{^DtBew-p?tY8dbqM6q=kA_F0kKCguU592c4A^cIVnZTJOgQwyWv21kMD4d?Ae zWx&^%AP?mlwf*6b`MI$e!t+J;P1-}hTg1?GX;6E$48!xy1tf7Ay0bPp&rg^K*Gwd8 z@Ooo9I@{I{GnTEO7qe!BIz~-aE$N|9HQ|iJ&R*?XctXV8zv;3o3YE81x zTj$8b(0j~@_|WZk!6$yB|0dd?8&Nej|MC4iHv%|F*WvQ51hs>|W$)3!sZ_HT z^L6&D0lNyZD9KvIimTvH7jaED5gR3`su&-Q-vVPVlXlX)!P6o8C`pfp6J7mZgK&8Y z*P^nH0gOZ#q^eq&zAy~a)W#&Ya)?+Y@RtN?>DL|lo@kT#Z6JTqE?0D7>rb}nmDf{q zPuW@6>$HZ)ps(;rd%~j{x{!Nh`^Ca4waKAbte#q6>$+|r9f^;qpiaZq()maEtFDhE z9%^3wO-q~nh|_R+x4FY*vpa-jr3taxeOM{0XF2aDpQ2tMP(L-D5j1dO>B3fddy?)S z$84UBh5eVQn+ErhiXe{;aplpVAO>ar4U?>fFMkSg)#z<6rUZ>ubDaBI+6sNxE5$3d z^!}^>bV^DIe8=_H`YNwUMAh&l%PsbG}6Lf;0Wb&r!zFN&{Q?!B{o?et5WsSbw- zL#Kio(Bv!J69K0rlQ9z#Syffd`}33%!|v}mXK%Q=WQw6_uu-F&k8O#11vo{=iJ-T_ zrzdrNOi68G1_U{YFD9+XwHx)NaJ&~4;XC;8J4pQ4mMk1MY-wXWZmW#J*P$vpoXJ0! z0{kb>tJ}4A*JY#>53t`?KMx?q-AEw2Z#leUu63N0cWZ~oG(+m{gVpH{DW#5(N&c}a zpg6%IW(t@cxqYZw*4xqgT&^pt?N(MIf6TlVrbno-y4k^6ba^EGN!vMOoccYMtKsTH z<#`;)S_sf+Nb%7k`5e`5W#n&P0pk6Y?EtKKS-ug5*Ruh>`!JyA8aK}$!%6?`Vfzxp zA@c48%Wb+Yq(q4WdaMMjIYKlol{>bis6g7N#6praCgJvV z!b09)ry5}vc}H4gaM5)aN!&woYlYqZVx5?NWqjU0M8a3^=Jm0c@()STJeDKpS$j=P zl7)(_IEoHo$uyr8ab<}{RprDnScK^1_GI;xorJ(mdG)WOumm8XKq}e2$hf4DY08*H zT>_FT0?p}>yw^xKTjGKjOgLz(IJP0i>({qS*f5tD>u*u)csiqG3hg5S8Z}xX*ZwPA zrBQ+bkOSG*QmAB6t?hSTv|FJCpr&`}0+Yw=ZE)}h&>xY&R7lS4n)5`4_0af6yFM3& zt}0fR8=a2#zuB}oWxwCH{|>c%#PN-tPv}+h%`4-2S7!P z?qxYX>k%uSjd7WwkudqRP!ucCFeguIt5<)YJw0%}^M)7Ws^@=t$8esf{SHH;yo^NO z^!eEf8S0vr!SQ}B#w{fp;n~r%EzK1ltEq9J-BXZBr6#4)=QlJb8a_AF1PeN(fSmr{ z566K$(r*fV=(5fa3D)_~zLJJ&4zJ?ci4%pz$Mu)uxgU@rKQfXjU9Kvs_p6YeWa3OFuBAmg^>DI5i@Ie;WMfd6x*D!-1DkqgidrjkGC6{fE zDV4DJdw)g1;(Ix$&7*%1?UHjUJ#8_ZaAxCA1n02&%)(5ZTK-fyXujb|`P>rD%F_-Q z>Lq4q#-4E z*u0k3IMl_OirQp21}JWx&uP#D#JMC3Or5&<(<{d?)PDZ~cyr{|e`Wi$TohhBThDlx zEAnb!UW~SI%I@B36e)q9g6w-e+p|3L^tz!NxZ>57=r((7{vK-@J12K|;@5xdpOWl% zY)31AjR)}Xd;q=%)fXrDjAQi$O5`1CBoEC<<;w9jcA^kq=-X;a(ZGjm9mw^QJR7uSDRW&dhS=o7}HtRKDBpts)N-7{R> zh+MOd*8Vfl;pA30{qYC{_zaL2#i~e!a&(q)f`Sh!NZ%HVT_YF#Pwe6+|C;|=jhzM1 z`vU>UdFw6E^PAKkdvO17}_)^LjDYUl<_6$%a$Q7!X>Q`TElbE*^ zgEZriWA<7Pm_0krL6;an=<|T|;!k^0ctE@Xu!d%Ynitv z*hY;NBZLoq1<}cUR#KhXe4VG zBRKJ3?y>ndvhAc%qpsYP&0|emM5IL3z*Y{Tx4c?&mbnF(qU~`e{^z`tf1^P>f@)mW&w2smu3}>9ZC;d7cwb zm_-WY!Mf;aR%c~Nt02=~%&=E&cquhy_r6hD#@QHepR!?y061u-o*xBJ? zE~aXq{xKGOKrrv-j+Od{{m;6)+3zn7cM3mo_`RE2FvjDe*Hg?j?rT_l+dd`7Pl5jj zX*jZE59$!W&Qx>NiS<4CO!CZD0L!VxRuo=2#ysV4R3E#eOIo`(3L z_yu%e@f$g&*hn{Gxy0Hc=46ErK4j5jj>PXVcCr+pW_tjdWE`apd|*`$#Uyb1RVzNc zl$)}nF3;uy#{ow8j;r{J#zK^m6J>)|3DmRA?*(PlLdI zEbcf#)Y!a~e+k7pZ2fVmR`+~!_L^j%eXOkCbHs2Ta#GrpYiafA2q28vf133!77{_z z74r>Ip3CnT1Z6$N7hj2-G+J;?=+K{jB|bIOtD6&g8LY&N(ki8W+cedSXVG0ST;|NR zuMn)%N3?rGkR7DGeX^)*T}?ZU9k}D7nEA@B?N|G=DLZHRz2Q14P_qvbMFh$U)R#pN zn}9FGcxo6=5fN%a+RjMjW|vYSU5_xC#j8$OeR6;GbjH_K3;CW_^vBo|KK{=miaEed zSu4$p)30)17V=dfJ#E+bEu;F7GQf}V$tTR~`)Hb}+hab7?l;GoPGG7MMxi?d-`ja+ z5r)v@J4jIcZll*ie8vqEA7LIU5L0~BiXIY(l_?@3{)r)rijrt>EeCmEUoN%hdX6R` zWIWW-SeMis2@TaCv+e-z9>5NgPYqx#v8E#f1?|UZ|JZi%6)V{DeH;i^E(!F&>xjPO z;}yK>C5?W_j!Do_;{UFfN^N>S>hs%7WnA%{o4wT!w0;*& zeYU{wKSM=`#v2l&BmfVe)oI%xYdfW_%uag&U~CyF#$fyx6s&^BqmAZT)evQYofn1rFMpNl%7;BMM^F^}QoK>(043`R>TD z+1r5i?;qoPyUg?MCtH|UR#_0(q-%d!I1y9=)~4uj*BcpJ^PXUt;gN4XJ6=_k=Nz>D zbDs0tKW)fS@gNtlIfvq(L%vAs>vUjw&!z8BTUSuZy`q%kvKirrnbP^c6%IErna?=S zg*(!FJ%!R)oh4>7^y?AA4BSH~6Lx>D2gCr(k76#h3z>$|3V-c~?XG8dD1z!EU~~_t zdy3|WqN%A9_U5Sxlf4aiq`5~JdKNKEnt%Zs8~t_}uD$eZ$O}Rm=5C+y=drY~7Q>pj zoZlz`BbLQ!Ip`C%{BcsuqS|>Mzm?n|OI+r-qTxw(5kiE3bRAj#E!fugcKq}M;nCi! zA>cGF7y8hX3|UNxpYwM>h6SLF0e{v$nYY&+RQj<49ft9CqN=J3KxeB>KY1-2i>hcn z3c#w(bgxEbRA=u?SY*^ne~>WD)PdzKV!+_C4!!)Nz(56_J^_TLesWnrT8Tuti)JQm ze5O;KxIyuTm^zdU$i7DS=HslOlgv-=rJJ>Hhjwk$sb7<`Q9~`vKV)ps{rH1Dc}@-V z&!}#3d_m=DF5!7*oYtBFdwuq}=11jKn-G{Cd>vcAe5<&3F)d5X^1+#TznC`reCB7L z+(SVi6@Ss`C2&dL{4wfjk%9a;8C0f$*gUPF#*(2iK93V07VBs9^~(YySy3RG@O^_a zrSLm_Xxn>mW*OWo+-;G~SBj+DL>)l(fVAjZ+SA z=E0hH-o0N3{qWFE7b+Jrw~XO!8ZfWhxxvQ`efqEJMDg;RM&?hF-US?sTmQP4@SsvO zP-(#@pYwvT0T*f399C+#HW=|B3}$r3j=4JasL47jyx@=z5tr-xGHIJ?NjOTCFYEAe zYsL9wUprVf)j~32K~IU;GKIclh^efr@4|kWyvEds-gr(W@e?qsP$!dwCivnrtCNNA z{TtTc-jC@G$6WK!pEMNg#n=nOTq;Mql z>Yt8M0n7^CjV3RLjL3Pv98@#3e-^EZm2yB^I7 zRIPHD7>cT0=^atdf^;1q*H@!EK&m)4Z*ez<)}c1fjLIe2yYaLzJ^LOUef)^ExrP1R zW81xFulvkiYnm$V2p>-&;|I@fevY3v)k^|aPW}Su7t3p>nr?K3%X~48^K|lT8o6Wc z?=ZbM>gnPuwxMY1tL7a>m7raY5GDQ4N=lCO1HhEI;(>zMV(sU7XgyB)+(+_ljhNi< zs>B;{E6>S2-*qqVZql>barpf>y88DkE@fmXEsHFH1kTKtqCLS>N1g(8eh`L9o675# zLOOkaMq{ZVPFj0qo<~Wlz|jT})0wYfse$GzyCmoC3D$a19rlqjd^;tSE1hK+K0O33 zZO2q(pz0dT^H~5cTKra{EpwOP!!T!sqg}Jnm>Dd0O0}aQ!oxx%_yy<&9begU9uA*K z3U237Z5mxcer`_KF%B|Y$9a;5Q;fFBN zOKdVE`}ke)lpQKNU_srk+-}-Q-u6jX74kE{jd2yU+Rl02EN`7jeUd6Hr%`jv*|yKI zr~DeW9&YYxh;QD;+-*9Bn)TG)@~3>DsPi_&Zj#0_x-S3 zgZ^SaWOO%I5hhI0v-CVWxjx<>q8NFm1o)Vf2|^VG&jGq09AK#rBC0GM&cTWZ^(QYv z9`)%RE*jitO1-sob$uNh3CoLgtFLRH-YX`JoCBPl86m7B`*HiHe!$k>55bV3I_kJe z{en9vANReRgTKF~!~OV@2gGhLvEK%W zm(&G$tB+*h``L!X}TK5&z$OCe*Vy{=r7f8?mL3;eul8jGEekAM6H-Y6bNl6u}R ze~OZ5E>g%F7WfO!nO^2rOc(G-9I|Z{*4H_Lq^4|GKtNuxfHSLVcxSEB16yj%>C|#v z8x!NU0*wugGzY?Pe=9cvG(`oU2{coc+qV2`BFcOg4e zTqQ_#PSrzzx?!zope7q11dQW?Sh1daoegQoFSJg%NZKhAS@ zmT{qv*_MWxm4A~AB}~#$|9hn89qn!4$c%@LoFqkYhSYrN!aeYygOCFCddt$kK^N&C zq00sZU5aVC|BN29M*3}#N_ALG-S!HC$^&`^$Y^k(CnAveUbXSYbXb#XHqe_)D1R*K zMdNA;WbllB?7Uj=Ja#1^{liByuo}ela0U2Xa7yC%{O9KvV>Y_+nQa0+0g0e$W=X3m zJ1e(OhH5nqelp67RPv0T097HA%CIYGr=oQ2Y{88+P|;S+ zF0F04Z<_E|E}WB5j2pW9>kPfxh_|h0k&$R}^%qa9tXw~#v|nd7qh|qU%;cX(Y6&uk7G=QK514E6>Epn|hzS72dhe!+G1tZ!Q*d?=cU-?mVz`ts=V3aIO|kPkIHqBEZP zu2gED4?dDKV18wGT)lx8Q~72i^_>ooe#o+=OZ{!T`L?Y{V}H1I?^SbX%-$QkBCGz} z>K}=1ZS&tEP*fTR7Xr;0J1UI&Oyhx zO_0U3Em+?4>qoF$_v_V!T_hK-yc_`szac*8?%5o|>X!Za;nT?GWZc=@uOb}~NR4`w ztbChHj@zVQ%3J@&ze!3d7iSIN0blpY4FwS)7pd=hlYr}t?_5T1hsVu2jV3?q-jlFX z7wfG=J9GaU(-On+rTmx8l_h|G&PAX&*b>NG{RF7W9NHq1v;O``wwwN+t8Ec<#NG`x zhj$|CHPKT^MRx2MRpm*4RkL9lTe9>odotW&>V1v+2&`ng2yL;$VXCCk0OvQQFSYPG zY8Bdc6w*oW>v<}cC4k=_uU8;_Nd^P1(WGD!{bBkdn4vuuL<{h0Yc; z_V1M}iiPRlF#>da;B&F8jNPBlp|9HE9vBNiNRBqINk%H8ysV<18(`OWZR`yv03iTD zw&9_oG~ebaN6#K(QecBCGNe-UdKMQ)8B2B&-}|xLie($T4`_4Mt(7(E|%CKTAf5(OIQasp(o~%32io1(lfo7|3$%DrU zu&F7KN@6c`9DrIE_gE&8T6($%>($Rk2ydC5Nhj+U#m2BW6RSn7#!W%<0cYc15Zynu z8?q-~;$cx=lG@IK1zUxwQ(yFV{zmy6O`Zz|7>v`vQexi8Jsd8L@}~t{w0xWTcG*h0 z8HEO_t#m7XKXDZpq8gnKe9q3)!G%TM@tRn`AlH(0S}(f&W7auoNhpU}qr;H*8Zo{3sve zo3_eD|6hy5OoM{@CQ|y9H4i_AZ9`?100jdX2J9y0h*q(du(O*wjPi;!6UWm+u|qlo zb88_~=rGNZ${g^?mWE9Z#+KqK#J8aLhzLob5u}!aObhr@BH?C$vUMc1{xwlwrZ|Jl zx`Sf;UHB2|jHn(lz=ILpE_rupQ1AF1Ueq-1Z3QfG<~lgSaPPdS z(F$@(G*B{!qyul{g3AfP1bqS~5NgZ<{TzU7@EODW2TA$C z8mq0;$mXU==jfd6xz_(_n=hcW-*&1-_W7a$<2T4aCG*B9RLz!<6oSf%$7dKBw*i`J z+qL55>{~tow_A&4oDuP*StLf(jm;Vp>uFh5)i2&}q=uNq<1)2=JkLP?+NoNQh9ZGa zH{ilFSimiU2h|^ZU9Axj8HceQTLp_q6C@hno(BGxgZ1&V9fJCyQu-l z-}`6CFy_ANwk`soQrm5-Q*ls4l+E}#b^1GV`!>r*ewlj;7ka~%J1LN-3dQ zIbt9Jm;C~HISU${^IIl8dy@GH-i`-kQR=-}@2{|!3hpiKXD34};32X)Y`7odxsZ@U!On@4*?z>>UO|q`zN=64JdRvlp4^mIfPF zBrmeG_vl^W)ObY%*Vj@s8?cL;M-0w3pKqO0=R7foG|EG*qAO)~@RK$Eo==j-ox%Z| zWSd|6yeeynYs+j>_JdjVr*GjOXu5D(v)2(`)*X5Yr@pAz2V}9sKrypcfW8xUxMA|s z&=+`DTX|f7&!EZU*o~*@{AB#Zf3Z&wp8N*oT27qRKm3QmxhaMW3hpt7nHqa{5qR2| z7Y!X)6+8szXvV0EUq|;w;)i~GupsJL1UCxu7-GlJ-5eopq`$RwCFqb$DoCQUonUXD z&{CY`SHo9(@={Zm^fpS5)BCQ&A;up6$@WK+-<#`9;c>BT<{Gl4x3{n3UP5`q+}a)EjoF__w!DAi~dhBFtqs7{YOss$6^-tLd1l8Hk_Ic zuNS*lAU*m5Cg^Sm4EfUn-NBzFH8CA-MZeU=G`HQGOa}ezYmygMI{@H&mFd`|{b~ul z2&^)r=3#a@{3xB1p%hIWDlFoPbyg`bAbBMqh5-aZ8Gmb z9x_S+@!0zj==03I4QB*y2b{zmJm1mzOT2kC$s+Cas|7+rvyj-GmL^i+PHVbK^nr}x zV^ZBp0BVS^#^oHPn{PM)5+a{w3K+%QS#s1zoT@AHkm71~>*k;RsN`56)bhgFHgYYQ z{}rUdA}6D$U+wbEeR!}}p=b#AQ~?y>oI%DTZ_L_zD@Vhhb%@>Z1bb%z7EpUOwG2Le z<1PRKWeqdnQNIe}48bG)`k81R2;xHgTa%X(cPAgFCT+G_JXKaS5@lH3kQfk+npMfc zDnEPvoV2s*95qbnatO*-;9^?Ow*r4w{JBZXpDO+LY8mNJns$>Iz+?fZ6)T!9rb}le zV_OQ@6yOvNlLwz}4A9t;M?V>{W(^%5i2HQsc`K}O`h)6w4$=xEn%Z`4Wf6FDp25)j zmOUbn`mpwLf8vheZ1@)bEu>Zsazl%nq3FrV$B;N7A}VTZ z^nJhBbZw_y7dy_~Az!G|DR5kCb9VZ~8mFhQx40k@lk2skXerU~sg*9lowzww&e!Rz z_bUN9h1C2-;(b;3^7Mx04SE64cfG6SmW)v(2qBG0vu0o>Srt@Y4pS-Z#?SbVV|~6o zQ8CsIwwK3*Uv5=9ZJRk_M7ze1ImjUA$LD730ExFR<2!~f=>(#4_w16SM`&wy>04tT z12)lwo29_!U&`yVUTM!*dc<*h`PCyxa8)ZBzrz{-q1^Eved~X`0$F|4_zv-aDdHOj zjm_^#vhame`rb9r#5|T&obbZ1uyM%h*Z?Dz(tA!ykmWlE09U;K>IPBE9%ZE0)gIT` zl%?sfqK6f9tLHfz&!`n{qY~X|h=j=wZ-ubA(CKVYFi~GE^6g&BpbZ&_NA9;wW7o5! z!;dr8wPm|=D+$*`eb?R-+J9^r-#GC)Vo{U88xMgQZyBE`58#;QuO|B}JJCk}oRNFr zi7|75(}MJ?z8V<$8xS&znQwR5D#gXqJM1r3CHs$zx_k@T88r1|*aDJB0A--7ICe#{ zwhbD-ztzxqq&9L`)#SCKJ1>o$Dw+sz{lF!cMQM`km2|i>!{Nj!##Kt9SZ|ELWqC32 zTRaMj;HL>jXZ758fJf*{rgZS(K=Jl1Ks)Pg z1#wq$iiu#%m)Y@UTJ8al$l0LCUOuqIl`1fS|9;g2;s3E*Uy&hyXkU5)Mw>Q;U4zFH456oL0`=D`9fFS zH~26y6O}U?LrD6(@4Nrpk5;7=y5>RTataIvfys zP@ilKzWp<{$A!qSNWY{<(@bKwdixN)21-+@`%WG1p_YMl6`8`U?MF0 zZXQ5cv48&Fl4+;ki9l0p%EbBC_Jhy~=B5MeOQVn;K()*0)lb?ZhPCRDA@EXw1N~k2 zs|4tH6OsNH?Nc|R8R6@lMrHDQ^+&O`njJl?>~x~f<2Lvc$H;fEO0(G_o;ru2z9Qo1 zEuy!<^4X^`E2=tj77LW#(9)k<)~nB1h^2r+TxZFaf@Y#Ms4Q5?{_JoDgzj)bFh}M^ zob=XLC8veGaf-kOZ@p@Vbt0>eI2b_+5(Mhmcp6u)t%?+$Zbv!dbf_dCml+{<*h#xN z!d7{=-&C;nu3_DyPpaijwgMLLYx*2!QOhn7ZCjqcuq2L|G~dYL-wDp2OVX{&XIcN= zeDP!j5Nw}QQ$NL<7MGv0%k57!mMe$coRjuW&V&@R$T7(0^3BZLZLbu%I|wp0%U z_SFeDYrP*<9>A|RarfXjTL#x{Zi$ZA!<~IamXAdWw-L+-u}zb)*2CS%Zr2X~iSdYh z#;)8K+aa-dOXt*)hyKpYSw96$-t*C97L-=t!OZP{&>1${BgScw8@dbEb`QchcgDLR z*S5aE<tScw`E_;2vlFVu>h?x(Z3`jT6?ckGL23 zPn|ROdTYYa;e%0G*l&-^G5tJJ9>W3~rfQY}WS8HpK+;<^ZErg{wJ7QNqJ#~skHMm9 zPuMjd6A}}U9)3x1QzWZk zRvu+#C>NF6FcngO|8(85{lILgm}4S8=&LVdjLkf_TLVg+^J!{B**?p#cE2^l^o!U4 z1D?`=#B*17CdwQGiyq7a{!5)V<}H??S=39r72sNNMe5Ydu5yr_HQVOG1sWA*6GKa+ z?SEula%7Mbd?m0(EF;@j>#gs|)bwVHe5!2i;S;T{=H!b@~@B-A{=N}0^2fz7;HBveKQ z#FvhVq5qRIm@NNz_sfe`rCCx1iJI;e8jUz3z-Nj`U`Iz1zNmCE+jB1?Tw-u5H0_^_ zl2YdgMnBF@ad><9+&){an?PX=#u{Noy;QnsU#n%aw zYQ4jK<01wBI1VzuaWk;12xywpvVEY-*|RG+6@h&Vq>Ff$_o>WuusBz{Z1&t!g0q;A zHDKwQ8|SO11y4mJ6Mil`HbNeMY(!^Z2Z;Q|+U!aYp_XfTTU31gA@h%<7oeH>0^WEM z8%|%tM9&=5LYyL_(km20W}o-_X8dggWdI}*P*H46Q{3zIW-hs9@%K%>kNMfjtg>dN zvYPSY)hWR1C%~L0ZrPbqvyT#$NC8Yk{-Wvg0mkgzonynhI-TN~hP% z*CPT0Iv<=c>+hwxAaK-6C+c2>k>2tGuV?dxzMXbN&FAfrahbnV4F`XbWJMR+_5 zZJmCLznw+~P^&fGUX&(PtR}lv>AG?!`9g!sUaF?d#UFf$gBgw0W%dO3--1La7I7^# z;vjlW?&21DBin=a9goE!>-z+;9O4F}q#TrMpXAq_O<(<=7QlB?C8bqB?=Nhj=1RTT z37oe16bH_}t*pi?`RL4U-mIq)0w%Zb-OvliRB)xdSu=Ys5iB2j9-FG}dS7A_j3fzv zUl-JTz3BU*|0Inx!b9MZA-~Ig7K>*(yLG_P5k*X~#L;>7h2-b&rrYvJ5})hw)1NA^ zm8)In2>z&!|FCzIXUpOiuTN5nPV_$lhpR+x$6>8}Af@UK#}u^w(5j;Sx#z1d3@q-X zj<>+iBz*7KV;tZe_LwCIvO^|-jkwO9NW1v%I>r-&`6M=J*_cmcRnwBoug^%Od3*KJ zV{$IyIEl1alBUz%1@3L32Is*2xm^nAwP~b<{H()Wf(5MTroTz%cIG0;!o0o;JE-Dm zU~s)F&QlYjsSn^|G3+ENoF?-)s&#%a3%Z(4En4SQr#bY*A4^gVVs=U39;rNS8LQ-R zBl0rBCv(r&_w;>Q>K57+A67h+K?vD7&oO6EBN}IOQ3}K5A+VB5ep*;=AAwmwykzWz z{8kGv?7dsmwuBSc2iIC1NKc+8pP8r(WbQ*5of?{iI6wHQ?;*M*mWnR1$Qb_{sE`d8 zGZ*~^$=lVwwy$x6@#em0y(h6i{oYWxunOEygDhPP2aNZ(wtg7=ocUsgR=K@7bmZZF zh|W3qJn@$t*5tt>#bl?5Vr6!=Z?+3S=&_u7uw_xYx-EO3-Z%0dSpvBN?wri?Qt{`l ziCG?N+BQNsBbMi``DYVKORYdGu(^^kb*#=e!PYyLs)aFVgUbBG!DQ%bVxT$ZEOtpL z!5US<(3Ht_=4_vg*-ZGGEBcsz6D?)2F7YacKG$zLw_#_f8q%n_nhtq`kfi$3g^ZYd zU-~j*k!R^smA3QySf~r&#h_hlzU-mU+U=TzPX{SO*0^5w-BnjvIz}!|R`XY&#?77; zvA4b_hzBrW;&^z`7vx)vPl}avI}R6GGa2os5cRY z*o(yaNgRz^)7XC4kH*M<^N4vu$a9PE3vBFp>^bRTJLv*hWQqhWDOxOHe#Q_QG!E#E z48~3OCM)Yqu~)=Cd94_d=D7S=&V9CRy9w9a4(HN}6_Qy`{~xXS3(~xx4*xZeedPmN z+^9m`$~_M%h|FYDB2MqJ{j2PP*EXy#>q6f?el3-zO zu@NeGFdk`7LbSK(+?PUECg8-6M3drq@s@nOYu z>NDQv=@eN5?T(&$=V;Rbbl>``&coxs5?K^Q(uiX9(_p5d$ywFMR(Q>9&6V=dH)ozg zh8<>jFYpz0MMOPpFF#1fW7l=mRD_`^+*+OS^n)jk`A_*puo?yzN1jJ+f9CoMXG($h ztm2l_BpPVbsQl=cL!!>PM{m|Ko3Ag5dK>-pV*m`Vlz$No{M&b9A>~aT&ruo?Q&qyY z(rUlwuk|)CF!B44H7hPUt|3Xo4O+#`f)Ya&v!HZhy^}yeg7gf&l*K!FP;2D@E_;{PV?0~brtl_uMPSoN{ZPoj?9@Vf1f5;nWaqk?`eA9$lYDmoXW$A_jk zt;azBoj-Ob@4s=Lqwwrc+(NHC3Zvyh4OA?WW6Rg6SLL8*>^?+RgFX+X;)6P0^O7UN7Hpjv;BYXL=uTj?Y&3sy?0e9N>QVB)vT75 z7PVsUqNq`|XYJaxVpFsB-lX^kMegDq36R3A*JOshJz(#Wb^=@TL5Ed0X!9nOsLHnd6q#VXJ5;4;!P-BuG$ zUGZQC+CrYO2T0WTqp~-a=C(sb(1jJK3T=&rXYnuH7|bkBtZqM2=Wf(+U3)w9u;VKQ z0GiWjV-O##<1_v5l1P|hH;<}jpCs`H!9<}~V2ktbaZ8oxo!6wOJmC{GSMkG#{UbVn zzNClRfUI-B`${lXKu^uHO=SHNL1ad8YQ$KN?^Iy}Mgt9*!jvI@@5;#ntzORb8N9!n zx+zwLhy5G;Ckz}_BBzS+_oqMqQZ9{KTCgcG6P(Uooy=@ zw+Y2ddN#}GvTa=HodD>{R$Gkm(c4$B)eFP7<_b~FkYe_E4C>w@fCqhtV!1BF`3i?< zrZk9XLf=AGiTx?gF?D@hm+^_kQ>_RiSN>;zM<3bOBo?i?*~Z36+DuvJO5o-I9kWNN zgrn806!vQCVLQJ6NQ$CqFRjeyG)$b>BKt`aP2Q?h%n3+$S-_9K$a5jO)}P^lVm$Yv z0a}Y-M~2W@r1f+S6Zy!mWdX((ADRT8bVA$ETG-xT6T~-i` zsth<*tZlf021Stv4Rxr+FQ1zo@;N=7l{ZtY&!sGZTfLe!H;YY(I-2}ktWJB`^@h1H z6{6#kPeVNa)b`W7UqoU#1y5*S;eSn7CQ|_Fpep9IUXe$vbuy}z{W6mlPWMfhKJenW z*UtrQ-$ovdXPk6>Oj?p0TV38PGB^48Kg?TRmO1`qfT{jM#43^W;%PIG%=xw3L!L0~ zSbi5_qqk|a7N3>2hh;P1hP)!O87h3^qvD{>B)%KjvMxCzLxu;yxJ*w&mG{?|%Ak`0 zK;NFB>BAVk+)ktW4%a7tPYCLo>LwU2(aFoj&R5dVMc_o<-6-bJieIr0@Q(LAP`PjN z?g;PCWUCg4e+a7LyL?|2arBL1{v=}P?wuhZtSvw#t*{gEnNalM*Y_78+*>#zK!U~! z!}QJVs`~-5SD1K4Wn2%S7b|6{Bh?|{;OY;#N!YJT&6m@}c2tsbedLFfaAtBi1?F*w z39r!Pw>!PSr?~*Jz{kN{+`;)jwbgQiN}BNrUAZ9aj(cl=Rz{A#xIe|eSJL76d4Ovg zM9RVuJUxYI(VdvO`+Ul?p`5fr7%p@47O!V^3;Zf zx{XPjs~O8w%~-Xqg1O*{*W}Zce;m7pd8&2!Y8nmUqk!fjvJVfyzm|{*sF)&~=dBcm zIos&8c?(Ca)JYCYa%lVu_RX@#;3rEv4u#oi3C-c^1zRUAmZ@w2Y2_e2JM!3Q7mpKa+@Q-1sYw0VhAJa?%sIvt z_F)OoEb(OOAGlGG<0*T**^02Px&e{$YbQ27^2ezVyAAajdQIF=oT;5bSOp0WQxIo7 zP&Av zR|p_q_#uO7uG(BA8_2p z5^*@ch2-NGIw_edcl8KzS1^7T#P;12zaKQES(3PpmDG_Yulsq3cyzlWq-(#l_`rB@eKIWvw{W zj%J{S{rm*Rq4qeN>lOn>({)YcgZAeVchR~id}NIM4#uS#`qn(nNCh0_O@ELi?ZV7G7`*<6 zCZt`F8t{F@+X~$1`Me)14JvY_{(@FV~9!}iGh6KKu;Ab+ts((JOo~ zyx(acBNIq3qZ%)zcaBMO&h8}Y;m;yV?W4$^)h>r!D>e;8jTMAl3cCBhg1@E=d73d7 zPd6VyY_^Nq7;@*KD%B3ACspk4D%C^T*n=+({PtmjuOz8+#7UlzH2PEKkm(+XOvf^p1#2bd1-?TM0#opKY4g9WM!vT;6sootEXvkVs4Grt0;q}t7A`u{pQvkG} zvHRtQistL0t@`s9XJu@*;bvcz7NeeIo-2EHAsxHkP~%Ig@8c{9?`nKP8*alZX_XM~ z0$-Vbw{W86f0O*FGoi0G5OWWYjpW{xdAjnPB`Db0kBE+%vhQUaO)ZzR-b|K*wLdoI zKU-1%#drNh*#@8HLFKbzK4FJwW43SSM z(i!G7y5OK9{ZKz{%dAM?j|#dXbFUdX04Mtl3{LXW%DkX2`1fRyYLs?%kkqcN+Bt^% z0&*`|$rg6kK_ZBfXf2aEIR#NcN@Jy~?9LL);UV=uGw#)771a`2)JXQ*)`^xmsQ7*n zhR}s4EVF_xA0Yym4zVzdw(E^#vHI18v&ITEiCF&0-<{HS9Li_<{0s7% zO*ITIh_t1$S3M4mr^7Y4RE#5vCv!EFNksX*bz$Ax=CXtaMqK;e`uO5fM$buXc|!MD zV=1Tke6m7Sl3EhDBy`a6xvGzKdgKLlQkvY;@l_C%&lxPZ`!c)|HM!v)1I) zXElQhioaRrozkt@`4z^bnEVIsV&=*E{JqW}a&28vGC;<_zBI_Zs66`t>M1}GrHra7 z?!Tp&p&3W!d}=fE#mZ5c(g#HXHY^rb)qKxdGVVIPgr)GlCPq~-dlIy~w<9MduH;hH zqL^2Vm$DU5w>8>NrvotRQ-NsDO)H+<+a>cjjoh4O4N`%!#001M-im|pxHOS+ht<){ zkEvm`t-Ej7^NlbJFSw|I<5|E~fp>#Vxa3KBZ&~YgP}k0@cfDLPE9`?-U9%~3eSg#w zf0kZAm2rmJj>~Q)hBnbXQxalD5xs-F-!X|vmTEsJ*?7V&T6Abo!tUFX<0#Yn`G@qt zZqpkG;GWl4#NBk)lYeFtEgZUGH|A~$75H;uXI94`^gOnasBwu)s7r_7N)P-m+??&c z$#L_>=eY*LkIG&0%0XQQ`eUZB-n&}G*U5)xV4Dn3>lX~&F$_NXaddQ+7;62WETK0% zxu!#w`}`+gO2&2h`cKA5Uf;T<=YzwK9Y%;52 zkHW=l0a6uvo*v&hHSeA*^a|kz`pfLW%rEWA<>q-EyI8gTp2amj+yJpAAaOCCu%Me; zK0l3)OGvxz6V{HtCVWlFHtm8Uu-a5y@Zx(|CqkTm#H46|d&{CYBbKH%XM9ar=W!;j zb$Z~@St?DLM&5;q8Mj#eW9PhIUEjq3{X~w1k`e%LnVCH4erW$&$ZU4_4SR^p^?-WZtd8zx1pAeY6!(jGSf3(??ZAiN z+fqp36zMY?7QDk)Pi-lsEqlxAQq^Ap*s_DcO7xTPP5~aq97U4DJz6LN=UMW1dv-BA zOH)yUB@DVeZSez$OU6D|4obL)x#6V!6LBGOrg-;)T_XdSj0@uoJvhY=m*Skyxqv#UhpX@#W zRpT$5n1D}iT!Z`Zyiu-WcDv-C2W=lh`gkjk+}}T&N^=_@_=0QdR?J|5UtyH5^wfcD zpLDLmQ#$q$-x{CN?C#c*w$%1X!sF;J z8>IPr?M3DnI)`>mGsO?-d`mn4g@&(JTd!2~->qj^64WrRX$Kn>gNO)w zi-|F>ja*XuGRYpcZzb0ul*($#Rr|vYE4T7+<)<&GDTw|~!QKFE{zMZY#cg{~Pt568 zPlO1*A*~&RJ^5$bA&qe4pJ9in6o!&W#P?H1m;2VCkIIH}_2M`43v=N)!xTD0)wDy% z9Q@=s+FzdnhM90-YRQUR0e>H0ZULEj=~*{%H6=5nrb<+RDB6mwb`54;hx!^Z|J}ID z&^xFw6;A(#XBER>QF#2N1@D<|axWG*Uw-SynPPJH6^0RLuQ!PMocCvH`@CNJ)yooD z;JeFC7ears&H&-caJFL<68=gEgWVJ}Wg;lUTk^>6Jof)|CFp>MS=(8s%Gx^vb74Bg z%KtdzV{<>!vc2D|KNtNfd3Y=hL zGPbiQ9Gb;lqdv-AI9&URS>ag7n0QHlE6JiaWZWD#c0n>bC77{)92}L_xAoE&rl!!* za2uOhlZv>n$opQuJH(4BR(08!&x1W+3$*-%^rFOfw|xuIyVq zt=dXt$L&yyYi@dJ4IyD_sm&1mb1@}hKl`ub7-pkYY8IX0qqku>hwL3HuB*tCBGD2( zL(6jvrQQrVWc>0CyK+}G2U~X3@9S}TTk6;KINHvsxc9NBowyKbDBh6(Suk5{8pHd- z1n)jLP|pr>upedzXxRfS=_YU=Y}iH#U9s(1xxXs)TAakoaz|K00M-P_!Pw~|oZUU~ z(Nsq0$<|d3`vb2JWEh}!SnHw1E8HK69v>txb#*rQkrMjcw))?A3SZKe8tIeAs_t=l z2bO%RFf&|5G84b#$H05m7n*CwKvUX%rKmNpW-`~b(dJf%ZgMLYR&a%JGhb}i{Ac#S zwRbALh2s?dw$yYDT(gQgi^vmI!Tn<&`aboghyi=cAjdu%(cSdF_UnS&l{Fjm`*-6xM9Ka7xTDVg)jj(@r}M>a2Tp({N`CWI6sx|28z)xDrrQ1Bx$UEm_$^9f z6yIj_<=Zn@zV+4N=J-A&l3b%rCJNURtC1*1bm~3pE~|RnOnA;qND6w;=Pic!Yu6&{`VxhI6q+e^X!4i z>%Q(+#dfGpqNqJtBE-EPRdMz>ae>yq?KA&Nr7Fo{OhkCG1JfF}o|}f20+IeB5vvqb zCT<2rfr|krBvHPzFK6FL557-OL3sDn4B*iJ*=3nzTk5MiSaa*Mfo#!|max*p-zcIR zThpgrx!D4P^fA4gxxa$O-vqaZxYDIlOK^&O3<>?FMD!0vOEHubtbmOO?($j2z4TF) z64tdtRP{tIMB~H?-)%24yT;}(MPTv|rI%`PnlZd0##D|*kl{^;>$>t4dYO@U(GrTY z>Zuhtf)PE)Y6a&HkDk${Rye}m#ZJ^pwj|}1O6`kz9o{oee%dQrrHkT|$X`?rBFQg$ z85NF7y2Qn0n~yN39B9*kjg^_NoIPGwPT5 z#@FMcK<~bSe}k*aL7A7I*gYmwOm!nu0&%Y4*0IDB_xw4nyDxM9WFR}{^i&ZyY)x9+ zYRMTqbe*s1ua2_^=W{s1Sk0|6|9$?4radWWFwnB`GJ5Gn(-|-s?PXbxTL^XLS=be` zQ5^dZ*Iy$Lx0P&R2&iBaqUW4>lN$k0XNjM=BHq+rM3-@=*prTvK$dQqWAb1@Rum~-oPlt z4@Z+BXjh321G@%Q0N0o`8FB*N0L2(>r5BCWN|0{ecUc8?QgDGp9H{s(ZcOqJls6SOS#Ab|8$<&v7j_qo_oyk@{zasZ^S# z&4_i_c8pkuMYn)X5rd+?P!oP{Nlxs9huOt_WMtF(wok!z(wi;SMh7V2o z$ESsnZ*QZ;I~&#Ie-Ic`0LXHJ&MW(+ms#+VEW*ysjJO4)2tV}Uo8jx3(8WoFmCf3| zy1`U#>qvKOTMk;%%->hNqS1%ILBDVORK>&`%68F=XV~Q zg7Iu%paKhUikJ3lDQ8p$g= zFF0^|+a4x7n~+p%JlC1%i*0nt+!U*`dsUgAoBM3PDn+E?{`i{0Fg)bG%_>A?TI6-b4`bI#4>dB3YdgRW z+Js2hzkXJcY)+@b3Q##L3!NjzGb-x%6fw!BVKT}kNm$s>w`0J^b6v8t`X=?XRcU>4 zwb}SBX|Q~ph!7e3;a3{oVA;s~^~W(3LD@0$ zvWjE>D-YpJ@cERMc|fBvCBH2y)uRu$asA@#(Iz&yhQsjOtNp%RzXqe}VENmb04;-M zY4F$)caFf2%L?$G6c1;&(YI1zpYNNWr)YHF#j4f5)z);k!S9G&yM^H_(5k;uHp}8v zaBEJEs!TdsvIa0#LoM}2bb9Ygi3wBti#8MkLjY~QADB`Lrn!h{lGw?nGTr$^8lP`X zSk+u_{rb?TJBd?>&FsomXX(-N0*f%xfA$`jV%V7sltWYYrO9udN~;I|3m$rF^^OkN)ZINjv+gF zcG0gWBHh~0zJ3X2T{k6yTdh9uz-Dm`KYDo!`8d~1_Aa~|^y7o#Pn-rmwuyt7U-5#b zVemeP-sQ7K;Q3?oF@_jP{z;EaNf(+}T%YSBYsPcTqiNHug!T7AH35p$a2w5aT33c1 ztxsP`UzidlirJSw4~s!L1hDpZ>eFW^9`x}$3tEUQWrg6iA~f|706^dKbqP;Idp#ei z8znqP5n`}tLpg5GbeLsc6InL7_WT&-T@Txu^CD-Ry~r1D{Sb9JEU~jD|2&^ME%m|k z%t?c>R9x6?|1DW}Gl7$O)RdjAXfv!kt9EdO1Kz`Cnelj3C^)#|%{6A{X)(9vv1fn~ zIBFScVgpZqJh?k8_Q_o}>W@Mf zx-FMJbYvAkU6L0oSCil}73Xf-CU2T5byGnBdazYDSDpzphY9X+;b;j&M|$5a#M8TerVvKX-nT8|7#|N1&k?{JH`PV*#EQK}F@Iga;C-HCMNIHO zWCKNKe>I)KX(W4y!~hIV%5O?U9*y`xA|Mi2Ut90K5^+Gy(7B4Y-~FL#G$xCh?|y5o zL2g)ZMItGQ__O7HNqj^iPa09?BDjf1RsP`$#0Z@$09_kwo+0ky8SlVjR}ii7s&XZn z#FfG>Vmb%^(`ilBcNbVgjO1;XKJo+B=-Hl3W=)22ywBJ+$ld|UxK5^`#IR(GXYt6# zVn5FO2mAG@wZX))KS=%^I{tz%x@?`}>3#h<6VM4Y(Y=(Z@>bOPd2qgnmBUNJzmQiX zy(u(aSA-Of0Jfn`6rFa9c0kCrfeM_=C?1IxDi= z*LxF>ty>1q7nh-Qp7LrE^>qQ5kA7&{y7&=E;>=SQEopN8SD#30y2+mGuF=8QIM@K1 z{f4QcIvnFR?_cX3a3ACtz;7{lL(9$KJxgmgrWr>wxQQ%>#KHI! z9j!!en`Hoh2l$oDgCN=%kc|MlF88f>FfLh>e-H1gQwDuH!CR8vA@bnLy1G^pn@2hZ zKf71Z5Ky;I|(Ew7C_5@LZy4ci5!B-T1)ce(^MWR*f{y!At6sN0a`AjMt^e=nLg zo6@uDZl9v`=KF&c@?tnl-Q&BSk*tGvu7maLCV)0TK3M&+mS^S`zx;1cf1# z_lM{&`mVUO2m>=mFBa}U<{4~GFDXT#El|9aVc+>NNjEHYZ$k244as)AUB(dMl~2$- zX7F=#6Y}ufksG}dMWV~CDE4f+aZ?6oWejzMZfGEN1rXF!SUg)@TnQL!akn+m0ITiFvPDG`YEp%(;*}POw`o5}F~}zndkfPPcoy7i z#`D}EjzcpdiUut7n8S>m zWDu@rZ5jQFsS!SCb=+xV2|2p-9_uvbshbv{U|iQa)Im!WSQfX zXwvC1ZB55XJU@lM?RJJK+9FBV`}pO=J-5~rmbQ7SlZr0FcNCEe+XYb?N}D59-b{xT z2^ZuSFQXFBM=PC4u#^G$w@l4Yq4jM)+=DJLnkn9WC_X#cebdBc1nqiVZe%WE7V(gy z^BmIy(k-c(g#i|qlr9l9u|?k=2qVQ{xLOTq|g zHY$MvT~!`3Rfp@wqLN=nI?8ye?E9M}qCj9G+ddwc&1dEpYFxxn;NF>5RnN5BX|D;D zfQQOvx>AtJ8qnvA0s&>l{gRY#@64r#sctg@QE=Wgu~3nNZ-}+uolx8X%$lO#oZBx% zbq0b*zb3R>dfod`^zlYwI5c7I>AJ!o3MpS8O_tszJ_l?r2u71Nz*Mh8=_;6_%FZ#` zg^>4{iCaOB+>m%-b@|@l5&+Qb&ZHKSrb>P!krMe?_&WjfXI(Pss4JuM{N*@#ycOFq zo5DW|=x`sb4;J$zHGD+lsuLAE*n46ji|3yFO^VKSG8<`MCSD-LuLO)sVK*$AB!18azCRBy< zNm3rg+d`zk_*(XZ$+yGP3dt0ur%^}H*(UVSld-k8w)gsy z9};VwWN`aGt=_fOQ4GQa-kdcyEs!zmRs&BPHQemRq{da=4@O?RfBqoy;n(8e-LGVT z4t|upqh?onQx*WTNG+;o#?_LMqSt);6v|=SPAo?N%nv0^^KjNU$8EKO>X!k{x;D|Y zpw|Yz*is;ps>U|R05(mhPr%G4_(CKEPO!t>kv!s- zV;6(>kizFs+3=%A?sp`Ewz4Ubdcb_;yDlPtH%&sn%tfaUc=V<|9zOX4KWwk!4D(Fx zmn~+FPIN6uNHRk=Zrd%;5wgoG92&1qf9G~pC#cFdx5OInlN580EJqzg+=cg&A#vsb zvgYF(M-s$qf%Lo6BSAb>^}$r+IA4k6i(k)fPb|k+^^(v%$X5WZ%*;vn_B;d$kEsgn zQxu9{hN*YCJP#Z;d<0)qgISNIc8224P`dVQ$tczVTlqfz2z0udWT?4|`E4-*W{G(b zAf1h(mG=nz9(Q)t>C2i~{X-8=@~ib}g%nd~5b|z z0nPr^z`A?=ZgNbsJ6m6-cUUO-1ItfFya3oW!d(&AHGtfY>+=bisy>epk6}pJE4ypQ zBwJ-aS-1-NPLWD`Ov%I9XF!8Z#q2lB z8Joz!-rt(@xO<;c1RW?FQx12&B3a-q-qu$wA9utM3IkMtOwaeR+mfGN^<$l>&ASfL zA%KT&sx?_b9`{Iz5k{A}Xuq#Rw~>CsZ5QB?S5*Ke4v-<6;GgVg9Ja}x*svZQ4ukvI zL5b|qo5dnFi1RPH&~;9o^tNLIzZMLzd|A@-8cgCJ_ zF#^-6&R)jJjDyl1gyb8!v;tP&0oU2<&TE49A&2Cvtzgu-fY7~(fS2TsYJ<&Ae!IWc z0OOrDD_zwdp2z*n0%ENUII#j*fG~&Ix~(Q;F!0bloXy_B9AsdQTN3>cV+&tp~8Nr8bRn!q;h|e){3|spI z(3+3uYGZrwh1N9DyOwo%+Ys(PcEFE*95EBKM(mR!(y(!E=c zOL9M~TqK@ACRH0;y($u}0f-a{x~QbJy_gT^BI-@RA+;_{QCjlaiXK?kqqV3z=Mz3_ zQ5;wNIEd7N-^A>lE^n>#B&$hGo;iVVF_J{@GTXG{lhG74D&ukpn ziv7vH#2ci@tqj^ZD9&4Lqc2G<-#t)zPc~w@EeB`>)Sw+K9F(Oa%o$04S332|d-Ap< ztNxZOg1SC-Emw*Fk9V>T1UOABdjZ#vOWZK6mtsxQw$_34>zw6Yuhyp-Gzhagm|WhC z+%8Z^%N>1C6Bj{l>tY#b#3^D<#P(k^r0L{T z;wA|{^X}tA%!(RzrWX~o&NSl9r0QuW6L(i*md2Rg{+B$n)7eON3oVp}(x)e%R9hAw z@04LG;QYf{v(x#LH1lRhZm@2Sx%=?Fsk0}}j}V9bGs_vOd3aQJ*#8QR1U~X9PR07b z5N3k24~kQfDwfbC_i_S!3F51#gOY#TJ}l1tZY1x_`r_2_j&%3FF9qo`u;$~&PUA1R zEjSO5`WbkAd%0v6L;oyHfC^9i_FT!i<1OoY$o!+l6$A?@N zzokGi=*{xL9rnq>H*sY3PvSZm*0&m7chq5tZ{<}7Wz3p8VrK}x;{CIJQVRFxL#}ly zM?2g9gODZ1e1qPgT)=Gfz9qEqU+7q=B#uq8rb*bwhky2*l44xpzv*M6Pxl zWB;pPiq5M(#Je)pfO%5Ro+4oPnn@Ovshc~7r>q}Bj|9$nhk?A2a#?MsA2&356NIe2 z2-fvAk*7A+;+21y(j+T*KO+$$IN3 zO2!WmAC6)D3}s9%pK-dYx}Wnz^u((BkhWUYlS$Sy3KaSNDh{_kslr{{;}8o!V2pdu z@d%NR{;=AL-h>F=xmc3{ZdzkmTVcBeYUPL1cmka38)rhxZ?q45N0eb~T3y)Oci6o} z=6=p^hc(wt7X8D~1Rk3C?`uFnF+2q6V8Yeu_cd`SPeapfc!lEK>vN2KE&~9? ziKcsx+NE^1PIxew%)t^IvQ92T|C%6H_IxZ9EeINIVg~qk`9IGmqfbYl-dm@Z&T-3a zIb%~0`Q{~B!E(1wkZ#HX^k1F?hZC*K!<-V4tTJx&(E96sqMGXnf27aZZ4=Ovv=L9C z5{+M|tE#E7KJwbz7yoMvv0>Rme_9+wSS!0ma`^47&5^1e22>0!~z69>wASz4K-f&-60_G)|l*1 ztk)BSnY66HiWDMYpRDjW+zkh52!aRA&^?-BfJ-rej17GE4P(@p%5POv{;=qc*A&NJ zlm5EuU`J4jI;sqRWcYam+@*i=lVo?Ys9Crtc5fxay{3EZFOx~^8>N$vW=d>zkNPV~ z4sT0eg9MFXeO2BiRLXcjPEw}E6YlFD0TFL)VFBj&ziDI*g4rIwxqH=fW!}!6m{aC@ zG&e#bW5K|-lUpLAYW;-AXK9%LmllmS(5)mc6Db6M3O}H~3lHVGkpMhLIixtUq~Je{ zi;P3w&G^}3HON!WTET5`ic-IE3-9I8;pG{C}@j(df>A0jnfSQaye~nqs(KF*A)~yS2>$ULHTi9N$x6;#b-=`d4-Us8l{^J< z4cu0N3~Wle!4&HE!3n;m{F?;SWpizpEcm;3o9h26y~=Im@q8}d9dh|fonlVFw%MLX znzmOBPp?swq9Sr&wwUu-$_~*9%oY)VOvuK&CW1+&1B{YL11e9cE%f>(sx_-e$@U~A z@8mk1zeeTks0;}LEP*3;D@UR?y{@W&eqFe3M=GFs2azf80(pMT2;sI{liziMn&Cy3$E!(}$w2}KvO^(sc# zP37;~Z#c-w8X{NAOw;pG{bi3u<3=(mE{Bg!kdBs^iu$db{j`Bs5~ycv;O@K2AeDrf zZ{-Wl$c3lt!%j9tl`65wd6`hD$hR`YxdR_2ApB}j1hF_d`aV2 z#VrF0NzII&U+>3+yji#wn;rtfh*Wnl+}-M+`*Wv9(^Xbu}Kx&WN2=e9Esj=#% z!JvjY#GxE5;P{)%gdowxKTvbe&qu(poX<9HZChpJzyRLL7&4b%7$&kIRdAH?LXdZJ#_8z zZJr{2V(nAnrZIxqxwm_VCKVkx@;$8rX~u5jp_kRcK_yHXflF~Vc^rYhqxrY(ZJFZT z!3EdKY&W4V(7jv7fw_gChq%v0IPdC=4rr^ywcGUcPth&u9{XFu``pqW*Xp6BzSw|- zfX?69kK2hZ2M#U%0a#LP3}!L=6o@6JG0*?N^{-Fom=l5t{~HM0&rx1`nW8CTcy;>n z(SR*OiIj}1DqiSs)@gcGR4Jq)`>ovy~jg7Z3WH@99tg~j0R*q8Ds4n9V#Jv*Q1WjZVx78Am42$iz;cS;(gzH-rrgq zH2_HOlz@7A2GaYXN_609tV5hEUDx?j)e#1~nu@c$AOBh}&A5X|d}i(2=Hb3O?1-G~ zLhr0@ID%F<*SBBo1ChnQdTSR1W|v}q_zlAVnTPkyDIELLNFKwYs0ArutHe=7>n>V(9_coK@e4`PA!Rc`PU|%P4go)dXr-? zmf#oP{5yw@E`YrjkE8@aQIO&-E3_^f(*c-++~ZS zSSFp0)llUv#UMsZzy%A!RAlxEqFD_GDTI+7-;lY^vr3UUN};p0j^M{VqH17Kv_6eDcE1IhLtPd3b{6ckp_rYdC6{ub*zX0yK_@Q6By*|EHu>xLM z@N+O-Zkcf{&dGb-^)W?FTRSn&_R?Bq7VqsaI3GIzu)l$b2To`d;+u}Z%{N}#z#a0; zWD@V6S)hsv`^!Os1Ae;kLnU57wGtj`PVJA5tYj&Oa#m5dIZiViz7TmL7nvO7X@&hM z1Bgwt#zzfUQSc^lG;Kwzsi;{L5Jy2X#yucI8NsPVi`RUZNO7sSLWpPt5MFDVaOGS#vy*~K9 z`R`x$vN9-oI^N*p*?>4XoP1NC?sWY_`=8O+`=`H9yzWLzFM78$Z4W@=61E+$Sl6+X zY+F6}nK=r0S7vc|ZVHbdD)V*tBeX|A#W%oFq#j+e2`^o6-L+_m_8AJGLUP^?4AD;B^2}^yUpC zZ`^_ z4cmE~74CHA~|P~pxRMru8-}zx7+!SV5D*dS0_t=^~cJ4aQk34u=5f% zn2v+omXrDy<9!J>V3b|!UNlLm5?OjSuhGkNP+tzzEdb^E3kI#i_1}F;x+$UoPWa;p zvut9(_6qC7%N*b+<{rx_IiW$kuYBkZ`!fbKAt*VMd-B%-L(sm4$w;8ABGj~)haAdDdnFjj*UI1L&uUz8!b< z`Hqa9L+oqcBu{cSq7&W&EF;stEI~a|k=5!<)7Qd>|j&S8Sfkn4rM3e zWQh*ZQrdEV+0v1b8&j|m1|QDNXG_0@^q#k3hHibT%i^3;p`Fq;j!W!5X!!N3H|#V zw2P(%6tm|88d=u+25gmoGBrJn1Z-37gxv^C^XA#BjNIYnqKiLmIul`}S^t8TXAy_A zRjR1kXBB2`O2c82;hZcYm#>i<))HpQes#Ba5gX4pOc~PKx4@3o$A%hqwOQS^wWJc= zDDTdxWq084Nee!MU&DFI_&wVbbj}_*3%8Kqa~s#Lq={!oqEJx$UqwpbWu9ka&toU8 zKbzW$9Eof~t1OCBFoa$jgVj@#ru8t$g{4E2ox!!diGCNDG*}RlGRB?}T-7jiV5@-E z+6U{=|7DSvif7nSH?EA?M#{el=Co&NhwctRsxp-DovroQfEB@vtP?fXhZk+TSWmdf zSCHb1y42g_^Tof9P`tSKToCKUJs?o4QkoT%06&`uS;wsPAoho#wjEv)a|{JNbx{b` z96;LLqK6sxhd1{kpkpm%it@w?OB{M|VFs|li7 zYeV__0`Sa<(vjZ^cAV-29EEDK6YO=UO0PeXKb5!4!9Z1F$N!0I57Sak5340?v;6=b zP0@ru*0wtXh)+AyCYat+yd{TmjfZF^Et)n^U~fqf$^U@L-aUN*8#=7ObQu=VypCrC z|J{@(V*A|GrjsnbsB7o4YskO_uxl@netS(V%4&%>e~(w#YBT(7Z)wp0^kWUNAB|J5 zt_ZwTOtHMCHCG9=bH7#g5gJl$5KnA+&o;(FJlq^-Fm%o|{~EBFHbTOT$2L9$;{co_ zY4lQiT~j86#-C2I-<#p%(NRWmlhMmZ;&hR*h^X?CcqK>R?$FdL;Ox62<(g@P43iql z=}Ggz$Muk?fnt7^MrRR;pW_v;gDeK!H+J2wTEnkx-b2 zZGiR#K_{6n&1aNSJ#lPqV@SaX_gvHdB=9dC;zR%!Xr~v)X$(FDvNoI{&QhgV0mddJ(*3R#^ z>Y0y?Bh@@Tz~g}*A-jE%fPbzy(ZX>&Pd}E?ImG#Q;rhz;BPv){iNVqI>Z?^6*lOk9 z&4bmoEXfI`o<)lE_De9Lm=L=U9x3_x#Qk{u=&Mvtr|%$M=A%QP85EI!TXZ=@XnSVl z4fhT5IACoeOU%<@$~b$a^~)3pXxThtAQDE#51lNKutYo-5%-icJZ%1;VmcXouQra# z?>$jMKkR=xbSEvri?p6A#h@f%FWgJO;H@7>&+Dv8natk*vjjD3wfDR(aSoc0cwLRS zwfcIXg5Mm__BB==@mca&c(CRgH~-?jT?~YD==tgee&)bY&wlOAlsS75bzx;)jV|S| zWW(1*`S8Y4{rWE6wz$`s=xc!*pB1~*RjBO7r~@5gz?JP(G8VZj19 z3ZnDBYW-ITZi*46qwz8eIJZs0dhQJ+?hE2vVtZeoh^8Hp_z0K&y`bBybUFwcZ~1z% z4E32Xw$456`*0!F+Rti(*LDbti@$cL|MEd{f!tNOS}sMQ?ALWRzRCDcn#^&z@aq`n zC9=9pK|AbJ(^dm4446mK;H5x8;nR%hYOBRJqCy}!0mk1SxAjtz0|?K^hgEiB2uvG+L8T5;Hy}p+fFMUlG>~lkqK0J2JpMeq~ zKil5M6dAczN!5JpWvR&iL1ud(TGgG<5&((KX|@m8Dta~X*@yztW(bC62>tqbM4Hk~-h&+?rl)JV>aaDt_tL55w2i-HHpWbNylLfp~D zBHPz!#ZD784;RKmvB=fM7#obZLz~O$F~1JX__n}`>E-wUPC~ez3!EZ062+YR%%^5m zlkYxtN+1dpN|}ky`N9$C=3e$w=5w{Z;*8S_hDc*$=7PM#F;VQelD)B+(*8h9z2w?e z09yH6M!$ec9i0V$jQjZ&Fzz#@6>df? zDY2Y6YrKCbtuwWPS2%~hj?^(Y&~|vO5=~}v^yv3n*EMi)$5{QMPAN+MDIOXbiRGxz}^~y zc?I4@E>e7_+RE8PS6l6bvgJ&kJ^IK2BF}y9$Czn$$(#Ie$4FI`32!&SrI}8zdneS3 zRPSXL*(e{Jv{F&x2ZLv#IynyU=1QF)J3BO~%{lT+PA_l@3Ozo#)r9YC z!`mc9jyrBEqI*TfA)!g@$CuSoz6Wr zmWkUW{0G<5SJ{&%C&N^1<^+;Zw(pw%sUq2Qvd`zYkj2&03{?Xe8fN%8@BR0QrA~uq z&!w_TqkfX}_O}y`+<-@_0~Nn+)FogaS_~FW0zR6f_@9vx;ea>&dx0_!6fL?g`}QW|rmo0PmoL!|Hp4be| zm$AVLx$Y2G6oz&f~gjA|JT zcio%`)(3gNAG2<`6kz`3oY1~ZIR1*@`t(MK6H$EX&BMI?s2aH@(;HVt3U9l9kL}@#hYoeoSlib{u8sms zpVi_A=;Qrs3!{w%r+=vKoh?fb&AaBSJ&4belf6LpkHvoN1REw%vq*e?l%9u~LRLGFx}4&BxT5pJ4c3lB;!Lz~*&uRvQ(>L5*W1rdvyX0pROm!G3*!=^VW)a+Y8 zK|Lj#U)x`#1fN~ZYq~red%3Bmua!bzkDnrZ29{%{*7`aK!vtlnfP5Wqr(t)~N@L$( zbK7z%3SI;+Zi_qYr(X6>&w$?ZQAg*#2sz!qnD~%9iZ1KJ@0zf&(nNBs{TaI#K@eG7_&jbu`X29BTFP2+s(tG z!0I__9ied%>S@dqIt8|FEc#t=5K(6LveTrsEqKpaNHSvk;^Jo9rdJe-d!uLfVD{DC zG230~;$P}tn(~ltNy)Rtu9W1wkA=EobwBbY28Eus60b4P+^aCVgoukTi>1v8vVRi# z`$%FKiqHYIBUQNy&UW%%yuxkT-F!TSS##ia0By;*Zs8sY4vF~P-%+0cg$7aVpli(O zCSD0GtMvOX4#kdSDSzI>=}EQr5P1%QBu_8Ui@)fcw73TvehXbhhkRCXfDW(O_H=hYg?jRl6L%ADK+YUjd6mQ?cesfKaw%BrxW2CbaAS^LZk!4;X{{#7m`i*w! zi%GVYrfx=@^j`}UG6qlLvIv~SX5(~Yq#V%N>VlQRzM{Vd(gj8wzOm zmf2u>pJoRf{xI3*F45t@IE?6 zSNPYq6)h4W0Cq^P4!Tz;B|je&M`8GRu2o=d-luSse>q-dg}YQIT$bpeU-lQg)Djy6MP>qw4inFb6?3J`q)F_hTbUOeo6b7SKXkvg3qw`)IiBM z7n&Zx+D-H;3pkAjG%ZZCwt4Vrp#5h=hr!o_k0FxhHLAZIrSmLCf7sX@!AqPe!A1P# z@Qf}Q`UyR#3>j^pTxY8-%F%zXPz82fc?1>ZLWrz#gvmaQIA84Js^r#s0Qjd%hF3gU zEEhlEl&{P`StF|^!GaGcIKFy5TU$7Cb#uUt$)EfQc-1^jRNtyd;&Lj&(e zfZ;JTWP`$hxuc-JUE$HQTHWVSyYXIqY>z){1GVVf?ue|caC=!qHa(0L8qIqIf$BWP zh~FS2>djry|CZ2fQfxlt_9KS=?T6x$Rn^s5Y63M4w#NbRDY4KK3gg~qj&6%ma*-pBVorE|Fw7*d>q_dYlZYls6Fw1}!QY%9gDQr=&m6qR9q*-70ot zEz+ z+6N%fv)1f`PmKy8G3ZrrPW8(1g=q4We&Dq+%n~d=H+cj|pT=}e3w7LsqDtTK7JYj4 z(}LH*h?eGjYI@>ySTDHmc{0OJ)*0V7*4;m^LBY}M#=Bf3Md{s)> zOw%|OV0hfv;pzRp3kmu;e~=dC$fANvZO{UcfZCez+~rh`U?IBxKNuhY=G+$_hFWoY z^agA2{T(1?Kg{bnc=Ms-t$kr8aYQxF6aEg+Lnt3>rBy)vjQCUI-$cNrnyH zQJvGcBc+kB1vOJMEUi){;u+*pGS2-(ZRTfUiJ_)pRDZiwL5JCs7d#yFpj`z&0+L6#;ol?jF3xyk~&hIvrV4Z&vB$o{RIU6cQo<}%{j&$5wq`|64+r*btJEDYE z6o@o}{!PG%^Rv1wR#I`^5aEsgOI-?=iOo59t#5DA4Rt}Dpr29Z_RhE9I)v{EC&dVJd`g9)hHbYXQ$o=Dt}hIz%mLzS6~NO&*5PJRtj35PYfKQl3(x$5woJ^< zdW}xJ{n5Nm<-q*?L}%RC$HG$N>F$j8C(%VL|D&7q-#gvK102|8U+jBoQeN$mP9Its zCnmQ1jJge?ruK5tFHl1!Zn*jws0fEU7b> zs%_c+gz(kOE9*ydu)MkMX5$ka!fT;!4Y`$va?P!)0qd1QeZT2Sc~fxQZeFeQ*&6@8x|6`w#R?_lz!75n{|H|PvU zt?if69`Jscz4fmljUvl>R9sdRQ2h$ky#KVrg!o2!QZ5`fgHtDM}d?WgB|+On1^_XEg5reUBy zKT2#oIuxgfT(g>n>5@wkLTdjNGvEs=89!%e!)oc;bO;y4V8cB<1RA#1<=tfU!$4P~ zo7tH8UR(4p8Ppl0TOJ@fOgX#$8EuAY_&I2i^S-lmaGNU0;foR4;wl1?bWDdp3PF5~ zwr)0zemjdle*#%=hJg0a@%Agf)v!j-2?pH8Z^+h5uSg*mOCL-iDO0nsCBYmozDQ(j zToVa>un8*t>F)e$=9p2Foh(&{GmP9O`flWE5fJebtEj2jLPfJ6MA}7Zarn)+>?}#{ zx=!EJSY^#Z_Kr7zuqAv66#^=Ma%p zaRZXNGR<;*(J#%GK#J@20D`Tah8&tl%^Qf>w*XYx$9&$CR_tQ5#sO0%my~apzytCI z>rHN7F934Bj}zFSwqR_HLdY|u*3$bmj#??-jnQa=jtb%R&=W(BA_`N0#h3OSI0UmT3}_l`J=5TK?+X~>{f zpXDnY1H$y|pz8QT>f2H`V07S5;(BDk0V6harEC7ik!jLcmq7q~#8pZv<1T64%>LWL znahmhk86`NHQF^)C-isNB;{2z*2$ZJ19!WwL;_Inur*Gr3qB_pFF4E6xguo2T9O9` z?_LYCaT|R(DQ(kG_u+eD!Of+0EBwOx?rZwjH_J;QS?;`Y*mqnPxznDd;neTDT})Vo zO1jzS4-oCk#bZ0EwL2Lpqn`P|(N_I0Q)WyepHeK^Q+K%rXSIHD*g;D=AkB0+f$Itz3h3hKmtTuoi0aM!k1=R zaKPuTUw*g80Rc;DDPYw`kKHnf<*#s}BlblIRjhHlnkPQY17A4J(yV2!#|dfZ-^DCv zpHoFd3CYZ2m#b-die?SdkLPbQj0JU@E9Goj`=9PMV`2c-(_1V0NW*TK@k;E{?>OGI z0u8M2N7}a%PZ)Wq_FU&47E9f_vHk`Iu00QPA*1s!A0U3T{kn>~gLW+UKUKSZZ5OO{ zqP8-p9k%&pjEcp$B-w~Sdj7^p*{r_AZaOqTar=C0C)_l=gzx%{-^NMSUKLA2nW10L zujhMgHp-y<0n(x3>3=Q8B9D0&A&^UP9_=C{JcDA+RoN<-x4@Mf0_@chniJI7hCYb& zsAuAsNWFiXHkP6qoGS-aYLz%LIzVq;27>*{OPTd}SV|J8(OiJP>fJY;9tL)LL^J?P zB=ny(s1eJ(gcfMh3+*#(!`yiB0@AlNxOyaF{K_j$Wm)!{yzN_)a8EpIYH zphu~a_Oju(G_;Lii*&XKL2orSJTjJYR0#=(uZaPZp}w za-<*`^dQ3?U~;-@WVNf152#ybI>~ayBQca%i&CjCbwHtK|33YHfao)NV13g*wM@@t z!_Z~$@AI8V{_{p#1xR92H7V28{$FLp8(A7D+s5ATIwPX&G>N))DZ&7lIu`V=UA6hp?CCE$}iVQeGv9M*Jpu9ar1QP06-Xlt4LYnGzg0VeZjJ@Tat?7`(`c0HN^<0cJHwa;=>Vf{c><2N*KU;Pn_7L~BdF?zG>u zxZgueAwB4XSoAkFQ1 zmC=P##@w?41()q|Nk)cYkx^!z^kvd0mqn} ziOp!~k_L>cVrNQ3U`(GHuaO86R+;)&q6!FI6H1J}ZZ+}qr_tK{s2R`8q0_jC*FFa1 zz7Sbs#a~psG+F7no}zk2n5Vqz}eMD%cRG{ zR>q{jcN_7&n2H~cE{%q< zU;|zqf#{9-%k-Lhl|BQU>`%H@ZYl%T(Y@nQPKs5@OWsV3v)M)dh5$mJKoV7D z>|OT6xB2#H>)CmichItlsfF>7^-d=7yi7&2d`#j^5_|tt z%)mMGmBfjv?|Tye2lbc(TrS8?7?rb*hLofB40Pr_YubR`Z7Ex6H+vK`4L||)?iN}} z$;E$&)G-3>GJu@R21AB{3mJ6*yZ!^sPNUU1d5y0d_AxbJpc+_AN@ZYgE%ui}$p2a3 zfeLjqqxDwDJ@3Y6pvn}jG|O|OZrL&+jc881a$S7s0vXSMZ{jVQv_i|bu>gT^Osk`E zv0E{*FnZuZze>RSwq|2i`sq-gEhQU^b{ii;xfxLIHKEa3Mk97UK#yFwye=NZK}SY^ z-s1sybrEyftTVl&y1hd6r-ln-Wg1jj*g_c?)Q&b*ImFm>fFHS&CYa!9p4_%f=Az{5 zW-%Wkq^I_Qsu%%0e3q%<0HQ%62*%i?ezZkx;BpRKkLu~tLid6DP*d8~Pa!Dv8{*VI z9rykvDH}P}HC-%nYFA~k<&opCCYl(@?@&Jc*sy;@_#*A*sTpMML^HM@(8OEn<|&|G z6hVI`D$iRxU<)upXB$pO%iUQj`IN-$6o z{qUaWwMEfR41){wUg_5tPoU%dEI9p(T7ZLGFQF9iRVJHQ?v1ee_2uZ#&!Ns4vQFC% z2fZkO0{@KNnn7`w#|wt#*|K3`l*|xbS7FojE#~3c`l(X3Iz2{idMn?D1!tQD$ey|C z^o#{*qdw(PHek~V@Bbx-kN!nO9A6_r@1NYlce?1lbd10JY-yS1o&Ycf0Z1y)swS^| zXxOx4>Q0b^b?Hx}fH|IPP|l-F`O8Nmd`Q^s*FhtZsY|*XG>jfSDg!SbYuAQ&QG-!h+ zZS5{AxbL{=diu1g$C1pJPUl?5 zyNkJ>8;n0ka2?fKwb~@M z9Rx@Z$+Qb}V6aHR)qE@M3IdXQ&f#7|*|>tN2Zrs-Q!1@K%}-GZYlWVpMnPg&3||@m zD{y&6{7;`3e~i$!c9zmq!+^{xMNEF}99{^Ma6u{U=8sW6@`c8-M+z?~k7LVCp{8Q& z)Pi>0e*6ARd}R*pHvK^!K4*&$yPI4IEawz#o?Z~6V#K{*8;WFRDKDY5!U+lzlv+Os zw;rLZdkcGPL@6$@#xn}~q9{2O`I2kZVWK3!Nbvv<9eS_``0gmHm#+W5dKs({{_ffB z;L~qnj;O?nLY9Ogp>kZz@4G0*U}MU1P`7+9UqHv*+9mS3Wv&S7>R_0K@UK=1@??$+ z&mL7V>_>^NJl!q~o+~Wb>rvVQ8(8VPMPBe%T6miRxy+xcUqq=nBiG zKGjmLBh%Fx%$-Tj2ic>HY3Dk3MCPsk5qk$J8$ARAOGGXCQu(7r^6R7EIK9}&3tSc9 z^i}P&T&uiySsuP)9AHVj;VJVAqbvgv059?ZC~$!+`4nwBamQyYkf$2V-_5(w&Vf1t5v+m~UP671Ps?r~k zyLWiz4`_H{8n%2uM1Qr67~bAKi{Q(%j)hzYXwD1Qf=Z%~zJ(_}Ts)ry;Bz;JNv#HP z7O!;2*9_#zX3zu5DOTelPaz+5VO#G7*ezZV0`0|rY81;c&k@W9daF~m$7rg!K(Dbn zM~@9n{f{9ttmQ6vdn*b6#Ap|y2Z(V?C=T$K>^CNRG}f%>YsfCQW8sT}X5ax>P|$nP z8L=-vrMn*UrA0>ltM`%by_S^jy$yYE^Q)Zg{jWfcjq3Id;%f^F`?y z#@Nq{=@K4U@%GWDXI+T%usDL{~c4TFNV`mG43JQPue(DSGrvD(&0CCOfp3V(wJYSX;>t+K0rh!q1 zv5&o(9*FZpBb$b!^p|X`_x}?IP730A#Uh@gVlcmP)bjyiQ?g4$48=Fc z&%tI68UoOO%vXlRzd5qSZ8KPn?t}zFhKmp(dv7>i6BZt7)`|Y{n-sz?(->)iW@v$j za@ytXb0}&-7}`*uA{MmsJ#h7`fTH-vJ#r?+-3E5I=}m;KGqiu}rYR03hdwaB zi1n($NX)+5ujG1m{w%zknD2Yl{u4dS^K9^|Oss)pXdQQ_coqjs>t&xh-TavUpBeqj zlRzWZVXdSOMcLA@B(t=Hmo!5@UZ-f?2D0VD^_MAL0njfn4GZ*O{8;?&16TU_1~N9j zp$9HHI38(86r@{^^Zw%ZL>(2jWm=|$#6~Oer6(&1yjD8l#Uep$ z(Yb}oM#GOf=*IVikf49mru&Tzm3|9_sxHRNRGlNU?`E6lOZuaJMEkSw0#}U~&>~g! z-f;rq7!t$ytK3U_0zfrtcNMuW>f-IAcYK?2FNq6LN!X6``&p#=*`iiB#3mepZEeTv z8AKk%Uq<9}H@LRU@P+=I{5l!5Mj~L}0@^=gb#Gyy>HDn=UEU2nujq9(O7bvvEhp>r zRK>s)m`5p}RXly&1NLU`_=LUl6&Kknm55gnaR6ew-(VURxI~k4s~~W+Km$qn^nmxj zDWz>+iqeR@1*$wV9qu+vIS}xa@L=?fwt_5@r0m!FLQAxQtC>D+nsZ$@G19$8+XM>T z#eJf$9ai-9q|&x*P?Srx@T@%gF`bJh1K2W;s}#xF6*OLw0$|grW=!Y^_aDl}KLp8| zE-jx)rA@35S+1+b%DQSdyHTv*ja0!{tshTroxI1cGt%@c_-J8mzni7e``>T^CR9|? zWHkWD3%NwC7i2@A2IPwyIx6{TY-bmJ&vF zOa*Ajx6nWiVvZkvgJG}P>K-%s_awTWvv2ag?J)qe!KGKrLEih#{7 zt4cxm!Kqwi<;qRh3)KCaIsrS=rqZ$)b;tF(C8G+yp?@%2K3vsn;+j^tUYgqvN;jj7BNtD$>jF>e zhwEo9X$}OE%wu|GI%x`Qb-)}|K0{%|Bt>sczxnCD@%IFDvTHoA)Py*gvz*%igTzxvxft^4%G~oxF#tt8)6La0 z9(Y@wVt-qPo*#5OEw9N(E}#Uj=%nimRLw7u(#TVKKA`a@;%tLY^V`3rpG!sdDGF}C z1Hu~dk>|9CU?H zzK;!?8zT7Q>e=IVSkIxb+I#FVPULpegwca?jYB=1cnR@U%`1__llOU;&vgbHlq0pv z@J6Mz zYtL?m+u2iH{}Xsk3S3rfD1z^xA+xOa9+NY9;1ltF1ggc~uS&}6g}Jq$|Jcdwc;c=Mr2Tvn$JUXpdunVIu(%f%)d+pYtV@7i2^6h@;0{p zm!~zCZx@^7f?6@+^N}h{H(smrn*JM6VfZXN{ia&qGy$)eZhAug& zt_9Hp)*b&XldU$LEOmLWv}3+CiAVvNz6AYfz`YSGi;Kajqf=91R&=)k1N`?;00RrJ zB_JK=@Lz7U(al!6ln**YU|%kXj_{y0u(_|ANEhJRVFHhULRVz1=zJaj1osz8g9YxD z2^x-hxv0A*PrqwGvj!`+==F&Hn0|rnu-mx&9V3b{rVB^I*7{ebn5%!ES-FT6%=;WM z2(W$QdjE%oU+=NG-3PLE4%gu-sZ3EE{iFHgOKw13k^{K z0#^dYj6Vrhc=fQ-b7|A=4qknz+6+#!WTu#6`jkgg7?rJ)5>y0d{KX^azZH#<&{BfA o3@mVfN$e+fh1D`eIp{OGOWo8rDNC;21_A#Jbxm|?v>c-TA1X7~*#H0l literal 0 HcmV?d00001 diff --git a/ios/Podfile.lock b/ios/Podfile.lock index d67de7b..5d63bad 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -425,6 +425,8 @@ PODS: - React-jsi (= 0.71.12-0) - React-logger (= 0.71.12-0) - React-perflogger (= 0.71.12-0) + - RNCClipboard (1.11.2): + - React-Core - RNDeviceInfo (10.8.0): - React-Core - RNFastImage (8.6.3): @@ -433,9 +435,9 @@ PODS: - SDWebImageWebPCoder (~> 0.8.4) - RNFS (2.20.0): - React-Core - - RNGestureHandler (2.9.0): + - RNGestureHandler (2.12.1): - React-Core - - RNReanimated (3.0.2): + - RNReanimated (3.4.2): - DoubleConversion - FBLazyVector - FBReactNativeSpec @@ -543,6 +545,7 @@ DEPENDENCIES: - React-RCTText (from `../node_modules/react-native/Libraries/Text`) - React-runtimeexecutor (from `../node_modules/react-native/ReactCommon/runtimeexecutor`) - ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`) + - "RNCClipboard (from `../node_modules/@react-native-clipboard/clipboard`)" - RNDeviceInfo (from `../node_modules/react-native-device-info`) - RNFastImage (from `../node_modules/react-native-fast-image`) - RNFS (from `../node_modules/react-native-fs`) @@ -653,6 +656,8 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/ReactCommon/runtimeexecutor" ReactCommon: :path: "../node_modules/react-native/ReactCommon" + RNCClipboard: + :path: "../node_modules/@react-native-clipboard/clipboard" RNDeviceInfo: :path: "../node_modules/react-native-device-info" RNFastImage: @@ -726,11 +731,12 @@ SPEC CHECKSUMS: React-RCTText: 73a8151c2fc1c6a2b5329ddd569d39051fede43f React-runtimeexecutor: b2df3ae123833935b4b57a3e8638227624800f41 ReactCommon: ebabc58ce77fb38274c1659471d6d46549ab69db + RNCClipboard: 3f0451a8100393908bea5c5c5b16f96d45f30bfc RNDeviceInfo: 5795b418ed3451ebcaf39384e6cf51f60cb931c9 RNFastImage: 5c9c9fed9c076e521b3f509fe79e790418a544e8 RNFS: 4ac0f0ea233904cb798630b3c077808c06931688 - RNGestureHandler: 071d7a9ad81e8b83fe7663b303d132406a7d8f39 - RNReanimated: d62d813d08a29d33a275d44613e56bfc2396c465 + RNGestureHandler: c0d04458598fcb26052494ae23dda8f8f5162b13 + RNReanimated: a2f74e01d5087dc479719982799d262b2464b810 RNScreens: 218801c16a2782546d30bd2026bb625c0302d70f RNSVG: 53c661b76829783cdaf9b7a57258f3d3b4c28315 RNVectorIcons: fcc2f6cb32f5735b586e66d14103a74ce6ad61f8 diff --git a/ios/reacttube.xcodeproj/project.pbxproj b/ios/reacttube.xcodeproj/project.pbxproj index ab98488..d767ec8 100644 --- a/ios/reacttube.xcodeproj/project.pbxproj +++ b/ios/reacttube.xcodeproj/project.pbxproj @@ -795,6 +795,7 @@ SWIFT_OBJC_BRIDGING_HEADER = "reacttube-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; }; name = Debug; @@ -821,6 +822,7 @@ PRODUCT_NAME = reacttube; SWIFT_OBJC_BRIDGING_HEADER = "reacttube-Bridging-Header.h"; SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; }; name = Release; diff --git a/package.json b/package.json index 48abe70..740f3d0 100644 --- a/package.json +++ b/package.json @@ -12,12 +12,14 @@ }, "dependencies": { "@craftzdog/react-native-buffer": "^6.0.5", + "@gorhom/bottom-sheet": "4.4.7", + "@react-native-clipboard/clipboard": "^1.11.2", "@react-navigation/bottom-tabs": "^6.5.8", "@react-navigation/drawer": "^6.6.2", "@react-navigation/native": "^6.1.6", "@react-navigation/native-stack": "^6.9.12", - "@rneui/base": "^4.0.0-rc.7", - "@rneui/themed": "^4.0.0-rc.7", + "@rneui/base": "^4.0.0-rc.8", + "@rneui/themed": "^4.0.0-rc.8", "crypto-browserify": "^3.12.0", "event-target-polyfill": "^0.0.3", "events": "^3.3.0", @@ -29,11 +31,12 @@ "react-native-device-info": "^10.8.0", "react-native-fast-image": "^8.6.3", "react-native-fs": "^2.20.0", - "react-native-gesture-handler": "^2.9.0", + "react-native-gesture-handler": "2.12.1", "react-native-logs": "^5.0.1", "react-native-orientation-locker": "github:Duell10111/react-native-orientation-locker#fix-nativeeventemitter", "react-native-qrcode-svg": "^6.2.0", - "react-native-reanimated": "^3.0.2", + "react-native-reanimated": "3.4.2", + "react-native-reanimated-carousel": "^3.5.1", "react-native-redash": "^18.1.0", "react-native-safe-area-context": "^4.5.0", "react-native-screens": "^3.20.0", @@ -45,7 +48,7 @@ "react-native-vlc-media-player": "^1.0.60", "stream-browserify": "^3.0.0", "web-streams-polyfill": "^3.2.1", - "youtubei.js": "6.0.0" + "youtubei.js": "6.3.0" }, "devDependencies": { "@babel/core": "^7.20.0", diff --git a/src/components/GridView.tsx b/src/components/GridView.tsx index f8d5814..704d2d1 100644 --- a/src/components/GridView.tsx +++ b/src/components/GridView.tsx @@ -1,13 +1,20 @@ import React, {useCallback} from "react"; import {Helpers} from "../utils/Youtube"; -import {FlatList, Platform, StyleProp, View, ViewStyle} from "react-native"; +import { + FlatList, + FlatListProps, + Platform, + StyleProp, + View, + ViewStyle, +} from "react-native"; import ShelfVideoSelectorProvider from "../context/ShelfVideoSelector"; import VideoMenu from "./general/VideoMenu"; import useGrid from "../hooks/home/useGrid"; import PageSectionList from "./segments/PageSectionList"; import VideoSegment from "./VideoSegment"; -interface Props { +interface Props extends Omit, "renderItem" | "data"> { style?: StyleProp; shelfItem: Helpers.YTNode[]; columns?: number; @@ -21,6 +28,7 @@ export default function GridView({ style, columns, onElementFocused, + ...props }: Props) { const sorted = useGrid(shelfItem, columns); @@ -53,6 +61,7 @@ export default function GridView({ <> ; } else { console.error("Page Segment: OLD WAY!"); diff --git a/src/components/VideoComponent.tsx b/src/components/VideoComponent.tsx index 7399c6b..7c91b73 100644 --- a/src/components/VideoComponent.tsx +++ b/src/components/VideoComponent.tsx @@ -24,6 +24,10 @@ interface Props { width: number; height: number; }) => void; + // Reels controls + paused?: boolean; + controls?: boolean; + repeat?: boolean; } export default function VideoComponent({ @@ -32,6 +36,9 @@ export default function VideoComponent({ videoInfo, fullscreen, style, + paused, + controls, + repeat, ...callbacks }: Props) { // const player = useRef