From ffd04a56716f43e12d9990f2002cf186a702b3c7 Mon Sep 17 00:00:00 2001 From: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com> Date: Sat, 29 Jul 2023 07:31:24 +0500 Subject: [PATCH] Simply Cosplay (#17291) --- src/all/simplycosplay/AndroidManifest.xml | 26 ++ src/all/simplycosplay/build.gradle | 13 + .../res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3534 bytes .../res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1994 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 4534 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 8246 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 11233 bytes src/all/simplycosplay/res/web_hi_res_512.png | Bin 0 -> 55666 bytes .../all/simplycosplay/SimplyCosplay.kt | 382 ++++++++++++++++++ .../all/simplycosplay/SimplyCosplayDto.kt | 116 ++++++ .../simplycosplay/SimplyCosplayUrlActivity.kt | 33 ++ 11 files changed, 570 insertions(+) create mode 100644 src/all/simplycosplay/AndroidManifest.xml create mode 100644 src/all/simplycosplay/build.gradle create mode 100644 src/all/simplycosplay/res/mipmap-hdpi/ic_launcher.png create mode 100644 src/all/simplycosplay/res/mipmap-mdpi/ic_launcher.png create mode 100644 src/all/simplycosplay/res/mipmap-xhdpi/ic_launcher.png create mode 100644 src/all/simplycosplay/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 src/all/simplycosplay/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 src/all/simplycosplay/res/web_hi_res_512.png create mode 100644 src/all/simplycosplay/src/eu/kanade/tachiyomi/extension/all/simplycosplay/SimplyCosplay.kt create mode 100644 src/all/simplycosplay/src/eu/kanade/tachiyomi/extension/all/simplycosplay/SimplyCosplayDto.kt create mode 100644 src/all/simplycosplay/src/eu/kanade/tachiyomi/extension/all/simplycosplay/SimplyCosplayUrlActivity.kt diff --git a/src/all/simplycosplay/AndroidManifest.xml b/src/all/simplycosplay/AndroidManifest.xml new file mode 100644 index 000000000..38f100add --- /dev/null +++ b/src/all/simplycosplay/AndroidManifest.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/all/simplycosplay/build.gradle b/src/all/simplycosplay/build.gradle new file mode 100644 index 000000000..c99a818f1 --- /dev/null +++ b/src/all/simplycosplay/build.gradle @@ -0,0 +1,13 @@ +apply plugin: 'com.android.application' +apply plugin: 'kotlin-android' +apply plugin: 'kotlinx-serialization' + +ext { + extName = 'Simply Cosplay' + pkgNameSuffix = 'all.simplycosplay' + extClass = '.SimplyCosplay' + extVersionCode = 1 + isNsfw = true +} + +apply from: "$rootDir/common.gradle" \ No newline at end of file diff --git a/src/all/simplycosplay/res/mipmap-hdpi/ic_launcher.png b/src/all/simplycosplay/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..fa27adc26bf6002b1679e06c96c8db8dca532a02 GIT binary patch literal 3534 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 IM6N<$g7z()yZ`_I literal 0 HcmV?d00001 diff --git a/src/all/simplycosplay/res/mipmap-mdpi/ic_launcher.png b/src/all/simplycosplay/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..3935d645881cf2ad26145fdccbcdf0ca5ddc747e GIT binary patch literal 1994 zcmV;*2Q~PKP)3$g6h5Wrh|C1u07xXt7A8f<B^XH%2#Y8RxCH*F(F8=ns0o5%gg^uY zQj7?M0HQ3$0v51r1qu~PTh{LFbcN|K_1rh}rf;3OL&r2EzUF57*86?uJKKFv0gw2m zc*OC;{{(tkL4OL6b1ED?tx_jqaC?WyUXtK!Hk;96u`G8wozvWIcMN-1XD4|U0Q<}R zUwDpYKhX2Yd4)nz8x|I}9dUeEQ&ZC-WFSRAlbD#evZbZv?LZUI5}+Xy=vgL{X|2QI zco(nh;F6FcV6xlo6)u;{Drfmn015<{JV@5Kq`sU= zji3nxQb5iH^h!1Skue>TjU?t6Kk;Gb?c?Fr2TmAMxD_t8)&z7XY66jwkpUI(7ZV@# zdlEkAnL{d z7Cb(aXZFZxTHV#T!>tOwzbDw*U{!0H=+!{V!l zx=%o;0BiNQFca9cMmW<{$-&T->u1=KVcn2teQ|KLtsYV_h)0Cm;SiD|b;5(S6H40} z;TE#SEUJQy@G%oTmWSU2-B5;C;;TWD?R6NVyVmk@C?C zL5Hrvp3gkB2{sOW9#Sz&k*yYM!qkhqA-~}U(;Jf}V-yDRFs$6)-#Q~%6M`lnRA8_n z3M=e1m|MIL_SKd0R%ToxG%*mIE&>=n%U!%l7hx1XxZUMw&oJprNhlMGfU z%$x)5?hdf!ul6m8C@}Sm{wYfywp0JGY>rhA^R2m$HIFFnar~m zUil3+-Yw!;Q0PjF`;3GY1IF@5vT6_lpCAE$7MIF^cs(5fgTWwDU^#+WlrWN+v+8~; zWS{;K(_ga)1WRN`>STB^dLW;G*OfNiDT3E8?+@rgV)j805L#ef{BT&6Gy(D|FTo95 zMO|xegsqhqB{LCO2b|2D4Wu*WF!aU)z=f7-NI&(1Ul)=9PY%&3px5g~3S?jrIyPbk zoX5$tvGsLz`qtGvOB$3KCe;oPxADL`aV<=inCzB&HV+QVti)u%(-Y9?bfPp$?k*nn z1|;e%@Ok-PJ|E^PMHVUBlPAGAYd^2GyHe+8WyhKRhb-(#R;ul2W8CQ1+EVC1W2jNB zBz+|0MD~SUScPxj?{ZHLAvy(w1Xz#@dS@`Hk?ilRDS>Zq7D5p!V#3NhF{(d&+;21_ z=*%MU#QK8^)?t;k0f`M2=XGl{t`+Jrqs3qoXi#aGdvnijXPUZ)jsdM!E2#jnQhvq^ z$l$mKNvos{z;~D;;2z%shUg+}&Is}8_GDO-lnZ85%ju;aKw+**^K;&AEAW6^>&}cN03doTm`JQAT zm)i}ExRPR}FLTDn^?U_}B~ z@d*}xRtr{vZUQH_H{lq7gM1&5eZ5YSxml@HuEM-NTR17LJB7$ygwt=q1Mhf=$bO+A zH|cQ1BZ+1BI|+wpr7hTK6bOOU$s^iu?8dPa$4wl(g^1KQGSWioaaeGWcORs__td9W zVrlZ`fP5Eg#6e!H^14VlVB|OfPTqeILOn@<0Csta2;S4v1M5iwem$|LfQ2YL=oJXr cgrR=WzfW-yix(&lasU7T07*qoM6N<$f{-?l#Q*>R literal 0 HcmV?d00001 diff --git a/src/all/simplycosplay/res/mipmap-xhdpi/ic_launcher.png b/src/all/simplycosplay/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..23f5ee5a88a831078ae2506d983b5ff984064278 GIT binary patch literal 4534 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 literal 0 HcmV?d00001 diff --git a/src/all/simplycosplay/res/mipmap-xxhdpi/ic_launcher.png b/src/all/simplycosplay/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..88bbe4b20d50fd1f32f2f077e3d782ed06c5aa24 GIT binary patch literal 8246 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 literal 0 HcmV?d00001 diff --git a/src/all/simplycosplay/res/mipmap-xxxhdpi/ic_launcher.png b/src/all/simplycosplay/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..bc9f7fdffaacaf5c78236e7b671569974bc74037 GIT binary patch literal 11233 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­u#mrlrl!7EwWN+o&Pxw>lnT~LZUS&cq|vBbmM7Qr{y z&q_D&lL|A305;&dg|HkdmyfSmj$dS=)WEhG{ZvuEJxi~u)7NVos?s;uJ^+T0RQ;nV{ zZZV8ZpdX-Loj+i!C_@5ng}XCl$IEWr8vZ`)dN`-F2cuq@B1}NC8=RX1aYg-D`ag@?pqp-PVPf1@j0t|~=#JtlFl`LnCnzsR|6E{m)6!H!YWD!DN_up_ zC2&jUA)dN>86C1tTlty=dGZiPuF2ct)FZhO&qhBw^mjTXwj8}IiwpwQ{JG=NU14vd z-=aZy6T6W|0{rwo>gn!A4;eK6@q4&s<;ZbljOZcN#sH=ia~nFpeHdLJdYL(g(Cx>> zh5rqk@Lny|M>U^*@g71)y z-*h2fu<_o3EzJVCWi~CRrHj*%Gm`*iIr)}n1;5LmKgG-B2H+m}L{wV5ca)>A{I$64 zp^fe()ds*%n3=g}HB805QTAh6Kiu>TfuEAeJOYrC=}f@ucqV`@gZ6sJ=Kamq1@NPd zAH<#M(XFs}@##vT7tv?Yd8OWYWP`wGb(gN{YB8V|3~Fcwj4rL7xqG$o#z9w?Y<)Br z%nSl}DVJtdo*sCGb%C4LLyob|Ui=)o0dIb#kYyprw5T45i{jH+<=^7v6<_W$OtD^L z(R}jxF*>;|$ANXP{F2k@i$?S@$xYRV;1YC@yV1i*mOHbea?183ddl#OoxTJRDW7I| z$h;sR_&x98MH1I7f2GMAvM5ba1##ljxa4Q(td~xF`FQ^ny{0kT2mFNdd)B@Q6}iQD z5y-@tEH6nr-37;X!DUNk!T}FIp|YUn=tLrSvZCoj02M{f8aWjvmQ=)5+V9a9{`c1Z zQ#j=*(mW@B1pbHmop0^+Q3k)DccL@Cedj!8ZRem1xO@662zr*sk@k+-qcC~Vv+$|M zC3c*$#_LH*599*!gyX_Jk$x4!Qd%wT&U+}Qcr4XWb zaPvxcfc>HW#du+LfAz&KhG|CT4|%+!=RUk4@~4$&iHhLcqwKFg2@ifcAAY}WL6ZY9 zZh75uH0C)6$7FOT@_1~NNFT4^b*p!*`n!^ECSIXZU=YkzD6_!L#EPUjp^bo6*Upfm*UDDH{lk($~9> zhF|qLSEx5~5JiXNe~Yt2J3Vejl(l_Ho(M?SpZ>n;0w~WGAJP|@C89#m7LIY~<8uR^ zZ?KZsJ(*1aY6W{>h0x}>wg^Vf^BH=Ky9aNIpLJj}&=zSG;M2?#-OT?8teow+yq@wyH?^2GAr;7ftI(Xc%?-HyQ|C3fazU^z=XCH-j`f(G9dvX zJGuH(bh7KYW+%JsFtWej!&7EM(Il}Rh4eYumQ6PzfB^z(yAU#AyRvSF~#fVJklY2X>>|cEN4f#lo&X?(0>+ ziMGir=-J|?6|XkywVdyvp70&qaM#DVHo(yXS4JV<5djnkzyZ8hon6+xFT61L3-SF0 zF)FbE2Y*y?w3?jTD$Cs2UB#{%vJg%wt z6X@do?zR8Gf%+=X+{9~8a&SM=Rd{>m_i?dIX{Jgg|E^rpv@NY#b0--TR37eW&_ofy z4TL+o4#!p5ixl)}Ac`t*Jl385|F(JX{q_Hn2EQ``O%RYH-ml>H3|cS~&D|@TY>t;6 z!-dDictzC%TRwt!_HWkSh7zY%GM51HT0h#2`5?L=r(0P3c8eN-dh;X<0-q9oWB*2& zigW%)J=~hhnvx_>I=K?ZN4Inx0%LIsw+ziB_vPZM;HMQ|a>2Oz#6I}To;C3H{w=Wn z&pkAbAd|e*QTs-O@mnuaxe2)%?a!FNh0d|xa)QcP9M`XthC~uz$d*4AXC|1N~dwa zPw^(nuXY<1Or5A!b{ve%JF)|=`Q&BT?Q&)-s|&6?^$f+WbFDEG{id}KB0~;N0aGJV zhhVS8HIZsGYiLYDtLJpqf;>%--%;*+f~kOzZ-$c{0|cQ=x<}yt-jm^8TrDQg%tjtn z;JapcoOz*j2fEGX%XposyXBYFi;TRCtP$OrO(b=DfJ7>uwo6>wsS5sZ#>GHWrOHnL zz^A-WEBhPVlKkUMvzspVwz#73KAAW&vdTIOHe&b*kSry8y|;g1dvs1U1%?%s%T0{?rvc;(yH~*s^j$=A<<40Xm9ogjk(HOnWI|(PCIL)V;(6_QA`!+| zJ3Tw--rC}0?$FH1PTbP)(c$gz(AN2urwaFpE0r?I#*vjzD3sM+mKg*Hvf}Kt>H5`w zLr)HORt$rVIc?+?&^&-ovpTdFhFbYwpu^sG_HXjs%B)g0**LQDYFJE4tn?&6A}Y-9 z9mROEtP&T7&MxZ?ql&t~#L^1uD4^#Qsss20_ycv-uoMCR@zGuI0bWV80?*fyM`q{A zGaDwVWt5F4E1wh?tG_h$36RJNQh66G5OqWshh6YsOa~l5(?Sv89!oo|dK@nh$mu>_ zI&Mi@0z|8!D)~rM9Ca)vC1z?7K&29O)oS{kI_as#m5nDWudCxE#t%0Ea&mGKIt{8b zH5jiFbpfRsUnQPOoFoER_tg;rbZzP&fp0AZC{C%W#8Zi*i@+qu&ujt&RpBPmRZT-B zo=Th~1J~5+Gmij4Rb<$9Ys}jc)`a+OS`V%1N3O1F#PCBY_RpW&KxTdm@UIa*F zg_?SoPCBY_RpXgLU5L_2T>>Pd5>38SH!aops_{YuT9a7`HvzJB0x|rz0MrIsRg+R_(Cd$jsUc= zp3WT7rvQ6^kMY~Eqsm651PKmPX{)BA8czt9^b**I#TkR2>e#0izw7YRfFJUEFYTT} z^;#>6N2kr{coh+V9QEhZ2M@)+(a_LPWkTC@AP!S6BBDg(bV9O~2nndM46HSAdJkg^lYMj~+d`BxVAU`D2?vWdA383}BA~ zs0XkKVD$o7Sy?~E@0&#h3L-oRfSE|sL>fWpD}~a04)aR5vIoF5_}d-;(;%1zzzH1$ zI|sr<02&B4^#a&cy@CHPPK1Jk0+)$&O{9?s9ftfJ4QT&=0qy_Q4gz@1041CNPBVxI z&@>x_Bla7y^8YXXt;n=;g9MeSv`wXBT6Za!9$h&65Pn{anLgC=(?@#-h;*Sk4Qj`= z2|#0kX1xIZpH_wML?C>_gwlfsl&SPhrDH;8>5vAR)6e6y`U5f0llfy4fCj(xQMUh0 z5x}_~;3h#{>(;HW!xv3!)v8r*ZiOTYL?+*3GA*v2(p-+V)I5uyzr@TQXUp%^`b(QX zCI~=j5CQDzQ0IWy9uwr@IpN`_PMx{}L2?Nap{=vxk^vl(?=+cKngg0!Ji223O~lOK za5iyi%+&D$zq9qHv=dGMry1lV0rdiQPhgJ==$rmli9N!__&p9kUGSrE=Up^;R^o4(;h~Rh@7sf3=gf~i^{E7Y-5$Uh-zET!1)OUG zHt^}&?j39yJB~dL(HW1V9U?NIKsIRU+qUCrI+H%sy4wVB0^bdOif6TNs`@ekI!eR- z*y8~w38>|_!B5{#0yyKEAf&1uqIikdfIV+-e-oJ91h9!<4|v_HzDjfd&Z3$kfDK;f z+JLh+AmBT}PhmushyaNPURd7f)dScha0A{6eCMKs=vpmMZ9|Qs1 zX}W>#MG({GSmez`IKn0Wv9d9KAFw z8i)uGmYRt2krWL?1W1b7qnCz70}%njQWH@=lA?i#07+4M^wO|sAR<6mY9h)23zkl$@eUAIS#^ZWikNdi#v^10;&WZJ zIRJ11%8%urd6{gtS*IHHy_ZN6`O~J*shz%*v=Fzyt43M_{?IWCc2xTmQhEk z+EvCg_sU{u5=lW~v|_1X1K&p7)R!W2UF_TtWn2u{m9y-5T$S?5P@X;1Q7} zSZlcYodw$f9qqP+j>oOw>Xq{oXF_UCBpzC5YY{7=$nKE?hg_hL&{JS@qHl{ z`}mKyPCmwXCVy*jF!{SyUjpJBI_)%n(lv}GX1u;JB$g44cGFgGEi3wLWq-$zR){sy zUj5EppdgA*!o`-AS%z`{_T{@gq5(;#C5ZmBs>wiz5~Ri_ns? zY0IPL*PFd3qI0iW-4^7;zbT8y>dt(vN^s%;_QO;)h&`u81V3YZH@G2@)A%Ej6~?P6X(6}S6A$}irBCLf6lsGExKS3d3i z^b&X?W__lZ12TnLfk!+pgs>*PNHk`^D|LT3jPOHdlS^sM39l>u1SMl7m_orVN|U{? zbX-xLkxFMG-WD|p`$DHPU-8Q|egN?dB`?SGgSa3fg|>reVpGhRio{izyx$jE`Y1qh z>y^Uwl%s$}lB_g*FvXW7AvvsiZrIpLbrc0fBpmRQmCbnZ%Fa0m8F?16%;VD#Z=}oe zyEKGy>CJ_Y4G1;sJCoQw|Ai?$dcvbj^S~=n&2Vh(=F-P4@)9SDzBtwhQJ{dhX7les-&XyU0|&yy+8Sup{h-x_=2m;H zw+b-xVp#47#7`rl?C2Oz=3OHxw33D&GY|l@P;Z{UV=#d<*#`2fTYyJ&6QYr+mRRl& z4cl}X-|&a~r2OtOW?~%JBOLS)#k3YjnG!a@)bN?sV5|4bt8j%oWX-zK;M}RVCC0Oo zH9m2ObrCseVFR%;4}}^yI^2Hq?be)@p)PkzBG!=GNswB?-okwNByPn|A@s zb$Y+kDP(D^4n_Na8xVcPWU^Seb}NL@N#j!#;%ckAx&dnsCxAUwwI=RVe%wpUcv=Vy zl~i;WzsAD~Q)YyH<;LRYw6yy1E&j-S$nA;VDq>SYC#aboSL~R@F#7B_cS^gdItCA8 zdNWbKRr@c8D@s6U#^x!rV2p7FSn$*~SU}x=Y=PUK_S-r|jZQ%y@Z|jb>pF!H!u3$7 z4*#uz=yI5127~%3w7QJG=%}f1;T8G)!P_JL`aT-B7L+?x&YzdXwyR|Py2>-!PG^z> zmWR(yHlP%Ink~IDg`gr>ta3#0jYrBHwYU5es%x4_kr}++4-(W2sec~AfC3U$6B(ya zYU0>*DVUi(it?tJ$zjDm*Je%KNx}K{B4ZE%Qk?w43DslOxHGohx8nAbMu%e3%Dz*( zfgxj6VZ7=t;x_*R@j7GM6f}O-96S=e^Z``3Qa@-})#^|)AF(Ie0-Yx|HgSm z{tKTZD+<^3tXh3XUfSVfOa5CDqOO=awx<-N^Juu>3N0kRymq$4Pz)nuJUhHoLoaV9 zg9GbEdvY=2Jf;J&MG9rTGAdo=5?)X@V@Daae^ABa`<;ch6rUwwQ_;WEPwUKz$tqzL zV|z7_Z}wqcIN1%io9d?E5knqPXSH{P%JIoR@F_5Oa9zjI&tOj+ttT)Di!n^^rOcWd zrv9V*LV_dtK8JGJuV?sGF$dTAuU3r{>4)h33)`1}t$C}rSmU#n@auQdO$a|-Uz7Nb z_eGcSV;z=a9zV!5RAfAdR19jY7kzSn>>#n@aMjxi&E40Nb=3T%9K_i+YMi1@CsprK zKvoH^xB|X>SSyT4_9}pyw_^(D-!Et1DpyPSy(*3eh&t+~&+>gQjoul$IT%!nql-XR z;$wWWR<>S0i*~Ff1+bONnNK?VS0%EV)ssM+f?5I3p~OytthT{r^7j9b9XvAf&ULAU z87GQ8TadfH%uR#eEf+>DIDF*=C32Oi9v=o3dTF*yjj&i|8RY%%V<%$RR~WYyIjt8_ z69B17oq&$fTy!v4oztdV~7MNjK&-o2oB zla96HqR_`^DpV*`4S1EMx8sM{i4*Fy@N!0B|^|geEAMUr0l)o#$D^Z&Oe`+ zakoPdFYyMJ3$<|GcUDr!mta>v{hx^y^9NN@RxQB7v#pkxGD%rsZA{^w5{1FJ_3k~#dYykb$TCT%;zHmqYJM;BTIYgJWU*77u_SzOqcqX7ymEd1|Kcd5Gt?`a?AGNJ>te1j-Y=9gqlAd<&PvNmbfN( z3Uv`Tv*Tliq(LoG!#}ut*`}oy9E#)%mo$9!7golUG2u&LX{8P;vC049B4iSV8nkgY zUinGZ5>GhxID*<<5UJM#RNu zE>%}QwFN@i+@HUXBuDaO!8#{%q(hkBh#TSB>4f#4$DiV+;&Wp-&Jb$>LKmJ`xDRDW z4lrsobQwJV8i!bb3tu);r96q1juQ=83prCT89H5yLtH@#?-WPbYkW|INU#f@G8?fm zzh5nbwN~4Q`1tj_rMH@Rn`|Zipk6@l0~Awk_-*92pI*j2j3l=F#i=0#+v}n@Y|f54D@U>Ua$rGj>*7`4$3dr-y*75;iXx*`9mt$Zd^&VzCoe?CGrrd z{d4NkH_3`}@z}CGH{A+b6W!Xq(t4Z|3b|!_Yg8oXZeTWy;ebaD>!A56;OsUXvNrv$B zAxr18Gk?6RwJKOs!c*xG#JHG?Yrtg8lG}biWxxpYH8FkR zH5m#Kp#qML=3#VLMy|@5=}ml*DT<&8DzW|ETTEtpMLr;D=D*Q}%g?T0?96p7xy|F7 z;Yy~?x!(Sx4?3luavPpMeq?0L@YEI+eXm=ZuPEDkUF^;0g^k5IHLwF&M{dOzt!3~v zG18M|&BH^jMfZzw>a4&SGmb^0xu&2Qkc<88E`rqY?EF3um@s;Uh=%epI{T zX*tC=sKh8=T?Mh`qxLH{f0l@PjBlP2*W&0U+u6irXHKsiu5pDf;{ku&*n|=`j&eqU{6q15Zw6ey_!Xdx@ugFUC&T6IAcf-GPFng*(K(NSGv1=#Bvi z6SMV$BxclF_Yup`-K$7-X;yWcBLLt*+i2mP@ALcg7oA>B*L*+JfdT062@NB;FgRG@|niB0TGUG%7p57Dbc4tRwSVdm7oimva4ZrGksj*sYQlVRa@(KE@M!8XCFwza&pI%C zeRAe<>AA!U37MfUtLQxOAJYuFm>;1h76U!kiku=OjHH#K;zGk@Kz&6@Lkp$azT$FA zW~}-ogQ7W-W}iiKtG{yzCMrjyGV^t~o0{QE9%t}-4y>VT4AY`fscI0XsJ9)$cFQlG+SdNaCX>M;MRDkkE0rb76@|Ka^SfCTA^KQM}Ms zwIDGOqH7wE4FA;dZSjt~-IRkOX4Jcu{Q|AaPj;Cn2&%4*d%8C+Ky{X*-lC6mHAv&(;`=E}cF&XP!w-)nCDGlc^XADoFs6ly zL-BGg`iL&sjm)v0)rHs_aAKMXzAF;54KUE%3ls>tOa%|^^A}L(RiedcEt|*yqE`9N4auae*76;|Ssza#VX?J&$nFrG`Ttszfl634Bl;KzpisV+3RHeM7DT%HwFlJ5M&)V zMRW%~c#kmPRp;)7i95dKky^eyDLAOkyQ)>bnulYOdEFeuLRYLxtSMfZ&pvDOzWvtF z$07gKoyq#uxk(R+uW?fVhNWy@j2$KacP&0S;%NVYn^XwuS(R0vL!@L~-L7LLsl zsp5Ko=8FL&ZoH%nDr0SFUyH!=IJ_J&i`+L>#_AS;IKSoO=+KKpuIf%PO#^snOr&&} z<->@nj&;LiV+LE(JhGy>ujtrOQ3K)W7}B<6-Nk0AS%mTbT(&(x(Q0|hp-OS6f~GAX zV^3p+As+dmZg>$652{ToK5p2`QHlwzqg3u1nEkt;p!8bfc0Ukrsg`E@HvO8TpKVx` zf~Ns`EP3SKWkwE$!*nY7k!ga{HQkeW3);q6ApM2BK8np}2cLXbZ!nmdc(%0XNSXrqJiSf|(#& zjjD^*Wv+<4CL1MP$GSRC7;Ms6pY!^~yT4;1Wst1!pzAI8x)U{KkEAv+s#A>8XGy(6 ze&yf+Iye~fH^+Cr=!*o)3XVwwTfW)I-Vx9c;~Y$<_w#Rwd~q+BQ@uDa+)54ABOta) z*iF>>;7xBUNgQgPn$v5eKXZth^up$A>y_L${o-9NBVK9?vkqbjZCZbKy-Gqz{nR#; zEp!z;dvchBptybR|HUz1_DrlV+cp5hVvM^T2YxPSz|EW^pAQIoufaY4kUu3T9%Qy8 zZ3T0o3%~0$`0Xht(O$c0m>%)5`iL&$scqT>I8G+En~-zp`M1A+hy^re^1CZy1uFLH z*N-V0_m+`_#g`WbQ@`%x1Z`FyIip?{ARf|BLblXGG^%=7mv^D=ZguV`3<~~E zxVJg|;u)2U{akN7in0}mVI)02P1Y2a!3$#xCYoJoJy%yBzGNw@^GmF%Nlp2v!YHoT z>dUdgaM=o}v-y}G558dFVNYAA-uE41Gn-3`RxGbShzEkqcqS3t<4ay7oQZ_sWEtT{+cYIZw~V@F(Z*8y~j` z2tE%WVdTd0x!5j^hE@^(qB6RTSUua7^O>jpm@z0zdfr0+9#_6Gl7LiwjnOHn##BZ> zpVK6SGul|v-rxacp)PSWbfi83%c0)h+XWjDjAo?tgqJb_%j3kAFd4`zK6Q(+g_Siy zF@QnphOD^|g~i!@?Qv@22kNZ0p?_4w#!vMgo{j%OHn$JWlBL2mv5j(PCllh#MIa$> zSW@zD+mI(UeV%nT$vnF0!=zr``~7zeNJeIE%2(YKiT5D5rtuC%A%ZM$aFNz)?k^E& zNxW7Cg}faE_~K1$K_13TVY>?IkLXV8Tx~k1g8z`G$|F1k^tkG)dSoV>zsp1(v^(r| z2_f7sez_wH3Fsbg_al@ZnXkMt^foBGVK-WGcl(vQ=zTMG+@I4yrh8=X(uzsq(ivU3 zQSBhwCp1SsMl0hK?^fq{{?q5^K7h4kKCWoNN0c7}sP zPfjlGXka}bo;g=K%kO7@VIfvieJ7q0!BBxs{TQ*IFXCkz|H?}`91052Iv37yMyW

nJW#rXZwkY(om8j@HMb+5Lpl$Hjk-q5-W*))Bm{nJ>Y+@0~PouOi^z;2Y8 z5YEgr4Tsyl(=>&RTw@cfiuowohbCrvyq{yQz%#9@cv)?DC2!fm_&yB-qtsA%H0O>E zGCaQT)eoEDSJ%yI)8{MH+e&ultsl(SL(Z^m4W07|?#PF$_Izbmyr4B2Aqgf73>~F) z+21Vp_Fhi%X4VH)8OglDljdLceJhHA;TTnX2Fk>?>G=%mS^zepLhILPNYu3#VhG}{ zx<(3H!3i7KKM9*G)e2%|5jwm+Qde(|Z=F)&LSmn6u-B#`W zo8&U-Qj6h3zKGRhd|XJ*Z~k_S1x$!VAl1uDkH}6F%wNdHKdMkDs|u2CEtj_*#8}qL zNs!)?l{60!cNxWa9}%?zTutO@YRRCS&x(cSJZy6Z^jg|?uTW)LDAOb=x{`0-Zb?PJ zkMRrhw0=Y@_U~m8%m2*+{Bm7HMxSAg4TnCSek2ZLI@Le=uJue$`+ig%F12p`ucq>u zv(0E}hYpAPb=iEJ(pvF%UNpfBNp^i{P&pOq0Rbi>I`jNh{nfP_wAkJjTDYK_3CbDb zL_S1fE}Pb)@in0m*5#QitG|Yv^!w~vtbW$Qb{B9s&^g}E1^m9b4EFakRzQVS55?s% zmda+wl&35Pq`2iy&>orD;2&E8>*j$o= zL{Lzo{@SRJS7&SF(~c?=8H+guBUD(k>goYK!}Sy{Jqu&ytMGt?+?-$sHps?jTo((( zRA#l&W4*a#^Ar-hm-_ji=0i$$alpYP$JVsXj-7Edt|8BBbUrUHN=}}f ziJ2`+kjtuhGOA=l*Zs6ZlZxXm$I^){5z)bIxy}6qf23Ezf-Rr^mFei0yccBwZIO;D zkrZFJhEIMs8?lfhYxGq6MR`&*i{D(D zY$MsI&cNMn@0l6)=M5LqeSkxaGR>5VUDP>OZqyb=V~|Bp9o{2!uuIa8mzsgEuJHHZ zz+TG>nueU+US&^wvFj|1Qlf3xTCHI|!Ti$NTicSAe8H9Dtt`Qgy?fMyya zwqhFG0&P_<0m)qx5s&x8$z0azqc{}bbx?>n37M{#cGB$J#04Br!T6?NG0jXP7GeO5 zX;r_ZvpqZX?&JR}0-iy}Ati`_tj$@w_8)D8$vB_EogyJ;*B@F>-+2C2WLt*_`Vi98 z9;vd5(z9uH>Ql3gWVaF`?J`!D>2AT>y+V9hOy)%zELQ628=MIt_X18^+GaXN5~l8( zEL~saH6+QF`+!E?WI(49k__@bpDv}vCmH3Y*M-iq-hV` zto#BP{=DAr*i9XkNS!!Llkl|Ym>nB`%xxNyGYn?(Y#lbYv)=l2@4~is7gF*Um86*t z1jPX6%w{?{t}%ZJn{e6e_g>CH;UrvU)9>KxOL()Ht9B)Yr-DQB=tg>E0qEdg0g?1w z-dBFw<23XSu2?v}O^xNa4-dIKmhi|Z*4oPEm^?3j&38fSjGcH1jJBKWux9O)j#iBI zX};;n&uby=fxq@9&t?{TOQnf|5fqs*jgo$42AuT9Zf72CnE|ky@A8S=`kxI~&Vb$D zbX$9bRBTT7OT{HOpB3FjY0lZBo1Mu9(Az1%3Tg z+>2vg+ET>*Pv7=lK4W!%9Hzsfc^z%|3eewMquIxuxLi6bfl)>0dR4X~PjRi%b=^g| z1lbCoSjK187gxV!3A&8rFkoL0efjwDV|6czS_5m5>Q;$pherTXy+G)1YJPifi@?w9 zFd{EvRMLo$7lDM?uw*AN9hr^S8rAzA-m{@t4q3^L28V#PdMh0)3^iT4h|81bqnb^ zb6EcN#d!u(Ug3qNLh04Q<)L`uvg}H>g#ZP zZTc;>9z||V=T+zG)zPTEFg<+2Ifip8!1@=tC3@FbM0;GOs9y}633NqjZ0z0+(#>z2 zzE`jEYueyg=FfQS$c1m#-U!-_&huAau~7P<)Y)P8NaBNJgvR$J1bM4Rkg_*=2tmvK*1)nr>rsic za5`D8%DhFx zr@H!fL@uJa)QhjG&Yl1_!LGg9%jY$VdHgD^_=4KKK;A;k+wAl>7|~!KeWrM#zJ4_I zZm69<%Ln%+f=u8ecl&M*-z|}G;~_KIxrOZPHp_SD0)&^{kCa;3`)*`xyFwkm;jw(! zf#bH9aa*%zxssG>pWgTod2O!MqkNbMwn@J!YPXE?*>MFN|5&sG!T|^gL?^KIOQ_t} zR5a+6|0U?y6k0dM2dit%60wNebkVASrDU{xY9|<_CanrvJUD4ue|z1TuBpzosngVO z%Hem*85$|XMCgvQE=HtIxGddwKZ!%vsSy9=c|CQquohH$V+)%d6b<*Bv6eI4U<#OO zK73^UJgxbqynrJZv=TB!$ijKwv%XxR;Vblz-!i5=#1#eWta-r|5Gmv(Y09(_8*M$b ztHp@+z$_;N5TPpG?dfr^^C_tc)x+=hbDze5$nBPQur0KVgIgBXe`MkLm!&yrwL8$Rsv8_o5pP|K zGK!mufjyxO^854ePTy;KI>>FTJJm7=g(PurGy!v$<4rz3dy!|vn*?e(JaWx?9aq=V z{17~rR}t6Zb-385leQ3VzZ)7*Jfor)a+Imu^S+lakQy71cI-(a;S7E=@$!-I8Q<-( zy5E;Nr8>=GX}jG=P0}$sxQJBn;Ef;U)}io_NiR0^^@1V~@*klYsbX^{wW^jRo21oF z-8;QPwZ+W?voY+~V<6~yIoaiyj-u;Sgt+G-8=jAphBVLN;R_z$d`whiE4MnR9LGfP zO&p&+1ls0h@>w5n6&a8IIe=rA#FN=L@>B_S_}+`fRH50v_=6Ko`{Q(D^^YasDKjo4 zmn3j>ZQZUICq27T3)`i6e2kQNGt=s}-+E?ahf4YM$`TRZ>JL9$`;sMY#-JktBij6F z4d_3Sluy}ldSQ)MP@_lgjR(zuVj%H*;P~D0#68MIAb^q(%}H6gL<+uhY!f335gC`u zkH+XFfpYHh3#m~aXw23r#=@^8OibsRtYCDj42TfD)z;$pS8_5+*c+Gq5&P$9UdsoN zzf4#_{ItWeSN3>Y3m*o7)Zrkvtx@09EYmI&4&Tx{e zO}+X(fdvB%PVDVV5J8 zn7u6&qj;rWpR@~Q%)6Ot+< zqY?|EW(+Y(TmP$Z-R6JHXP*L|-Pxmom=D~-%}v%HC-tTUUJrOCOhbd)62P*7T;?$bf(=RDX(yBFd>NZN#uSN zEuXTT@>LFnfFnnGEvi+`u=_1SMxj#wVuhmWOap&C0a0ubRora56?5YnG_RAHm>ns_ z^!~S=jy1c(Z?pD^#;MtG8^;tkLFlD$`IFSI6)6WJw)~~sFO3HtMT){B?&F6s5Lkwt z40!Mbj!xzL;K#<($lhosq}w{Na7o@|@PIpt=Lc~UeLca0usR(d&~vFsNb$_~cT!)w zNGXWBTWNm@5>HjEjt{oo0?XS^z-4VE)fb1_ev_e>B?ky?+us`DSjS%t@M~8>~jAjCS2-uzHU$Tc`KD&%sb(4u4CCveFsx9GBvBNtxAUy5+T4Yvp zo|m#u`)0eRHwByqg?$-zD+kME5_-OhpFc@}6-n9rqaneIIronlGS4{_R*=Z8pSBn6 zjE)$tk|$g`*v?{{c~kPwq7%G2DzTXvj zF~*V!6+NqyOGY7_+=_Df9CCU{Btm_7 z85M9?mK(AMX04ZHnAX)kf4^D^lM(bD%Nh4@dJGAaB3Zm=7K^vYPLoa4RY40zqZ_^u zuxwwedwuzE>WvY|;o;{LaS4_CPYLBz&nU96rOUi7NX+88@HRsJkQ6SyD|QS2FUyIvUd({;a(@qq;Lu_9{wVHY=C zq;)Qt)t6l#YGyaO-m}$-^o0VhwCmO)+QXf?fzEi_AZ$|cCsR7KRYW!gqLRdgi-@L63Z$UQmYerDs1c|@pb0fy*QJm zF@n^C>9#K&4vK~gRd04hvxDUOpLWWMm(ZFSlDEi)*tE>X*{37mC-2X`q5Ag5zFJz* zy_`aqUg;|a?8J>PhT7`$YHM}e2KFAQ+RaT+hgOHgMHlhyD+UQrUb~IsS$>5eFUBHv zT8N8r^%9(0;j3_62Vl<~9=Bing>~SfrjylhSd>`AAq#gPPG==FP@x2Af{J`7?J%Kh zy=De~8!;o19`W-D>0f?3E%nj*!oASHlY<{PGJjbIxSPYFBI+rBAZSnFaVB5!uA?p- zp3rp&LUIp++E0Ttbv}4eGjhZ8I_bew#$~_jA*5dnoZB0Z8Qh(=%{!oCC%?VhhOiIse=N?`(b*uR`h z=HLJI=+D+r<9E#3>Z;QZM^pdH0`7vxs&5_0DFeA|76vY`@OP||2&M-->_@3<>eJ14 zdMvKYK@m%CLR`m57}!y2DyN0!BGqcEXr3xp_{^EQ*8lJxdgOvC%{1pGx-T_+=x#UB z6ItleKf*Dvet4hv14t{}0-Ctv8Jss8X=EFnAgsNRfEvH1FOX3y69YNkvcU~ZBDXQt zy9Q-OXSH3d#u(?0-?+8Ui4D_Kzj1>^d*j2B8qCS@?@K7pR_ew`&F-7Ox#mZ$56V_} z)34q{Zsyrh^P8Xl3&mrcCrEe%I`Q{17-wDWrIUa{S65ay0L3N#p0El=Bwj zX6$0^*bDZKP?rcv0vx--IY%wfzyEUnYd zsWt7dZh^54ES0y2Z^lei;DIjJ`!pVMc-n-jT!lMe^Nd2i;4C5XiVXZF)rpjyKBv{F4>>qEsiad9Ugd) zCJza$Yr^7Zca+Z#MS&8uH~py2xaE$mq5VoySa5@QUH;R;2r_`{9e)O<70-*D`6%g* zqh4>D+o)4~l<$3Bj~Cbqz#o9B-EMVj*3{@4h4z3uMfG(q5pwZP|6D3H#J%bYyC zt~r7f^DpP{UM@d4vHy_>4}J-E;OkNegvK3Z7U4zH(E&4E6V2ZdTeshoS<0E+Ki8*o z)bsfLNd$rV3#oF!KeuSxr^qc97Iecuvw^jW&}!>~y#IH(nX;6fMUi(-Z zEwR4DF9Sff=QiM@-kOcvS|4R4en_6qhP~3pOAt^XB$5!lVH)BdEA63O5>QmWXAJQ% zHmeaPt|D-HWPtV@E#H*4tZ;aEtWvAgvI)q+vL-2zg0x@uzNzBQ( z#jf~e+Eh_9e|NjVF`1A5YZP9e z(S|2bw@Wp(r+A+B4zExxENmbd3Uxo|U;b`yTU}^?@R9y-GSF+$H8|wrJ^mdkfJpe- zic?NH@ps%VKa<|<6WiNe{*hL}$9rirRF(qDQK&L)`t4vCYnQBMSjZdL5m;`e>}}#l zUKwoCQ<{B(8(c(>> zZpz?qtJuPWw3#!OJyD3w-FPQ4kXR%M4p8LDGc_ZWX6&L}y?Fncl&^4vt0w?V`K ziRlZ3ggK2r?1U<}1W^{VCmpVW5RS_f6~22)Wdbl@zkAiKHW;951VySU@t02YJ!M)* zf;oJd64Glw*EL$(TOK(clD7b0rv^hJU6rNX%y__IPEme3uQ@Zln8$l1b-cvF=&@{( z1=uN%#-G>ADqN~khRTiwo~8Gjj{Y6#N8G{Ia?~#(LK1OXT2PK0o55~O`83qc^xxd$7s2CN?ay72~iR#&%DzSTp&pxv0j>W+p>^&j9KC1 zGq=cRSTVfMeHVkzE7m*lHx7s*^Zs_nbj)O8}EAXH^FPs_*gAJ+2JEv1R z*A)10jIM=U_8%n)3qVCtRbzE3U5N&&@0kE)wpKb?)ehywrlkUY{0+*&O?E|%lRPS* z4Cl{r7dWXauLlLjK&ZW85I}wk-lw7fmx4QLM#4iudpGX&-95pHQWAbsatpY6i;x`n zjYqyB(%c&$4#Ix6j%#Kk4sMvN|BdeOVL!u-bX{s{qI~%_wol&Yct{W1g>R(ddgd7K z0x%x=moBayPj15(3k0q<(Z7@ns%~g!ev9~cHaBCqS35F?!!!Eye)t-k!I)?Jyzc_1 z->dO~BYWQYntJTbQ)iRb)3`}i{16WVc+nPj&4{o%dgW21d2?g^h|gzoL!z)h#5oSyMNsQu0JcJ3lA4jslKW4C9ju_zWt$0%<-D+rmV}Q*vCyLhb)h#N5(r3 z|H`J$2unnV}arat&O!6aSgy_N9P;cTwge}k-*s^$7n_BSLo95l5jQ;&u4L%ISLvXcp z*s&pJ!Ur>42J!*fpg!jwutVnb#MI!e!Y58vKq$H(90=#M{-(cF zB#6J;Su}hX%?{w-F&=z1QY)d;z{#v}WH;Lcz}<O#XglMPu zdLe7A4%%89diu-WNy0b%%V6&pJuecQb z%K=;rxFw|vaDAiwR4;<57P*Ff99GN3?n=lR)}KuruxkE{HIw}=9O;7c0X_Htm0(=6 z#zboT^b}uve)Xc{px=&LQd&)PkRpc0T8i@(sc^uV~I zf!2G8R!220=Ed^P;$2AwnxToz0Q>9@YS=fj!7deokFKNC^uw>c4&(!4KxPbbB}{=y zP(ba_;&b+i*3lZt+Q|pWzLE5WW?Or@Co<`W<;3?ZT&5Ow5WW@>f|N&vJAbS;`&*eG z+OEx0ve!)A*Adw?+PY`6Cr47bll~;Nu)wX9O2~5s# zqFS^`a;}L3(>JH55}&S&+&xH=BIVwfIOsySU>~vYy&(e!J;NfWSWg$-ItC0}>gnDx z%szZjt*k}y610OKTDG2%%uv-j4LQ_Vt%zP5Y)LbHDZsT@Oq!RD`B@$1aF61om#})sf6a%gGHdonl_Ok%O{a=P&L5_(Bg0L1HoGj2HNz z4HU3VE9v~EO5W!Borc?l(WqG^F!p$PL?!TK(K;ksC2*!6-e|9~%chD}$G;BQ-?)2t zdk2dkA~c&{&Jm>8_IY|oDRY38h&hwNNRYdb*i)M0HF4ngMW2b=?sesN2Y1Y3NGR?N zb&M~a+w3)_n}0d@J>sit57>| zX~kZxXwogYoYaCwP0avI9xhN?M4EDiqaBFfVkLT^X;3XdTq#aOehxZiPR;hb9Q+8L ztwSAk@lJV`^#h}6Hu{PY_~$rveOI;i68&-tIh^iesFM6Aa92qZ#W3X*IP(KJ9QJ>+ z0AM+y{_L8e5*IK~LnIQ?bM5Rat#G{rW-w^}Z}QdLx;-kUUuVH{I6p~Duw5lqnyPpa zPmk3eCv`GEi(FiM^~39O(W3c>1QXCGd163?BK(@aBNrj=1MYu-w_@Hn{5vHVum>TE zYQsy8FOp(p-);p~$IW~1g=kW|0ZU3!K>hGJ7GU{nq=nuVZ=tswMJjFoafKgVA!v*7 zY^x--wt6x!>WiVHSh5fk(cm?{vuE)KYfL2XS+M=nwsq06VQ)V34n}Q6=cdTVd%Gx< z5F1iBrPF<4s4#F5UsWS4Ds#B-uewPY2)jG`DmXzRt7$z7>a67#ljamSfU~00I(sk% zz<)P+BpL!N%P z!u?Agn}r|9bfY0L&->w-AW&e<|VQF!IqPzaEXg_M}Y0zm~D3!w} zP|d~&$EW~S;RrCJmn$Ly`*#k8F=_}-<2OtH7CZzMsrSl}F9WLyf4Fvdf`4>qYw>BG zOnLEiv4G!h)_ni7p}|mpGJZ0w_-r`6Z4#KC8#SMC5!4a{qonyT))8^(@Gij14U@Tm z43RNk%VQnJ&%EYItGkF9gp}WE+`WaLu1R;0eDnB1?`a>D*I0Wg1=Z)y?*nR(-$2xQ zHhR}tB>tpumLpjNQe^0T&exc{7p*@`!}Ezn%0OU8!aH|43iUoSI0!Zw@S5U(_>Bf; zFr>{u`Sl3pEUwov^MK%`OYbr&OZHV4EohSk|2nSP%eD+!hyZCcqp{e{XiZ`P1V5qN z>jx=SrmBWt_uiJQDBXgk;y~$bRDxud#Jr=&0zzc)~ z1;$-p9`BCvfp>eyZ?=0`@+67MrYTqjaO#AX;5^70fVrO8?>)&(;5J2#9psdaCRlf- zBp)FWl;7iiy9m>*lWIes51RNsC@;(j(%GHh>XbG5Cni%I-pZ~8MbgKC0B$OYyIGg2CHE-!9=4o+JQX%fW@g(p`F(Q-}uy9d` zWlGDx9m?U!eFf$`+Id%BO3}uquN)%$H&{zruJTp_HS-Z73a~%)wk4m_g-{?v*5f7E z4&MQnQIdrMCb+y&tctc1+wiraUDXv@(5(c8B!v_q2D*uPT8=2I?jnH+34R{yNikT& zb*G02nBP#niuu& z_jff<7LvE6Co-Nwjl1v+b^4+YCr%fYIw#Xrxx017qy2y~u4Bcz2 zIAY)0;{aMrgz5<(X!A<``1RU%*{d;=U}XS=qhPQ6@{XoW*s_oR;)X`V9@4bhe?}A= zP7_4gitDQ{HTIIx@~g@JeYbT3syRV|B7gu_X{V$da=*<&R{K^@xYw+B`orQ(*2&GX zy#w%<+0;(C`sG<|M)U?BC?*A!+Yk<0A^?musd76uua*~=5BS#Eqz+_eT4(V$gMmdq z=q5mSgE`m#+#`T;_1dQuRL56T%XeY*Yf_vt^Hf(7Sn+8AA8!d2f<6BU^bi_%mdouP zj5Q%?=mc9xI0Sv!ZKz{90o0u~d*{E7sOKTlvF)U3rw_kq6!7=Uv0O0BcS3Q+cCqS%awsU{(^w>dO+jnXj!1RhtLul zdjIV1r+f{}<1@n3_jeXuZ|N9qx%BNSdos2vl+n{bLN#rq@2>ZX9?a`TYu>Ljz#<$(|Y1c(Uv^@kDGzMlSbw zZ?cV$19id-Mi=dsS4X{B7+402hIGCphN*$O7+JtrMhSt~Y|-jMn(>T`jW)oqT_v)1 z9>?5E8rUqbq`kd;@JEG{&_6e^X;6ulx7<&~`~2H|+_knKIeQ3n$nM}I?|M(h7ay479*m5+2Me#x01H; zZtjFCv;rtHZH#^EZVez8nP7SD~uQ0MN8b?Ik4}*$~;%PCDxqVvG8&f{BtD# z>Yn|SoPM5tInS8c#$u><_BHS3;gh&rSVYK+uz^o24ucvU2SUDjkXQisjS!fSzlX#) zj8qU1n!g&f$CX|;3uYB0xE*DudnxErO_%;*?R7}1v27=XVWOtl_Z7gmFje(Q>WyM{ z`=#DfH<8uJap&B^cbAxHY#z^3V0$Mif#VOpV`V))wH$Wckug=9?_8 zF7nQ80pn$KE#~YL$*xmrCk36LiVMIJ>#IgwMiGAA&!3w!@{M6USSG}cl+2Uy_=M^9 z?%H72ceH>MVP91`u`Tp+xwraww;~K#Bf1}qDxcugPdGSjg-8==*;mKqgkrBH z`w}??H@Q*CEnF1gLZuwPJNEgX2EiH1?iiPrUA{SpWfh$M?z~-m)oU8p5{S5Icy}f4 zk~fR-+2;w&=I%UELLqyJFNcQb-3u2>vPNso%b6i2B$%2c(HQWQhV;{lt+k zuM_+eg1wKIlNvzF+c#QzQd6o-aeH|^1Sk9@qrld>v)*C&(UYn z3MsSL3=5m(vw*;95Zbx|;MD9AUb}HESe{*Da-(b9aGC{^+gVOIb`{H1BpIaj7`K79 z))MINq`*p|8V$;YV&0ex&L)?)s|kuB|%CJ_!HT`7(|PqJ3wUS#sVf3 zK1z0b#&Kp&b8sO@aL!~@MXiUP$ug{22SYKW37RBj*HBMBp2`oQkboEUoqUPgHyuVn zzd42e*BlwHlw>&%n$wd7jA+R0g{9pwhW;X27rma1F8fd0AkNfHJusWDC;uB~@{?xB zxHe8!(;e@)hjhqu7l(Z@f7+H2BL9uCraObP+8P`!k^qaR04ZM@`VBTak7y#GgeDv}k8|#uq7?C|i?bG0Rwrxf-&w7hlaVUYz27_(a znTB!9#9o*X5->koYx|79bA_&5`;$U<00iS*8!xI3FZ{IBR$5Q(A7%f0CxzOV!k+p5 zaGRpUMlwszyB$$xqw!E1LoO_~L6W2zD8n>DxJ2fAN|ipN`1_C!J;qIh^3J0g)$lZ8 zyYQy2vzGVKI^Nf}wnYGE#ME8UL z`+tjJ)L;J-1yMF4TzV;1$ z#0}I44x1pCMNiRsjy{D@OwIRzC0G($G)AERhzWUwUHvS8fU;$MVxg5CtAT)*t|Zn0 z2G<~1!&`gVgORN;G*eu8{p?X?SR?n@s3IZlQO)z!zI)1_^;OHI7u%B$%}$1<9LC5d z02~v7o}DKkSa|SUU;1lQ+vlLH*mG=Zj3;r$!>Z$~Slwwr?Q->ai&CC!(NiJxU=%~i zO~8?7ukJFwYV72VGx|tqCSGFHJnKkQ_PFq(7>Yk}yRZ^UjT0cuWHPxOum;u8GGF{; zXDV-E(RjO0Fyq)qFI01)%jYo6Ft7`6^Ch&ukyvaAS}o5?47~!WsYSdgMBp3rzEH5) zc{Yp+JYb+MdO*0=ZnY%3bG(QriKlRKax&EAePyu?Qw=3y5ASQ-i|=uGXn)x$1M}=~ zDP$hc(H4|WAnZUj+}b)VkqXc`KaIJCL~ZcGsU^)!6dSl0$B(~>EE*&EiXwBJ{9!+y+`^flBM7+73O-*@ zqB~V4wK)LY%p4xyUYkUx#}$b2KNmd}rh_>J!>8-JW#-yfknMAf`fg-zDgV)RTJla) z@d6Po1>JkNu0yS%K7dr5R6n+z$b)RVOvm4gpTETVucw#~T95uQ!F;G!IHPJSOrQ-D zrPrXD6b6XemCA+@>tdqPiUhJy7t=-sQv5951)sGs;%NY{V>FV+**?!S+D`PeP~4?eLZrFoIb$BjVOH#=wUVVN_bWBxH-yet8|+-Bhi8Y>dzx@ zf7CR;vIwH?%&Q(BFoVm+$_ft5RW;3C+nYTi$t54sG%Hfif4??V4H307Va_Q-r(2D9qB-S61Nq*85TO`Gv93!hoS-N(dUOTNE@RyrmGW) z$Y;s{SI(wig%9bsSs&*c(ik50uHo>&(6)z@S2d=rZveV?w%l*{K=MgDA*%GhMnd>A zQ21piCT4cAJ+k-LAseyh{u#ivq(wW*FKiQx5@?-FSxX*=x;XZ|{g@_Zc4ckCZn>%u zPrcF?$GxP1hm*W4VWWGW~dcWA&ZDR5M{N%|w6}9gx(_wV6 zp;Y#PBvA>Pec2P7C7D6!N|%f*YV>XZ1|QKmbr{&U0ocVo-XmM0mQb_(W9iUH;3={s zNF>A|SSpVK$iDMAmkNwnj>skOZm1H9V+JI7Bl#MGYBQ)wx!5B4`c`=|JstLKH8QCh z(*!UtseTm)VKIJ##AXXt$L5^%FNXhS-x46%h=M1h3kYfxT#Wc0p&nIT`bK;=XJ=bQ zA!bpWg9YdI_MK-&dhOz|oiHo(XfU@Jcy$3NGL9N=?I*Vc!l2t#1iBIRr3$)p>!JX7 z7An9Lyk3vXfnv-?=ye~ycETwwefswek~9ZtqXSOghoXttj}WE;);06#5}fm}6gacw z=B=hR;B9_y+N<^0tWwESf&M{j`M^drSyBaT4;SxrAR(9wCbR#}NQ~7(`Qw5U=aK~j z2#pAluV!UkOH%8;rtP@GmDc0^y%duky}0hyR8&7JgX!`ohx5F z<}U{tK&B|wshdyG0>Q@p{w^mFfgixnOawz+KZK<~;I|tA@bBnvTGn3iR}SaqjSf=+ z8-`?J{PBQxkE}|9#tPiWZPJw7%zigk8&xzJin!sO1nhsYiZ+}50(;`oI~u6owv~e_ z`qoxc(9nCyFKS^}Ub0n~{z@5%{ZuhpAX8L;Zf{~==K@y~aR@x+@d1=p4=?%wf|zh= zE~7=NZYo9r-+Bf$4$>3l_2@;Dy9V(*2wu0qKegRC&RSolufkSm4ZJ-!)JE@@2DF$_ zsCS~6_ZI`I|2a~vaX4y?D?84$((f$Pv0{I;knWGYg`}EU-&y%#9uDTkjk)Lyb-;q z&-%yOj1L+gaFky1%HL>S{5@u9;3TOS<+wjAp9VU&#zEEig9NfHAc3fLs zjFQC_{!t^mH=6yi)xZrbFQ#r5FC>hY!=aHY-$Zj>l}afL;pY&6Y|w_uK~CFNV)5ZT zCZ#1#VHOt5Ymj_FZTt|R?`w@iGBZ}Dmm;ZTQ=6Rl0ZTKWwUeK&gKv(%$X2!TTz{a| zPX3qWTH-G96q%>b*)r@k9CJISiL_$liAwdPm-aIJx00ZcpLT3MpXPLakSKlIYC9{zQyvN!qkLlG%qckrJ#SmLpekkI! ziaJhz<2TU#5%U-U$BY}QM9Vs%=Ilg|(Rw_<{)8y0iQ*4`0OQ5J^Tq1xxp@ku1jq;C zfd#vdIf8)k6SDV2j~i-T59LCD?{4nr7*9SPdU96xln*p3o|!ZGQ9{hwp8MzPo{79j zwG;N7)wBRkBodut76{-lqBSjwk*2M@cs&mX0xu0715Y$m2oLL=Ldb5y=6ZI`jM2&^ z&1>SZ6J_&MpoiB^qS$kMCU`3kfy*_RHYyicABHcqHsnT+n`BQElryY$Z|^dADeR3GZBll!bD8ANx-+6!FU-O zH;*5|iSr>*drsd%ym*eY%WY>YJRA+)MYbOPY4CnP+r?O{(20impQBfekJ$LK8$UiH zFv-=2tk#dbFSE=vEX<9kE7ZUaQ@Gpdy%1+OJwk(EX6|1?T1G>FZwfT43-2l%nYWV$ zuHe;9eBXJielk||VyLn7lRjkIPF9y(h}!WBv;08Z5McoFIw?A;&zfSoH7F6g&zfp! z0OsPFzY9ukDg|53e|dn6haJ6}NjZv^8>yD(2No_yPBG-~y03;`aC&A0h6z{x%3ST< z*uOz%mlf!^TW=Jz@;c9yz^NtG&_@;0`a?%A!Fn4$CE9N6%QiaD}~AFE*2mn`USn2S7Vzt{H9NQ}g-6AZCIb^IO(^7F@MROyY(vk)NQde=bFw zB+;N+ZnLM&leo@nKl-kfF)`YO{e}<}be?FXnLbj7MriM3Wrk3E6~*QACX;zn?Vbnc zE9;NeTVxQ;LM6uUp@4M`=i1orreCW%KD!9Q1bt29l2HnCk8E z+w;rf=}LVkHMWbXC_f6sU|^_l6D>Hn?furx?c$4oUP2{>FqvJS#x&W`UvSimzk_jZ z`BLIyJJR2ze(>JsE@B3nD>^t-Fj;ab6zhSx%){fN6ONI`hHo<}?8IBLS|;{?EIPWp z5+WzhScjg-i;7YSSzB`hJimI*F2N$&swJ zv}z*2dt^kMGN0_Cr~R^4u8Zz=0?k1_dsC;M_GsWZeMsr^Ndbt(z_H2kE&Vt=;i32V z2pt6@w`lxX48XmyrPW7{pV|Z6p)Hv#Vo_ubB1dfHNZdUSM)k@6aa)3FO#nJL%5JOY z@=b%%>ij>M_mBAlY(?iAlf&ndvw_;7L!S}TPt~xPe2AQ6NUMnFO@s54Xz>Nf_jHU! zTf?@?vSVC_K~bjn3~x}jfb3ibiSCA#um{%q)McS(|3-!ZQFd}&c#IVA4~-4CgWQ-2 zELeExxCU1yKge-%i#;_$4=(wfAI}-^_L3mIU;|3Quqc<^@d$s}G+cA}x=xDUu=s38 zV&UZSNX+!4Y0xnO-=A-3p;i_z>&Dk7)koN$sP-A}*z>UWm1)(ygqW8iCft17OyE1& zm0B$J6z}fnNpnB#_fkacTajM7-c&oCCPi!Bv_}`>PE`NWNKdp+jepu$a||1BwuyL< z;q2w~*r1Q*A7TX5V=(@YbH_Yy)D&F@v$+YYxPYi`p;jcO>m5Iz}|o%J`eBA(3OUk`wNXmcHc4kbZ>>X?)f-UupnENfxI2 z4O@_iefuO;ygwm;o97Qgcp2WHs#=uj}% z6gS?Icv2fb#(NL}90zv8G87q33C2Tvp%-{{6e#PTJSGe(5+)ly>6%0Dr_hy=xWLoD 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∋f(pYS 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 literal 0 HcmV?d00001 diff --git a/src/all/simplycosplay/src/eu/kanade/tachiyomi/extension/all/simplycosplay/SimplyCosplay.kt b/src/all/simplycosplay/src/eu/kanade/tachiyomi/extension/all/simplycosplay/SimplyCosplay.kt new file mode 100644 index 000000000..9736f2861 --- /dev/null +++ b/src/all/simplycosplay/src/eu/kanade/tachiyomi/extension/all/simplycosplay/SimplyCosplay.kt @@ -0,0 +1,382 @@ +package eu.kanade.tachiyomi.extension.all.simplycosplay + +import android.app.Application +import android.content.SharedPreferences +import android.util.Log +import androidx.preference.ListPreference +import androidx.preference.PreferenceScreen +import eu.kanade.tachiyomi.network.GET +import eu.kanade.tachiyomi.network.interceptor.rateLimit +import eu.kanade.tachiyomi.source.ConfigurableSource +import eu.kanade.tachiyomi.source.model.Filter +import eu.kanade.tachiyomi.source.model.FilterList +import eu.kanade.tachiyomi.source.model.MangasPage +import eu.kanade.tachiyomi.source.model.Page +import eu.kanade.tachiyomi.source.model.SChapter +import eu.kanade.tachiyomi.source.model.SManga +import eu.kanade.tachiyomi.source.online.HttpSource +import eu.kanade.tachiyomi.util.asJsoup +import kotlinx.serialization.decodeFromString +import kotlinx.serialization.json.Json +import okhttp3.HttpUrl +import okhttp3.HttpUrl.Companion.toHttpUrl +import okhttp3.Interceptor +import okhttp3.Request +import okhttp3.Response +import rx.Observable +import uy.kohesive.injekt.Injekt +import uy.kohesive.injekt.api.get +import uy.kohesive.injekt.injectLazy +import java.io.IOException +import java.text.SimpleDateFormat +import java.util.Locale + +class SimplyCosplay : HttpSource(), ConfigurableSource { + + override val name = "Simply Cosplay" + + override val lang = "all" + + override val baseUrl = "https://www.simply-cosplay.com" + + private val apiUrl = "https://api.simply-porn.com/v2".toHttpUrl() + + override val supportsLatest = true + + override val client = network.cloudflareClient.newBuilder() + .addInterceptor(::tokenIntercept) + .rateLimit(2) + .build() + + override fun headersBuilder() = super.headersBuilder() + .add("Referer", baseUrl) + + private val json: Json by injectLazy() + + private val preference by lazy { + Injekt.get().getSharedPreferences("source_$id", 0x0000) + } + + private fun tokenIntercept(chain: Interceptor.Chain): Response { + val request = chain.request() + + if (request.url.host != apiUrl.host) { + return chain.proceed(request) + } + + val url = request.url.newBuilder() + .setQueryParameter("token", preference.getToken()) + .build() + + val response = chain.proceed( + request.newBuilder() + .url(url) + .build(), + ) + + if (response.isSuccessful.not() && response.code == 403) { + response.close() + + val newToken = fetchNewToken() + + preference.putToken(newToken) + + val newUrl = request.url.newBuilder() + .setQueryParameter("token", newToken) + .build() + + return chain.proceed( + request.newBuilder() + .url(newUrl) + .build(), + ) + } + + return response + } + + private fun fetchNewToken(): String { + val document = client.newCall(GET(baseUrl, headers)).execute().asJsoup() + + val scriptUrl = document.selectFirst("script[src*=main]") + ?.attr("abs:src") + ?: throw IOException(TOKEN_EXCEPTION) + + val scriptContent = client.newCall(GET(scriptUrl, headers)).execute() + .use { it.body.string() } + .replace("\'", "\"") + + return TokenRegex.find(scriptContent)?.groupValues?.get(1) + ?: throw IOException(TOKEN_EXCEPTION) + } + + private fun browseUrlBuilder(endPoint: String, sort: String, page: Int): HttpUrl.Builder { + return apiUrl.newBuilder().apply { + addPathSegment(endPoint) + addQueryParameter("sort", sort) + addQueryParameter("limit", limit.toString()) + addQueryParameter("page", page.toString()) + } + } + + override fun popularMangaRequest(page: Int): Request { + val url = browseUrlBuilder(preference.getDefaultBrowse(), "hot", page) + + return GET(url.build(), headers) + } + + override fun popularMangaParse(response: Response): MangasPage { + runCatching { fetchTags() } + + val result = response.parseAs() + + val entries = result.data.map(BrowseItem::toSManga) + val hasNextPage = result.data.size >= limit + + return MangasPage(entries, hasNextPage) + } + + override fun latestUpdatesRequest(page: Int): Request { + val url = browseUrlBuilder(preference.getDefaultBrowse(), "new", page) + + return GET(url.build(), headers) + } + + override fun latestUpdatesParse(response: Response) = popularMangaParse(response) + + override fun fetchSearchManga(page: Int, query: String, filters: FilterList): Observable { + return if (query.startsWith(SEARCH_PREFIX)) { + val url = query.substringAfter(SEARCH_PREFIX) + val manga = SManga.create().apply { this.url = url } + fetchMangaDetails(manga).map { + MangasPage(listOf(it), false) + } + } else { + super.fetchSearchManga(page, query, filters) + } + } + + override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request { + val sort = filters.filterIsInstance().firstOrNull()?.getSort() ?: "new" + + val url = browseUrlBuilder("search", sort, page).apply { + if (query.isNotEmpty()) { + addQueryParameter("query", query) + } + filters.map { filter -> + when (filter) { + is TagFilter -> { + filter.getSelected().forEachIndexed { index, tag -> + addQueryParameter( + "filter[tag_names][$index]", + tag.name.replace(" ", "+"), + ) + } + } + is TypeFilter -> { + filter.getValue().let { + if (it.isNotEmpty()) { + addQueryParameter("filter[type][0]", it) + } + } + } + else -> { } + } + } + } + + return GET(url.build(), headers) + } + + override fun searchMangaParse(response: Response) = popularMangaParse(response) + + private var tagList: List = emptyList() + private var tagsFetchAttempt = 0 + private var tagsFetchFailed = false + + private fun fetchTags() { + if (tagsFetchAttempt < 3 && (tagList.isEmpty() || tagsFetchFailed)) { + val tags = runCatching { + client.newCall(tagsRequest()) + .execute().use(::tagsParse) + } + + tagsFetchFailed = tags.isFailure + tagList = tags.getOrElse { + Log.e("SimplyHentaiTags", it.stackTraceToString()) + emptyList() + } + tagsFetchAttempt++ + } + } + + private fun tagsRequest(): Request { + val url = apiUrl.newBuilder() + .addPathSegment("search") + .build() + + return GET(url, headers) + } + + private fun tagsParse(response: Response): List { + val result = response.parseAs() + + return result.aggs.tag_names.buckets.map { + it.key.trim() + } + } + + class Tag(name: String) : Filter.CheckBox(name) + + class TagFilter(title: String, tags: List) : + Filter.Group(title, tags.map(::Tag)) { + + fun getSelected() = state.filter { it.state } + } + + class TypeFilter(title: String, private val types: List) : + Filter.Select(title, types.toTypedArray()) { + + fun getValue() = types[state].lowercase() + } + + class SortFilter(title: String, private val sorts: List) : + Filter.Select(title, sorts.toTypedArray()) { + + fun getSort() = sorts[state].lowercase() + } + + override fun getFilterList(): FilterList { + val filters: MutableList> = mutableListOf( + SortFilter("Sort", listOf("New", "Hot")), + TypeFilter("Type", listOf("", "Image", "Gallery")), + ) + + if (tagList.isNotEmpty()) { + filters += TagFilter("Tags", tagList) + } else { + filters += listOf( + Filter.Separator(), + Filter.Header("Press 'Reset' to attempt to show tags"), + ) + } + + return FilterList(filters) + } + + private fun mangaUrlBuilder(dbUrl: String): HttpUrl.Builder { + val pathSegments = dbUrl.split("/") + val type = pathSegments[1] + val slug = pathSegments[3] + + return apiUrl.newBuilder().apply { + addPathSegment(type) + addPathSegments(slug) + } + } + + override fun mangaDetailsRequest(manga: SManga): Request { + val url = mangaUrlBuilder(manga.url) + + return GET(url.build(), headers) + } + + override fun mangaDetailsParse(response: Response): SManga { + val result = response.parseAs() + + return result.data.toSManga() + } + + override fun getMangaUrl(manga: SManga) = baseUrl + manga.url + + override fun fetchChapterList(manga: SManga): Observable> { + return Observable.just( + listOf( + SChapter.create().apply { + url = manga.url + name = manga.url.split("/")[1].replaceFirstChar { + if (it.isLowerCase()) { + it.titlecase( + Locale.ROOT, + ) + } else { + it.toString() + } + } + date_upload = manga.description?.substringAfterLast("Date: ").parseDate() + }, + ), + ) + } + + override fun getChapterUrl(chapter: SChapter) = baseUrl + chapter.url + + override fun pageListRequest(chapter: SChapter): Request { + val url = mangaUrlBuilder(chapter.url) + + return GET(url.build(), headers) + } + + override fun pageListParse(response: Response): List { + val result = response.parseAs() + + return result.data.images?.mapIndexedNotNull { index, image -> + if (image.urls.url.isNullOrEmpty()) { + null + } else { + Page(index, "", image.urls.url) + } + } + ?: Page(1, "", result.data.preview.urls.url).let(::listOf) + } + + override fun setupPreferenceScreen(screen: PreferenceScreen) { + ListPreference(screen.context).apply { + key = BROWSE_TYPE_PREF_KEY + title = BROWSE_TYPE_TITLE + entries = arrayOf("Gallery", "Image") + entryValues = arrayOf("gallery", "image") + summary = "%s" + setDefaultValue("gallery") + }.also(screen::addPreference) + } + + private fun SharedPreferences.getDefaultBrowse() = + getString(BROWSE_TYPE_PREF_KEY, "gallery")!! + + private fun SharedPreferences.getToken() = + getString(DEFAULT_TOKEN_PREF, DEFAULT_FALLBACK_TOKEN) ?: DEFAULT_FALLBACK_TOKEN + + private fun SharedPreferences.putToken(token: String) = + edit().putString(DEFAULT_TOKEN_PREF, token).commit() + + private inline fun Response.parseAs(): T { + return json.decodeFromString(body.string()) + } + + private fun String?.parseDate(): Long { + return runCatching { dateFormat.parse(this!!)!!.time } + .getOrDefault(0L) + } + + companion object { + private const val limit = 20 + const val SEARCH_PREFIX = "url:" + + private const val DEFAULT_TOKEN_PREF = "default_token_pref" + private const val DEFAULT_FALLBACK_TOKEN = "01730876" + private const val TOKEN_EXCEPTION = "Unable to fetch new Token" + private val TokenRegex = Regex("""token\s*:\s*"([^\"]+)""") + + private val dateFormat by lazy { SimpleDateFormat("yyy-MM-dd'T'HH:mm:ss.SSS", Locale.ENGLISH) } + + private const val BROWSE_TYPE_PREF_KEY = "default_browse_type_key" + private const val BROWSE_TYPE_TITLE = "Default Browse List" + } + + override fun chapterListParse(response: Response) = + throw UnsupportedOperationException("Not implemented") + + override fun imageUrlParse(response: Response) = + throw UnsupportedOperationException("Not implemented") +} diff --git a/src/all/simplycosplay/src/eu/kanade/tachiyomi/extension/all/simplycosplay/SimplyCosplayDto.kt b/src/all/simplycosplay/src/eu/kanade/tachiyomi/extension/all/simplycosplay/SimplyCosplayDto.kt new file mode 100644 index 000000000..9cbe15cdf --- /dev/null +++ b/src/all/simplycosplay/src/eu/kanade/tachiyomi/extension/all/simplycosplay/SimplyCosplayDto.kt @@ -0,0 +1,116 @@ +package eu.kanade.tachiyomi.extension.all.simplycosplay + +import eu.kanade.tachiyomi.source.model.SManga +import eu.kanade.tachiyomi.source.model.UpdateStrategy +import kotlinx.serialization.Serializable +import java.util.Locale + +typealias browseResponse = Data> + +typealias detailsResponse = Data + +typealias pageResponse = Data + +@Serializable +data class Data(val data: T) + +@Serializable +data class BrowseItem( + val title: String? = null, + val slug: String, + val type: String, + val preview: Images, +) { + fun toSManga() = SManga.create().apply { + title = this@BrowseItem.title ?: "" + url = "/${type.lowercase().trim()}/new/$slug" + thumbnail_url = preview.urls.thumb.url + description = preview.publish_date?.let { "Date: $it" } + } +} + +@Serializable +data class TagsResponse( + val aggs: Agg, +) + +@Serializable +data class Agg( + val tag_names: TagNames, +) + +@Serializable +data class TagNames( + val buckets: List, +) + +@Serializable +data class GenreItem( + val key: String, +) + +@Serializable +data class DetailsResponse( + val title: String? = null, + val slug: String, + val type: String, + val preview: Images, + val tags: List? = emptyList(), + val image_count: Int? = null, +) { + fun toSManga() = SManga.create().apply { + title = this@DetailsResponse.title ?: "" + url = "/${type.lowercase().trim()}/new/$slug" + thumbnail_url = preview.urls.thumb.url + genre = tags?.mapNotNull { it -> + it.name?.trim()?.split(" ")?.let { genre -> + genre.map { + it.replaceFirstChar { char -> + if (char.isLowerCase()) { + char.titlecase( + Locale.ROOT, + ) + } else { + char.toString() + } + } + } + }?.joinToString(" ") + }?.joinToString() + description = buildString { + append("Type: $type\n") + image_count?.let { append("Images: $it\n") } + preview.publish_date?.let { append("Date: $it\n") } + } + update_strategy = UpdateStrategy.ONLY_FETCH_ONCE + status = SManga.COMPLETED + } +} + +@Serializable +data class PageResponse( + val images: List? = null, + val preview: Images, +) + +@Serializable +data class Images( + val publish_date: String? = null, + val urls: Urls, +) + +@Serializable +data class Urls( + val url: String? = null, + val thumb: Url, +) + +@Serializable +data class Url( + val url: String? = null, +) + +@Serializable +data class Tag( + val name: String? = null, +) diff --git a/src/all/simplycosplay/src/eu/kanade/tachiyomi/extension/all/simplycosplay/SimplyCosplayUrlActivity.kt b/src/all/simplycosplay/src/eu/kanade/tachiyomi/extension/all/simplycosplay/SimplyCosplayUrlActivity.kt new file mode 100644 index 000000000..30bdb1ea8 --- /dev/null +++ b/src/all/simplycosplay/src/eu/kanade/tachiyomi/extension/all/simplycosplay/SimplyCosplayUrlActivity.kt @@ -0,0 +1,33 @@ +package eu.kanade.tachiyomi.extension.all.simplycosplay + +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 SimplyCosplayUrlActivity : Activity() { + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + val pathSegments = intent?.data?.pathSegments + if (pathSegments != null && pathSegments.size >= 3) { + val mainIntent = Intent().apply { + action = "eu.kanade.tachiyomi.SEARCH" + putExtra("query", "${SimplyCosplay.SEARCH_PREFIX}/${pathSegments[0]}/new/${pathSegments[2]}") + putExtra("filter", packageName) + } + + try { + startActivity(mainIntent) + } catch (e: ActivityNotFoundException) { + Log.e("SimplyCosplayUrlActivit", e.toString()) + } + } else { + Log.e("SimplyCosplayUrlActivit", "could not parse uri from intent $intent") + } + + finish() + exitProcess(0) + } +}