Dark? Switch Mode

Ch.80

All chapters are in Bj Alex (NELA)

Read the latest manga Ch.80 at BATOTO . Manga Bj Alex (NELA) is always updated at BATOTO . Dont forget to read the other manga updates. A list of manga collections BATOTO is in the Manga List menu.

58121036 783 391 37092

58121017 1413 3840 133684

58121030 2001 3840 211392

58121026 1239 3840 245418

58121033 2157 2259 157148

58121020 1341 3840 248018

58121035 1356 3840 156258

58121040 1251 3840 215420

58121047 1413 3840 154386

58121048 2070 3840 163448

58121019 2025 3840 261472

58121023 1329 3840 171904

58121038 1269 3840 282094

58121046 2031 3840 377224

58121041 1965 3840 179568

58121021 1620 3840 270354

58121022 1320 3840 241776

58121045 1401 3840 216882

58121031 1380 3840 196020

58121018 1959 3840 215462

58121029 1248 3840 230388

58121044 1821 3840 218428

58121015 1908 3840 204138

58121034 1353 3840 195034

58121043 1428 3840 86592

58121028 1230 3840 159992

58121039 1422 3840 165342

58121042 1623 3840 192722

58121024 1323 3840 162270

58121016 2055 3840 234530

58121050 1218 3840 182842

58121037 1320 3840 146912

58121032 1479 3840 103940

58121049 1509 3840 152188

58121025 2157 1641 63424

Tags: read manga Ch.80, comic Ch.80, read Ch.80 online, Ch.80 chapter, Ch.80 chapter, Ch.80 high quality, Ch.80 manga scan, ,

Comment

Leave a Reply

Your email address will not be published. Required fields are marked *

