From 30ce4ab0a1fe61ef7a8c0a90ef9cdb8ba8f8cba4 Mon Sep 17 00:00:00 2001
From: imper1aldev <23511335+imper1aldev@users.noreply.github.com>
Date: Mon, 13 Jan 2025 03:47:28 -0600
Subject: [PATCH] EstrenosDoramas added

Closes #318
---
 src/es/estrenosdoramas/build.gradle           |  16 ++
 .../res/mipmap-hdpi/ic_launcher.png           | Bin 0 -> 3238 bytes
 .../res/mipmap-mdpi/ic_launcher.png           | Bin 0 -> 1604 bytes
 .../res/mipmap-xhdpi/ic_launcher.png          | Bin 0 -> 4964 bytes
 .../res/mipmap-xxhdpi/ic_launcher.png         | Bin 0 -> 9746 bytes
 .../res/mipmap-xxxhdpi/ic_launcher.png        | Bin 0 -> 15842 bytes
 .../es/estrenosdoramas/EstrenosDoramas.kt     | 220 ++++++++++++++++
 .../estrenosdoramas/EstrenosDoramasFilters.kt | 237 ++++++++++++++++++
 8 files changed, 473 insertions(+)
 create mode 100644 src/es/estrenosdoramas/build.gradle
 create mode 100644 src/es/estrenosdoramas/res/mipmap-hdpi/ic_launcher.png
 create mode 100644 src/es/estrenosdoramas/res/mipmap-mdpi/ic_launcher.png
 create mode 100644 src/es/estrenosdoramas/res/mipmap-xhdpi/ic_launcher.png
 create mode 100644 src/es/estrenosdoramas/res/mipmap-xxhdpi/ic_launcher.png
 create mode 100644 src/es/estrenosdoramas/res/mipmap-xxxhdpi/ic_launcher.png
 create mode 100644 src/es/estrenosdoramas/src/eu/kanade/tachiyomi/animeextension/es/estrenosdoramas/EstrenosDoramas.kt
 create mode 100644 src/es/estrenosdoramas/src/eu/kanade/tachiyomi/animeextension/es/estrenosdoramas/EstrenosDoramasFilters.kt

diff --git a/src/es/estrenosdoramas/build.gradle b/src/es/estrenosdoramas/build.gradle
new file mode 100644
index 00000000..6b707d95
--- /dev/null
+++ b/src/es/estrenosdoramas/build.gradle
@@ -0,0 +1,16 @@
+ext {
+    extName = 'EstrenosDoramas'
+    extClass = '.EstrenosDoramas'
+    extVersionCode = 1
+}
+
+apply from: "$rootDir/common.gradle"
+
+dependencies {
+    implementation(project(':lib:okru-extractor'))
+    implementation(project(':lib:streamwish-extractor'))
+    implementation(project(':lib:streamhidevid-extractor'))
+    implementation(project(':lib:voe-extractor'))
+    implementation(project(':lib:yourupload-extractor'))
+    implementation(project(':lib:vidguard-extractor'))
+}
\ No newline at end of file
diff --git a/src/es/estrenosdoramas/res/mipmap-hdpi/ic_launcher.png b/src/es/estrenosdoramas/res/mipmap-hdpi/ic_launcher.png
new file mode 100644
index 0000000000000000000000000000000000000000..dc6014a2da130c5ecf334eea89f637042d93db7b
GIT binary patch
literal 3238
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
Y1^Yu>$g|?BOaK4?07*qoM6N<$g3sqyy#N3J

literal 0
HcmV?d00001

diff --git a/src/es/estrenosdoramas/res/mipmap-mdpi/ic_launcher.png b/src/es/estrenosdoramas/res/mipmap-mdpi/ic_launcher.png
new file mode 100644
index 0000000000000000000000000000000000000000..fb32665b15d0e653258f03e06fea626ed3596741
GIT binary patch
literal 1604
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
CizK}O

literal 0
HcmV?d00001

diff --git a/src/es/estrenosdoramas/res/mipmap-xhdpi/ic_launcher.png b/src/es/estrenosdoramas/res/mipmap-xhdpi/ic_launcher.png
new file mode 100644
index 0000000000000000000000000000000000000000..c64a8b267c4058e0336cf4f89003f15d144b9314
GIT binary patch
literal 4964
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

literal 0
HcmV?d00001

diff --git a/src/es/estrenosdoramas/res/mipmap-xxhdpi/ic_launcher.png b/src/es/estrenosdoramas/res/mipmap-xxhdpi/ic_launcher.png
new file mode 100644
index 0000000000000000000000000000000000000000..aafd62f165e5554546fb1ea74af579ca75128369
GIT binary patch
literal 9746
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

literal 0
HcmV?d00001

