From 70302c2d30ebabff9706619349f4ad5a3171ebc8 Mon Sep 17 00:00:00 2001 From: Chopper <156493704+ttony2chopper@users.noreply.github.com> Date: Fri, 31 May 2024 07:58:34 -0300 Subject: [PATCH] Add TuManhwas (#3285) * Add TuManhwas * Add icons * Add isNsfw * Fix manga title * Move to ParsedHttpSource * Add chapter date * Move imgSrc to function * Remove extra map * Move regex to companion object * Refactoring latestUpdatesFromElement --- src/es/tumanhwas/AndroidManifest.xml | 22 +++ src/es/tumanhwas/build.gradle | 8 ++ .../tumanhwas/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 4640 bytes .../tumanhwas/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2460 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 6850 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 12978 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 19790 bytes .../extension/es/tumanhwas/TuManhwas.kt | 136 ++++++++++++++++++ .../es/tumanhwas/TuManhwasUrlActivity.kt | 37 +++++ 9 files changed, 203 insertions(+) create mode 100644 src/es/tumanhwas/AndroidManifest.xml create mode 100644 src/es/tumanhwas/build.gradle create mode 100644 src/es/tumanhwas/res/mipmap-hdpi/ic_launcher.png create mode 100644 src/es/tumanhwas/res/mipmap-mdpi/ic_launcher.png create mode 100644 src/es/tumanhwas/res/mipmap-xhdpi/ic_launcher.png create mode 100644 src/es/tumanhwas/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 src/es/tumanhwas/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 src/es/tumanhwas/src/eu/kanade/tachiyomi/extension/es/tumanhwas/TuManhwas.kt create mode 100644 src/es/tumanhwas/src/eu/kanade/tachiyomi/extension/es/tumanhwas/TuManhwasUrlActivity.kt diff --git a/src/es/tumanhwas/AndroidManifest.xml b/src/es/tumanhwas/AndroidManifest.xml new file mode 100644 index 000000000..e3140cec2 --- /dev/null +++ b/src/es/tumanhwas/AndroidManifest.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + diff --git a/src/es/tumanhwas/build.gradle b/src/es/tumanhwas/build.gradle new file mode 100644 index 000000000..b6f7bfbe7 --- /dev/null +++ b/src/es/tumanhwas/build.gradle @@ -0,0 +1,8 @@ +ext { + extName = 'TuManhwas' + extClass = '.TuManhwas' + extVersionCode = 1 + isNsfw = true +} + +apply from: "$rootDir/common.gradle" diff --git a/src/es/tumanhwas/res/mipmap-hdpi/ic_launcher.png b/src/es/tumanhwas/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..bd4a8635547b1d8fc52f6349706602a4918ae1f0 GIT binary patch literal 4640 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 WeqH^R#1Y~E0000; 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 literal 0 HcmV?d00001 diff --git a/src/es/tumanhwas/res/mipmap-xxhdpi/ic_launcher.png b/src/es/tumanhwas/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..2d12042692d362286dbbd18ef909d172ecbb0bcb GIT binary patch literal 12978 zcmV;jGEL2iP)he_VwMwE=y*SoCU!M_*B#p1|$KX z1PG#x@fv9F60idX+ zFHt!Gpace@nt^=@pncg_RFm>As9dtIp26=$Evr4h``TA?v_JL}2|$rPcl^wLEvjk9 z{xkS*jt7+}=<5s^u-Jd{cV9phEr5an!+$5^&7bx+XC&Ibe4W+*4;l*wPH_M<{5yZ= z%lz~Vrf3$`)HQ%fJ^0{*YgDgZy-`w9QdhiBz`HR9*@z=8DG5DBw|@_}@NU|1Q?@Li zg=)ub+u_QG>ep$1_Hy`r4c1{T-m?n}3*Rg*E?&NH;lizGzc2u(s6gZuKz8t?U?3?+ z9d*><806sG+}uvPckiyApPw%nuoM*)g$0kFz;Zgd@zkdqu(>H~f5w!Q6iH1@mGty< zsZ^=bw#>}TuhP=e9{ugN-{zoPQQ++vL|y4FcE>|2}EuIv=?}eJo3nnV3~32 z*ROBlh6UV$B;LxqSvm4;;{b?Of{m_SvSi7ZXs5u&M6UE9F92d4imlX!4I9=3 zl1Fdbw(Vjt5OtxwUT!AORCZg(kMe%B5pF@T@gCa{JgxpT25%ZEavh0S$QswTc(V~ zSlsj(t}M*^zq7Nm56AQ71OP<;5J6OK0HXNHz&jK4w}yV6NC1fDb2pRZcG35j@^0q9 zZCUz>;Cg9@xyTN%kO7b}>&p~nZWxFPw9$VEph^cEaKNgv#Ea=UQW-Z79jQ&XZN*c0 zKgQyw4O150X+{hTfbs(jRBiyG{!@_*RI664m1V+{JQyZ~5eW#9Sj){s#T(Q3F?K)O z0DzhV07Nmi&j3^j0Q$2m0L2S<${Rp_EM~Yd`q6fzHUOYz=zn(rMCA@3RiG)t0H77& z0JN{cQ{Esc@Ae}ta_~I+X-(PyWE5$8Xv23Ms7wGw0!}2+6zOw6Cfd(F%6mM10wo*> z;|4(S2A=X}4Zqrt1qkh9k2!#x04LI}kMwz2efYHiegUF9^%=j$XrHr~0VpdgE36LW zL}uH|cmar4(D?q`urvy4U{P_7iXA;{rgD7So9n4o9Q47|tpM z7cc!c`!R1kc$wwGedu-py)X%%CEWPj_FvxRV+NoaHEOuB!a^+sCz^S=e3^6f{97bI z@^e#{_3Vq~MThYMlHfW7KHtIj0ocb=-eB<3KI)i+vVEHmA@EgYEaEL5Jr zB5>F~HvuxI6=foG`=kjICWHkU%ty&dn z(egm4TBRDwrt0Tpp^bn4Ez6cIl}|qYSib)1Yh@>1FXPsdGkTcOvz+KraHvYpo;{_< z6_-o1CQT(7ER>7~!EqUxGG&U~a?33M{;mXoFqu?VN>f_HiLh|M;T<)&%|rV4?=KxX zbWjmR>MtxPl)|Dy6+?XKPy9UzqAMpiM~Wc=k^m|KYd036LV6lRT~+*@WubRq!Jt|z z=yD+D$V3Fv$9OMYx>Uu89ZccGS_W98=M`6|xP126XC)_xD#6|_^L!j<{rdIg{`>Ej zv(G*ojF|yITj%lk83Dxpd-dui3l=O0hsBr!E9MLoNjz}o05-Ygl1p?laU@#xf;DT` z%0}o3xEe;qk@)1Y8OhlRLZwOhd5oZ?$S==^~ST_&IeX0*H&I=dS~c_xInM z<>#M&mM_2jQhxd67hS}iJ9ma;CDz4Re~6s1Jd30t54Y%MoGn|nl%Ye1%6aFVR|pZjF%IwQCC(sbj~Ea`@qgOVg%Jm3h?C0sRy}L=i~l46X`3 zk{ADipCz#JOQ1vXwlrKIAm4ubt$g#%H>G+LMIT=kDx?8Chskx5bhPc`)JuTZQ4ZIwQDCQpWIo_Jo8Mc z43;V)LUh%1!v}8lgs4*_{bTu1tRyF;2&GG2UaqWNvra|JpMUJ@k;g|Ni@e3#lA~$6k=T{N$5QmN8E~DF@U# z0C%zlwmC&tz;|ScF;b5OAY}#=%ZEPl*I$3hR+#^^@G{afq*~Q#Qms0ban`5vGP!h| z4?q0yUXDOcJlS;Euwl}r%Q+CA7GU^aNijth!NhhbP&tMqnDQ2Y-h1!8J)YUAb?25% zSf1*_>8GDA=YSol3Xt(9O`4>eHk36OmjL3ToO0?ZGJ51_Rgmww=N|dsgAc+gvq~fp zjzLrWJ@CLV>2Z0FfT&Q2Q0Y;K?g5dejy6BQKXOLk7S`e-Q5)XGC&=@}Iy zy+S$^bl3(ZDeyDpsMU1eefOzY4PHE2k2l?P696#~3UjKZ?%@CV`Nh~2+a)i*Kx$=W zNk&E58AZ_ZN?#n<`+eO`^ zW{sM7wq#Z2-vRSe5|EAJnt{yVTDNX3W5$e;=FOYSop;_TufIMG6U_^-_I^bIj;V1B z{3}m9`J}Xj5?&1Pr3(n=us~8EW1oIn7B60`zL>)gKMc;i8fxkBwQTuPsg8yE3rhR0 zUAw^^Dfo94Y1Xv4f^glszvQKtUXoW{c}17R1tl~>BIzy4a-b}j zgLO&Z2}J7(xw6-ls)L!ii3A{S*n0Kq%HYAbOE0iKeP!Gv%Ep+Z*|TQL#TQ>JxDafw z1&ApFg?cbrN&^NA(A~<3y<^B7vT5U{Py-JMs8D~TqI(@g!HqZGgvp`lZm|ynAv($P zfBQ}P_UWU#4P`&|6x?4V4H`56h?~J-*;rYLVvNc&$4HhTFgU5d&Yvesmn_>unP(5? z`P#Q{j}7qz{8p{NV8vk460pQ?Dwb!?{8Sy7Y@b%<=!Zr@F=t4lSZ2-o9{SW(YAo1a z+*p@iemNHP5~<&?fuvCM1sIqvi!o1(Q6>!M7&UE~@zMKz+ikZ=PxPMwpPH)lYF${? z>C&akiR{N0+vdi(`<^>t9a?(TtFKH`3zR@G&qHvJ963_XJnJmzV(Ec( zHvS_p26o4rufM6f6Im@1`|$bbi|Pm01HJbY(ZysR2A+4$x^(Fxk3RO8n)jq-E)GQ^9fb2B9tNVnKmPc` zHOoa(X313juI?vy4!u(Cs!*YV3>h*6z#0IIm8cH%(CEkH z;fEhmkh3pZMFe~AK37>GnSejb5^Lm(B2~oSc;g+p0RZ|N9`;Z#Gj4*XckkZnQefML zcxYf){(LJdfaU4D{SmH{xMU#9l1WlO&&-)Km3^pBkXG$J9=E_@d4gvAGtbCrr=F^l z%xNLhY=Rt+ZB&Lf59`H(o}J7^&e2 z`-{*1#1l`*h26U1&xLsILK$+$o$|s9FDOfKvHL*G5`0v4t;NQFHt%%_>Ln+q%A0Sz zr3_RSfXH|q;3In+eYS3OP(T90{tGY<>_P<)X($I)Fab2*ri_RmCizwbELZ8GgtD5- z0;?17kWrq0{(1PFPLjd8z^(G4} z#s>vp(mGYim@G>XCp;5t6FlxfTd@ZaX_w0Dt+(E)vY7M1coON_=m=gGl~ zmqY4W^pwy0bskuf7Gg0%A#iH9qR{xk;En{8s=#M`7Nc#5e8!;#u4p^KN245)x8Z@X6&}>jeH90v=e*bNu`br2; z!*G#+W8b~u`ZR6OD@{Y-nD%WUVxX5`k!HO6u`0xjZw0?NF2?%CjT?(+&(j5+GWBg4 zaP0scUymL=)B#DK4`VEr$_&d(B@9IkK}B%}zfwVw91YJnEy_^f;as18{`sodq=&4tWx8l`tDE_5dQ?)4G^C?KNo%hgcHi_y(BAr<~jgJ8;7u z^WbEmS%Fs59e3Oz{jcs1Gq)J}&MuhW73GiRt5i3jn}B{FC%|x0#*B;Nmqx(tgKw3L zN|wVgH>U{w-6Ai(I60IfPW?>}KKLNa`0ik*0`*D{9eS^dEN%jd_13LhL7_D_=mIiK zH?WDW6!oSj;hC1o>8G8p32C7K#JrIkIhqS@}GO_m|;)0ad=mtdwC zGWvkM4T_?x;P@Lh?0)!Y7}uxIs95g3ZT{AzyYWZnU@XDL^D97MrWyZqek3S~&qD{Ls9CrZX0^!0bQ1v*ZUmPEBj-|l=k*^_* z$Kb;W-cft;b6_{|@09HmCr(6IqJx5m^t@@)7Fo1-xx6&_CHP6+aIBnjY^TBna4mq` zvc-XjS>?-zh|4jqw!`M5V!vFN7hil)jydK(V7vm^4zO<6uo` zzYOAr-v{^4iwoYQNfXrv8PcJ%knQc>l?`wAZ2awLxCWS@7ibK+4;_-5krOolnGkQi z^;XzuJZi+Af$UaT|Ni|n)IcUJ1|>5hO&Vud!%1c!+hRz7E`W-eX_CErmnPkR{mm>) z@Ly`ptU;;;BjdGT-B2u0CnBrZJ<(>DF{fzq;ObI9J z1d~mh_6CBcH4wP&jK9;su*6p}GXns~#So$A!3n#3`EskD&;je%00{E9)Cx1FBAD9w z^wUov(wz?dWQT?uGBPqX21C7qX$@R#^B|!fh)gzW^k})D>$wnD{CZCW5D;abJNIWe z*xr_@@Ch-&?0$G(+qQvzggINVU?G4tT0Z$?Pm`XL#+VZ=pvsjpB?U}C%Y+~zi&57w zV_*W?X!P5)YZoj~KAeUKx~616T;8opYq)$G0%g*qXQfr^7Mfi41(e|(S_ZxVZHqJ z`+Qgn?XXL-Gzw1Bp2{y%O&O00ezA>?C!VNaYtW!J#8e*Wzk&kr?YCw?QJtDC> z1ZgW~Rw!kTdlxgOYE7K%_xpUKPm?u;@wY|KQMoq<$@2eg0Yzfk!l?arC=ttxNr+O?G$ zHM5ke86c#Wnm`H;2T-4&3;)JjZo)(rX~rMx{{Z%R@4XLHKcT~tx<#jxp<5tmX?drU zV3~c5*xQAB0H|~4&hp%I&p}*J5f20`pQ-Me>(f;wEqB^M(b0nl9R zTr$QNUwolq8tN|G2y`E?3;{|I61a@gGqm#koFAlFv!>FdseWNK78EWGh;cFjGXr0Q zIAvaUN(!weU2Xi2W&W1_{rYKu*2J&KC@B>*Ok51HAt+4>_wOX5GR$^4tE;UM7QtQE)|d_x^3H5X?ai!sZzPB zp6S|%^bYQ9GLoG!8beW}1F!wDM?=Bgq9+};Z{Hy=zcdBRFipD>EwTOS$mE3spyY3K@};COxP9P<#>82OV?}7O+^uD;oh8e4C@j&gd*G zLh1+0FfK@EKJF7@qg-{ z;h2^$`$Ou(HSzP$zkq!zNt?E9WZp0Hq#syJ$}4+;6?OvnxvBt@J(B>Scc)KReT|H3d_J5b#`-MtyjX!T zb?P*ogF|tq?nQ)E>ehwGHD9_62Eq_z>z1uLHfA?QV4wJ5AiI9R1w0YD%vE^!)(8vG zM^q81o*I3oyx*Ozz8qRdw9JeGNLk;#`=y8;?^0JhC-aq8rmD!HD57|oHf<_SY-Axx ztez}cx&&<%fGyTxqWhNW4)lxAio5)Z9$+vAB#YGx%=lCxLIq?W#;DAg8LOi8)gF|e z0@Ipj(HOx_M}KtKG3|Bfk|i<(k#xEMsH2dzXk}g1w-1!$0%aWI)YG#e(4Xk&B=A{| z=@wI_OqGr&b%bYoC&rPljzPK*X{|Etmt_fF&L0(LJ~Q*0)uILa(4W=^{qeNx%{SjH z_rNkElO@~yNySjuzrx{4dY|ddcHk?E4Fh43_DCo*3}pX#7_6lp&@Ik6=WOhhdTM6U zH#B$dT=mZK5TJQLo)?=sb&51<+yE2G1xc1AaO;zOXl+oW5R}7*57SAjS~U~(*8rH+ zRFSkFonaaV{ZCDrHpFqB**JE57%a3;rNx1*kl^+OMBAu6Vsr%1%dfnwF(_s{s=`bT z;hA>;fyZ;`ir}ddqx@5RQG~QXXrTmVzvkuZ%gU52EG&|re)>rngbPp6I|+bjh183U z8|cW~s;6vA;5W+2$wQ)k7tNif$l-YCJ3IgUE->|(o{ED3U^ZrVj(vKp#vK{d?a;9U zK0@CC24bHuSTRQr!WsE!*f?a+TE#DbD9#usYSZQjOh#Ar1k)!$tA+>n?7M@O)xG!L zgI$XRbttd3YSn<%^#RytjppBQVuueOuDM1nS~k)1TPZ2&5Rn;r5Ri<*m&wq(8u`h& zxjS*FZ>Ah_=)nlS&X*e1vjD6op>Th;N8ido0MIcjhnLLgXo_%uGip^BRiK&<77amcWO!Tkb(U8Vdv+Q(eZux~x~P4h)Hn%Di>z)CPdy zKwP^HF|&3M$2(OKrYPe^sa+>a!BY$qpKgbN0|%-R(xJl%u=d`Cjt0eAV_*UQ51dWg zw(U|j=7uWk3LG1V;uk=6q??q3P%@d~fOOrt^U1Pm^$LiHLL9rP4iof!O%|JrkO&=z zOk1sAzYZ28Tdj*li~i6U4^u=9Gcc?`1+qcIda#xjVz<^%D$m}X2PRmqAmn*4`-`BQ z3=wuHfREsy58B$cZHGE7DGGV}husfE?>0q9>w{aVL(sgEp$wC^ z@*$>~Ex>1DJx2KN#BrM&VR9E0<;e>8wRlkk^_%S7`ADF@U$Yqr4w~h+557&{{!)i$ zeqMQ;?#{Q~oDMVp6ZMObT^Qsf6Ck`PTL7p93zk4!RZwp-*?~Z$Z-)y}vnK8q z0xOWo3UGM?EvfbEHmRrCe#C~l#NgWp>q%7lbl4A1Y0y8!#sBcb4|UOkorv_!JdA*6 zCJX~+E9&m24@TKXRPUlsidG|ERF)rsg53SGOAw38Q3oK8;qZXuroXqTj`-`mUo~b& zPk!UZ^-zmuej2Q|g&Nv1SAL(b9%NsXrQO5c4$Dh=BcrT8*^z7MP z70{gAJOmtnguaxm{uNq9q<*qh=gtfhSZNK^0jK~kUHXS6p^=@;qEc+qB&TxBollmd z2b_UNM*Nv38!CK3z|)aQ&oIGbc0UzoT3>XIGImDMYhF!|A~FFia>5D6DKkw{ z9|(Xfkn_$tSKS=L5a8|AtA~z1B_$0Enxn^i=rfTxUD*-@H@1Pq8!KsLIQF_eE@;p;VTC{K( zl<0Zt;3Ozmo;nBpDa_>|%g}^o%*!4$W&Pj{!b6kO-<_^3X*mO#kHZcLAbP|q@+MAa&{{PY zL2w?(jGa$8CE%scRsg4`lRZmhG#sY{oI~Z=EYJQ0px_0e`O1kaD1=gsb4#rdF8F5F z9K^n+%NICP#^7snnE13R>cT47wR@+0`S~|e35smrzWtO@c#iAFrDA8z zn$-a2&ocHY+!hAKmdtZ0a;%vnL(#&?rgBd47zsSI@CdqFp`%pLNcul#@X0__x~Z#B zi8uZ&t`b8ERE(J}LZ(@=WT`a9g%MTJKTpKog=0f+yzx3f)K24P1@KkgPs}t z=aNnW;`iSdg3`A^JPcPc#aJCh7lFh>g;a(q#)6g3P~)W=V#fRL!7b4SjKkCrYpK)` znp{CM5HG*{3iUeM>mPUg@hZ}4!(G60`g4EyQLn+HGCpDA1n6h$p=1w*PL-z5o1a$* z=i?|9$@Yt`=zP5eB0IeT6X}a|%nZHI(fQrC-^;}pU0mwUZ~>zD1dtQmh}PEl3D3w; z|7n9Av<{X>D*QW3W!5)yG18GY|59J(TP}SFA)>q?QIbnWfjPc|#Q= zmZv+A)`_2Fr+25%kmHa4FU;y6aV<<$1zeTNRdivPphXt|^(6BOH*Vt{p788M0HL<( z9|VxTp?@&UK#Pq`7<{`KMa~pF4===`Vm}uL{IU>SZjJ=E_mSd4K(=VnOqJmzIFn}0 z`c8d5yaUpVhiu8?O(&gvlBDqDN5Jx8?_{j8W5??ONGFMVLEwrX0677TeegUh^~!6n zNHs*7>3CbQ;!ll}J^t8}dd7+j!i6Kv^Ijl^BN$X=b{>^x?p9{|=>;2b-qG|fzyj4o z%#C2m1xUVt=lR4FJHU+RJ&YB=6sam+o_~H47W=`{+tEVlJNB_MQ-Gn2f!ANBc|V#3 z5MaC%h_6+vR_iSrOl%9D2U>^R5VY_Jgt-t)G~rvcY@tdw{Yq&NiL~Q(@7%3Eqj%nU zXO9FtW;RZQsBPQ?n+2j%GpTj2Bq8vetw*gXCSB@3e8kuR$Sq*(3qrX)2+31J?z{te z!nv?c3S}22kBL%!`(9motc6w&ndS(dLI7YGU!v$UXYqLsojDADBjt5E*ycn;r<-Fp zmmnR4<72cwli;CMhB%QGUwZ|*%&mL)gCac(^^WI|_k27q2xWr5<*SC~gYL-y)T8L< z3Dph(ME1zb&x7NzNEwJ`ydE;di_bzJ6u^J<40Ieu(e1t}e#T^ao(0o$XL!@)Ko&}c zH+~hak>N4&vM%l_L!`w9K+qwgvcl@Zv&@)Om-ElT!tyK?FB=z#ukT=a3@lCSB+wQi zY{B$ZE)D~oeCY+7jJN_k3>{2{bB!iABi?o4tu_HhlOsbDdnfYO%-tFYTfFeXWT}H_ zJyZQmdMERPsi^X_1KG!ZOPUk#a10M2Q@{#cK!ETDG>Q*qu>(LeX1uFo4z+-6pLZ!T zP|Pb|$U+N#Ux0gt>giD^1vuKtMxxqKunb)ZhJDP~s3TGLYTJgXs|CtFyws{@jasnU z(vjJ4mpVy3h_Bd*Ft-d8yilh=v7CTh;_6i^DO>30NcCX)2AzZEMpZHp0mN%~^$NMb z-H6t;bfUYJ))+xVP%`Lw#1U;2kQ9HkRQMU$&YV+^q%hleF2}{>I3{*6zo{6aHh^KU zVIdZ?P*YQagROR*$^y_-6@3K!-&ER}dBDWo{#6QF>vF-XsGKjir^ z$t~1ZBQV`|%#&l_dZ6wnP{uc?YogUbt?_fav~PcG$O|9#8xiINH1>yK_~Joi+g*s1 zh_!21N%b1l^zhv}#H+5k`dVcQ^CIgo(Tph$w1f(ga>v^_2palHm=x>pB)od~$4W!&1<~=LX zv}l-rQ@73m>KJU)xRD-*UhvyuO>PgqEQ;kBOr_(E3iYg6v#{gmYJ$7dmlyD`ZKlRP z3zNSo+y)e%RM<;(D*%WV6FtwtdW(HrXW=%osW=@%{xst-Uu#8$n!#B*AMIk#)Ymg% zaFp`Ga@^~$0p~Sq)@nGWcI~=g>lgJP0yhcsntJxU0;0C1Zn{txG{lVviv~dSX^e+V zPfJUJU!<}I2^mY8^4c^_Hw|?qj5+mTi4fb7;0OqES~gTU>R+1Z_5hALL+qvmqTUt* z;Y(oP*I}ZVxz#>gU(8XWABbn(>}9yye{I>ivf_HVO;#u)$Vn zG`@E2dh){alNCVf7J(aK(4ZUCOV9K3uOpV|;Q9AI1{yx%LAm7Oi{L1PB8W>c`Nb&( z2p-;b*WDU<4)@RwCL^pKQWnm_waW#ka(vq9r&-5_14oD~ueadJml>K)66ul$GAI2+ zRL0qtIRH3&_H50jB&&uS1NFth2({3#;L#xlT4_a+eH%7t1n@4_6D}>`l;r$z%=Ez1 zL;qdSjT~X-ApQYlpB&A7#biHU3se?+>3i{hJiL^9Ay*4~Zd z-mGI?m6rnN>q_K^S5xp%3IFKhk1&_L!(NdWG{5l!ASVk=x@C4ADVNFMJ8&$ADH-FC z(qWH0J83H#pgC!uLDrj)dy`2K%j7LR#BSYczXjLNor^pk`{G(v$k#8 zs(wOXm~-o8)#Y&~<{(kWvF^mP?io^}l;5caQ{M7widtjzh`$H3KGdzXais$}Sp@rl zsmJh;T^F1-;58@9mM_yw4$MW}ZuJ|}w%c(yDbF(FaN7t|D)b&_jXhbXVEGvpd3t|C z-B@OSW_w>0NAxPUgpy0K$5R_+v6rdKxF1F7DVY#0c%?Ai(=fS3?P#gnP3^qw-}97zOt(O*Kp5BysZ8rjm7>s=k2u9PJ=IM1oE(XuHL%dg`j49k6vkpQJB_3MvT;U zT!=6)0OG)z9N(;2Gd(rQ-RlKBE+@$Gga)@uzY`T;j+ePWw7Li)=1eox5)M3(#^>d8 zD(>yuAEPHuc}%K8I=)91U|#v>Dm}WyW8chz^e~_M4+GgJj(!lg4;yLX{nm*>jgez8 znE;{26KRZIKi8NU-sYsp6s7P%^`?&#;U01Y!ZMvKJv6YQIfFezdmk0CGrkgr`myOh3w4VnXBVG-N zxUs^ZAGlVcod7A)M2Bm`O+BY&os{#VjFUE;%$>(Fv0)%T0Tj&yx~=Q9ypwW%lyTCA zM_@Ruw*LVr+DY?L-)SAc$~kGrNg1aoh@#y70U$pn%S#(>>NqL8FUv#$3O7~b7eG!X z+sTu9X~%6HC*}8L87K4NQ<>NS$jO9yeMqluyQ$}QStso|DdTm{Jl2a1fDqU5-3p6l za^2Q-Q{G8gzsh(7K{VC&e*ig|d_T;0w@yi?<8o5YNttL+5Jlbn3qXEMq?b0_)NxwY zNjWEFqF8)Cs>VNn{F+2B?YODqcUd>>`GEwFZNwjd{GK?k?YXJvw5;FdJTAJQ)nWr6 zM1y@-qV2QdbfJQ0(rrDb<^3+_Cjz2u>)!z&rwinlGVMm8b~-kv<)U10zpL-x0E%|f zz0`M8$4OZyW&B=sAKTl10OZ$1du_)}J*Q=zmh*AJ{cb9L0p$1OdTq~5z49vS_p1BY zUi<*a&E&h80I%)3t>>n^o3d`6H3ns410dX*QEpaPw2R}mzMJxH%EkZ;Ub_5u04Ump z@lxMS9XDmYtYQr7>{9^Y8ytk+A6W?u#0!jZ6`1#zAB*C(4X5>-mh(OfF|D~7y&r`) zuQ|!Vo8QjMW3Pczi)D|^It%OU#iN=Z(J=O1~LG`H4wrt)gowW<51f${5%tHH{!6&Y4KwL-L~PjeEF{HK5P9G z^mH5E8*Bi=7iI>o{%|l1H;c}))Po2h>OlliB><=+eh$aGfrI|S7V%>Ny|&@CUNp}e z2X)tB3`6n$0&k;0Q+yFX)~yW=UTy%y=8PguJ;<<7CXOnfg(J5djCI?Q!dD(2SysZ(3gjkhy%w(fHj0$S%gnLezyQ$}+)3|HaR4Sd`-d zrYffQ@>(RX?Ru@}Xg1@&&`u0-Hr~?$KM5R~?nZfbCBFE$UI1iW&&BUz{6~}-HmZfc z9Si`Sjdwfz&hKq>%t%h=KNsEx>>)AnM2a*Ag^#!69fJ{GL`-{`{iR)nnGf*&yjL0%xX9G4@4;9UV+L_2G*G9A% z<}u)jrXN=ilqkH%3>Z)tF=i|*BhvV}C+3Nkfr6RH4kkNj%-<6tY~Lf>FpvRJFqne> z?rDU6Fhj6-GN7@8$J5{vm3*54J6PDLU0k`+d4fme2Y|w{nZ0d4`|)j7|K$yZ0*3u> zQ31y<5%w=%gT&)Snt=o}M4F+*=Vi`70ze6XL^T5m07W%@iOLB8B`^@x3?u*))$}DQ oCjgYdKvXl308muZm#F;z0LEMBk4y_$0ssI207*qoM6N<$f|j%E-~a#s literal 0 HcmV?d00001 diff --git a/src/es/tumanhwas/res/mipmap-xxxhdpi/ic_launcher.png b/src/es/tumanhwas/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..3a853b7c2c3babcb73516d28faf18f40b593e81c GIT binary patch literal 19790 zcmV*qKt;caP)ud4C;>r-UV#z< zbm;9bO}>NxB^cb4~Tt|i}<)nb$y71au~2%;1kDC7GN|2x&aqS}elVDi2KiGVx&Te83NK9E8o zKq5f*zwsUZn@JUF9C=@`Qipk60T1YjzLVX{>i`M?c!_}91ATc6*b^Z`2@&$TwME@o zA_~uM;ZIZS-%P~+?*Go)lHqr}`BF{`G|24^EvrwZA^Dv61;Ke&w=}`QRYAzCV}trM3&}v~;IGi=DmK|X*GAAkI@ zdpZ+N#jBz=sYw@XV0Ezi4)wTeQt>324TG*Qrt=OKt2#4Y~g|O zS1z;6GClkD?fd@Nv19uu6M51VTUr~q3;q6F06c1Jx%6EuZQ%rhr`dv|U;psK58uZS z07OWn9A}IKxgbD1^*7+xr)twpH@)oJZ@)b>mDm%tdF=&3asi~MHOi&$T-vtuxTF-j zl~-Q*b}7ZD>fOlFVNQ?}7swR>JoPu3AK+hl>7{##WsRIPX;Mw0#hR#%NaudkGlc|{ z)_iv^^J;%;teEHkBlLJM}n~Lpv5_WxAPnD^ZE6!e|^k%-+gypu5y1AaHMlT zoo8~{%tH5{%h+;h8#S+7`p%`T{7C1H8a3($jSt&7oFHr>%_?>%R}SFKohJI|Q@zS6 ztK2H;ze_Syj9P$}6n&yLI@kMAb1mfkT>5UUwo&UX>EeT*e){SE^xXWAC=_oR&4>$R zivV8q;k%jo>+hNsR#@RxIlER(G>WK&%_s0jEoNK4AGMab+%ML)UAlDnV#bUaTgDK; za{-S4d}n;+iU4o`j{w#ByH;ka;qv13i62SSqGkg8`2gO0^bs|uT<+)6HfnCg+IQ5r zYHMpJ&YnGctr!A$E|8NLlq&)>E5A^G5I}6|$A$*8$nt(0IwX9fyp=IH|m-~$5i$;uj(4+QY?e=P{mr%xYjwM7m5=^$n~1W}VNM&OU4RE54DwPuC9 zUkrT<0hZSq&y9&dh(Sex04TtG(nf%&#cU1WFEsELd;d{;lFR*kwT&SF)ZcS}c!yZJ z^w*xthX`a2u#gB8$pNAkBU9i{2e8t4CY^CbJyXp03puuy>RSjfB*p>S9s)!yQatLW z`+Pdj<>Q&CKBDgDiiA=97xI3w^j+)-fC%($A|4dAfW;2{xdLyow~yMNLf+4$?>2`3 zQIpFBS<>x0>ba=<`2gO0^bs}ARQGdfo9o!~`R+D@08x`prm3XcE}ze((^u3p9r=DC z=N{j8(Idc;OD>sE1d3A4qZYBX6ysc}pC5PB{EGR0A;*?!-|Z3sq86c;fj=Jz5;gy} zd_Uh~Z+8d~wLpae{&WC0ooCV+f7CN=`FZp;;S6BFRgh$*}K~m0z@rfJ^;VH0)IO5idx@d zzMt*biXH(})HEwUKqeHrWEn~?)ihfmD`wGqw@bNP6tCHjbZM={?| zHMVw%08yJ!Xp?9<6t5+piCT}S`{|4|s*ham=h8N6?ClBxq82I_svotGg%G3CnNL2R ziRz<0-)|QP5Vb-1P>$1mM?RlRr?04Ia=o7p;^+E~Lbi|UyGFaj&DAR6ld=9(IPf~@_~Hm%roklsQXdt;n#w>CF?8KcSMaL*ZWc9i|t=g z=LC1^)vH%det=Yq2w(&3Y&Iv)gioJ|TD(Le5`9r_kA6H-WGYIf^WJp2E2YSBQXn!9h;8;zL*A&vlj@qnrUAuO*zd3c4XZf3F zIia$tsnN}xIZL0JZqA%J_FMRUyaR;bxA41iQOcu$DjljB|BPP~UxO8Z*P$dfSLUR% z*%ETVTsdykTw3COyG4Mg#q*m7Fze(%x6L-&xYbu*O&j0ct-i+U0{kwnOP9{Bcke!~ zyv!G^mRO{Q^$qpzvk@cQ{P}a;`0*3ml*v<_stmjT{O3RJ-S^%DQx>71>5L_vXR-nA zL_nJCT_6JI?C!YZj&8m6)^nXYcXnTo8s(mP`YHFr_nbey@QNC5Te;uv5Fl#d*+QtY z&K+=TuDPcB-S2*<&0a@<-q%&=_loibuCgl70TBHg8YJJ_S;U9|O-@I&x(`44$W5O% z)phUD%?%i^j9YrC{;prYrPXh>5MieK{PWM9j^cEmeDaCYX@qXv_;IeGeqn{{On@>I zpvx9Pn5#}paeME*x7%m$eO%98J+%f^%|)JGdg{PD-TapT6>aMD@hsAr1he!D?{ zs0C%?bRdG;V1o^8qt{ty9UY$BOVq!!i8QqL$}WH(=)HmRi~MUMlN7=qfB3=u^y5#W z@C~j{pWbe{LCdP&uHq6x5Y-bdk15YO)4ka-C~C1;c^>=nJuk_Z)J_A?}GMo=6J;qQ((* zKOH2C>LbxpU_lfJI%2=GaBL$pQQCZ%XTJx7}t)6}1-e_q%oLW|SS^<}~$+iZUU4 zVA=9(f&34W+v z0nKJj`bgH#f+hj70Gey|>{;&H@5Z>9+IWzpGG^)N-lMze27UT0>AH9Cj$ohH&OQsP5tBh zZ!-vx&celSiw@Xxr=Nbh+hU6?Vn8Ydw!Yqd`PEnM%P+n#!29~^uT3-woB29*?&MY) zx{_ONx#a}leH=$>qA%#Q8ngD$M`J^ytEsIq%aKueQD8Vlb#1MofKmS#2apnB`a^|) z3t$3Kn9um}<82I|e)_3#g*V=K!zgSVi(U-cP*l%6^GtV)#FlBY(wu+(`R<;3?nxVo zK-d#cI?)|@1c=(_eBUp61Q3PG z$`7!~CY!j^PCLy+9{>ixMHYYJ$tP_SCr_Siz=jx-Y*7)N0C1IObStg2lGBl`Zq-#+ zbpr60Eh>F z``h2#@3!1ha=A>FpM7Sc#xu|S(~TJMS){0tY@?urg9i_Cg9Z(9n{U2_`_-?0Wt;(7 z8sL}D)cQ6K5Mu!W5(IjK`I*bGC@WYQzXV|)*1>ool zATbEY+}0OT*9tjNN8lhwiIO9tL;)t0A0R&Js3T3TZ)~g=5~2$QRxXbK0R!MS5J1QE zR8_i`|Y>QZVx9*H5Z+T z=uSH6BtwAO+A7z$ph5af;G}DkcxIMfy~BIP0}c=%GVg~2z&Sqn;DeO!i9*7pSnAg* z#RJI@gz>Gs^2+ABSbq8Coz9gu{R#pS<=t;r2*5&IeDOtY|NRdL6t`DiF$EYZn$8tP zfx>-&00$p@usijP(_L>V+GfoO#SigpvsDSu;$CB&d5=vYj>R3B%%N-coLTPsG2gq1 z6DK1ixh`@-p^W#CvORe4AU!V%4Hpq2RaHsPP#?ei@{7Ch!VAqplM47*i`{qM-Q94* z4FYh)FCkaG<4(8HMjIOS$2tVS8kAy26+9vO%$qyU%@K7+VeTr0 zGuR)m9iThZxmmI_aRp*Ya6+dc3_69JauskE`58>+F+eSMI^o>idh4z3mRoKymY)hJ z(Ssg&A~eS%LaW=_mXHBmof{r0iE$bux+y0(|$~ z;zzc{uN`9_Ja~{<-j-gvzX2X&eEjjpO&rYxftnFArlW-0_LB|-x8G-$SC=6@t;|>gyUz9*3I0 z_10S!hm;DSR$6(eyY`xE9Y%qs1@k582l_~ppnuk^dF~}S=$?7z88dH!e0%S^k30OZ z!(FG^N<9+<2v%2haZf+}w24qC=iw{72Ow7e{>!-CcHhk%dgx)UkBkR+*8`tonfp}M zHk5Bnz{&bZw)XJ=+`oT+clOz5yM6cHPw%KQA_2jW)&lu3j``fb{$=mOgWawWAbv8) zw>X2KIG7fXJ?>cd(!XDdg5yYsO)|j38uQ2_kGjn^+syQeN;$(!W;XBXLSMi{0rQdC zfY)Ao&HMuBCs>nEoC!TZZbfDV5%3LQmBJ*8?8>v4V3`k;jt!rt@QYVod0Eu>WwQ{` zXDZ;Q{RJ1C@AlhoKaH=>99>v-Pcqg-)C?4>MMy&g6S-FB4h}+ zW6`g@_FA`_?C>=*O)gMOkW4>D`OC@zs|wE`${cjiL8gqQx&n$7SYLdowMT9rCc(Ti zwP0-}B)wW9;o#*5Ym6}0%tht=%Za{Q{00D8b61CFu)!8qtd%Rw!uK%+!#zNt8gZN^ ziG<~HF7gb54;;sAWav-&o+0sY+pV{e$e7Z1(e@C)TNYSc970fhLISW*5ardsI$ARbYnqehOF7`4Cr z5epSq#som}{8`e4diUw;<|}T2{OY_*x!8PU8CCZ zV$1J;|9f}&<(IpaS6bO}Bz*FZM}UC(1CW5Ikg2@Nz5UMnrWa*`0Q3RjdF0VY@YKGGwkZO6b`49!0)aeBObq%!y7F>7Afy5~HW>wx{sYf! z5HDk9!s=R4w2>xe@NS+jmA)id1HcltRY;f0Id%dkss`sOW zW3d9@r2fiB&?vE`#$6=m;uV))VRNHB>&?2u6%hBZ6nTZTSr+%vfW`$t2z_e}-;fea z5Z>s~sr@s4oH)A9Jo5}G^v4=fHDU1q;SBy`@kzMf%yd0Rqf(+*18|nGK&Y;5B~p&G*a{8gGpX zuM1-%`V|gAD7dm449V;3%iNZ~-_m{j(Z|gSJ|gFX4?bv?D?HnnR|8m#i6ven5wIFn z*4XNC>dA|J`)#+nvo%J-%TtIYc8k4c+}B=rt#k`wpB7f=Fm3~P5oRrjDcLB$WpWf6 zN6_yi@DTdpIamCAWB+b@2!L!#N+a?oc582T#8!RYdFLgKi^+uI$3IIV%`?wFqY#BI zk}v1EvA_JRl*pb6v+m*Edh=b^PbSzOzW-if82c|`;|{oW3cF?8i?V$dzXB%Uwbxl) zF9di4#rLP5#>;GYz5#61g$0N;T(E#ZGN^imoL1jTjM&bAh_MYGJlNfS`|W1)H^;P5 z-#{WUZ#9&e-%S(}0+=(PTn;=Tia64ya>%6{QjG^2f-fA!VZ7Mg&oA1`zgN)rWtStAM}8G&lV zJ$3J{kN`p$q>NYBbaK!9^LdlGr%#`rlH&Trn&Xc@PQXJIh`^Nj?68;IVe;zYq=VvP z>%UM|w}9kB;SJPdeFtG60rw zy3h$|Zwmfrei+6!b?P+tdzpeq$bS-l#qEFFLIC7k#GNg-{GEH~;Rgt`v;eU(u}jRK z+ity;64$>^xW1VJzV8H&FO(7UBGhsA>>2jXnwna<_rI|GfPen;pYDt^&R9hJ%H(~y zJPY;b{ezYpAka`$DwZD+=2^4qEmr2X+is5pxIu#lxtnjgSz+EA+Z;*Y0l6=`{Azdc zB^R6J1x|3)RaeUQvYY`q;!j|CkC_CFOfUMX3ami(bAOwU>FGQy~DN&tZoh zszASs%+KH{KWh}2z~d0WJn%7BgOmAI&k+f5sE{WPfO0??_(7T+%fA+X(FAc`M|0z6ZxIRBSkdfgo@2NgL3iLP*8Yp=bwd*OxW6^30a zib4)Fu|oCY9*0>R5FS{v(8#MMhq~M>J0AXV0%DU70CPbs&<^ANI$rSZ)$VCF+=cl%b z09%XF-~Yh9u{_;MGqEku!o2s+ds^gUr1_7|NTf&xAnUKczUdlNk!UiHY7kC5Umn#@ zKKabdfkb4&A-t6&UF1r#At|Y2{LMAiSi?Oer`xj2lJ6|)kHU%lUhz8@$>DX0K2b44 z^m)Jm2N=*bNxw1QfhhLd?|k6)Q*a!$j}R>ZC_*=gN=;1mLpfI8a93a5FK);CbAX7XTN0~X~cG-1jtHcqnekCAG zZ3_V~e`4pipshz9lnIhV6BHm=A5>t0$&PRV9|xWZK>BC>LSg?ts+z-lP*!CVj52!!h(MuKg-q<+DOh{xZq!zQ^wFf5R7-f#cteyp2Weh$9YHKXXm_ZD=Ty=yZoU{gzv9kcCd5_~KzL zS5ARhVYJruA_SGn7&9u3Lh5Dl=7j`c%jGAT?)H*@0gjoB*r3Z`S|xso>U@5j!Mhq| zI{nUq1Swd?zXL=C1A^Eei$NC*5Ouo44u6pNv#6+*WPjQg0(d7Fsew@5RaYGvSOSbF zsIZkN2I02nDhLgwIMXYKH)YE4f8DI7DOQAVbrM6Zpzdd?jc!M9+ihOQ{O}Q zJw!K>yuY>F_Dd_k4t-{Zl(;9Jd_tCt3#_(KqHE~Tp|Loqbv1vLMG^2%m^9J#>)T&k z;ZdvlkVyHB2L!kX)|U0xhs%*$fEZDxRLdhQpbv^n=@hQ2Diqql$~0&8e9K5%dF7SN zAkZKK0qgHC6HBC!ED(UcDf|Dv`|Yc_EE=W~Mn=D^o)3RK?-FqX+p>EkKs zE#WH#cWyff;H?0BBYKbqhuIF10RRASD$oVQhxz-t=bkgUHC5f6WDA406ESM1opuy8 znj_x=1#ssnWVw&~>E~ahV7{g*6CarA6JSSiLr&gEp$I+X8~FL>pWHAdWZ?LjFkxW` zK|CeLpMm!l>Ibp}02Ck)^ZHTd)m2sAC0=gEYkP@ApFJh!G>U37kJ+{agdg#(D@%we@}M zamOg&ZhJ+>?(WJfMUjIvIJ*oe(TT;Cnajx{Mz_n0o(v)X@P|LRYp%J*qI>J>@nQ!h zY%1l6e(t#!%*;zJ#4-bxvUTdzsn+@mlyBZ8W2KBdsCk{m>rb0L z)jj{*%SuogUv%gjR#Zr2NGr!0+Xqy+)Z{WSEsnB&k)+heaiqzo=hl}t8Y z?@-)ko2{hR%#qk3Ka04~)mL9)b!?`iI3Wg^L74>~(Q-fMf^&RlzQgjr+GMe1&}e!;jy) z_y7BzWm>JW3IS_Dxe@Hnr2QeQ6QP-`f`X^cEbawLHviL~|D<3rZHa&ji$s++iU6y- z@4ny7m_E~}KMpXc|HT(yEX90dJ&PqKpn(e{mrhfq2Y@V*jsW72t4rZ7G5luc5QH#P zD_mfX$=^`M_)SDNWc;Nn)a!Re)kv3{iiHKP2qSn5(&8Z{hAYNCYCW-xw4g<{-+> zkPV*&oPz%GA3XKc(~GQEyF-9*HW<0NWC&qC!#ecQM;}ND{>uIOHygNBgb29j(HrK8 z8lp&H&46kps(J4>2R3}S;(69l)#!R{Y!FYsKqAmw_tlr*2CcDvv?p65UdM&)in8L~d+&YoMIi1`Vb9!e z;zVZol1|R}h%iNgo)uDlqd2{~X?q;NXiMzW5=?lAA}GTsj$eQKjhnAz@@Zn?~dQlicU7hLELQFukCT281@ z0*4U5*tx!8>CX-u=Jr=2O8hw2mQUh}%P-SruNP2Cwc(kmO1|l>(C|wy{kzuW3i}=I zgNQYB=!(*5ZnGRI$o1@#-tDNr%|L^^v}VXvtc8;{v55373YG zf&}Nt+J;r8KBglO_iy%i%yQ+`+Kc&CQjz!id3d12)QMPgzySwZUbRyMYGCFscjG5a zvGpPP7Nz!;xq8np8DIoM)|oDa7|#ljrR&24m`rEd-e!oVQ3rPNd87)yj%z{aNqy~DoPoGbf16mxm!)jG~(X5=bmTD zAOz<@Wr>eMgn0MecbkU-(Llr+tN=GdK-u>ZslNF9OIdY>D(Q#B_}DpVuFBRE4hl7A z?pIuKrM%Dwxz1f{jOzt8MFaiE%0E`txap$aDCAVS^Ov6wh{RgMp_Ia6jxDNQR9AOa zqSJ$>_(G6S(hpVwJPBZgdRWRM2!OFe@2ODTqOre>HC+pDv+uvdAOMR*oC-=AA-$yg zt+2xKZs4-ZxC!!Na*zd!45dIO9jW5Dd+xcX`(DwT@fQ{ZY~q8540hwk{UjZr!gP(F zW%>DR#Fql3Ip$-a*cR`_5_Q6fCnzqy+;!{H$^G!t&qAdP;rL_e+KQoXGj8}c@$QaI0=3fG-9d7S&z>Z`cXDsubci?675|AB7Uu;*k& z`O9J=3=|QOU@1Ah=FFX;af}r;U&h3ccNBiG!jPfv!w)`mhyUg9gwzb+!23L3`3QJn z7f1<&BF~;PTZq`jkO?ao^2BUW?I#6D=g1sPi4}i=gor;o@3yOa4^pJ719PHZhv2!O zVx0A@BE4`6ENc84PWi?gZ;DVXZ%OwvXU-6XE>k%bS!uME73I`CYIJwrd8Z}KgH(Rs z*aNIf=u!L)B4hV&kiGy%yX4YKECC0dZkJtlcK6=@fFUUefR5lV_6xlvc+VXoD#v9? z{o4itq{+$*fVY%s^a#1r*OCZ=etn=0LH7X>yUZ%aE zcx;m?SpWLhzg5Ou_J5TLq#c!_$w|g;J$dqY)x-I<`%HywNBr+A_lF&JRQ~XhrZ9#t z@@}F2XA2-_&6*}l%9lcfzJ|2VJTuJoUwWXBVOay3VbTFSP=@<}1D$pnKqcF}*gtYQ z0ZpRCDXBBog!pM1%MUOhQSnyZ(BWfgfr*jyV$p8XR2Wl=M?4kpyn=FZnbG zx8{f_fEF?AdT|vfev?W*PL{4@+){z}ghVg$I@qyrMX`koSod ziuZ;y_Tx2=v!v*ELC&|tm2ikcA#1_PpbcJDCX(3WVA6g%@5hc|K;S zZe9$i4x7^CtsR9D9lx9aqxsmC#vPcVHi|@+fGVwot$-uKZqbGm4S5y;1AAD zhT7w+VBB7WV(x$c``^u4)>#B%_MDj(9@1F{i(rnX-e{%da&)cVZ1@|+3C3m3Z6AK(cBk@l;AMD@y44>bWL@r zcM7Cvp9tV594^qrZ^^_dlw`cFu;se?IaUXsL-bY{vV!FD|LWfJ5`Eq``#2X?9OQUH z7eq%WQane9+Kn>m4fpv<01$pBi8XBST5GRm)}=3GwZW2uGp(~yEhkQxtlwuh z*ZoYiY0QV{&!dk$S~|d-00ElCABk%sl0;rYow1079dLf`n{K+9yWyrA+)y31Q7194 zvT7kv8K4Rv1ExZF#Vi5suBxrGFp9IQ^oJ+qY};5R5J9~!zSMbVQoL7Lb!D@1RRP>Yge3G^`$2$AfIhq^uyk+zVPn3K#Ru;!%IM>dJuP$T561qnS^EuOa}PcA z&$f}6GQa=+NB50t?@;~^$`^lT7o`Oe8SU(k5~@Xa^d!~*N8RQ8=P z=_ZAXAf~}7!sj^bq(eXMz5hM~aw1fN5bQt#LeGK2R919SpVw>ePO^Vzd9_^x$QIz^ z7Yb_wEPZX6GXaWUBtMh>h^>0qv(GE${aq{QM)MEa~muM zX-gf=6fVz*x%B3nZ*jXxl&G&q<_==!iLt@T0w99`efunJY#&`E{#tFdRpoHI!fm0W znLr%cVDASpQ68~OAzolrvV7jy6~9K<b--9CA=I!NBB+sg&cO z;0z#&_fVr`-+c3p(lHJS5?>I7zC{%zJ;0+3K zRhwCp#1D=~Vc=;h1W8KqFKIQgS920$Q@!KujHCJC_$xB862s)CYJ!ejxnUOKm zhU0`*7pJ>L1cSJq04e0>kf_Cb$ObcASmxfB|NW}Qc(B$zIKe*4tGE$B4x5b4pqVTL z4k3$1R7TdU8B^Q`Qhrw)Iz*<-r4+<Lx&$ zYzpjKvJ`!(@+biF^|G&fYKF3m=!DopybPflu<@WyzccH}lTSY5e)rog_5GAN*}~ph z98P45fkXffKn-xhDF~AYhj@qQoe20b4`X6nSIOqc{+8Qoro~`PP=5{6*sXgnH%CsdJ0!oKDkLFqgTx%HTp$d=f^fa6 zs?L^B!#m;|$b5(s3On}?-;XtFj%kz{ z_*?)S=1@G;H5MzsP&5Gn0GwH~W-8$8A2QeO>@HP!gGV&lbJP=vh7#%v&w^NZWXU3n zIv6j!>6kOoLvFqOHpLk!?6?8zPY`?;IHOQ{gUDIz_XjD)=S9Uk`OB{t2#GF3jso0+ z7$VHdT?FX8a6GD?NmC}fOH|SXt_3%|{`%`Qm!9S@Ge@1wv=bHVcIKI98FGX#OvP78 zTsl;qVoMN`PEoJ163)?6;nHPPp)*U@YOO}TaRO%(+{w%QSU!A$ zO(wt(fFOqhkh=&VEo|A8%7r3Qpa2KiXe9XnxITVAylw+z8DqUn5f?Io0K-2S?iwV{ zQ8c)R9AlhbbMlENS?^;u#`9d0*WEWV2=utSy~YR)G%6!DxGNK(IY+{ z{)y`;g`d+Z!!b2HZysKS6(CZbbkZrN^Pq3UuipTLP(LnxX-)Yuh(T%;;D7$bml9(} zyVYa>SW%%BBR(79&es8j{Z+x?LY>vty<6aI=2N8z(GNcyZdSKMhldcodWASZuO+1~ z5uqw)8RI|{Gamz=XHgNSbK(gnx;^*aQzB5$nAj9J zF)b)B=3pYE7ey8;({FzBYX#Fyb2mtLfXcD4AR3M+yu{e^ak>!#kxkWUkk3Mom7h$~ zjfomUF4M?>aB>$t4e>{*#vS5zg41u{K?IG@XGi~_%kep^vz zpuP3xTkbB&@Kkjkvf}a<#>{-ls)Kq{f*l`9d{Pn|67Tt8(k}=MM8vdJv*e;cR6{48 zJFnjTS@A*mDDrT%4+KaT=)(&JkdY3!t_sRRWhUyRM%X?g&~3NgCE0eYl~(cLzW|bz z1y?vSZhyp=uSR|)C(tOP+K2~aTw!AD(pgE{WkHB9V{5Ps@xak!Hhd|=0Q0?f-)9kz z{dJt^gb9-rPt(;xFo>)KX^?}l+e0xEo$8X#ys`b`fZ7AAjQVX7NAk`u6Mgg|g4ZTZ znrwiH0-7vij`$o-skGP~af@!E%AYGah7e}F=p4xeAwVx8PKq#V<^r~nA%;i&6jj;7 z^BaE=w{@3vg3S~xhnKr1W-bovDU?|m@#*KbX5WqeE)Vcu&2<4 zIdY#Q8RCmN$>If80q_)3vEsHMnoPaK`vbH@!lpW4kOo(u(jN8mXIoqfCooQ(GEFAXe(t_|A2t(PxUdv$ z@bYdVKLCe4ED$9JIk3y~@xfSRkoo9JtUb>^|B{<5>bkW|f&G>W(hLC#lWlcEJSEqw zVmboO;c8Vwz!3)m9)J7^2~WJqWKFQMpD$V5%k%+Q1?Epun9)B74acmCeLq#-tE{?; zIKao&7wc7{ptnzT`1Q9+MO{~15Gu}PK<__-VRDucZx9g^o#4Yeah4q|rQeKF9Ow%iHix6!avBgQI_3~-3=`nk{0ToFq&cqtxh7b=fRv2(6ZKOXkC}w@M0Z&Ve3gyeWaL6H3q7ga^P zNp%GrAP|B4+yVXxs$Rz#$V*yA*us-9EpScm{79K$)E@do7NbP-A?xmmC!Un|cr%4l zt3DA2b!)tEWfXSGy)-ojCR$QC30BP0)iDtOZ|=pCi`QIhby0Ha=lFCG)v=j1N0rEK zF=tbl%|hidhjv$fa8UIipyG>Ayk_$X)Ju7@Qus*ffC`_Zvw1Ox2Bkf~l32d2s2aJg zFAyFBTOg0@r+-aws+-Cg{2B{CMU6No>0fHgekn4{hO_uZdR^kGiy$1M^shpt3~Dp9UP zl-3&oLiFs`P1Y-|6Co4$AQI_AnXFCd*^Yw%VakbBIBdS(ZoFcq-QlYu(1M2T{ba@X{_IWvJh;l?JJmu6=WEDBvEFvU-Q%Dx4 z5rz>?Pvqj{MBa($6Yt^8gz6i0*ZT=6K3A5b<5WGbK{C6QPeJ^$xPK6s>Jw!KOlK&+ z;NE-hO9?~t2?uCK0FEb8i?5{vkd(fvVu6-Y$g>@eXK9Xs^82r0&pJ+QkFQf2o|7Gc zdhR)@joL?muM#m5H(3J?x**4(d$%Pl;O$CflCh?lu1AWAwQmGSwoqoSlr>_3EF$HS zH|=~Y!i(h$nm@nMlq{ku!xh<}lpsK7DU$$rC3=9F=s=)_hhzh2uSz+l9Ei6dk%UjA zCf?z|3#|5H1w4x$0ZZpT#b)EHz-7AG{&`|)t}-jvI=27J4}67cgM6Fc!2UlHFeCB+)PAG!I1}iGF5rK|8bmS- z)zzTF6=vA57Zhi5;9{Oos1nKH8z~dY zXC-0hMr`83b`GV(15AnbaEcztgY^Pd&jovb=bg7L<&XNMX`EydDV~HMAjpq`T|{Ie zOB1+;o)JWQ2IB?DK)|Dvyzdjr<6jcLzVQga^Zpt7LtckCROp46koVkk4=bUViu!Z! z?RVZ$@{0<6DOwaO8VHMWO=(HYs}wyRHR>DXPj9+NsCga`p=}{RHUJ;LNYv^%NAl*9 zs$lTL_hU>R<^*y!aPHiCcl~uYBs^1>`v5T?xBz4EWzexskb;O4380D>V;BPo(dF|CHpo{9RTEtVxqM^%ODnwn|>{#5fzbdh6_+N+pADKkUjO#Bf`K`>w9 z@b5Gbq_`14qDfxOpe)t}7hYiY=F#7Lt#rKEmc)W6Lp9>rGv->TFYN+Vj000dANklEK$rQS$KGg{peT-007^wB#bS7w}qRe z=ua#+J!FICz-8**k5pI#2SZO+VtKMF?Bp?vPs}Es4bW#xxl$nu`V3~&J@(#9PCgaA zl9SKpAMidDc0cAl_S{`onngp3Q}s>dxi?i13wu9ydM^43B3*+bwE>h2YxBf7;X|Pw zknby5pR}VK%^i2$X$dtHBd%778A7b#k^_`8J$Uf)R%(SXa6TXa?J$R)D^8A%00NL% zh94tCLejAi0QvtG6saEGFM4n!`spBY|2+lzOMuD>=pk28c5#T;nEXiBYr|eTj5bkenDS=7Xu3 z9PR)7=k*c-B%;J@0t-boVm>Q)7`>Z))hbSzDH=DYy#2Znd3w`T^6OLEZ>W-#E!SO!% z#g})o@M9~mDtkCe7l$ijl}UD`v!SVgKil@{ zwqrgIKJ=h6+_p41x=J;F0wZOh0253`UxacTCELIE&ZgTxM8t9;6ehmxa*F#=w{S~e zER1sIK4&4_K6wt4@miwlBdL|Ak`#byNoLY0cV9cf&Lir`q*Fx~R*>s1|s z?71wi_9FtNT5vWFC(5a!UP~z1V(x5mSj){3golw0z#dM4rDPl=i^W}}NxA?L|DH_R z5z9~Yh-FpLqDg=eU-FR3ar8G;xyT!=x4xAk$)tath0>$oQsZc_3Ib47gZ0H3MmU8p zg_6#C`FFplnxI=+O;*ax&=Rf{gj!f^oQYd-8GIUn)dvK}JO9>OZ(0I>xRQ1{?~Xmw zHW46`O=F^L5GG1wUSHpmK8U>`=ATGJ>gwbIeEH@Yna+{-BO+j?MN|oDej=ujmk`tp zWgW1yzxmeNszbCx((JNyhyeA0w$c%@lxo>PTotZB(oTE~Q#$K{B?{*uDV3ZyNpWk+ zwFiugunqns8%!1~=>t%IFZ-XSEIH0v$nq+F1jq&u;uiy|g$I#v-X=v|HYnf+x$(xE zZnWg@Ob*aXccF6`cQ$QlbE%GPrA)Y;X&k$P$`3{c?Eg_B3G^fRC6T`(9pLxRApawS z6C_72Fs93Nukak#Tyssc8m+yS#2_4ZR_J%pluUx*IHQbhgIjec#EuOE`4R&HohGcnK|NIf~u0B zLI5A9;rO6Cl>B&aYOctf$@r5!%L$c~lt-CeQD>S_KGB?bsPPit>f{W2S0NK5>=VEj zUqCEff)V#z$3OrR075SFOg1cPVRP*(oAyy{;+=J#%SE;Gb4~ZTMASSNZUQI3>`Ad= zQd3DCZIsCRqmG{XP~LV<&Vd7DGQNoYYySukzgRwQC0X=i6u@T#B$>$7QSVQ+`92Rh z{u%#oU!En^+%o~Ld_Ef)U zb>bh%WW#e6D{^@^^Yq~fjM*!@QA%$n^DD%&ft9K<;U4+YkcsLQWwDjMN!v$&Og19h zh04b}a_J+Rwwboc6eXIlWEGkrzdMSzxE_j$hK{!?J|A72!J}1A+&u2Xvq!A=eu(0E1R}0 z)g}|@D}ra+76N3miMcLvzTcTkf7!Opv|Xmp=eowN*uJ8|a)rQFZr`yHpimp0kAAc5Bb#>Fv}t9) z&DZNY9s(3{v-8n+E`4OvHk&s2g1#c?r~M;9p*J{R{pZq8wr#U*R|J5YuOYNA1Zc?( z&DXnf=_lK^*|y6U)D=-bZ5IJrV-xfF&RqM-wtcqkiU?@)Ih5i?02N7UH8W_TtV6j1 zV7BeEZI@4IE5g2t8UbpB0Ha%D(Fy@9x%Qb$`&`<##`?G5J4*;qC`wPi`2f6J`pBhi z3j$$lzN+XDfU`k32Zv85ae)8oyLTa0sF1*sufDVGC);*~Smz?{bCSlkfj;wMpE`Zl z>%;l43lAp9U;@DrB$;3S7$_Bl*GXv3aSTW;A615XUd2#X&b-UTTeJjF^)tcNAL2Mbt0DjgTX_y(2%y8>{-Tq?Pmfycmfrk)zAx9la%~^Aw(a%4^35-; ztE;;ugaC*?t%d-IL0$x^(%&FJtqx%8uQRUR=3Z-WbiUu8kN)z}M|%bEsCkLF?xfRZ zK8cAyh(BHgLjG@Y9l+}WZ~%`0#syR-{%`u;H)=wKxL*hW%SWI2=%Wzp)rR_fKw|~2 zyaGI5e|rTO9l)P1p3#(YQG&yYFbIGm+{^{Us-D-syJa+*EFUfuaOI=leDsm!vb3jW zjgtR&l>Gl?2mumVfHFR^Ggkx%i$Nejvo%N>`(E1oQ}kQceD6ddfhu2p=c}K5uU#AL zZf!h+GS1s^ML?iE)X`0hLHdS@W9V^7y)SGKlvI@hlHj!IB9RU_ul|>JOX$` z@Ct9d*EcKMe|W9(L3P6vJRS)=A^`Yd;OBQZKnVfbAmrw0$cZ?BM}l~O4+DPK>6NwU z { + if (query.startsWith(URL_SEARCH_PREFIX).not()) { + return super.fetchSearchManga(page, query, filters) + } + + val manga = SManga.create().apply { + url = "/manga/${query.substringAfter(URL_SEARCH_PREFIX)}" + } + + return fetchMangaDetails(manga) + .asObservable().map { + MangasPage(listOf(it), false) + } + } + + override fun searchMangaFromElement(element: Element) = popularMangaFromElement(element) + + override fun searchMangaNextPageSelector() = popularMangaNextPageSelector() + + override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request { + val url = "$baseUrl/biblioteca".toHttpUrl().newBuilder() + .addQueryParameter("search", query) + .addQueryParameter("page", "$page") + .build() + return GET(url, headers) + } + + override fun searchMangaSelector() = popularMangaSelector() + + override fun latestUpdatesFromElement(element: Element) = popularMangaFromElement(element).apply { + url = url.replace("news", "manga") + .substringBeforeLast("-") + } + + override fun latestUpdatesNextPageSelector() = null + + override fun latestUpdatesRequest(page: Int) = GET(baseUrl, headers) + + override fun latestUpdatesSelector() = ".bixbox.seriesearch:has(h1) a" + + override fun mangaDetailsParse(document: Document) = SManga.create().apply { + document.selectFirst(".main-info")!!.let { + title = it.selectFirst("h1")!!.text() + thumbnail_url = it.selectFirst("img")?.imgAttr() + description = it.selectFirst(".summary p")?.text() + genre = it.select(".genres-container a") + .joinToString { it.text() } + setUrlWithoutDomain(document.location()) + } + } + + override fun chapterFromElement(element: Element) = SChapter.create().apply { + name = element.selectFirst(".chapternum")!!.text() + date_upload = parseRelativeDate(element.selectFirst(".chapterdate")?.text() ?: "") + setUrlWithoutDomain(element.attr("href")) + } + + override fun chapterListSelector() = "#chapterlist a" + + override fun pageListParse(document: Document): List { + return document.select("#chapter_imgs img").mapIndexed { index, element -> + Page(index, document.location(), imageUrl = element.imgAttr()) + } + } + + override fun imageUrlParse(document: Document) = "" + + private fun Element.imgAttr(): String { + return when { + hasAttr("data-src") -> absUrl("data-src") + else -> absUrl("src") + } + } + + private fun parseRelativeDate(date: String): Long { + val number = RELATIVE_DATE_REGEX.find(date)?.value?.toIntOrNull() ?: return 0 + val cal = Calendar.getInstance() + return when { + date.contains("mes", ignoreCase = true) -> cal.apply { add(Calendar.MONTH, -number) }.timeInMillis + date.contains("año", ignoreCase = true) -> cal.apply { add(Calendar.YEAR, -number) }.timeInMillis + else -> 0 + } + } + + companion object { + const val URL_SEARCH_PREFIX = "slug:" + val RELATIVE_DATE_REGEX = """(\d+)""".toRegex() + } +} diff --git a/src/es/tumanhwas/src/eu/kanade/tachiyomi/extension/es/tumanhwas/TuManhwasUrlActivity.kt b/src/es/tumanhwas/src/eu/kanade/tachiyomi/extension/es/tumanhwas/TuManhwasUrlActivity.kt new file mode 100644 index 000000000..7f252810d --- /dev/null +++ b/src/es/tumanhwas/src/eu/kanade/tachiyomi/extension/es/tumanhwas/TuManhwasUrlActivity.kt @@ -0,0 +1,37 @@ +package eu.kanade.tachiyomi.extension.es.tumanhwas + +import android.app.Activity +import android.content.ActivityNotFoundException +import android.content.Intent +import android.os.Bundle +import android.util.Log +import kotlin.system.exitProcess + +class TuManhwasUrlActivity : Activity() { + + private val tag = javaClass.simpleName + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + val pathSegments = intent?.data?.pathSegments + if (pathSegments != null && pathSegments.size > 1) { + val item = pathSegments[1] + val mainIntent = Intent().apply { + action = "eu.kanade.tachiyomi.SEARCH" + putExtra("query", "${TuManhwas.URL_SEARCH_PREFIX}$item") + putExtra("filter", packageName) + } + + try { + startActivity(mainIntent) + } catch (e: ActivityNotFoundException) { + Log.e(tag, e.toString()) + } + } else { + Log.e(tag, "could not parse uri from intent $intent") + } + + finish() + exitProcess(0) + } +}