Chapter 2925818
Content Warning
Warning, the series titled "Ch.80" may contain violence, blood or sexual content that is not appropriate for minors.
Enter
Exit
`),this.#O()})).catch((t=>{if(t&&this.#i.error(t),t&&this.#o&&!this.#A)return this.#i.debug("fetch call failed. Switch to adblck domain and path"),this.#A=!0,this.#s.enableAdbMode(),void this.show();this.#r(xt)}))}#O(){this.#i.debug("render"),this.#k.render(this.#y)}#T(t){let e=`${window.location.protocol}//${this.#v}/script/interstitial.php`;if(this.#o&&this.#s.isAdbMode()){const{adserverDomain:t}=this.#o,i=`/${nt("abcdefgh0123456789")}`;e=`${window.location.protocol}//${t}${i}`}return e+=`?r=${this.#l}`,this.#m&&(e+="&rbd=1"),this.#b&&(e+=this.#b),e=e+"&atag=1"+`&czid=${this.#u}`+`&aggr=${this.#h}`+`&seqid=${t}`+`&ufp=${encodeURIComponent(this.#C)}`+`&srs=${this.#s.getSesionRandomString()}`+`&cbpage=${encodeURIComponent(P())}`+`&atv=${this.#x}`+`&cbref=${encodeURIComponent(N())}`,this.#o&&(e+="&abtg=1"),this.#g&&(e+="&ppv=1"),this.#p&&(e+=`&ab_test=${this.#p}`),!1===this.#f&&(e+="&cap=0"),this.#o&&this.#o.adbVersion&&(e+=`&adbv=${this.#o.adbVersion}`),this.#o&&this.#s.isAdbMode()?(e+="&sadbl=2",e+="&fmt=intrn",this.#i.debug(`bid url: ${e}`),rt(e)):(this.#i.debug(`bid url: ${e}`),e)}};const Ht="znid";var Dt=class{targetElementsCssSelector=null;shouldTriggerPopOnTargetClick=!1;constructor(t,e,i){this.targetElementsCssSelector=t,this.shouldTriggerPopOnTargetClick=e,this.zoneId=i}isPresent(){return!!this.targetElementsCssSelector}isActionAllowedOnElement(t){if(!this.isPresent())return!0;if(t.hasAttribute(Ht))return t.getAttribute(Ht)===this.zoneId;if(t.hasAttribute("doskip"))return!1;const e=m()(document.querySelectorAll('[doskip*="1"]'));for(const i of e)if(i.contains(t))return!1;return this.#I(t)?this.shouldTriggerPopOnTargetClick:!this.shouldTriggerPopOnTargetClick}#I(t){const e=document.querySelectorAll(this.targetElementsCssSelector);do{for(let i=0;i{var t,e,i;const n=(t,e)=>{try{const i=e.getBoundingClientRect();t.style.top=`${i.top+window.scrollY}px`,t.style.left=`${i.left+window.scrollX}px`,t.style.width=`${i.width}px`,t.style.height=`${i.height}px`}catch(t){}};r()(t=this.iframesToOverlays).call(t,(t=>{let{overlay:e,iframe:i}=t;return n(e,i)})),r()(e=this.videosToOverlays).call(e,(t=>{let{overlay:e,video:i}=t;return n(e,i)})),r()(i=this.anchorsToOverlays).call(i,(t=>{let{overlay:e,anchor:i}=t;return n(e,i)}))}),500)}clearOverlaysResizeIntervalChecker(){try{clearInterval(this.overlaysResizeIntervalChecker)}catch(t){}}#R(t){const e=document.createElement("div");if(e.addEventListener("mousedown",(t=>{this.#i.debug("mousedown on overlay"),t.stopPropagation(),t.preventDefault(),this.desktopClickListener(t)}),this.#E),t===document.body)e.id="dontfoid",e.style.top="0px",e.style.left="0px",e.style.width=`${window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth}px`,e.style.height=`${window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight}px`,e.style.position="fixed";else{const i=t.getBoundingClientRect();e.style.top=`${i.top+window.scrollY}px`,e.style.left=`${i.left+window.scrollX}px`,e.style.width=`${i.width}px`,e.style.height=`${i.height}px`,e.style.position="absolute",e.setAttribute("donto","")}return e.setAttribute(Ht,this.#l),e.style.zIndex=2147483647,e.style.backgroundColor="transparent",t===document.body?document.body.appendChild(e):t.parentNode.appendChild(e),e}attachVideoOverlays(){const t=document.querySelectorAll("video");for(let e=0;e false"),this.#E=!1),this.overlays=new _t(this.elementTargeting,v()(e=this.#z).call(e,this),this.#i,this.#e.zoneId,this.#E),t.tagVersionSuffix&&(this.#x+=t.tagVersionSuffix),this.#i.debug("tag version:",this.#x)}show(){this.#y=null,this.#$=null,this.#P=!1,fetch(this.#T()).then((t=>200===t.status||202===t.status?t.json():(204===t.status&&(this.hasNoInventory=!0,this.#i.debug(`no inventory! reset after ${this.#w} sec`),f()((()=>{this.hasNoInventory=!1}),1e3*this.#w),this.#w<7200&&(this.#w*=5)),yt().reject()))).then((t=>{if(this.#i.debug("response:",t),t.capped_ttl)return this.isCapped=!0,this.#i.debug(`capped! reset after ${t.capped_ttl} sec`),f()((()=>{this.isCapped=!1}),1e3*t.capped_ttl),void this.#e.actionCallback(kt);if(this.#w>12&&(this.#w=12),!this.#m){this.#m=!0;const e=t.delay??0;return this.#i.debug("delay is",e),void f()((()=>{this.#F(t)}),1e3*e)}this.#F(t)})).catch((t=>{if(t&&this.#i.error(t),t&&this.#e.adblockSettings&&!this.#A)return this.#i.debug("fetch call failed. Switch to adblck domain and path"),this.#s.enableAdbMode(),this.#A=!0,void this.show();this.#e.actionCallback(kt)}))}#T(){let t=`${window.location.protocol}//${this.#e.adserverDomain}/script/suurl5.php`;if(this.#e.adblockSettings&&this.#s.isAdbMode()){const{adserverDomain:e}=this.#e.adblockSettings,i=`/${nt("abcdefgh0123456789")}`;t=`${window.location.protocol}//${e}${i}`}if(t+=`?r=${this.#e.zoneId}`,this.#m&&(t+="&rbd=1"),this.#e.targetCountries){const e=this.#e.targetCountries.join(",");this.#e.triggerOnTargetCountries?t+="&allowed_countries="+encodeURIComponent(e):t+="&excluded_countries="+encodeURIComponent(e)}return t=t+this.#e.clientHintsQueryStr+"&atag=1&cbur="+Math.random()+"&cbiframe="+$()+"&cbWidth="+F()+"&cbHeight="+U()+"&cbtitle="+encodeURIComponent(B())+"&cbpage="+encodeURIComponent(P())+"&cbref="+encodeURIComponent(N())+"&cbdescription="+encodeURIComponent(j("description"))+"&cbkeywords="+encodeURIComponent(j("keywords"))+"&cbcdn="+encodeURIComponent(this.#s.getCdnDomain())+"&ts="+bt()()+"&atv="+this.#x+"&ufp="+encodeURIComponent(this.#e.uniqueFingerprint)+"&srs="+this.#s.getSesionRandomString(),this.#e.adblockSettings&&(t+="&abtg=1"),this.#e.aggressivity&&(t+=`&aggr=${this.#e.aggressivity}`),this.#e.collectiveZoneId&&(t+=`&czid=${this.#e.collectiveZoneId}`),this.#e.recordPageView&&(t+="&ppv=1"),this.#e.abTest&&(t+=`&ab_test=${this.#e.abTest}`),!1===this.#e.adsCapping&&(t+="&cap=0"),this.#e.adblockSettings&&this.#e.adblockSettings.adbVersion&&(t+=`&adbv=${this.#e.adblockSettings.adbVersion}`),this.#e.adblockSettings&&this.#s.isAdbMode()?(t+="&sadbl=2",t+="&fmt=suv5",this.#i.debug(`bid url: ${t}`),rt(t)):(this.#i.debug(`bid url: ${t}`),t)}#U(t){try{let e=this.#L?this.#L(""):window.open("");return e.document.open(),e.document.writeln('`),void(!this.#m&&this.#e.delay>0?(this.#i.debug(`delay present. render after: ${this.#e.delay} sec`),f()(v()(s=this.#O).call(s,this),1e3*this.#e.delay)):this.#O())))}#At(t){this.#i.debug("fallback script str:",t);const e=(new DOMParser).parseFromString(t,"text/html").querySelector("script");if(!e)return void this.#i.error("invalid fallback script. move on");this.#i.debug("fallback script:",e);const i=document.createElement("script");for(const t of e.attributes)i.setAttribute(t.name,t.value);i.src||(i.textContent=e.textContent),document.body.appendChild(i)}#kt(t){const e=JSON.parse(atob(t));this.#i.debug("hp data:",e);const i={zoneId:e.pop_zone_id.toString(),linkedZoneId:e.source_zone_id.toString()};var n;e.attributes&&(e.attributes["element-list"]&&(i.targetElementsCssSelector=e.attributes["element-list"],i.triggerOnTargetElementsClick="allow"===e.attributes["element-action"]),e.attributes["country-list"]&&(i.targetCountries=ie()(n=e.attributes["country-list"]).call(n).split(","),i.triggerOnTargetCountries="allow"===e.attributes["country-action"])),this.#s.runPop(i)}#r(){if(this.#e.showOnInnerLinkClick&&this.#xt)return this.#i.debug("redirect to inner link"),void(window.location.href=this.#xt);this.#wt=!1,this.#e.refreshRate>0?(this.#i.debug(`rebid after ${this.#e.refreshRate} sec`),f()((()=>{this.#m=!0,this.#ht()}),1e3*this.#e.refreshRate)):this.#i.debug("no rebidding. finish")}#St(){const t=document.querySelectorAll("a"),e=new(c())(P()).hostname;for(let i=0;i{e.stopPropagation?e.stopPropagation():e.cancelBubble=!0,e.preventDefault?e.preventDefault():e.returnValue=!1,this.#wt||(this.#i.debug("click on inner link detected. render ad"),this.#wt=!0,this.#xt=t[i].href,this.#k.render(this.#y))}),{capture:!0})}#O(){this.#i.debug("render"),this.#e.showOnInnerLinkClick?(this.#i.debug("google friendly interstitial. ad will be rendered on inner link click"),this.#St()):this.#k.render(this.#y)}#T(){let t=`${window.location.protocol}//${this.#v}/script/interstitial.php`;if(this.#o&&this.#s.isAdbMode()){const{adserverDomain:e}=this.#o,i=`/${nt("abcdefgh0123456789")}`;t=`${window.location.protocol}//${e}${i}`}return t+=`?r=${this.#l}`,this.#m&&(t+="&rbd=1"),this.#b&&(t+=this.#b),t=t+`&srs=${this.#s.getSesionRandomString()}`+`&ufp=${encodeURIComponent(this.#C)}`+`&cbpage=${encodeURIComponent(P())}`+`&atv=${this.#x}`+`&cbref=${encodeURIComponent(N())}`,this.#mt&&(t+=`&sub1=${encodeURIComponent(this.#mt)}`),this.#yt&&(t+="&atag=1"),this.#u&&(t+=`&czid=${this.#u}`),this.#h&&(t+=`&aggr=${this.#h}`),this.#o&&(t+="&abtg=1"),this.#g&&(t+="&ppv=1"),this.#p&&(t+=`&ab_test=${this.#p}`),this.#o&&this.#o.adbVersion&&(t+=`&adbv=${this.#o.adbVersion}`),this.#o&&this.#s.isAdbMode()?(t+="&sadbl=2",t+="&fmt=intrn",this.#i.debug(`bid url: ${t}`),rt(t)):(this.#i.debug(`bid url: ${t}`),t)}};const se="#399afe",oe="utsid-send";class ae extends HTMLElement{constructor(){super(),this._shadowRoot=this.attachShadow({mode:"open"}),this.click=t=>{t.stopPropagation();const e=document.createEvent("Event");e.initEvent("inpageclick",!0,!0),this.dispatchEvent(e)},this.close=t=>{t.stopPropagation();const e=document.createEvent("Event");e.initEvent("inpageclose",!0,!0),this.dispatchEvent(e),document.dispatchEvent(new CustomEvent("in-page-closed"))},this.missclick=()=>{document.dispatchEvent(new CustomEvent("in-page-missclick"))}}connectedCallback(){const t=document.querySelectorAll("in-page-message");let e=0,i="top";for(let i=0;i\n div[id^='note-'] {\n font-family: -apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;\n font-weight: 400;\n font-size: 16px;\n line-height: 1.3;\n position: fixed !important;\n right: 0;\n /* pure-css */\n letter-spacing: -0.31em;\n text-rendering: optimizespeed;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n -ms-flex-line-pack: start;\n align-content: flex-start;\n align-items: center;\n cursor: pointer;\n transition: padding-right 0.1s, top 0.3s;\n overflow: hidden;\n z-index: 2147483645;\n word-wrap: break-word;\n width: 380px;\n padding-top: 20px;\n }\n\n .note-inner { \n margin: 5px;\n border-radius: 55px; \n position: relative;\n background: ${se};\n color: #ffffff !important;\n width: 70%;\n text-align: center;\n height: 100px;\n justify-content: center;\n display: flex;\n align-items: center;\n }\n\n div[id*='note-'] p, img.graph, div[id*='close-'] {\n display: inline-block;\n letter-spacing: normal;\n word-spacing: normal;\n vertical-align: middle;\n text-rendering: auto;\n text-align: center; \n } \n\n div[id*='note-'] p {\n width: 90%;\n padding: 2%;\n font-size: 0.9em\n }\n\n /* BUBBLE IMAGE */\n img.graph {\n width: 76px;\n height: 76px; \n box-sizing: border-box;\n border-radius: 50%; \n position: relative;\n margin-left: 2%;\n border: 4px solid ${se};\n }\n\n /* CLOSE BUTTON */\n div[id^='close-'] {\n font-size: 20px;\n margin-top: 10px;\n z-index: 23;\n display: inline-block;\n width: 24px;\n height: 24px;\n background: transparent; \n text-align: center;\n color: #a6a0a7;\n }\n\n div[id^='close-']:hover {\n background: #a0a0ff;\n }\n\n .impression {\n display: none;\n width: 0px;\n height: 0px;\n }\n\n div[id*="missclick-"] {\n right: 0;\n top: 0;\n height: 100%;\n /*margin-top: -30px;*/\n width: ${(a=o).widthOfMissclickArea}px;\n z-index: 2;\n position: absolute !important;\n align-items: start;\n justify-content: center;\n display: flex;\n }\n\n @media all and (max-width: 380px) {\n div[id*='note-'] {\n width: 100%;\n }\n \n img.graph {\n margin-left: 2%;\n }\n }\n\n ${a.closeButtonStyle}\n\n \n
\n
\n