diff --git a/src/es/estrenosdoramas/res/mipmap-xxxhdpi/ic_launcher.png b/src/es/estrenosdoramas/res/mipmap-xxxhdpi/ic_launcher.png
new file mode 100644
index 0000000000000000000000000000000000000000..fe054ec2b1b1548d7616d91aa0000098a8263ea6
GIT binary patch
literal 15842
zcmb8WRa+ii)3w{UTY%tx2X}V}8r(fN!QI^@I0SbK?oM!bcX!tdcdn1;{RL}n^z7c6
zZO5E7M%7v2it>^ui1>&A0H8?y5L5m<cmMBzhy5It*RA0IK%i7g?7OPF-h~f>`%g0u
zTbaJjrfK1o(PYi^`^=RF_Z|nrz5lq;wGTLj%^4d4MCPWIa~m3tDf^q6w5C|u<fWOK
z3x6gRH)ExTeNz?wVyshVqLp0X9`9zQFIg|+bP4_d^Q6zjpL2_ijURhY-3qYb+Z??e
zd4a)eU0Y8mLCCDbr2n6XuL=2YhobQ@DN7z`oiDCCpbR%y-c8-PbtR=a$0#>1J|WG8
z`H%PsxuMH)3qc1zHK#48n4%A`#qER7;NjIPG7kTJZeb}nVZC#+72odaa`h1NGW~E5
zdrdp0{mgaegzGB&ZJXn1?f(9rX%4ItgskmUrjeK;@Ko8PalteFuBYMjN~C@@605<U
z{RSsF7h>m?&iJNbb8K0xgUd4nLltHnQ0ky#&ufb&UznK}-XKa!FK5Q>z-ydPRKEz4
zO-}iOCzv`83ea4|$dte738!J?=I@88LT-W5;CoJv6mocG^j>Ozd@@dw+we0%a<$ta
zBk`8>vAUweg5-a{$1|CZz<@?>yXxp2;j%+@)$oFR&#8xj6$`tXoqFz`#x7@0VwX}`
z8J!N^O*F+;U@zn*ry0PPr!)1CXNlArpf$m2OI4C(eMZg+ONjVJs8ON($6MZ4U7E&}
ztTeT-!H8VQEO~h9&lJ6pvIElo6%1xXg10TwH%C_sPUHBZy{7GcaY5!6mEtQSnZ~PU
zp_SdM%Ce+3yDBze!)cjs@Nv!ev*lOVF&nK5Za3fEZY_E+aXmtDiX<v#omXiUCU3=-
zc@RWop_Aa7lHeQFViFz^dZlRBId23AFf5sUO<DF{r9!AgY*W7M3mDTqXSf1EZ&g{o
zXrzY1hB@_HP)_@7f{B?&A?~A$@-gWLwGTRhW?jGRcpg@C16*a^(W*KJfuQePVv1J8
zmIAL5=YQ8bJDK=0raq>zaXa_pRA|}~M^=I>dgHS)arPo)Qq>7n6~nu~d~X_FzJ>_q
z2dr6xb0E4~#h!Yeh=Xx^qq;Dus-rIUA9=6=;LFF5GOXqoEL;H6cj`;FI&J>kKb?Yb
zcBKwjU4|fqC3Yb&S2GuhgV5Vl*rvbN{8saKg3MgWtqVTwfB$xlaRfS%z=o*udMr}c
zQ3797T80yiA_uW#{;NvuMYkp&7Za$(a0xEpbI(L1SFr&3zyk1HM6xgm5Z&G=fIr#r
zlP(H00LTO0XntNiobgtyVb|b4cYa#pfI%`4|JIpGnL9i^Wpjg7%fP5#_K*$EZu@r?
z-!_mfy<YE2guE&|zgqUDp5?x8li?#N<SH|F3%>j4e&R_;9d;B$a|`_vA?lC*#qhu0
zevF<bQT^C)+T@Z^L&_3G4bm2LG0G@p^mGH!-;En205vp(Jo5P^x`C^ud6&XR6XpDk
za?er=`5#4EgbeB@_D1-nq`y>2K|mnx8gxm*K08_UE^@7;krpGjL(dE|XsX%6>#B`v
z{@Jx6#McLzR>jgv#kRHl093iw?i1@Cc$BkKm^U&Cdh!-eg@+4{JzpeLa&c$g_#U1s
z5speCMdxa?>?mgLL2H1{PT62ucb4AA@-pgb|M|s)G-_VYAOMIk5L>_`lz+f>2!sLo
z66By4Ebyj}or)EVKz<i|;zD^GZWzzDPwdpcJ$Y!oJ0CUYcc`%tOY$+MI{`;`I<k7a
zG?vSn2iN6tsm8Z&oW0te1}kX*iqidE>_Lu<j+((P>YjWump&<fZ%h6|ti%T6#^=To
zjV&+O(<tbp@^V%73D2rch)w&J3V_}c>kv7;>_P?_FvU~~*f;c<o;()$rD@81chb3;
zp-DJlK8WRMJ@ZSJBF~i6=!(kXuV9Sv+Whu2`}`JPcc>JW_{EUT-e2%k^Hue$+t2-e
zOVSZd_(Ypp>=IH9u&Vy}4cs^;!&5sctU|XCrg6cw(X53SiyfP#(FSL!W$PLML8Xke
zipMA4p{23Cahu#jFxqo(wv*nv+7W}n1FrTcfB~i+g|)`gN7!JxrT7KxOPZ-SR3dUN
zA+AV_3PgAAATQf;noVGiu~2OFKW42k5aIKR>L7MnYmF8+)du#(0rEmgFap|D)p4y(
zxsUEWqeE^ij>Jfe(3tCwUVaY{07yc_6#+HM02X3~Wt6fpb}!UUY^_GwD;pU-)@Vpp
z4x$jIqTDu4n@GaAO<7>&bWHA`P4LAH5-Hsi$tpOH3i|vv3{VpK7-<p%#8ZKh&P3E|
zk5w1(d0m>+Pra?{=Q~TQ8W#W&nwgHR%T5oSmRAf$`=TL6g~HrckeI(A79*^1`spzz
zbpCH)t&*yWi_@}PC9(ie*$W4@Z_VkMKJWtqAWc<$BI~EgdW6ei%gRI$JcrGsgaH&4
z02IJ84m%s5g9GXWRS#q^`qFWi#j@&yhm_TKl&{qDuErh-x$o59c?nca?v}PLeJ{c~
zs2)@~vcaV~F$33%rS>A+z5P!VL+!9Y3-k5%wGVt(8a%rulf7&U1aN3(Hh$+_!ffy$
zFgSjJki~CTqAZYwC<Kj7{NEtDcZn9a+8t?43GH-auwNlWxA^wrF9Jw~%bxG^B4*Tu
zEh10W<VqJL?l1CnO=#>cUFuzzu$63Nv;S0hKRU~%f6ZWK;#VP3IuWzTxcb0*Clg&w
zhd6vG8OInL=|&c<JNp8`t|Y32?X4Cvliz|2?+E~^X(2gzLR7u}rk(=p3CMu#RWl@@
z`c&I?s77;qBwILIE|UJC5TebYje`J|hVoyA$mB2PE~MW{-2JckTPjX1<=ux<Q}=O6
z$H6(KjyCF6M8D9x6SFx{iTt^buAK2!aYbjIs~3Ah2)=O;7iHj*#{k&`oh^APBRMI*
zY7QiznRmrlLS+A|>{1dNnCHw5tb|Q00kHtvXI2ooAZP<({1)QIsoFWKOJ&nk*2Zx0
zz+1qe7z10;vknUoo?N4)g8*KH8aDJ{_pILR9=IlEka>EBU*gU<!oE1QKi<qRbYebU
zm0mHoi=RokvAb?4&v~CpnVCDTibMA?3=E6*RYhn(SIs6~hzXygtMZ7tsk9+OnA(14
za4Tm1-53|9LcM&mtDEYJav!z|m!6(z+C@<=Qd-;kx@TelPWVUPm>>ZK$b=a@e9uD>
zflzdZ6h6Lw1pGsmQeXkob7Nh52EZ}2&<9?VD^pu><o79VIEId4ddZJ^6^>|}{f*bw
z%>qA0*h*HLYP&WIoxNIJwTYk&wa$|Yq*hv<)><b9cT09ORDsO}UHmq-pV_JgY6a?Q
zW+hp<W#mYKKzGd^SlnR;wbJZ;DjCwMIO>5zVR8QZVuSP#)3S6XlFf60_5~1DCB{Oy
zP4yc7DHxFoS>H9R2-}UiiW~YyxI_lC7fvA>)*m{0oz=KmQOyvji5SmF@LR^G?nYOC
z@bV0BCoAH+<In`x7k0m#6>$bd(W@F!K~p(afwsj}`f7!?Fj-Xd7buLJFA$vD+tP6j
zz1=Ad!)58%iSVlAOhl!BpB8;Z9v$HOSJY{~iQjH!8TX)gn}hQq*qNdQ`l=hLfBZ@}
zFmUH*z@{l~GT2*{PFB388feEuXJf~GCr|P28G<mg-Uc<4RkhtcH32usc1UHaWeK@Z
zn6`a*Zz2HTGL`U_<sJzw3HFWTg5PIVwH5;*z94anoTC}xq>|GdEdHSE3u6SIyMoCw
zcD`womDyRfS!mRF#nQQdl<@F#*r6!U$XiG_^lYJ0sBTo=Wd9N22o1;uo%L?yyjySj
zFXTXmQ1wfgwl=*?QHWjiBgk@*wJVge#67j^5c0RM&3AT8{wQ>}2+q9cOXs_Kgsw)_
z?3?4+Us8qJDUhdbme@&B6yPgKRPLae7pj7Sh+Z!fbVC8o1)%w_P7F7*-%b=uL~Kl8
z0mSbBL73@KnboftX15v{vC;d6I+{P@Jmea$SMY?LTwhMy|9$+!cZRy_Zf?_W`*-kU
zrW??MB&O)3o<4{q$|d9WKFU0n{P#5KRAT%L?4h8T&EX=6?TfdPB^#apVO#c<!RHB9
zKf{m^3i;g1eJ!=TVHbc9cjiArM$PV;SbDW!N1GPX52_MH|3HJ4_a2~$iptv#{uYe^
z4BrMH4Zl|8tEn(RSLW8yx9wR~AaJWVRD6l-$8US9o=OMpIST_QjAs1;vT)t-kdxHj
z$D_lG23t5NXfr6YL*RoaJHDU}a5vnbWaam|xiNT3GVWl1G*`dB7n3y9=PjJT*Q>V|
zqU<b4`qGK%TR$H?NC4m6Bz|uc>Q*r%QOBMfKB2EMPetE@diGl4{g$)Dzvh<DySPh<
zMpj`BQp`XUVL;5)GF=#!43!N4-~qq~oe2Qso^Hp1IIfs9BG4IhJMtu3<#&G-k?797
zehFTf)i!JLsfd(8%I2rn&WIwzmm^zrGWzl4<UPNESEB-Nd%fBaQ|xkXdDSF~<b2@;
z(xw`NWc?|5Afx*ZECS>TdzWsrDWG|o;{*1rxPT^tsgz4pR<M9kAnss=Vu|v9w8h*U
z?ce4fpTmNR^-KLe2-3GNR(AQG<0!b<BQ`ScN75*HUywO$weTGTpCdaoaC~>5so4W>
z1E+{%Hs_!g+xfK{mVj=VUvf`cB1Fn6yCz4mGpF20T8|Ob9<DPZhMl$VbMdHsd}0W`
z9}KVArA|+wlWR&1KK}6DVse%RM02UFeGyWmZ}iVHbl?JHE~0mB<M%#8k!tb46|)c_
zD|oOpYn}83G%(yGUPmT_K~<*6Ugf<lRo4>|3TJD_|FVNZLM0sRrg8k1mED~LQO=%L
zfF!X%$f1^o=%dau_G4(`XnszdGioW{6n9wLhP6|IlZJLe7LIbHK5N1QlHwg2T8GPe
z725W#N-?ZaB9(tUY?o&-0HR9%oDc{odf5-jIeoX>U)tV1EChbgP(lJa!OO14br@3P
z8n2S8f?ot}R^v#8*X+D%9woh<-Lu0iA$y8_KQb+k%Ye9>`vz^g_>^9*KgYj7GDjjf
zG<u~Mus9YbdbMF@SnOwY(kDC`=KDiy1hMUMOeDYLyiWZ<_*TX_ig?8Ge5lAXU-<bj
ze08`b{e`*ze5>&EL5CO&tnvpDw09yaYLZhciLV=^54u%|upU?l&b9ayh(%_7TGF;R
zUHv9WiQPpgyn$~NW;y@3lzQPA`61MembhBnQ_IAc=gn84&#ETE22FK4=W;^jN>Wnl
z3be0kb$_}av*LW?QV8Cl>Ej3`cVO6nhzz2@gk@QKMhR->PsOI6C?$GO3{1~Ena{*h
z`OV<&8TRNAtEV>_;d;sU(TRU$Z<fSdz^#-iA0vt{sDU($#K&qbzWpN3-ZHPnH=_k8
zmmh71$W9&*coYr3*1H`a6w#aGd|3~ciMIqh7a{6K{#qa{v}hccYigkgg7A;-b)Wni
z;7`h(<;qEfl&JqulK)m@>^J4}u>JHmvWZwS@=GE<xqdKFG%Uc$IXC(BM;TH~wB5an
zPeaAeg0+LHN9!9@;{AaYLMrrtArS2G1ANwA5+o2Am#?G?1rWsUkOktOqkrMi0QL4{
zDZjqnIja5%{*O!M77tw1EgLH7izX+j2%~e4T~LN3Xte6n4RnW^yqrS-e@kRk($crJ
z@~ZBYPt0OAFV5CZP-XR+B3K-awPhTVDMT{FN*NXRpqG!MU^{ByR&p`i>@7jW*Xy<&
z{7G0B;r!ra+N%Q+&%khx7*2mRIHBoH0s6dXSNX`?Hh*oSumR0s5dBwxK1O`n*4{Ab
z<dL0Gc61Jm5>!1!KZR5afvF`F8#iL}sQ;w2A>{f|rB@{#IGy7s+4AVr&Wz`TIKKR=
z)5jS@*zFLDAx{(rBe)A4NT<WHXc%+-Pg5n-0H;XCO22+e(_jewDP?k5b{ka^P1!ju
zRmC!-w!g_>Dn**r>TdGK(ChPdT7jaE^)4aCG0y-!MF&q#HQE@-jNT$|=D`aNq<^5n
zh)5-ll}OGNR#=0+yiw3MX0h0>EA*L&FI!wsA$SD;(E=l()Z`45m8qgQ3hNlht>R4j
z;&RLH<)Rz+O(4}j(J0b$c}_^;^sG)^2VoM-fcb<jPJ~v8{RxgmM=F9}-t^q~0(`{X
z%1J1kc_wTZqiA7&`6@`ZclAqJxO_4HM|KxO>GPmhFokKc`yrNgY~S?3?`xzjq4HIu
zKs|2W-=>~rBKpHJpR?gELGCO8=*2r;<%Ai<v_u@6^Qo|MYtyT=_}&HMu&JaZ^xxs)
z_~zvX>7(fur_(yy^26*F#<Y~a6tT3vy$kB$j^^LPySl<7X|h@GJkt>3Ny90eIlmi0
z0_B21paLcg%93%~Oy>AQQ7CYKV<u5aauGIHtIAxqxYP?e(wXtS-_&*?vP+o!no`#y
zCuTXb)O_9!G70w@<jU-r&dki^@$Ds|p>sEJ;FOR=2w`LE^u<>I*kJ-7LM4xJ{<h!(
z-IG(U9;@=-*zwB|h;Qf5t&W=6QQm4OamTo48p)-Jwb=`seoeu>g52&%x!h^?*mZIF
z17n=9pyyI|+3Yi%*Gp5H^U04tY_D!#33uG_Ed%Am6oXu>G;!yoAmU60Ff6|ia`;D@
z4=vSmf*{|SYWp-K%tl1<vdU~Mo3}fK7N_4QR|i%8NM@%WA^_I?jN89IMlncpt04M#
zQX?9cf2AMoc0Asjm5iGkB}=zK7N13~er+kZo@U5=oV7T93kmF+E(^wwIjw=m{#5f0
z3F62=WwVeCK*t6w2NvvQ+wI@awk`%$Z?3c3=M-4vhhaM1%3H|q^zCDL8;R5s|5n=O
zHb=`Z^xN7#&{83pv4UsY<j<Sg6nM??amyRWMlpQcnq3C}9^gu=L$vqFFNd;HXd%6G
z^d05Frj-LlYCiR7R|F>6LbmtAKg33<`Ml#qt~)hEd)?xhCE2~v$j6x3z!hP?Vj3fo
z5K#f$=hYr+LknBgGs(YriU5CUtZ%M3THvxDl>a8SZqxGlVJ;B_UR|3XN1e=-VK($J
zeb?a`LK4)f6`;j0D>_pij=vja@&;FFYL%Pm0>bX<J3cZHxibPE+08c$Ln0Z$Jv2`2
zNlv{;ln{W^GxrcHcxZc|VnuP$JQEV4lpPiPFXzJ2^V0M^y_#=<)9oXVf|&#5eu#Xk
z#vkYH-<@e{P2Y0J^;l~w%TDpnejrz(8Wk|jPtZdHauuM_I`Sx&U$ru>EOY3%*{&oW
zdDFN4avaTmz%BmR8khur4^|wI6S$iPN#o&XRouJ!h;?nAN#ENX=?yezf^h^BCwcx#
z4Tu541go=yKbEgakIn6>8rkWwd|NsraDgvg@Z2x}P-0VLFT2y;XPjLv;H107uA1M5
zkJ@HQpx_sa_D%V#g<frhmWv{ZFaU){029@Iz`Kfvd^nP>CQ(btQs*1)VP$;POzd0s
zdzEhU+k<1%^!zU>>_aV=Lq>^M))Xq@7TsZ?r^3tbU09$BP0%uXklEgE4jK?;f(N1>
z*xlL(<{X=P@MF-@_MImw<L2W0x1t;s@lMDr14%D5QLz7HWjdq7M90`#53=RnCjV+u
zPwoaiZ+u+Jy}0P%1YYZ$U4dz-s16mk<<Gn<xXes^>u5<nRR<ejkTTaUI?hqnbz)?g
z91-9NbJr#|k0aV>c8p*zfc-;(`nGLi%Qv?2;Estt@4A9UEK+EAYtUk(-Sjz+81O%(
zW(IPLQfek3UH!GvC*1L4e5$CUc4B3Q{4ySOU*aR-+mYG?P^@b=Up*kgJ|ZK{+Q1@y
zAL1%MBQT+n0nl5G)NPHG?7kk))$vnwHh`Zue$^Ks+RTmLs$<h@o&P7Bac=)geg;nG
znAJ4gWe}koH|EQPZ3JDCGWiiG=Y5H{_QK_bL(j>PBYW8z+gQ~0W;&DA)OE*wsLuq3
z`B@Wi<)hrc^U;J6?m1`lu3lD#(_H1mf1oTugkI<mek)48#z6t11;1r_*B2g`yu<a+
zkg=(fq`%00#Fn_U46fF!z`mTV{6;3gu!?=mM7G0^XES`8b+wC?>1wi)UY<FZEB@G|
z{I4DrfsqaXN-NR@b!rMQCe5UG8$rWN516^rNYKE4`d<LyVXIOUqW8ZeT+_w~lt<S6
z61_Cxa8VN!Lg!v595(C{`Go7kKN1YITBcc*wG_rqy0n*epQj=_s_VJ*Jy(fD5YPCn
zEa18Fpx<*?*e=;W!!v%rEwUv#A6|soQx6g+z!9i{3go`LyrkHyfTK2MoFBZ}{WwQd
zI55tF=jH(aK}9GfI%@>8lciy-MkKs}y^a@>vs08+ywe)qK;u3&vRtR^gTX$z-|UOu
zCaMf3tOWf~pwqW;YH@ydLIT{OT7>>(!V?t6YWkfH6i=SPbwXZyrLd8HCc&7-^K*G}
z^(Ixyu>2JSOe~~zPv5U?3F*dax^RJIStD3L(%`hWsi^O2q53EtJ%-rL=~dL#g7*UJ
z5R0<^mc0~(@4vCznRPFGV0eo3m*#B%)A`3h;UmtCGWPEQh;xRZf|#!78MwQ%o3k(Y
zVGA#@KC^g)=ZB(Vg~*dMs4Swz70iZ1jeoI=;az~G#OBh`oJI>lZWPU?67hUI7@ElH
zqW~ABAp1KI!%$8`TtPb80amtP1^qwfy4NxKD>Fl!f`e#Uz??K{10C6bbFAEbA=e6`
zyQvoddMcaCOE-4iE5P8E_iL@<)WS+*O<V8u&Sr^iB57s&eF2JtNf=Zt6u?A4cE`k4
z1r*%SQF%f6u3g1@@u$tM2|;6(fm{g=9v~!ZVk3j;6?uOv%PoHqI`pm0{SpZ=J<D~9
zKnuYX*Nz2nLuBfIti0Zz-6$ipX=OcbU%9_gffv6JcbNN<$FmU`6qiG>{b7-a@b||&
ziVzI5biuvp*_Bc!=QDj?XKMB<Kl@znKV8bMU45r%<>Z%P$g%QxU;(Ud%sk1&IqmJm
z0@*Fm;k-FkoD!nI1|V=25;!8##s<t)msVd9n;+9QT%X^Zil``OOPIDpJX*sw`y4D2
z?bdg_zAEg7r0!x#z-C2vIUX<BEsXpx`l!j8WQqiyKWT+fNFXRc#L@onppJSvbo2On
zqN?k2icoV$85y*M1dx`9wfWdwIdBjmIt4^JG}U&;13~C&t}@ll{5)vR=@~F`f#z89
zhUyNm#uilv^Fc3-I%>TvHkO^Fn0ZrbA@<0>G>_n%{enOVdwAh?>{H?#!89tmB*3Tk
zY=8pTZjv{h9YCIt!UYP@Ii8~8?@S*r0-Zgddjzdn*oK(Gq}7Vtfh((dwy0R}E$Q|S
zYx1m9vnP{aXHh7qucugV<arXDNp%`4I^K5PJ^UUJA|JV7SX06)^lO14k;{EW4*M3$
z7!dyNa}&V@QVahHTfqS6lxOR+_WQ<30b>HL7M`fU_Ah`{RKT_gg#7Foia)4s;XC4!
zNHLd7wh|@V*#q{bt_yVvyRtU-Di+}89#-neMi82q4ayx3xsY!tV?qHubV(`>2AL*f
znHVRJAT59&7AMnIu8`)zx~MM084ua7U0?ku5%jrRZ9qFTbt|$o&Yi3<u=0zAkIJqU
zau|rw`s<s^O|C%?>k~uGX#?T?ftI2$BwD%0H{JO~tIlrT)zhfmAx!h0UxD0~ja&;3
z^kj7fz$B=uo#0O5WU?cxYmDpX`fI@Uekuchn$s9XglKl|AWOR#VJ6bpy39Y8FIY;y
zh9ph*+8;ry2QW64$KYVC%<Sgr1~ZP+azvqwld)hS5_lbCfLSF(dI#FTmJ1fx=Vbs4
ztUCapS5;g^W{OHKfUP)lCY%S(<14$CLNJ}SlQ7m%QJwO5Xqmz3zIAI|>6z_2ekI}#
zZs+}V!u?@)aM?}GM>aj{(5cVLQKVA<?osr{ECk@Cn~2yGWdP~l<N^hhR5ji=yZ+W~
z%)B}W*CVk>x$m#1c2Y3!Fu4Jw97Iy7$<yQB1D!EUmEmOV9i11HI(sWu+<A{GI|^(C
zDV{#5Gvx^2dqCLE;QLb~S8m^I9+EYH2v|bLR&xRDt<5L@GMdkY9yFuDqct+ABM$7X
zdLIBV$Evmu&p{X~!g+61zZ*=p#CY|b<4CUJ$6k;^)J88H@8<JW!ZT$|mj;6gy%LU^
zK7tA`$0PP*!8R<H`%%3)<K8lPAv8BRvZsYRRKi{$LEfmVi86S@BStS=+Vz-kwm=jy
z4_{RXeuW0gw|E`SHuXPj)s9bDvdeg_w_(O!l_30QCAH?hBb9eb+XoyRC;))J9Wik^
z%^yr*iV}bXLD1%gog{&%rxurq5-VZYnl)WA_SnIl$58*WUfBQ|#?b4J6`CG@-NsVW
z3k}Al&&8D!{N54$Y$oj+FQAxIG!BsV!A_q-%r{Ys8$kVx6#QTs@>^@HKDw%yFxHS&
z=7q!Ih(^mbHQs3$xTW3%_M=($=?hdPNF(>&Cx`fa6}rCC$uCOsRV+?F)re=SGz7Sf
z;WZpU`4{Su*7J)3%-rht_c>V6h<~X}&Uo9yt|~$L{FX^Z?DnSOIm+n;NvcS8Hx`41
z!>flTh*NZw7M|S?%lPxK%MY%qD<RhwWvA%CG;}izI<pTZj+!9QZ6%26pOpZa`^$d)
zwy{`WS$x?NQv%86!L`-;Rlz3~EqX|fb(Ar_zVI83rHAH#O_*+^l2N1tjC$R7t$`D|
zn9zcx7Y<DaM^4xCx^PT{wz$bF%2Tl+kttCR2!PXHJ-o0?xF4R;6)+EusGr!B0Y{>Z
zBl85SPJYkEQOHJVeX2DJdZiTr%<G}MGnsiVH<u0;w_YPKm%QH!)E#KWon{s$ZJ#l7
zWg!%|VT^!O7=Th52FQi$6u4WR*ktqjS!-95f;2HXM@Hi8%pjxqxA>X$QGa~=5I$F)
zyOO)VRLdyma(?SEBB8wWHJ00uJSZQ>rdP(WO*C6RAPj`_0>(?pFE;#Vt++_w?B08S
z4`z(HG~xPTzHn^oyJ=&?`+9{6UarvTo=p2DES&s{<`At=tw1o3d!Y2cuI5+bcY$i|
z>(9b|UkGL04;My4rv`Yy`H{&9a1R@jK><ixq-V+;oJ7G}ZQco@j1W_wZr40X%|d{L
zn|e9;nVScqNCg`3E9u(8ruxXp%Gnd0(?YuMVibVj#)tDq{97n>q~!-y*nI#CM8^r9
zTVA%$Q6dvI2;yaw|7LDf^8*h|AOk;u{X)(3Ew^3Ycb_V59)eb(DGXp*{fHOvZ|rru
zAV;zZn$_7p1N=*bGh}dq#9@o=<)sG*m6|Id+1X=n8bK1ycIaYFdYi4STd8-3&nX_=
zz<5luO4!snkNUV!n#lgjM`sYZiBa3X!U6xSSD6Gk-bbg8Zq=&!BJJIknw@VB+&YV}
zK+OA)piI;@{R{XwWD5{JL1&e+dURXAfY&>1kleeqM%Bo^KU0i~I_4xYD1q#51wRel
zKmOY_3BaJ2HMQ9t7hypT7C{OmW7qWssK;SMwhGezzyLOF<is9p$)VYHsveSX0^jq6
zkm$3BrcmB>dtO|q<t3Oo<;w3WZmdV^x{d_j->bOO9!OsQGO#CoZ^~O-`JNG_*92%L
zBI9VNkcCQ9q8DMb%37zqlnLZHfd?Ylq*B<6-G77lV4&GnP9{R?zd->l!lh$bO*@%V
z+8K)m&VM>imVI0eS)&6@d~_1p@lAl-<zt8jy{Jr&5>|HS(?xs7PS*5-_n#~aa8*`!
z*1vjVyOk{fe}~K>PaX1v>(NH|V4jTD%O)8WsnZ3m;d?GXar|!BEp)5(pU1v~3^mJS
zNCFRZ472;B6en{^@FIDt9*=%LV35{&2%7)fv6Cw4cSR>ZS#(Jo$<8u?Xn+{>a}_2j
z78F#C;Qyrtg1Phb(p;f(%<sPI{6lP(cz8CM<_GcKe@~NU=JMzn>ri=1EvngMRctax
zOd0(rbjd@Dq<E7b#~Afege0tUj8ob}VYA4N8}Rxh0F#Yix8)Z~H(Lz8tL6wCh2_6#
zJgc-J$1h3B@+|Qi*_=#qn%_tW^pk{oR%kk%86u+7g2)R}$$x}p^BPxOX};6kG!6M)
z>p7X<wTE0{!Dl8`gMv~#0|0*uH5giXU>%$l(`;=ec&%w;;GCE+%fnlxZe-DSe9-@8
zXL=05*4o+x-Pip_8VOMSK!+o>%+SI=YvlJmu6$|KbSQftjI}%L(1_(z{8_snI2wyH
z0C5~>EP)N!|7u@GG}_)>zW^6btjs?vJaiw^Q_jy>C9hn{uc;{;nn9vL82M<&H%2D3
zH;_M6+!{zb<S}%)-~TInDc;Q0PrxqLl@s!1Sn~cT{_0>k0+U3+1S=c?A)E~f=*_3j
zFHrJ2(NDiiHgy-;mNT=2#fvc3-QG69re2%^!g&cs-$M#F+h?KtVd^o_o6)~S(Aa-$
zjo(*RPgjpcB;4i=k5!`hY_Z4?AOK~E!H-x#KdiZgl!*fXtYqmtJo;@A5mM1AaE56?
z%KwGOELy675cXMs@^^`(-bCG4G7_tH5E>S&vOdQ|-&m}k7{%l<wezUBosl+l{J$sV
z2*f}zUCBK|0rnra4zEfaJ*M7^*>Gjl;SRCUh*Vi+aODaVk*iDjJpgmw&JXD6Ew5TO
zR&>Q;n=ht^6R~bShI07E0ki}P-lJc`kM3|(V?KqorT8*0)b`HyiN;M2=A*{b)ZJSD
ziHEx*A^9prz9>8L#(%%mt6HC+sYw6>SEsM_UzFcECl}BHE$(9c+%Ih-2^G$mN(enX
zfPNZaaSZ8BNq;HBl3>z%Zl8#NEj)oIlD%kI%#pmHKmNGS-c5uFc5T>8_Dl;ISkJHo
ztN=}{F&d1}=pal|el{z=JJM?XVzq*@LH%{*9U`JIX2o}wD0A|$$uYD(Ml`)ll!)Wz
zL)ebi!*~P2Yd%q`%Ephet$S!pDKF*%P0{^y<}}GnCFalwOl2%+btM;{ueeRl>t$ct
z>3{DY8S@O_!Rw?V7WhW*bM1q3l>!omGe(5mdvv=(FJ_vTnmZ@gS=XiNLFBj#3AuBx
zCADgcKsSPaIQKkKLlMwDUbFT_^^q&xI(vpZbhN(1GY}x5QPNG9It1G|L`lv=KhjFI
zr^cANgsc{Z-{A=)>Jb9AiVf~8TzXF<>F)mQBI<di&$|iZVNnGf1qPV{_hZRg-Uc+l
zJZA2%3wi%Aaw5C+#aXc1!}J~e+a}?uLBTB|&Pe>(7;Q=Pz(}No#;Ux<x3&U~QCwjI
z-F64Wl6URWHI=pJ+p1Z9oLD|~A?kL2hn)QvLJ?jw8}1_=HYiPswNLKIsaG}`lZDhS
z#uPKzXyz5^TA4t&63!g&=lxGo{N<a*j-fg4b16aY%$ku?VMp0gvR*rsdT379N(5}+
z9B<o`qsXN`F%40p<Y7O=n+CYEs@0R_QZIX`sXp;G8J8-e@KnKb>$}Zas@^D5aZ!1d
zXJi)~2w`=WXIAhBi2f;R(81{;`iBf^mLmcs{2U*~BxN8$@XrwD#KU|smv9pc62i<@
zO)J`lhS&PjDM@Waej(OCv9i+w#4cB%kY}Apx90(1y1MVBE;*|#TfIdBgNAT_AJb@$
z<F(E5{;c`5;T!0@jbV3z_*56&sp9)rm%;-mhJ)@gC<7M)W1pAT_v&if6L1+1yT?C~
z?6EYm?wVS1`{#hPOBpC<)h;tWUT85)bJ(ai#!iDD%1M%2<U~{D%mfX~pJErHd)`)-
zoMUc$afG5#Zfc`KzfZ0Bf7wajF7UV;-Eh8kobC@BU?NG~6!6bwfaso%ID+hHdWo|i
z|4G2@*NyjMd^t#L0wb=Ixf;Y8rB`HHmo2Mxx)=-<2x$<mSiV$^=)0K^m@@;;)O(6N
zd!DgM!7I`FKntxKr^zt+`(57~vbfNfK_d%PL)+e=&nk1m)Am~zp_NADYW!PSSGe-Q
zHwor{k}B@nJM9|k&ObJTK67_28O`q$oLeD`VTqIK7z?wQCJ+n_={qb)NE0>-XEft$
zG?YF*9I2ez1zI`FCNp__;%r)Sj;wpg&ft-Bf^PhOj{-+cFh&KbU#4K0g@w1HH9av4
zN5`OqGrs&|y@mKcq;1pfS}B9sCGGr%hs$G|V>fX(z6cAeY8@UJ#e*M*H!UWSc8EU>
zNVN5`2hEy->(7=lPUaK@Up+IfPT5jrkFi){;4Y_kc?I=pnP9p{<sybAT_m5*8M2dQ
z6tw%@du8VdV-wZNhP8P|XpAEbR03Z5g8lX&fikK!6CNIk9E4N6pPOt#Vmq<Ex=T^H
zuq!(9Zyj>klf1!rA;}9fhb=O8`Klf?0CQXb>IlK-g|Jnx_Vqraiv1frl}SCnoL(dy
zaR9$&V>u_1^^ReEj8_P-{KL8+?Gs70W{Elonfu0~u`&C&;PUBOb{{|52Y1`t7s$rz
z7V#T824^#<)h3~UD#_!VX@L=_>zKDyK)Bp7%>E$~J1@RIGj(ERz+-^82Z|Ch7Q&mg
zj>q_akl%VR1khSLJ&97d&~7Q7n%UC+8~2Aci{#F8x<=;5&RFy7k^ylyl9KLzvE4rY
zly{EgO%gl_>)N-Jb+PapNI=m&56b`5F55T9S3vK#;Ma3svxUz3eBG!a<^c>noUhwP
zZEYMPG49K_<jUB~$ecE)P-ku0_BJr2)Mmn(6x8ceGf_}Z&@X->D~rxAUOB#X;QN<*
zU8g{NlV{T@eNCuZdaB-U5pYU+ttDSW&HgF;V9roF-z@LDd?A1X2C;3>h+Ng!@4*=y
z?8!z}SY{udr=H`i`a&+`q|1HIo{K@)9s=iB`7^rsGYr)noy5ih<2x0~;U!#^X4zTg
z7Uv$&b;bHeE_oLdMA)uZ+rT{u(|$62N4)Z{3o+wpO$=*t0EDv13`{4E;+;RUh1utA
z(aMdpku7PXe@Q;XN}nqz<#Hxcv1AmIu`U>~(e{M;vp#AaT|H!t`srgOfgO_0nz?3J
z21VP%QynjTLyxz9h{)8`BXKN~#HBthR3OvMeEInvrv@UflknKRx%^o*NF_>6r%!Bp
zCOEl--y1jFS{9T7094;0fMtX@H~>5N6Lw5LmNZMBpiVMkHQR7Il^V|U{kN2~F1O(|
z-gE7+YHpF1LH$b)8Ym$FiN1zPR>1*Sr5aueR}L={Xgs3zcsSAhMHVTrmgCZvMg$*%
z!C8)*N&mK26Oq(%u>=r~FZCsQ262p*^#Oii0}NxfW*7w@+0QJzeB1t!t?Sd&N3)v9
z(D4oH@C{&4I$*EB`&LlEvBlkDO={g%eI}QjoZZ#7;C5dpC3|Ep{*}eL(h$1IV7s?Q
zPRRwMbVQSFA9O}#YYEnu`Bg-!s21Sp$kByP@rdA4vW;c$F(vS5c-7-}yyU%s06VfM
zJat41IVa^6?u^r^WC|D<y7MFR!-x5KTaRt_MJDY09=+WW-eU0X>vp5_#-x!kmu4AZ
zi%5g-2sziIe0mtL2*KQq&?WW5QPVNXJh!CQ`A<Ya23L*o6Z?Me12ph*Z2kjs-Qj>5
z#Ou4J!73)K=<D)gz96D2E|}09vkoeje%uAgA0rH%(B(LN70^s_9URneJ(CkKgM(Z`
zi=F79lJPHa8S>}X>}W(~$*fNDiL{6nsu+3{^BAJj7Y)uBe1bPx!&UOCcx)3TFr<HI
znI=!gK7`s}VPW6zlaO#sF=}SDnQ1pDf1jo((!NocU77PY<Rkp1`z(2k%KaQW=`f{<
z4~^qiw628o7iX23u@@yq9BVTpCcv!}6BeaNXq3D7y8hVl83@Kd|FDzPUco|q%Px6n
z6-8heJT}#L`REoS@|+AM!Lp`ANm#0Rn!mgm#~Av#k2vQa2j^S*<C=TD(SIQP)rjQd
z?g^$qy`}HwPvt3X`T1)Dn3ss3Ya&pbUXJTuu4syBGBt73*R^gsD@1E-iQ)|-jf=}e
zic2(3y^l`O;lG(CDK}!K*k<hY0AMmq?h0JRf0HJrMDg88V&><i)`>E~x$q^(z(YSq
zx3(5!l^1Zd3}wn$JAF+OWwH~O1o<v!yb{RXxVN%K?ICf&V6ia`&k``Y4szhYJ}&d?
zB83JAS2x`-;7tB|56@H?rm@8;6dSH04$;B1L>`-ybkaryS`-`eQ9W79JbnJNGq-ad
zl;{o?lHt?L_*D|Yrj_z2MqwiJc`K>rX2Q;eue=*(5rbO9NUq<Z{hagOW(`mP?Qfqn
zv&*+4caeG?oQc2z|Imuw$m4%g%DC(jv_XT@#yF!Gzn*T>6mp*L(-0f(z;^!)@)|6e
z73P3Edt7%#Ql>VEj*CuBrO+#!6>8q?CT=t#8+)yTQFxP*D1nkwiSi8qNWKc*@qfM?
z(-y<I(i(!fc*OacO3OsGe_mghW5;gV)4|T*YA7MZ85usGEPTZkv3Tpmu<E)E^18SI
zDPc_*KbH3+DE>*yM+S!H=YeiS_Td=ftitd3CgJ2scxX`%YsDirvXwN>`d_~mA9?)4
z--sSjWk}4sF_;+f{J|C>N__bo=Wev(E~A9`r>m@gF6XGf6nEVxBfn+ji*=V9k*V#7
zNOj1A3k_rkE_aoxgrY-=^3S})UHFN?^59M;;pDp;wJ&!xpDhOE?<pTyn02=x8=X;P
z0JfUY%GT5bONV7rO8UUEL&LX*YWDhT$Inl=;O5b$-lLe&J}_OPW_*Icnt7fC8ecb$
zU5<kVX-~A7>v26VrT9+)-^}2epKBLGx?B&8X6kjz4s8Z<Cu;pNJcBpRu9nwWn($|u
zz5M=0^-qJS;1jCV@u<RQ!MI8h<dF!04=`(nQXvQQq#DIU(Rts7^tC;{p9*;L&|0jL
zXD|1SsT8DdTUlp9!uFvcPoeP(w>!JI$~e73o#~x-&faY|uj(D#WLq>0pCl65iU4Hk
zia$Zol5r+Y&W6a0LJ|&qa?VH;YOt86T8?>Y<J1}bCX1NoXvXLTdcLE9oLtVGS(p-N
zYLbVJjCHt+RDTdjCaF>T&^irM8@ZHJzMJb|6YvLK;-Y$-KcVjY+gciv)0$Zv3?ivO
zkk59La*8-XsJoRs#KLLK!2_1jt&xV7%Tv|Hop&icNq%9u8Jy0-LA^Jh92B0Ld-<%%
zt#c`O$78BESUJl(%!bUcGNv%5_8biSPBu=4hIQ4DFin!i%c?R<s5+eULs*#}lhK;Z
zej#ZeT;WImFEZ}NV9_cO-Y*faKh)vpAw8J|I_y=HGM)sFIsF7z)}K-JtFEsXPlr8j
zErB?Gr!j+v7MI=uX2XE+GplKOUdu+zX7SCPx685j+CylQ+v!2Uo0O8TQ`;5127@kt
z|Hug;iF$d?XJW$uw}6-0x<sOI>Uq7yn-7Qltygt&r_J%W>99b4I8cwD6ME)ym?5jV
z?Y*Fwe^)F<bg7Zr^Ux&KE3w@OG$<lau|vy%7pfw9c8Z)u65Sn#9rcqWEOpo;FbKz$
z-SwQ7&kr0~_|nvrak;$aJEaZ=;ZY$D7f@sV7bzC?jf%3?VCFcGQP(6WGNF<2Yf1EW
zA+AkUtnUXk+-G?@jFQpT>hvGllpYfr!5?xWBBrgy>03NE&}eGf12#D=`d1VNcqI(6
z4Cy3Gx$8mW%8GadF#Bw}MHfXqu1ZBu9!Awke~uuQl3rCx5Q-d{_v=vg#`^4gqg>v#
z17_%Vcyr>A>^MvDMOGvm`&w2jvLGo&`GyG`)(VVNKa-ZS+B2lJvo-00Cb!B`#!p6X
z({Go>%h_=?5Yh?b!{|7sBGdjkf;K2JHhwm<h+)$rjT+;lY#U@QXS_u5BYZ~4EeP?L
zt+Jy_W$(;u{y+H`b>d;_q?y0Ucs-iri-b)LIu(gRRs-)9Airb@FPpsDy!6ll{R+%A
zy<)#jSO!s-%8u%C#5)0_7}+Rw{&>Yt2JJVfAZ<R=DB47m0HZxDLsi$kPeRkHsU+dd
zqlJTlrB3S?mI`!q-}GsGd+|R(<GqEC$u8=Q^^eAUf%upu5XwbPEusb-J=`wO8RkBB
z^dv2+Smc6-()>i|Q-C#K;Dbxd%MlwXKLt^6?jo@R%^!P>lx=WjhOz_Zp!tL~pKSv6
zNF3meiz|1;CckDWWf~f3lBNIHgRaOyB@Tt~Z#09$a2{vxlky+Au>Z+Cwc$L8*}_`W
z=XI{vFg7ow5u^v5N6|f5G?~S?wf#LGazdv-7N$;2Q!YSB`(O5Wgywc`$$w}1Qekf6
z<F`HKQ<v73TNY2x8o$vQ+UcCvwTW=O(g_<aZUY*OBtGIOpV&i0d~|Q(ko6cO%H7%F
zgL-tNoWY15oF`b5U<0d~xrQBzb~-uDX<Y`%O|?1i!7D5()0w0RvT_U~+`eI282Drl
zMc8UoC$R&E-YzCe>@aq`$0r3(q5ao`tCO6p?{q&n`g0wxuE6!H-N(NgwDWGA)BsKL
z3UM+b)?!KnrRGdeR$R{B=(;9f?J<e=CG8X{O}-y>$uS1%4oF%dNHKbj4TNCG+4cLW
zv0OD$EctT~(Z&usRV*kk4f)TJwYC66I|h=Rds^{u;B|U~k0CKGEYqQPUEb<ZqJ&ee
z@3DQQ_?}j|R}B=DfJk_v4ldvLh1Hhc(yDg)#+r1RYxw7DeY=0n+&PhoO`P-)yCV{@
z5?Bn!BO08J{M|&CSl2+T2Hr+ltf$>SU1D}*NsX11k7X}N{eAH(;y=gB>Fxfe?%P*E
ztP^I{?EAm}bEs7aE(<H(pG_=()1tIYJHAb@7F7v@45@ODiP4gXb|lzV4^p#Y%;iHy
z&dtqY$K~*+0}*KqhlYmBR~jhX54-Gco40O3D*t0ciD4_@FrYlvgor(Gs4^{`U#J-W
zh0ODt+H3tK^!V*0#t_(DkiZt>R5`}hjspwNzBoHkx?O%t2mlonM0>RV9a(Q)2Tb(b
z#?B!!euf6`;JIyieQ-==C)?KJZ&4Ob?Zo@M?_7{hxU?7<Ga=uxk>TAzp}N8fVh9%-
z3Fmjgx*_-Rae=HXDi=bp)qI^E(<&PJCQxN4+R~4H#d{3I`bT~09{Vj9!n^}{G)$h4
z#v(|oj*6r;2+8L=OmO}Of^^13308_Vf7HkK=S>pmig!^R8ajBF@3$qp79J@7*D%o^
z41Ytk)2YJ=CoiD=4K@4lV5EToU!?^e0x05;7`_a}kcY-am2K!hR#~k<umlKZf;@&Q
z@KJ(F(`4eBt_y@ztbv)IN%V5i6qZ`QzTO^gH}rYQkN)wJtHo%-HTf+E_@s$BvPvJX
zu!;Km(hr0md6l&j>91m*__+D_gv*(+P%Ge;do-`x)N<rlSH)GKE>jfXnK`RF^!|!4
zw8oexnwse)IBrev?z0vC4oBI=Orfokk{b5+35YYpedQcqQPx504H;44qO9Z4y8HSV
z7A|mi)C)TAPaGXKUnS4sI{~@AU)XL{Z>l&Nha<OgzW+Ka)VPXq{YMnAr`K%%oT-v3
zHJ2q2l||A<0>pj0TA8#f5M7OPloRZ8r!vX1EX65{JAtu#PlLd2;|&b_@l~vel0Y*?
zc`jHPBY>7$CO8L$8Tyz(nZ8k~_0IcO$?c3yp1$UpHi|%(HNr}G+xwL5>g?<@j_uAl
zhCF^YnZz|e(NWoD;&100R%ks;Pv{kPMv0y!O%<2iqVG@PqmtIdC0>W-+AKR>yA?*1
z)`(O`a<lV)>Fht!CSFnfY&DKSUXi}=jo;}cD<f`nT;gNgwkYq`kM8t;r@s|IQ5sTO
z<+}{ie~D;{mWRg{fcX@A4ZAYs)A{Sm3rARO+|}ITVuLe5Y?2CWZOrAG-nBfFLf(Tj
z>rA#^W42sk!P7b@YGy$y0z5a5!7&=S25Sr6FKwR*XOFhHagbP?0sAcDAQBDav6Bj6
z$jf|NVW;E^Tx%5>)0RYV4rYA>=JRvv1m(EtzwYe?hRqMZ^3|>TkhWms=H1WQh`}^0
z)p_v$8E`jt=hiZOdEbcz?`JA+1IOPb5?V-6l7FFv1<3hm+9f@zF_1_NNx5HeSvZ2D
z-|{95N^!#dLm}ZI%fF@dY@24|EpieH^`({>Ijd67<Kb4VUKtS5sW>zs+&-mqppr@m
zK=_BicZsKufbwKCbUTmyl!?w?Jzb1n5C6x9^(<eYw33OuxXi_d>9y&c)_VL+K+}Ns
z`e>FTG<Smw8(h!R48@J*q1;EeTs$InfWhYvJPLs)%c89g3=-F9#6oUo?ZYB9VpLb(
z8i!7wAYasrj}?vd8y@LX>CQ#vl2M88AzXQ$P-eA4P>|CO(uiHwmX|2kiTOCW=n*Y?
zA^GVO9iL%0Ekh1J-KQXMKe~p-|GrphLgm7d`R1fD#xsK7e&?iPzn?Ff8h)MUo_srX
zxZd0TsgLWkG$(12#K4?+{`wowJZhEsQ~{nMniSfq=}GRreZd>+vc6OF#{TfC8CWcO
z3DV-`u-B11ZR|W&Xwg3py*08AGNwkVk~^8K5eU~D`DRXb23UeObJf0;d~t)#@jM_x
znd;n_167Q*KCZM0D*7GYE{6K%Y`8TgA))YFC53v*?P9T1VQN_C_5a7zzvt>fZjmyi
z`~cD%#mAG;$v6ItZM6*?{Ao=xY&03{N!|7iy%d~=H-Q4&uCo{|j>EehPdOR*Q-sS6
zkNq0fC|QrHjf7>JJMSxe(`G}8R>-u7y;YIzPpvPD8mbFI_n~D&XdOvl)1#|3{8lcl
zN7u#W2civ|jkRl~way2j?FToX^~LG?p~InALCuxrcN!<-$M>Sa7~b0t3a@jNFx&b|
zA@jydE5Dq7ofkHf@0E69TpVvU#%5gqKN_ErwWYx%PtzR!{Vlp2pS|0Fl(@WDm54#$
F{{#8-XUqTq

literal 0
HcmV?d00001

diff --git a/src/es/estrenosdoramas/src/eu/kanade/tachiyomi/animeextension/es/estrenosdoramas/EstrenosDoramas.kt b/src/es/estrenosdoramas/src/eu/kanade/tachiyomi/animeextension/es/estrenosdoramas/EstrenosDoramas.kt
new file mode 100644
index 00000000..8f94f8c2
--- /dev/null
+++ b/src/es/estrenosdoramas/src/eu/kanade/tachiyomi/animeextension/es/estrenosdoramas/EstrenosDoramas.kt
@@ -0,0 +1,220 @@
+package eu.kanade.tachiyomi.animeextension.es.estrenosdoramas
+
+import android.app.Application
+import android.content.SharedPreferences
+import androidx.preference.ListPreference
+import androidx.preference.PreferenceScreen
+import eu.kanade.tachiyomi.animesource.ConfigurableAnimeSource
+import eu.kanade.tachiyomi.animesource.model.AnimeFilterList
+import eu.kanade.tachiyomi.animesource.model.AnimesPage
+import eu.kanade.tachiyomi.animesource.model.SAnime
+import eu.kanade.tachiyomi.animesource.model.SEpisode
+import eu.kanade.tachiyomi.animesource.model.Video
+import eu.kanade.tachiyomi.animesource.online.AnimeHttpSource
+import eu.kanade.tachiyomi.lib.okruextractor.OkruExtractor
+import eu.kanade.tachiyomi.lib.streamhidevidextractor.StreamHideVidExtractor
+import eu.kanade.tachiyomi.lib.streamwishextractor.StreamWishExtractor
+import eu.kanade.tachiyomi.lib.vidguardextractor.VidGuardExtractor
+import eu.kanade.tachiyomi.lib.voeextractor.VoeExtractor
+import eu.kanade.tachiyomi.lib.youruploadextractor.YourUploadExtractor
+import eu.kanade.tachiyomi.network.GET
+import eu.kanade.tachiyomi.util.asJsoup
+import eu.kanade.tachiyomi.util.parallelCatchingFlatMapBlocking
+import okhttp3.Request
+import okhttp3.Response
+import uy.kohesive.injekt.Injekt
+import uy.kohesive.injekt.api.get
+
+class EstrenosDoramas : ConfigurableAnimeSource, AnimeHttpSource() {
+
+    override val name = "EstrenosDoramas"
+
+    override val baseUrl = "https://estrenosdoramas.es"
+
+    override val lang = "es"
+
+    override val supportsLatest = true
+
+    private val preferences: SharedPreferences by lazy {
+        Injekt.get<Application>().getSharedPreferences("source_$id", 0x0000)
+    }
+
+    companion object {
+        private const val PREF_QUALITY_KEY = "preferred_quality"
+        private const val PREF_QUALITY_DEFAULT = "1080"
+        private val QUALITY_LIST = arrayOf("1080", "720", "480", "360")
+
+        private const val PREF_SERVER_KEY = "preferred_server"
+        private const val PREF_SERVER_DEFAULT = "Voe"
+        private val SERVER_LIST = arrayOf(
+            "StreamWish",
+            "Voe",
+            "Okru",
+            "YourUpload",
+            "FileLions",
+            "StreamHideVid",
+            "VidGuard",
+        )
+    }
+
+    override fun animeDetailsParse(response: Response): SAnime {
+        val document = response.asJsoup()
+        return SAnime.create().apply {
+            title = document.selectFirst(".entry-title")?.text()?.trim() ?: ""
+            description = document.selectFirst(".mindesc")?.text()?.trim()
+            genre = document.select(".genxed a").joinToString { it.text() }
+            thumbnail_url = document.selectFirst(".thumb img")?.attr("abs:src")
+            document.select(".spe > span").map {
+                val title = it.select("b").text()
+                when {
+                    title.contains("Estado") -> status = it.ownText().getStatus()
+                    title.contains("Casts") -> artist = it.select("a").joinToString { it.text() }
+                    title.contains("Network") -> author = it.select("a").joinToString { it.text() }
+                }
+            }
+        }
+    }
+
+    override fun popularAnimeRequest(page: Int) = GET("$baseUrl/temporadas/?page=$page&order=popular", headers)
+
+    override fun popularAnimeParse(response: Response): AnimesPage {
+        val document = response.asJsoup()
+        val elements = document.select(".listupd article a")
+        val nextPage = document.select(".hpage .r, .pagination .next").any()
+        val animeList = elements.map { element ->
+            SAnime.create().apply {
+                setUrlWithoutDomain(element.attr("abs:href"))
+                title = element.attr("title")
+                thumbnail_url = element.selectFirst("img")!!.attr("abs:src")
+            }
+        }
+        return AnimesPage(animeList, nextPage)
+    }
+
+    override fun latestUpdatesParse(response: Response) = popularAnimeParse(response)
+
+    override fun latestUpdatesRequest(page: Int) = GET("$baseUrl/temporadas/?page=$page&order=latest", headers)
+
+    override fun searchAnimeRequest(page: Int, query: String, filters: AnimeFilterList): Request {
+        val params = EstrenosDoramasFilters.getSearchParameters(filters)
+        return when {
+            query.isNotBlank() -> GET("$baseUrl/page/$page/?s=$query", headers)
+            params.filter.isNotBlank() -> GET("$baseUrl/temporadas/${params.getQuery()}&page=$page", headers)
+            else -> popularAnimeRequest(page)
+        }
+    }
+
+    override fun searchAnimeParse(response: Response) = popularAnimeParse(response)
+
+    override fun episodeListParse(response: Response): List<SEpisode> {
+        val document = response.asJsoup()
+        return document.select("#myList li a").mapIndexed { idx, it ->
+            val title = it.select(".epl-title").text().trim()
+            val epNumber = try {
+                """(\d+(\.\d+)?)""".toRegex().find(title)?.groupValues?.get(1)?.toFloat() ?: (idx + 1f)
+            } catch (_: Exception) { idx + 1f }
+
+            SEpisode.create().apply {
+                episode_number = epNumber
+                name = title
+                scanlator = it.select(".epl-sub span").joinToString { it.text() }
+                setUrlWithoutDomain(it.attr("abs:href"))
+            }
+        }
+    }
+
+    override fun videoListParse(response: Response): List<Video> {
+        val document = response.asJsoup()
+        return document.select("[data-embed]").parallelCatchingFlatMapBlocking {
+            val link = it.attr("data-embed")
+            val realLink = fetchUrls(client.newCall(GET(link)).execute().networkResponse.toString()).firstOrNull()
+            serverVideoResolver(realLink?.ifEmpty { link } ?: "")
+        }
+    }
+
+    /*--------------------------------Video extractors------------------------------------*/
+    private val okruExtractor by lazy { OkruExtractor(client) }
+    private val streamWishExtractor by lazy { StreamWishExtractor(client, headers) }
+    private val streamHideVidExtractor by lazy { StreamHideVidExtractor(client) }
+    private val voeExtractor by lazy { VoeExtractor(client) }
+    private val yourUploadExtractor by lazy { YourUploadExtractor(client) }
+    private val vidGuardExtractor by lazy { VidGuardExtractor(client) }
+
+    private fun serverVideoResolver(url: String): List<Video> {
+        return when {
+            arrayOf("ok.ru", "okru").any(url) -> okruExtractor.videosFromUrl(url)
+            arrayOf("filelions", "lion", "fviplions").any(url) -> streamWishExtractor.videosFromUrl(url, videoNameGen = { "FileLions:$it" })
+            arrayOf("wishembed", "streamwish", "strwish", "wish").any(url) -> streamWishExtractor.videosFromUrl(url, videoNameGen = { "StreamWish:$it" })
+            arrayOf("vidhide", "streamhide", "guccihide", "streamvid").any(url) -> streamHideVidExtractor.videosFromUrl(url)
+            arrayOf("voe", "robertordercharacter", "donaldlineelse").any(url) -> voeExtractor.videosFromUrl(url)
+            arrayOf("yourupload", "upload").any(url) -> yourUploadExtractor.videoFromUrl(url, headers = headers)
+            arrayOf("vembed", "guard", "listeamed", "bembed", "vgfplay").any(url) -> vidGuardExtractor.videosFromUrl(url)
+            else -> emptyList()
+        }
+    }
+
+    override fun List<Video>.sort(): List<Video> {
+        val quality = preferences.getString(PREF_QUALITY_KEY, PREF_QUALITY_DEFAULT)!!
+        val server = preferences.getString(PREF_SERVER_KEY, PREF_SERVER_DEFAULT)!!
+        return this.sortedWith(
+            compareBy(
+                { it.quality.contains(server, true) },
+                { it.quality.contains(quality) },
+                { Regex("""(\d+)p""").find(it.quality)?.groupValues?.get(1)?.toIntOrNull() ?: 0 },
+            ),
+        ).reversed()
+    }
+
+    override fun getFilterList(): AnimeFilterList = EstrenosDoramasFilters.FILTER_LIST
+
+    private fun Array<String>.any(url: String): Boolean = this.any { url.contains(it, ignoreCase = true) }
+
+    private fun String.getStatus(): Int {
+        val status = this.trim()
+        return when {
+            status.contains("Ongoing") -> SAnime.ONGOING
+            status.contains("Completed") -> SAnime.COMPLETED
+            else -> SAnime.UNKNOWN
+        }
+    }
+
+    private fun fetchUrls(text: String?): List<String> {
+        if (text.isNullOrEmpty()) return listOf()
+        val linkRegex = "(http|ftp|https):\\/\\/([\\w_-]+(?:(?:\\.[\\w_-]+)+))([\\w.,@?^=%&:\\/~+#-]*[\\w@?^=%&\\/~+#-])".toRegex()
+        return linkRegex.findAll(text).map { it.value.trim().removeSurrounding("\"") }.toList()
+    }
+
+    override fun setupPreferenceScreen(screen: PreferenceScreen) {
+        ListPreference(screen.context).apply {
+            key = PREF_SERVER_KEY
+            title = "Preferred server"
+            entries = SERVER_LIST
+            entryValues = SERVER_LIST
+            setDefaultValue(PREF_SERVER_DEFAULT)
+            summary = "%s"
+
+            setOnPreferenceChangeListener { _, newValue ->
+                val selected = newValue as String
+                val index = findIndexOfValue(selected)
+                val entry = entryValues[index] as String
+                preferences.edit().putString(key, entry).commit()
+            }
+        }.also(screen::addPreference)
+
+        ListPreference(screen.context).apply {
+            key = PREF_QUALITY_KEY
+            title = "Preferred quality"
+            entries = QUALITY_LIST
+            entryValues = QUALITY_LIST
+            setDefaultValue(PREF_QUALITY_DEFAULT)
+            summary = "%s"
+
+            setOnPreferenceChangeListener { _, newValue ->
+                val selected = newValue as String
+                val index = findIndexOfValue(selected)
+                val entry = entryValues[index] as String
+                preferences.edit().putString(key, entry).commit()
+            }
+        }.also(screen::addPreference)
+    }
+}
diff --git a/src/es/estrenosdoramas/src/eu/kanade/tachiyomi/animeextension/es/estrenosdoramas/EstrenosDoramasFilters.kt b/src/es/estrenosdoramas/src/eu/kanade/tachiyomi/animeextension/es/estrenosdoramas/EstrenosDoramasFilters.kt
new file mode 100644
index 00000000..2f05a12d
--- /dev/null
+++ b/src/es/estrenosdoramas/src/eu/kanade/tachiyomi/animeextension/es/estrenosdoramas/EstrenosDoramasFilters.kt
@@ -0,0 +1,237 @@
+package eu.kanade.tachiyomi.animeextension.es.estrenosdoramas
+
+import eu.kanade.tachiyomi.animesource.model.AnimeFilter
+import eu.kanade.tachiyomi.animesource.model.AnimeFilterList
+
+object EstrenosDoramasFilters {
+    open class QueryPartFilter(displayName: String, val vals: Array<Pair<String, String>>) : AnimeFilter.Select<String>(
+        displayName,
+        vals.map { it.first }.toTypedArray(),
+    ) {
+        fun toQueryPart(name: String) = vals[state].second.takeIf { it.isNotEmpty() }?.let { "&$name=${vals[state].second}" } ?: run { "" }
+    }
+
+    open class CheckBoxFilterList(name: String, values: List<CheckBox>) : AnimeFilter.Group<AnimeFilter.CheckBox>(name, values)
+
+    private class CheckBoxVal(name: String, state: Boolean = false) : AnimeFilter.CheckBox(name, state)
+
+    private inline fun <reified R> AnimeFilterList.parseCheckbox(
+        options: Array<Pair<String, String>>,
+        name: String,
+    ): String {
+        return (this.getFirst<R>() as CheckBoxFilterList).state
+            .mapNotNull { checkbox ->
+                if (checkbox.state) {
+                    options.find { it.first == checkbox.name }!!.second
+                } else {
+                    null
+                }
+            }.joinToString("&$name[]=").let {
+                if (it.isBlank()) {
+                    ""
+                } else {
+                    "&$name[]=$it"
+                }
+            }
+    }
+
+    private inline fun <reified R> AnimeFilterList.asQueryPart(name: String): String {
+        return (this.getFirst<R>() as QueryPartFilter).toQueryPart(name)
+    }
+
+    private inline fun <reified R> AnimeFilterList.getFirst(): R {
+        return this.filterIsInstance<R>().first()
+    }
+
+    private fun String.changePrefix() = this.takeIf { it.startsWith("&") }?.let { this.replaceFirst("&", "?") } ?: run { this }
+
+    data class FilterSearchParams(val filter: String = "") { fun getQuery() = filter.changePrefix() }
+
+    internal fun getSearchParameters(filters: AnimeFilterList): FilterSearchParams {
+        if (filters.isEmpty()) return FilterSearchParams()
+        return FilterSearchParams(
+            filters.parseCheckbox<GenresFilter>(EstrenosDoramasFiltersData.GENRES, "genre") +
+                filters.parseCheckbox<SeasonsFilter>(EstrenosDoramasFiltersData.SEASONS, "season") +
+                filters.parseCheckbox<StudiosFilter>(EstrenosDoramasFiltersData.STUDIOS, "studio") +
+                filters.parseCheckbox<CountriesFilter>(EstrenosDoramasFiltersData.COUNTRIES, "country") +
+                filters.parseCheckbox<NetworksFilter>(EstrenosDoramasFiltersData.NETWORKS, "network") +
+                filters.asQueryPart<StatusFilter>("status") +
+                filters.asQueryPart<TypesFilter>("type") +
+                filters.asQueryPart<SortFilter>("order"),
+        )
+    }
+
+    val FILTER_LIST get() = AnimeFilterList(
+        AnimeFilter.Header("La busqueda por texto ignora el filtro"),
+        GenresFilter(),
+        SeasonsFilter(),
+        StudiosFilter(),
+        CountriesFilter(),
+        NetworksFilter(),
+        StatusFilter(),
+        TypesFilter(),
+        SortFilter(),
+    )
+
+    class GenresFilter : CheckBoxFilterList("Géneros", EstrenosDoramasFiltersData.GENRES.map { CheckBoxVal(it.first, false) })
+    class SeasonsFilter : CheckBoxFilterList("Temporadas", EstrenosDoramasFiltersData.SEASONS.map { CheckBoxVal(it.first, false) })
+    class StudiosFilter : CheckBoxFilterList("Estudio", EstrenosDoramasFiltersData.STUDIOS.map { CheckBoxVal(it.first, false) })
+    class CountriesFilter : CheckBoxFilterList("País", EstrenosDoramasFiltersData.COUNTRIES.map { CheckBoxVal(it.first, false) })
+    class NetworksFilter : CheckBoxFilterList("Networks", EstrenosDoramasFiltersData.NETWORKS.map { CheckBoxVal(it.first, false) })
+    class StatusFilter : QueryPartFilter("Estatus", EstrenosDoramasFiltersData.STATUS)
+    class TypesFilter : QueryPartFilter("Tipo", EstrenosDoramasFiltersData.TYPES)
+    class SortFilter : QueryPartFilter("Orden", EstrenosDoramasFiltersData.SORT)
+
+    private object EstrenosDoramasFiltersData {
+        val GENRES = arrayOf(
+            Pair("Action", "action"),
+            Pair("Adult Cast", "adult-cast"),
+            Pair("Adventure", "adventure"),
+            Pair("Business", "business"),
+            Pair("Comedy", "comedy"),
+            Pair("Crime", "crime"),
+            Pair("Documentary", "documentary"),
+            Pair("Drama", "drama"),
+            Pair("Ecchi", "ecchi"),
+            Pair("Family", "family"),
+            Pair("Fantasy", "fantasy"),
+            Pair("Food", "food"),
+            Pair("Gourmet", "gourmet"),
+            Pair("Harem", "harem"),
+            Pair("Historical", "historical"),
+            Pair("Horror", "horror"),
+            Pair("Isekai", "isekai"),
+            Pair("Law", "law"),
+            Pair("Life", "life"),
+            Pair("Martial Arts", "martial-arts"),
+            Pair("Mature", "mature"),
+            Pair("Medical", "medical"),
+            Pair("Melodrama", "melodrama"),
+            Pair("Military", "military"),
+            Pair("Music", "music"),
+            Pair("Mystery", "mystery"),
+            Pair("Mythology", "mythology"),
+            Pair("Political", "political"),
+            Pair("Psychological", "psychological"),
+            Pair("Reincarnation", "reincarnation"),
+            Pair("Romance", "romance"),
+            Pair("Sci-Fi", "sci-fi"),
+            Pair("Seinen", "seinen"),
+            Pair("Shoujo", "shoujo"),
+            Pair("Shounen", "shounen"),
+            Pair("Sitcom", "sitcom"),
+            Pair("Sports", "sports"),
+            Pair("Supernatural", "supernatural"),
+            Pair("Thriller", "thriller"),
+            Pair("War", "war"),
+            Pair("Workplace", "workplace"),
+            Pair("Wuxia", "wuxia"),
+            Pair("Youth", "youth"),
+        )
+
+        val SEASONS = arrayOf(
+            Pair("Winter 2024", "winter-2024"),
+        )
+
+        val STUDIOS = arrayOf(
+            Pair("Connect", "connect"),
+            Pair("Drive", "drive"),
+            Pair("HORNETS", "hornets"),
+            Pair("Okuruto Noboru", "okuruto-noboru"),
+            Pair("Seven Arcs", "seven-arcs"),
+            Pair("Shin-Ei Animation", "shin-ei-animation"),
+            Pair("SILVER LINK.", "silver-link"),
+            Pair("Studio Add", "studio-add"),
+            Pair("Studio Flad", "studio-flad"),
+            Pair("Studio Kai", "studio-kai"),
+            Pair("Studio PuYUKAI", "studio-puyukai"),
+            Pair("SynergySP", "synergysp"),
+            Pair("Trigger", "trigger"),
+        )
+
+        val COUNTRIES = arrayOf(
+            Pair("China", "china"),
+            Pair("Japan", "japan"),
+            Pair("South Korea", "south-korea"),
+            Pair("Taiwan", "taiwan"),
+            Pair("Thailand", "thailand"),
+        )
+
+        val NETWORKS = arrayOf(
+            Pair("Amazon Prime", "amazon-prime"),
+            Pair("BS Asahi", "bs-asahi"),
+            Pair("CCTV", "cctv"),
+            Pair("Channel 3", "channel-3"),
+            Pair("Channel 9", "channel-9"),
+            Pair("Channel A", "channel-a"),
+            Pair("COUPANG TV", "coupang-tv"),
+            Pair("Disney+", "disney"),
+            Pair("ENA", "ena"),
+            Pair("Fuji TV", "fuji-tv"),
+            Pair("Genie TV", "genie-tv"),
+            Pair("GMM 25", "gmm-25"),
+            Pair("GMM One", "gmm-one"),
+            Pair("GTV", "gtv"),
+            Pair("Hulu", "hulu"),
+            Pair("Hunan TV", "hunan-tv"),
+            Pair("iQiyi", "iqiyi"),
+            Pair("JSTV", "jstv"),
+            Pair("jTBC", "jtbc"),
+            Pair("KBS2", "kbs2"),
+            Pair("Mango TV", "mango-tv"),
+            Pair("MBC", "mbc"),
+            Pair("MBN", "mbn"),
+            Pair("MBS", "mbs"),
+            Pair("Mnet", "mnet"),
+            Pair("Naver TV Cast", "naver-tv-cast"),
+            Pair("Netflix", "netflix"),
+            Pair("One 31", "one-31"),
+            Pair("oneD", "oned"),
+            Pair("SBS", "sbs"),
+            Pair("SBS Plus", "sbs-plus"),
+            Pair("SET TV", "set-tv"),
+            Pair("Sohu TV", "sohu-tv"),
+            Pair("TBS", "tbs"),
+            Pair("Telasa", "telasa"),
+            Pair("Tencent Video", "tencent-video"),
+            Pair("Tokyo MX", "tokyo-mx"),
+            Pair("TV Chosun", "tv-chosun"),
+            Pair("TV Tokyo", "tv-tokyo"),
+            Pair("TVING", "tving"),
+            Pair("TVK", "tvk"),
+            Pair("tvN", "tvn"),
+            Pair("Viki", "viki"),
+            Pair("ViuTV", "viutv"),
+            Pair("vLive", "vlive"),
+            Pair("Wavve", "wavve"),
+            Pair("WeTV", "wetv"),
+            Pair("Workpoint TV", "workpoint-tv"),
+            Pair("Youku", "youku"),
+            Pair("ZJTV", "zjtv"),
+        )
+
+        val STATUS = arrayOf(
+            Pair("All", ""),
+            Pair("Ongoing", "Ongoing"),
+            Pair("Completed", "Completed"),
+        )
+
+        val TYPES = arrayOf(
+            Pair("All", ""),
+            Pair("Dorama", "Drama"),
+            Pair("TV Show", "TV Show"),
+            Pair("Anime", "Anime"),
+            Pair("Película", "Movie"),
+            Pair("Special", "Special"),
+        )
+
+        val SORT = arrayOf(
+            Pair("Latest Update", "update"),
+            Pair("A-Z", "title"),
+            Pair("Z-A", "titlereverse"),
+            Pair("Latest Added", "latest"),
+            Pair("Popular", "popular"),
+            Pair("Rating", "rating"),
+        )
+    }
+}