trackkun-dom 2.15.0 → 2.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/index.js +1 -1
  2. package/package.json +1 -1
  3. package/specs.json +1 -1
package/index.js CHANGED
@@ -1 +1 @@
1
- (function(k,z){typeof exports=="object"&&typeof module<"u"?z(exports):typeof define=="function"&&define.amd?define(["exports"],z):(k=typeof globalThis<"u"?globalThis:k||self,z(k._trackkun_={}))})(this,(function(k){"use strict";function z(a){let e=!1;return new Promise((t,r)=>{Promise.all(a.map(async n=>{const s=await n;!e&&s&&(e=!0,t(s))})).then(()=>{e||t(void 0)})})}function W(a){if(a)try{return JSON.parse(a)}catch{return}}async function M(a,e,t){const r=await t(()=>{a=0});if(r!==void 0)return r;if(!(a<=0))return await new Promise(n=>{setTimeout(async()=>{const s=await M(a-1,e,t);n(s)},e)})}async function A(a,e,t=0){const r=e.root??document.documentElement,n=e.timeoutMs??1e4;return M(e.lazy===!0?n/50:0,50,()=>{const s=e.all===!0?Array.from(r.querySelectorAll(a)):r.querySelector(a)??void 0;return(e.all?!s?.length:!s)?void 0:s})}function Z(a){if(a instanceof HTMLOptionElement){const e=a.parentElement instanceof HTMLOptGroupElement?a.parentElement.parentElement:a.parentElement;if(!e||!(e instanceof HTMLSelectElement))return;const t=a.getAttribute("value")||"";if(e.value===t)return;e.value=t,e.dispatchEvent(new Event("change"));return}a instanceof HTMLAnchorElement&&a.addEventListener("click",e=>e.preventDefault(),{once:!0}),a.click(),a.dispatchEvent(new PointerEvent("pointerdown",{bubbles:!0,cancelable:!0,pointerType:"mouse",button:0})),a.dispatchEvent(new MouseEvent("mousedown",{bubbles:!0,cancelable:!0,view:window,button:0}))}const ge={text:de,attr:ot,"attr-contain":ct,value:ut,row:gt,"bg-image":pt,json:ht},nt={pattern:dt,remove:ft,atob:mt};function d(a,e){if(a)return pe(a,e,it)}function q(a,e){if(a)return pe(a,e,lt)}function pe(a,e,t){if(!a)return;const r=a.split("||").map(n=>n.trim()).filter(Boolean);for(const n of r){const s=st(n);if(!s)continue;const i=t(e??document.documentElement,s);if(i)return i}}function st(a){const[e,t,...r]=a.split("|");if(!t)return;const n=t?.startsWith("[")&&t.endsWith("]")?t.substring(1,t.length-1).split(","):[t];return{selector:e||void 0,extractors:n.map(ee),transformers:r.map(ee)}}function ee(a){const e=a.indexOf(":"),t=e!==-1;return{fn:t?a.substring(0,e):a,param:t?a.substring(e+1):""}}function it(a,e){if(!e.selector)return he(a,e);const t=wt(e.selector);for(const r of t){const n=Array.from(a.querySelectorAll(r));for(const s of n){const i=he(s,e);if(i)return i}}}function lt(a,e){const t=e.selector?Array.from(a.querySelectorAll(e.selector)):[a],r=[];for(const n of t)for(const s of e.extractors){const i=ge[s.fn],l=i(n,s.param);if(l){r.push(te(l,e.transformers));break}}if(r.length)return r}function he(a,e){for(const t of e.extractors){const r=ge[t.fn],n=r(a,t.param);if(n)return te(n,e.transformers)}}function te(a,e){let t=a;for(const r of e){const n=nt[r.fn];n&&(t=n(t,r.param).trim())}return t}function de(a){return Array.from(a.childNodes).filter(e=>e.nodeType===3).map(e=>N(e.textContent)).filter(Boolean).join(" ").trim()||N(a.textContent)}function ot(a,e){return N(a.getAttribute(e))}function ct(a,e){let t=a.getAttribute(e);if(!t){const r=a.getAttributeNames().find(n=>n.includes(e));r&&(t=a.getAttribute(r))}return N(t)}function ut(a){return a.value}function gt(a,e){if(!e)return;const t=N(a.textContent)?.toLowerCase(),r=e.toLowerCase();if(!(t!==r&&t!==`${r}:`))return N(a.nextElementSibling?.textContent??a.nextSibling?.textContent)}function pt(a){const e=getComputedStyle(a).backgroundImage;if(!(!e||!e.startsWith("url(")))return e.slice(5,-2)||void 0}function ht(a,e){const t=B(W(de(a)),e);return typeof t=="number"?t+"":typeof t=="string"?N(t+""):void 0}function B(a,e){if(!a||!e)return;const t=e.indexOf("."),r=t!==-1,n=r?e.substring(0,t):e,s=r?e.substring(t+1):void 0;try{const i=a[n];return s?B(i,s):i}catch{return}}function N(a){if(a)return a?.replace(/(\n|\t)/g," ").trim()||void 0}function dt(a,e){if(e)try{return a.replace(new RegExp(e,"i"),"$1")}catch{}return a}function ft(a,e){if(e)try{return a.replaceAll(new RegExp(e,"gi"),"")}catch{}return a}function mt(a){try{return window.atob(a)}catch{return a}}function wt(a){const e=[];let t="",r=!1;for(let s=0;s<a.length;s++){const i=a[s];if(i==="["?r=!0:i==="]"&&(r=!1),i===","&&!r){const l=t.trim();l.length>0&&e.push(l),t=""}else t+=i}const n=t.trim();return n.length>0&&e.push(n),e}var vt=(a=>(a[a.reading=1]="reading",a[a.paused=2]="paused",a[a.plan=3]="plan",a[a.completed=4]="completed",a[a.dropped=5]="dropped",a[a.deleted=6]="deleted",a))(vt||{}),yt=(a=>(a[a.ok=1]="ok",a[a.hidden=2]="hidden",a[a.deleted=3]="deleted",a))(yt||{}),bt=(a=>(a[a.aggregator=0]="aggregator",a[a.scanlator=1]="scanlator",a))(bt||{}),Rt=(a=>(a[a.pending=0]="pending",a[a.completed=1]="completed",a[a.offline=2]="offline",a[a.incompat=3]="incompat",a))(Rt||{}),fe=(a=>(a.id="id",a.name="name",a.slug="slug",a))(fe||{}),V=(a=>(a.blank="about:blank",a.title="meta.title",a.reader="meta.reader",a))(V||{});function ae(a=0){return new Promise(e=>setTimeout(e,a))}const $t=/(vol(ume)?|season)(\s*|-|\.)(\d+)/i,xt=/^S([1-9])\s/i,Dt=/(ch(ap(t(er)?|\.)?|\.)?|#|episode\.?|capitolo\.?|capitulo\.?|bölüm\.?)(\s*|-)(\d+([_-~,.]\d+)?)/i,St=/\d+([_-~,.]\d+)?/,Tt=/[_-~,]/;function It(a){const e=a.match($t);if(e)return{volStr:e[0],volValueStr:e[4]};const t=a.match(xt);return t?{volStr:t[0],volValueStr:t[1]}:{}}function C(a){if(!a)return;if(!isNaN(+a))return{chap:+a};const{volStr:e,volValueStr:t}=It(a),r=e?a.replace(e,"").trim():a,n=r.match(Dt),s=r.match(St),i=n?.[6],l=i??s?.[0];if(!l)return;const c=+l.replace(Tt,".");if(isNaN(c))return;const o=e&&t&&!isNaN(+t)&&a.indexOf(e)<a.indexOf(i?n[0]:s[0])?+t:void 0;return{vol:o===void 0||o<=0?void 0:o,chap:c}}async function K(a,e=240){return new Promise(t=>{const r=new Image;r.crossOrigin="anonymous",r.onerror=()=>t(void 0),r.onload=()=>{const n=document.createElement("canvas"),s=n.getContext("2d"),i=Math.max(1,r.naturalWidth/e),l=r.naturalWidth/i,c=r.naturalHeight/i;n.width=l,n.height=c;const o=/iPad|iPhone|iPod/.test(navigator.userAgent);try{s.drawImage(r,0,0,l,c);const u=n.toDataURL(o?"image/jpg":"image/webp",o?.99:.8).split(",").slice(-1)[0];t(u)}catch{t(void 0)}},r.src=a})}async function Pt(a,e=240){const t=await Ct(a);if(t)return await new Promise(async r=>{const n=K(t,e),s=setTimeout(()=>r(void 0),100),i=await n;clearTimeout(s),r(i)})}async function Ct(a){if(a.startsWith("blob:"))return a;try{const e=await fetch(a);if(e.status>=400)return;const t=await e.blob();return URL.createObjectURL(t)}catch{return}}function D(a,e){if(e==="")return a;if(!e)return;const t=e.split("||").map(r=>r.trim()).filter(Boolean);for(const r of t){const[n,...s]=r.split("|"),i=B(a,n);if(typeof i=="number"||i){if(typeof i!="string")return i;const l=i.replace(/(\n|\t)/g," ").trim();if(l){const c=te(l,s.map(ee));if(c)return c}}}}function j(a){if(a?.startsWith("window")){const e=a.indexOf(".");return e===-1?void 0:D(window,a.substring(e+1))}return W(a?d(a):document.querySelector("pre")?.textContent)}function S(a,e){if(typeof a=="number")return e?e(a):a}function w(a,e){if(typeof a=="string")return e?e(a):a}function L(a,e){const t=a.map(o=>({...o,vol:o.vol===0?void 0:o.vol}));t.sort((o,u)=>o.vol===void 0||u.vol===void 0?u.chap-o.chap:u.vol-o.vol||u.chap-o.chap);const r={},n={};for(let o=t.length-1;o>=0;o--){const u=t[o],h=u.group??"";r[h]=(r[h]??0)+1;const g=u.lang??"";u.vol!==void 0?n[g]=u.vol:n[g]!==void 0&&(u.inferVol=n[g])}const s=[],i={},l=e?.preferGroup,c=o=>o.lang??"";for(const o of t){const u=c(o),h=i[u],g=s[h];if(!(g&&g.chap===o.chap&&(g.vol===o.vol||g.vol===void 0||o.vol===void 0))){i[u]=s.length,s.push(o);continue}if(!l){g.vol===void 0&&o.vol!=null&&(s[h]=o);continue}g.group!==l&&(o.group==l||g.group&&!o.group||r[o.group??""]>r[g.group??""])&&(s[h]=o)}return s}const Mt=[{seconds:1,locales:{en:"sec",vi:"gi\xE2y",tr:"ikinci",es:"segunda"}},{seconds:60,locales:{en:"min",vi:"ph\xFAt",tr:"dakika"}},{seconds:3600,locales:{en:"hour",vi:"gi\u1EDD",tr:"saat",fr:"heure",it:"ora",es:"hora"}},{seconds:86400,locales:{en:"day",vi:"ng\xE0y",tr:"g\xFCn",fr:"jour",it:"giorno",es:"d\xEDa"}},{seconds:604800,locales:{en:"week",vi:"tu\u1EA7n",tr:"hafta",fr:"semaine",it:"settimana",es:"semana"}},{seconds:2592e3,locales:{en:"month",vi:"th\xE1ng",tr:"ay",fr:"mois",it:"mese",es:"mes"}},{seconds:31536e3,locales:{en:"year",vi:"n\u0103m",tr:"yil",fr:"an",it:"anno",es:"a\xF1o"}}];function me(a,e){const t=a?.toLowerCase();if(!t)return;const r=Date.now();if(t.includes("now"))return r;if(t.includes("yesterday"))return r-864e5;const n=new Date(t);if(n instanceof Date){const o=n.valueOf();if(!isNaN(o))return n.getHours()===0&&n.getMinutes()===0?Math.min(r,o+432e5):o}const s=Mt.find(o=>e&&o.locales[e]&&t.indexOf(o.locales[e])!==-1?!0:t.indexOf(o.locales.en)!==-1);if(!s)return;const i=t.split(" ").filter(Boolean),l=we(i)??(e==="en"?we(i,["a","an"]):void 0);if(!l)return;const c=r-l*s.seconds*1e3;return c>0?c:void 0}function we(a,e){for(let t=0;t<a.length;t++){const r=a[t];if(e?.includes(r))return 1;const n=+r;if(n)return n<0?void 0:n}}function Bt(a,e=location.origin){if(!a)return;const t=new URL(a.startsWith("//")?`${location.protocol}${a}`:a,location.origin+location.pathname).toString();return t.startsWith(e)?t.replace(e,""):t}function re(a,{titleSlug:e,titleId:t,lang:r}){if(!a)return"/";let n=a;return e&&(n=n.replace("{titleSlug}",e)),t&&(n=n.replace("{titleId}",t)),r&&(n=n.replace("{lang}",r)),n.endsWith("/")||(n+="/"),n.startsWith("/")||(n="/"+n),n}function ne(a){if(!a)return;let e=a;e.startsWith("//")&&(e=`https:${e}`);try{return new URL(e)}catch{return}}function U(a){if(!(!a||typeof a!="string"))return a.includes("//")?ne(a)?.pathname:a}function jt(a,e){const t=[...e],r=[];let n=!1,s=0;const i=Math.min(a.length,100);for(let c=0;c<i;c++){if(s>=10/2){const p=10-r.length;if(p>0){const f=c+p<=a.length?a.slice(c,c+p):t.slice(0,p);r.push(...f)}break}const o=a[c],u=o.id!==void 0,h=t.findIndex(p=>u&&p.id===o.id||p.slug===o.slug||p.name==o.name),g=h===-1?void 0:t.splice(h,1)[0];!g||g.chapters[0]?.chap!==o.chapters[0]?.chap?(n=!0,r.push({...o,changed:!0})):(s++,r.push(o))}if(!n)return{hasMore:!1,rawReleases:[]};if(r.length<=10)return{hasMore:!!a[a.length-1]?.changed,rawReleases:r};const l=[];for(let c=0;c<r.length;c++){const o=r[c];(o.changed||c<10)&&l.push(o)}return{hasMore:e.length<2||e.length-t.length<2,rawReleases:l}}function Lt(a,e){const t={};return a.forEach(r=>{const n=r.chapters.reduce((s,i)=>{const l=i.lang||e||"";return s[l]||(s[l]=[]),s[l].push(i),s},{});Object.entries(n).forEach(([s,i])=>{const l=`${r.slug}:${s}`;t[l]?(t[l].chapters.push(...i),L(t[l].chapters)):t[l]={...r,lang:s===""?void 0:s,chapters:i}})}),Object.values(t)}function ve(a,e){const t=a[0]===e?a.substring(1):a;return t[t.length-1]===e?t.substring(0,t.length-1):t}var T=(a=>(a.title="title",a.reader="reader",a.releases="releases",a.chapters="chapters",a.search="search",a))(T||{}),Ot=Object.defineProperty,At=(a,e,t)=>e in a?Ot(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,O=(a,e,t)=>At(a,typeof e!="symbol"?e+"":e,t);class H{constructor(e){O(this,"headless"),O(this,"siteId"),O(this,"spec"),O(this,"siteMeta"),O(this,"tags"),O(this,"context"),O(this,"methodsMap",{[T.title]:()=>this.getRawTitleData(),[T.reader]:()=>this.getRawReaderData(),[T.releases]:()=>this.getRawReleasesData(),[T.search]:()=>this.getRawSearchData(),[T.chapters]:()=>this.getRawChaptersData()}),O(this,"normalizedTagsMap"),this.siteId=e.siteId,this.spec=e.spec,this.siteMeta=e.siteMeta,this.tags=e.tags,this.context=e.context??{},this.headless=e.headless===!0}async getRawPageByType(e,t=!1){const r=await this.methodsMap[e](),n=!r&&(e===T.title||e===T.reader)&&await Et(this.spec);if(t&&!r&&!n)return;const s=location.origin+location.pathname;return{type:e,is404:n,specId:this.spec.id,siteName:Nt(this.spec.name),favUrl:kt(),htmlLang:zt(),url:s,data:r,spec:this.spec,context:this.context}}parseReaderUrl(e,t,r){const n=!this.siteId,s=t.includes("/");let i=s?e:this.siteMeta.readerBase;if(i.startsWith("/")||(i="/"+i),i.endsWith("/")||(i=i+"/"),!s)return n?{basePath:"",slug:`${i}${t}`}:{basePath:i,slug:t};const l=i.includes("{");let c=t;if(c[0]!=="/"&&(c.includes("/")||n&&!l))try{c=new URL(t,location.href).pathname}catch{}if(c.endsWith("/")&&(c=c.slice(0,-1)),l){const o=i.split("/").filter(Boolean),u=c.split("/").filter(Boolean);if(o.length<u.length){const h=u[o.indexOf("{lang}")]?.toLowerCase(),g=u[o.indexOf("{titleId}")],p=u[o.indexOf("{titleSlug}")];if(n)return{basePath:"",slug:c,lang:h,titleId:g,titleSlug:p};if(i=i.replace("{lang}",h).replace("{titleId}",g).replace("{titleSlug}",p),c.startsWith(i))return{basePath:i,slug:c.replace(i,""),lang:h,titleId:g,titleSlug:p}}}else if(!n&&c.startsWith(i))return{basePath:i,slug:c.replace(i,"")};return{basePath:"",slug:c}}parseTitleUrl(e){if(typeof e!="string")return{};const t=U(e);if(t===void 0)return{};if(this.siteMeta.single)return{slug:ve(t,"/")};const r=t?.split("/").filter(Boolean);if(!r?.length)return{};const n=this.siteMeta.titleBase.split("/").filter(Boolean),s=n.indexOf("{slug}");return(s===-1?r.length-n.length>=1:r.length===n.length)?{id:r[n.indexOf("{id}")],slug:this.siteId?s===-1?r.slice(n.length).join("/"):r[s]:t}:{slug:t}}finalizeRawReleasesData(e){const t=this.spec.releases?.title?.lang?this.siteMeta.defaultLang:void 0,r=Lt(e.rawReleases,t);if(r.length)return this.context.oldRawReleases?jt(r,this.context.oldRawReleases):{rawReleases:r,hasMore:!0}}getTagIdsFromNames(e){if(!e?.length)return;const t=this.normalizedTagsMap??(this.normalizedTagsMap=Ut(this.tags)),r=e.map(n=>t[se(n)]).filter(Boolean);return r.length===0?void 0:Array.from(new Set(r)).sort((n,s)=>n-s)}}O(H,"specId"),O(H,"siteId");function Ut(a){const e={};return a.forEach(({id:t,name:r,altNames:n})=>{e[se(r)]=t,n&&n.forEach(s=>{e[se(s)]=t})}),e}function se(a){const e=a.toLowerCase().replaceAll(/[^a-z0-9\s]/gi,"").trim().replaceAll(/\s+/g," ");return e[e.length-1]==="s"?e.substring(0,e.length-1):e}async function Et(a){return _t()===404||a[404]&&await A(a[404],{lazy:!0,timeoutMs:5e3})?!0:document.title.toLowerCase().includes("not found")}function _t(){try{return window.performance.getEntries().find(a=>a.entryType==="navigation")?.responseStatus}catch{return}}function Nt(a){const e=(a&&d(a))??d('meta[property="og:site_name"]|attr:content');return e&&e.length>2?e:void 0}function kt(){return d('link[rel="icon"][sizes="32x32"],link[rel="icon"][sizes="192x192"],link[rel="apple-touch-icon"]|attr:href')}function zt(){return d("html|attr:lang")||"en"}class y extends H{async getRawReleasesData(){const e=this.spec?.releases?.title;if(!e)return;if(e.json){const l=this.getJsonRawReleases(w(e.json),e)?.filter(c=>c.chapters.length);return l?.length?this.finalizeRawReleasesData({rawReleases:l}):void 0}const t=e.chapter,r=await A(e.sel,{lazy:!0,all:!0});if(!r?.length)return;const n=Date.now(),s=r.slice(0,100).map(l=>{const c=d(e.url,l),o=U(c),u=d(e.name,l),h=d(e.at,l);if(!o||!u)return;const g=me(h,this.siteMeta.defaultLang);return{titleEl:l,id:d(e.id,l),path:o,name:u,lang:d(e.lang,l)?.toLowerCase(),at:g?Math.min(g,n):void 0}}).filter(Boolean);if(!s.length)return;const i=[];return await Promise.all(s.map(async l=>{const{path:c,titleEl:o,lang:u,at:h,...g}=l,{id:p,slug:f}=this.parseTitleUrl(c);if(!f)return;const v=g.id||p,m=await this.getChapters(t,{root:o,titleId:v,titleSlug:f,titleName:l?.name,lang:u})??[];m.length&&i.push({slug:f,chapters:u||h?m.map(b=>({...b,elIndex:void 0,lang:b.lang??u,ts:b.ts??h})):m,...g,id:v})})),this.finalizeRawReleasesData({rawReleases:i})}getRawTitleData(){return this.getTitleData(this.spec.title)}async getTitleData(e){if(!e||!await this.isTitlePage(e))return;const{id:t,slug:r}=this.parseTitleUrl(location.pathname);if(this.siteMeta.single?r===void 0:!r)return;const n=t||d(e.id),s=await this.getChapters(e.chapter,{lazy:!0,titleId:n,titleSlug:r,titleName:d(e.name)})??[],i=d(e.name);if(!i)return;const l=await this.getValidImgSrc(e.img,i),c=l&&this.context.includeImgBytes?await Pt(l):void 0,o=this.getFirstChapterUrl(),u=e.firstBtn,h=q(e.tags)?.map(f=>f.split(",")).flat().map(f=>f.trim()).filter(Boolean),g=d(e.type),p=q(e.langs)?.map(f=>f.toLowerCase());return{id:n||d(e.id),url:location.origin+location.pathname,slug:r,name:i,langs:p?.length?p:e.langs&&this.siteMeta.defaultLang?[this.siteMeta.defaultLang]:void 0,tags:this.getTagIdsFromNames([...h??[],...g?[g]:[]]),chapters:s,hasMoreChapters:e.hasMore?!!document.querySelector(e.hasMore):void 0,img:l,imgBytes:c,firstUrl:o,firstBtn:!o&&u&&document.querySelector(u)?u:void 0,trackers:this.getTrackersMap(e.trackers)}}getTrackersMap(e){if(!e)return;const t=d(e.mal),r=d(e.anl);if(!t&&!r)return;const n={};return t&&(n.mal=this.parseTrackerId(t)),r&&(n.anl=this.parseTrackerId(r)),n}parseTrackerId(e){return e.split("?")[0].split("#")[0].split("/").filter(Boolean).slice(-1)[0]}getFirstChapterUrl(){const e=d(this.spec.title?.first);if(e){if(e.startsWith("http"))return e;try{return new URL(e,location.href).href}catch{return}}}getValidImgSrc(e,t){return M(33,30,()=>{const r=d(e)||d(`img[alt="${t.replaceAll('"',"")}"]|[attr:data-src,attr-contain:src]`);return!r||r.startsWith("data:")?void 0:document.querySelector(`img[srcset*="${r}"]`)?r.split(" ")[0]:r})}getRawReaderTitleData(e){const t=this.spec.reader?.title;if(!t)return;const r=t.sel?document.querySelector(t.sel)??void 0:void 0,n=d(t.name,r);if(!n)return;const s=Bt(d(t.img,r));if(e?.slug){let o=this.siteMeta.titleBase;if(e?.id&&(o=o.replace("{id}",e.id)),!o.includes("{"))return o=o.includes("{slug}")?o.replace("{slug}",e.slug):`${o}/${e.slug}`,this.siteMeta.trailing&&!o.endsWith("/")&&(o+="/"),{name:n,img:s,url:new URL(o,location.origin).href,slug:e.slug,id:e.id||d(t.id)}}const i=d(t.url,r),{slug:l,id:c}=this.parseTitleUrl(i);if(!(!n||!i||(this.siteMeta.single?l===void 0:!l)))return{name:n,img:s,url:new URL(i,location.origin).href,slug:l,id:c||d(t.id)||e?.id}}async getRawReaderData(){const{spec:e,siteMeta:t}=this;if(!e?.reader||!await this.isReaderPage(e.reader,!!e.generic))return;const r=e.reader.content;if(!(!r||await y.verifyImgsCotainer(r)))return;const n=this.parseReaderUrl(t.readerBase,location.pathname,location.href),{slug:s,basePath:i,lang:l}=n,c=this.getRawReaderTitleData({id:n.titleId,slug:n.titleSlug});if(!c)return;const o=d(e.reader.group),{id:u,slug:h}=c,g=e.reader?.chapter,p=!!this.context.disableLazyChapters,f=!!this.context.includeHiddenChapters,v=await this.getChapters(g,{titleId:u,titleSlug:h,titleName:c.name,lang:l,lazy:f||!p,includeHiddenChapters:f,timeoutMs:f?3e3:25e3,includeIndex:!0,basePath:i,preferGroup:o})??[],m=d(e.reader.label)?.toLowerCase().replace(c.name.toLowerCase(),"");if(!m)return;const{vol:b,chap:R=0}=C(m)||{},E=this.findNeighborChapter({sel:e.reader.prev,basePath:i,titleUrl:c.url}),G=this.findNeighborChapter({sel:e.reader.next,basePath:i,titleUrl:c.url});return this.finalizeRawReaderData({vol:b,chap:R,lang:l??d(e.reader.lang)?.toLowerCase()??(e.reader.lang?this.siteMeta.defaultLang:void 0),slug:s,basePath:i,group:o??d(e.reader.group),imgs:q(e.reader.imgs),title:{id:u||d(this.spec.reader?.title.id),url:c.url,slug:h,name:c.name,langs:l?[l]:void 0,img:c.img,chapters:v,hasMoreChapters:!v.length&&!f&&!!this.context.disableLazyChapters&&!!g?.label}},{prevSlug:E,nextSlug:G})}async getRawChaptersData(){const e=this.siteMeta.chapters;if(e===V.blank)return;const t=e===V.reader,r=!e||e===V.title,n=t?(await this.getRawReaderData())?.title:r?await this.getRawTitleData():void 0,s=this.spec.chapters?.chapter,i=n?.slug??this.context.titleSlug,l=n?.id??this.context.rawId,c=this.context.lang,o=s?s.json?this.getJsonChapters(j(w(s.json)),{chapterSpec:s,basePath:re(this.siteMeta.readerBase,{titleSlug:i,titleId:l,lang:c})}):await this.getChapters(s,{titleId:l,titleSlug:i,titleName:n?.name,lazy:this.spec.chapters?.lazy,includeHiddenChapters:!0,lang:c}):n?.chapters;if(!o)return;const u=c?o.filter(h=>!h.lang||h.lang===c):o;return{chapters:u,title:n?{...n,chapters:[]}:await this.getTitleData(this.spec.chapters?.title),hasMore:!1,asc:!1,total:u.length}}async getRawSearchData(){const e=this.spec.search,t=this.context.lang;if(!e)return;const r=e.title;if(r.json){const o=this.getJsonRawReleases(w(r.json),r,t);return o?.length?{rawReleases:o}:void 0}e.delay?await ae(e.delay):e.loading&&await ae(500);const{chapter:n}=r,s=[],i=e.lazy?e.empty||e.loading?550:100:1;let l=0;const c=await M(i,50,()=>{const o=Array.from(document.querySelectorAll(r.sel));if(o.length||e.empty&&document.querySelector(e.empty)||e.loading&&!document.querySelector(e.loading)&&++l>=3)return o});if(c)return await Promise.all(c.map(async o=>{const u=d(r.url,o),h=U(u),g=d(r.name,o),{slug:p,id:f}=this.parseTitleUrl(h);if(!h||!g||!p)return;const v=d(r.lang,o);v&&t&&v!==t||s.push({id:f||d(r.id,o),slug:p,name:g,img:d(r.img??"img|[attr:data-src,attr-contain:src]",o),lang:v,chapters:await this.getChapters(n,{root:o,titleId:f,titleSlug:p,titleName:g})??[]})})),{rawReleases:s}}getJsonRawReleases(e,t,r){const n=j(e),s=D(n,t.sel);if(!s?.length||!Array.isArray(s))return;const i=[];return s.forEach(l=>{const c=w(D(l,t.lang))?.toLowerCase();if(c&&r&&c!==r)return;const o=D(l,t.url),{id:u,slug:h}=S(o,b=>({id:void 0,slug:b+""}))??this.parseTitleUrl(U(o)),g=w(D(l,t.name));if(!h||!g)return;const p=u||D(l,t.id),f=S(p,b=>b+"")??w(p),v=t.chapter?this.getJsonChapters(l,{chapterSpec:t.chapter,basePath:re(this.siteMeta.readerBase,{titleId:f,titleSlug:h,lang:c})}):void 0,m=w(D(l,t.img),b=>{try{return new URL(b,location.origin).href}catch{return}});i.push({id:f,slug:h,name:g,lang:c,img:m,chapters:v??[]})}),i}getJsonChapters(e,{chapterSpec:t,basePath:r}){if(!e)return;const n=D(e,t.sel);if(!n)return;const s=Array.isArray(n)?n:[n];if(!s?.length)return;const i=[];return s.forEach(l=>{const c=D(l,t.label),o=S(c,m=>({vol:void 0,chap:m}))??C(w(c));if(!o)return;const u=D(l,t.url),h=this.parseChapterUrl(r,w(u)??S(u,m=>m+"")),g=o.vol??D(l,t.vol),p=D(l,t.id),f=D(l,t.at),v=f?new Date(f).getTime():void 0;i.push({slug:h?.slug,vol:S(g)??w(g,m=>+m),chap:o.chap,id:w(p)??S(p,m=>m+""),lang:w(D(l,t.label))?.toLowerCase(),group:w(D(l,t.group)),ts:v||void 0})}),i.length?L(i,{preferGroup:this.context.preferGroup}):void 0}async getChapters(e,{root:t,titleId:r,titleSlug:n,titleName:s,lang:i,includeHiddenChapters:l=!1,lazy:c=!0,timeoutMs:o,includeIndex:u,basePath:h,preferGroup:g}){const p=e?.sel;if(!p||!e.label)return;const f=p.includes("{titleSlug}")?n?p.replace("{titleSlug}",n):void 0:p;if(!f)return;let v;if(e.trigger&&(!l||(v=await A(e.trigger,{timeoutMs:5e3,lazy:!0}),!v)))return;const m=[],b=await M(c?o?o/50:200:1,50,async()=>{v&&(Z(v),await ae(50));const x=Array.from((t??document.documentElement)?.querySelectorAll(f));if(x.length)return x}),R=(b??[]).map((x,J)=>({id:d(e.id,x),label:d(e.label,x)?.toLowerCase(),url:d(e.url,x),at:d(e.at,x),lang:d(e.lang,x),group:d(e.group,x),elIndex:J})),E=s?.toLowerCase(),G=E&&!!R[0]?.label?.startsWith(E),Y=(e.dismiss?(t??document.body).querySelector(e.dismiss):void 0)??v;if(Y&&Z(Y),!b?.length)return[];const F=R.map(({label:x})=>{if(!x)return;const J=G?x?.replace(E,"").trim():x;return C(J)}),I=F[1]?.chap;!F[0]&&(I===void 0||I<=1)&&(F[0]={chap:0});const Cr=h??re(this.siteMeta.readerBase,{titleId:r,titleSlug:n,lang:i}),Mr=Date.now();return F.forEach((x,J)=>{if(!x)return;const{id:Br,url:jr,at:Lr,lang:Or,group:Ar,elIndex:Ur}=R[J],rt=me(Lr,this.siteMeta.defaultLang),Q={...x,id:Br,lang:Or?.toLowerCase(),group:Ar,ts:rt?Math.min(Mr,rt):void 0};u&&(Q.elIndex=Ur);const X=this.parseChapterUrl(Cr,jr);X&&(Q.slug=X.slug,X.lang&&(Q.lang=X.lang)),m.push(Q)}),L(m,{preferGroup:g??this.context.preferGroup})}parseChapterUrl(e,t){if(!t||t?.startsWith("#"))return;const r=t?.startsWith("http")&&!t.includes(`//${location.hostname}/`),n=r?t:U(t);if(n)return r?{slug:n}:this.parseReaderUrl(e,n,t)}async isTitlePage(e){return!(!e||(e.sel||e.lazy)&&!await A(e.sel??e.name?.split("|")?.[0],{lazy:!!e.lazy}))}async isReaderPage(e,t){const r=e?.sel;return t&&!r?!1:!r||!!await A(r,{lazy:!!e.lazy})}static async verifyImgsCotainer(e){const t=e.split(",").map(r=>r.trim()).filter(Boolean).map(r=>`${r} img, ${r} canvas`).join(",");return!!await A(t,{lazy:!0,all:!1})}findNeighborChapter({sel:e,basePath:t,titleUrl:r}){const n=d(e);if(!n||n.startsWith("#")||n.startsWith("/#"))return;const s=U(n);if(s&&!(s===location.pathname||r===s||r===`${location.origin}${s}`))return this.parseReaderUrl(t,s,n).slug||void 0}finalizeRawReaderData(e,{prevSlug:t,nextSlug:r}={}){const n=e.title.chapters;if(!n.length){const o=C(t),u=C(r);return!o&&!u?e:{...e,prev:o?{...o,slug:t}:void 0,next:u?{...u,slug:r}:void 0}}let s,i,l,c;for(let o=0;o<n.length&&!(s&&(!t||l)&&!r&&c);o++){const u=n[o];!s&&(e.slug&&e.slug==u.slug||e.chap===u.chap&&(e.vol===u.vol||e.vol===void 0))?(s=u,i=o):!l&&t&&t===u.slug?l=u:!c&&r&&r===u.slug&&(c=u)}return i!==void 0&&(l??(l=n[i+1]),c??(c=n[i-1])),l&&!l.slug&&(l.slug=t),c&&!c.slug&&(c.slug=r),{...e,inferVol:s?.inferVol,prev:l,next:c}}}var Wt=Object.defineProperty,qt=(a,e,t)=>e in a?Wt(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Gt=(a,e,t)=>qt(a,e+"",t);class ye extends y{async getRawReleasesData(){const e=Array.from(document.querySelectorAll("script"));for(let t=0;t<e.length;t++){const r=e[t].textContent;if(!r)continue;const n=r.indexOf('{\\"latest\\":');if(n===-1)continue;const s=W(r.substring(n).split(',\\"page\\":1')[0].replaceAll("\\",""));if(!s)return;try{const i=s.latest.data.map(l=>({name:l.name,slug:l.slug,chapters:l.chapters.map(c=>({chap:c.name,slug:c.name+"",at:new Date(c.published_at||c.public_at).getTime()}))}));return this.finalizeRawReleasesData({rawReleases:i})}catch{break}}return super.getRawReleasesData()}}Gt(ye,"specId","asura");function Ft(){return Math.random().toString(16).slice(2)}async function Ht({addListener:a,removeListener:e,transform:t,filter:r,handler:n,onTimeout:s,timeout:i,once:l}){return new Promise(c=>{a(h);const o=()=>l===!0&&e(h),u=i?setTimeout(()=>{o(),c(void 0),s?.()},i):void 0;async function h(g,...p){g=t?t(g):g,g!==void 0&&(!r||r(g,...p))&&(o(),c(g),n?.(g,...p),u&&clearTimeout(u))}})}async function Jt(a){return(await Ht({addListener:e=>window.addEventListener("message",e),removeListener:e=>window.removeEventListener("message",e),...a}))?.data}async function Vt(a){const{receiverWindow:e,timeout:t,targetOrigin:r,event:n,args:s}=a,i={reqId:Ft(),event:n,args:s};return(e||window)?.postMessage(i,r??"*"),(await Jt({filter:l=>l?.data?.resId===i.reqId,timeout:t??3e4,once:!0}))?.result}const P={isAny:!0};function $(a,...e){return Vt({event:"tk:fetchResult",args:{baseUrl:a,segments:e}})}var Kt=Object.defineProperty,Yt=(a,e,t)=>e in a?Kt(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Qt=(a,e,t)=>Yt(a,e+"",t);class be extends y{async getRawReaderData(){const e=`https://${location.host}`,[t,r]=await Promise.all([$(e,"api","manga","info"),$(e,"api","read","chapter")]),n=t?.value,s=r?.value;if(!n||!s)return;const i=this.parseReaderUrl(this.siteMeta.readerBase,location.pathname,location.href);if(!i)return;const l=C(s.readChapter?.title);if(l)return this.finalizeRawReaderData({basePath:i.basePath,slug:i.slug,...l,imgs:s.readChapter.pages.map(c=>new URL(c.image,location.origin).href),title:{url:`${e}/manga/${n.id}`,slug:n.id,name:n.title,tags:this.getTagIdsFromNames([n.type].filter(Boolean)),chapters:L(n.chapters.map(c=>({slug:c.id,chap:c.number})),{preferGroup:this.context.preferGroup})}})}}Qt(be,"specId","atsu");var Xt=Object.defineProperty,Zt=(a,e,t)=>e in a?Xt(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,ea=(a,e,t)=>Zt(a,e+"",t);class ie extends y{parseTitleUrl(e){return{slug:U(e)?.split("/").filter(Boolean)[1]}}async getRawReaderData(){const e=await super.getRawReaderData();if(e)return{...e,imgs:e.imgs?.map(t=>t.startsWith("https://k")?t.replace("https://k","https://n"):t)}}}ea(ie,"specId","bato");var ta=Object.defineProperty,aa=(a,e,t)=>e in a?ta(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,ra=(a,e,t)=>aa(a,e+"",t);class Re extends y{async getRawReaderData(){const e=await super.getRawReaderData();if(e)return{...e,imgs:e.imgs?.map(t=>t.startsWith("https://k")?t.replace("https://k","https://n"):t)}}}ra(Re,"specId","bato3x");function $e(a){return String(a).normalize("NFKD").replace(/[\u0300-\u036f]/g,"").trim().toLowerCase().replace(/[^a-z0-9 -]/g,"").replace(/\s+/g,"-").replace(/-+/g,"-")}var na=Object.defineProperty,sa=(a,e,t)=>e in a?na(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,ia=(a,e,t)=>sa(a,e+"",t);class xe extends y{async getRawReleasesData(){const e=await super.getRawReleasesData();if(e)return{...e,rawReleases:e.rawReleases.map(t=>({...t,slug:`${t.slug}-${$e(t.name)}`}))}}async getRawChaptersData(){const e=j(),t=S(B(e,"result.pagination.total"),n=>Math.ceil(n/100))||0,r=(await Promise.all(Array.from({length:Math.max(0,t)},async(n,s)=>{if(s==0)return this.parseChapters(e);try{const i=location.href.replace("page=1",`page=${s+1}`),l=await fetch(i);return this.parseChapters(await l.json())||[]}catch{return[]}}))).flat();return{chapters:L(r,{preferGroup:this.context.preferGroup})}}parseChapters(e){const t=[];return B(e,"result.items")?.forEach?.(r=>{const n=S(B(r,"chapter_id"),i=>i+""),s=S(B(r,"number"));!n||s===void 0||t.push({slug:n,chap:s,vol:S(B(r,"volume"))||void 0,lang:w(B(r,"language")),group:w(B(r,"scanlation_group.name")),ts:S(B(r,"created_at"))})}),t}}ia(xe,"specId","comix");var la=Object.defineProperty,oa=(a,e,t)=>e in a?la(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,ca=(a,e,t)=>oa(a,e+"",t);class De extends y{async getRawReaderData(){const e=await super.getRawReaderData();if(!e)return;const t=window.pages,r=t?.map(n=>n?.image).filter(Boolean);if(!(!Array.isArray(r)||!r.length))return{...e,imgs:r,isWebtoon:t.some(n=>n.height/n.width>2)}}}ca(De,"specId","dynasty");var ua=Object.defineProperty,ga=(a,e,t)=>e in a?ua(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,pa=(a,e,t)=>ga(a,e+"",t);class Se extends H{async getRawReleasesData(){const e=j();if(e)return this.finalizeRawReleasesData({rawReleases:e.manga.map(t=>({id:t.id?t.id+"":void 0,name:t.title,slug:t.slug,chapters:t.chapters.map(r=>this.praseRawChapter(r))}))})}async getRawSearchData(){const e=j();if(e)return{rawReleases:e.data.map(t=>({id:t.id?t.id+"":void 0,slug:t.slug,name:t.title,img:`${location.origin}/${t.cover}`,chapters:[]}))}}async getRawTitleData(){const{slug:e}=this.parseTitleUrl(location.pathname);if(!e)return;const t=await $(location.origin,"api","backend","api","manga",e);if(!t)return;const r=this.parseRawTitleData(t.value),n=this.context.includeImgBytes&&r.img?await K(r.img):void 0;return{...r,imgBytes:n}}async getRawReaderData(){const{slug:e,titleSlug:t}=this.parseReaderUrl(this.siteMeta.readerBase,location.pathname,location.href);if(!e||!t)return;const[r,n]=await Promise.all([$(location.origin,"api","backend","api","manga",t),$(location.origin,"api","backend","api","chapters","by-number",t,e)]);if(!r||!n)return;const s=await this.parseRawTitleData(r.value),i=n.value;return{slug:e,chap:i.number,basePath:`/${location.pathname.split("/").filter(Boolean).slice(0,-1).join("/")}/`,imgs:i.pages.sort((l,c)=>l.order-c.order).map(l=>`${location.origin}${l.image.startsWith("/")?l.image:`/${l.image}`}`),title:s}}async getRawChaptersData(){const e=j();if(!e)return;const t=this.parseRawTitleData(e);return{chapters:t.chapters,title:{...t,chapters:[]}}}parseRawTitleData(e){return{id:e.id?e.id+"":void 0,url:`${location.origin}/${this.siteMeta.titleBase}/${e.slug}`,slug:e.slug,name:e.title,img:`${location.origin}/${e.cover}`,tags:this.getTagIdsFromNames([e.type,...e.genres.map(t=>t.name)].filter(Boolean)),chapters:e.chapters.map(t=>this.praseRawChapter(t)),hasMoreChapters:e.pagination.hasNextPage}}praseRawChapter(e){return{chap:e.number,slug:e.number+"",ts:new Date(e.createdAt||e.uploadedAt||e.updatedAt).getTime()}}}pa(Se,"specId","falcon");var ha=Object.defineProperty,da=(a,e,t)=>e in a?ha(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,fa=(a,e,t)=>da(a,e+"",t);class Te extends y{async getRawTitleData(){const e=await super.getRawTitleData();if(e)return{...e,chapters:[{slug:"1",chap:0}]}}async getRawReaderData(){const e=await super.getRawReaderData();if(!e||!e.imgs?.length)return e;const t=e.imgs[0],r=t.lastIndexOf("/"),n=r===-1?"":t.substring(0,r+1),s=r===-1?t:t.substring(r+1),i=s.substring(s.lastIndexOf(".")),l=w(d(".total_pages|text"),o=>+o)||1,c=Array.from({length:l},(o,u)=>`${n}${u+1}${i}`);return{...e,slug:"1",chap:0,imgs:c,title:{...e.title,chapters:[{slug:"1",chap:0}]}}}}fa(Te,"specId","imhen");var ma=Object.defineProperty,wa=(a,e,t)=>e in a?ma(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,va=(a,e,t)=>wa(a,e+"",t);class Ie extends y{async getRawTitleData(){const e=await super.getRawTitleData();if(e)return{...e,chapters:Ce()}}async getRawReaderData(){const e=await super.getRawReaderData();if(!e)return;const t=Ce();if(t.length)return{...e,title:{...e.title,img:Pe(e.title.slug),chapters:t}}}async getRawSearchData(){const e=await super.getRawSearchData();if(e)return{...e,rawReleases:e.rawReleases.map(t=>({...t,img:Pe(t.slug)}))}}}va(Ie,"specId","kagane");function Pe(a){return`https://api.${location.host}/api/v1/series/${a}/thumbnail`}function Ce(){const a=["initialBooksData","initialChapters"],e=Array.from(document.querySelectorAll("script"));for(let t=0;t<e.length;t++){const r=e[t].textContent;if(r)for(const n of a){const s=r.indexOf(n);if(s===-1)continue;const i=r.slice(s),l=W(i.slice(i.indexOf("["),i.indexOf("}]")+2).replaceAll("\\",""));if(!l?.length||!Array.isArray(l))return[];try{const c=[];return l.map(o=>{const u=C(o.name);u&&c.push({...u,slug:o.id,ts:o.created?new Date(o.created).getTime():void 0})}),L(c)}catch{return[]}}}return[]}var ya=Object.defineProperty,ba=(a,e,t)=>e in a?ya(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Ra=(a,e,t)=>ba(a,e+"",t);class le extends y{async getRawReleasesData(){const e=this.getNewSiteMeta(this.spec.releases?.title),t=await super.getRawReleasesData();if(t)return{...t,siteMeta:e}}async getRawTitleData(){if(!await this.isTitlePage(this.spec.title))return;const e=this.getNewSiteMeta(this.spec.title,`${location.origin}${location.pathname}`),t=await super.getRawTitleData();if(t)return{...t,siteMeta:e}}async getRawReaderData(){if(!await this.isReaderPage(this.spec.reader,this.spec.generic))return;const e=this.getNewSiteMeta(this.spec.reader?.title),t=await super.getRawReaderData();if(t)return{...t,siteMeta:e}}async getRawSearchData(){const e=this.getNewSiteMeta(this.spec.search?.title),t=await super.getRawSearchData();if(t)return{...t,siteMeta:e}}getNewSiteMeta(e,t){if(t??(t=$a(e)),!t)return;if(!this.siteId){const i={...this.siteMeta,releases:null,titleBase:"",readerBase:"",titleIdType:fe.name,trailing:t.endsWith("/"),defaultLang:d("html|attr:lang")||"en"};return this.siteMeta=i,i}const r=this.extractBasePath(t),n=this.siteMeta;if(n.titleBase===r)return;const s={...n,titleBase:r,readerBase:n.readerBase.replace(n.titleBase,r)};return this.siteMeta=s,s}extractBasePath(e){const t=e.startsWith("/")?e:U(e);return ve(t,"/").split("/").slice(0,-1).join("/")}}Ra(le,"specId","madara");function $a(a){if(!a)return;const e=a.sel?document.querySelector(a.sel)??void 0:void 0;return d(a.url,e)}var xa=Object.defineProperty,Da=(a,e,t)=>e in a?xa(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Sa=(a,e,t)=>Da(a,e+"",t);class Me extends y{async getRawTitleData(){const e=await super.getRawTitleData();if(!e)return;const t=await Be(this.context.preferGroup),r=new Set;return t.forEach(({lang:n})=>{n&&r.add(n)}),{...e,chapters:t,langs:r.size?Array.from(r):[this.siteMeta.defaultLang||"en"]}}async getRawReaderData(){const e=await super.getRawReaderData();if(!e)return;const t=await Be(e.group||this.context.preferGroup),r=t[0]?.lang;return this.finalizeRawReaderData({...e,lang:r,title:{...e.title,chapters:t,langs:r?[r]:void 0}})}}Sa(Me,"specId","mangaball");async function Be(a){const e=await M(100,50,()=>{try{return ALL_CHAPTERS.length?ALL_CHAPTERS:void 0}catch{return}});if(!e)return[];const t=[];return e.forEach(r=>{r.translations.forEach(n=>{const s=n.volume;t.push({chap:r.number_float,vol:s>0?s:void 0,slug:n.id,lang:n.language,group:n.group?.name,ts:new Date(n.date).getTime()})})}),L(t,{preferGroup:a})}var Ta=Object.defineProperty,Ia=(a,e,t)=>e in a?Ta(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Pa=(a,e,t)=>Ia(a,e+"",t);const Ca={a:.1,b:.2,c:.3,d:.4};class je extends y{parseTitleUrl(e){return{slug:U(e)?.split("/").filter(Boolean)[1]}}async getRawReleasesData(){const e=j()?.data;if(!e)return;const t=[];return e.forEach(({relationships:r,attributes:n,id:s})=>{const i=r.find(({type:h})=>h==="manga"),l=_(n.volume),c=_(n.chapter);if(c===void 0)return;const{title:o}=i.attributes,u=o.en??Object.values(o)[0];t.push({slug:i.id,name:u,chapters:[{slug:n.externalUrl||s,vol:l,chap:c,lang:n.translatedLanguage,ts:new Date(n.readableAt).valueOf()}]})}),super.finalizeRawReleasesData({rawReleases:t})}async getRawTitleData(){const e=`https://api.${location.host}/manga/`,[t,r]=await Promise.all([$(e,P),$(e,P,"feed")]);if(!t||!r)return;const n=r.value.data?.map?.(c=>{const{attributes:o,id:u}=c;if(typeof o!="object"||typeof u!="string"||!u)return;const{externalUrl:h,title:g,volume:p,chapter:f,translatedLanguage:v}=o;return{slug:h||u,label:g||void 0,vol:_(p),chap:_(f),lang:v||"en",ts:new Date(o.readableAt).valueOf()}}).filter(c=>c?.chap!=null)??[],{data:s}=t.value;if(!s)return;const i=Oe({data:s,getTagIdsFromNames:c=>this.getTagIdsFromNames(c)});if(!i)return;const l=this.context.includeImgBytes&&i.img?await K(i.img):void 0;return{...i,imgBytes:l,chapters:L(n,{preferGroup:this.context.preferGroup}),hasMoreChapters:(r.value.total||0)>(r.value.limit||0)}}async getRawReaderData(){const e="https://api.mangadex.org/",[t,r,n]=await Promise.all([$(e,"chapter",P),$(e,"at-home","server",P),$(e,"manga",P,"aggregate")]);if(!t||!r||!n)return;const s=t.value.data,{volume:i,chapter:l,externalUrl:c,translatedLanguage:o}=s.attributes||{},{baseUrl:u,chapter:{data:h,dataSaver:g,hash:p}}=r.value,f=s.relationships?.find?.(I=>I.type==="manga");if(!f)return;const v=Oe({data:f,getTagIdsFromNames:I=>this.getTagIdsFromNames(I)});if(!v||typeof n.value.volumes!="object")return;const m=Le(n.value,{preferGroup:this.context.preferGroup})??[];(typeof l!="string"||l==="none")&&!m.length&&m.push({chap:0,slug:s.id});const b=m.findIndex(I=>I.slug===s.id),R=s.relationships?.find?.(I=>I.type==="scanlation_group"),E=u.endsWith("/")?u:u+"/",G=!!localStorage.getItem("md")?.includes?.('"dataSaver":true'),Y=`${E}${G?"data-saver":"data"}/`,F=((G?g:h)??[]).map?.(I=>`${Y}${p}/${I}`)??[];return{externalUrl:c,vol:_(i),inferVol:m[b]?.inferVol,chap:_(l)||0,imgs:F,lang:o,slug:s.id,prev:m[b+1],next:m[b-1],basePath:"/chapter/",group:R?.attributes?.name,groupUrl:R?.attributes?.website,isWebtoon:f?.attributes?.tags?.some(I=>I.attributes.name.en==="Long Strip"),title:{...v,chapters:m}}}async getRawChaptersData(){const e=j();if(!e)return;let t;try{t=Le(e,{preferGroup:this.context.preferGroup})}catch{return}if(t)return{chapters:t,lang:this.context.lang??"en",asc:!1,hasMore:!1,total:t.length}}}Pa(je,"specId","mangadex");function _(a){if(typeof a!="string"||a==="none")return;const e=parseFloat(a);if(e!==e)return;const t=a[a.length-1];return e+(Ca[t]??0)}function Le(a,{preferGroup:e}){if(typeof a.volumes!="object")return;const t=Object.values(a.volumes).map(({volume:r,chapters:n})=>{const s=_(r);return Object.values(n).map(({id:i,chapter:l})=>{const c=_(l);if(c!==void 0)return{vol:s,chap:c,slug:i}})}).flat().filter(Boolean).reverse();return L(t,{preferGroup:e})}function Oe({data:a,getTagIdsFromNames:e}){const{id:t,attributes:r,relationships:n}=a;if(!t||typeof t!="string"||typeof r!="object")return;const{title:s,availableTranslatedLanguages:i,altTitles:l,tags:c,contentRating:o}=r;if(typeof s!="object"||i&&!Array.isArray(i))return;const u=Object.values(s)[0];if(!u||typeof u!="string")return;const h=Ma(),g=(i??[])?.map?.(R=>typeof R=="string"?R:void 0).filter(Boolean)??[],p=g.filter(R=>R&&(!h||h.includes(R))),f=l?.map?.(R=>{const[[,E]=[]]=Object.entries(R);return E}),v=n?.find?.(R=>R.type==="cover_art")?.attributes?.fileName,m=v?`https://mangadex.org/covers/${t}/${v}.256.jpg`:void 0,b=(c||[]).map(R=>R?.attributes?.name?.en).concat(o).filter(Boolean);return{url:`${location.origin}/title/${t}`,slug:t,name:u,altNames:f,langs:p.length>0?p:g.length>0?g:["en"],img:m,tags:e(b)}}function Ma(){const a=localStorage.getItem("md");if(!a)return;const e=W(a);if(e)try{const t=e?.userPreferences?.filteredLanguages;return t?.length?t:void 0}catch{return}}var Ba=Object.defineProperty,ja=(a,e,t)=>e in a?Ba(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,La=(a,e,t)=>ja(a,e+"",t);class Ae extends y{async getRawReaderData(){if((await A(".current-viewtype",{lazy:!0,all:!1}))?.textContent?.trim().toLowerCase()!=="volume")return await super.getRawReaderData()}async getRawChaptersData(){const e=this.context.lang??"en",t=await A(`.tab-content[data-name="chapter"] a.dropdown-item[data-code="${e.toUpperCase()}"]`,{lazy:!0,all:!1});if(t)return Z(t),await A(`.tab-content[data-name="chapter"] li.item[data-number] a[href*="/${e}/"]`,{lazy:!0,all:!1}),await super.getRawChaptersData()}async getRawSearchData(){const e=await super.getRawSearchData();if(!e)return;const t=this.context.lang??"en";return{...e,rawReleases:e.rawReleases.map(r=>({...r,lang:r.lang??t}))}}}La(Ae,"specId","mangafire");var Oa=Object.defineProperty,Aa=(a,e,t)=>e in a?Oa(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Ua=(a,e,t)=>Aa(a,e+"",t);class Ue extends y{async getRawReaderData(){const e=await super.getRawReaderData();return e&&{...e,imgs:await this.getImgs()}}parseReaderUrl(e,t,r){const{slug:n,basePath:s}=super.parseReaderUrl(e,t,r),i=n.split("/").filter(Boolean),l=i[i.length-1];return{basePath:s,slug:l.startsWith("pg-")?i.slice(0,-1).join("/"):n}}async getImgs(){const e=await M(100,20,()=>window.imgsrcs),t=window.CryptoJS,r=t.enc.Hex.parse("e11adc3949ba59abbe56e057f20f883e"),n={iv:t.enc.Hex.parse("1234567890abcdef1234567890abcdef"),padding:t.pad.ZeroPadding};return t.AES.decrypt(e,r,n).toString(t.enc.Utf8).split(",")}}Ua(Ue,"specId","mangago");var Ea=Object.defineProperty,_a=(a,e,t)=>e in a?Ea(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Na=(a,e,t)=>_a(a,e+"",t);class Ee extends y{async getRawTitleData(){const e=`https://backend.${location.host}`,t=await $(e,"chapters-with-ids",P,P),r=await super.getRawTitleData();if(!(!t?.value||!r))return{...r,langs:await ka(),chapters:oe(t.value)}}async getRawChaptersData(){const e=j();if(e)return{chapters:oe(e)}}async getRawReaderData(){const e=`https://backend.${location.host}`,[t,r]=await Promise.all([$(e,"chapters-with-ids",P,P),$(e,"read",P)]);if(!t?.value||!r?.value?.length)return;const n=await super.getRawReaderData();if(!n)return;const s=new URLSearchParams(location.search).get("number")??"0";return{...n,slug:`${n.slug}?number=${s}`,imgs:r.value,title:{...n.title,chapters:oe(t.value)}}}}Na(Ee,"specId","mangahaven");async function ka(){const a=document.querySelector('[role="tabpanel"] button');if(!a)return;const e=document.createElement("style");e.innerHTML="[data-radix-popper-content-wrapper] { display: none !important; }",document.head.appendChild(e),a.click();const t=await M(50,10,()=>q('img[src*="/flags/"]|attr:src|pattern:.+/(.+).svg'));return a.click(),setTimeout(()=>document.head.removeChild(e),1e3),t}function oe(a){const e=[];return a?.forEach?.(t=>{const r=+t.chapter;isNaN(r)||!t.id||e.push({chap:r,slug:`${t.id}?number=${t.chapter}`,lang:t.lang?.toLowerCase?.()})}),e}var za=Object.defineProperty,Wa=(a,e,t)=>e in a?za(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,qa=(a,e,t)=>Wa(a,e+"",t);class _e extends ie{}qa(_e,"specId","mangapill");var Ga=Object.defineProperty,Fa=(a,e,t)=>e in a?Ga(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Ha=(a,e,t)=>Fa(a,e+"",t);class Ne extends y{async getRawTitleData(){const e=await super.getRawTitleData();return e&&{...e,chapters:e.chapters.map(t=>({...t,slug:t.slug?.split("/").filter(Boolean).slice(-1)[0]}))}}}Ha(Ne,"specId","mangaplus");var Ja=Object.defineProperty,Va=(a,e,t)=>e in a?Ja(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Ka=(a,e,t)=>Va(a,e+"",t);class ke extends le{async getRawReaderData(){const e=await super.getRawReaderData();if(e)return{...e,title:{...e.title,id:await this.getReaderTitleId()}}}async getReaderTitleId(){const e=await window.HISTORY?.getStored?.();if(!e||typeof e!="object")return;const t=Object.values(e).filter(Boolean);if(!t.length)return;t.sort((n,s)=>s.time-n.time);const r=t[0].manga_ID;return w(r)??S(r,n=>n+"")}}Ka(ke,"specId","mangastream");var Ya=Object.defineProperty,Qa=(a,e,t)=>e in a?Ya(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Xa=(a,e,t)=>Qa(a,e+"",t);class ze extends y{async getRawReaderData(){const e=await super.getRawReaderData();return!e||!e.title.chapters.length?e:{...e,prev:e.prev?{...e.prev,slug:ce(e.title.slug,e.prev.slug)}:void 0,next:e.next?{...e.next,slug:ce(e.title.slug,e.next.slug)}:void 0,title:{...e.title,chapters:e.title.chapters.map(t=>({...t,slug:ce(e.title.slug,t.slug)}))}}}}Xa(ze,"specId","mangatime");function ce(a,e){if(e)return`/manga/${a}/chapter-${e}`}var Za=Object.defineProperty,er=(a,e,t)=>e in a?Za(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,tr=(a,e,t)=>er(a,e+"",t);class We extends y{async getRawReaderData(){const e=await super.getRawReaderData();if(e?.imgs?.length!==1)return e;e.slug.includes("//")&&(e.slug=qe(e.slug).split("/").filter(Boolean)[3]);const t=S(document.querySelector("select.index-page,.page_select select")?.childElementCount,p=>p-1);if(!t||t<=1)return e;const[r]=e.imgs,n=r.split(/\d+\.[a-z]{3,5}$/i)?.[0];if(!n)return e;const s=(+(d(".page_select .select|text")||"1")||1)-1,i=r.replace(n,""),[l,c]=i.split("."),o=l.length,u=+l-s,h=u+t-1,g=[];for(let p=u;p<=h;p++)g.push(`${n}${(p+"").padStart(o,"0")}${c?`.${c}`:""}`);return{...e,imgs:g}}parseChapterUrl(e,t){if(t)return this.parseReaderUrl(e,qe(t),t)}}tr(We,"specId","mangatown");function qe(a){return a.replace(location.origin,"").replace("//","/")}var ar=Object.defineProperty,rr=(a,e,t)=>e in a?ar(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,nr=(a,e,t)=>rr(a,e+"",t);class Ge extends y{async getRawReaderData(){const e=await super.getRawReaderData();return e&&{...e,slug:e.slug.split("/").slice(0,-1).join("/")||e.slug.split("/")[0]}}}nr(Ge,"specId","mangaworld");var sr=Object.defineProperty,ir=(a,e,t)=>e in a?sr(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,lr=(a,e,t)=>ir(a,e+"",t);class Fe extends y{async getRawTitleData(){const e=await super.getRawTitleData();if(e)return{...e,hasMoreChapters:e.chapters.length===50}}}lr(Fe,"specId","mgeko");var or=Object.defineProperty,cr=(a,e,t)=>e in a?or(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,ur=(a,e,t)=>cr(a,e+"",t);class He extends H{async getRawReleasesData(){}async getRawSearchData(){}async getRawTitleData(){const e=await Je();if(!e)return;const t=d("#cover img|[attr:data-src,attr-contain:src]")??e.img;return{...e,img:t,imgBytes:this.context.includeImgBytes&&e.img?await K(e.img):void 0}}async getRawReaderData(){const e=await Je();if(!e)return;const t=d("#image-container img|[attr:data-src,attr-contain:src]"),r=ne(t);if(!r)return;const n=r.pathname.split("/").filter(Boolean).slice(0,-1).join("/"),s=`${r.origin}/${n}/`;return{chap:0,slug:"1",basePath:e.url.replace(location.origin,"").slice(1),imgs:e.pages.map((i,l)=>`${s}${l+1}.${Ve(i)}`),title:{name:e.name,slug:e.slug,url:e.url,chapters:[{slug:"1",chap:0}]}}}async getRawChaptersData(){const e=await this.getRawTitleData();if(!e)return;const{chapters:t,...r}=e;return{title:{...r,chapters:[]},chapters:t}}}ur(He,"specId","nhentai");async function Je(){const a=await M(100,20,()=>window._gallery);if(!a?.id||!a?.title||!a?.images?.pages)return;const{title:e,images:{pages:t,cover:r},media_id:n}=a;return{name:e.pretty??e.english??e.japanese,slug:a.id+"",url:`${location.origin}/g/${a.id}`,chapters:[{slug:"1",chap:0}],pages:t.map(s=>s.t??"w"),img:await gr(n,r.t)}}async function gr(a,e){if(!a||!e)return;const t=Ve(e),r=(await M(10,20,()=>window._n_app))?.options?.thumb_cdn_urls?.[0];if(r)return`https://${r}/galleries/${a}/cover.${t}`}function Ve(a){return{j:"jpg",p:"png",g:"gif",w:"webp"}[a]??"webp"}var pr=Object.defineProperty,hr=(a,e,t)=>e in a?pr(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,dr=(a,e,t)=>hr(a,e+"",t);class Ke extends y{finalizeRawReaderData(e,{prevSlug:t,nextSlug:r}={}){if(!e.title.chapters.length){const n=C(t?.split(".").slice(0,-1).join(".")),s=C(r?.split(".").slice(0,-1).join("."));return!n&&!s?e:{...e,prev:n?{...n,slug:t}:void 0,next:s?{...s,slug:r}:void 0}}return super.finalizeRawReaderData(e,{prevSlug:t,nextSlug:r})}}dr(Ke,"specId","rawkuma");var fr=Object.defineProperty,mr=(a,e,t)=>e in a?fr(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,wr=(a,e,t)=>mr(a,e+"",t);class Ye extends y{async getRawTitleData(){const e=await super.getRawTitleData();if(!e)return;const t=q(".info-detail__row > .genre-btn,.info__right .stats__row:first-child|text")?.map(r=>[r,...r.split(" ")]).flat();return Qe({...e,tags:this.getTagIdsFromNames(t)??[]},".episode-header .episode-cnt")}async getRawReaderData(){const e=await super.getRawReaderData();if(!e)return;const t=`${location.origin}/series/${e.title.slug}/info`;return{...e,title:{...Qe({...e.title,url:t,tags:[]},".episode-list .js-ep-cnt"),hasMoreChapters:!1}}}async getRawChaptersData(){const{rawId:e,skip:t}=this.context,r=1e3,n=t?Math.floor(t/1e3)+1:1;try{const s=await fetch(`/series/${e}/episodes?page=${n}&sort=NEWEST&max_limit=${r}`);return vr(await s.json())}catch{return}}parseTitleUrl(e){if(!e)return{};const t=e.split("/").filter(Boolean);return{slug:t[1]??t[0]}}}wr(Ye,"specId","tapas");function Qe(a,e){const t=yr(e)>20;return{...a,chapters:t?[]:a.chapters,hasMoreChapters:t}}function vr(a){const e=a?.data?.episodes;if(!Array.isArray(e))return;const t=e.map(n=>({chap:n.pending_scene??n.scene,slug:n.id+"",ts:new Date(n.publish_date)?.valueOf?.()||void 0})),r=a?.data?.pagination;return{chapters:t,total:r?.total??t.length,hasMore:!!r?.has_next}}function yr(a){return+(document.querySelector(a)?.textContent?.trim().split(" ")[0]||0)}var br=Object.defineProperty,Rr=(a,e,t)=>e in a?br(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,$r=(a,e,t)=>Rr(a,e+"",t);class Xe extends y{async getRawTitleData(){const e=new URLSearchParams(location.search),t=e.get("episode_no"),r=e.get("title_no");if(t||!r)return;const n=await super.getRawTitleData();if(!n)return;const s=location.hostname.startsWith("m."),i=location.pathname.split("/")[1];return{...n,slug:`${n.slug}?title_no=${r}`,id:r,langs:i?[i]:void 0,chapters:s?[]:n.chapters.map(l=>({...l,lang:i})),hasMoreChapters:s||(document.querySelector(".paginate")?.childElementCount??1)>1}}async getRawReaderData(){const e=new URLSearchParams(location.search),t=e.get("episode_no"),r=e.get("title_no"),n=t?+t:void 0;if(!t||!r||typeof n!="number"||isNaN(n))return;const s=document.title.split("|")[1]?.trim();if(!s)return;const i=location.pathname.split("/"),l=`${i.slice(0,4).join("/")}/list?title_no=${r}`,c=await this.getChapters({sel:"#sequence_scroll li.eg-flick-panel,#toolbar .episode_lst li[data-episode-no]",url:"a|attr:href",label:"|attr:data-episode-no || a|attr:href|pattern:.+episode_no=(\\d+).*"},{lazy:!1,titleId:r,titleSlug:l,titleName:s}),o=i[1];return{chap:n,lang:o,slug:`${location.pathname}?title_no=${r}&episode_no=${t}`,basePath:"",imgs:await this.getReaderImgs(),isWebtoon:!0,title:{id:r,url:l,slug:l,name:s,langs:[o],chapters:(c??[]).map(u=>({...u,lang:o})),hasMoreChapters:!1}}}async getReaderImgs(){const e=q("#_imageList img|[attr:data-url,attr:src]");return e?.length?e:await M(100,50,()=>window.__viewerState__?.scrollViewerParam?.imageList?.map(({url:t})=>t).filter(Boolean))}parseReaderUrl(e,t,r){if(!r)return{basePath:"",slug:t};if(r.startsWith("http://")||r.startsWith("https://")){const n=ne(r);return{basePath:"",slug:n.pathname+n.search}}return{basePath:"",slug:r}}}$r(Xe,"specId","webtoon");function xr(a){if(a)return typeof a=="string"||Array.isArray(a)?a.length?a:void 0:typeof a=="object"?Object.keys(a).length?a:void 0:a}var Dr=Object.defineProperty,Sr=(a,e,t)=>e in a?Dr(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Tr=(a,e,t)=>Sr(a,e+"",t);class Ze extends y{async getRawReleasesData(){const e=j();if(!e?.data?.length)return;const t=[];return e.data?.forEach(r=>{const n=C(r.chapter)?.chap,s=ue(r.relationships?.manga);!s||n===void 0||t.push({...s,chapters:[{vol:+r.vol||void 0,chap:n,slug:r.id,lang:w(r.lang),ts:w(r.published_at,i=>new Date(i).getTime())}]})}),this.finalizeRawReleasesData({rawReleases:t})}async getRawTitleData(){const e=await super.getRawTitleData();if(!e)return;const t=`https://api.${location.host}`,[r,n]=await Promise.all([$(t,"manga",e.id??P),$(t,"manga",e.id??P,"chapters")]),s=r?.value?.relationships?.available_languages?.map?.(i=>w(i)).filter(Boolean);if(e.langs=xr(s),n){const i=[];n.value.data?.forEach(l=>{const c=C(l.chapter),o=w(l.id);!c||!o||i.push({vol:+l.volume||void 0,chap:c.chap,slug:o,lang:w(l.language),group:w(l.relationships?.groups?.[0]?.name),ts:w(l.created_at,u=>new Date(u).getTime())})}),i.length&&(e.chapters=i,e.hasMoreChapters=n.value.total>n.value.limit)}return e}async getRawReaderData(){const e=this.parseReaderUrl(this.siteMeta.readerBase,location.pathname,location.href),t=e.slug.split("/").filter(Boolean)[0],r=`https://api.${location.host}`,[n,s]=await Promise.all([$(r,"chapter",t),$(r,"manga",P,"aggregate")]);if(!n||!s)return;const i=n.value,l=S(+i.chapter),c=i.relationships?.manga,o=ue(c);if(!o||l===void 0)return;const u=w(i.language),h=w(i.relationships?.groups?.[0]?.name),g=c.relationships?.tags?.map(m=>m.name)?.filter(Boolean),p=this.parseAggregateChapter(s.value),f=`${i.node}/data/${t}/`,v=i.data_optimized?.map?.(m=>`${f}${m.name}`);return this.finalizeRawReaderData({basePath:e.basePath,slug:`${t}/1`,vol:+i.volume||void 0,chap:l,lang:u,group:h,title:{...o,url:`${location.origin}/title/${o.id}/${o.slug}`,tags:g?this.getTagIdsFromNames(g):void 0,langs:s.value.languages?.map(m=>w(m)).filter(Boolean),chapters:p},imgs:v})}async getRawChaptersData(){const e=j();return e?{chapters:this.parseAggregateChapter(e)}:void 0}parseAggregateChapter(e){const t=e.groups?.map?.(s=>w(s?.name)),r=e.langs?.map?.(s=>w(s)).filter(Boolean),n=[];return e.chapters?.forEach(s=>{const i=C(s.chapter);if(!i)return;const l=+s.volume||void 0,c=i.chap;Object.entries(s.entries||{}).forEach(([o,u])=>{const h=w(u.published_at,p=>new Date(p).getTime()),g=S(u.language,p=>r?.[p]);u?.groups?.forEach(p=>{n.push({vol:l,chap:c,slug:o,lang:g,group:t[p],ts:h})})})}),L(n,{preferGroup:this.context.preferGroup})}async getRawSearchData(){try{const e=new URLSearchParams(location.search).get("title");if(!e)return;const t=await fetch(`https://api.${location.host}/manga?title=${encodeURIComponent(e)}&limit=42`);if(!t.ok)return;const r=await t.json(),n=[];return r?.data?.forEach?.(s=>{const i=ue(s);i&&n.push(i)}),{rawReleases:n}}catch{return}}}Tr(Ze,"specId","weebdex");function ue(a){if(!a)return;const e=a?.relationships?.cover;return{id:a.id,slug:$e(a.title),name:a.title,img:e?`https://srv.notdelta.xyz/covers/${a.id}/${e.id}${e.ext}`:void 0,chapters:[]}}const Ir=[ye,be,ie,Re,xe,De,Se,Te,Ie,le,Me,je,Ae,Ue,Ee,_e,Ne,ke,Fe,ze,We,Ge,He,Ke,Ye,Xe,Ze];function et(a){const e=Ir.find(t=>t.specId===a.spec.id)??y;return new e(a)}async function Pr(a){const{spec:e,type:t}=a,r=a.siteMeta??e?.meta;if(e&&r){const n=t?[t]:tt(r,e.generic);if(!n.length)return;const s=et({...a,spec:e,siteMeta:r});return await z(n.map(i=>s.getRawPageByType(i,n.length>1)))}return await z((a.genericSpecs??[]).map(n=>{if(!n.meta||!n.generic)return[];const s=t?[t]:tt(n.meta,n.generic);if(!s.length)return[];const i=et({...a,spec:n,siteMeta:n.meta});return s.map(l=>i.getRawPageByType(l,!0))}).flat())}function tt(a,e){if(location.pathname==="/"&&!a.single)return[];const{titleBase:t,readerBase:r}=a,n=location.pathname.split("/").filter(Boolean),s=at(n,r),i=at(n,t);if(s&&i)return[T.reader,T.title];const l=[];return!i&&(s!==!1||e)&&l.push(T.reader),!s&&(i!==!1||e)&&l.push(T.title),!l.length&&e?[T.reader,T.title]:l}function at(a,e){if(!e)return;const t=e.split("/").filter(Boolean),r=t.indexOf("{slug}"),n=r===t.length-1,s=!n&&r!==-1;if(n&&(t.pop(),!t.length))return;const i=a.length-t.length;if(s?i<0:i<=0)return!1;let l=!1;for(let c=0;c<t.length;c++){const o=t[c];if(o[0]!=="{"){if(o!==a[c])return!1;l=!0}}if(l&&i===(s?0:1))return!0}k.PageType=T,k.scrape=Pr}));
1
+ (function(z,W){typeof exports=="object"&&typeof module<"u"?W(exports):typeof define=="function"&&define.amd?define(["exports"],W):(z=typeof globalThis<"u"?globalThis:z||self,W(z._trackkun_={}))})(this,(function(z){"use strict";function W(a){let e=!1;return new Promise((t,r)=>{Promise.all(a.map(async n=>{const s=await n;!e&&s&&(e=!0,t(s))})).then(()=>{e||t(void 0)})})}async function B(a,e,t){const r=await t(()=>{a=0});if(r!==void 0)return r;if(!(a<=0))return await new Promise(n=>{setTimeout(async()=>{const s=await B(a-1,e,t);n(s)},e)})}async function U(a,e,t=0){const r=e.root??document.documentElement,n=e.timeoutMs??1e4;return B(e.lazy===!0?n/50:0,50,()=>{const s=e.all===!0?Array.from(r.querySelectorAll(a)):r.querySelector(a)??void 0;return(e.all?!s?.length:!s)?void 0:s})}function Z(a){if(a instanceof HTMLOptionElement){const e=a.parentElement instanceof HTMLOptGroupElement?a.parentElement.parentElement:a.parentElement;if(!e||!(e instanceof HTMLSelectElement))return;const t=a.getAttribute("value")||"";if(e.value===t)return;e.value=t,e.dispatchEvent(new Event("change"));return}a instanceof HTMLAnchorElement&&a.addEventListener("click",e=>e.preventDefault(),{once:!0}),a.click(),a.dispatchEvent(new PointerEvent("pointerdown",{bubbles:!0,cancelable:!0,pointerType:"mouse",button:0})),a.dispatchEvent(new MouseEvent("mousedown",{bubbles:!0,cancelable:!0,view:window,button:0}))}function H(a){if(a)try{return JSON.parse(a)}catch{return}}const ge={text:de,attr:ut,"attr-contain":gt,value:pt,row:ht,"bg-image":dt,json:ft},it={pattern:mt,remove:wt,atob:vt};function d(a,e){if(a)return pe(a,e,ot)}function q(a,e){if(a)return pe(a,e,ct)}function pe(a,e,t){if(!a)return;const r=a.split("||").map(n=>n.trim()).filter(Boolean);for(const n of r){const s=lt(n);if(!s)continue;const i=t(e??document.documentElement,s);if(i)return i}}function lt(a){const[e,t,...r]=a.split("|");if(!t)return;const n=t?.startsWith("[")&&t.endsWith("]")?t.substring(1,t.length-1).split(","):[t];return{selector:e||void 0,extractors:n.map(ee),transformers:r.map(ee)}}function ee(a){const e=a.indexOf(":"),t=e!==-1;return{fn:t?a.substring(0,e):a,param:t?a.substring(e+1):""}}function ot(a,e){if(!e.selector)return he(a,e);const t=yt(e.selector);for(const r of t){const n=Array.from(a.querySelectorAll(r));for(const s of n){const i=he(s,e);if(i)return i}}}function ct(a,e){const t=e.selector?Array.from(a.querySelectorAll(e.selector)):[a],r=[];for(const n of t)for(const s of e.extractors){const i=ge[s.fn],l=i(n,s.param);if(l){r.push(te(l,e.transformers));break}}if(r.length)return r}function he(a,e){for(const t of e.extractors){const r=ge[t.fn],n=r(a,t.param);if(n)return te(n,e.transformers)}}function te(a,e){let t=a;for(const r of e){const n=it[r.fn];n&&(t=n(t,r.param).trim())}return t}function de(a){return Array.from(a.childNodes).filter(e=>e.nodeType===3).map(e=>k(e.textContent)).filter(Boolean).join(" ").trim()||k(a.textContent)}function ut(a,e){return k(a.getAttribute(e))}function gt(a,e){let t=a.getAttribute(e);if(!t){const r=a.getAttributeNames().find(n=>n.includes(e));r&&(t=a.getAttribute(r))}return k(t)}function pt(a){return a.value}function ht(a,e){if(!e)return;const t=k(a.textContent)?.toLowerCase(),r=e.toLowerCase();if(!(t!==r&&t!==`${r}:`))return k(a.nextElementSibling?.textContent??a.nextSibling?.textContent)}function dt(a){const e=getComputedStyle(a).backgroundImage;if(!(!e||!e.startsWith("url(")))return e.slice(5,-2)||void 0}function ft(a,e){const t=j(H(de(a)),e);return typeof t=="number"?t+"":typeof t=="string"?k(t+""):void 0}function j(a,e){if(!a||!e)return;const t=e.indexOf("."),r=t!==-1,n=r?e.substring(0,t):e,s=r?e.substring(t+1):void 0;try{const i=a[n];return s?j(i,s):i}catch{return}}function k(a){if(a)return a?.replace(/(\n|\t)/g," ").trim()||void 0}function mt(a,e){if(e)try{return a.replace(new RegExp(e,"i"),"$1")}catch{}return a}function wt(a,e){if(e)try{return a.replaceAll(new RegExp(e,"gi"),"")}catch{}return a}function vt(a){try{return window.atob(a)}catch{return a}}function yt(a){const e=[];let t="",r=!1;for(let s=0;s<a.length;s++){const i=a[s];if(i==="["?r=!0:i==="]"&&(r=!1),i===","&&!r){const l=t.trim();l.length>0&&e.push(l),t=""}else t+=i}const n=t.trim();return n.length>0&&e.push(n),e}var bt=(a=>(a[a.reading=1]="reading",a[a.paused=2]="paused",a[a.plan=3]="plan",a[a.completed=4]="completed",a[a.dropped=5]="dropped",a[a.deleted=6]="deleted",a))(bt||{}),Rt=(a=>(a[a.ok=1]="ok",a[a.hidden=2]="hidden",a[a.deleted=3]="deleted",a))(Rt||{}),$t=(a=>(a[a.aggregator=0]="aggregator",a[a.scanlator=1]="scanlator",a))($t||{}),xt=(a=>(a[a.pending=0]="pending",a[a.completed=1]="completed",a[a.offline=2]="offline",a[a.incompat=3]="incompat",a))(xt||{}),fe=(a=>(a.id="id",a.name="name",a.slug="slug",a))(fe||{}),K=(a=>(a.blank="about:blank",a.title="meta.title",a.reader="meta.reader",a))(K||{});function ae(a=0){return new Promise(e=>setTimeout(e,a))}const Dt=/(vol(ume)?|season)(\s*|-|\.)(\d+)/i,St=/^S([1-9])\s/i,It=/(ch(ap(t(er)?|\.)?|\.)?|#|episode\.?|capitolo\.?|capitulo\.?|bölüm\.?)(\s*|-)(\d+([_-~,.]\d+)?)/i,Tt=/\d+([_-~,.]\d+)?/,Pt=/[_-~,]/;function Ct(a){const e=a.match(Dt);if(e)return{volStr:e[0],volValueStr:e[4]};const t=a.match(St);return t?{volStr:t[0],volValueStr:t[1]}:{}}function C(a){if(!a)return;if(!isNaN(+a))return{chap:+a};const{volStr:e,volValueStr:t}=Ct(a),r=e?a.replace(e,"").trim():a,n=r.match(It),s=r.match(Tt),i=n?.[6],l=i??s?.[0];if(!l)return;const c=+l.replace(Pt,".");if(isNaN(c))return;const o=e&&t&&!isNaN(+t)&&a.indexOf(e)<a.indexOf(i?n[0]:s[0])?+t:void 0;return{vol:o===void 0||o<=0?void 0:o,chap:c}}async function Y(a,e=240){return new Promise(t=>{const r=new Image;r.crossOrigin="anonymous",r.onerror=()=>t(void 0),r.onload=()=>{const n=document.createElement("canvas"),s=n.getContext("2d"),i=Math.max(1,r.naturalWidth/e),l=r.naturalWidth/i,c=r.naturalHeight/i;n.width=l,n.height=c;const o=/iPad|iPhone|iPod/.test(navigator.userAgent);try{s.drawImage(r,0,0,l,c);const u=n.toDataURL(o?"image/jpg":"image/webp",o?.99:.8).split(",").slice(-1)[0];t(u)}catch{t(void 0)}},r.src=a})}async function Mt(a,e=240){const t=await Bt(a);if(t)return await new Promise(async r=>{const n=Y(t,e),s=setTimeout(()=>r(void 0),100),i=await n;clearTimeout(s),r(i)})}async function Bt(a){if(a.startsWith("blob:"))return a;try{const e=await fetch(a);if(e.status>=400)return;const t=await e.blob();return URL.createObjectURL(t)}catch{return}}function I(a,e){if(e==="")return a;if(!e)return;const t=e.split("||").map(r=>r.trim()).filter(Boolean);for(const r of t){const[n,...s]=r.split("|"),i=j(a,n);if(typeof i=="number"||i){if(typeof i!="string")return i;const l=i.replace(/(\n|\t)/g," ").trim();if(l){const c=te(l,s.map(ee));if(c)return c}}}}function L(a){if(a?.startsWith("window")){const e=a.indexOf(".");return e===-1?void 0:I(window,a.substring(e+1))}return H(a?d(a):document.querySelector("pre")?.textContent)}function T(a,e){if(typeof a=="number")return e?e(a):a}function m(a,e){if(typeof a=="string")return e?e(a):a}function O(a,e){const t=a.map(o=>({...o,vol:o.vol===0?void 0:o.vol}));t.sort((o,u)=>o.vol===void 0||u.vol===void 0?u.chap-o.chap:u.vol-o.vol||u.chap-o.chap);const r={},n={};for(let o=t.length-1;o>=0;o--){const u=t[o],h=u.group??"";r[h]=(r[h]??0)+1;const g=u.lang??"";u.vol!==void 0?n[g]=u.vol:n[g]!==void 0&&(u.inferVol=n[g])}const s=[],i={},l=e?.preferGroup,c=o=>o.lang??"";for(const o of t){const u=c(o),h=i[u],g=s[h];if(!(g&&g.chap===o.chap&&(g.vol===o.vol||g.vol===void 0||o.vol===void 0))){i[u]=s.length,s.push(o);continue}if(!l){g.vol===void 0&&o.vol!=null&&(s[h]=o);continue}g.group!==l&&(o.group==l||g.group&&!o.group||r[o.group??""]>r[g.group??""])&&(s[h]=o)}return s}const jt=[{seconds:1,locales:{en:"sec",vi:"gi\xE2y",tr:"ikinci",es:"segunda"}},{seconds:60,locales:{en:"min",vi:"ph\xFAt",tr:"dakika"}},{seconds:3600,locales:{en:"hour",vi:"gi\u1EDD",tr:"saat",fr:"heure",it:"ora",es:"hora"}},{seconds:86400,locales:{en:"day",vi:"ng\xE0y",tr:"g\xFCn",fr:"jour",it:"giorno",es:"d\xEDa"}},{seconds:604800,locales:{en:"week",vi:"tu\u1EA7n",tr:"hafta",fr:"semaine",it:"settimana",es:"semana"}},{seconds:2592e3,locales:{en:"month",vi:"th\xE1ng",tr:"ay",fr:"mois",it:"mese",es:"mes"}},{seconds:31536e3,locales:{en:"year",vi:"n\u0103m",tr:"yil",fr:"an",it:"anno",es:"a\xF1o"}}],Lt=/^\d+$/;function me(a,e){const t=a?.toLowerCase();if(!t)return;const r=Date.now();if(t.includes("now"))return r;if(t.includes("yesterday"))return r-864e5;if(Lt.test(t))return+t;const n=new Date(t);if(n instanceof Date){const o=n.valueOf();if(!isNaN(o))return n.getHours()===0&&n.getMinutes()===0?Math.min(r,o+432e5):o}const s=jt.find(o=>e&&o.locales[e]&&t.indexOf(o.locales[e])!==-1?!0:t.indexOf(o.locales.en)!==-1);if(!s)return;const i=t.split(" ").filter(Boolean),l=we(i)??(e==="en"?we(i,["a","an"]):void 0);if(!l)return;const c=r-l*s.seconds*1e3;return c>0?c:void 0}function we(a,e){for(let t=0;t<a.length;t++){const r=a[t];if(e?.includes(r))return 1;const n=+r;if(n)return n<0?void 0:n}}function Ot(a,e=location.origin){if(!a)return;const t=new URL(a.startsWith("//")?`${location.protocol}${a}`:a,location.origin+location.pathname).toString();return t.startsWith(e)?t.replace(e,""):t}function re(a,{titleSlug:e,titleId:t,lang:r}){if(!a)return"/";let n=a;return e&&(n=n.replace("{titleSlug}",e)),t&&(n=n.replace("{titleId}",t)),r&&(n=n.replace("{lang}",r)),n.endsWith("/")||(n+="/"),n.startsWith("/")||(n="/"+n),n}function ne(a){if(!a)return;let e=a;e.startsWith("//")&&(e=`https:${e}`);try{return new URL(e)}catch{return}}function A(a){if(!(!a||typeof a!="string"))return a.includes("//")?ne(a)?.pathname:a}function At(a,e){const t=[...e],r=[];let n=!1,s=0;const i=Math.min(a.length,100);for(let c=0;c<i;c++){if(s>=10/2){const p=10-r.length;if(p>0){const f=c+p<=a.length?a.slice(c,c+p):t.slice(0,p);r.push(...f)}break}const o=a[c],u=o.id!==void 0,h=t.findIndex(p=>u&&p.id===o.id||p.slug===o.slug||p.name==o.name),g=h===-1?void 0:t.splice(h,1)[0];!g||g.chapters[0]?.chap!==o.chapters[0]?.chap?(n=!0,r.push({...o,changed:!0})):(s++,r.push(o))}if(!n)return{hasMore:!1,rawReleases:[]};if(r.length<=10)return{hasMore:!!a[a.length-1]?.changed,rawReleases:r};const l=[];for(let c=0;c<r.length;c++){const o=r[c];(o.changed||c<10)&&l.push(o)}return{hasMore:e.length<2||e.length-t.length<2,rawReleases:l}}function Et(a,e){const t={};return a.forEach(r=>{const n=r.chapters.reduce((s,i)=>{const l=i.lang||e||"";return s[l]||(s[l]=[]),s[l].push(i),s},{});Object.entries(n).forEach(([s,i])=>{const l=`${r.slug}:${s}`;t[l]?(t[l].chapters.push(...i),O(t[l].chapters)):t[l]={...r,lang:s===""?void 0:s,chapters:i}})}),Object.values(t)}function ve(a,e){const t=a[0]===e?a.substring(1):a;return t[t.length-1]===e?t.substring(0,t.length-1):t}var $=(a=>(a.title="title",a.reader="reader",a.releases="releases",a.chapters="chapters",a.search="search",a))($||{}),Ut=Object.defineProperty,_t=(a,e,t)=>e in a?Ut(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,E=(a,e,t)=>_t(a,typeof e!="symbol"?e+"":e,t);class J{constructor(e){E(this,"headless"),E(this,"siteId"),E(this,"spec"),E(this,"siteMeta"),E(this,"tags"),E(this,"context"),E(this,"methodsMap",{[$.title]:()=>this.getRawTitleData(),[$.reader]:()=>this.getRawReaderData(),[$.releases]:()=>this.getRawReleasesData(),[$.search]:()=>this.getRawSearchData(),[$.chapters]:()=>this.getRawChaptersData()}),E(this,"normalizedTagsMap"),this.siteId=e.siteId,this.spec=e.spec,this.siteMeta=e.siteMeta,this.tags=e.tags,this.context=e.context??{},this.headless=e.headless===!0}async getRawPageByType(e,t=!1){const r=await this.methodsMap[e](),n=!r&&(e===$.title||e===$.reader)&&await kt(this.spec);if(t&&!r&&!n)return;const s=location.origin+location.pathname;return{type:e,is404:n,specId:this.spec.id,siteName:this.getSiteName(e,r),favUrl:Wt(),htmlLang:qt(),url:s,data:r,spec:this.spec,context:this.context}}parseReaderUrl(e,t,r){const n=!this.siteId,s=t.includes("/");let i=s?e:this.siteMeta.readerBase;if(i.startsWith("/")||(i="/"+i),i.endsWith("/")||(i=i+"/"),!s)return n?{basePath:"",slug:`${i}${t}`}:{basePath:i,slug:t};const l=i.includes("{");let c=t;if(c[0]!=="/"&&(c.includes("/")||n&&!l))try{c=new URL(t,location.href).pathname}catch{}if(c.endsWith("/")&&(c=c.slice(0,-1)),l){const o=i.split("/").filter(Boolean),u=c.split("/").filter(Boolean);if(o.length<u.length){const h=u[o.indexOf("{lang}")]?.toLowerCase(),g=u[o.indexOf("{titleId}")],p=u[o.indexOf("{titleSlug}")];if(n)return{basePath:"",slug:c,lang:h,titleId:g,titleSlug:p};if(i=i.replace("{lang}",h).replace("{titleId}",g).replace("{titleSlug}",p),c.startsWith(i))return{basePath:i,slug:c.replace(i,""),lang:h,titleId:g,titleSlug:p}}}else if(!n&&c.startsWith(i))return{basePath:i,slug:c.replace(i,"")};return{basePath:"",slug:c}}parseTitleUrl(e){if(typeof e!="string")return{};const t=A(e);if(t===void 0)return{};if(this.siteMeta.single)return{slug:ve(t,"/")};const r=t?.split("/").filter(Boolean);if(!r?.length)return{};const n=this.siteMeta.titleBase.split("/").filter(Boolean),s=n.indexOf("{slug}");return(s===-1?r.length-n.length>=1:r.length===n.length)?{id:r[n.indexOf("{id}")],slug:this.siteId?s===-1?r.slice(n.length).join("/"):r[s]:t}:{slug:t}}finalizeRawReleasesData(e){const t=this.spec.releases?.title?.lang?this.siteMeta.defaultLang:void 0,r=Et(e.rawReleases,t);if(r.length)return this.context.oldRawReleases?At(r,this.context.oldRawReleases):{rawReleases:r,hasMore:!0}}getTagIdsFromNames(e){if(!e?.length)return;const t=this.normalizedTagsMap??(this.normalizedTagsMap=Nt(this.tags)),r=e.map(n=>t[se(n)]).filter(Boolean);return r.length===0?void 0:Array.from(new Set(r)).sort((n,s)=>n-s)}getSiteName(e,t){if(t&&this.siteMeta.single){if(e===$.title)return t.name;if(e===$.reader)return t.title.name}const r=this.spec.name,n=(r&&d(r))??d('meta[property="og:site_name"]|attr:content');return n&&n.length>2?n:void 0}}E(J,"specId"),E(J,"siteId");function Nt(a){const e={};return a.forEach(({id:t,name:r,altNames:n})=>{e[se(r)]=t,n&&n.forEach(s=>{e[se(s)]=t})}),e}function se(a){const e=a.toLowerCase().replaceAll(/[^a-z0-9\s]/gi,"").trim().replaceAll(/\s+/g," ");return e[e.length-1]==="s"?e.substring(0,e.length-1):e}async function kt(a){return zt()===404||a[404]&&await U(a[404],{lazy:!0,timeoutMs:5e3})?!0:document.title.toLowerCase().includes("not found")}function zt(){try{return window.performance.getEntries().find(a=>a.entryType==="navigation")?.responseStatus}catch{return}}function Wt(){return d('link[rel="icon"][sizes="32x32"],link[rel="icon"][sizes="192x192"],link[rel="apple-touch-icon"]|attr:href')}function qt(){return d("html|attr:lang")||"en"}class b extends J{async getRawReleasesData(){const e=await this.getRawReleases();if(e?.length)return this.finalizeRawReleasesData({rawReleases:e})}async getRawReleases(){const e=this.spec?.releases?.title;if(!e)return;if(e.json){const l=this.getJsonRawReleases(m(e.json),e)?.filter(c=>c.chapters.length);return l?.length?l:void 0}const t=e.chapter,r=await U(e.sel,{lazy:!0,all:!0});if(!r?.length)return;const n=Date.now(),s=r.slice(0,100).map(l=>{const c=d(e.url,l),o=A(c),u=d(e.name,l),h=d(e.at,l);if(!o||!u)return;const g=me(h,this.siteMeta.defaultLang);return{titleEl:l,id:d(e.id,l),path:o,name:u,lang:d(e.lang,l)?.toLowerCase(),at:g?Math.min(g,n):void 0}}).filter(Boolean);if(!s.length)return;const i=[];return await Promise.all(s.map(async l=>{const{path:c,titleEl:o,lang:u,at:h,...g}=l,{id:p,slug:f}=this.parseTitleUrl(c);if(!f)return;const w=g.id||p,v=await this.getChapters(t,{root:o,titleId:w,titleSlug:f,titleName:l?.name,lang:u})??[];v.length&&i.push({slug:f,chapters:u||h?v.map(y=>({...y,elIndex:void 0,lang:y.lang??u,ts:y.ts??h})):v,...g,id:w})})),i}getRawTitleData(){return this.getTitleData(this.spec.title)}async getTitleData(e){if(!e||!await this.isTitlePage(e))return;const{id:t,slug:r}=this.parseTitleUrl(location.pathname);if(this.siteMeta.single?r===void 0:!r)return;const n=t||d(e.id),s=await this.getChapters(e.chapter,{lazy:e.chapter?.lazy??!0,titleId:n,titleSlug:r,titleName:d(e.name)})??[],i=d(e.name);if(!i)return;const l=await this.getValidImgSrc(e.img,i),c=l&&this.context.includeImgBytes?await Mt(l):void 0,o=this.getFirstChapterUrl(),u=e.firstBtn,h=q(e.tags)?.map(f=>f.split(",")).flat().map(f=>f.trim()).filter(Boolean),g=d(e.type),p=q(e.langs)?.map(f=>f.toLowerCase());return{id:n||d(e.id),url:location.origin+location.pathname,slug:r,name:i,langs:p?.length?p:e.langs&&this.siteMeta.defaultLang?[this.siteMeta.defaultLang]:void 0,tags:this.getTagIdsFromNames([...h??[],...g?[g]:[]]),chapters:s,hasMoreChapters:e.hasMore?!!document.querySelector(e.hasMore):void 0,img:l,imgBytes:c,firstUrl:o,firstBtn:!o&&u&&document.querySelector(u)?u:void 0,trackers:this.getTrackersMap(e.trackers)}}getTrackersMap(e){if(!e)return;const t=d(e.mal),r=d(e.anl);if(!t&&!r)return;const n={};return t&&(n.mal=this.parseTrackerId(t)),r&&(n.anl=this.parseTrackerId(r)),n}parseTrackerId(e){return e.split("?")[0].split("#")[0].split("/").filter(Boolean).slice(-1)[0]}getFirstChapterUrl(){const e=d(this.spec.title?.first);if(e){if(e.startsWith("http"))return e;try{return new URL(e,location.href).href}catch{return}}}getValidImgSrc(e,t){return B(33,30,()=>{const r=d(e)||d(`img[alt="${t.replaceAll('"',"")}"]|[attr:data-src,attr-contain:src]`);return!r||r.startsWith("data:")?void 0:document.querySelector(`img[srcset*="${r}"]`)?r.split(" ")[0]:r})}getRawReaderTitleData(e){const t=this.spec.reader?.title;if(!t)return;const r=t.sel?document.querySelector(t.sel)??void 0:void 0,n=d(t.name,r);if(!n)return;const s=Ot(d(t.img,r));if(e?.slug){let o=this.siteMeta.titleBase;if(e?.id&&(o=o.replace("{id}",e.id)),!o.includes("{"))return o=o.includes("{slug}")?o.replace("{slug}",e.slug):`${o}/${e.slug}`,this.siteMeta.trailing&&!o.endsWith("/")&&(o+="/"),{name:n,img:s,url:new URL(o,location.origin).href,slug:e.slug,id:e.id||d(t.id,r)}}const i=d(t.url,r),{slug:l,id:c}=this.parseTitleUrl(i);if(!(!n||!i||(this.siteMeta.single?l===void 0:!l)))return{name:n,img:s,url:new URL(i,location.origin).href,slug:l,id:c||d(t.id,r)||e?.id}}async getRawReaderData(){const{spec:e,siteMeta:t}=this;if(!e?.reader||!await this.isReaderPage(e.reader,!!e.generic))return;const r=e.reader.content;if(!(!r||await b.verifyImgsCotainer(r)))return;const n=this.parseReaderUrl(t.readerBase,location.pathname,location.href),{slug:s,basePath:i,lang:l}=n,c=this.getRawReaderTitleData({id:n.titleId,slug:n.titleSlug});if(!c)return;const o=d(e.reader.group),{id:u,slug:h}=c,g=e.reader?.chapter,p=!!this.context.disableLazyChapters,f=!!this.context.includeHiddenChapters,w=await this.getChapters(g,{titleId:u,titleSlug:h,titleName:c.name,lang:l,lazy:f||!p,includeHiddenChapters:f,timeoutMs:f?3e3:25e3,includeIndex:!0,basePath:i,preferGroup:o})??[],v=d(e.reader.label)?.toLowerCase().replace(c.name.toLowerCase(),"");if(!v)return;const{vol:y,chap:R=0}=C(v)||{},_=this.findNeighborChapter({sel:e.reader.prev,basePath:i,titleUrl:c.url}),G=this.findNeighborChapter({sel:e.reader.next,basePath:i,titleUrl:c.url}),F=u??(()=>{const M=this.spec.reader?.title;if(!M?.id)return;const D=M.sel?document.querySelector(M.sel)??void 0:void 0;if(!(M.sel&&!D))return d(M.id,D)})();return this.finalizeRawReaderData({vol:y,chap:R,lang:l??d(e.reader.lang)?.toLowerCase()??(e.reader.lang?this.siteMeta.defaultLang:void 0),slug:s,basePath:i,group:o??d(e.reader.group),imgs:q(e.reader.imgs),title:{id:F,url:c.url,slug:h,name:c.name,langs:l?[l]:void 0,img:c.img,chapters:w,hasMoreChapters:!w.length&&!f&&!!this.context.disableLazyChapters&&!!g?.label}},{prevSlug:_,nextSlug:G})}async getRawChaptersData(){const e=this.siteMeta.chapters;if(e===K.blank)return;const t=e===K.reader,r=!e||e===K.title,n=t?(await this.getRawReaderData())?.title:r?await this.getRawTitleData():void 0,s=this.spec.chapters?.chapter,i=n?.slug??this.context.titleSlug,l=n?.id??this.context.rawId,c=this.context.lang,o=s?s.json?this.getJsonChapters(L(m(s.json)),{chapterSpec:s,basePath:re(this.siteMeta.readerBase,{titleSlug:i,titleId:l,lang:c})}):await this.getChapters(s,{titleId:l,titleSlug:i,titleName:n?.name,lazy:this.spec.chapters?.lazy,includeHiddenChapters:!0,lang:c}):n?.chapters;if(!o)return;const u=c?o.filter(h=>!h.lang||h.lang===c):o;return{chapters:u,title:n?{...n,chapters:[]}:await this.getTitleData(this.spec.chapters?.title),hasMore:!1,asc:!1,total:u.length}}async getRawSearchData(){const e=this.spec.search,t=this.context.lang;if(!e)return;const r=e.title;if(r.json){const o=this.getJsonRawReleases(m(r.json),r,t);return o?.length?{rawReleases:o}:void 0}e.delay?await ae(e.delay):e.loading&&await ae(500);const{chapter:n}=r,s=[],i=e.lazy?e.empty||e.loading?550:100:1;let l=0;const c=await B(i,50,()=>{const o=Array.from(document.querySelectorAll(r.sel));if(o.length||e.empty&&document.querySelector(e.empty)||e.loading&&!document.querySelector(e.loading)&&++l>=3)return o});if(c)return await Promise.all(c.map(async o=>{const u=d(r.url,o),h=A(u),g=d(r.name,o),{slug:p,id:f}=this.parseTitleUrl(h);if(!h||!g||!p)return;const w=d(r.lang,o);w&&t&&w!==t||s.push({id:f||d(r.id,o),slug:p,name:g,img:d(r.img??"img|[attr:data-src,attr-contain:src]",o),lang:w,chapters:await this.getChapters(n,{root:o,titleId:f,titleSlug:p,titleName:g})??[]})})),{rawReleases:s}}getJsonRawReleases(e,t,r){const n=L(e),s=I(n,t.sel);if(!s?.length||!Array.isArray(s))return;const i=[];return s.forEach(l=>{const c=m(I(l,t.lang))?.toLowerCase();if(c&&r&&c!==r)return;const o=I(l,t.url),{id:u,slug:h}=T(o,y=>({id:void 0,slug:y+""}))??this.parseTitleUrl(A(o)),g=m(I(l,t.name));if(!h||!g)return;const p=u||I(l,t.id),f=T(p,y=>y+"")??m(p),w=t.chapter?this.getJsonChapters(l,{chapterSpec:t.chapter,basePath:re(this.siteMeta.readerBase,{titleId:f,titleSlug:h,lang:c})}):void 0,v=m(I(l,t.img),y=>{try{return new URL(y,location.origin).href}catch{return}});i.push({id:f,slug:h,name:g,lang:c,img:v,chapters:w??[]})}),i}getJsonChapters(e,{chapterSpec:t,basePath:r}){if(!e)return;const n=I(e,t.sel);if(!n)return;const s=Array.isArray(n)?n:[n];if(!s?.length)return;const i=[];return s.forEach(l=>{const c=I(l,t.label),o=T(c,y=>({vol:void 0,chap:y}))??C(m(c));if(!o)return;const u=I(l,t.url),h=m(u)??T(u,y=>y+""),g=h?this.parseChapterUrl(r,h):void 0,p=o.vol??I(l,t.vol),f=I(l,t.id),w=I(l,t.at),v=w?new Date(w).getTime():void 0;i.push({slug:g?.slug,vol:T(p)??m(p,y=>+y),chap:o.chap,id:m(f)??T(f,y=>y+""),lang:m(I(l,t.lang))?.toLowerCase(),group:m(I(l,t.group)),ts:v||void 0})}),i.length?O(i,{preferGroup:this.context.preferGroup}):void 0}async getChapters(e,{root:t,titleId:r,titleSlug:n,titleName:s,lang:i,includeHiddenChapters:l=!1,lazy:c=!0,timeoutMs:o,includeIndex:u,basePath:h,preferGroup:g}){const p=e?.sel;if(!p||!e.label)return;const f=p.includes("{titleSlug}")?n?p.replace("{titleSlug}",n):void 0:p;if(!f)return;let w;if(e.trigger&&(!l||(w=await U(e.trigger,{timeoutMs:5e3,lazy:!0}),!w)))return;const v=[],y=await B(c?o?o/50:200:1,50,async()=>{w&&(Z(w),await ae(50));const S=Array.from((t??document.documentElement)?.querySelectorAll(f));if(S.length)return S}),R=(y??[]).map((S,V)=>({id:d(e.id,S),label:d(e.label,S)?.toLowerCase(),url:d(e.url,S),at:d(e.at,S),lang:d(e.lang,S),group:d(e.group,S),elIndex:V})),_=s?.toLowerCase(),G=_&&!!R[0]?.label?.startsWith(_),F=(e.dismiss?(t??document.body).querySelector(e.dismiss):void 0)??w;if(F&&Z(F),!y?.length)return[];const M=R.map(({label:S})=>{if(!S)return;const V=G?S?.replace(_,"").trim():S;return C(V)}),D=M[1]?.chap;!M[0]&&(D===void 0||D<=1)&&(M[0]={chap:0});const Ar=h??re(this.siteMeta.readerBase,{titleId:r,titleSlug:n,lang:i}),Er=Date.now();return M.forEach((S,V)=>{if(!S)return;const{id:Ur,url:nt,at:_r,lang:Nr,group:kr,elIndex:zr}=R[V],st=me(_r,this.siteMeta.defaultLang),Q={...S,id:Ur,lang:Nr?.toLowerCase(),group:kr,ts:st?Math.min(Er,st):void 0};u&&(Q.elIndex=zr);const X=nt?this.parseChapterUrl(Ar,nt):void 0;X&&(Q.slug=X.slug,X.lang&&(Q.lang=X.lang)),v.push(Q)}),O(v,{preferGroup:g??this.context.preferGroup})}parseChapterUrl(e,t){if(t?.startsWith("#"))return;if(t?.startsWith("http")&&!t.includes(`//${location.hostname}/`))return{slug:t};const r=A(t);if(r)return this.parseReaderUrl(e,r,t)}async isTitlePage(e){return!(!e||(e.sel||e.lazy)&&!await U(e.sel??e.name?.split("|")?.[0],{lazy:!!e.lazy}))}async isReaderPage(e,t){const r=e?.sel;return t&&!r?!1:!r||!!await U(r,{lazy:!!e.lazy})}static async verifyImgsCotainer(e){const t=e.split(",").map(r=>r.trim()).filter(Boolean).map(r=>`${r} img, ${r} canvas`).join(",");return!!await U(t,{lazy:!0,all:!1})}findNeighborChapter({sel:e,basePath:t,titleUrl:r}){const n=d(e);if(!n||n.startsWith("#")||n.startsWith("/#"))return;const s=A(n);if(s&&!(s===location.pathname||r===s||r===`${location.origin}${s}`))return this.parseReaderUrl(t,s,n).slug||void 0}finalizeRawReaderData(e,{prevSlug:t,nextSlug:r}={}){const n=e.title.chapters;if(!n.length){const o=C(t),u=C(r);return!o&&!u?e:{...e,prev:o?{...o,slug:t}:void 0,next:u?{...u,slug:r}:void 0}}let s,i,l,c;for(let o=0;o<n.length&&!(s&&(!t||l)&&!r&&c);o++){const u=n[o];!s&&(e.slug&&e.slug==u.slug||e.chap===u.chap&&(e.vol===u.vol||e.vol===void 0))?(s=u,i=o):!l&&t&&t===u.slug?l=u:!c&&r&&r===u.slug&&(c=u)}return i!==void 0&&(l??(l=n[i+1]),c??(c=n[i-1])),l&&!l.slug&&(l.slug=t),c&&!c.slug&&(c.slug=r),s&&!s.slug&&(s.slug=e.slug),{...e,inferVol:s?.inferVol,prev:l,next:c}}}var Gt=Object.defineProperty,Ft=(a,e,t)=>e in a?Gt(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Ht=(a,e,t)=>Ft(a,e+"",t);class ye extends b{async getRawReleases(){const e=Jt();if(!e)return;const t=await super.getRawReleases();if(!t)return;const r=[];return t.forEach(n=>{if(!n.name.endsWith("...")){r.push(n);return}const s=n.name.slice(0,-3),i=e.split(s)[1];if(!i)return;const l=i.indexOf('"');if(l===-1)return;const c=`${s}${i.substring(0,l)}`;r.push({...n,name:c})}),r}}Ht(ye,"specId","asura");function Jt(){const a=Array.from(document.querySelectorAll("script:not([src])"));for(let e=0;e<a.length;e++){const t=a[e].textContent;if(t&&t.indexOf('{\\"latest\\":')!==-1)return t.replaceAll("\\","")}}function Vt(){return Math.random().toString(16).slice(2)}async function Kt({addListener:a,removeListener:e,transform:t,filter:r,handler:n,onTimeout:s,timeout:i,once:l}){return new Promise(c=>{a(h);const o=()=>l===!0&&e(h),u=i?setTimeout(()=>{o(),c(void 0),s?.()},i):void 0;async function h(g,...p){g=t?t(g):g,g!==void 0&&(!r||r(g,...p))&&(o(),c(g),n?.(g,...p),u&&clearTimeout(u))}})}async function Yt(a){return(await Kt({addListener:e=>window.addEventListener("message",e),removeListener:e=>window.removeEventListener("message",e),...a}))?.data}async function Qt(a){const{receiverWindow:e,timeout:t,targetOrigin:r,event:n,args:s}=a,i={reqId:Vt(),event:n,args:s};return(e||window)?.postMessage(i,r??"*"),(await Yt({filter:l=>l?.data?.resId===i.reqId,timeout:t??3e4,once:!0}))?.result}const P={isAny:!0};function x(a,...e){return Qt({event:"tk:fetchResult",args:{baseUrl:a,segments:e}})}var Xt=Object.defineProperty,Zt=(a,e,t)=>e in a?Xt(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,ea=(a,e,t)=>Zt(a,e+"",t);class be extends b{async getRawReaderData(){const e=`https://${location.host}`,[t,r]=await Promise.all([x(e,"api","manga","info"),x(e,"api","read","chapter")]),n=t?.value,s=r?.value;if(!n||!s)return;const i=this.parseReaderUrl(this.siteMeta.readerBase,location.pathname,location.href);if(!i)return;const l=C(s.readChapter?.title);if(l)return this.finalizeRawReaderData({basePath:i.basePath,slug:i.slug,...l,imgs:s.readChapter.pages.map(c=>new URL(c.image,location.origin).href),title:{url:`${e}/manga/${n.id}`,slug:n.id,name:n.title,tags:this.getTagIdsFromNames([n.type].filter(Boolean)),chapters:O(n.chapters.map(c=>({slug:c.id,chap:c.number})),{preferGroup:this.context.preferGroup})}})}}ea(be,"specId","atsu");var ta=Object.defineProperty,aa=(a,e,t)=>e in a?ta(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,ra=(a,e,t)=>aa(a,e+"",t);class Re extends b{parseTitleUrl(e){return{slug:A(e)?.split("/").filter(Boolean)[1]}}async getRawReaderData(){const e=await super.getRawReaderData();if(e)return{...e,imgs:e.imgs?.map(t=>t.startsWith("https://k")?t.replace("https://k","https://n"):t)}}}ra(Re,"specId","bato");var na=Object.defineProperty,sa=(a,e,t)=>e in a?na(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,ia=(a,e,t)=>sa(a,e+"",t);class ie extends b{async getRawReaderData(){const e=await super.getRawReaderData();if(e)return{...e,imgs:e.imgs?.map(t=>t.startsWith("https://k")?t.replace("https://k","https://n"):t)}}}ia(ie,"specId","bato3x");var la=Object.defineProperty,oa=(a,e,t)=>e in a?la(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,ca=(a,e,t)=>oa(a,e+"",t);class $e extends ie{parseChapterUrl(e,t){return{slug:t.split("/").filter(Boolean).slice(-1)[0]}}async getRawChaptersData(){const{rawId:e}=this.context;if(e)try{const t=await fetch(`${location.origin}/ap2/`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({query:"query get_comic_chapterList($comicId: ID!, $start: Int) { get_comic_chapterList(comicId: $comicId, start: $start) { id data { id dname title urlPath } }}",variables:{comicId:e,start:-1}})});if(!t.ok)return;const r=this.getJsonChapters(await t.json(),{basePath:this.siteMeta.readerBase,chapterSpec:{sel:"data.get_comic_chapterList",label:"data.dname",url:"data.urlPath"}});return r?{chapters:r}:void 0}catch{return}}}ca($e,"specId","bato4x");function xe(a){return String(a).normalize("NFKD").replace(/[\u0300-\u036f]/g,"").trim().toLowerCase().replace(/[^a-z0-9 -]/g,"").replace(/\s+/g,"-").replace(/-+/g,"-")}var ua=Object.defineProperty,ga=(a,e,t)=>e in a?ua(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,pa=(a,e,t)=>ga(a,e+"",t);class De extends b{async getRawReleases(){const e=await super.getRawReleases();if(e?.length)return e.map(t=>({...t,slug:`${t.slug}-${xe(t.name)}`}))}async getRawChaptersData(){const e=L(),t=T(j(e,"result.pagination.total"),n=>Math.ceil(n/100))||0,r=(await Promise.all(Array.from({length:Math.max(0,t)},async(n,s)=>{if(s==0)return this.parseChapters(e);try{const i=location.href.replace("page=1",`page=${s+1}`),l=await fetch(i);return this.parseChapters(await l.json())||[]}catch{return[]}}))).flat();return{chapters:O(r,{preferGroup:this.context.preferGroup})}}parseChapters(e){const t=[];return j(e,"result.items")?.forEach?.(r=>{const n=T(j(r,"chapter_id"),i=>i+""),s=T(j(r,"number"));!n||s===void 0||t.push({slug:n,chap:s,vol:T(j(r,"volume"))||void 0,lang:m(j(r,"language")),group:m(j(r,"scanlation_group.name")),ts:T(j(r,"created_at"))})}),t}}pa(De,"specId","comix");var ha=Object.defineProperty,da=(a,e,t)=>e in a?ha(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,fa=(a,e,t)=>da(a,e+"",t);class Se extends b{async getRawReaderData(){const e=await super.getRawReaderData();if(!e)return;const t=window.pages,r=t?.map(n=>n?.image).filter(Boolean);if(!(!Array.isArray(r)||!r.length))return{...e,imgs:r,isWebtoon:t.some(n=>n.height/n.width>2)}}}fa(Se,"specId","dynasty");var ma=Object.defineProperty,wa=(a,e,t)=>e in a?ma(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,va=(a,e,t)=>wa(a,e+"",t);class Ie extends J{async getRawReleasesData(){const e=L();if(e)return this.finalizeRawReleasesData({rawReleases:e.manga.map(t=>({id:t.id?t.id+"":void 0,name:t.title,slug:t.slug,chapters:t.chapters.map(r=>this.praseRawChapter(r))}))})}async getRawSearchData(){const e=L();if(e)return{rawReleases:e.data.map(t=>({id:t.id?t.id+"":void 0,slug:t.slug,name:t.title,img:`${location.origin}/${t.cover}`,chapters:[]}))}}async getRawTitleData(){const{slug:e}=this.parseTitleUrl(location.pathname);if(!e)return;const t=await x(location.origin,"api","backend","api","manga",e);if(!t)return;const r=this.parseRawTitleData(t.value),n=this.context.includeImgBytes&&r.img?await Y(r.img):void 0;return{...r,imgBytes:n}}async getRawReaderData(){const{slug:e,titleSlug:t}=this.parseReaderUrl(this.siteMeta.readerBase,location.pathname,location.href);if(!e||!t)return;const[r,n]=await Promise.all([x(location.origin,"api","backend","api","manga",t),x(location.origin,"api","backend","api","chapters","by-number",t,e)]);if(!r||!n)return;const s=await this.parseRawTitleData(r.value),i=n.value;return{slug:e,chap:i.number,basePath:`/${location.pathname.split("/").filter(Boolean).slice(0,-1).join("/")}/`,imgs:i.pages.sort((l,c)=>l.order-c.order).map(l=>`${location.origin}${l.image.startsWith("/")?l.image:`/${l.image}`}`),title:s}}async getRawChaptersData(){const e=L();if(!e)return;const t=this.parseRawTitleData(e);return{chapters:t.chapters,title:{...t,chapters:[]}}}parseRawTitleData(e){return{id:e.id?e.id+"":void 0,url:`${location.origin}/${this.siteMeta.titleBase}/${e.slug}`,slug:e.slug,name:e.title,img:`${location.origin}/${e.cover}`,tags:this.getTagIdsFromNames([e.type,...e.genres.map(t=>t.name)].filter(Boolean)),chapters:e.chapters.map(t=>this.praseRawChapter(t)),hasMoreChapters:e.pagination.hasNextPage}}praseRawChapter(e){return{chap:e.number,slug:e.number+"",ts:new Date(e.createdAt||e.uploadedAt||e.updatedAt).getTime()}}}va(Ie,"specId","falcon");var ya=Object.defineProperty,ba=(a,e,t)=>e in a?ya(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Ra=(a,e,t)=>ba(a,e+"",t);class Te extends b{async getRawTitleData(){const e=await super.getRawTitleData();if(e)return{...e,chapters:[{slug:"1",chap:0}]}}async getRawReaderData(){const e=await super.getRawReaderData();if(!e||!e.imgs?.length)return e;const t=e.imgs[0],r=t.lastIndexOf("/"),n=r===-1?"":t.substring(0,r+1),s=r===-1?t:t.substring(r+1),i=s.substring(s.lastIndexOf(".")),l=m(d(".total_pages|text"),o=>+o)||1,c=Array.from({length:l},(o,u)=>`${n}${u+1}${i}`);return{...e,slug:"1",chap:0,imgs:c,title:{...e.title,chapters:[{slug:"1",chap:0}]}}}}Ra(Te,"specId","imhen");var $a=Object.defineProperty,xa=(a,e,t)=>e in a?$a(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Da=(a,e,t)=>xa(a,e+"",t);class Pe extends b{async getRawTitleData(){const e=await super.getRawTitleData();if(e)return{...e,chapters:Me()}}async getRawReaderData(){const e=await super.getRawReaderData();if(!e)return;const t=Me();if(t.length)return{...e,title:{...e.title,img:Ce(e.title.slug),chapters:t}}}async getRawSearchData(){const e=await super.getRawSearchData();if(e)return{...e,rawReleases:e.rawReleases.map(t=>({...t,img:Ce(t.slug)}))}}}Da(Pe,"specId","kagane");function Ce(a){return`https://api.${location.host}/api/v1/series/${a}/thumbnail`}function Me(){const a=["initialBooksData","initialChapters"],e=Array.from(document.querySelectorAll("script:not([src])"));for(let t=0;t<e.length;t++){const r=e[t].textContent;if(r)for(const n of a){const s=r.indexOf(n);if(s===-1)continue;const i=r.slice(s),l=H(i.slice(i.indexOf("["),i.indexOf("}]")+2).replaceAll("\\",""));if(!l?.length||!Array.isArray(l))return[];try{const c=[];return l.map(o=>{const u=C(o.name);u&&c.push({...u,slug:o.id,ts:o.created?new Date(o.created).getTime():void 0})}),O(c)}catch{return[]}}}return[]}var Sa=Object.defineProperty,Ia=(a,e,t)=>e in a?Sa(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Ta=(a,e,t)=>Ia(a,e+"",t);class le extends b{async getRawReleasesData(){const e=this.getNewSiteMeta(this.spec.releases?.title),t=await super.getRawReleasesData();if(t)return{...t,siteMeta:e}}async getRawTitleData(){if(!await this.isTitlePage(this.spec.title))return;const e=this.getNewSiteMeta(this.spec.title,`${location.origin}${location.pathname}`),t=await super.getRawTitleData();if(t)return{...t,siteMeta:e}}async getRawReaderData(){if(!await this.isReaderPage(this.spec.reader,this.spec.generic))return;const e=this.getNewSiteMeta(this.spec.reader?.title),t=await super.getRawReaderData();if(t)return{...t,siteMeta:e}}async getRawSearchData(){const e=this.getNewSiteMeta(this.spec.search?.title),t=await super.getRawSearchData();if(t)return{...t,siteMeta:e}}getNewSiteMeta(e,t){if(t??(t=Pa(e)),!t)return;if(!this.siteId){const i={...this.siteMeta,releases:null,titleBase:"",readerBase:"",titleIdType:fe.name,trailing:t.endsWith("/"),defaultLang:d("html|attr:lang")||"en"};return this.siteMeta=i,i}const r=this.extractBasePath(t),n=this.siteMeta;if(n.titleBase===r)return;const s={...n,titleBase:r,readerBase:n.readerBase.replace(n.titleBase,r)};return this.siteMeta=s,s}extractBasePath(e){const t=e.startsWith("/")?e:A(e);return ve(t,"/").split("/").slice(0,-1).join("/")}}Ta(le,"specId","madara");function Pa(a){if(!a)return;const e=a.sel?document.querySelector(a.sel)??void 0:void 0;return d(a.url,e)}var Ca=Object.defineProperty,Ma=(a,e,t)=>e in a?Ca(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Ba=(a,e,t)=>Ma(a,e+"",t);class Be extends b{async getRawTitleData(){const e=await super.getRawTitleData();if(!e)return;const t=await je(this.context.preferGroup),r=new Set;return t.forEach(({lang:n})=>{n&&r.add(n)}),{...e,chapters:t,langs:r.size?Array.from(r):[this.siteMeta.defaultLang||"en"]}}async getRawReaderData(){const e=await super.getRawReaderData();if(!e)return;const t=await je(e.group||this.context.preferGroup),r=t[0]?.lang;return this.finalizeRawReaderData({...e,lang:r,title:{...e.title,chapters:t,langs:r?[r]:void 0}})}}Ba(Be,"specId","mangaball");async function je(a){const e=await B(100,50,()=>{try{return ALL_CHAPTERS.length?ALL_CHAPTERS:void 0}catch{return}});if(!e)return[];const t=[];return e.forEach(r=>{r.translations.forEach(n=>{const s=n.volume;t.push({chap:r.number_float,vol:s>0?s:void 0,slug:n.id,lang:n.language,group:n.group?.name,ts:new Date(n.date).getTime()})})}),O(t,{preferGroup:a})}var ja=Object.defineProperty,La=(a,e,t)=>e in a?ja(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Oa=(a,e,t)=>La(a,e+"",t);const Aa={a:.1,b:.2,c:.3,d:.4};class Le extends b{parseTitleUrl(e){return{slug:A(e)?.split("/").filter(Boolean)[1]}}async getRawReleases(){const e=L()?.data;if(!e)return;const t=[];return e.forEach(({relationships:r,attributes:n,id:s})=>{const i=r.find(({type:h})=>h==="manga"),l=N(n.volume),c=N(n.chapter);if(c===void 0)return;const{title:o}=i.attributes,u=o.en??Object.values(o)[0];t.push({slug:i.id,name:u,chapters:[{slug:n.externalUrl||s,vol:l,chap:c,lang:n.translatedLanguage,ts:new Date(n.readableAt).valueOf()}]})}),t}async getRawTitleData(){const e=`https://api.${location.host}/manga/`,[t,r]=await Promise.all([x(e,P),x(e,P,"feed")]);if(!t||!r)return;const n=r.value.data?.map?.(c=>{const{attributes:o,id:u}=c;if(typeof o!="object"||typeof u!="string"||!u)return;const{externalUrl:h,title:g,volume:p,chapter:f,translatedLanguage:w}=o;return{slug:h||u,label:g||void 0,vol:N(p),chap:N(f),lang:w||"en",ts:new Date(o.readableAt).valueOf()}}).filter(c=>c?.chap!=null)??[],{data:s}=t.value;if(!s)return;const i=Ae({data:s,getTagIdsFromNames:c=>this.getTagIdsFromNames(c)});if(!i)return;const l=this.context.includeImgBytes&&i.img?await Y(i.img):void 0;return{...i,imgBytes:l,chapters:O(n,{preferGroup:this.context.preferGroup}),hasMoreChapters:(r.value.total||0)>(r.value.limit||0)}}async getRawReaderData(){const e="https://api.mangadex.org/",[t,r,n]=await Promise.all([x(e,"chapter",P),x(e,"at-home","server",P),x(e,"manga",P,"aggregate")]);if(!t||!r||!n)return;const s=t.value.data,{volume:i,chapter:l,externalUrl:c,translatedLanguage:o}=s.attributes||{},{baseUrl:u,chapter:{data:h,dataSaver:g,hash:p}}=r.value,f=s.relationships?.find?.(D=>D.type==="manga");if(!f)return;const w=Ae({data:f,getTagIdsFromNames:D=>this.getTagIdsFromNames(D)});if(!w||typeof n.value.volumes!="object")return;const v=Oe(n.value,{preferGroup:this.context.preferGroup})??[];(typeof l!="string"||l==="none")&&!v.length&&v.push({chap:0,slug:s.id});const y=v.findIndex(D=>D.slug===s.id),R=s.relationships?.find?.(D=>D.type==="scanlation_group"),_=u.endsWith("/")?u:u+"/",G=!!localStorage.getItem("md")?.includes?.('"dataSaver":true'),F=`${_}${G?"data-saver":"data"}/`,M=((G?g:h)??[]).map?.(D=>`${F}${p}/${D}`)??[];return{externalUrl:c,vol:N(i),inferVol:v[y]?.inferVol,chap:N(l)||0,imgs:M,lang:o,slug:s.id,prev:v[y+1],next:v[y-1],basePath:"/chapter/",group:R?.attributes?.name,groupUrl:R?.attributes?.website,isWebtoon:f?.attributes?.tags?.some(D=>D.attributes.name.en==="Long Strip"),title:{...w,chapters:v}}}async getRawChaptersData(){const e=L();if(!e)return;let t;try{t=Oe(e,{preferGroup:this.context.preferGroup})}catch{return}if(t)return{chapters:t,lang:this.context.lang??"en",asc:!1,hasMore:!1,total:t.length}}}Oa(Le,"specId","mangadex");function N(a){if(typeof a!="string"||a==="none")return;const e=parseFloat(a);if(e!==e)return;const t=a[a.length-1];return e+(Aa[t]??0)}function Oe(a,{preferGroup:e}){if(typeof a.volumes!="object")return;const t=Object.values(a.volumes).map(({volume:r,chapters:n})=>{const s=N(r);return Object.values(n).map(({id:i,chapter:l})=>{const c=N(l);if(c!==void 0)return{vol:s,chap:c,slug:i}})}).flat().filter(Boolean).reverse();return O(t,{preferGroup:e})}function Ae({data:a,getTagIdsFromNames:e}){const{id:t,attributes:r,relationships:n}=a;if(!t||typeof t!="string"||typeof r!="object")return;const{title:s,availableTranslatedLanguages:i,altTitles:l,tags:c,contentRating:o}=r;if(typeof s!="object"||i&&!Array.isArray(i))return;const u=Object.values(s)[0];if(!u||typeof u!="string")return;const h=Ea(),g=(i??[])?.map?.(R=>typeof R=="string"?R:void 0).filter(Boolean)??[],p=g.filter(R=>R&&(!h||h.includes(R))),f=l?.map?.(R=>{const[[,_]=[]]=Object.entries(R);return _}),w=n?.find?.(R=>R.type==="cover_art")?.attributes?.fileName,v=w?`https://mangadex.org/covers/${t}/${w}.256.jpg`:void 0,y=(c||[]).map(R=>R?.attributes?.name?.en).concat(o).filter(Boolean);return{url:`${location.origin}/title/${t}`,slug:t,name:u,altNames:f,langs:p.length>0?p:g.length>0?g:["en"],img:v,tags:e(y)}}function Ea(){const a=localStorage.getItem("md");if(!a)return;const e=H(a);if(e)try{const t=e?.userPreferences?.filteredLanguages;return t?.length?t:void 0}catch{return}}var Ua=Object.defineProperty,_a=(a,e,t)=>e in a?Ua(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Na=(a,e,t)=>_a(a,e+"",t);class Ee extends b{async getRawReaderData(){if((await U(".current-viewtype",{lazy:!0,all:!1}))?.textContent?.trim().toLowerCase()!=="volume")return await super.getRawReaderData()}async getRawChaptersData(){const e=this.context.lang??"en",t=await U(`.tab-content[data-name="chapter"] a.dropdown-item[data-code="${e.toUpperCase()}"]`,{lazy:!0,all:!1});if(t)return Z(t),await U(`.tab-content[data-name="chapter"] li.item[data-number] a[href*="/${e}/"]`,{lazy:!0,all:!1}),await super.getRawChaptersData()}async getRawSearchData(){const e=await super.getRawSearchData();if(!e)return;const t=this.context.lang??"en";return{...e,rawReleases:e.rawReleases.map(r=>({...r,lang:r.lang??t}))}}}Na(Ee,"specId","mangafire");var ka=Object.defineProperty,za=(a,e,t)=>e in a?ka(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Wa=(a,e,t)=>za(a,e+"",t);class Ue extends b{async getRawReaderData(){const e=await super.getRawReaderData();return e&&{...e,imgs:await this.getImgs()}}parseReaderUrl(e,t,r){const{slug:n,basePath:s}=super.parseReaderUrl(e,t,r),i=n.split("/").filter(Boolean),l=i[i.length-1];return{basePath:s,slug:l.startsWith("pg-")?i.slice(0,-1).join("/"):n}}async getImgs(){const e=await B(100,20,()=>window.imgsrcs),t=window.CryptoJS,r=t.enc.Hex.parse("e11adc3949ba59abbe56e057f20f883e"),n={iv:t.enc.Hex.parse("1234567890abcdef1234567890abcdef"),padding:t.pad.ZeroPadding};return t.AES.decrypt(e,r,n).toString(t.enc.Utf8).split(",")}}Wa(Ue,"specId","mangago");var qa=Object.defineProperty,Ga=(a,e,t)=>e in a?qa(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Fa=(a,e,t)=>Ga(a,e+"",t);class _e extends b{async getRawTitleData(){const e=`https://backend.${location.host}`,t=await x(e,"chapters-with-ids",P,P),r=await super.getRawTitleData();if(!(!t?.value||!r))return{...r,langs:await Ha(),chapters:oe(t.value)}}async getRawChaptersData(){const e=L();if(e)return{chapters:oe(e)}}async getRawReaderData(){const e=`https://backend.${location.host}`,[t,r]=await Promise.all([x(e,"chapters-with-ids",P,P),x(e,"read",P)]);if(!t?.value||!r?.value?.length)return;const n=await super.getRawReaderData();if(!n)return;const s=new URLSearchParams(location.search).get("number")??"0";return{...n,slug:`${n.slug}?number=${s}`,imgs:r.value,title:{...n.title,chapters:oe(t.value)}}}}Fa(_e,"specId","mangahaven");async function Ha(){const a=document.querySelector('[role="tabpanel"] button');if(!a)return;const e=document.createElement("style");e.innerHTML="[data-radix-popper-content-wrapper] { display: none !important; }",document.head.appendChild(e),a.click();const t=await B(50,10,()=>q('img[src*="/flags/"]|attr:src|pattern:.+/(.+).svg'));return a.click(),setTimeout(()=>document.head.removeChild(e),1e3),t}function oe(a){const e=[];return a?.forEach?.(t=>{const r=+t.chapter;isNaN(r)||!t.id||e.push({chap:r,slug:`${t.id}?number=${t.chapter}`,lang:t.lang?.toLowerCase?.()})}),e}var Ja=Object.defineProperty,Va=(a,e,t)=>e in a?Ja(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Ka=(a,e,t)=>Va(a,e+"",t);class Ne extends b{parseTitleUrl(e){return{slug:A(e)?.split("/").filter(Boolean)[1]}}}Ka(Ne,"specId","mangapill");var Ya=Object.defineProperty,Qa=(a,e,t)=>e in a?Ya(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Xa=(a,e,t)=>Qa(a,e+"",t);class ke extends b{async getRawTitleData(){const e=await super.getRawTitleData();return e&&{...e,chapters:e.chapters.map(t=>({...t,slug:t.slug?.split("/").filter(Boolean).slice(-1)[0]}))}}}Xa(ke,"specId","mangaplus");var Za=Object.defineProperty,er=(a,e,t)=>e in a?Za(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,tr=(a,e,t)=>er(a,e+"",t);class ze extends le{async getRawReaderData(){const e=await super.getRawReaderData();if(e)return{...e,title:{...e.title,id:await this.getReaderTitleId()}}}async getReaderTitleId(){const e=await window.HISTORY?.getStored?.();if(!e||typeof e!="object")return;const t=Object.values(e).filter(Boolean);if(!t.length)return;t.sort((n,s)=>s.time-n.time);const r=t[0].manga_ID;return m(r)??T(r,n=>n+"")}}tr(ze,"specId","mangastream");var ar=Object.defineProperty,rr=(a,e,t)=>e in a?ar(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,nr=(a,e,t)=>rr(a,e+"",t);class We extends b{async getRawReaderData(){const e=await super.getRawReaderData();return!e||!e.title.chapters.length?e:{...e,prev:e.prev?{...e.prev,slug:ce(e.title.slug,e.prev.slug)}:void 0,next:e.next?{...e.next,slug:ce(e.title.slug,e.next.slug)}:void 0,title:{...e.title,chapters:e.title.chapters.map(t=>({...t,slug:ce(e.title.slug,t.slug)}))}}}}nr(We,"specId","mangatime");function ce(a,e){if(e)return`/manga/${a}/chapter-${e}`}var sr=Object.defineProperty,ir=(a,e,t)=>e in a?sr(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,lr=(a,e,t)=>ir(a,e+"",t);class qe extends b{async getRawReaderData(){const e=await super.getRawReaderData();if(e?.imgs?.length!==1)return e;e.slug.includes("//")&&(e.slug=Ge(e.slug).split("/").filter(Boolean)[3]);const t=T(document.querySelector("select.index-page,.page_select select")?.childElementCount,p=>p-1);if(!t||t<=1)return e;const[r]=e.imgs,n=r.split(/\d+\.[a-z]{3,5}$/i)?.[0];if(!n)return e;const s=(+(d(".page_select .select|text")||"1")||1)-1,i=r.replace(n,""),[l,c]=i.split("."),o=l.length,u=+l-s,h=u+t-1,g=[];for(let p=u;p<=h;p++)g.push(`${n}${(p+"").padStart(o,"0")}${c?`.${c}`:""}`);return{...e,imgs:g}}parseChapterUrl(e,t){return this.parseReaderUrl(e,Ge(t),t)}}lr(qe,"specId","mangatown");function Ge(a){return a.replace(location.origin,"").replace("//","/")}var or=Object.defineProperty,cr=(a,e,t)=>e in a?or(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,ur=(a,e,t)=>cr(a,e+"",t);class Fe extends b{async getRawReaderData(){const e=await super.getRawReaderData();return e&&{...e,slug:e.slug.split("/").slice(0,-1).join("/")||e.slug.split("/")[0]}}}ur(Fe,"specId","mangaworld");var gr=Object.defineProperty,pr=(a,e,t)=>e in a?gr(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,hr=(a,e,t)=>pr(a,e+"",t);class He extends b{async getRawTitleData(){const e=await super.getRawTitleData();if(e)return{...e,hasMoreChapters:e.chapters.length===50}}}hr(He,"specId","mgeko");var dr=Object.defineProperty,fr=(a,e,t)=>e in a?dr(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,mr=(a,e,t)=>fr(a,e+"",t);class Je extends J{async getRawReleasesData(){}async getRawSearchData(){}async getRawTitleData(){const e=await Ve();if(!e)return;const t=d("#cover img|[attr:data-src,attr-contain:src]")??e.img;return{...e,img:t,imgBytes:this.context.includeImgBytes&&e.img?await Y(e.img):void 0}}async getRawReaderData(){const e=await Ve();if(!e)return;const t=d("#image-container img|[attr:data-src,attr-contain:src]"),r=ne(t);if(!r)return;const n=r.pathname.split("/").filter(Boolean).slice(0,-1).join("/"),s=`${r.origin}/${n}/`;return{chap:0,slug:"1",basePath:e.url.replace(location.origin,"").slice(1),imgs:e.pages.map((i,l)=>`${s}${l+1}.${Ke(i)}`),title:{name:e.name,slug:e.slug,url:e.url,chapters:[{slug:"1",chap:0}]}}}async getRawChaptersData(){const e=await this.getRawTitleData();if(!e)return;const{chapters:t,...r}=e;return{title:{...r,chapters:[]},chapters:t}}}mr(Je,"specId","nhentai");async function Ve(){const a=await B(100,20,()=>window._gallery);if(!a?.id||!a?.title||!a?.images?.pages)return;const{title:e,images:{pages:t,cover:r},media_id:n}=a;return{name:e.pretty??e.english??e.japanese,slug:a.id+"",url:`${location.origin}/g/${a.id}`,chapters:[{slug:"1",chap:0}],pages:t.map(s=>s.t??"w"),img:await wr(n,r.t)}}async function wr(a,e){if(!a||!e)return;const t=Ke(e),r=(await B(10,20,()=>window._n_app))?.options?.thumb_cdn_urls?.[0];if(r)return`https://${r}/galleries/${a}/cover.${t}`}function Ke(a){return{j:"jpg",p:"png",g:"gif",w:"webp"}[a]??"webp"}var vr=Object.defineProperty,yr=(a,e,t)=>e in a?vr(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,br=(a,e,t)=>yr(a,e+"",t);class Ye extends b{finalizeRawReaderData(e,{prevSlug:t,nextSlug:r}={}){if(!e.title.chapters.length){const n=C(t?.split(".").slice(0,-1).join(".")),s=C(r?.split(".").slice(0,-1).join("."));return!n&&!s?e:{...e,prev:n?{...n,slug:t}:void 0,next:s?{...s,slug:r}:void 0}}return super.finalizeRawReaderData(e,{prevSlug:t,nextSlug:r})}}br(Ye,"specId","rawkuma");var Rr=Object.defineProperty,$r=(a,e,t)=>e in a?Rr(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,xr=(a,e,t)=>$r(a,e+"",t);class Qe extends b{async getRawTitleData(){const e=await super.getRawTitleData();if(!e)return;const t=q(".info-detail__row > .genre-btn,.info__right .stats__row:first-child|text")?.map(r=>[r,...r.split(" ")]).flat();return Xe({...e,tags:this.getTagIdsFromNames(t)??[]},".episode-header .episode-cnt")}async getRawReaderData(){const e=await super.getRawReaderData();if(!e)return;const t=`${location.origin}/series/${e.title.slug}/info`;return{...e,title:{...Xe({...e.title,url:t,tags:[]},".episode-list .js-ep-cnt"),hasMoreChapters:!1}}}async getRawChaptersData(){const{rawId:e,skip:t}=this.context,r=1e3,n=t?Math.floor(t/1e3)+1:1;try{const s=await fetch(`/series/${e}/episodes?page=${n}&sort=NEWEST&max_limit=${r}`);return Dr(await s.json())}catch{return}}parseTitleUrl(e){if(!e)return{};const t=e.split("/").filter(Boolean);return{slug:t[1]??t[0]}}}xr(Qe,"specId","tapas");function Xe(a,e){const t=Sr(e)>20;return{...a,chapters:t?[]:a.chapters,hasMoreChapters:t}}function Dr(a){const e=a?.data?.episodes;if(!Array.isArray(e))return;const t=e.map(n=>({chap:n.pending_scene??n.scene,slug:n.id+"",ts:new Date(n.publish_date)?.valueOf?.()||void 0})),r=a?.data?.pagination;return{chapters:t,total:r?.total??t.length,hasMore:!!r?.has_next}}function Sr(a){return+(document.querySelector(a)?.textContent?.trim().split(" ")[0]||0)}var Ir=Object.defineProperty,Tr=(a,e,t)=>e in a?Ir(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,Pr=(a,e,t)=>Tr(a,e+"",t);class Ze extends b{async getRawTitleData(){const e=new URLSearchParams(location.search),t=e.get("episode_no"),r=e.get("title_no");if(t||!r)return;const n=await super.getRawTitleData();if(!n)return;const s=location.hostname.startsWith("m."),i=location.pathname.split("/")[1];return{...n,slug:`${n.slug}?title_no=${r}`,id:r,langs:i?[i]:void 0,chapters:s?[]:n.chapters.map(l=>({...l,lang:i})),hasMoreChapters:s||(document.querySelector(".paginate")?.childElementCount??1)>1}}async getRawReaderData(){const e=new URLSearchParams(location.search),t=e.get("episode_no"),r=e.get("title_no"),n=t?+t:void 0;if(!t||!r||typeof n!="number"||isNaN(n))return;const s=document.title.split("|")[1]?.trim();if(!s)return;const i=location.pathname.split("/"),l=`${i.slice(0,4).join("/")}/list?title_no=${r}`,c=await this.getChapters({sel:"#sequence_scroll li.eg-flick-panel,#toolbar .episode_lst li[data-episode-no]",url:"a|attr:href",label:"|attr:data-episode-no || a|attr:href|pattern:.+episode_no=(\\d+).*"},{lazy:!1,titleId:r,titleSlug:l,titleName:s}),o=i[1];return{chap:n,lang:o,slug:`${location.pathname}?title_no=${r}&episode_no=${t}`,basePath:"",imgs:await this.getReaderImgs(),isWebtoon:!0,title:{id:r,url:l,slug:l,name:s,langs:[o],chapters:(c??[]).map(u=>({...u,lang:o})),hasMoreChapters:!1}}}async getReaderImgs(){const e=q("#_imageList img|[attr:data-url,attr:src]");return e?.length?e:await B(100,50,()=>window.__viewerState__?.scrollViewerParam?.imageList?.map(({url:t})=>t).filter(Boolean))}parseReaderUrl(e,t,r){if(!r)return{basePath:"",slug:t};if(r.startsWith("http://")||r.startsWith("https://")){const n=ne(r);return{basePath:"",slug:n.pathname+n.search}}return{basePath:"",slug:r}}}Pr(Ze,"specId","webtoon");function Cr(a){if(a)return typeof a=="string"||Array.isArray(a)?a.length?a:void 0:typeof a=="object"?Object.keys(a).length?a:void 0:a}var Mr=Object.defineProperty,Br=(a,e,t)=>e in a?Mr(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t,jr=(a,e,t)=>Br(a,e+"",t);class et extends b{async getRawReleases(){const e=L();if(!e?.data?.length)return;const t=[];return e.data?.forEach(r=>{const n=C(r.chapter)?.chap,s=ue(r.relationships?.manga);!s||n===void 0||t.push({...s,chapters:[{vol:+r.vol||void 0,chap:n,slug:r.id,lang:m(r.lang),ts:m(r.published_at,i=>new Date(i).getTime())}]})}),t}async getRawTitleData(){const e=await super.getRawTitleData();if(!e)return;const t=`https://api.${location.host}`,[r,n]=await Promise.all([x(t,"manga",e.id??P),x(t,"manga",e.id??P,"chapters")]),s=r?.value?.relationships?.available_languages?.map?.(i=>m(i)).filter(Boolean);if(e.langs=Cr(s),n){const i=[];n.value.data?.forEach(l=>{const c=C(l.chapter),o=m(l.id);!c||!o||i.push({vol:+l.volume||void 0,chap:c.chap,slug:o,lang:m(l.language),group:m(l.relationships?.groups?.[0]?.name),ts:m(l.created_at,u=>new Date(u).getTime())})}),i.length&&(e.chapters=i,e.hasMoreChapters=n.value.total>n.value.limit)}return e}async getRawReaderData(){const e=this.parseReaderUrl(this.siteMeta.readerBase,location.pathname,location.href),t=e.slug.split("/").filter(Boolean)[0],r=`https://api.${location.host}`,[n,s]=await Promise.all([x(r,"chapter",t),x(r,"manga",P,"aggregate")]);if(!n||!s)return;const i=n.value,l=T(+i.chapter),c=i.relationships?.manga,o=ue(c);if(!o||l===void 0)return;const u=m(i.language),h=m(i.relationships?.groups?.[0]?.name),g=c.relationships?.tags?.map(v=>v.name)?.filter(Boolean),p=this.parseAggregateChapter(s.value),f=`${i.node}/data/${t}/`,w=i.data_optimized?.map?.(v=>`${f}${v.name}`);return this.finalizeRawReaderData({basePath:e.basePath,slug:`${t}/1`,vol:+i.volume||void 0,chap:l,lang:u,group:h,title:{...o,url:`${location.origin}/title/${o.id}/${o.slug}`,tags:g?this.getTagIdsFromNames(g):void 0,langs:s.value.languages?.map(v=>m(v)).filter(Boolean),chapters:p},imgs:w})}async getRawChaptersData(){const e=L();return e?{chapters:this.parseAggregateChapter(e)}:void 0}parseAggregateChapter(e){const t=e.groups?.map?.(s=>m(s?.name)),r=e.langs?.map?.(s=>m(s)).filter(Boolean),n=[];return e.chapters?.forEach(s=>{const i=C(s.chapter);if(!i)return;const l=+s.volume||void 0,c=i.chap;Object.entries(s.entries||{}).forEach(([o,u])=>{const h=m(u.published_at,p=>new Date(p).getTime()),g=T(u.language,p=>r?.[p]);u?.groups?.forEach(p=>{n.push({vol:l,chap:c,slug:o,lang:g,group:t[p],ts:h})})})}),O(n,{preferGroup:this.context.preferGroup})}async getRawSearchData(){try{const e=new URLSearchParams(location.search).get("title");if(!e)return;const t=await fetch(`https://api.${location.host}/manga?title=${encodeURIComponent(e)}&limit=42`);if(!t.ok)return;const r=await t.json(),n=[];return r?.data?.forEach?.(s=>{const i=ue(s);i&&n.push(i)}),{rawReleases:n}}catch{return}}}jr(et,"specId","weebdex");function ue(a){if(!a)return;const e=a?.relationships?.cover;return{id:a.id,slug:xe(a.title),name:a.title,img:e?`https://srv.notdelta.xyz/covers/${a.id}/${e.id}${e.ext}`:void 0,chapters:[]}}const Lr=[ye,be,Re,ie,$e,De,Se,Ie,Te,Pe,le,Be,Le,Ee,Ue,_e,Ne,ke,ze,He,We,qe,Fe,Je,Ye,Qe,Ze,et];function tt(a){const e=Lr.find(t=>t.specId===a.spec.id)??b;return new e(a)}async function Or(a){const{spec:e,type:t}=a,r=a.siteMeta??e?.meta;if(e&&r){const n=t?[t]:at(r,e.generic);if(!n.length)return;const s=tt({...a,spec:e,siteMeta:r});return await W(n.map(i=>s.getRawPageByType(i,n.length>1)))}return await W((a.genericSpecs??[]).map(n=>{if(!n.meta||!n.generic)return[];const s=t?[t]:at(n.meta,n.generic);if(!s.length)return[];const i=tt({...a,spec:n,siteMeta:n.meta});return s.map(l=>i.getRawPageByType(l,!0))}).flat())}function at(a,e){if(location.pathname==="/"&&!a.single)return[];const{titleBase:t,readerBase:r}=a,n=location.pathname.split("/").filter(Boolean),s=rt(n,r),i=rt(n,t);if(s&&i)return[$.reader,$.title];const l=[];return!i&&(s!==!1||e)&&l.push($.reader),!s&&(i!==!1||e)&&l.push($.title),!l.length&&e?[$.reader,$.title]:l}function rt(a,e){if(!e)return;const t=e.split("/").filter(Boolean),r=t.indexOf("{slug}"),n=r===t.length-1,s=!n&&r!==-1;if(n&&(t.pop(),!t.length))return;const i=a.length-t.length;if(s?i<0:i<=0)return!1;let l=!1;for(let c=0;c<t.length;c++){const o=t[c];if(o[0]!=="{"){if(o!==a[c])return!1;l=!0}}if(l&&i===(s?0:1))return!0}z.PageType=$,z.scrape=Or}));
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "trackkun-dom",
3
3
  "author": "endyquang",
4
- "version": "2.15.0",
4
+ "version": "2.17.0",
5
5
  "license": "UNLICENSED",
6
6
  "description": "MP DOM parser & configurations",
7
7
  "main": "index.js",
package/specs.json CHANGED
@@ -1 +1 @@
1
- [{"404":"img[src*=\"/images/error-message\"]","id":"asura","releases":{"title":{"sel":"div:has(> a[href=\"/series\"]) + div > div > div > div:nth-child(2)","name":"span a|text","url":"span a|attr:href","chapter":{"sel":"div:has(> p):has(a)","url":"a[href*=\"/chapter/\"]|attr:href","label":"a[href*=\"/chapter/\"] p|text","at":"div + p|text"}}},"title":{"name":"div:has(> div > a[href*=\"/sharer/\"]) span|text","img":"img[alt=\"poster\"]|attr-contain:src","type":"div:has(> img[alt=\"poster\"]) h3:first-child|row:type","tags":"div:has(> h3:first-child):has(> div:last-child:nth-child(2)) button|text","chapter":{"sel":"a[href*=\"/chapter/\"]:has(> h3)","url":"|attr:href","label":"h3|text","at":"h3:last-child|text"}},"reader":{"lazy":true,"sel":"img[src*=\"/EndDesign\"]","label":"a:last-of-type > h3|text","imgDivs":"div:has(> img[alt*=\"chapter\"])","content":"div:has(> img[src*=\"/EndDesign\"]):has(> div > img), body","imgs":"div:has(> img[alt*=\"chapter\"]) img|attr-contain:src","prev":"a[href*=\"/chapter/\"]:has(svg.lucide-chevron-left)|attr:href","next":"a[href*=\"/chapter/\"]:has(svg.lucide-chevron-right)|attr:href","title":{"sel":"a[href*=\"series/\"]:not([href$=\"series/\"]):not([href*=\"/chapter/\"])","name":"span|text","url":"|attr:href"},"chapter":{"trigger":"button:has(> h2)","sel":".dropdown-content > a","label":"h2|text","url":"|attr:href"}},"search":{"title":{"sel":"a[href*=\"series/\"]:not([href$=\"series/\"]):has(div span:first-child)","url":"|attr:href","name":"div:has(> span:first-child):has(> span:nth-child(3):last-child) span:first-child|text"}}},{"404":"#content > .wrapper > .notf img, body:empty","id":"mangastream","generic":true,"name":"meta[itemprop=\"name\"]|attr:content","meta":{"releases":"","titleBase":"series","readerBase":"","searchBase":"?s=","idBase":"?p=","titleIdType":"id","defaultLang":"en","trailing":true},"releases":{"title":{"sel":".listupd .utao .uta, .bixbox .bs.styletere","id":"a.series[rel]|attr:rel","name":"h4, .info .tt, .tt a, .series > h3|text","url":"a|attr:href","chapter":{"sel":".luf ul li, .chapter-list > a, .chfiv > li","label":"a .fivchap, a, .epxs|text","url":"a|attr:href || |attr:href","at":"a .fivtime, a + span, .epxdate, .newchtimeluffy|text"}}},"title":{"sel":"#chapterlist > ul","id":".bookmark[data-id]|attr:data-id || #rating-form input[name=\"bs_table_id\"]|attr:value","name":"h1.entry-title|text","img":".thumb img|attr-contain:src","type":".imptdt a[href*=\"type=\"]|text || .imptdt:first-of-type i|text","tags":".postbody .mgen > a|text","chapter":{"sel":"#chapterlist > ul > li","url":"a|attr:href","label":".chapternum|text","at":".chapterdate|text"}},"reader":{"sel":"#readerarea","content":"#readerarea","id":".ctop option:checked|attr:data-id","label":"h1.entry-title|text","title":{"sel":".headpost .allc a, [itemprop=\"itemListElement\"] [content=\"2\"] ~ a","name":"|text","url":"|attr:href"},"prev":"a.ch-prev-btn:not(.disabled)|attr:href","next":"a.ch-next-btn:not(.disabled)|attr:href","chapter":{"sel":".ctop #chapter option:not([disabled]):not([value=\"\"])","id":"|attr:data-id","label":"|text","url":"|attr:value"}},"search":{"title":{"sel":".listupd .bsx","name":".bigor .tt|text","url":"a|attr:href","img":"img|attr-contain:src"}}},{"404":".error-404.not-found","id":"madara","generic":true,"name":"meta[property=\"og:site_name\"]|attr:content || a.logo|attr:title","meta":{"releases":"","titleBase":"manga","readerBase":"manga/{titleSlug}","idBase":"?p=","searchBase":"?post_type=wp-manga&s=","defaultLang":"en","titleIdType":"id","trailing":true},"releases":{"title":{"sel":".page-listing-item .page-item-detail, .lastest-content .page-item-detail","id":"[data-post-id]|attr:data-post-id","name":"h3 a, .item-summary h3|text","url":"a|attr:href","chapter":{"sel":".chapter-item","label":".chapter a|text","url":".chapter a|attr:href","at":".c-new-tag|attr:title || .post-on|text"}}},"title":{"sel":"body.manga-page","id":"#manga-chapters-holder|attr:data-id || .rating-post-id|attr:value || [data-action=\"bookmark\"]|attr:data-post","name":"h1|text","img":".summary_image .img-responsive, .summary_image img, .series-img img|[attr:data-src,attr-contain:src]","tags":"a[rel=\"tag\"][href*=\"genre\"],a[rel=\"tag\"][href*=\"tag\"],.genres-content|text","type":".post-content_item .summary-heading|row:type","chapter":{"sel":"li.wp-manga-chapter, .chapter-ul > li","url":"a|attr:href","label":"a, .chapter-title-date > p|text","at":".c-new-tag|attr:title || .chapter-release-date i|text"}},"reader":{"sel":".entry-content .read-container","content":".reading-content","label":".breadcrumb li.active|text","title":{"sel":".breadcrumb li:nth-last-of-type(2) a","id":"#manga-reading-nav-head|attr:data-id","name":"|text","url":"|attr:href"},"prev":"a.btn.prev_page|attr:href","next":"a.btn.next_page|attr:href","chapter":{"sel":"#manga-reading-nav-head select.single-chapter-select > option:not([disabled])","label":"|text","url":"|attr:data-redirect"}},"search":{"title":{"sel":".c-tabs-item__content","name":"h3 a|text","url":"a|attr:href","chapter":{"sel":".tab-meta","label":".chapter a|text","url":".chapter a|attr:href","at":".c-new-tag|attr:title || .post-on|text"}}}},{"id":"single01","generic":true,"meta":{"releases":null,"titleBase":"","readerBase":"chapter","defaultLang":"en","titleIdType":"name","trailing":true,"searchable":false,"noTags":true,"single":true},"title":{"sel":"body:has(.network .projects > a.project-link:first-child):has(.chapters > a:first-child)","name":"meta[property=\"og:site_name\"]|attr:content","img":"img.cover-image|attr-contain:src","chapter":{"sel":".chapters > a","url":"|attr:href","label":".chapter-title|text","at":".chapter-date|text"}},"reader":{"sel":"body:has(.network .projects > a.project-link:first-child):has(.images ~ .chapter-nav)","label":".chapter-selector option:checked|text","title":{"name":"meta[property=\"og:site_name\"]|attr:content","url":"a[title=\"Home\"]|attr:href"},"imgs":".images > img|attr-contain:src","chapter":{"sel":".chapter-selector option","url":"|attr:value","label":"|text"}}},{"id":"single02","generic":true,"meta":{"releases":null,"titleBase":"","readerBase":"manga","titleIdType":"name","trailing":true,"searchable":false,"noTags":true,"single":true},"title":{"sel":"body:has(#masthead):has(#primary #main #Chapters_List)","name":"#primary #main article header.entry-header > h1|text","img":"figure img|attr-contain:src","chapter":{"sel":"#Chapters_List a","url":"|attr:href","label":"|text"}},"reader":{"sel":"body:has(#masthead):has(.trail-items)","label":"h1|text","title":{"url":"#site-title a|attr:href","name":"h1|text|remove:,.+$"},"imgs":".entry-content img|attr-contain:src","prev":".nav-previous a|attr:href","next":".nav-next a|attr:href"}},{"id":"single03","generic":true,"meta":{"releases":null,"titleBase":"","readerBase":"manga","titleIdType":"name","trailing":true,"searchable":false,"single":true},"title":{"sel":"body:has(.nnc-nav):has(#manga-info-right):has(#chapters-list-holder)","name":".info-desc h1|text|remove:manga\\sonline","img":".manga-thumb|attr-contain:src","tags":".genre-list > span|text","chapter":{"sel":"#chapters-list-holder > a","url":"|attr:href","label":".chapter-name|text","at":".chapter-date|text"}},"reader":{"sel":".mangosm-manga-nav","label":".mangosm-manga-nav-select option:checked|text","title":{"url":"#comic-breadcrumbs .item-home a|attr:href","name":"h1.entry-title|text|remove:,.+$"},"imgs":".entry-content img|attr-contain:src","chapter":{"sel":".mangosm-manga-nav-select option","label":"|text","url":"|attr:value"}}},{"404":".elapi > a[href*=\"/search?q=\"]","id":"mangahub","releases":{"title":{"sel":".list-group-item .media","name":"h4.media-heading a|text","url":".media-heading a|attr:href","at":".media-heading .small|text","chapter":{"sel":".media-body > a","label":"|text","url":"|attr:href"}}},"title":{"sel":"#chapters-tab .tab-content","name":"#mangadetail h1|text","img":"#mangadetail img.manga-thumb|attr-contain:src","tags":"#mangadetail a.genre-label|text","chapter":{"sel":"#chapters-tab li.list-group-item","label":"a > span:first-child > span:first-child|text","url":"a:not([title])|attr:href || a:not([rel])|attr:href || a|attr:href","at":"small|text"}},"reader":{"content":"#mangareader .container-fluid, #mangareader","label":"h3|text","prev":".chapter-pager .previous a[href*=\"/chapter/\"]|attr:href","next":".chapter-pager .next a[href*=\"/chapter/\"]|attr:href","title":{"sel":"h3 a","name":"|text","url":"|attr:href"},"chapter":{"sel":".pager-dropdown .dropdown-menu > li > a","label":"|text","url":"|attr:href"}},"search":{"title":{"sel":".media-manga","name":"h4 a|text","url":"h4 a|attr:href","img":"img|attr-contain:src","chapter":{"sel":".media-body","label":"a[href*=\"/chapter/\"]|text","url":"a[href*=\"/chapter/\"]|attr:href"}}}},{"id":"mangadex","search":{"lazy":true,"loading":"[indeterminate] svg","title":{"sel":"a.manga-card-dense","url":"|attr:href","name":"a.title span|text","img":".cover img|attr-contain:src"}}},{"id":"bato","releases":{"title":{"sel":"#series-list > .item","name":"a.item-title|text","url":"a.item-title|attr:href","lang":"em[data-lang]|attr:data-lang","chapter":{"sel":".item-volch","label":"a|text","url":"a|attr:href","at":"i|text"}}},"title":{"name":"h3.item-title a|text","img":".attr-cover > img|attr-contain:src","langs":".title-set em[data-lang]|attr:data-lang","tags":".attr-main .attr-item .text-muted|row:genres","chapter":{"sel":".episode-list > .main > .item","label":"a.chapt > b|text","url":"a.chapt|attr:href","at":".extra > i|text"}},"reader":{"content":"#viewer","imgs":"#viewer .page-img|attr:src","label":"title|text","title":{"sel":"h3.nav-title a","name":"|text","url":"|attr:href"},"lang":"h3.nav-title em[data-lang]|attr:data-lang","prev":".nav-prev > a[href^=\"/chapter/\"]|attr:href","next":".nav-next > a[href^=\"/chapter/\"]|attr:href","chapter":{"sel":".nav-epis > select option:not([disabled]):not([value=\"\"])","label":"|text","url":"|attr:value"}},"search":{"title":{"sel":"#series-list > .item","url":"a|attr:href","name":".item-title|text","img":"a img|attr-contain:src","lang":"em[data-lang]|attr:data-lang","chapter":{"sel":".item-volch","url":"a|attr:href","label":"a|text","at":"i|text"}}}},{"404":"#error > .attention","id":"mangago","releases":{"title":{"sel":"ul#search_list > li > div","name":"a.thm-effect|attr:title","url":"a.thm-effect|attr:href","chapter":{"sel":"a.chico","label":"|text","url":"|attr:href"}}},"title":{"name":".w-title h1|text","img":".article .cover img,#information img|attr-contain:src","tags":".manga_right a[href*=\"/genre/\"],.manga_info ul.uk-list a[href*=\"/genre/\"]|text","chapter":{"sel":"#chapter_table tbody tr, table.uk-table tbody tr","label":"h4 a b, a.chico b|text || a.chico|text","url":"h4 a, a.chico|attr:href","at":"td:last-child|text"}},"reader":{"content":"body","label":"#navi h3 span:last-child,#series + a.chapter|text","title":{"sel":"#navi a#series,#reader-nav .nav li:first-child a","name":"|text","url":"|attr:href"},"chapter":{"sel":".pagebar.top ul.dropdown-menu.chapter > li > a,#series ~ ul.chapter li a","label":"|text","url":"|attr:href"}},"search":{"title":{"sel":"#search_list > li .box","name":"a.thm-effect|attr:title","url":"a.thm-effect|attr:href","chapter":{"sel":"a.chico","label":"|text","url":"|attr:href"}}}},{"404":".nf-large + .nf-desc + a[href=\"/home\"]","id":"kakalot","releases":{"title":{"sel":"#latest-chap .inner > .item","id":".item-info h3|attr:data-id","name":".item-info h3 a|text","url":"a|attr:href","chapter":{"sel":".chapter-list > .cl-item","label":"a.chapter-name|text","url":"a|attr:href","at":".time|text"}}},"title":{"lazy":true,"sel":"#chapt-list .cl-header","id":"#main|attr:data-id","name":".detail-box h3.manga-name|text","img":".detail-box .manga-poster-img|attr-contain:src","tags":".detail-box .line-content a[href*=\"/genre/\"]|text","langs":"#chap-lang .lang-item|attr:data-code","chapter":{"sel":"#chapt-list .reading-list > .item","label":"a.chapter-name|text","url":"a.chapter-name|attr:href","at":".item-time|text"}},"reader":{"content":"#list-image","imgDivs":".card-wrap[data-url]","label":".breadcrumb-item.active|text","title":{"sel":".breadcrumb-item:nth-child(2) a","id":"#reading|attr:data-manga-id","name":"|text","url":"|attr:href"},"chapter":{"sel":".kbreadcrumb + .reading-option option.reading-item","label":"|text","url":"|attr:value"}},"search":{"title":{"sel":".manga-list > .inner > .item","name":".manga-name a|attr:title","url":".manga-name a|attr:href","img":".manga-poster img|attr-contain:src","chapter":{"sel":".latest-chapter .chapter-name","label":"|text","url":"|attr:href"}}}},{"id":"tapas","title":{"id":".button--subscribe|attr:data-tiara-event-meta-series-id","name":".info .title|text","img":".thumb img|attr:src","first":".episode-list__item a|attr:href","chapter":{"sel":".episode-list .episode-list__item > a","url":"|attr:data-id","label":"|attr:data-scene-number"}},"reader":{"content":".viewer__body","id":"div[id^=\"episode-\"][data-ep-id]|attr:data-ep-id","label":"div[id^=\"episode-\"][data-ep-scene]|attr:data-ep-scene","prev":"div[data-prev-id]:not([data-prev-id=\"-1\"])|attr:data-prev-id","next":"div[data-next-id]:not([data-next-id=\"-1\"])|attr:data-next-id","title":{"sel":"body","id":".subscribe-btn|attr:data-id","url":".subscribe-btn|attr:data-id","name":".series-info .title|text","img":".series-info .thumb img|attr:src"},"chapter":{"sel":".episode-list .list-body > li[data-id]","url":"|attr:data-id","label":".info__label|text"}},"search":{"title":{"sel":".search-item-wrap","url":"a|attr:href","name":"img|attr:alt|remove:#\\.*\\?#","img":"img|attr-contain:src"}}},{"id":"mangafire","releases":{"title":{"sel":".unit > .inner","id":"a[data-tip]|attr:data-tip|remove:\\?.+","name":".info a|text","url":"a|attr:href","chapter":{"sel":"ul.content li a","label":"span:first-child|text","url":"|attr:href","at":"span:last-child"}}},"title":{"id":".bookmark[data-id]|attr:data-id","name":".info h1[itemprop=\"name\"]|text","img":".poster img|attr-contain:src","tags":"#info-rating a[href*=\"/genre/\"]|text","langs":".tab-content[data-name=\"chapter\"] a.dropdown-item[data-code]|attr:data-code","chapter":{"sel":".tab-content[data-name=\"chapter\"] li.item[data-number]","url":"a|attr:href","label":"|attr:data-number","at":"a span:last-child|text"}},"reader":{"content":"#page-wrapper","imgDivs":".page","lstrip":".setting-tab.page-layout [data-value=\"longstrip\"].active","lstripBtn":".setting-tab.page-layout [data-value=\"longstrip\"]","label":"#number-panel ul li a[href*=\"/read/\"][data-number].active|attr:data-number","title":{"sel":"#ctrl-menu .head a","id":"body|attr:data-id","url":"|attr:href","name":"|text"},"chapter":{"sel":"#number-panel ul li a[href*=\"/read/\"][data-number]","label":"|attr:data-number","url":"|attr:href"}},"search":{"title":{"sel":".unit","id":"a[data-tip]|attr:data-tip|remove:\\?.+","url":"a|attr:href","name":".info a|text","img":"a img|attr-contain:src","chapter":{"sel":".unit .content[data-name=\"chap\"] a","url":"|attr:href","label":"span|text","at":"span:last-child"}}}},{"id":"mangapark","releases":{"title":{"sel":"div:has(> h3 a[href*=\"/title/\"])","name":"a span|text","url":"a|attr:href","chapter":{"sel":"h3 ~ div:has(a)","url":"a|attr:href","label":"a span|text","at":"time|attr:data-time"}}},"title":{"name":"h3 a|text","img":"main img|attr-contain:src","tags":"b ~ span span:first-child|text","chapter":{"sel":"[data-name=\"chapter-list\"] div:has(> div > a[href*=\"/title/\"])","url":"a|attr:href","label":"a|text","at":"time span|text","group":"a[href*=\"/u/\"]|text"}},"reader":{"label":"h6 a span|text","title":{"sel":"h3 a","url":"|attr:href","name":"|text"},"content":"main","imgDivs":"[data-name=\"image-item\"]","lstrip":"option[q\\:key=\"a\"]:checked","lstripBtn":"option[q\\:key=\"a\"]","prev":"a:has(> i[name=\"angle-left\"])|attr:href","next":"a:has(> i[name=\"angle-right\"])|attr:href","group":"a[href*=\"/u/\"] span|text","chapter":{"sel":".comic-detail + div select option[value*=\"/title/\"]","url":"|value","label":"|text"}},"search":{"title":{"sel":"div:has(> div > h3 a)","url":"a|attr:href","name":"h3 a|text","img":"a img|attr-contain:src","chapter":{"sel":"div:has(> span > span > time)","url":"a|attr:href","label":"a span|text","at":"time|attr:data-time"}}}},{"id":"webtoon","title":{"name":"h1.subj,.detail_info > p.subj,.info > h3.subj,.subject|text","img":"meta[property=\"og:image\"]|attr:content","tags":".info > h2.genre,.detail_info > p.genre,.info > p.genre,.tag_box .tag|text","first":"a#_btnEpisode,a._readEpisodeBtn|attr:href","chapter":{"sel":"li._episodeItem","label":"|attr:data-episode-no","url":"a|attr:href","at":".date|text"}}},{"id":"mangareader","releases":{"title":{"sel":"#latest-chap .mls-wrap > .item","id":"a|attr:href|remove:.+-","url":"a|attr:href","name":".manga-name a|text","chapter":{"sel":".fd-list .chapter a","label":"|text","url":"|attr:href"}}},"title":{"id":"[data-manga-id]|attr:data-manga-id","name":"#ani_detail h2.manga-name|text","img":"#ani_detail img.manga-poster-img|attr:src","type":".anisc-info .item-head|row:type","tags":".anisc-detail .genres a|text","langs":"a.c-select-lang|attr:data-code","chapter":{"sel":".chapters-list-ul > ul > li","label":"|attr:data-number","url":"a|attr:href"}},"reader":{"content":"#main-wrapper","imgDivs":".iv-card[data-url]","lstrip":"a.active[data-value=\"vertical\"]","lstripBtn":"#main-wrapper:not(.page-read-hoz)","label":".reading-list .chapter-item.active|attr:data-number","title":{"id":"[data-manga-id]|attr:data-manga-id","sel":"#header a.hr-manga","name":"h2,.manga-name|text","url":"|attr:href"},"chapter":{"sel":".reading-list.active > .chapter-item","url":"a|attr:href","label":"|attr:data-number"}}},{"404":"#notfound .notfound-404","id":"mgeko","releases":{"title":{"sel":"#latest-updates .novel-list.chapters > li > a","url":"|attr:href","name":"|attr:title","chapter":{"sel":"div:has(.chapter-title)","label":".chapter-title|text","at":".novel-stats span:first-child|text"}}},"title":{"name":".cover img|attr:alt","img":".cover img|[attr:data-src,attr-contain:src]","tags":".categories .property-item|text","first":"a#readchapterbtn|attr:href","chapter":{"sel":".chapter-list > li a","url":"|attr:href","label":".chapter-title,.chapter-number|text","at":"time|attr:datetime || .chapter-stats|text"}},"reader":{"imgs":"center:has(> #chapter-reader) img|attr-contain:src","label":".chapter-header .titles h2|text","next":"center .nextchap:not(.isDisabled)|attr:href","prev":"center .prevchap:not(.isDisabled)|attr:href","title":{"sel":".chapter-header .titles h1 a","name":"|text","url":"|attr:href"},"chapter":{"sel":"center center #cars option","label":"|text","url":"|attr:value"}},"search":{"title":{"sel":".novel-item","url":"a|attr:href","name":"h4|text","img":"img|[attr:data-src,attr-contain:src]","chapter":{"sel":".novel-stats","label":"strong|text"}}}},{"404":"#main > .error-404","id":"mangack","releases":{"title":{"sel":".latestmanga .Latest_chapter_update","url":"a|attr:href","name":".latest-title a|text","chapter":{"sel":"tr:last-child center","label":"a|text","url":"a|attr:href","at":".chapter-date|text"}}},"title":{"id":"input[name=\"follow_manga\"]|attr:value","name":"h1.entry-title|text","img":".manga-cover-wrap img|attr:src","tags":".infobox a[href*=\"/genres/\"]|text","type":".infobox a[href*=\"/comic-type/\"]|text","chapter":{"sel":".chapterslist > li","url":"a|attr:href","label":"a|text","at":".entry-date|text"}},"reader":{"content":".entry-content","label":".entry-title|text","title":{"sel":".latest-title a","name":"|text","url":"|attr:href"},"prev":".prev-post a|attr:href","next":".next-post a|attr:href"},"search":{"title":{"sel":".Latest_chapter_update","url":"a|attr:href","img":"img|attr-contain:src","name":"h4 a|text"}}},{"id":"katana","releases":{"title":{"sel":"#book_list > .item","id":"|attr:data-id","url":"a|attr:href","name":"a|text","chapter":{"sel":".chapter a","url":"|attr:href","label":"|text"}}},"title":{"id":".bookmark_bt[data-id]|attr:data-id","name":".info h1|text","img":".cover img|attr:src","tags":".info .genres a|text","chapter":{"sel":".chapters tbody > tr","url":"a|attr:href","label":"a|text","at":".update_time|text"}},"reader":{"content":"#imgs","imgs":".wrap_img > img|attr:data-src","label":"select[name=\"chapter_select\"] option:checked|text","prev":".nav_button.prev:not([disabled])|attr:href","next":".nav_button.next:not([disabled])|attr:href","title":{"sel":"#breadcrumb_wrap li:nth-child(2) a","id":".bookmark_chapter_bt[data-id]|attr:data-id","name":"span|text","url":"|attr:href"},"chapter":{"sel":".nav_chapters_wrap:first-child select[name=\"chapter_select\"] option","url":"|attr:value","label":"|text"}},"search":{"title":{"sel":"#book_list .item","url":"a|attr:href","img":"img|attr-contain:src","name":"h3 a|text","chapter":{"sel":"div:has(> div > .chapter)","url":"a|attr:href","label":"a|text","at":".update_time|text"}}}},{"id":"truyenqq","releases":{"title":{"sel":"#list_new > li","name":".book_name h3 a|text","url":".book_name h3 a|attr:href","id":".book_name h3 a|attr:href|remove:.+-","chapter":{"sel":".last_chapter a","label":"|text","url":"|attr:href"}}},"title":{"id":".btn-subscribe|attr:data-id","name":".book_info h1|text","img":".book_avatar img|attr-contain:src","tags":".book_info li a[href*=\"/the-loai/\"]|text","chapter":{"sel":".works-chapter-list .works-chapter-item","label":".name-chap a|text","url":".name-chap a|attr:href","at":".time-chap|text"}},"reader":{"content":".chapter_content","label":"ol.breadcrumb > li:last-of-type a span|text","prev":".chapter-control a.prev[href]:first-of-type:not(.d-none)|attr:href","next":".chapter-control a.prev[href]:last-of-type:not(.d-none), .chapter-control a.next[href]:not(.d-none)|attr:href","title":{"sel":"ol.breadcrumb > li:nth-of-type(2) a","id":".btn-subscribe|attr:data-id","name":"span|text","url":"|attr:href"},"chapter":{"trigger":".chapter_list","sel":"#popup_content .chapter-list > a, .chapter_list > option","label":"|text","url":"|attr:href || |attr:value"}},"search":{"title":{"sel":".list_grid > li","name":"h3 a|text","url":"h3 a|attr:href","img":"img|attr-contain:src","chapter":{"sel":".last_chapter a","url":"|attr:href","label":"|text"}}}},{"id":"uzay","releases":{"title":{"sel":"section[aria-label=\"new series\"] ~ section .header + div > div","url":"a|attr:href","name":"h2|text","chapter":{"sel":"a.mobile-list-item","url":"|attr:href","label":"h3 span:first-child b|text","at":"h3 span:nth-child(2)|text"}}},"title":{"name":".content-details > h1|text","img":".content-info > img|attr:src","tags":".content-details a[href*=\"?categories=\"]|text","chapter":{"sel":".list-episode > a","url":"|attr:href","label":"h3 b|text","at":"span:last-child|text"}},"reader":{"content":".manga-episode-card","label":".header h1 + h2|text","prev":"[aria-label=\"episode-navbar\"] div:not(last-child) > a[href]|attr:href","next":"[aria-label=\"episode-navbar\"] div:last-child > a[href]|attr:href","title":{"sel":".header h1:has(> a) a","url":"|attr:href","name":"|text"}}},{"id":"mangaworld","releases":{"title":{"sel":".comics-grid > .entry","name":".manga-title|text","url":"a|attr:href","chapter":{"sel":"div:has(> .xanh)","label":"a|text","url":"a|attr:href","at":"i|text"}}},"title":{"name":"h1.name|text","img":".thumb img|attr:src","tags":".meta-data a[href*=\"?genre=\"]|text","type":".meta-data a[href*=\"?type=\"]|text","chapter":{"sel":".chapters-wrapper .chapter > a","url":"|attr:href","label":"span|text","at":"i|text"}},"reader":{"content":"#page","label":"h1|text","lstrip":"select.mode option[value=\"LIST\"]:checked","lstripBtn":"select.mode option[value=\"LIST\"]","title":{"sel":"a[href*=\"/manga/\"]","name":"|text|remove:Ritorna\\sa","url":"|attr:href"},"chapter":{"sel":"#controls-1 select.chapter option","label":"|text","url":"|value"}},"search":{"title":{"sel":".comics-grid .entry","url":"a|attr:href","img":"img|attr-contain:src","name":".manga-title|text"}}},{"id":"leercapitulo","releases":{"title":{"sel":".media.mainpage-manga","url":"a|attr:href","name":"h4.manga-newest|text","chapter":{"sel":".hotup-list > span a","url":"|attr:href","label":"|text"}}},"title":{"name":"h1.title-manga|text","img":".cover-detail img|attr:src","tags":".description-update a[href*=\"/genre/\"]|text","chapter":{"sel":".chapter-list a.xanh","url":"|attr:href","label":"|text"}},"reader":{"content":".comic_wraCon","label":"h2.chapter-title:first-child|text","prev":"a.pre,a.LeftArrow|attr:href","next":"a.next,a.RightArrow|attr:href","lstrip":"select.loadImgType option[value=\"1\"]:checked","lstripBtn":"select.loadImgType option[value=\"1\"]","title":{"sel":"h2.chapter-title:nth-of-type(2) a","url":"|attr:href","name":"|text"},"chapter":{"sel":"h1 + .row select[rel=\"chap-select\"] option","url":"|attr:value","label":"|text"}}},{"id":"mangaplus","releases":{"title":{"sel":"[class*=\"UpdatedTitle-module_titleWrapper_\"]","url":"a|attr:href","name":"[class*=\"UpdatedTitle-module_titleName_\"]|text","chapter":{"sel":"[class*=\"UpdatedTitle-module_chapterTitle_\"]","label":"|text"}}},"title":{"lazy":true,"sel":"h1[class*=\"TitleDetailHeader-module_title_\"]","name":"h1[class*=\"TitleDetailHeader-module_title_\"]|text","img":"img[class*=\"TitleDetailHeader-module_coverImage_\"]|attr:src","chapter":{"sel":"[class*=\"ChapterListItem-module_chapterListItem_\"]","url":"a[class*=\"ChapterListItem-module_commentContainer_\"]|attr:href","label":"[class*=\"ChapterListItem-module_name_\"]|text","at":"[class*=\"ChapterListItem-module_date_\"]|text"}},"reader":{"content":"[class*=\"Viewer-module_viewerContainer_\"]","label":"[class*=\"Navigation-module_chapterTitle_\"]|text","lstrip":"input#mode-vertical:checked","lstripBtn":"input#mode-vertical","title":{"sel":"a:has(> [class*=\"Navigation-module_title_\"])","url":"|attr:href","name":"h1|text"},"chapter":{"sel":"ul > li[class*=\"SideMenu-module_chapter_\"]","label":"|text"}},"search":{"lazy":true,"empty":"p[class*=\"nothingMatched\"]","title":{"sel":"a[class^=\"AllTitle\"]","url":"|attr:href","name":"p|text","img":"img|[attr:data-src,attr-contain:src]"}}},{"id":"flame","releases":{"title":{"sel":"[class*=\"SeriesCard_chapterCardContainer__\"]","url":"a|attr:href","name":".mantine-Stack-root a|text","chapter":{"sel":"a:has(> [class*=\"SeriesCard_chapterPillWrapper__\"])","url":"|attr:href","label":"p:first-child|text","at":"p:not(:first-child)|text"}}},"title":{"name":"main h1|text","img":"img[alt=\"Cover\"]|attr:src","tags":"a[href*=\"/genre/\"] span|text","type":"p[class*=\"SeriesPage_infoField__\"]|row:type","first":".mantine-Paper-root p + a[href*=\"/series/\"]|attr:href","chapter":{"sel":"a[class*=\"ChapterCard_chapterWrapper__\"]","url":"|attr:href","label":"p:first-child|text","at":"p:not(:first-child)|text"}},"reader":{"content":"body","label":"p[class*=\"TopChapterNavbar_chapter_title__\"]|text","prevBtn":"button:has(.bi-arrow-left)","nextBtn":"button:has(.bi-arrow-right)","title":{"sel":"[class*=\"TopChapterNavbar_inner__\"]","name":"[class*=\"TopChapterNavbar_series_title__\"]|text","url":"a|attr:href"},"chapter":{"trigger":"button:has(.bi-card-list)","dismiss":".mantine-Modal-overlay, .mantine-CloseButton-root","sel":"[class*=\"ChapterCard_chapterWrapper__\"]","url":"|attr:href","label":"p:first-child|text","at":"p:not(:first-child)|text"}}},{"id":"vortex","title":{"name":"h1[itemprop=\"name\"]|text","img":"[itemprop=\"image\"] img|attr:src","type":"h1:has(> svg)|row:type","first":"a[href*=\"/series/\"][href*=\"/chapter\"]|attr:href"},"reader":{"content":"section:has(.image-container),main,body","label":"a[href*=\"/series\"]:has(img) div:has(~ time)|text","prev":"a:has(button[aria-label=\"Prev\"])|attr:href","next":"a:has(button[aria-label=\"Next\"])|attr:href","prevBtn":"button:has(.lucide-chevron-left)","nextBtn":"button:has(.lucide-chevron-right)","title":{"sel":"a[href*=\"/series\"]:has(img)","name":"div:has(~ time)|text|remove:\\sChapter.+","url":"|attr:href"},"chapter":{"trigger":"button:has(.lucide-chevron-down)","sel":"[data-radix-popper-content-wrapper] [role=\"option\"] span[id]","label":"|text"}},"chapters":{"chapter":{"trigger":"button[data-key=\"chapters\"]","sel":"[role=\"tabpanel\"] a[href*=\"/series/\"]","url":"|attr:href","label":"h3|text","at":"span:last-child:first-child|text"}},"search":{"lazy":true,"loading":"button > .animate-spin","title":{"sel":"div:has(> div > a[href*=\"/series/\"])","url":"a|attr:href","name":"a h1|text","img":"a img|attr-contain:src","chapter":{"sel":"a:has(time)","url":"|attr:href","label":"p|text","at":"time|attr:datetime"}}}},{"id":"weebcentral","releases":{"title":{"sel":"[x-data*=\"sub_feed_shown\"] section article","url":"a:first-child|attr:href","name":"div:not(:has(span)) div|text","chapter":{"sel":"a:not(:first-child)","url":"|attr:href","label":"div:not(:first-child) span|text","at":"time|attr:datetime"}}},"title":{"name":"h1|text","img":"picture img|attr:src","tags":"li a[href*=\"?included_tag=\"]|text","type":"li a[href*=\"?included_type=\"]|text","hasMore":"#chapter-list a","first":"[x-data]:has(> a[href*=\"chapters/\"]):last-child a|attr:href"},"reader":{"content":"[hx-include*=\"reading_style\"]","label":"[hx-target=\"#chapter-select-body\"] span|text","lstripBtn":"input[value=\"long_strip\"]","lstrip":"input[value=\"long_strip\"]:checked","prevBtn":"button[\\@click=\"prevPage()\"]","nextBtn":"button[\\@click=\"nextPage()\"]","title":{"sel":"#nav-top a[href*=\"/series/\"]","url":"|attr:href","name":"span|text"},"chapter":{"trigger":"button[hx-target=\"#chapter-select-body\"]"}},"chapters":{"chapter":{"sel":"a[href*=\"/chapters/\"]","url":"|attr:href","label":"span span|text","at":"time|attr:datetime"}},"search":{"lazy":true,"empty":"main [role=\"alert\"]","title":{"sel":"article:has(a img)","url":"a|attr:href","name":"a:not(:has(img))|text","img":"a img|attr-contain:src"}}},{"id":"lua","releases":{"title":{"sel":"div:has(> div > a[href*=\"/series/\"]):has(a > h5)","url":"a|attr:href","name":"h5|text","chapter":{"sel":"a + div a","url":"|attr:href","label":"span:first-child|text","at":"span:not(:first-child)|text"}}},"title":{"name":"h1|text","img":"main div > img[src]|attr-contain:src","hasMore":"[aria-current=\"page\"]","chapter":{"sel":"a[href*=\"/series/\"]:has(> li)","url":"|attr:href","label":"div > span:first-child|text","at":"div > span:not(:first-child)|text"}},"reader":{"label":"h1|text","prev":"a[href*=\"/series/\"]:has(> button [data-icon=\"chevron-left\"])|attr:href","next":"a[href*=\"/series/\"]:has(> button [data-icon=\"chevron-right\"])|attr:href","content":"nav:first-child ~ .container:has(img)","title":{"sel":"nav:has(h1)","name":"h2|text","url":"a[href*=\"/series/\"]:has(svg[data-icon=\"house\"])|attr:href","img":"img|attr:src"},"chapter":{"trigger":"button:has(> [data-icon=\"list\"])","sel":"#headlessui-portal-root ul a[href*=\"/series/\"]:has(> li)","url":"|attr:href","label":"span:first-child|text","at":"span:not(first-child)|text"}},"chapters":{"chapter":{"json":true,"sel":"","label":"chapter_name","url":"chapter_slug","at":"created_at"}}},{"id":"qi","releases":{"title":{"sel":"div:has(> a[href*=\"/series/\"] p)","url":"a|attr:href","name":"p|text","chapter":{"sel":"div a","url":"|attr:href","label":"span:first-child|text","at":"span:last-child|text"}}},"title":{"name":"main section h1|text","tags":"a[href*=\"?tag=\"]|text","first":"a[href*=\"/series/\"]:has(> button)|attr:href"},"reader":{"label":"nav h1|text","prev":"a[href*=\"/series/\"]:has(.lucide-chevron-left)|attr:href","next":"a[href*=\"/series/\"]:has(.lucide-chevron-right)|attr:href","content":"nav ~ .container:has(img)","title":{"sel":"nav:has(h1)","name":"h2|text","url":"a[href*=\"/series/\"]:has(img[alt=\"home\"])|attr:href"},"chapter":{"trigger":"button:has(> .lucide-list)","sel":"[data-headlessui-state=\"open\"] ul > li a[href*=\"/series/\"]","url":"|attr:href","label":"span|text"}},"chapters":{"chapter":{"json":true,"sel":"","label":"number","url":"slug","at":"createdAt"}},"search":{"lazy":true,"loading":".lucide-loader-circle","title":{"sel":"a[href*=\"/series/\"]","url":"|attr:href","name":"h2|text"}}},{"id":"mangabuddy","releases":{"title":{"sel":".main-container .book-item .meta","name":"h3 a|text","url":"h3 a|attr:href","chapter":{"sel":".chap-item","label":"h4 a|text","url":"h4 a|attr:href","at":".updated-date span|text"}}},"title":{"sel":"#chapter-list","name":"h1|text","img":".img-cover img|attr-contain:src","tags":".detail a[href*=\"/genres/\"]|text","chapter":{"sel":"#chapter-list > li > a","url":"|attr:href","label":".chapter-title|text","at":".chapter-update|text"}},"reader":{"label":"#breadcrumbs-container .breadcrumbs-item:last-child|text","title":{"sel":"#breadcrumbs-container .breadcrumbs-item:nth-child(2) a","url":"|attr:href","name":"span|text"},"content":"#chapter-images","imgDivs":".chapter-image","prev":"a#btn-prev|attr:href","next":"a#btn-next|attr:href","chapter":{"trigger":"#load-chapters","sel":".chapter-select option","url":"|attr:value","label":"|text"}}},{"id":"rolia","releases":{"title":{"sel":".article-feed > div > div:has(> h6)","name":"h6 a|text","url":"h6 a|attr:href","chapter":{"sel":"table tr","label":"a|text","url":"a|attr:href","at":"time|attr:data-date"}}},"title":{"name":"h1|text","img":"img.poster|attr-contain:src","tags":"a[href*=\"/genres/\"]|text","type":".card-movies-series table tr:last-child td|text","first":".chapter-list + a|attr:href","hasMore":".chapter-list ~ a[href*=\"/chapterlist\"]"},"chapters":{"chapter":{"sel":"#page-content-wrapper td:first-child a","url":"|attr:url","label":"|text"}},"reader":{"content":".manga-child-content","label":".childtitle|text","next":".chapter-nav-right|attr:href","prev":".chapter-nav-left|attr:href","title":{"sel":".breadcrumb strong a","name":"|text","url":"|attr:href"},"chapter":{"sel":"#postDropdown option:not(:first-child)","label":"|text","url":"|attr:value"}},"search":{"title":{"sel":".card-body","url":"a|attr:href","img":"img|attr-contain:src","name":"h4 a|text"}}},{"id":"lelscanfr","releases":{"title":{"sel":"div:has(> #card-real)","url":"a|attr:href","name":"h2|text","chapter":{"sel":"#card-real + div div:has(a)","label":"b|text","url":"a|attr:href","at":"a + span|text"}}},"title":{"name":"main h2|text","img":"main img[alt]|attr-contain:src","tags":"main a[href*=\"genre=\"]|text","type":"a[href*=\"type=\"]|text","hasMore":"ul.pagination","chapter":{"sel":"#chapters-list > a","url":"|attr:href","label":"div:first-child > span|text","at":"div:nth-child(2) > span"}},"reader":{"label":"h2|text","title":{"sel":"h3 a","url":"|attr:href","name":"|text"},"content":"#chapter-container, main","lstrip":"#reading-types option[value=\"long\"]:checked","lstripBtn":"#reading-types option[value=\"long\"]","prev":"div:has(#chapter-select) + div a:first-child[href*=\"/manga/\"]|attr:href","next":"div:has(#chapter-select) + div a:last-child[href*=\"/manga/\"]|attr:href","chapter":{"sel":"div:has(~ #chapter-container) #chapter-select option","label":"|text","url":"|text"}}},{"id":"phoenix","releases":{"title":{"sel":".main__latest-releases-card","url":"a|attr:href","name":"h3 text","chapter":{"sel":"a.main__latest-releases-card-chapter","url":"|attr:href","label":".main__latest-releases-card-chapter-number|text","at":".main__latest-releases-card-chapter-date|text"}}},"title":{"name":"h1|text","img":"img.project__cover|attr-contain:src","chapter":{"sel":"a.project__chapter","url":"|attr:href","label":".project__chapter-title|text","at":".project__chapter-date|text"}},"reader":{"label":".chapter__nav-chapter-title-number|text","title":{"sel":"a.chapter__nav-chapter","url":"|attr:href","name":".chapter__nav-title|text"},"content":".chapter-images__container","prev":"a.chapter__previous|attr:href","next":"a.chapter__next|attr:href","chapter":{"trigger":".chapter-images__controls-chapter","sel":".chapter-list .chapter_item a","url":"|attr:href","label":"|text"}}},{"404":"#content > .wrapper > .notf img, body:empty","id":"nika","releases":{"title":{"sel":".listupd .utao .uta .luf","url":"a|attr:href","name":"h4|text","chapter":{"sel":"ul li a:has(.eggchap)","url":"|attr:href","label":".eggchap|text","at":".eggtime|text"}}},"title":{"id":".bookmark[data-id]|attr:data-id","name":"h1.entry-title|text","img":".thumb img|attr-contain:src","tags":".mgen a[rel=\"tag\"]|text","type":".imptdt a[href*=\"type=\"]|text","chapter":{"sel":".chapter-item a","url":"|attr:href","label":"div div:first-child|text","at":"div div:not(:first-child)|text"}},"reader":{"content":"#readerarea","id":".ctop option:checked|attr:data-id","label":"h1.entry-title|text","title":{"sel":".headpost .allc a","name":"|text","url":"|attr:href"},"prev":"a.ch-prev-btn:not(.disabled)|attr:href","next":"a.ch-next-btn:not(.disabled)|attr:href","chapter":{"sel":".ctop #chapter option:not([disabled]):not([value=\"\"])","id":"|attr:data-id","label":"|text","url":"|attr:value"}},"search":{"title":{"sel":".listupd .bs .bsx a","url":"|attr:href","name":".bigor .tt|text","img":"img|attr-contain:src"}}},{"id":"manhwaz","title":{"name":".post-title h1|text","img":".summary_image img[alt]|attr-contain:src","tags":".genres-content a[rel=\"tag\"]|text","chapter":{"sel":".wp-manga-chapter","label":"a|text","url":"a|attr:href","at":".chapter-release-date i|text"}},"reader":{"label":".breadcrumb .active|text","title":{"sel":".breadcrumb li:has(+ .active) a","url":"|attr:href","name":"|text"},"content":"#chapter_content, .reading-content","prev":".nav-previous a|attr:href","next":".nav-next a|attr:href","chapter":{"sel":"#manga-reading-nav-head .single-chapter-select option","url":"|attr:value","label":"|text"}},"search":{"title":{"sel":".page-item-detail","url":"a|attr:href","name":"h3 a|text","img":"img|attr-contain:src","chapter":{"sel":".chapter-item ","url":"a|attr:href","label":"a|text","at":".post-on|text"}}}},{"id":"dynasty","title":{"name":"h2.tag-title b|text","img":".cover img|attr-contain:src","tags":".tag-tags a.label|text","chapter":{"sel":".chapter-list dd:has(> a.name)","url":"a|attr:href","label":"a|text","at":"small|text"}},"reader":{"label":"h3#chapter-title b|text","title":{"sel":"h3#chapter-title a","url":"|attr:href","name":"|text"},"content":"#image","prev":"a#prev_link|attr:href","next":"a#next_link|attr:href"},"search":{"title":{"sel":".chapter-list a.name","url":"|attr:href","name":"|text"}}},{"id":"fmteam","releases":{"title":{"sel":".item:has(h5 a)","name":"h5 a|text","url":"h5 a|attr:href","chapter":{"sel":"a[href*=\"/read/\"]","label":"|text","url":"|attr:href"}}},"title":{"lazy":true,"sel":"#comic","name":"#comic .card-header|text","img":"#comic .card-body .thumbnail-full img|attr-contain:src","type":"#comic .card-body div:has(> label)|row:format","tags":"#comic .card-body div:has(> label)|row:genres","chapter":{"sel":"div:has(> div > .chapter a[href*=\"/read/\"])","label":"a[href*=\"/read/\"]|text","url":"a[href*=\"/read/\"]|attr:href","at":"div:last-child[title]|attr:title"}},"reader":{"title":{"sel":"#reader-controls-title a","name":"|text","url":"|attr:href"},"label":"select[name=\"jump-chapter\"] option:checked|text","content":"#reader-images","imgDivs":"#reader-images [data-page]","lstrip":".active > [data-value=\"long-strip\"]","lstripBtn":"[data-value=\"long-strip\"]","prev":"#chapter-link-left[href*=\"/read\"]|attr:href","next":"#chapter-link-right[href*=\"/read\"]|attr:href","chapter":{"sel":"select[name=\"jump-chapter\"] option","label":"|text","url":"|attr:value"}}},{"id":"readallcomics","title":{"name":"h1 b|text","img":".description-archive img|attr-contain:src","tags":"h1 ~ div p strong|text","chapter":{"sel":".list-story li a","url":"|attr:href","label":"|text"}},"reader":{"sel":"center > p:has(> img)","label":"h3 strong|text","title":{"sel":".pinbin-category a","name":"|text","url":"|attr:href"},"content":"center > p:has(> img)","imgs":"center > p > img|[attr:data-jh-lazy-img,attr-contain:src]","chapter":{"sel":"center:has(> p > img) ~ div center select option","label":"|text","url":"|attr:value"}}},{"id":"philia","releases":{"title":{"sel":"main .unit","name":"a.c-title|text","url":"a.c-title|attr:href","chapter":{"sel":"li a","url":"|attr:href","label":".ch-num|text","at":".ch-date|text"}}},"title":{"name":"h1.serie-title|text","img":"img.cover|attr-contain:src","type":".stat-label|row:type","chapter":{"sel":".chapter-group a","url":"|attr:href","label":"zebi|text","at":".time|text"}},"reader":{"label":".current-type-number|text","title":{"sel":"a.manga-title","url":"|attr:href","name":"|text"},"content":"#ch-images","chapter":{"sel":".chapter-list ul .item","url":"|attr:data-chapter","label":"a|text"}},"search":{"title":{"sel":".unit","url":"a|attr:href","name":".c-title|name","img":"img|attr-contain:src","chapter":{"sel":".content > li a","url":"|attr:href","label":".ch-num|text","at":"ch-date|text"}}}},{"id":"batcave","releases":{"title":{"sel":"li.latest","name":"a.latest__title|text","url":"a.latest__title|attr:href","chapter":{"sel":".latest__chapter a","url":"|attr:href","label":"|text"}}},"title":{"name":"#dle-content h1|text","img":"#dle-content .img-wide img|attr-contain:src","id":"[data-ratig-layer-id]|attr:data-ratig-layer-id","chapter":{"sel":".cl__item","label":".cl__item-num|text","url":"a|attr:href","at":".cl__item-date|text"}},"reader":{"label":".chapter__selector-trigger__title|text","title":{"sel":"a.header__post-link","url":"|attr:href","name":".header__post-title|text"},"content":".reader-view","chapter":{"trigger":".chapter__selector-trigger","sel":".chapters__list a","url":"|attr:href","label":"|text"},"prev":".chapter__selector a:has(.fa-angle-left)[href*=\"/reader/\"]|attr:href","next":".chapter__selector a:has(.fa-angle-right)[href*=\"/reader/\"]|attr:href"}},{"id":"tcb","title":{"name":"h1|text","img":"main img|attr-contain:src","chapter":{"sel":"main a[href*=\"/chapters/\"]","url":"|attr:href","label":"div|text"}},"reader":{"label":"h1|text|remove:.+-","title":{"name":"h1|text|remove:-.+","url":"main a[href*=\"/mangas/\"]|attr:href"},"prev":"a[href*=\"/chapters/\"]:has(+ a[href*=\"/mangas/\"])|attr:href","next":"a[href*=\"/mangas/\"] + a[href*=\"/chapters/\"]|attr:href","content":"main"}},{"id":"bato3x","title":{"name":"h3 a[href*=\"/title/\"]|text","id":"h3 a[href*=\"/title/\"]|attr:href|pattern:.*\\/(\\d+)-.*","img":"main img|attr-contain:src","tags":"div:has(> h3) + div b ~ span|text","chapter":{"sel":"[name=\"chapter-list\"] astro-slot > div","url":"a|attr:href","label":"a|text","at":"time|attr:time"}},"reader":{"label":"h6 a span|text","title":{"sel":"h3 a","name":"|text","url":"|attr:href","id":"|attr:href|pattern:.*\\/(\\d+)-.*"},"lstrip":"select[data-name=\"page-load\"] option[value=\"2\"]:checked","lstripBtn":"select[data-name=\"page-load\"] option[value=\"2\"]","content":"[name=\"image-items\"]","imgs":"[name=\"image-items\"] img|attr-contain:src","chapter":{"sel":"[data-name=\"page-jump\"] option","url":"|attr:value","label":"|text"}}},{"id":"mangapill","releases":{"title":{"sel":"div:has(> a[href*=\"/chapters/\"]):has(div > a[href*=\"/manga/\"])","name":"a[href*=\"/manga/\"]|text","url":"a[href*=\"/manga/\"]|attr:href","chapter":{"sel":"div:has(> a[href*=\"/chapters/\"])","url":"a[href*=\"/chapters/\"]|attr:href","label":"a[href*=\"/chapters/\"]|text","at":"time-ago|attr:datetime"}}},"title":{"name":"h1|text","img":"header ~ div img|attr:data-src","tags":"a[href*=\"?genre=\"]|text","chapter":{"sel":"#chapters a[href*=\"/chapters/\"]","url":"|attr:href","label":"|text"}},"reader":{"label":"h1#top|text","title":{"sel":"#js-chapter-selector-modal div:has(> a[href*=\"/manga/\"])","name":"#chapter-selector-modal-title|text","url":"a|attr:href"},"content":"div:has(> chapter-page)","imgs":"chapter-page picture img|attr-contain:src","prev":"a[data-hotkey=\"ArrowLeft\"]|attr:href","next":"a[data-hotkey=\"ArrowRight\"]|attr:href","chapter":{"trigger":"button[data-micromodal-trigger=\"js-chapter-selector-modal\"]","dismiss":"#js-chapter-selector-modal button[data-micromodal-close]","sel":"#js-chapter-selector-modal a[href*=\"/chapters/\"]","url":"|attr:href","label":"|text"}},"search":{"title":{"sel":"div:has(> a img)","url":"a|attr:href","name":"a:not(:has(img)) div|text","img":"a img|[attr:data-src,attr-contain:src]"}}},{"id":"mangataro","releases":{"title":{"sel":"#manga-grid > div:has(a + div a[href*=\"/read/\"])","name":"h3|text","url":"a|attr:href","chapter":{"sel":"h3 ~ div > a","url":"|attr:href","label":"span:first-child|text","at":"span:last-child|text"}}},"title":{"name":"h1|text","img":".manga-page-wrapper img|attr-contain:src","tags":".manga-page-wrapper a[href*=\"/tag/\"]|text","type":"h1 + p + div + div > span|text","first":"a#start-reading-btn|attr:href"},"reader":{"title":{"sel":"a[href*=\"/manga/\"]","url":"|attr:href","name":"span|text"},"label":"select#chapter-select option:checked|text","content":".reader","imgs":".comic-image-container img|[attr:data-src,attr-contain:src]","chapter":{"sel":"select#chapter-select option","url":"|attr:value","label":"|text"}},"search":{"title":{"sel":".group a[href*=\"manga\"]","url":"|attr:href","name":"img|attr:alt"}}},{"id":"demonic","releases":{"title":{"sel":".updates-element-info","name":"h2 a|text","url":"a|attr:href","chapter":{"sel":".chap-date","url":"a|attr:href","label":"a|text","at":"div:last-child a|text"}}},"title":{"name":"h1.big-fat-titles|text","img":"#manga-page img[alt]|attr-contain:src","chapter":{"sel":"#chapters-list li > a","url":"|attr:href","label":"|text","at":"span|text"}},"reader":{"sel":".chapter-info h1 a","title":{"sel":".chapter-info h1 a","url":"|attr:href","name":"|text"},"label":"h2|text","content":"body","imgs":"img.imgholder:not([data-tried]):not([src*=\"/free_ads\"])|attr-contain:src","chapter":{"sel":"h2 + .chapters-nav select option","label":"|text","url":"|attr:value"}}},{"id":"atsu","title":{"lazy":true,"sel":"h1","name":"h1|text","img":".poster|attr-contain:src","tags":"a[href*=\"/explore?tags=\"]|text","first":"aside a[href*=\"/read/\"]:has([data-icon=\"book-open\"])|attr:href","trackers":{"anl":"a[href*=\"anilist.co\"]|attr:href|pattern:.*/(\\d+)$","mal":"a[href*=\"myanimelist.net\"]|attr:href|pattern:.*/(\\d+)$"},"hasMore":"aside + div button ~ div > a[href*=\"/read/\"]","chapter":{"sel":"aside + div div:has(~ button) > a[href*=\"/read/\"], aside + div div:not(:has(> div ~ button)) > div > a[href*=\"/read/\"]","url":"|attr:href","label":"span:first-child|text","at":"span:last-child|text"}},"chapters":{"chapter":{"json":true,"sel":"chapters","label":"number","url":"id"}},"search":{"lazy":true,"empty":"div > h1","title":{"sel":"a[href*=\"/manga/\"]","url":"|attr:href","name":"p|text","img":"img|attr-contain:src"}}},{"id":"mangahaven","title":{"name":"p:has(+ div a[href*=\"filter\"])|text","img":"main img[alt]|attr-contain:src","tags":"a[href*=\"genre=\"] div|text","type":"a[href*=\"status=\"] ~ div:last-child|text"},"reader":{"title":{"url":"#fucking-container a[href*=\"/manga/\"]|attr:href","name":"#fucking-container p|text"},"label":"button p:last-child|text|remove:/.+","content":"body"},"search":{"lazy":true,"loading":".animate-pulse","title":{"sel":"a[href*=\"/manga/\"]","url":"|attr:href","name":"p|text","chapter":{"sel":"div:has(> span)","label":"span:first-child|text","lang":"span:last-child|text"}}}},{"id":"kali","releases":{"title":{"sel":".latest-item .meta","name":"h3 a|text","url":"a|attr:href","chapter":{"sel":".chap-item","url":"a|attr:href","label":"a|text","at":".updated-date span|text"}}},"title":{"name":".name h1|text","img":".img-cover img|[attr:data-src,attr-contain:src]","tags":".meta a[href*=\"/genres/\"]|text","chapter":{"sel":"#chapter-list li > a","url":"|attr:href","label":".chapter-title|text","at":".chapter-update|text"}},"reader":{"lazy":true,"sel":".chapter-image[data-src]","title":{"sel":".breadcrumbs-item a[href*=\"/manga/\"]","url":"|attr:href","name":"span|text"},"label":".breadcrumbs-item:last-child span|text","imgs":".chapter-image|attr:data-src","prev":"#btn-prev|attr:href","next":"#btn-next|attr:href","chapter":{"trigger":"#load-chapters","sel":".chapter-select option","label":"|text","url":"|attr:value"}},"search":{"title":{"sel":".book-detailed-item","img":"img|[attr:data-src,attr-contain:src]","name":"h3 a|text","url":"h3 a|attr:href","chapter":{"sel":".thumb","label":".latest-chapter|text"}}}},{"id":"mangafreak","releases":{"title":{"sel":".latest_item","url":"a|attr:href","name":"a.name|text","chapter":{"sel":".chapter_box a","url":"|attr:href","label":"|text"}}},"title":{"name":"h1|text","img":".manga_series_image img|attr-contain:src","tags":".series_sub_genre_list > a|text","chapter":{"sel":".manga_series_list tbody tr","url":"a|attr:href","label":"a|text","at":"td:last-child|text"}},"reader":{"title":{"sel":"h1.title a","url":"|attr:href","name":"|text"},"label":"h1|text","imgs":".read_image img|attr-contain:src","chapter":{"sel":".chapter_list select option","label":"|text","url":"|attr:value"}},"search":{"title":{"sel":".manga_search_item","name":"h3 a|text","url":"a|attr:href","img":"img|attr-contain:src"}}},{"id":"readcomiconline","title":{"name":".barContent .bigChar|text","img":"#rightside img, .main img|attr-contain:src","chapter":{"sel":".listing tbody tr:has(a)","label":"a|text","url":"a|attr:href","at":"td:last-child|text"}},"reader":{"title":{"sel":"#navsubbar a","url":"|attr:href","name":"|text|pattern:Comic (.+) information"},"label":".selectEpisode option:checked|text","lstrip":"#selectReadType option[value=\"1\"]:checked","lstripBtn":"#selectReadType option[value=\"1\"]","content":"#divImage","chapter":{"sel":".selectEpisode option","url":"|attr:value","label":"|text"}}},{"id":"valir","releases":{"title":{"sel":".latest-poster","name":"a h3|text","url":"a|attr:href","chapter":{"sel":"a[href*=\"/chapter/\"]","url":"|attr:href","label":"span div|text","at":"span:last-child|text"}}},"title":{"name":"h1|text","img":".bg-\\[image\\:--photoURL\\]|bg-image","chapter":{"sel":"#chapters > a","url":"|attr:href","label":"span span|text","at":"span + div div|text"}},"reader":{"title":{"sel":"#chapter_header a[href*=\"/series/\"]","url":"|attr:href","name":"|text"},"label":"#chapter_header span:has(a[href*=\"/series/\"])|text","content":"#pages","chapter":{"sel":"#chapters > a","url":"|attr:href","label":"span span|text","at":"span + div div|text"}},"search":{"lazy":true,"delay":500,"empty":"#no_results_page","title":{"sel":"#searched_series_page > button:not(.hidden)","name":"a h3|text","url":"a|attr:href","img":"div[style*=\"background-image\"]|bg-image"}}},{"id":"rithar","releases":{"title":{"sel":".latest-poster","name":"a h3|text","url":"a|attr:href","chapter":{"sel":"a[href*=\"/read/\"]","url":"|attr:href","label":"span div|text","at":"span:last-child|text"}}},"title":{"name":"h1|text","img":"main div[style*=\"background-image\"]|bg-image","chapter":{"sel":"#chapters > a","url":"|attr:href","label":"span span|text","at":"div:has(> span) + div div|text"}},"reader":{"title":{"sel":"header a[href*=\"/series/\"]","url":"|attr:href","name":"|text"},"label":"header a[href*=\"/series/\"] + span|text","lstrip":"[x-ref=\"webtoonContainer\"]","lstripBtn":"div:has(> img[src*=\"up-down\"])","imgDivs":"[id*=\"webtoon-page-\"]","chapter":{"sel":"#chapters > a","url":"|attr:href","label":"span span|text","at":"span + div div|text"}},"search":{"title":{"sel":"#main-content button:has(a[href*=\"/series/\"])","name":"a h3|text","url":"a|attr:href","img":"div[style*=\"background-image\"]|bg-image"}}},{"id":"rawkuma","releases":{"title":{"sel":"#search-results > div","url":"a|attr:href","name":"h1|text","chapter":{"sel":"div > a:has(time)","url":"|attr:href","label":"p|text","at":"time|attr:datetime"}}},"title":{"name":"h1[itemprop=\"name\"]|text","img":"[itemprop=\"image\"] img|attr-contain:src","tags":"a[href*=\"/genre/\"] span|text","type":"h4|row:type","first":"button a[href*=\"/manga/\"]|attr:href"},"reader":{"title":{"name":"a[href*=\"/manga/\"] img[alt]|attr:alt","url":"a[href*=\"/manga/\"]|text"},"label":"div:has(> time) div|text","imgs":"section[data-image-data] > img|attr-contain:src","prev":"a[href*=\"/manga/\"]:has([data-lucide=\"chevron-left\"])|attr:href","next":"a[href*=\"/manga/\"]:has([data-lucide=\"chevron-right\"])|attr:href","chapter":{"trigger":"button[pop-content=\"#chapter-lists-head\"]","sel":"#chapter-lists-head li > a","url":"|attr:href","label":"|text"}}},{"id":"mangaberri","releases":{"title":{"sel":".manga-horizontal-item","url":"a|attr:href","name":"a|attr:title","chapter":{"sel":"a.episode","url":"|attr:href","label":"span|text"}}},"title":{"sel":".chapters-container","name":"h1|text","img":"img.comic-img|attr-contain:src","tags":".comic-attrs a[href*=\"genre=\"]|text","chapter":{"sel":".chapters-container > a","url":"|attr:href","label":"span|text"}},"reader":{"title":{"sel":".breadcrumb-container a:nth-of-type(2)","url":"|attr:href","name":"|attr:title"},"label":".breadcrumb-container a:nth-of-type(3)|attr:title","imgs":".reading-container img|attr-contain:src","chapter":{"sel":"#top_chapter_selection option","url":"|attr:value","label":"|text"}},"search":{"title":{"sel":".manga-item","img":"img|attr-contain:src","name":"a|attr:title","url":"a|attr:href","chapter":{"sel":"a:last-of-type","url":"|attr:href","label":"|text"}}}},{"id":"kagane","title":{"name":"h1|text","tags":"span[title*=\"genre:\"]|text","firstBtn":"button:has(.lucide-play)"},"reader":{"title":{"name":"title|text|remove:-.+","url":"a[href*=\"/series/\"]|attr:href"},"label":"title|text|remove:.+-","content":".reader-pages-content"},"search":{"lazy":true,"title":{"sel":"[data-series-item]","name":"h3|text","url":"a|attr:href"}}},{"id":"mangaball","title":{"name":"h6|text","img":"#featuredComicsCarousel img[alt]|attr-contain:src","tags":"[data-tag-id]|text"},"reader":{"title":{"name":"header h6|text","url":"[type=\"application/ld+json\"]|text|remove:^[\\s\\S]*?\"url\":\\s*\"|remove:\"[\\s\\S]*$"},"label":"#chapterTitle|text","content":"#mangaPages","imgs":"#mangaPages img|[attr:data-src,attr-contain:src]","group":"#translationGroup span|text"},"search":{"lazy":true,"empty":"#seasonal-anime-container .alert","title":{"sel":"div:has(> .item-title)","name":"a|text","url":"a|attr:href","img":".item-body img|attr-contain:src"}}},{"id":"mangatr","title":{"sel":"#tab1 .info-body h1","name":"#tab1 .info-body h1|text","img":".thumbnail|attr:src","tags":".manga-meta-card a[href*=\"tur=\"]|text","first":"#results a:has(+ .chapter-container)|attr:href","hasMore":"[data-page=\"2\"]","chapter":{"sel":".chapter-item","label":"a|text","url":"a|attr:href","at":".stats|text"}},"reader":{"sel":".chapter-content","title":{"sel":"a.navbar-brand","url":"|attr:href","name":"|text"},"label":".navbar-form option:checked|text","group":".chapter-content a.label|text","content":"#chapter-images","chapter":{"sel":".navbar-form option","url":"|attr:value","label":"|text"}}},{"id":"denizi","title":{"name":".panel-heading,h2|text","img":".single-managa .boxed img, h2 ~ div img|attr-contain:src","tags":"a[href*=\"/category/\"]|text","chapter":{"sel":".chapters > li","label":"a|text","url":"a|attr:href","at":".date-chapter-title-rtl|text"}},"reader":{"title":{"sel":".nav:has(#chapter-list) a","url":"|attr:href","name":"|text"},"label":"h1 b|text","content":"#all","imgs":"#all img|[attr:data-src,attr-contain:src]","chapter":{"sel":"#chapter-list li a","url":"|attr:href","label":"|text"}}},{"id":"mangabox","releases":{"title":{"sel":".itemupdate","name":"h3 a|text","url":"a|attr:href","chapter":{"sel":"ul > li:not(:first-child)","label":"a|text","url":"a|attr:href","at":"i|text"}}},"title":{"name":"h1|text","img":".manga-info-pic img|attr-contain:src","tags":".manga-info-text a[href*=\"/genre/\"]|text","chapter":{"sel":".chapter-list > .row","label":"a|text","url":"a|attr:href","at":"span:last-child|attr:title"}},"reader":{"title":{"sel":".breadcrumb a[href*=\"/manga/\"]","url":"|attr:href","name":"span|text"},"label":".breadcrumb > p > span:last-child span|text","imgs":".container-chapter-reader img|attr-contain:src","chapter":{"sel":".navi-change-chapter option","label":"|text","url":"|attr:data-c"}},"search":{"title":{"sel":".story_item","url":"a|attr:href","name":".story_name a|text","img":"img|attr-contain:src","chapter":{"sel":".story_chapter","url":"a|attr:href","label":"a|text"}}}},{"id":"merlin","title":{"name":"h1#manga-title,h1|text","img":".story-cover img|attr-contain:src","tags":"#genre-tags a[href*=\"/tur/\"]|text","hasMore":"a[href*=\"/page/2/\"]","first":".story-cover-wrap + div a|attr:href","chapter":{"sel":".chapter-item a","url":"|attr:href","label":"h3|text"}},"reader":{"title":{"sel":"#breadcrumb-manga","url":"|attr:href","name":"|text"},"label":"[aria-current=\"page\"]|text","prev":"a:has(> [uk-pagination-previous])|attr:href","next":"a:has(> [uk-pagination-next])|attr:href","imgs":"#chapter-content img|attr-contain:src","chapter":{"trigger":"#chapter-toggle","sel":"#chapter-dropdown li a","url":"|attr:href","label":"|text"}}},{"id":"temple","title":{"name":"main h1|text","img":"main img[alt]|attr-contain:src","tags":"h1 + div div:last-child > p + div:last-child p|text","chapter":{"sel":"a:has(h1):has(img):has(span)","url":"|attr:href","label":"h1|text","at":"div span:last-child|text"}},"reader":{"title":{"sel":"main h1 + a","url":"|attr:href","name":"|text"},"label":"main h1|text","imgDivs":"main [data-index]","prev":"main a:has(svg):first-child|attr:href","next":"main a:has(svg):last-child|attr:href","chapter":{"trigger":"button[aria-label=\"Chapters List\"]","sel":"[role=\"dialog\"] a[href*=\"/comic/\"]","url":"|attr:href","label":"h1|text","at":"h1 + span|text"}}},{"id":"comix","releases":{"title":{"json":true,"sel":"result.items","id":"hash_id","url":"hash_id","name":"title","chapter":{"sel":"","label":"latest_chapter","at":"chapter_updated_at"}}},"title":{"id":"#syncData|json:manga_id","name":"h1|text || #syncData|json:name","img":".poster img|attr:src","tags":"a[href*=\"?genres=\"]|text","hasMore":".page-link[href=\"#2\"]","chapter":{"sel":".chap-list > li","url":"a|attr:href","label":"a b|text","at":"span:last-of-type|text","group":"a:last-child|text"},"trackers":{"mal":"a:has([alt=\"mal\"])|attr:href","anl":"a:has([alt=\"al\"])|attr:href"}},"reader":{"lazy":true,"sel":".read-viewer .page","title":{"id":"#syncData|json:manga_id","url":"a.back-btn|attr:href || #syncData|json:name","name":"a.back-btn|text || #syncData|json:name"},"label":".readbar-ctrl .dropdown-menu .dropdown-item.active|text || #syncData|json:number || title|text","group":".readbar-bottom .dropdown .value|text|remove:^no\\sgroup","imgDivs":".read-viewer .page","lstrip":".read-viewer.longsrtip,.read-viewer.longstrip","lstripBtn":".read-st-toggle;#page-layout-setting button:has([href*=\"longstrip\"])","prev":"#syncData|json:prev_chapter_url","next":"#syncData|json:next_chapter_url","chapter":{"sel":".readbar-ctrl .dropdown-menu .dropdown-item","label":"|text"}},"search":{"lazy":true,"loading":".section-loading","title":{"sel":".comic > .item","url":"a.title|attr:href","name":"a.title|text"}}},{"id":"manhuaplus","releases":{"title":{"sel":"#home-tab-update > div ","url":"a|attr:href","name":"img|attr:alt","chapter":{"sel":"div + a","url":"|attr:href","label":"|text"}}},"title":{"name":"h1|text","img":"main img|attr-contain:src","tags":"main article a[href*=\"/genres/\"]|text","chapter":{"sel":"#myUL > li","url":"a|attr:href","label":"a|text","at":"time|attr:datetime"}},"reader":{"title":{"sel":"h1 a","url":"|attr:href","name":"|text"},"label":"h1|text","content":"#chapterContent:not(:has(img[src*=\"loading.gif\"]))","imgs":"#chapterContent img:not([src*=\"loading.gif\"])|attr:src","prev":"a.prevBtn|attr:href","next":"a.nextBtn|attr:href","chapter":{"sel":"#top-control select option","url":"|attr:value","label":"|text"}},"search":{"title":{"sel":"div:has(> div + a[href*=\"/manga/\"])","url":"a|attr:href","name":"a|attr:title","chapter":{"sel":"div + a","url":"|attr:href","label":"|text"}}}},{"id":"weebdex","title":{"lazy":true,"name":"main h1|text","img":"main figure img|attr-contain:src","tags":"a[href*=\"?tag=\"]|text","firstBtn":"button:has(svg.lucide-book-open)","trackers":{"anl":"a[href*=\"anilist.co\"]|attr:href","mal":"a[href*=\"myanimelist.net\"]|attr:href"}}},{"id":"projectsuki","releases":{"title":{"sel":".content .item","url":"|attr:href","name":".details a|text","chapter":{"sel":"a[href*=\"/read/\"]","url":"|attr:href","label":"|text"}}},"title":{"name":"h2|text","img":".img-thumbnail|attr-contain:src","tags":"a[href*=\"/genre/\"]|text","chapter":{"sel":"tbody tr","url":"a|attr:href","label":"a|text","at":"td:last-child span|attr:title"}},"reader":{"title":{"sel":"main a:has(.fa-home)","url":"|attr:href","name":"|attr:title"},"label":"#chapter-select option:checked|text","content":".strip-reader:has(img:not(:first-child))","imgs":".strip-reader img|attr:src","chapter":{"sel":"#chapter-select option","url":"|attr:value","label":"|text"}},"search":{"title":{"sel":".content > div:has(a)","url":"a|attr:href","name":"h4 a|text"}}},{"id":"mangatown","releases":{"title":{"sel":".manga_pic_list > li, .post-list > li","name":".title a, .title|text","url":"a|attr:href","chapter":{"sel":".new_chapter a, a.read-btn","url":"|attr:href","label":"|text"}}},"title":{"name":"h1.title-top,.title|text","img":".detail_info > img, .manga-detail-top img|attr-contain:src","tags":".detail_info ul li|row:genre(s) || a[href*=\"/directory/\"]|text","type":".detail_info ul li|row:type","chapter":{"sel":".chapter_list > li, .detail-ch-list > li","url":"a|attr:href","label":"a|attr:name || a|text","at":".time|text"}},"reader":{"title":{"url":".title h2 a, .title a:last-child|attr:href","name":".sharebtn a|attr:st_title || .title a:last-child|text|remove:manga$"},"label":"#top_chapter_list option:checked, .title a|text","imgs":"#viewer img:not(.reader-main-img)|attr-contain:src","chapter":{"sel":"#top_chapter_list option","url":"|attr:value","label":"|text"}},"search":{"title":{"sel":".manga_pic_list > li, .post-list > li","url":"a|attr:href","name":"a|attr:title || a|attr:rel"}}},{"id":"mangatime","title":{"name":".anime__details__title h3|text","img":".anime__details__pic|bg-image","tags":".anime__details__widget li:last-child|text","chapter":{"sel":"a:has(> .detail-main-list-main)","url":"|attr:href","label":".title3|text","at":".title2|text"}},"reader":{"label":".breadcrumb__links span:last-child|text","title":{"sel":".breadcrumb__links a:last-of-type","url":"|attr:href","name":"|text"},"content":"#chapter-pages","chapter":{"sel":"#chapter-dropdown option","url":"|attr:value","label":"|text"}}},{"id":"imhen","title":{"name":"h1|text","img":".gallery_first img[alt]|[attr:data-src,attr-contain:src]"},"reader":{"label":".current|text","title":{"name":"#gimg|attr:alt|remove:page\\s\\d+.*$","url":"a.return_btn|attr:href"},"imgs":"#gimg|attr-contain:src"}}]
1
+ [{"404":"img[src*=\"/images/error-message\"]","id":"asura","releases":{"title":{"sel":"div:has(> a[href=\"/series\"]) + div > div > div > div:nth-child(2)","name":"span a|text","url":"span a|attr:href","chapter":{"sel":"div:has(> p):has(a)","url":"a[href*=\"/chapter/\"]|attr:href","label":"a[href*=\"/chapter/\"] p|text","at":"div + p|text"}}},"title":{"name":"div:has(> div > a[href*=\"/sharer/\"]) span|text","img":"img[alt=\"poster\"]|attr-contain:src","type":"div:has(> img[alt=\"poster\"]) h3:first-child|row:type","tags":"div:has(> h3:first-child):has(> div:last-child:nth-child(2)) button|text","chapter":{"sel":"a[href*=\"/chapter/\"]:has(> h3)","url":"|attr:href","label":"h3|text","at":"h3:last-child|text"}},"reader":{"lazy":true,"sel":"img[src*=\"/EndDesign\"]","label":"a:last-of-type > h3|text","imgDivs":"div:has(> img[alt*=\"chapter\"])","content":"div:has(> img[src*=\"/EndDesign\"]):has(> div > img), body","imgs":"div:has(> img[alt*=\"chapter\"]) img|attr-contain:src","prev":"a[href*=\"/chapter/\"]:has(svg.lucide-chevron-left)|attr:href","next":"a[href*=\"/chapter/\"]:has(svg.lucide-chevron-right)|attr:href","title":{"sel":"a[href*=\"series/\"]:not([href$=\"series/\"]):not([href*=\"/chapter/\"])","name":"span|text","url":"|attr:href"},"chapter":{"trigger":"button:has(> h2)","sel":".dropdown-content > a","label":"h2|text","url":"|attr:href"}},"search":{"title":{"sel":"a[href*=\"series/\"]:not([href$=\"series/\"]):has(div span:first-child)","url":"|attr:href","name":"div:has(> span:first-child):has(> span:nth-child(3):last-child) span:first-child|text"}}},{"404":"#content > .wrapper > .notf img, body:empty","id":"mangastream","generic":true,"name":"meta[itemprop=\"name\"]|attr:content","meta":{"releases":"","titleBase":"series","readerBase":"","searchBase":"?s=","idBase":"?p=","titleIdType":"id","defaultLang":"en","trailing":true},"releases":{"title":{"sel":".listupd .utao .uta, .bixbox .bs.styletere","id":"a.series[rel]|attr:rel","name":"h4, .info .tt, .tt a, .series > h3|text","url":"a|attr:href","chapter":{"sel":".luf ul li, .chapter-list > a, .chfiv > li","label":"a .fivchap, a, .epxs|text","url":"a|attr:href || |attr:href","at":"a .fivtime, a + span, .epxdate, .newchtimeluffy|text"}}},"title":{"sel":"#chapterlist > ul","id":".bookmark[data-id]|attr:data-id || #rating-form input[name=\"bs_table_id\"]|attr:value","name":"h1.entry-title|text","img":".thumb img|attr-contain:src","type":".imptdt a[href*=\"type=\"]|text || .imptdt:first-of-type i|text","tags":".postbody .mgen > a|text","chapter":{"sel":"#chapterlist > ul > li","url":"a|attr:href","label":".chapternum|text","at":".chapterdate|text"}},"reader":{"sel":"#readerarea","content":"#readerarea","id":".ctop option:checked|attr:data-id","label":"h1.entry-title|text","title":{"sel":".headpost .allc a, [itemprop=\"itemListElement\"] [content=\"2\"] ~ a","name":"|text","url":"|attr:href"},"prev":"a.ch-prev-btn:not(.disabled)|attr:href","next":"a.ch-next-btn:not(.disabled)|attr:href","chapter":{"sel":".ctop #chapter option:not([disabled]):not([value=\"\"])","id":"|attr:data-id","label":"|text","url":"|attr:value"}},"search":{"title":{"sel":".listupd .bsx","name":".bigor .tt|text","url":"a|attr:href","img":"img|attr-contain:src"}}},{"404":".error-404.not-found","id":"madara","generic":true,"name":"meta[property=\"og:site_name\"]|attr:content || a.logo|attr:title","meta":{"releases":"","titleBase":"manga","readerBase":"manga/{titleSlug}","idBase":"?p=","searchBase":"?post_type=wp-manga&s=","defaultLang":"en","titleIdType":"id","trailing":true},"releases":{"title":{"sel":".page-listing-item .page-item-detail, .lastest-content .page-item-detail","id":"[data-post-id]|attr:data-post-id","name":"h3 a, .item-summary h3|text","url":"a|attr:href","chapter":{"sel":".chapter-item","label":".chapter a|text","url":".chapter a|attr:href","at":".c-new-tag|attr:title || .post-on|text"}}},"title":{"sel":"body.manga-page","id":"#manga-chapters-holder|attr:data-id || .rating-post-id|attr:value || [data-action=\"bookmark\"]|attr:data-post","name":"h1|text","img":".summary_image .img-responsive, .summary_image img, .series-img img|[attr:data-src,attr-contain:src]","tags":"a[rel=\"tag\"][href*=\"genre\"],a[rel=\"tag\"][href*=\"tag\"],.genres-content|text","type":".post-content_item .summary-heading|row:type","chapter":{"sel":"li.wp-manga-chapter, .chapter-ul > li","url":"a|attr:href","label":"a, .chapter-title-date > p|text","at":".c-new-tag|attr:title || .chapter-release-date i|text"}},"reader":{"sel":".entry-content .read-container","content":".reading-content","label":".breadcrumb li.active|text","title":{"sel":".breadcrumb li:nth-last-of-type(2) a","id":"#manga-reading-nav-head|attr:data-id","name":"|text","url":"|attr:href"},"prev":"a.btn.prev_page|attr:href","next":"a.btn.next_page|attr:href","chapter":{"sel":"#manga-reading-nav-head select.single-chapter-select > option:not([disabled])","label":"|text","url":"|attr:data-redirect"}},"search":{"title":{"sel":".c-tabs-item__content","name":"h3 a|text","url":"a|attr:href","chapter":{"sel":".tab-meta","label":".chapter a|text","url":".chapter a|attr:href","at":".c-new-tag|attr:title || .post-on|text"}}}},{"id":"single01","generic":true,"meta":{"releases":null,"titleBase":"","readerBase":"chapter","defaultLang":"en","titleIdType":"name","trailing":true,"searchable":false,"noTags":true,"single":true},"title":{"sel":"body:has(.network .projects > a.project-link:first-child):has(.chapters > a:first-child)","name":"meta[property=\"og:site_name\"]|attr:content","img":"img.cover-image|attr-contain:src","chapter":{"sel":".chapters > a","url":"|attr:href","label":".chapter-title|text","at":".chapter-date|text"}},"reader":{"sel":"body:has(.network .projects > a.project-link:first-child):has(.images ~ .chapter-nav)","label":".chapter-selector option:checked|text","title":{"name":"meta[property=\"og:site_name\"]|attr:content","url":"a[title=\"Home\"]|attr:href"},"imgs":".images > img|attr-contain:src","chapter":{"sel":".chapter-selector option","url":"|attr:value","label":"|text"}}},{"id":"single02","generic":true,"meta":{"releases":null,"titleBase":"","readerBase":"manga","titleIdType":"name","trailing":true,"searchable":false,"noTags":true,"single":true},"title":{"sel":"body:has(#masthead):has(#primary #main #Chapters_List)","name":"#primary #main article header.entry-header > h1|text","img":"figure img|attr-contain:src","chapter":{"sel":"#Chapters_List a","url":"|attr:href","label":"|text"}},"reader":{"sel":"body:has(#masthead):has(.trail-items)","label":"h1|text","title":{"url":"#site-title a|attr:href","name":"h1|text|remove:,.+$"},"imgs":".entry-content img|attr-contain:src","prev":".nav-previous a|attr:href","next":".nav-next a|attr:href"}},{"id":"single03","generic":true,"meta":{"releases":null,"titleBase":"","readerBase":"manga","titleIdType":"name","trailing":true,"searchable":false,"single":true},"title":{"sel":"body:has(.nnc-nav):has(#manga-info-right):has(#chapters-list-holder)","name":".info-desc h1|text|remove:manga\\sonline","img":".manga-thumb|attr-contain:src","tags":".genre-list > span|text","chapter":{"sel":"#chapters-list-holder > a","url":"|attr:href","label":".chapter-name|text","at":".chapter-date|text"}},"reader":{"sel":".mangosm-manga-nav","label":".mangosm-manga-nav-select option:checked|text","title":{"url":"#comic-breadcrumbs .item-home a|attr:href","name":"h1.entry-title|text|remove:,.+$"},"imgs":".entry-content img|attr-contain:src","chapter":{"sel":".mangosm-manga-nav-select option","label":"|text","url":"|attr:value"}}},{"404":".elapi > a[href*=\"/search?q=\"]","id":"mangahub","releases":{"title":{"sel":".list-group-item .media","name":"h4.media-heading a|text","url":".media-heading a|attr:href","at":".media-heading .small|text","chapter":{"sel":".media-body > a","label":"|text","url":"|attr:href"}}},"title":{"sel":"#chapters-tab .tab-content","name":"#mangadetail h1|text","img":"#mangadetail img.manga-thumb|attr-contain:src","tags":"#mangadetail a.genre-label|text","chapter":{"sel":"#chapters-tab li.list-group-item","label":"a > span:first-child > span:first-child|text","url":"a:not([title])|attr:href || a:not([rel])|attr:href || a|attr:href","at":"small|text"}},"reader":{"content":"#mangareader .container-fluid, #mangareader","label":"h3|text","prev":".chapter-pager .previous a[href*=\"/chapter/\"]|attr:href","next":".chapter-pager .next a[href*=\"/chapter/\"]|attr:href","title":{"sel":"h3 a","name":"|text","url":"|attr:href"},"chapter":{"sel":".pager-dropdown .dropdown-menu > li > a","label":"|text","url":"|attr:href"}},"search":{"title":{"sel":".media-manga","name":"h4 a|text","url":"h4 a|attr:href","img":"img|attr-contain:src","chapter":{"sel":".media-body","label":"a[href*=\"/chapter/\"]|text","url":"a[href*=\"/chapter/\"]|attr:href"}}}},{"id":"mangadex","search":{"lazy":true,"loading":"[indeterminate] svg","title":{"sel":"a.manga-card-dense","url":"|attr:href","name":"a.title span|text","img":".cover img|attr-contain:src"}}},{"id":"bato","releases":{"title":{"sel":"#series-list > .item","name":"a.item-title|text","url":"a.item-title|attr:href","lang":"em[data-lang]|attr:data-lang","chapter":{"sel":".item-volch","label":"a|text","url":"a|attr:href","at":"i|text"}}},"title":{"name":"h3.item-title a|text","img":".attr-cover > img|attr-contain:src","langs":".title-set em[data-lang]|attr:data-lang","tags":".attr-main .attr-item .text-muted|row:genres","chapter":{"sel":".episode-list > .main > .item","label":"a.chapt > b|text","url":"a.chapt|attr:href","at":".extra > i|text"}},"reader":{"content":"#viewer","imgs":"#viewer .page-img|attr:src","label":"title|text","title":{"sel":"h3.nav-title a","name":"|text","url":"|attr:href"},"lang":"h3.nav-title em[data-lang]|attr:data-lang","prev":".nav-prev > a[href^=\"/chapter/\"]|attr:href","next":".nav-next > a[href^=\"/chapter/\"]|attr:href","chapter":{"sel":".nav-epis > select option:not([disabled]):not([value=\"\"])","label":"|text","url":"|attr:value"}},"search":{"title":{"sel":"#series-list > .item","url":"a|attr:href","name":".item-title|text","img":"a img|attr-contain:src","lang":"em[data-lang]|attr:data-lang","chapter":{"sel":".item-volch","url":"a|attr:href","label":"a|text","at":"i|text"}}}},{"404":"#error > .attention","id":"mangago","releases":{"title":{"sel":"ul#search_list > li > div","name":"a.thm-effect|attr:title","url":"a.thm-effect|attr:href","chapter":{"sel":"a.chico","label":"|text","url":"|attr:href"}}},"title":{"name":".w-title h1|text","img":".article .cover img,#information img|attr-contain:src","tags":".manga_right a[href*=\"/genre/\"],.manga_info ul.uk-list a[href*=\"/genre/\"]|text","chapter":{"sel":"#chapter_table tbody tr, table.uk-table tbody tr","label":"h4 a b, a.chico b|text || a.chico|text","url":"h4 a, a.chico|attr:href","at":"td:last-child|text"}},"reader":{"content":"body","label":"#navi h3 span:last-child,#series + a.chapter|text","title":{"sel":"#navi a#series,#reader-nav .nav li:first-child a","name":"|text","url":"|attr:href"},"chapter":{"sel":".pagebar.top ul.dropdown-menu.chapter > li > a,#series ~ ul.chapter li a","label":"|text","url":"|attr:href"}},"search":{"title":{"sel":"#search_list > li .box","name":"a.thm-effect|attr:title","url":"a.thm-effect|attr:href","chapter":{"sel":"a.chico","label":"|text","url":"|attr:href"}}}},{"404":".nf-large + .nf-desc + a[href=\"/home\"]","id":"kakalot","releases":{"title":{"sel":"#latest-chap .inner > .item","id":".item-info h3|attr:data-id","name":".item-info h3 a|text","url":"a|attr:href","chapter":{"sel":".chapter-list > .cl-item","label":"a.chapter-name|text","url":"a|attr:href","at":".time|text"}}},"title":{"lazy":true,"sel":"#chapt-list .cl-header","id":"#main|attr:data-id","name":".detail-box h3.manga-name|text","img":".detail-box .manga-poster-img|attr-contain:src","tags":".detail-box .line-content a[href*=\"/genre/\"]|text","langs":"#chap-lang .lang-item|attr:data-code","chapter":{"sel":"#chapt-list .reading-list > .item","label":"a.chapter-name|text","url":"a.chapter-name|attr:href","at":".item-time|text"}},"reader":{"content":"#list-image","imgDivs":".card-wrap[data-url]","label":".breadcrumb-item.active|text","title":{"sel":".breadcrumb-item:nth-child(2) a","id":"#reading|attr:data-manga-id","name":"|text","url":"|attr:href"},"chapter":{"sel":".kbreadcrumb + .reading-option option.reading-item","label":"|text","url":"|attr:value"}},"search":{"title":{"sel":".manga-list > .inner > .item","name":".manga-name a|attr:title","url":".manga-name a|attr:href","img":".manga-poster img|attr-contain:src","chapter":{"sel":".latest-chapter .chapter-name","label":"|text","url":"|attr:href"}}}},{"id":"tapas","title":{"id":".button--subscribe|attr:data-tiara-event-meta-series-id","name":".info .title|text","img":".thumb img|attr:src","first":".episode-list__item a|attr:href","chapter":{"sel":".episode-list .episode-list__item > a","url":"|attr:data-id","label":"|attr:data-scene-number"}},"reader":{"content":".viewer__body","id":"div[id^=\"episode-\"][data-ep-id]|attr:data-ep-id","label":"div[id^=\"episode-\"][data-ep-scene]|attr:data-ep-scene","prev":"div[data-prev-id]:not([data-prev-id=\"-1\"])|attr:data-prev-id","next":"div[data-next-id]:not([data-next-id=\"-1\"])|attr:data-next-id","title":{"sel":"body","id":".subscribe-btn|attr:data-id","url":".subscribe-btn|attr:data-id","name":".series-info .title|text","img":".series-info .thumb img|attr:src"},"chapter":{"sel":".episode-list .list-body > li[data-id]","url":"|attr:data-id","label":".info__label|text"}},"search":{"title":{"sel":".search-item-wrap","url":"a|attr:href","name":"img|attr:alt|remove:#\\.*\\?#","img":"img|attr-contain:src"}}},{"id":"mangafire","releases":{"title":{"sel":".unit > .inner","id":"a[data-tip]|attr:data-tip|remove:\\?.+","name":".info a|text","url":"a|attr:href","chapter":{"sel":"ul.content li a","label":"span:first-child|text","url":"|attr:href","at":"span:last-child"}}},"title":{"id":".bookmark[data-id]|attr:data-id","name":".info h1[itemprop=\"name\"]|text","img":".poster img|attr-contain:src","tags":"#info-rating a[href*=\"/genre/\"]|text","langs":".tab-content[data-name=\"chapter\"] a.dropdown-item[data-code]|attr:data-code","chapter":{"sel":".tab-content[data-name=\"chapter\"] li.item[data-number]","url":"a|attr:href","label":"|attr:data-number","at":"a span:last-child|text"}},"reader":{"content":"#page-wrapper","imgDivs":".page","lstrip":".setting-tab.page-layout [data-value=\"longstrip\"].active","lstripBtn":".setting-tab.page-layout [data-value=\"longstrip\"]","label":"#number-panel ul li a[href*=\"/read/\"][data-number].active|attr:data-number","title":{"sel":"#ctrl-menu .head a","id":"body|attr:data-id","url":"|attr:href","name":"|text"},"chapter":{"sel":"#number-panel ul li a[href*=\"/read/\"][data-number]","label":"|attr:data-number","url":"|attr:href"}},"search":{"title":{"sel":".unit","id":"a[data-tip]|attr:data-tip|remove:\\?.+","url":"a|attr:href","name":".info a|text","img":"a img|attr-contain:src","chapter":{"sel":".unit .content[data-name=\"chap\"] a","url":"|attr:href","label":"span|text","at":"span:last-child"}}}},{"id":"mangapark","releases":{"title":{"sel":"div:has(> h3 a[href*=\"/title/\"])","name":"a span|text","url":"a|attr:href","chapter":{"sel":"h3 ~ div:has(a)","url":"a|attr:href","label":"a span|text","at":"time|attr:data-time"}}},"title":{"name":"h3 a|text","img":"main img|attr-contain:src","tags":"b ~ span span:first-child|text","chapter":{"sel":"[data-name=\"chapter-list\"] div:has(> div > a[href*=\"/title/\"])","url":"a|attr:href","label":"a|text","at":"time span|text","group":"a[href*=\"/u/\"]|text"}},"reader":{"label":"h6 a span|text","title":{"sel":"h3 a","url":"|attr:href","name":"|text"},"content":"main","imgDivs":"[data-name=\"image-item\"]","lstrip":"option[q\\:key=\"a\"]:checked","lstripBtn":"option[q\\:key=\"a\"]","prev":"a:has(> i[name=\"angle-left\"])|attr:href","next":"a:has(> i[name=\"angle-right\"])|attr:href","group":"a[href*=\"/u/\"] span|text","chapter":{"sel":".comic-detail + div select option[value*=\"/title/\"]","url":"|value","label":"|text"}},"search":{"title":{"sel":"div:has(> div > h3 a)","url":"a|attr:href","name":"h3 a|text","img":"a img|attr-contain:src","chapter":{"sel":"div:has(> span > span > time)","url":"a|attr:href","label":"a span|text","at":"time|attr:data-time"}}}},{"id":"webtoon","title":{"name":"h1.subj,.detail_info > p.subj,.info > h3.subj,.subject|text","img":"meta[property=\"og:image\"]|attr:content","tags":".info > h2.genre,.detail_info > p.genre,.info > p.genre,.tag_box .tag|text","first":"a#_btnEpisode,a._readEpisodeBtn|attr:href","chapter":{"sel":"li._episodeItem","label":"|attr:data-episode-no","url":"a|attr:href","at":".date|text"}}},{"id":"mangareader","releases":{"title":{"sel":"#latest-chap .mls-wrap > .item","id":"a|attr:href|remove:.+-","url":"a|attr:href","name":".manga-name a|text","chapter":{"sel":".fd-list .chapter a","label":"|text","url":"|attr:href"}}},"title":{"id":"[data-manga-id]|attr:data-manga-id","name":"#ani_detail h2.manga-name|text","img":"#ani_detail img.manga-poster-img|attr:src","type":".anisc-info .item-head|row:type","tags":".anisc-detail .genres a|text","langs":"a.c-select-lang|attr:data-code","chapter":{"sel":".chapters-list-ul > ul > li","label":"|attr:data-number","url":"a|attr:href"}},"reader":{"content":"#main-wrapper","imgDivs":".iv-card[data-url]","lstrip":"a.active[data-value=\"vertical\"]","lstripBtn":"#main-wrapper:not(.page-read-hoz)","label":".reading-list .chapter-item.active|attr:data-number","title":{"id":"[data-manga-id]|attr:data-manga-id","sel":"#header a.hr-manga","name":"h2,.manga-name|text","url":"|attr:href"},"chapter":{"sel":".reading-list.active > .chapter-item","url":"a|attr:href","label":"|attr:data-number"}}},{"404":"#notfound .notfound-404","id":"mgeko","releases":{"title":{"sel":"#latest-updates .novel-list.chapters > li > a","url":"|attr:href","name":"|attr:title","chapter":{"sel":"div:has(.chapter-title)","label":".chapter-title|text","at":".novel-stats span:first-child|text"}}},"title":{"name":".cover img|attr:alt","img":".cover img|[attr:data-src,attr-contain:src]","tags":".categories .property-item|text","first":"a#readchapterbtn|attr:href","chapter":{"sel":".chapter-list > li a","url":"|attr:href","label":".chapter-title,.chapter-number|text","at":"time|attr:datetime || .chapter-stats|text"}},"reader":{"imgs":"center:has(> #chapter-reader) img|attr-contain:src","label":".chapter-header .titles h2|text","next":"center .nextchap:not(.isDisabled)|attr:href","prev":"center .prevchap:not(.isDisabled)|attr:href","title":{"sel":".chapter-header .titles h1 a","name":"|text","url":"|attr:href"},"chapter":{"sel":"center center #cars option","label":"|text","url":"|attr:value"}},"chapters":{"chapter":{"sel":".chapter-list > li a","url":"|attr:href","label":".chapter-title,.chapter-number|text","at":"time|attr:datetime || .chapter-stats|text"}},"search":{"title":{"sel":".novel-item","url":"a|attr:href","name":"h4|text","img":"img|[attr:data-src,attr-contain:src]","chapter":{"sel":".novel-stats","label":"strong|text"}}}},{"404":"#main > .error-404","id":"mangack","releases":{"title":{"sel":".latestmanga .Latest_chapter_update","url":"a|attr:href","name":".latest-title a|text","chapter":{"sel":"tr:last-child center","label":"a|text","url":"a|attr:href","at":".chapter-date|text"}}},"title":{"id":"input[name=\"follow_manga\"]|attr:value","name":"h1.entry-title|text","img":".manga-cover-wrap img|attr:src","tags":".infobox a[href*=\"/genres/\"]|text","type":".infobox a[href*=\"/comic-type/\"]|text","chapter":{"sel":".chapterslist > li","url":"a|attr:href","label":"a|text","at":".entry-date|text"}},"reader":{"content":".post-content","label":".entry-title|text","title":{"sel":".latest-title a","name":"|text","url":"|attr:href"},"prev":".prev-post a|attr:href","next":".next-post a|attr:href"},"search":{"title":{"sel":".Latest_chapter_update","url":"a|attr:href","img":"img|attr-contain:src","name":"h4 a|text"}}},{"id":"katana","releases":{"title":{"sel":"#book_list > .item","id":"|attr:data-id","url":"a|attr:href","name":"a|text","chapter":{"sel":".chapter a","url":"|attr:href","label":"|text"}}},"title":{"id":".bookmark_bt[data-id]|attr:data-id","name":".info h1|text","img":".cover img|attr:src","tags":".info .genres a|text","chapter":{"sel":".chapters tbody > tr","url":"a|attr:href","label":"a|text","at":".update_time|text"}},"reader":{"content":"#imgs","imgs":".wrap_img > img|attr:data-src","label":"select[name=\"chapter_select\"] option:checked|text","prev":".nav_button.prev:not([disabled])|attr:href","next":".nav_button.next:not([disabled])|attr:href","title":{"sel":"#breadcrumb_wrap li:nth-child(2) a","id":".bookmark_chapter_bt[data-id]|attr:data-id","name":"span|text","url":"|attr:href"},"chapter":{"sel":".nav_chapters_wrap:first-child select[name=\"chapter_select\"] option","url":"|attr:value","label":"|text"}},"search":{"title":{"sel":"#book_list .item","url":"a|attr:href","img":"img|attr-contain:src","name":"h3 a|text","chapter":{"sel":"div:has(> div > .chapter)","url":"a|attr:href","label":"a|text","at":".update_time|text"}}}},{"id":"truyenqq","releases":{"title":{"sel":"#list_new > li","name":".book_name h3 a|text","url":".book_name h3 a|attr:href","id":".book_name h3 a|attr:href|remove:.+-","chapter":{"sel":".last_chapter a","label":"|text","url":"|attr:href"}}},"title":{"id":".btn-subscribe|attr:data-id","name":".book_info h1|text","img":".book_avatar img|attr-contain:src","tags":".book_info li a[href*=\"/the-loai/\"]|text","chapter":{"sel":".works-chapter-list .works-chapter-item","label":".name-chap a|text","url":".name-chap a|attr:href","at":".time-chap|text"}},"reader":{"content":".chapter_content","label":"ol.breadcrumb > li:last-of-type a span|text","prev":".chapter-control a.prev[href]:first-of-type:not(.d-none)|attr:href","next":".chapter-control a.prev[href]:last-of-type:not(.d-none), .chapter-control a.next[href]:not(.d-none)|attr:href","title":{"sel":"ol.breadcrumb > li:nth-of-type(2) a","id":".btn-subscribe|attr:data-id","name":"span|text","url":"|attr:href"},"chapter":{"trigger":".chapter_list","sel":"#popup_content .chapter-list > a, .chapter_list > option","label":"|text","url":"|attr:href || |attr:value"}},"search":{"title":{"sel":".list_grid > li","name":"h3 a|text","url":"h3 a|attr:href","img":"img|attr-contain:src","chapter":{"sel":".last_chapter a","url":"|attr:href","label":"|text"}}}},{"id":"uzay","releases":{"title":{"sel":"section[aria-label=\"new series\"] ~ section .header + div > div","url":"a|attr:href","name":"h2|text","chapter":{"sel":"a.mobile-list-item","url":"|attr:href","label":"h3 span:first-child b|text","at":"h3 span:nth-child(2)|text"}}},"title":{"name":".content-details > h1|text","img":".content-info > img|attr:src","tags":".content-details a[href*=\"?categories=\"]|text","chapter":{"sel":".list-episode > a","url":"|attr:href","label":"h3 b|text","at":"span:last-child|text"}},"reader":{"content":".manga-episode-card","label":".header h1 + h2|text","prev":"[aria-label=\"episode-navbar\"] div:not(last-child) > a[href]|attr:href","next":"[aria-label=\"episode-navbar\"] div:last-child > a[href]|attr:href","title":{"sel":".header h1:has(> a) a","url":"|attr:href","name":"|text"}}},{"id":"mangaworld","releases":{"title":{"sel":".comics-grid > .entry","name":".manga-title|text","url":"a|attr:href","chapter":{"sel":"div:has(> .xanh)","label":"a|text","url":"a|attr:href","at":"i|text"}}},"title":{"name":"h1.name|text","img":".thumb img|attr:src","tags":".meta-data a[href*=\"?genre=\"]|text","type":".meta-data a[href*=\"?type=\"]|text","chapter":{"sel":".chapters-wrapper .chapter > a","url":"|attr:href","label":"span|text","at":"i|text"}},"reader":{"content":"#page","label":"h1|text","lstrip":"select.mode option[value=\"LIST\"]:checked","lstripBtn":"select.mode option[value=\"LIST\"]","title":{"sel":"a[href*=\"/manga/\"]","name":"|text|remove:Ritorna\\sa","url":"|attr:href"},"chapter":{"sel":"#controls-1 select.chapter option","label":"|text","url":"|value"}},"search":{"title":{"sel":".comics-grid .entry","url":"a|attr:href","img":"img|attr-contain:src","name":".manga-title|text"}}},{"id":"leercapitulo","releases":{"title":{"sel":".media.mainpage-manga","url":"a|attr:href","name":"h4.manga-newest|text","chapter":{"sel":".hotup-list > span a","url":"|attr:href","label":"|text"}}},"title":{"name":"h1.title-manga|text","img":".cover-detail img|attr:src","tags":".description-update a[href*=\"/genre/\"]|text","chapter":{"sel":".chapter-list a.xanh","url":"|attr:href","label":"|text"}},"reader":{"content":".comic_wraCon","label":"h2.chapter-title:first-child|text","prev":"a.pre,a.LeftArrow|attr:href","next":"a.next,a.RightArrow|attr:href","lstrip":"select.loadImgType option[value=\"1\"]:checked","lstripBtn":"select.loadImgType option[value=\"1\"]","title":{"sel":"h2.chapter-title:nth-of-type(2) a","url":"|attr:href","name":"|text"},"chapter":{"sel":"h1 + .row select[rel=\"chap-select\"] option","url":"|attr:value","label":"|text"}}},{"id":"mangaplus","releases":{"title":{"sel":"[class*=\"UpdatedTitle-module_titleWrapper_\"]","url":"a|attr:href","name":"[class*=\"UpdatedTitle-module_titleName_\"]|text","chapter":{"sel":"[class*=\"UpdatedTitle-module_chapterTitle_\"]","label":"|text"}}},"title":{"lazy":true,"sel":"h1[class*=\"TitleDetailHeader-module_title_\"]","name":"h1[class*=\"TitleDetailHeader-module_title_\"]|text","img":"img[class*=\"TitleDetailHeader-module_coverImage_\"]|attr:src","chapter":{"sel":"[class*=\"ChapterListItem-module_chapterListItem_\"]","url":"a[class*=\"ChapterListItem-module_commentContainer_\"]|attr:href","label":"[class*=\"ChapterListItem-module_name_\"]|text","at":"[class*=\"ChapterListItem-module_date_\"]|text"}},"reader":{"content":"[class*=\"Viewer-module_viewerContainer_\"]","label":"[class*=\"Navigation-module_chapterTitle_\"]|text","lstrip":"input#mode-vertical:checked","lstripBtn":"input#mode-vertical","title":{"sel":"a:has(> [class*=\"Navigation-module_title_\"])","url":"|attr:href","name":"h1|text"},"chapter":{"sel":"ul > li[class*=\"SideMenu-module_chapter_\"]","label":"|text"}},"search":{"lazy":true,"empty":"p[class*=\"nothingMatched\"]","title":{"sel":"a[class^=\"AllTitle\"]","url":"|attr:href","name":"p|text","img":"img|[attr:data-src,attr-contain:src]"}}},{"id":"flame","releases":{"title":{"sel":"[class*=\"SeriesCard_chapterCardContainer__\"]","url":"a|attr:href","name":".mantine-Stack-root a|text","chapter":{"sel":"a:has(> [class*=\"SeriesCard_chapterPillWrapper__\"])","url":"|attr:href","label":"p:first-child|text","at":"p:not(:first-child)|text"}}},"title":{"name":"main h1|text","img":"img[alt=\"Cover\"]|attr:src","tags":"a[href*=\"/genre/\"] span|text","type":"p[class*=\"SeriesPage_infoField__\"]|row:type","first":".mantine-Paper-root p + a[href*=\"/series/\"]|attr:href","chapter":{"sel":"a[class*=\"ChapterCard_chapterWrapper__\"]","url":"|attr:href","label":"p:first-child|text","at":"p:not(:first-child)|text"}},"reader":{"content":"body","label":"p[class*=\"TopChapterNavbar_chapter_title__\"]|text","prevBtn":"button:has(.bi-arrow-left)","nextBtn":"button:has(.bi-arrow-right)","title":{"sel":"[class*=\"TopChapterNavbar_inner__\"]","name":"[class*=\"TopChapterNavbar_series_title__\"]|text","url":"a|attr:href"},"chapter":{"trigger":"button:has(.bi-card-list)","dismiss":".mantine-Modal-overlay, .mantine-CloseButton-root","sel":"[class*=\"ChapterCard_chapterWrapper__\"]","url":"|attr:href","label":"p:first-child|text","at":"p:not(:first-child)|text"}}},{"id":"vortex","title":{"name":"h1[itemprop=\"name\"]|text","img":"[itemprop=\"image\"] img|attr:src","type":"h1:has(> svg)|row:type","first":"a[href*=\"/series/\"][href*=\"/chapter\"]|attr:href","chapter":{"lazy":false,"sel":"a[href*=\"/series/\"]:has(img)","url":"|attr:href","label":"div span span|text","at":"span + div:last-child div|text"}},"reader":{"content":"section:has(.image-container),main,body","label":"a[href*=\"/series\"]:has(img) div:has(~ time)|text","prev":"a:has(button[aria-label=\"Prev\"])|attr:href","next":"a:has(button[aria-label=\"Next\"])|attr:href","prevBtn":"button:has(.lucide-chevron-left)","nextBtn":"button:has(.lucide-chevron-right)","title":{"sel":"a[href*=\"/series\"]:has(img)","name":"div:has(~ time)|text|remove:\\sChapter.+","url":"|attr:href"},"chapter":{"trigger":"button:has(.lucide-chevron-down)","sel":"[data-radix-popper-content-wrapper] [role=\"option\"] span[id]","label":"|text"}},"chapters":{"chapter":{"trigger":"button[data-key=\"chapters\"]","sel":"[role=\"tabpanel\"] a[href*=\"/series/\"]","url":"|attr:href","label":"h3|text","at":"span:last-child:first-child|text"}},"search":{"lazy":true,"loading":"button > .animate-spin","title":{"sel":"div:has(> div > a[href*=\"/series/\"])","url":"a|attr:href","name":"a h1|text","img":"a img|attr-contain:src","chapter":{"sel":"a:has(time)","url":"|attr:href","label":"p|text","at":"time|attr:datetime"}}}},{"id":"weebcentral","releases":{"title":{"sel":"[x-data*=\"sub_feed_shown\"] section article","url":"a:first-child|attr:href","name":"div:not(:has(span)) div|text","chapter":{"sel":"a:not(:first-child)","url":"|attr:href","label":"div:not(:first-child) span|text","at":"time|attr:datetime"}}},"title":{"name":"h1|text","img":"picture img|attr:src","tags":"li a[href*=\"?included_tag=\"]|text","type":"li a[href*=\"?included_type=\"]|text","hasMore":"#chapter-list a","first":"[x-data]:has(> a[href*=\"chapters/\"]):last-child a|attr:href"},"reader":{"content":"[hx-include*=\"reading_style\"]","imgs":"[hx-include*=\"reading_style\"] img|attr-contain:src","label":"[hx-target=\"#chapter-select-body\"] span|text","lstripBtn":"input[value=\"long_strip\"]","lstrip":"input[value=\"long_strip\"]:checked","prevBtn":"button[\\@click=\"prevPage()\"]","nextBtn":"button[\\@click=\"nextPage()\"]","title":{"sel":"#nav-top a[href*=\"/series/\"]","url":"|attr:href","name":"span|text"},"chapter":{"trigger":"button[hx-target=\"#chapter-select-body\"]"}},"chapters":{"chapter":{"sel":"a[href*=\"/chapters/\"]","url":"|attr:href","label":"span span|text","at":"time|attr:datetime"}},"search":{"lazy":true,"empty":"main [role=\"alert\"]","title":{"sel":"article:has(a img)","url":"a|attr:href","name":"a:not(:has(img))|text","img":"a img|attr-contain:src"}}},{"id":"lua","releases":{"title":{"sel":"div:has(> div > a[href*=\"/series/\"]):has(a > h5)","url":"a|attr:href","name":"h5|text","chapter":{"sel":"a + div a","url":"|attr:href","label":"span:first-child|text","at":"span:not(:first-child)|text"}}},"title":{"name":"h1|text","img":"main div > img[src]|attr-contain:src","hasMore":"[aria-current=\"page\"]","chapter":{"sel":"a[href*=\"/series/\"]:has(> li)","url":"|attr:href","label":"div > span:first-child|text","at":"div > span:not(:first-child)|text"}},"reader":{"label":"h1|text","prev":"a[href*=\"/series/\"]:has(> button [data-icon=\"chevron-left\"])|attr:href","next":"a[href*=\"/series/\"]:has(> button [data-icon=\"chevron-right\"])|attr:href","content":"nav:first-child ~ .container:has(img)","title":{"sel":"nav:has(h1)","name":"h2|text","url":"a[href*=\"/series/\"]:has(svg[data-icon=\"house\"])|attr:href","img":"img|attr:src"},"chapter":{"trigger":"button:has(> [data-icon=\"list\"])","sel":"#headlessui-portal-root ul a[href*=\"/series/\"]:has(> li)","url":"|attr:href","label":"span:first-child|text","at":"span:not(first-child)|text"}},"chapters":{"chapter":{"json":true,"sel":"","label":"chapter_name","url":"chapter_slug","at":"created_at"}}},{"id":"qi","releases":{"title":{"sel":"div:has(> a[href*=\"/series/\"] p)","url":"a|attr:href","name":"p|text","chapter":{"sel":"div a","url":"|attr:href","label":"span:first-child|text","at":"span:last-child|text"}}},"title":{"name":"main section h1|text","tags":"a[href*=\"?tag=\"]|text","first":"a[href*=\"/series/\"]:has(> button)|attr:href"},"reader":{"label":"nav h1|text","prev":"a[href*=\"/series/\"]:has(.lucide-chevron-left)|attr:href","next":"a[href*=\"/series/\"]:has(.lucide-chevron-right)|attr:href","content":"nav ~ .container:has(img)","title":{"sel":"nav:has(h1)","name":"h2|text","url":"a[href*=\"/series/\"]:has(img[alt=\"home\"])|attr:href"},"chapter":{"trigger":"button:has(> .lucide-list)","sel":"[data-headlessui-state=\"open\"] ul > li a[href*=\"/series/\"]","url":"|attr:href","label":"span|text"}},"chapters":{"chapter":{"json":true,"sel":"","label":"number","url":"slug","at":"createdAt"}},"search":{"lazy":true,"loading":".lucide-loader-circle","title":{"sel":"a[href*=\"/series/\"]","url":"|attr:href","name":"h2|text"}}},{"id":"mangabuddy","releases":{"title":{"sel":".main-container .book-item .meta","name":"h3 a|text","url":"h3 a|attr:href","chapter":{"sel":".chap-item","label":"h4 a|text","url":"h4 a|attr:href","at":".updated-date span|text"}}},"title":{"sel":"#chapter-list","name":"h1|text","img":".img-cover img|attr-contain:src","tags":".detail a[href*=\"/genres/\"]|text","chapter":{"sel":"#chapter-list > li > a","url":"|attr:href","label":".chapter-title|text","at":".chapter-update|text"}},"reader":{"label":"#breadcrumbs-container .breadcrumbs-item:last-child|text","title":{"sel":"#breadcrumbs-container .breadcrumbs-item:nth-child(2) a","url":"|attr:href","name":"span|text"},"content":"#chapter-images","imgDivs":".chapter-image","prev":"a#btn-prev|attr:href","next":"a#btn-next|attr:href","chapter":{"trigger":"#load-chapters","sel":".chapter-select option","url":"|attr:value","label":"|text"}}},{"id":"rolia","releases":{"title":{"sel":".article-feed > div > div:has(> h6)","name":"h6 a|text","url":"h6 a|attr:href","chapter":{"sel":"table tr","label":"a|text","url":"a|attr:href","at":"time|attr:data-date"}}},"title":{"name":"h1|text","img":"img.poster|attr-contain:src","tags":"a[href*=\"/genres/\"]|text","type":".card-movies-series table tr:last-child td|text","first":".chapter-list + a|attr:href","hasMore":".chapter-list ~ a[href*=\"/chapterlist\"]"},"chapters":{"chapter":{"sel":"#page-content-wrapper td:first-child a","url":"|attr:url","label":"|text"}},"reader":{"content":".manga-child-content","label":".childtitle|text","next":".chapter-nav-right|attr:href","prev":".chapter-nav-left|attr:href","title":{"sel":".breadcrumb strong a","name":"|text","url":"|attr:href"},"chapter":{"sel":"#postDropdown option:not(:first-child)","label":"|text","url":"|attr:value"}},"search":{"title":{"sel":".card-body","url":"a|attr:href","img":"img|attr-contain:src","name":"h4 a|text"}}},{"id":"lelscanfr","releases":{"title":{"sel":"div:has(> #card-real)","url":"a|attr:href","name":"h2|text","chapter":{"sel":"#card-real + div div:has(a)","label":"b|text","url":"a|attr:href","at":"a + span|text"}}},"title":{"name":"main h2|text","img":"main img[alt]|attr-contain:src","tags":"main a[href*=\"genre=\"]|text","type":"a[href*=\"type=\"]|text","hasMore":"ul.pagination","chapter":{"sel":"#chapters-list > a","url":"|attr:href","label":"div:first-child > span|text","at":"div:nth-child(2) > span"}},"reader":{"label":"h2|text","title":{"sel":"h3 a","url":"|attr:href","name":"|text"},"content":"#chapter-container, main","lstrip":"#reading-types option[value=\"long\"]:checked","lstripBtn":"#reading-types option[value=\"long\"]","prev":"div:has(#chapter-select) + div a:first-child[href*=\"/manga/\"]|attr:href","next":"div:has(#chapter-select) + div a:last-child[href*=\"/manga/\"]|attr:href","chapter":{"sel":"div:has(~ #chapter-container) #chapter-select option","label":"|text","url":"|text"}}},{"id":"phoenix","releases":{"title":{"sel":".main__latest-releases-card","url":"a|attr:href","name":"h3 text","chapter":{"sel":"a.main__latest-releases-card-chapter","url":"|attr:href","label":".main__latest-releases-card-chapter-number|text","at":".main__latest-releases-card-chapter-date|text"}}},"title":{"name":"h1|text","img":"img.project__cover|attr-contain:src","chapter":{"sel":"a.project__chapter","url":"|attr:href","label":".project__chapter-title|text","at":".project__chapter-date|text"}},"reader":{"label":".chapter__nav-chapter-title-number|text","title":{"sel":"a.chapter__nav-chapter","url":"|attr:href","name":".chapter__nav-title|text"},"content":".chapter-images__container","prev":"a.chapter__previous|attr:href","next":"a.chapter__next|attr:href","chapter":{"trigger":".chapter-images__controls-chapter","sel":".chapter-list .chapter_item a","url":"|attr:href","label":"|text"}}},{"404":"#content > .wrapper > .notf img, body:empty","id":"nika","releases":{"title":{"sel":".listupd .utao .uta .luf","url":"a|attr:href","name":"h4|text","chapter":{"sel":"ul li a:has(.eggchap)","url":"|attr:href","label":".eggchap|text","at":".eggtime|text"}}},"title":{"id":".bookmark[data-id]|attr:data-id","name":"h1.entry-title|text","img":".thumb img|attr-contain:src","tags":".mgen a[rel=\"tag\"]|text","type":".imptdt a[href*=\"type=\"]|text","chapter":{"sel":".chapter-item a","url":"|attr:href","label":"div div:first-child|text","at":"div div:not(:first-child)|text"}},"reader":{"content":"#readerarea","id":".ctop option:checked|attr:data-id","label":"h1.entry-title|text","title":{"sel":".headpost .allc a","name":"|text","url":"|attr:href"},"prev":"a.ch-prev-btn:not(.disabled)|attr:href","next":"a.ch-next-btn:not(.disabled)|attr:href","chapter":{"sel":".ctop #chapter option:not([disabled]):not([value=\"\"])","id":"|attr:data-id","label":"|text","url":"|attr:value"}},"search":{"title":{"sel":".listupd .bs .bsx a","url":"|attr:href","name":".bigor .tt|text","img":"img|attr-contain:src"}}},{"id":"manhwaz","title":{"name":".post-title h1|text","img":".summary_image img[alt]|attr-contain:src","tags":".genres-content a[rel=\"tag\"]|text","chapter":{"sel":".wp-manga-chapter","label":"a|text","url":"a|attr:href","at":".chapter-release-date i|text"}},"reader":{"label":".breadcrumb .active|text","title":{"sel":".breadcrumb li:has(+ .active) a","url":"|attr:href","name":"|text"},"content":"#chapter_content, .reading-content","prev":".nav-previous a|attr:href","next":".nav-next a|attr:href","chapter":{"sel":"#manga-reading-nav-head .single-chapter-select option","url":"|attr:value","label":"|text"}},"search":{"title":{"sel":".page-item-detail","url":"a|attr:href","name":"h3 a|text","img":"img|attr-contain:src","chapter":{"sel":".chapter-item ","url":"a|attr:href","label":"a|text","at":".post-on|text"}}}},{"id":"dynasty","title":{"name":"h2.tag-title b|text","img":".cover img|attr-contain:src","tags":".tag-tags a.label|text","chapter":{"sel":".chapter-list dd:has(> a.name)","url":"a|attr:href","label":"a|text","at":"small|text"}},"reader":{"label":"h3#chapter-title b|text","title":{"sel":"h3#chapter-title a","url":"|attr:href","name":"|text"},"content":"#image","prev":"a#prev_link|attr:href","next":"a#next_link|attr:href"},"search":{"title":{"sel":".chapter-list a.name","url":"|attr:href","name":"|text"}}},{"id":"fmteam","releases":{"title":{"sel":".item:has(h5 a)","name":"h5 a|text","url":"h5 a|attr:href","chapter":{"sel":"a[href*=\"/read/\"]","label":"|text","url":"|attr:href"}}},"title":{"lazy":true,"sel":"#comic","name":"#comic .card-header|text","img":"#comic .card-body .thumbnail-full img|attr-contain:src","type":"#comic .card-body div:has(> label)|row:format","tags":"#comic .card-body div:has(> label)|row:genres","chapter":{"sel":"div:has(> div > .chapter a[href*=\"/read/\"])","label":"a[href*=\"/read/\"]|text","url":"a[href*=\"/read/\"]|attr:href","at":"div:last-child[title]|attr:title"}},"reader":{"title":{"sel":"#reader-controls-title a","name":"|text","url":"|attr:href"},"label":"select[name=\"jump-chapter\"] option:checked|text","content":"#reader-images","imgDivs":"#reader-images [data-page]","lstrip":".active > [data-value=\"long-strip\"]","lstripBtn":"[data-value=\"long-strip\"]","prev":"#chapter-link-left[href*=\"/read\"]|attr:href","next":"#chapter-link-right[href*=\"/read\"]|attr:href","chapter":{"sel":"select[name=\"jump-chapter\"] option","label":"|text","url":"|attr:value"}}},{"id":"readallcomics","title":{"name":"h1 b|text","img":".description-archive img|attr-contain:src","tags":"h1 ~ div p strong|text","chapter":{"sel":".list-story li a","url":"|attr:href","label":"|text"}},"reader":{"sel":"center > p:has(> img)","label":"h3 strong|text","title":{"sel":".pinbin-category a","name":"|text","url":"|attr:href"},"content":"center > p:has(> img)","imgs":"center > p > img|[attr:data-jh-lazy-img,attr-contain:src]","chapter":{"sel":"center:has(> p > img) ~ div center select option","label":"|text","url":"|attr:value"}}},{"id":"philia","releases":{"title":{"sel":"main .unit","name":"a.c-title|text","url":"a.c-title|attr:href","chapter":{"sel":"li a","url":"|attr:href","label":".ch-num|text","at":".ch-date|text"}}},"title":{"name":"h1.serie-title|text","img":"img.cover|attr-contain:src","type":".stat-label|row:type","chapter":{"sel":".chapter-group a","url":"|attr:href","label":"zebi|text","at":".time|text"}},"reader":{"label":".current-type-number|text","title":{"sel":"a.manga-title","url":"|attr:href","name":"|text"},"content":"#ch-images","chapter":{"sel":".chapter-list ul .item","url":"|attr:data-chapter","label":"a|text"}},"search":{"title":{"sel":".unit","url":"a|attr:href","name":".c-title|name","img":"img|attr-contain:src","chapter":{"sel":".content > li a","url":"|attr:href","label":".ch-num|text","at":"ch-date|text"}}}},{"id":"batcave","releases":{"title":{"sel":"li.latest","name":"a.latest__title|text","url":"a.latest__title|attr:href","chapter":{"sel":".latest__chapter a","url":"|attr:href","label":"|text"}}},"title":{"name":"#dle-content h1|text","img":"#dle-content .img-wide img|attr-contain:src","id":"[data-ratig-layer-id]|attr:data-ratig-layer-id","chapter":{"sel":".cl__item","label":".cl__item-num|text","url":"a|attr:href","at":".cl__item-date|text"}},"reader":{"label":".chapter__selector-trigger__title|text","title":{"sel":"a.header__post-link","url":"|attr:href","name":".header__post-title|text"},"content":".reader-view","chapter":{"trigger":".chapter__selector-trigger","sel":".chapters__list a","url":"|attr:href","label":"|text"},"prev":".chapter__selector a:has(.fa-angle-left)[href*=\"/reader/\"]|attr:href","next":".chapter__selector a:has(.fa-angle-right)[href*=\"/reader/\"]|attr:href"}},{"id":"tcb","title":{"name":"h1|text","img":"main img|attr-contain:src","chapter":{"sel":"main a[href*=\"/chapters/\"]","url":"|attr:href","label":"div|text"}},"reader":{"label":"h1|text|remove:.+-","title":{"name":"h1|text|remove:-.+","url":"main a[href*=\"/mangas/\"]|attr:href"},"prev":"a[href*=\"/chapters/\"]:has(+ a[href*=\"/mangas/\"])|attr:href","next":"a[href*=\"/mangas/\"] + a[href*=\"/chapters/\"]|attr:href","content":"main"}},{"id":"bato3x","title":{"name":"h3 a[href*=\"/title/\"]|text","id":"h3 a[href*=\"/title/\"]|attr:href|pattern:.*\\/(\\d+)-.*","img":"main img|attr-contain:src","tags":"div:has(> h3) + div b ~ span|text","chapter":{"sel":"[name=\"chapter-list\"] astro-slot > div","url":"a|attr:href","label":"a|text","at":"time|attr:time"}},"reader":{"label":"h6 a span|text","title":{"sel":"h3 a","name":"|text","url":"|attr:href","id":"|attr:href|pattern:.*\\/(\\d+)-.*"},"lstrip":"select[data-name=\"page-load\"] option[value=\"2\"]:checked","lstripBtn":"select[data-name=\"page-load\"] option[value=\"2\"]","content":"[name=\"image-items\"]","imgs":"[name=\"image-items\"] img|attr-contain:src","chapter":{"sel":"[data-name=\"page-jump\"] option","url":"|attr:value","label":"|text"}}},{"id":"bato4x","releases":{"title":{"sel":"div:has(> div > h3 a)","id":"a|attr:href|pattern:.*\\/(\\d+)-.*","name":"img|attr:alt","url":"a|attr:href","chapter":{"sel":"div:last-child:has(> span a)","url":"a|attr:href","label":"span|text","at":"time|attr:data-time"}}},"title":{"name":"h3 a[href*=\"/title/\"]|text","id":"h3 a[href*=\"/title/\"]|attr:href|pattern:.*\\/(\\d+)-.*","img":"main img|attr-contain:src","tags":"div:has(> h3) + div b ~ span|text","hasMore":"[data-name=\"chapter-pager\"]","chapter":{"sel":"[data-name=\"chapter-list\"] div:has(> div > a[href*=\"/title/\"])","url":"a|attr:href","label":"a|text","at":"time|attr:data-time"}},"reader":{"label":"h6 a span|text","title":{"sel":"h3 a","name":"|text","url":"|attr:href","id":"|attr:href|pattern:.*\\/(\\d+)-.*"},"lstrip":"option[value=\"a\"]:checked","lstripBtn":"option[value=\"a\"]","content":"div:has(> [data-name=\"image-item\"])","imgs":"[data-name=\"image-item\"] img|attr-contain:src","chapter":{"sel":"main div:has(option[value=\"a\"]) select option[value*=\"/title/\"]","url":"|attr:value","label":"|text"}},"search":{"lazy":true,"empty":"main > div > button[disabled]","title":{"sel":"div:has(> div > h3 a)","id":"a|attr:href|pattern:.*\\/(\\d+)-.*","name":"img|attr:alt","url":"a|attr:href","chapter":{"sel":"div:last-child:has(> span a)","url":"a|attr:href","label":"span|text","at":"time|attr:data-time"}}}},{"id":"mangapill","releases":{"title":{"sel":"div:has(> a[href*=\"/chapters/\"]):has(div > a[href*=\"/manga/\"])","name":"a[href*=\"/manga/\"]|text","url":"a[href*=\"/manga/\"]|attr:href","chapter":{"sel":"div:has(> a[href*=\"/chapters/\"])","url":"a[href*=\"/chapters/\"]|attr:href","label":"a[href*=\"/chapters/\"]|text","at":"time-ago|attr:datetime"}}},"title":{"name":"h1|text","img":"header ~ div img|attr:data-src","tags":"a[href*=\"?genre=\"]|text","chapter":{"sel":"#chapters a[href*=\"/chapters/\"]","url":"|attr:href","label":"|text"}},"reader":{"label":"h1#top|text","title":{"sel":"#js-chapter-selector-modal div:has(> a[href*=\"/manga/\"])","name":"#chapter-selector-modal-title|text","url":"a|attr:href"},"content":"div:has(> chapter-page)","imgs":"chapter-page picture img|attr-contain:src","prev":"a[data-hotkey=\"ArrowLeft\"]|attr:href","next":"a[data-hotkey=\"ArrowRight\"]|attr:href","chapter":{"trigger":"button[data-micromodal-trigger=\"js-chapter-selector-modal\"]","dismiss":"#js-chapter-selector-modal button[data-micromodal-close]","sel":"#js-chapter-selector-modal a[href*=\"/chapters/\"]","url":"|attr:href","label":"|text"}},"search":{"title":{"sel":"div:has(> a img)","url":"a|attr:href","name":"a:not(:has(img)) div|text","img":"a img|[attr:data-src,attr-contain:src]"}}},{"id":"mangataro","releases":{"title":{"sel":"#manga-grid > div:has(a + div a[href*=\"/read/\"])","name":"h3|text","url":"a|attr:href","chapter":{"sel":"h3 ~ div > a","url":"|attr:href","label":"span:first-child|text","at":"span:last-child|text"}}},"title":{"name":"h1|text","img":".manga-page-wrapper img|attr-contain:src","tags":".manga-page-wrapper a[href*=\"/tag/\"]|text","type":"h1 + p + div + div > span|text","first":"a#start-reading-btn|attr:href"},"reader":{"title":{"sel":"a[href*=\"/manga/\"]","url":"|attr:href","name":"span|text"},"label":"select#chapter-select option:checked|text","content":".reader","imgs":".comic-image-container img|[attr:data-src,attr-contain:src]","chapter":{"sel":"select#chapter-select option","url":"|attr:value","label":"|text"}},"search":{"title":{"sel":".group a[href*=\"manga\"]","url":"|attr:href","name":"img|attr:alt"}}},{"id":"demonic","releases":{"title":{"sel":".updates-element-info","name":"h2 a|text","url":"a|attr:href","chapter":{"sel":".chap-date","url":"a|attr:href","label":"a|text","at":"div:last-child a|text"}}},"title":{"name":"h1.big-fat-titles|text","img":"#manga-page img[alt]|attr-contain:src","chapter":{"sel":"#chapters-list li > a","url":"|attr:href","label":"|text","at":"span|text"}},"reader":{"sel":".chapter-info h1 a","title":{"sel":".chapter-info h1 a","url":"|attr:href","name":"|text"},"label":"h2|text","content":"body","imgs":"img.imgholder:not([data-tried]):not([src*=\"/free_ads\"])|attr-contain:src","chapter":{"sel":"h2 + .chapters-nav select option","label":"|text","url":"|attr:value"}}},{"id":"atsu","title":{"lazy":true,"sel":"h1","name":"h1|text","img":".poster|attr-contain:src","tags":"a[href*=\"/explore?tags=\"]|text","first":"aside a[href*=\"/read/\"]:has([data-icon=\"book-open\"])|attr:href","trackers":{"anl":"a[href*=\"anilist.co\"]|attr:href|pattern:.*/(\\d+)$","mal":"a[href*=\"myanimelist.net\"]|attr:href|pattern:.*/(\\d+)$"},"hasMore":"aside + div button ~ div > a[href*=\"/read/\"]","chapter":{"sel":"aside + div div:has(~ button) > a[href*=\"/read/\"], aside + div div:not(:has(> div ~ button)) > div > a[href*=\"/read/\"]","url":"|attr:href","label":"span:first-child|text","at":"span:last-child|text"}},"chapters":{"chapter":{"json":true,"sel":"chapters","label":"number","url":"id"}},"search":{"lazy":true,"empty":"div > h1","title":{"sel":"a[href*=\"/manga/\"]","url":"|attr:href","name":"p|text","img":"img|attr-contain:src"}}},{"id":"mangahaven","title":{"name":"p:has(+ div a[href*=\"filter\"])|text","img":"main img[alt]|attr-contain:src","tags":"a[href*=\"genre=\"] div|text","type":"a[href*=\"status=\"] ~ div:last-child|text"},"reader":{"title":{"url":"#fucking-container a[href*=\"/manga/\"]|attr:href","name":"#fucking-container p|text"},"label":"button p:last-child|text|remove:/.+","content":"body"},"search":{"lazy":true,"loading":".animate-pulse","title":{"sel":"a[href*=\"/manga/\"]","url":"|attr:href","name":"p|text","chapter":{"sel":"div:has(> span)","label":"span:first-child|text","lang":"span:last-child|text"}}}},{"id":"kali","releases":{"title":{"sel":".latest-item .meta","name":"h3 a|text","url":"a|attr:href","chapter":{"sel":".chap-item","url":"a|attr:href","label":"a|text","at":".updated-date span|text"}}},"title":{"name":".name h1|text","img":".img-cover img|[attr:data-src,attr-contain:src]","tags":".meta a[href*=\"/genres/\"]|text","chapter":{"sel":"#chapter-list li > a","url":"|attr:href","label":".chapter-title|text","at":".chapter-update|text"}},"reader":{"lazy":true,"sel":".chapter-image[data-src]","title":{"sel":".breadcrumbs-item a[href*=\"/manga/\"]","url":"|attr:href","name":"span|text"},"label":".breadcrumbs-item:last-child span|text","imgs":".chapter-image|attr:data-src","prev":"#btn-prev|attr:href","next":"#btn-next|attr:href","chapter":{"trigger":"#load-chapters","sel":".chapter-select option","label":"|text","url":"|attr:value"}},"search":{"title":{"sel":".book-detailed-item","img":"img|[attr:data-src,attr-contain:src]","name":"h3 a|text","url":"h3 a|attr:href","chapter":{"sel":".thumb","label":".latest-chapter|text"}}}},{"id":"mangafreak","releases":{"title":{"sel":".latest_item","url":"a|attr:href","name":"a.name|text","chapter":{"sel":".chapter_box a","url":"|attr:href","label":"|text"}}},"title":{"name":"h1|text","img":".manga_series_image img|attr-contain:src","tags":".series_sub_genre_list > a|text","chapter":{"sel":".manga_series_list tbody tr","url":"a|attr:href","label":"a|text","at":"td:last-child|text"}},"reader":{"title":{"sel":"h1.title a","url":"|attr:href","name":"|text"},"label":"h1|text","imgs":".read_image img|attr-contain:src","chapter":{"sel":".chapter_list select option","label":"|text","url":"|attr:value"}},"search":{"title":{"sel":".manga_search_item","name":"h3 a|text","url":"a|attr:href","img":"img|attr-contain:src"}}},{"id":"readcomiconline","title":{"name":".barContent .bigChar|text","img":"#rightside img, .main img|attr-contain:src","chapter":{"sel":".listing tbody tr:has(a)","label":"a|text","url":"a|attr:href","at":"td:last-child|text"}},"reader":{"title":{"sel":"#navsubbar a","url":"|attr:href","name":"|text|pattern:Comic (.+) information"},"label":".selectEpisode option:checked|text","lstrip":"#selectReadType option[value=\"1\"]:checked","lstripBtn":"#selectReadType option[value=\"1\"]","content":"#divImage","chapter":{"sel":".selectEpisode option","url":"|attr:value","label":"|text"}}},{"id":"valir","releases":{"title":{"sel":".latest-poster","name":"a h3|text","url":"a|attr:href","chapter":{"sel":"a[href*=\"/chapter/\"]","url":"|attr:href","label":"span div|text","at":"span:last-child|text"}}},"title":{"name":"h1|text","img":".bg-\\[image\\:--photoURL\\]|bg-image","chapter":{"sel":"#chapters > a","url":"|attr:href","label":"span span|text","at":"span + div div|text"}},"reader":{"title":{"sel":"#chapter_header a[href*=\"/series/\"]","url":"|attr:href","name":"|text"},"label":"#chapter_header span:has(a[href*=\"/series/\"])|text","content":"#pages","chapter":{"sel":"#chapters > a","url":"|attr:href","label":"span span|text","at":"span + div div|text"}},"search":{"lazy":true,"delay":500,"empty":"#no_results_page","title":{"sel":"#searched_series_page > button:not(.hidden)","name":"a h3|text","url":"a|attr:href","img":"div[style*=\"background-image\"]|bg-image"}}},{"id":"rithar","releases":{"title":{"sel":".latest-poster","name":"a h3|text","url":"a|attr:href","chapter":{"sel":"a[href*=\"/read/\"]","url":"|attr:href","label":"span div|text","at":"span:last-child|text"}}},"title":{"name":"h1|text","img":"main div[style*=\"background-image\"]|bg-image","chapter":{"sel":"#chapters > a","url":"|attr:href","label":"span span|text","at":"div:has(> span) + div div|text"}},"reader":{"title":{"sel":"header a[href*=\"/series/\"]","url":"|attr:href","name":"|text"},"label":"header a[href*=\"/series/\"] + span|text","lstrip":"[x-ref=\"webtoonContainer\"]","lstripBtn":"div:has(> img[src*=\"up-down\"])","imgDivs":"[id*=\"webtoon-page-\"]","chapter":{"sel":"#chapters > a","url":"|attr:href","label":"span span|text","at":"span + div div|text"}},"search":{"title":{"sel":"#main-content button:has(a[href*=\"/series/\"])","name":"a h3|text","url":"a|attr:href","img":"div[style*=\"background-image\"]|bg-image"}}},{"id":"rawkuma","releases":{"title":{"sel":"#search-results > div","url":"a|attr:href","name":"h1|text","chapter":{"sel":"div > a:has(time)","url":"|attr:href","label":"p|text","at":"time|attr:datetime"}}},"title":{"name":"h1[itemprop=\"name\"]|text","img":"[itemprop=\"image\"] img|attr-contain:src","tags":"a[href*=\"/genre/\"] span|text","type":"h4|row:type","first":"button a[href*=\"/manga/\"]|attr:href"},"reader":{"title":{"name":"a[href*=\"/manga/\"] img[alt]|attr:alt","url":"a[href*=\"/manga/\"]|text"},"label":"div:has(> time) div|text","imgs":"section[data-image-data] > img|attr-contain:src","prev":"a[href*=\"/manga/\"]:has([data-lucide=\"chevron-left\"])|attr:href","next":"a[href*=\"/manga/\"]:has([data-lucide=\"chevron-right\"])|attr:href","chapter":{"trigger":"button[pop-content=\"#chapter-lists-head\"]","sel":"#chapter-lists-head li > a","url":"|attr:href","label":"|text"}}},{"id":"mangaberri","releases":{"title":{"sel":".manga-horizontal-item","url":"a|attr:href","name":"a|attr:title","chapter":{"sel":"a.episode","url":"|attr:href","label":"span|text"}}},"title":{"sel":".chapters-container","name":"h1|text","img":"img.comic-img|attr-contain:src","tags":".comic-attrs a[href*=\"genre=\"]|text","chapter":{"sel":".chapters-container > a","url":"|attr:href","label":"span|text"}},"reader":{"title":{"sel":".breadcrumb-container a:nth-of-type(2)","url":"|attr:href","name":"|attr:title"},"label":".breadcrumb-container a:nth-of-type(3)|attr:title","imgs":".reading-container img|attr-contain:src","chapter":{"sel":"#top_chapter_selection option","url":"|attr:value","label":"|text"}},"search":{"title":{"sel":".manga-item","img":"img|attr-contain:src","name":"a|attr:title","url":"a|attr:href","chapter":{"sel":"a:last-of-type","url":"|attr:href","label":"|text"}}}},{"id":"kagane","title":{"name":"h1|text","tags":"span[title*=\"genre:\"]|text","firstBtn":"button:has(.lucide-play)"},"reader":{"title":{"name":"title|text|remove:-.+","url":"a[href*=\"/series/\"]|attr:href"},"label":"title|text|remove:.+-","content":".reader-pages-content"},"search":{"lazy":true,"title":{"sel":"[data-series-item]","name":"h3|text","url":"a|attr:href"}}},{"id":"mangaball","title":{"name":"h6|text","img":"#featuredComicsCarousel img[alt]|attr-contain:src","tags":"[data-tag-id]|text"},"reader":{"title":{"name":"header h6|text","url":"[type=\"application/ld+json\"]|text|remove:^[\\s\\S]*?\"url\":\\s*\"|remove:\"[\\s\\S]*$"},"label":"#chapterTitle|text","content":"#mangaPages","imgs":"#mangaPages img|[attr:data-src,attr-contain:src]","group":"#translationGroup span|text"},"search":{"lazy":true,"empty":"#seasonal-anime-container .alert","title":{"sel":"div:has(> .item-title)","name":"a|text","url":"a|attr:href","img":".item-body img|attr-contain:src"}}},{"id":"mangatr","title":{"sel":"#tab1 .info-body h1","name":"#tab1 .info-body h1|text","img":".thumbnail|attr:src","tags":".manga-meta-card a[href*=\"tur=\"]|text","first":"#results a:has(+ .chapter-container)|attr:href","hasMore":"[data-page=\"2\"]","chapter":{"sel":".chapter-item","label":"a|text","url":"a|attr:href","at":".stats|text"}},"reader":{"sel":".chapter-content","title":{"sel":"a.navbar-brand","url":"|attr:href","name":"|text"},"label":".navbar-form option:checked|text","group":".chapter-content a.label|text","content":"#chapter-images","chapter":{"sel":".navbar-form option","url":"|attr:value","label":"|text"}}},{"id":"denizi","title":{"name":".panel-heading,h2|text","img":".single-managa .boxed img, h2 ~ div img|attr-contain:src","tags":"a[href*=\"/category/\"]|text","chapter":{"sel":".chapters > li","label":"a|text","url":"a|attr:href","at":".date-chapter-title-rtl|text"}},"reader":{"title":{"sel":".nav:has(#chapter-list) a","url":"|attr:href","name":"|text"},"label":"h1 b|text","content":"#all","imgs":"#all img|[attr:data-src,attr-contain:src]","chapter":{"sel":"#chapter-list li a","url":"|attr:href","label":"|text"}}},{"id":"mangabox","releases":{"title":{"sel":".itemupdate","name":"h3 a|text","url":"a|attr:href","chapter":{"sel":"ul > li:not(:first-child)","label":"a|text","url":"a|attr:href","at":"i|text"}}},"title":{"name":"h1|text","img":".manga-info-pic img|attr-contain:src","tags":".manga-info-text a[href*=\"/genre/\"]|text","chapter":{"sel":".chapter-list > .row","label":"a|text","url":"a|attr:href","at":"span:last-child|attr:title"}},"reader":{"title":{"sel":".breadcrumb a[href*=\"/manga/\"]","url":"|attr:href","name":"span|text"},"label":".breadcrumb > p > span:last-child span|text","imgs":".container-chapter-reader img|attr-contain:src","chapter":{"sel":".navi-change-chapter option","label":"|text","url":"|attr:data-c"}},"search":{"title":{"sel":".story_item","url":"a|attr:href","name":".story_name a|text","img":"img|attr-contain:src","chapter":{"sel":".story_chapter","url":"a|attr:href","label":"a|text"}}}},{"id":"merlin","title":{"name":"h1#manga-title,h1|text","img":".story-cover img|attr-contain:src","tags":"#genre-tags a[href*=\"/tur/\"]|text","hasMore":"a[href*=\"/page/2/\"]","first":".story-cover-wrap + div a|attr:href","chapter":{"sel":".chapter-item a","url":"|attr:href","label":"h3|text"}},"reader":{"title":{"sel":"#breadcrumb-manga","url":"|attr:href","name":"|text"},"label":"[aria-current=\"page\"]|text","prev":"a:has(> [uk-pagination-previous])|attr:href","next":"a:has(> [uk-pagination-next])|attr:href","imgs":"#chapter-content img|attr-contain:src","chapter":{"trigger":"#chapter-toggle","sel":"#chapter-dropdown li a","url":"|attr:href","label":"|text"}}},{"id":"temple","title":{"name":"main h1|text","img":"main img[alt]|attr-contain:src","tags":"h1 + div div:last-child > p + div:last-child p|text","chapter":{"sel":"a:has(h1):has(img):has(span)","url":"|attr:href","label":"h1|text","at":"div span:last-child|text"}},"reader":{"title":{"sel":"main h1 + a","url":"|attr:href","name":"|text"},"label":"main h1|text","imgDivs":"main [data-index]","prev":"main a:has(svg):first-child|attr:href","next":"main a:has(svg):last-child|attr:href","chapter":{"trigger":"button[aria-label=\"Chapters List\"]","sel":"[role=\"dialog\"] a[href*=\"/comic/\"]","url":"|attr:href","label":"h1|text","at":"h1 + span|text"}}},{"id":"comix","releases":{"title":{"json":true,"sel":"result.items","id":"hash_id","url":"hash_id","name":"title","chapter":{"sel":"","label":"latest_chapter","at":"chapter_updated_at"}}},"title":{"id":"#syncData|json:manga_id","name":"h1|text || #syncData|json:name","img":".poster img|attr:src","tags":"a[href*=\"?genres=\"]|text","hasMore":".page-link[href=\"#2\"]","chapter":{"sel":".chap-list > li","url":"a|attr:href","label":"a b|text","at":"span:last-of-type|text","group":"a:last-child|text"},"trackers":{"mal":"a:has([alt=\"mal\"])|attr:href","anl":"a:has([alt=\"al\"])|attr:href"}},"reader":{"lazy":true,"sel":".read-viewer .page","title":{"id":"#syncData|json:manga_id","url":"a.back-btn|attr:href || #syncData|json:name","name":"a.back-btn|text || #syncData|json:name"},"label":".readbar-ctrl .dropdown-menu .dropdown-item.active|text || #syncData|json:number || title|text","group":".readbar-bottom .dropdown .value|text|remove:^no\\sgroup","imgDivs":".read-viewer .page","lstrip":".read-viewer.longsrtip,.read-viewer.longstrip","lstripBtn":".read-st-toggle;#page-layout-setting button:has([href*=\"longstrip\"])","prev":"#syncData|json:prev_chapter_url","next":"#syncData|json:next_chapter_url","chapter":{"sel":".readbar-ctrl .dropdown-menu .dropdown-item","label":"|text"}},"search":{"lazy":true,"loading":".section-loading","title":{"sel":".comic > .item","url":"a.title|attr:href","name":"a.title|text"}}},{"id":"manhuaplus","releases":{"title":{"sel":"#home-tab-update > div ","url":"a|attr:href","name":"img|attr:alt","chapter":{"sel":"div + a","url":"|attr:href","label":"|text"}}},"title":{"name":"h1|text","img":"main img|attr-contain:src","tags":"main article a[href*=\"/genres/\"]|text","chapter":{"sel":"#myUL > li","url":"a|attr:href","label":"a|text","at":"time|attr:datetime"}},"reader":{"title":{"sel":"h1 a","url":"|attr:href","name":"|text"},"label":"h1|text","content":"#chapterContent:not(:has(img[src*=\"loading.gif\"]))","imgs":"#chapterContent img:not([src*=\"loading.gif\"])|attr:src","prev":"a.prevBtn|attr:href","next":"a.nextBtn|attr:href","chapter":{"sel":"#top-control select option","url":"|attr:value","label":"|text"}},"search":{"title":{"sel":"div:has(> div + a[href*=\"/manga/\"])","url":"a|attr:href","name":"a|attr:title","chapter":{"sel":"div + a","url":"|attr:href","label":"|text"}}}},{"id":"weebdex","title":{"lazy":true,"name":"main h1|text","img":"main figure img|attr-contain:src","tags":"a[href*=\"?tag=\"]|text","firstBtn":"button:has(svg.lucide-book-open)","trackers":{"anl":"a[href*=\"anilist.co\"]|attr:href","mal":"a[href*=\"myanimelist.net\"]|attr:href"}}},{"id":"projectsuki","releases":{"title":{"sel":".content .item","url":"|attr:href","name":".details a|text","chapter":{"sel":"a[href*=\"/read/\"]","url":"|attr:href","label":"|text"}}},"title":{"name":"h2|text","img":".img-thumbnail|attr-contain:src","tags":"a[href*=\"/genre/\"]|text","chapter":{"sel":"tbody tr","url":"a|attr:href","label":"a|text","at":"td:last-child span|attr:title"}},"reader":{"title":{"sel":"main a:has(.fa-home)","url":"|attr:href","name":"|attr:title"},"label":"#chapter-select option:checked|text","content":".strip-reader:has(img:not(:first-child))","imgs":".strip-reader img|attr:src","chapter":{"sel":"#chapter-select option","url":"|attr:value","label":"|text"}},"search":{"title":{"sel":".content > div:has(a)","url":"a|attr:href","name":"h4 a|text"}}},{"id":"mangatown","releases":{"title":{"sel":".manga_pic_list > li, .post-list > li","name":".title a, .title|text","url":"a|attr:href","chapter":{"sel":".new_chapter a, a.read-btn","url":"|attr:href","label":"|text"}}},"title":{"name":"h1.title-top,.title|text","img":".detail_info > img, .manga-detail-top img|attr-contain:src","tags":".detail_info ul li|row:genre(s) || a[href*=\"/directory/\"]|text","type":".detail_info ul li|row:type","chapter":{"sel":".chapter_list > li, .detail-ch-list > li","url":"a|attr:href","label":"a|attr:name || a|text","at":".time|text"}},"reader":{"title":{"url":".title h2 a, .title a:last-child|attr:href","name":".sharebtn a|attr:st_title || .title a:last-child|text|remove:manga$"},"label":"#top_chapter_list option:checked, .title a|text","imgs":"#viewer img:not(.reader-main-img)|attr-contain:src","chapter":{"sel":"#top_chapter_list option","url":"|attr:value","label":"|text"}},"search":{"title":{"sel":".manga_pic_list > li, .post-list > li","url":"a|attr:href","name":"a|attr:title || a|attr:rel"}}},{"id":"mangatime","title":{"name":".anime__details__title h3|text","img":".anime__details__pic|bg-image","tags":".anime__details__widget li:last-child|text","chapter":{"sel":"a:has(> .detail-main-list-main)","url":"|attr:href","label":".title3|text","at":".title2|text"}},"reader":{"label":".breadcrumb__links span:last-child|text","title":{"sel":".breadcrumb__links a:last-of-type","url":"|attr:href","name":"|text"},"content":"#chapter-pages","chapter":{"sel":"#chapter-dropdown option","url":"|attr:value","label":"|text"}}},{"id":"imhen","title":{"name":"h1|text","img":".gallery_first img[alt]|[attr:data-src,attr-contain:src]"},"reader":{"label":".current|text","title":{"name":"#gimg|attr:alt|remove:page\\s\\d+.*$","url":"a.return_btn|attr:href"},"imgs":"#gimg|attr-contain:src"}}]