${a.dataTitle}
${a.dataDescription}

\n
\n graph\n
\n
\n
\n
\n `;const c=this.shadowRoot.getElementById(`note-${this.getAttribute("id")}`),l=this.shadowRoot.getElementById(`close-${this.getAttribute("id")}`),d=this.shadowRoot.getElementById(`missclick-${this.getAttribute("id")}`);if(this.hasAttribute("data-imp-link")){let t=this.getAttribute("data-imp-link");window[oe]&&(t+=`&utsid=${window[oe]}`),t+=`&cbpage=${encodeURIComponent(P())}`,t+=`&cbref=${encodeURIComponent(N())}`;const e=document.createElement("img");e.src=t.toString(),e.setAttribute("class","impression"),c.appendChild(e)}I(c,"click",this.click),I(l,"click",this.close),I(d,"click",this.missclick)}}var ce=ae;const le=1e3;var de=class{#e={};#i;#s;#b="";#Ct;#m=!1;#x="52.8";#Tt=[];#Ot=null;#It=!0;#Et;#A=!1;constructor(t){window[Wt]=!0,this.#i=new y(`ippg_new_${t.zoneId}`),this.#i.debug("init ippg with config:",t),this.#e=t,this.#s=window[t.adcashGlobalName],this.#Et=this.#e.refreshRate,customElements.get("in-page-message")||customElements.define("in-page-message",ce),this.#s.getClientHints(!1).then((t=>{this.#b=t,this.#ht()}))}#T(){let t=`${window.location.protocol}//${this.#e.adserverDomain}/script/push.php`;if(this.#e.adblockSettings&&this.#s.isAdbMode()){const{adserverDomain:e}=this.#e.adblockSettings,i=`/${nt("abcdefgh0123456789")}`;t=`${window.location.protocol}//${e}${i}`}return t+=`?r=${this.#e.zoneId}&ipp=1`,this.#Ct=et?this.#e.renderPosMobile:this.#e.renderPosDesktop,t+=`&mads=${this.#e.maxAds}&position=${this.#Ct}`,this.#e.isAutoTag&&(t+=`&czid=${this.#e.collectiveZoneId}&atag=1`),this.#e.aggressivity&&(t+=`&aggr=${this.#e.aggressivity}`),this.#e.adblockSettings&&(t+="&abtg=1"),this.#m&&(t+="&rbd=1"),this.#e.recordPageView&&(t+="&ppv=1"),this.#e.abTest&&(t+=`&ab_test=${this.#e.abTest}`),this.#e.sub1&&(t+=`&sub1=${encodeURIComponent(this.#e.sub1)}`),this.#e.adblockSettings&&this.#e.adblockSettings.adbVersion&&(t+=`&adbv=${this.#e.adblockSettings.adbVersion}`),t=t+`&srs=${this.#s.getSesionRandomString()}`+`&ufp=${encodeURIComponent(this.#e.uniqueFingerprint)}`+`&cbpage=${encodeURIComponent(P())}`+`&atv=${this.#x}`+`&cbref=${encodeURIComponent(N())}`,this.#b&&(t+=this.#b),this.#Ot&&(t+="&ipptr=1"),this.#e.adblockSettings&&this.#s.isAdbMode()?(t+="&sadbl=2",t+="&fmt=ippg",this.#i.debug(`bid url: ${t}`),rt(t)):(this.#i.debug(`bid url: ${t}`),t)}async#ht(){var t;if(this.#Rt()>=this.#e.maxAds||!this.#It||document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement)return void(this.#e.refreshRate>0&&(this.#m=!0,f()(v()(t=this.#ht).call(t,this),this.#Et*le)));let e;try{e=await fetch(this.#T())}catch(t){if(this.#i.error(t),this.#e.adblockSettings&&!this.#A)return this.#i.debug("fetch call failed. Switch to adblck domain and path"),this.#A=!0,this.#s.enableAdbMode(),void this.#ht()}var i,n;if(204===e.status)return this.#i.debug("unsold invertory!"),void(this.#e.refreshRate>0&&(this.#i.debug(`refresh rate present. try bidding again after ${this.#Et} sec`),this.#m=!0,f()(v()(i=this.#ht).call(i,this),this.#Et*le),2*this.#Et<1200&&(this.#Et*=2)));if(200!==e.status&&202!==e.status||(this.#m=!0,e=await e.json(),this.#i.debug("response:",e)),e.fallback&&e.hp)return void this.#At(e.fallback);if(e.fallback)return void this.#At(e.fallback);if(e.hp,e.capped_ttl)return this.#i.debug(`capped! try bidding again after ${e.capped_ttl} sec`),void f()(v()(n=this.#ht).call(n,this),e.capped_ttl*le);this.#b&&(e.impression_url&&(e.impression_url+=this.#b),e.click_url&&(e.click_url+=this.#b));const r={type:e.type||1,script:e.script||"",title:e.title||"",description:e.description||"",icon:e.icon||e.image,link:e.click_url,impressionLink:e.impression_url||null,capped_ttl:A()(e.capped_ttl,10)||0};var s;this.#Et=this.#e.refreshRate,2!==r.type||this.#Ot?(this.#Tt.push(r),this.#It=!1,this.#Pt(),f()((()=>{this.#It=!0}),this.#Et*le)):(this.#Ot=r,this.#It=!1,await this.#$t(),f()((()=>{this.#It=!0}),this.#Et*le)),this.#e.refreshRate>0&&(this.#m=!0,f()(v()(s=this.#ht).call(s,this),this.#Et*le))}#Rt(){return this.#Ot?this.#Tt.length+1:this.#Tt.length}#At(t){this.#i.debug("fallback script str decoded:",t);const e=(new DOMParser).parseFromString(t,"text/html").querySelector("script");if(!e)return this.#i.error("invalid fallback script. move on"),null;this.#i.debug("fallback script:",e);const i=document.createElement("script");for(const t of e.attributes)i.setAttribute(t.name,t.value);i.src||(i.textContent=e.textContent),document.body.appendChild(i)}async#$t(){const t=(new DOMParser).parseFromString(this.#Ot.script,"text/html").querySelector("script"),e=document.createElement("script");t.src?e.setAttribute("src",t.src):e.innerText=t.innerText;const i=()=>{var t;this.#i.debug("CT-CLICK"),fetch(this.#Ot.link,{mode:"no-cors"}),document.removeEventListener("ct-click",i),f()(v()(t=this.#ht).call(t,this),1e3)},n=()=>{this.#i.debug("CT-CLOSE"),document.removeEventListener("ct-click",i),document.removeEventListener("ct-close",n),this.#Ot=null,document.body.removeChild(e)};I(document,"ct-click",i),I(document,"ct-close",n);let r=this.#Ot.impressionLink;window[oe]&&(r+=`&utsid=${window[oe]}`),r+=`&cbpage=${encodeURIComponent(P())}`,r+=`&cbref=${encodeURIComponent(N())}`,e.onload=async()=>{try{await fetch(r.toString())}catch(t){return this.#i.debug(t),void(this.#e.adblockSettings&&!this.#s.isAdbMode()&&(this.#i.debug("imp failed: try alt domain and path"),this.#s.enableAdbMode()))}document.dispatchEvent(new CustomEvent("impression-event"))},e.onerror=()=>{this.#i.debug("custom html script failed to load"),this.#Ot=null},document.body.appendChild(e)}#Pt(){var t;this.#i.debug("drawing..");const e=document.querySelectorAll("in-page-message");if(e.length>0)for(let t=0;t{const i=document.createElement("in-page-message");i.setAttribute("doskip","1"),i.setAttribute("id",e.toString()),i.setAttribute("data-icon",t.icon),i.setAttribute("data-title",t.title),i.setAttribute("data-description",t.description),i.setAttribute("data-offset-top",this.#e.offsetTop),i.setAttribute("data-render-pos-desktop",this.#e.renderPosDesktop),i.setAttribute("data-render-pos-mobile",this.#e.renderPosMobile),t.impressionLink&&(i.setAttribute("data-imp-link",t.impressionLink),t.impressionLink=null,document.dispatchEvent(new CustomEvent("impression-event"))),i.addEventListener("inpageclick",(()=>{var n;if(et||this.#e.adblockSettings&&this.#s.isAdbMode()){const e=document.createElement("a");e.href=t.link,e.rel="noopener, noreferrer",e.target="_blank",e.click()}else try{window.open(t.link,"_blank","noopener,noreferrer")}catch{}i.remove(),h()(n=this.#Tt).call(n,e,1),this.#Pt()})),i.addEventListener("inpageclose",(()=>{var t;i.remove(),h()(t=this.#Tt).call(t,e,1),this.#Pt()})),document.body.appendChild(i)}))}},ue=i(111),he=i.n(ue),ge=i(8607),fe=i.n(ge),pe=class{#s;#e={};#i;#Lt="";#zt;#l=null;#Ft=null;#Ut=null;#Bt=null;#Nt;#jt;#v="youradexchange.com";#Mt="velocecdn.com";#Ht;#o;#A=!1;#x="52.8";constructor(t){this.#i=new y(`banner_${t.zoneId}`),this.#s=window[t.adcashGlobalName],this.#i.debug("init banner with config:",t),this.#e=t,this.#l=this.#e.zoneId,this.#Ft=this.#e.width,this.#Ut=this.#e.height,this.#Bt=this.#e.renderIn,this.#o=this.#e.adblockSettings,this.#e.currentScript&&(this.#Ht=this.#e.currentScript),this.#Nt=this.#jt=document.documentElement.clientWidth||document.body.clientWidth||window.innerWidth,t.tagVersionSuffix&&(this.#x+=t.tagVersionSuffix),this.#i.debug("tag version:",this.#x),this.#Dt()}#_t(){const t=this.#zt.impression_url;(new Image).src=t}async#Dt(){this.#i.debug("get initial ad and config"),this.#Lt=await R(this.#i);const t=await this.#Vt();let e;this.#i.debug("URL to fetch",t);try{e=await fetch(t)}catch(t){return this.#i.error(t),this.#o&&!this.#A?(this.#i.debug("fetch failed: try alt domain and path"),this.#A=!0,this.#s.enableAdbMode(),void this.#Dt()):this.#s.isAdbMode()?void this.#i.debug("fetch failed: alt domain and path blocked. exit"):void this.#i.debug("fetch failed. exit")}200===e.status||202===e.status?(this.#i.debug("initial fetch received 200 or 202"),this.#zt=await e.json(),this.#Wt()):204===e.status&&this.#i.debug("initial fetch received 204. No inventory")}async#Vt(){let t=`${window.location.protocol}//${this.#v}/script/banner.php`;if(this.#o&&this.#s.isAdbMode()){const{adserverDomain:e}=this.#o,i=`/${nt("abcdefgh0123456789")}`;t=`${window.location.protocol}//${e}${i}`}return t+=`?r=${this.#l}`,t+=`&cbpage=${encodeURIComponent(P())}`,t+=`&cbref=${encodeURIComponent(N())}`,t+=`&cbdescription=${encodeURIComponent(j("description"))}`,t+=`&cbkeywords=${encodeURIComponent(j("keywords"))}`,t+=`&cbtitle=${encodeURIComponent(B())}`,t+=`&srs=${z()}`,t+=`&ufp=${encodeURIComponent(this.#e.uniqueFingerprint)}`,t+=`&atv=${this.#x}`,this.#e.sub1&&(t+=`&sub1=${encodeURIComponent(this.#e.sub1)}`),this.#o&&this.#s.isAdbMode()?(t+="&sadbl=2",t+="&fmt=bnr",rt(t)):t}#Wt(){if(!this.#zt||"undefined"===this.#zt)return;if(this.#zt.hp&&(this.#qt(this.#zt.hp),1===he()(this.#zt).length))return;let t;t=this.#Bt?document.querySelector(this.#Bt):this.#e.currentElement?this.#e.currentElement:this.#Ht.parentElement,this.#Gt(t);const e=this.#Zt();t.appendChild(e)}#Zt(){let t;return this.#zt.fallback?(this.#i.debug("Banner type - fallback"),t=this.#Qt()):1===this.#zt.render_image?(this.#i.debug("Banner type - image"),t=this.#Kt()):(this.#i.debug("Banner type - html"),t=this.#Jt()),this.#zt.fallback||this.#_t(),this.#s||this.#Yt(),t}#Kt(){const t=document.createElement("a");t.href=this.#zt.click_url,t.target="_blank",t.rel="noopener, noreferrer",t.style.display="block",t.style.width=`${this.#Ft?this.#Ft:this.#zt.width}px`,t.style.height=`${this.#Ut?this.#Ut:this.#zt.height}px`,t.style.position="relative",t.style.top=0,t.style.left=0,t.style.right=0,t.style.bottom=0,t.setAttribute("doskip","1"),t.setAttribute(Nt,"1");const e=document.createElement("img");if(e.src=this.#zt.image_url,e.target="_blank",e.width=this.#Ft?this.#Ft:this.#zt.width,e.height=this.#Ut?this.#Ut:this.#zt.height,this.#zt.width>this.#Nt&&this.#zt.force_resize){const i=(this.#Ft?this.#Ft:this.#zt.width)/this.#jt;t.style.width=`${this.#jt}px`,t.style.height=`${Math.round((this.#Ut?this.#Ut:this.#zt.height)/i)}px`,e.style="max-width: 100%;",e.width=this.#jt,e.height=Math.round((this.#Ut?this.#Ut:this.#zt.height)/i)}return t.appendChild(e),t}#Jt(){const t=`banner_${this.#l}`,e=document.createElement("div");e.id=t,e.style.display="block",e.style.width=`${this.#Ft?this.#Ft:this.#zt.width}px`,e.style.height=`${this.#Ut?this.#Ut:this.#zt.height}px`,e.style.position="relative",e.style.top="0",e.style.left="0",e.style.right="0",e.style.bottom="0",e.width=this.#Ft?this.#Ft:this.#zt.width,e.height=this.#Ut?this.#Ut:this.#zt.height,e.setAttribute("doskip","1"),e.setAttribute(Nt,"1"),this.#Xt(e,this.#zt.html);const i=()=>{this.#i.debug("click recorded:",this.#zt.click_url),(new Image).src=this.#zt.click_url,r()},n=()=>{this.#i.debug("click on divNode"),i()},r=()=>{e.removeEventListener("click",n),clearInterval(s)};e.addEventListener("click",n);const s=d()((()=>{document.activeElement&&"IFRAME"===document.activeElement.tagName&&((t,e)=>{let i=t.parentElement;for(;i;){if(i.id===e)return i;i=i.parentElement}return null})(document.activeElement,t)&&(this.#i.debug("click on iframe"),i())}),200);return e}#Xt(t,e){var i;t.innerHTML=e,r()(i=m()(t.querySelectorAll("script"))).call(i,(t=>{var e;const i=document.createElement("script");r()(e=m()(t.attributes)).call(e,(t=>{i.setAttribute(t.name,t.value)}));const n=document.createTextNode(t.innerHTML);i.appendChild(n),t.parentNode.replaceChild(i,t)}))}#Qt(){const t=`banner_${this.#l}`,e=document.createElement("iframe");return e.id=t,e.style.border="medium none",e.style.padding="0",e.style.margin="0",e.style.width=`${this.#Ft?this.#Ft:this.#zt.width}px`,e.style.height=`${this.#Ut?this.#Ut:this.#zt.height}px`,e.width=this.#Ft?this.#Ft:this.#zt.width,e.height=this.#Ut?this.#Ut:this.#zt.height,e.scrolling="no",e.vspace="0",e.hspace="0",e.allowtransparency="true",e.allowfullscreen="true",e.srcdoc=this.#zt.fallback,e}#qt=t=>{const e=JSON.parse(atob(t));if(this.#s){const t={zoneId:e.pop_zone_id.toString(),linkedZoneId:e.source_zone_id.toString()};var i;return e.attributes&&(e.attributes["element-list"]&&(t.targetElementsCssSelector=e.attributes["element-list"],t.triggerOnTargetElementsClick="allow"===e.attributes["element-action"]),e.attributes["country-list"]&&(t.targetCountries=ie()(i=e.attributes["country-list"]).call(i).split(","),t.triggerOnTargetCountries="allow"===e.attributes["country-action"])),void this.#s.runPop(t)}const n=document.createElement("script");if(n.type="text/javascript",n.src=`//${this.#Mt}/script/suv4.js`,n.setAttribute("zid",e.pop_zone_id),n.setAttribute("lpzi",e.source_zone_id),n.setAttribute("data-adel","lwsu"),n.setAttribute("adlm","ipvipplm"),e.attributes)for(const t in e.attributes)n.setAttribute(t,e.attributes[t]);document.body.appendChild(n)};#Gt(t){if(this.#i.debug("Initial viewport:",this.#Nt),this.#zt.width>this.#Nt&&this.#zt.force_resize){var e=window.getComputedStyle(t),i=fe()(e.paddingLeft),n=fe()(e.marginLeft);this.#jt=t.clientWidth-i-n,this.#i.debug("Parent element width:",this.#jt)}}#Yt(){const t=document.createElement("a");t.style.display="none",t.style.visibility="hidden",t.style.position="relative",t.style.left="-1000px",t.style.top="-1000px",t.href=this.#zt.bot_link,document.body.appendChild(t)}};const ve="x4G9Tq2Kw6R7v1Dy3P0B5N8Lc9M2zF",be="adblock-settings",me=(()=>{let t=document.currentScript;return t||(t=document.getElementById("aclib")),t||(t=document.getElementById("adcash-lib")),t})();let ye=null;var we=class{#Mt;#te={pop:!1,autoTag:!1,inPagePush:!1,interstitial:!1};#ee;#b;#ie=new(e());#i;#ne;#re={mousedown:[],click:[],touchstart:[]};#se={mousedown:[],scroll:[],click:[],touchstart:[]};#v="youradexchange.com";#o=null;#oe;#ae;#ce=!1;isShowingPop=!1;#C;constructor(){if(ye)return ye;ye=this,this.#i=new y("aclib_adbl"),window.addEventListener("mousedown",(t=>{var e;this.#i.debug("win mousedown with capture: in"),r()(e=this.#re.mousedown).call(e,(e=>{this.#i.debug("win mousedown with capture: calling observer"),e.callback(t)}))}),!0),window.addEventListener("mousedown",(t=>{var e;this.#i.debug("win mousedown: in"),r()(e=this.#se.mousedown).call(e,(e=>{this.#i.debug("win mousedown: calling observer"),e.callback(t)}))}),!1),window.addEventListener("click",(t=>{var e;this.#i.debug("win click with capture: in"),r()(e=this.#re.click).call(e,(e=>{this.#i.debug("win click with capture: calling observer"),e.callback(t)}))}),!0),window.addEventListener("click",(t=>{var e;this.#i.debug("win click: in"),r()(e=this.#se.click).call(e,(e=>{this.#i.debug("win click: calling observer"),e.callback(t)}))}),!1),document.addEventListener("mousedown",(t=>{var e;this.#i.debug("doc mousedown: in"),r()(e=this.#se.mousedown).call(e,(e=>{this.#i.debug("doc mousedown: calling observer"),e.callback(t)}))})),document.addEventListener("mousedown",(t=>{var e;this.#i.debug("doc mousedown with capture: in"),r()(e=this.#re.mousedown).call(e,(e=>{this.#i.debug("doc mousedown with capture: calling observer"),e.callback(t)}))}),!0),window.addEventListener("scroll",(t=>{var e;r()(e=this.#se.scroll).call(e,(e=>{e.callback(t)}))})),document.addEventListener("click",(t=>{var e;this.#i.debug("doc click: in"),r()(e=this.#se.click).call(e,(e=>{this.#i.debug("doc click: calling observer"),e.callback(t)}))})),document.addEventListener("click",(t=>{var e;this.#i.debug("doc click with capture: in"),r()(e=this.#re.click).call(e,(e=>{this.#i.debug("doc click with capture: calling observer"),e.callback(t)}))}),!0),this.getClientHints(),this.#ae=z(),this.#oe=(()=>{const t=Math.floor(11*Math.random())+5;let e="";for(let i=0;i{window[e]&&window[e]===t||(window[e]=t)}),500)}#ge(){this.#ne&&(clearInterval(this.#ne),this.#ne=null)}subscribe(t,e,i){if(!this.#re[t]||!this.#se[t])throw new Error(`${t} is not observable!`);i?this.#re[t].push(e):this.#se[t].push(e)}unsubscribe(t,e,i){if(!this.#re[t]||!this.#se[t])throw new Error(`${t} is not observable!`);if(i)for(let i=0;i{const e=document.createElement("link");e.rel="dns-prefetch",e.href=`//${t}`,document.head.appendChild(e)}))}f()(v()(t=this.#le).call(t,this),100)}getZoneIds(){return m()(this.#ie)}runPop(t){this.#he();const{zoneId:e,refreshRate:i,delay:n,targetElementsCssSelector:r,triggerOnTargetElementsClick:s,targetCountries:o,triggerOnTargetCountries:a,sub1:c,sub2:l,publisherUrl:d,storeUrl:u,c1:h,c2:g,c3:f,pubHash:p,pubClickId:v,pubValue:b,fallbackOn:m,isAutoTag:y,collectiveZoneId:w,aggressivity:x,recordPageView:k,linkedZoneId:A,abTest:S,tagVersionSuffix:C}=t;if(!e)throw new Error("mandatory zoneId is not provided!");if(!ft(e))throw new Error("zoneId is not a string!");if(void 0!==i&&(!gt(i)||i<0))throw new Error("refreshRate is not an integer or is less than zero");if(void 0!==n&&(!gt(n)||n<0))throw new Error("delay is not an integer or is less than zero");if(void 0!==r){if(!ft(r))throw new Error("targetElementsCssSelector is not a string");if(!(t=>{try{document.createDocumentFragment().querySelector(t)}catch{return!1}return!0})(r))throw new Error("targetElementsCssSelector is not a valid css selector");if(!ht(s))throw new Error("triggerOnTargetElementsClick is not a boolean")}if(void 0!==o){if(!(t=>{if(!lt()(t))return!1;if(0===t.length)return!1;for(let e=0;e0&&f<10&&(f<5?f*=60:f=30),new de({zoneId:e,refreshRate:f??60,delay:i??0,maxAds:n??1,renderPosDesktop:r??"top",renderPosMobile:s??"top",offsetTop:o??0,sub1:a,isAutoTag:c,collectiveZoneId:l,aggressivity:d,recordPageView:u,abTest:h,tagVersionSuffix:g,adserverDomain:this.#v,adblockSettings:this.#o,adcashGlobalName:this.#oe,isLoadedAsPartOfLibrary:!0,uniqueFingerprint:this.#C})}runBanner(t){this.#he();const{zoneId:e,width:i,height:n,renderIn:r,sub1:s,currentScript:o}=t;if(!e)throw new Error("mandatory zoneId is not provided!");if(!ft(e))throw new Error("zoneId is not a string!");if(void 0!==i&&!gt(i))throw new Error("Banner width is not an integer");if(void 0!==n&&!gt(n))throw new Error("Banner height is not an integer");if(this.#ie.has(e))return void this.#i.error(`zone ${e} already loaded`);let a;this.#ie.add(e),this.#i.debug("loading banner on page",e),r||(document.currentScript&&document.currentScript.parentElement&&(a=document.currentScript.parentElement),o&&(a=o.parentElement)),new pe({zoneId:e,width:i,height:n,renderIn:r,currentElement:a,sub1:s,adcashGlobalName:this.#oe,uniqueFingerprint:this.#C,adblockSettings:this.#o})}runInterstitial(t){if(this.#te.interstitial)return void this.#i.error("interstitial zone already loaded on page");this.#te.interstitial=!0,this.#he();const{zoneId:e,sub1:i,isAutoTag:n,collectiveZoneId:r,aggressivity:s,recordPageView:o,abTest:a,tagVersionSuffix:c}=t;if(!e)throw new Error("mandatory zoneId is not provided!");if(!ft(e))throw new Error("zoneId is not a string!");this.#i.debug("loading interstitial on page");const l={zoneId:e,sub1:i,isAutoTag:n,collectiveZoneId:r,aggressivity:s,recordPageView:o,abTest:a,tagVersionSuffix:c,adcashGlobalName:this.#oe,adserverDomain:this.#v,adblockSettings:this.#o,isLoadedAsPartOfLibrary:!0,uniqueFingerprint:this.#C};this.#ie.add(e),new re(l)}async#fe(t){let e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.#i.debug("fetch collective zone config");let i=`${window.location.protocol}//${this.#v}/ad/czcf.php`;if(this.isAdbMode()){const t=`/${nt("abcdefgh0123456789")}`;i=`${window.location.protocol}//${this.#o.adserverDomain}${t}`}i+=`?cz=${t}`;const n=await this.getClientHints();let r;n&&(i+=n),this.isAdbMode()&&(i+="&sadbl=2",i+="&fmt=atg",i=rt(i)),this.#i.debug("collective zone config url: ",i);try{r=await fetch(i)}catch(i){return this.#i.error(i),this.#o&&e?(this.#i.debug("collective zone config fetch failed: try alt domain and path"),this.enableAdbMode(),this.#fe(t,!1)):null}return 200!==r.status?null:r.json()}async runAutoTag(t){if(this.#te.autoTag)return void this.#i.error("autotag zone already loaded on page");this.#te.autoTag=!0,this.#he();const e=t.zoneId;if(!e)throw new Error("mandatory zoneId is not provided!");if(!ft(e))throw new Error("zoneId is not a string!");const i=await this.#fe(e);if(i)if(this.#i.debug("collective zone config:",i),i.rotationList)this.#i.debug("running in ROTATION MODE"),this.#ie.add(e),new Zt({adcashGlobalName:this.#oe,collectiveZoneConfig:i,adserverDomain:this.#v,adblockSettings:this.#o,clientHintsQueryStr:this.#b,tagVersionSuffix:t.tagVersionSuffix,isLoadedAsPartOfLibrary:!0,uniqueFingerprint:this.#C});else{this.#i.debug("running in NORMAL MODE");const n=i.indexedFormats;let r=!0;for(const s in n){switch(s){case"suv4":case"pop":this.runPop({zoneId:n[s].zoneId.toString(),targetElementsCssSelector:n[s]["element-list"],triggerOnTargetElementsClick:"allow"===n[s]["element-action"],targetCountries:n[s]["country-list"],triggerOnTargetCountries:"allow"===n[s]["country-action"],isAutoTag:!0,collectiveZoneId:e,aggressivity:i.aggressivity,abTest:i.ab_test,recordPageView:r,tagVersionSuffix:t.tagVersionSuffix});break;case"interstitial":this.runInterstitial({zoneId:n[s].zoneId.toString(),isAutoTag:!0,collectiveZoneId:e,aggressivity:i.aggressivity,abTest:i.ab_test,recordPageView:r,tagVersionSuffix:t.tagVersionSuffix});break;case"ippg":this.runInPagePush({zoneId:n[s].zoneId.toString(),refreshRate:n[s].rr,delay:n[s].d,maxAds:n[s].mads,renderPosDesktop:n[s]["render-pos-desktop"],renderPosMobile:n[s]["render-pos-mobile"],offsetTop:n[s]["offset-top"],isAutoTag:!0,collectiveZoneId:e,aggressivity:i.aggressivity,abTest:i.ab_test,recordPageView:r,tagVersionSuffix:t.tagVersionSuffix});break;default:this.#i.error(`ad format type not recognised from collective zone config. adformat.type: ${s}; czid: ${e}`)}r=!1}}else this.#i.error(`failed to fetch collective zone config! czid: ${e}`)}};const xe=new y("aclib_adblock_index");window.Adcash?xe.debug("lib already on page. exit"):(xe.debug("load lib on page"),window.Adcash=we,window.AtcshAltNm=we,window.aclib=new we)}()}();