From ae107d478d6a1d964cde21a31c40f9b93fa3423e Mon Sep 17 00:00:00 2001 From: Meng Sen Date: Fri, 17 Jan 2025 12:49:13 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=91=E5=B8=83=E5=BA=94=E7=94=A8=20Kavita?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Meng Sen --- apps/kavita/README.md | 34 ++++++++++++++++++++++++++++++++++ apps/kavita/data.yml | 14 ++++++++++++++ apps/kavita/logo.png | Bin 0 -> 17644 bytes 3 files changed, 48 insertions(+) create mode 100644 apps/kavita/README.md create mode 100644 apps/kavita/data.yml create mode 100644 apps/kavita/logo.png diff --git a/apps/kavita/README.md b/apps/kavita/README.md new file mode 100644 index 00000000..bab026da --- /dev/null +++ b/apps/kavita/README.md @@ -0,0 +1,34 @@ +# Kavita + +自托管数字图书馆 + +![Kavita](https://file.lifebus.top/imgs/kavita_cover.png) + +![](https://img.shields.io/badge/%E6%96%B0%E7%96%86%E8%90%8C%E6%A3%AE%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%E5%B7%A5%E4%BD%9C%E5%AE%A4-%E6%8F%90%E4%BE%9B%E6%8A%80%E6%9C%AF%E6%94%AF%E6%8C%81-blue) + +## 简介 + +Kavita 是一个开源、自托管的数字图书馆管理系统,主要用于管理和阅读漫画、漫画书和电子书。 +它旨在提供一种简洁且用户友好的体验,用于组织和访问个人数字阅读材料收藏。 + +## 特性 + +### 图书馆管理 + +将您的数字阅读材料组织成带有自定义标签和过滤器的图书馆。 + +### 同步阅读 + +在您的浏览器中直接阅读数字材料,享受可定制的阅读体验。 + +### 自定义过滤器 + +创建自定义过滤器,根据您自己的标准组织您的库。 + +### 用户管理 + +创建具有不同权限的多个用户以访问您的图书馆,每个用户都有自己独立的进度跟踪。 + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) diff --git a/apps/kavita/data.yml b/apps/kavita/data.yml new file mode 100644 index 00000000..02185dc1 --- /dev/null +++ b/apps/kavita/data.yml @@ -0,0 +1,14 @@ +additionalProperties: + key: kavita + name: Kavita + tags: + - WebSite + - Local + shortDescZh: 自托管数字图书馆 + shortDescEn: Self-hosted digital library + type: website + crossVersionUpdate: true + limit: 0 + website: https://www.kavitareader.com/ + github: https://github.com/Kareadita/Kavita/ + document: https://wiki.kavitareader.com/getting-started/ diff --git a/apps/kavita/logo.png b/apps/kavita/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..86de849d69db8c00347d4cdc539aae4defd9cb72 GIT binary patch literal 17644 zcmVHq)$8FWQhbW?9;ba!ELWdL_~cP?peYja~^aAhuUa%Y?FJQ@H1AOJ~3 zK~#90?A>{M9d*4v@aHpg&dJ(zp$kwD6c9wjrL;{_xKIV#CTS~rsfw})-d@O3L~!F? zZ>|1ZP`oTn(%#BtQLYPBu}e~lT&Y5nv{=1@Ruo*JNZYi8G}~EbKEFTGvNdf^k~8z2 zne)8=qRBZk5A*uw%yYi8iK>E#g6o_eYvR)fQd2TwO;up3SUN!z6QG!=q7wjXf{IQM zMF}893M~;JA;5SAVgSa!Zjq$`;;;Kz8bHtMe)f_883kTaASIAqRqca?K2hlc+%8e+ zg5X6Jbg3&{0_=&YyJuHnV(%|!EKPg0O^9ghgav@eoWK(XO?VU-5(EP$OV_#ISs zT9*8-x4-Cjk6du&fa!2VVaEbMG(t;uu1IvhIQcZok{Kd81Bw{{-UXn@bhbQ^2Jke1 z9f0m|Eo+Bc)c5PnXW!UsIv7!yumBJp#oR3`V&e)YpY6I*uHw!HWEOxo1F%eIqt|c% z{854J5Nw0G9sSAuPd;+N@{H+VL_x&@K=dk$cC4A4Nu|!UM9zha*(#U;ezOm&K0tOT zuuW7SD~RE-AJ3}WXF3#7P_O_{UR%8F_GxL2&jNIgC@uu>PVn1(l>J$OhXL6db2D4k z&sp|&(}9RgVF94LvUuxV3TlCtHI3u<3~F9f2< zVgaB?TY(kUFWV=bqp;>faghqjF?e$vqSs3UXoupbE@X3g<=!33vD`HsipVQ002Dck zcC0DRq%-egf*Li$!%2 z1m^=tn9f9zk_7bUqSiWF-Jh(RQ~$i_KtyB30zjcv-PUvxMBfL*bGllRC!JE6K3 zG5K!Gthzs%4ns5=EC3WLi?%nuG2_aIMdhCXeW&R>L<;;$AZwxey_U+lznRWMlr0tj z3cUI4w@$K9P$R%)fW8NSn9f9W1UmrzPRw$?&j%e*(6IneAT4RXwWvo5-Y=>j1#lsF z=01f>Mg$M3%6)yw;s^Nb0tzA)01A|vZL4Oex|gfsBLW;_IuB6}yaZsqi2Lo0VskTe~JqJ;&3a%Sw@x!1mE zIt)bv3jmGT;%&E2%Q*J65V;P(1k-tlBJ2PJcUx+IeM7}HyG)0naAN_WQ5$?14?YLr zN&p3h;}GSOq$uvP)cM-_Im`ZTIt+yq3jmE+bz9R(u<%JJ{uSKu6Pc6-@O=mJ#Rn^D zpD`VV!i5EZvR2i$@)S#~n{@ETJ#o`{i0EZ$DDJgm`jz#w>i=Ro421&=01azl`|9bg zIG^S>exkrjD{yz*)fMaJ)IV=J3j3K%T2ymb<3&kbhVJ@<`3LRWn@IT`53?=`2JPI6Evw!-mSbcGE$~A1nZQ z;8oN8^#Cl>d59>mRDo~B-J%=U&AIA;=`iFi7J!JW>S$gls;j`q^Ab^(6nNeS>Nix> zJzzQud4~lcqG}#n^(M95CIItIXCb1nlC>GN>UlT8Xkr0~m?dl1+C3-kzCl#J0N%cr zh{i~PeSmzjwW9Xhrn69Pu>eHK{H;xIwJqEQV3z4DL=-jpbJ()9WmerEO(&t;U;&7L zxm#AmN)nTAP{9iDX?;ZGoqkcQDBd;o7T!`g{8#`&Zo#%yXIrj&FMxNL&O$_aCGEEs^-AJvP%JZ@g^1_~zLP2GzjpK4H};wiLc?PL2!ZOYjpx9U`v9D7Itvle zFrKmnA6Z{s_bbyu=;&Ag0_;^M`h6Wh!gL-YqAX>g`sI>c)4s&Z1%rzPAfV4!FKNai6~E;F0R#4-PZU4(?RkbX8;UYvUaWAJAL=(A@X^!h!Ii#Q5Af> z^x3KZ#!CgwU;!}T{o9+4NoMdp2re?6g^0)`1-3Y9e{gfFBFcqREX!@H*}C#P(?Oz!1t5p2+ZsP0mh}jLDW=re=`2J<5mY3QAJ%jygWHmb$PXgWJE}XHK505g*m0*d z1~qL>p8?PaKul*LBFZBI#W$-un!aW_NSLtzj8aW|;}=!H!AC@7h$uc&-PU}w=^SCj z`v8oP08-W7d@G>Wna)B)L;xVGXI1R2P$pO#AB2VjZmEJQ>!1eG7`E{I+B%Na}4rlW)b&jHB7 zlC^8?sp<5$!JR)5QE-WVa9S$${kdCK@RIB-umB800O_5+XSFCkWI78G5e-M)UsN#p z&J|d}{o63Ofre4l)^rO5A2*$Yh={Tyz!lruC*NT@N6@hV97R<})7K#2%_fM5!l$mf zz41RyhX^tjfFr2xXkIRg&zR0ZL`0({*H^bS{k!QDLB*>8hEUz!cpV_Ona)8(L^<*4 zmWsM>m<|y%EC8=l)!uZK0C$47_a!2V3I*iamWtZ{G94sHSO8w7x~=Il2<`z7jSvw< zjjJM;x0cubkLe&m!2)nlbz9>HAo6|ik-kJkQI%2XC9M_pKQSF72v`6BEZEk3uI1`a z0Ti0fLPSKK8W6~PHdfTOnGRxF-WPzH$5y>bZMPl3RMT0Ah{$^i?6WPWV#DlZPn*tS zQeGeHe*gBSW7KjtfjfU9qP!u%F|KQGs(N(g6w_Hu%G&}kcgsD6NeAm7c(ds&L`3Af zQzT~psA|*70@FcE$;$#DfRrS9?*uT%bQU5aGDXjm3D&nIPcQq<%L1^Vqv@+E_=xEo zL_}oVk_BzeUosuSguFWmu%^B7YK7csItLLE1&HXiE#>vAO~>$4UKN0v_QrV%*$7_i zPeeqol~$FS*2>z4Ob78x-V}iOTbtf$Ti6O!?_K=F&)GYc~Jls z?N~F}Nu_rHc!TLIL_`#5e=V?a&W~r+?K2(3Ymq+*a0OOanN<2daOY1%M8i8d<=_WP z)~>Zp2k~0u3&8faDPI*}p6MJ!L=+ARyr*yao-dlt;k8H~0;q0lS`5Jh$kS^)iHK;_ z6sniBRM!8Hy6SYxa<_pe{Sgt-=o}D{*&EAie{VX77b1BGVD6UYQp<9G z4DS4ih-mc2spaKOWY)x!(e#cFdYSpXJqZ9HC7zGXTGQ4p2b34Hd=^YF2gD#oqqXaL3q6tj_C@PrpIRG3zPOuS;iR%BWd2H42(`^9|_yVwG z?OIz^?*+i?kch_U-BV7-n@gu2_VY8w9gFjM(jQSS6szriD-2f!1ik?DoVfc205eVJ zAc_J3uw?q-N76nxeMay8Kirs*6<6W9V!-QIX9Al0UG5Jl1XlTUm3zb|;ze-lv-seZJoqj{m}7)KJw0&vle zHRBcX4bwS@qU!j<@i?}y4AToIU|K<$={Q7@C8~{cw=|cU&M}lg7Jx)5eX{_^o6bQL zWoMU7$J@s9&y2`pZzw9zFPRQ8l)x2$>W-$_0Qi_+B9EO~Iu)mu1o|8$qDT;+VNplZ zyG-YJy+9R!6zFXy!9`UUj+K~i*~FD z%(Poz3IJ^9ivXsWjzN?!itIQF?YQX}MEPV|K|1|;(;*ItnGOH|)$NUM1LPXhIcVfQ z^u&PC^?(0tJ|beYViKCCmJ&sVDwZv3Z@hDTMg3Ezvjk!W;NUg?fhZ$HL_{8nI{~@R zjqw6d-QGN3fO)2K5D^jiq^720<%On07%c!x)~>Yy{kq8vL_|b>Q&_jGzzU=LV58IS zJ=6DICBWNEW*`E9{(%$@^d^zXI8Zg6<`p7>MBGN%xI!f2;W$c`N@dX9Gk{dufd*+~ zMo<{X2OXq%`{NyxFGD%*H5I{F`xm3hmVQT$EhxGO(vA?Si>2$Dm{s5q=NTxFA z+~0##I%7J{uu=!JCQ}*i{CyC%@jl+}+di!HGxOVTon&IoMh+Uew%#PbL=)>aN)^sCeQ!c&F>ZaJ_E3LYvb_( zt@V4orfF9O$$OqhdhKpFzw3c^WyZeqr!kAgY*3>l*;l-oY-Lc7v% zf7^rf4_`p)-shn&rA?>uoeHk2e!Tfuzt`(~0dQ=50f4cS9!wbA`R{`MBWXGc4WX>G z$aI8Zi2!Bef`8Y;vT=oZ_yx|qu#Au4xX&k%y61W5OL=!fV~J$kXwLvtwXHlwRj%}N zoyMsm^}ueRkH_bNs-!r9NfSyCkK2LUd5H)L5;07kR2quQyb|%jtObb}BxoBmg2FaF zvZ1{W(huxL;4aDWm_n9Tw>6#Q=Q@2IF=AQ&21Q;yeZ+aDkKg=5pr|m8qQblynw~jS z0*FS-eLe~InLb#jm6(p=rvwC_1K`_paeSKrsBUXI35t*SwZ5QmclMf&KtvQe&hPW` zv-7G29jj0FYh`{O0{C|T2_M%N2<|Rkn@dDAQhEB>8Mj^M(|)bYmjbY8>m6@^;Br6K z6*St*GyRE(MoN3~^RrV0SNnA?fG-8WvFw|Whu{7I@KQe_qS46T&&~t{pYmfxo)>_H z?W?B)_?Xx0AtEA*h>y>IbdBe?%J;kgIB-9KeEs%ML_{=l1$Hdm;Ppy8EdUqoSTkOr z|KjC3h=_{cF`5rHp?ad(o6@L3CA|lEGRm+ooYR(Hl z_4cMW3vf}cmrF!Ml&7i}wKtxT>xJfi2EdW)Jy|Xh5m9~;7pTkiLSwmH*hM?mj88x> z%jGhO{Lnv;!hzl-G8qS|rqjGaM39KvC>vLZL_DW|uAWJyGU)CZKq~D(gS0UtD2(HS zMoX@&+P3oFT4y(O=W2;L{ia@!PF)V5B$vx1@>*|S68pRQkWL3{=MMm?iexH-&iy?| zr8B1E3@ddoYciGL&ff=N8y_@!3Y1!o{n1=5Gp7YW6`tO;h{y}wJ;8tOxGK59K4@%IG^d9Fa#jGU+E<+q$XU5s9+4k183(Q#j$KwN?U;@*tT1GZDsKC{ zaAs9Ui;$D-pWf2h((P2d8UvssroD_hnM^{b}#l^W;7LlJ~F&mcU$xXI$ zE)lm)M;KNZGDa1*eco77_2|kexmZw63V_6{D*+VbVp&9fD=RHB9bs4^K-oCYo(YmO zW#bAV;pkJ55|;5nIZ+_-+?))Ut3v=+=4d%YzAGtCVA6yV#N&40c3vWafR&JjH9S9ZaPLJ94Y}s z*d?T zA|e_)_rs%o=co!mbz9R(0+f$-r9?zTlne4t)oo2Djpm)Bn*k793V^ryA|fI(OBAC! z3^3Y5082*sJ|ZF_${`UQ)joN|1z^$k#y0|Z$7ohYL_|b6H*?X}JKiwTH;uReIAb{D zkcfzga!wq}x_G2-8u=jr(f5z|Jw!xAnDr9_dPmh=|BbI%o0L z#^Xowju90A2kyn-+5bdDL_uSvZCN~$H;m{`exkaFyMKzJ{(%$@^d^zXI8Zg6<`p7> zMBGN%xI!f2;kfZ;DwRQZ&j3C863b5{;0n-tNr3!Q(2!77)o&j*T@4v8&5As|=aYEmd?TfQ600ONZ zT^^#~%48h4Za8*XskCD{!mz@SF{-%j2>`^(eqWu{L8BE|VL>J@7=0v)s_&m&XgUHB z5gnw88UaKx{A65KGXUE=CeH*gZOqAt0wxx-VOilgvo#U7O-C437&1l`w>=G#;}&)_ zy)&CvW>o-0F>h>vh=QxEw8(UXVTk}`Ye6Cg3EIYtpswA_@~7e&0Q80gx<@B@hu2Q9y{kces}vwE)b2bj@)9 z&d6CHA|fL4fxLBI+v=%Dd&N-;K+H~`pW8r0L`38Ri6L{;^8k)o0Myc9Pa+^9BBB5i zYxD&`R5$}bL_`!ydenXR5evZl_FE?@@Rr;MA|fIpADn&hmfI#A>6b?=0C6PFKicn! zh=?fAtW-h#+#~+-NWW0Q9B=Xv5fPCeR4|GHpeXky4iOO%`9V~VxGx{F0GzX9O&q|x zJWE7GL_|K2bLMVYG30Z9hAaTbW}LGD1pgVSL_|b%G$qA}DQ6A!iy;eux-O^xiHL}z zK!$#z?~%>{;NyRZh=`&jp=@`S}_%I_Z zY4sUqOd6&R|pZ)De{lV z;IGE#xOnoLUj2jDju^*26T)+N>F5r9$P*2P z38(*wh=?LdqTEK00jk8P6n?4AR;1)s-goY?mO|&KVB{XHgKw$JVZo9iLTXO#c|AOJ~3K~#1BsRG>x2295o z7RQGfVHqD33@SJdc)0+`G?QT{JW^@LbcDPWhHW2)j8VmHPubI{z$-HVQw=5|A|fK+ z41Vdi&e^dh4q&3;G!znvxNSN@-U`FE4@1VN;_R@t~h z2uF+WL;JQ;R3p&Yk4k98V@{g!YwA9iG zrh^a>5s`ny(g_ySVgVo`BFZD8I>7?m@uq_i5fPDpT(u@x0A~P*h=}ru2xkC@h=}rz zC?;5d@Om90BBDH^A|;jp#ioN05fPD}++xdR0U#nG$}6H$Yza_gItURF5&1_2MHZAZ z07OJYd8XI`X8?$Zi1JO51p%KSNkl}HUy3XMe1;?u5m6pdAjSefL`0Nl1h8WOY|}v~ zTvDkFx_btYN;^vLZL_8c_o#VqlVH_V6403P=fCYfEmP%#NxxWX= zRE8h!K2TL84{q~RI%7J{usA;a6}Is~!J&Z70zf0u-7^4wtou(D=sqxDI>xX#KFkQq z_@F@H3;>NxD(#q#khj9H?Zc2Us<`cGglx-n0wN+J@}C8OwUM%xh;zcolrU`jFl3A> zZhIObhXsH}q-7zTh=}rt9y|wt1%QZ% zD31t`v7q4HBZ!EI@=L!3px<-~A|fL4Rlfy6pXn4tL`3APJ_}$0AR;2lFVbfT4*?Jn z5#<@T-%`#15D^jO8LQ6%w8wM|A|fL4kEr%qqS9qL2oVtx`AGCdO9d7^b8FcpyAeDBYs;1*anus6~w^25(5Q%uqbeybkeE27fpWMyy;jgfb4+@Tq#&%oX>3w?uxTeEUICS?6 zfFJArQw6#Y1pmq193N(cWqeRzIOBI6v(I|ug5?8ILFo>&v2Y?s=sNh-tsZzEMeaI6Hh2w)L*woTzfrB#uqRJTn zA|j$ZAg=vN0kAEw01y!oAZ$c0KAP95fM>@ z3DEPv1)t~w4i*3f6u@7MrXnIDB2TH{Plx{d)sF#u#y}P#A|mpO>QDthSpbNLh@wob zm-qFrDgg4Qp&Ct1JLSL_|?$DGomb(4X4>HvmZ^ ziHL}Z$ZP#2yQV&O=pQc^fJZJ^o&oR&Baw)Rh{#h4{Qmw+E^!Y1+j`9}1v~wZL_|bH zUK5em?Bick0HDGGKtx0oMXEl+}+n$b2 z4%@dMRsdv(7ZDK=QFsY7n*wn7i--UqOeHb!E6}LSdjicGj02IW31Auc$ zG^Da|g%B~FBL9dCZu_9)_%I_Z^D4 z)8Sq-d;!qm7eYitL;<2Y_5u)di+&Cuos&RBL`3AZWV&SFh&KQ_BsSa&*3G%?$R}AIy3eiv zC>|VJ8j6bUo&oS<-G8b;_kjV^F^0wQVMbWS2l+!Go3nXcRt4a}%GzHl@ch^!Q52-o zj_C+_D-7E{3>l+}+nx@3uC=oEH`%-}+d}{?Y!}Dgc8o)Rxf) zqNqs3ZPO9*Rv5N@7&1l`w>=HYeqWt+0Z5hfKLmgWnetrOxI&1SPLY2^2Dg3CaeSB& zmhnNJ>$el}pJn^vtP8;Avv2HGfKLa^bBTBilP8s;AQ6M`liqV8f`Y{0HV?yPUK}6( z3fuS~uj$X$&sf@*?W;#LVg%R#VBUx`QKTIDkS7`n#|M!q)`k(idPK{P$&UcIBYF=J z5fORKMGWgk@`e!=fP+s5>=;obA|fL4m_B-NADy+4%>V#Ul^>7vJw!xA%DjA0f+Y42g({$a9*ut)GnaO(QMHCO?h$#0I=-527_SuoXZ^Q)v z00gpjH18uKBBI<9!4F6CzEKqb+s%9zJPbfYL}Z$4sr`e|ym3?oVEvqBe+SSun)ebB z5mC-;*-&xKuF<@4R0ZIm?~UQTL_|b1Rx z0RS(KWf??7L^NXi-7Z}}mIaKd06cQRl>>l`>hc33A|e_cRs2uuf`;T+mNC{t0I=ZP zJ=SFq5fRY{h&$$e@0bg~hKh#m0G=G{a)^kCC@W94Ry2(Hmi%Kb005vW_vT_bL_|b1 z9R2THEF~ueAXX5&7r>Z~MGz4Y(Xf)5(eLJBK{+V^>t`(O1oX$bSQZfx5gm#CVDLUX zV;9TCLI6NqU8R%X9=XNC1c>h}jn6aT^7RI0_455Rsg&M^!P9Oe2}f zAf0xQaa^dYd?FZ;&ji+g~f|{9{iy_ILH6w=acM+JVcRKamMfY^txB#^p!=#u@gt>5PLt`wk$P%J`6sh_WWQyLEO$cPAkYyXhz<>tHq0D$Yt?OrUGh{h(B%HTlnz+pc>&@;ekf1W-hbwD&l)QKpkyk|6aR>U>&2K;^erz};AsJ9o!!u_0^S~&D1g#w7wPoyHwPjj0|ZU$=3I5a z%T;(<001B^nOgxIe%%of8I^GyUiVKFOari`$?KJPUI5n3zHYZD?)G{;L^LvoP68yN zU{S@lT4vV1;PrZ9UatTE(sB7}ETdNgNcge7d~*4}e93eKGRThEC@Ct$ z<{2mB?Ps5c!h+%d)JC%J?;l9vH%~l`olpH0e|z=??A!Mediw|9Wbu3fA{vn-Z1?Ma ztVsO&22j=B^j`uj^<`xNGVql@n~p$vrl25>^D5tt#Wm+)d|Bz3mi5w0y;!&L7kIS& zH%KPaIZ8;Box+>mWIBQgO)V95^?t0#ml*&6h`G*}9m~EFoCP5AR5F>y!;kzDkF`C4 zs`(XIxL^)!+aA#}GMNlEv~Iv!?MhF@^!Pvj@jJ6kI2{^r-}d@BF|V8`?; z0633GeYYz1E;XfOHfPMR4@-Z0^4U*OC=PdiXpKJ8B002P7 ziGK+|pWo{x%6FanUcwzsYmvzue)m5o<6z~gA7by`7Y!sM%6q*rEB#f!SL%BKc<{WX z|9}dg6i8&iAOG|$ezM`w!+yTL^)XKS6PY5ob=~aicKf|r-wOZ$BvPrb0^nB-A_H0< z>cHO4S02&v(o4PA^iYSvL_~S5OET7fnpm-s0`R~EpXd_NZ<<&)QNGJ$GT6AO?d5;3 z+sL#1iA+(^uWmf|S|eYGjT8U?NEZ*>roi*2)=!kr+O|D`fn*8;$rK)If5LPeqWq+I zwp7zAO|9No0oZ)@jlBRqZ)*KS`7D`C<2O$}jsN@2)BN^NWQag-y1(N3epBl=RsaBC zc17ns3jE4s2BLhm^Y?$l&ZqurItEdml3&lP-1l9R35*ti35>rbMuKWRD!QNBrujnA460R*G~w9anWsX&wI9G-{=ViOY` zCX>m)aU9bzh=vx`&rX%wT4vS#(R2(TAO!#bV7bcy{fFroxh5sS*~COdVIifF{Oo)| zZRg9TLmU#AE!;Z0p&N>SGo2&XcVUI8^7-cBXmNb2;vt{g_PK)lMoRFo|M{% zzi%oaVmeCBh~T!C%G&=ko#XWaR{#LODeeCpfWMf|kt;Gjj>MJIITJucbQIR~LL{!7 z4k?S7j*?4%>m86Um<}-%Q4Q3L#LKEW8W)I4v~Ccj3inU_aCY{<-8BI1ae;JXj&=|c zjZEBvlv=Q+7s5KT6!s}ak^1Hj0ID*twX*gh(>aC`*a83m)$NVn1?0n~a}Z@ilP-`} zXukvOOT*olhQ5%5``7-#-%<7~z&gGV)`^9XW8#o030NgIG+{vs137U?Gz9&2OGW(^ zrc)eApyyfaL}HnfN?!vw!;u0DC>T73i7AO!j<2c0eLe|yXAd$@_5cGc149zP zKBXAe+sDB^sR$TiM<1>4h7@UvPIWZU&$Qc+uFI>m6p@mHs^R0O|OfOplQXeh7{n>z{C zsl`Y?up8QwU$X&{un?a=8P-|+lcvb&vu(G|bck$(;%u6h%DTU~8qCWmh{nP?u@D6x zKLOTp`E!Y=91}<4>Jzy0r-;&<*3YUB#bxZFC;$L3yK?WX3bdQfL6mdFHsY5a2kY4A zmjIcRK;k3ELnek}@{wqSwwF9NtakJ4oHV3)+=2 z9mN}EF%*1kI`4`}QPuCbnEBwGy5E@&lC99p002NsMg5Zse9m+ZA}>ghjl{*%06T&g zyIDZNV%`#)qDvv44%5yb2w4FDfK3&3w*%T@ItP&#o)=NU#4>qc|l5S#Hy!+``)(##1~E-yfrdW1gWC2wY+wN=^UdK+5!Lob|Q8I zfTv97Ao7BJYBA#PooqVB=!gv7=;xH^9LgYiot>qU`i$uiV-e~CuztqUK81TJfRyPh zL|(9Glp%ipB-1fQEOx;}*zYVe9fQa#Ny~9By}#o6e$zq5BGd%{09q>=el3dsFr94d*ue#&nFa3Vi_pfSHw@-vID4(>aK|5$H;|96oBPe?pm-f2e8L<79y|MZy$%m zM~(-IgVzG2$VTEr$HP8*oarb;9@2j}PW*~6Uh+4TP~8f6I8_~ub42A40CCeG!hNdObQA!9b!su<^QS<{f>%t4awrYOg)NnJzc3vnS0Ysa0HCU^`34ca#dHoL zuene6BE7j2+HK}h!cuA@Hg^*2xA9v)MW2W++gM(|(sYhoid+EzfaFl-U{)D2|JMU&M;COzH%}9kW8#R-D1-HmGDs}UcPJtnktZ`H1OH+= zgcl+?0{{REx7~4?>)MY4;7!OWuV`lq&hLBS{Jsa;nI6-!WI`PFsl~A0Qo@J%P(JE% zATuAVsC~wC5HCcw002N$NAp5aU59YrP?c!Zw8w$&PQu-tg6>WZo-Z)qK$9+Xzy$zE zp#>?hfI=HmWUXn%H)n)zVG_4`c+@ml0(007{}v+DM#A0^@}a#wfC5g;kUdv3GnprhX7t}{jB=GxGFUO`b=jbA|lWATfm}x-}wV9004kZm9>v6^dkVgd5$U(5d}e7 zMLxKpvaa29kRV_IIH$H^D-Xo&dna)8(M7g0VpK7hF{g&w*LBj$tgpK9( zD;4q|rgIPx(U{%TT3P!|(;gu;D{8+4=+{i=AR?mC5ye+pD(b#!I!93D{e1w2 zQ`6COiz;p~or8#ovM12SjTQ9`rgH=tX8?xLQeO8d5#_NXBBGE`;NF=P`*<$bFjxSF zp@0@YJMCIPdG;s~QP2r~)SvA9_;M_FO-Bhj9sQo= zd*boSe>r1m+H{sM;0!>PemP@lx@6asj{x%Drn3+c(d&rZ*FVsC8F&8K;|#zE2_OsF zoBmUPPnga^L_~lnR?V#Jtmm}<$glv6QgvJ77a+3SbPgh-e5Qh%Tg&S{YdS|5@esf$ zwN%!BK@=QxL`0^De1SXv(c=uj7}c~j*Q)4BuuKsV`9&4@WNSs;ZKi{S84ExTRJS!< z2Ep9`Y|~kYh$7Ar=)Z2PsOJgUW5fcGBQKqV0`ubR1~~aE9qDL_}dGz%ybwRU2k6d)joCsNtFG9#}uC{x9NK zm4N=-bQU6_5Zh`c;uYNadxHhQBOA}X_QjI%``!zY`%GscA_}4V`;sLWuAi~A({zxi z;voQ!2_RK%jmvr0Kq8_n3GQeuuls}o+(CJW1;8iO9nDulbq#o#AQ91#WCW<&SW&me zbdY?&0^p+s?M?5ofFA)EZ#oMRQNSDkWJya!?SrO+!6pH;Uvz73G|08TcYg@`C1 z{_MC|^x&Mj-LPX@Tr)=oO>nrM?G94t}aq2k$Hq2i3bYD^`q4ERMS%`?d zque=u+cAYf|Ro0clj2;MJ%h@vASihti&S$DJPAoL0rfB>r5y7D}=tos2R zYdQ-N(HQMj)ep5+*8j|O5PB^h0tldua~d9vxjI9D|23V3h-mcmAtw`mJ9qxU#2J79 z6F{ok8iXkAY^LV8|Nu-Hz3EE z&O$_V&|Vd}y0yG^gXtiYJr;lvn%A~^YD}E}22f)<3lZfzeaOiqu6*#krT;LUghqx1 zAfyD4>h`98QQ%ep#isKRQQjE<^s}uM^>-)_O@W; zJZ{0Q-%!!8-Ei`y-&O$_fk)OcU z&$P^{`=jY3WDW}e0RXDn8s9Bq-2&)4O=lq@Zz%99Tl9tv<@H-kXCd=g0O(~epC17E z26)*ZQIzZw;ETo2P5tltFS&$Q0}%ig02;!g9czl6RAw2Vp9V0|bRHrawf!o3bE&3R z-d}Njzv(a(EGz(YM2olHHO`U#S{2*`pv-h0BFb8?3K|Or(qDVvf=_gr4nx7j0zkuB zv}4WWOgep|D6RugXgUuO9Z_0=yWLFu3lE;R^dF|fP_VH8P}UZ0z2gmzZQlUJQm_aR z1xX6P4^-V1t(6UbG98A(fdzm@Y~JI|C&nDTkwt*WxRe6-z;eITI=kUH(_tuFSO93$ z<~`ngVl1Pd0dO@~1c?09uZlZuv2Wf`am_B%VJMtf0BFqSwXL2SL#7rY%fPD!h`iJd z!96iYZ(cX2{&~}3DBM^8C}-wwX)Y};aIXgBMgS+6&O;O-yP>)|k;>f0v-&AlSO6&J zsy3}GuqMby75D@oXPM4J6kX7a0P@s= zZO!LeE|vlMegL-VJVYVj0`fBz+_9;=b|atAM_yq8AYW8(Z+bHvEEC`g1xiilAqt=a z0=-u(_l^y-mpyGd3`HLc0QqY1*1N_zR{w`pPz%M|P3IvBfTu)p4_s@_#&fTI(R3Kf zA1nZ5OwG1cGhEkQD!@kp6r0XNqVS38_OFWHXVlY6AJ(tw`j+j$(dC8qXJw7 z;BBV!5P3%M8>rr0V9R|!o>jNcbR5cWEC3WJ^S3s=)v|G!D6Rr9#dIE`9OzQuezoK~ zn`YNOW;zVfAuIqCNL8Cw7RW?vF%*{pcrSp2=}bf;kW$5imgs$Mm#%MJ(2z78i0JiL z04VTk9$PihwRNFDF9EOsyqu7N$pz33=vvL_cU#YE*lRiv(b2E~P^eUGTX}-z%7+wk z34oaZ#B?UgYYNeAfULFD{sHgHPhr9WK%q77@#Yib8C{^jLICpt#7t+Ryx;<87sUn_ z?hpC+T?#7}0E&d_$D5CZSK8ejySPS9eVhBz&orywe4}i@A-C(=L53ZYY)dACih;oSqfFex*S=iC^PDe2h zf{UQ21W;f)7X{LQ09&E>sX{ilRQ~_=?%%bkC=BEH_c=E$DYe=bQ&4ObD+(4wiAX>Z z1w|3p_D>LWa&Q-S!NEcBPcVZZE>Z`y769 zz#Z;%p7FWoaPE8RVcLP5TS;C3Tw6Kv=zMol&F+_R7&z?H3fr0ik0r)28xNhGx3A?- zRMQUS+~48_z_qnww=d@CND5$kWgG%_0U_;NZbd|3#$X~~H)Gvy`BgpF&b$CP_l@Hd zm-=GH_B9KE6+pXz?zD5cT<{0rP|gI zl$R`zk*9fd;1do1jvDY3m;#%MAxy=t>Vq3Q&Mc%I%(;Jw7Xat}fU#mRsjhpwkxYHF znMMq47mNTq@gsy^^%-~un#ST2iRpUOlhv;VX8gmnz_}GPRxBoSgYO0tYFo^b zVX$F?ErMa1Pg|D*!MuqQW+hNb@T>tPl#~jE*Ry9i8`I9{-2ci8fO9E2diO%VLUu!l zaY&{iQyfHL17_>N20#Ne$0Gl0GY<@S16BsTL3)MR3z=S;Y&M24o78x5ec#CsX$N(# zU3md;uEmWNi^;;Ka*le;MKmB&pMv$utT$TdRfv6