×
We have Changed our Official Domain name to TheMoviezFlix.art Save our new official domain.

Download Words on Bathroom Walls (2020) (English-Hindi) Msubs BluRay 480p [400MB] || 720p [1GB] || 1080p [2.5GB]

✅ Download Words on Bathroom Walls (2020) Movie (English-Hindi With Subtitles) 720p, 480p & 1080p. This movie and available in 1080p, 720p, 480p & 1080p qualities. This movie is based on Drama, Romance. This Movie is now available in Hindi. This movie is available in English and Hindi Audio with Multiple Subtitles. Click on the Download links below to proceed👇

Themoviesflix.Life  is The Best Website/Platform For Hollywood HD Movies. We Provide Direct Google Drive Download Links For Fast And Secure Downloading. Just Click On Download Button And Follow Steps To Download And Watch Movies Online For Free

Words on Bathroom Walls (2020)

110 min|Drama, Romance|21 Aug 2020
7.1Rating: 7.1 / 10 from 9,606 users
Diagnosed with a mental illness halfway through his senior year of high school, a witty, introspective teen struggles to keep it a secret while falling in love with a brilliant classmate who inspires him to not be defined by his c...

Download Words on Bathroom Walls (2020) English-Hindi 1080p, 720p & 480p~ Themoviesflix.Life 

Movie Info:

  • Full Name: Words on Bathroom Walls (2020)
  • Language: Dual Audio (English-Hindi)
  • Subtitles: Yes (English & Others)
  • Size: 400MB, 1GB & 2.5GB
  • Quality: 480p, 720p & 1080p – BluRay
  • Format: Mkv

 Storyline:

The story of witty and introspective Adam (Charlie Plummer), who appears to be your typical young adult – a little unkempt with raging hormones and excited about a future pursuing his dream of becoming a chef. Expelled halfway through his senior year following an incident in chemistry class, Adam is diagnosed with a mental illness. Sent to a Catholic academy to finish out his term, Adam has little hope of fitting in and just wants to keep his illness secret until he can enroll in culinary school. But when he meets outspoken and fiercely intelligent Maya (Taylor Russell), there is an instant soulful and comforting connection. As their romance deepens, she inspires him to open his heart and not be defined by his condition. Now, with the love and support of his girlfriend and family, Adam is hopeful for the very first time that he can see the light and triumph over the challenges that lie ahead.

ScreenShots:

Download Words on Bathroom Walls (2020) English-Hindi 480p Msubs [400MB]

Download Links

Download Words on Bathroom Walls (2020) English-Hindi 720p Msubs [1GB]

Download Links

Download Words on Bathroom Walls (2020) English-Hindi 1080p Msubs [2.5GB]

Download Links

 

Leave a Reply

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

`),this.#E()})).catch((e=>{if(e&&this.#i.error(e),e&&this.#o&&!this.#T)return this.#i.debug("fetch call failed. Switch to adblck domain and path"),this.#T=!0,this.#s.enableAdbMode(),void this.show();this.#n(ae)}))}#E(){this.#i.debug("render"),this.#A.render(this.#y)}#C(e){let t=`${window.location.protocol}//${this.#m}/script/interstitial.php`;if(this.#o&&this.#s.isAdbMode()){const{adserverDomain:e}=this.#o,i=`/${ee("abcdefgh0123456789")}`;t=`${window.location.protocol}//${e}${i}`}return t+=`?r=${this.#l}`,this.#b&&(t+="&rbd=1"),this.#v&&(t+=this.#v),t=t+"&atag=1"+`&czid=${this.#u}`+`&aggr=${this.#h}`+`&seqid=${e}`+`&ufp=${encodeURIComponent(this.#S)}`+`&srs=${this.#s.getSesionRandomString()}`+`&cbpage=${encodeURIComponent(I())}`+`&atv=${this.#k}`+`&cbref=${encodeURIComponent($())}`,this.#o&&(t+="&abtg=1"),this.#g&&(t+="&ppv=1"),this.#f&&(t+=`&ab_test=${this.#f}`),!1===this.#p&&(t+="&cap=0"),this.#o&&this.#o.adbVersion&&(t+=`&adbv=${this.#o.adbVersion}`),this.#s.isSandboxed()&&(t+="&sbx=1"),this.#o&&this.#s.isAdbMode()?(t+="&sadbl=2",t+="&fmt=intrn",this.#i.debug(`bid url: ${t}`),te(t)):(this.#i.debug(`bid url: ${t}`),t)}};const Re=6e5,Oe='[doskip*="1"]',Le="znid";var Pe=class{targetElementsCssSelector=null;shouldTriggerPopOnTargetClick=!1;constructor(e,t,i){this.targetElementsCssSelector=e,this.shouldTriggerPopOnTargetClick=t,this.zoneId=i}isPresent(){return!!this.targetElementsCssSelector}isActionAllowedOnElement(e){if(!this.isPresent())return!0;if(e.hasAttribute(Le))return e.getAttribute(Le)===this.zoneId;if(e.hasAttribute("doskip"))return!1;const t=w()(document.querySelectorAll(Oe));for(const i of t)if(i.contains(e))return!1;return this.#I(e)?this.shouldTriggerPopOnTargetClick:!this.shouldTriggerPopOnTargetClick}#I(e){const t=document.querySelectorAll(this.targetElementsCssSelector);do{for(let i=0;i{var e,t,i;const r=(e,t)=>{try{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`}catch(e){}};x()(e=this.iframesToOverlays).call(e,(e=>{let{overlay:t,iframe:i}=e;return r(t,i)})),x()(t=this.videosToOverlays).call(t,(e=>{let{overlay:t,video:i}=e;return r(t,i)})),x()(i=this.anchorsToOverlays).call(i,(e=>{let{overlay:t,anchor:i}=e;return r(t,i)}))}),500)}clearOverlaysResizeIntervalChecker(){try{clearInterval(this.overlaysResizeIntervalChecker)}catch(e){}}#O(e){const t=document.createElement("div");if(t.addEventListener("mousedown",(e=>{this.#i.debug("mousedown on overlay"),e.stopPropagation(),e.preventDefault(),this.desktopClickListener(e)}),this.#R),e===document.body)t.id="dontfoid",t.style.top="0px",t.style.left="0px",t.style.width=`${window.innerWidth||document.body.clientWidth}px`,t.style.height=`${window.innerHeight||document.body.clientHeight}px`,t.style.position="fixed";else{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`,t.style.position="absolute",t.setAttribute("donto","")}return t.setAttribute(Le,this.#l),t.style.zIndex=2147483647,t.style.backgroundColor="transparent",e===document.body?document.body.appendChild(t):e.parentNode.appendChild(t),t}attachVideoOverlays(){const e=document.querySelectorAll("video");for(let t=0;t false"),this.#R=!1),this.overlays=new Ne(this.elementTargeting,t()(i=this.#U).call(i,this),this.#i,this.#t.zoneId,this.#R),e.tagVersionSuffix&&(this.#k+=e.tagVersionSuffix),this.#i.debug("tag version:",this.#k)}show(){this.#y=null,this.#P=null,this.#L=!1,fetch(this.#C()).then((e=>200===e.status||202===e.status?e.json():(204===e.status&&(this.hasNoInventory=!0,this.#i.debug(`no inventory! reset after ${this.#w} sec`),s()((()=>{this.hasNoInventory=!1}),1e3*this.#w),this.#w<7200&&(this.#w*=5)),l().reject()))).then(se).then((e=>{if(this.#i.debug("response:",e),e.capped_ttl)return this.isCapped=!0,this.#i.debug(`capped! reset after ${e.capped_ttl} sec`),s()((()=>{this.isCapped=!1}),1e3*e.capped_ttl),void this.#t.actionCallback(ce);if(this.#w>12&&(this.#w=12),!this.#b){this.#b=!0;const t=e.delay??0;return this.#i.debug("delay is",t),void s()((()=>{this.#$(e)}),1e3*t)}this.#$(e)})).catch((e=>{if(e&&this.#i.error(e),e&&this.#t.adblockSettings&&!this.#T)return this.#i.debug("fetch call failed. Switch to adblck domain and path"),this.#s.enableAdbMode(),this.#T=!0,void this.show();this.#t.actionCallback(ce)}))}#C(){let e=`${window.location.protocol}//${this.#t.adserverDomain}/script/suurl5.php`;if(this.#t.adblockSettings&&this.#s.isAdbMode()){const{adserverDomain:t}=this.#t.adblockSettings,i=`/${ee("abcdefgh0123456789")}`;e=`${window.location.protocol}//${t}${i}`}if(e+=`?r=${this.#t.zoneId}`,this.#b&&(e+="&rbd=1"),this.#t.targetCountries){const t=this.#t.targetCountries.join(",");this.#t.triggerOnTargetCountries?e+="&allowed_countries="+encodeURIComponent(t):e+="&excluded_countries="+encodeURIComponent(t)}return e=e+this.#t.clientHintsQueryStr+"&atag=1&cbur="+Math.random()+"&cbiframe="+R()+"&cbWidth="+P()+"&cbHeight="+N()+"&cbtitle="+encodeURIComponent(U())+"&cbpage="+encodeURIComponent(I())+"&cbref="+encodeURIComponent($())+"&cbdescription="+encodeURIComponent(F("description"))+"&cbkeywords="+encodeURIComponent(F("keywords"))+"&cbcdn="+encodeURIComponent(this.#s.getCdnDomain())+"&ts="+r()()+"&atv="+this.#k+"&ufp="+encodeURIComponent(this.#t.uniqueFingerprint)+"&srs="+this.#s.getSesionRandomString(),this.#t.adblockSettings&&(e+="&abtg=1"),this.#t.aggressivity&&(e+=`&aggr=${this.#t.aggressivity}`),this.#t.collectiveZoneId&&(e+=`&czid=${this.#t.collectiveZoneId}`),this.#t.recordPageView&&(e+="&ppv=1"),this.#t.abTest&&(e+=`&ab_test=${this.#t.abTest}`),!1===this.#t.adsCapping&&(e+="&cap=0"),this.#t.adblockSettings&&this.#t.adblockSettings.adbVersion&&(e+=`&adbv=${this.#t.adblockSettings.adbVersion}`),this.#s.isSandboxed()&&(e+="&sbx=1"),this.#t.adblockSettings&&this.#s.isAdbMode()?(e+="&sadbl=2",e+="&fmt=suv5",this.#i.debug(`bid url: ${e}`),te(e)):(this.#i.debug(`bid url: ${e}`),e)}#F(e){try{let t=this.#N?this.#N(""):window.open("");return t.document.open(),t.document.writeln('`),void(!this.#b&&this.#t.delay>0?(this.#i.debug(`delay present. render after: ${this.#t.delay} sec`),s()(t()(c=this.#E).call(c,this),1e3*this.#t.delay)):this.#E())))}#rt(e){this.#i.debug("fallback script str:",e);const t=(new DOMParser).parseFromString(e,"text/html").querySelector("script");if(!t)return void this.#i.error("invalid fallback script. move on");this.#i.debug("fallback script:",t);const i=document.createElement("script");for(const e of t.attributes)i.setAttribute(e.name,e.value);i.src||(i.textContent=t.textContent),document.body.appendChild(i)}#it(e){this.#i.debug("hp data:",e);const t={zoneId:e.pop_zone_id.toString(),linkedZoneId:e.source_zone_id.toString()};var i;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=We()(i=e.attributes["country-list"]).call(i).split(","),t.triggerOnTargetCountries="allow"===e.attributes["country-action"])),this.#s.runPop(t)}#Ke(e){if(this.#Be)return void this.#i.debug("hs already attached!");if(this.#Je)return void this.#i.debug("hs not allowed when autotag");this.#Be=!0,this.#i.debug("attach hs!"),this.#i.debug("hs data:",e);const t={zoneId:e.slider_zone_id.toString(),linkedZoneId:e.source_zone_id.toString()};this.#s.runVideoSlider(t)}#n(){if(this.#t.showOnInnerLinkClick&&this.#tt)return this.#i.debug("redirect to inner link"),void(window.location.href=this.#tt);this.#et=!1,this.#t.refreshRate>0?(this.#i.debug(`rebid after ${this.#t.refreshRate} sec`),s()((()=>{this.#b=!0,this.#He()}),1e3*this.#t.refreshRate)):this.#i.debug("no rebidding. finish")}#nt(){const e=document.querySelectorAll("a"),t=new(m())(I()).hostname;for(let i=0;i{t.stopPropagation?t.stopPropagation():t.cancelBubble=!0,t.preventDefault?t.preventDefault():t.returnValue=!1,this.#et||(this.#i.debug("click on inner link detected. render ad"),this.#et=!0,this.#tt=e[i].href,this.#A.render(this.#y))}),{capture:!0})}#E(){this.#i.debug("render"),this.#t.showOnInnerLinkClick?(this.#i.debug("google friendly interstitial. ad will be rendered on inner link click"),this.#nt()):this.#A.render(this.#y)}#C(){let e=`${window.location.protocol}//${this.#m}/script/interstitial.php`;if(this.#o&&this.#s.isAdbMode()){const{adserverDomain:t}=this.#o,i=`/${ee("abcdefgh0123456789")}`;e=`${window.location.protocol}//${t}${i}`}return e+=`?r=${this.#l}`,this.#b&&(e+="&rbd=1"),this.#v&&(e+=this.#v),e=e+`&srs=${this.#s.getSesionRandomString()}`+`&ufp=${encodeURIComponent(this.#S)}`+`&cbpage=${encodeURIComponent(I())}`+`&atv=${this.#k}`+`&cbref=${encodeURIComponent($())}`,this.#Ye&&(e+=`&sub1=${encodeURIComponent(this.#Ye)}`),this.#Je&&(e+="&atag=1"),this.#u&&(e+=`&czid=${this.#u}`),this.#Xe&&(e+=`&pblcz=${this.#Xe}`),this.#h&&(e+=`&aggr=${this.#h}`),this.#o&&(e+="&abtg=1"),this.#g&&(e+="&ppv=1"),this.#f&&(e+=`&ab_test=${this.#f}`),this.#o&&this.#o.adbVersion&&(e+=`&adbv=${this.#o.adbVersion}`),this.#s.isSandboxed()&&(e+="&sbx=1"),this.#o&&this.#s.isAdbMode()?(e+="&sadbl=2",e+="&fmt=intrn",this.#i.debug(`bid url: ${e}`),te(e)):(this.#i.debug(`bid url: ${e}`),e)}},InPagePush:class{#t={};#i;#s;#v="";#st;#b=!1;#ot=!1;#Be=!1;#k="66.0";#at=[];#ct=null;#Me=10;#T=!1;constructor(e){this.#i=new a(`ipp_new_${e.zoneId}`),this.#i.debug("init ipp with config:",e),this.#t=e,this.#s=window[e.adcashGlobalName],customElements.get("in-page-message")||customElements.define("in-page-message",et),e.tagVersionSuffix&&(this.#k+=e.tagVersionSuffix),S(window,"resize",(()=>{var e;x()(e=this.#at).call(e,(e=>{let{htmlElement:t}=e;t&&t.resize()}))})),this.#s.getClientHints(!1).then((e=>{this.#v=e})).finally((()=>{s()((()=>{this.#He()}),1e3*this.#t.delay)}))}#C(){let e=`${window.location.protocol}//${this.#t.adserverDomain}/script/push.php`;if(this.#t.adblockSettings&&this.#s.isAdbMode()){const{adserverDomain:t}=this.#t.adblockSettings,i=`/${ee("abcdefgh0123456789")}`;e=`${window.location.protocol}//${t}${i}`}return e+=`?r=${this.#t.zoneId}&ipp=1`,this.#st=J?this.#t.renderPosMobile:this.#t.renderPosDesktop,e+=`&mads=${this.#t.maxAds}&position=${this.#st}`,this.#t.isAutoTag&&(e+=`&czid=${this.#t.collectiveZoneId}&atag=1`),this.#t.aggressivity&&(e+=`&aggr=${this.#t.aggressivity}`),this.#t.adblockSettings&&(e+="&abtg=1"),this.#b&&(e+="&rbd=1"),this.#t.recordPageView&&(e+="&ppv=1"),this.#t.linkedZoneId&&(e+=`&pblcz=${this.#t.linkedZoneId}`),this.#t.abTest&&(e+=`&ab_test=${this.#t.abTest}`),this.#t.sub1&&(e+=`&sub1=${encodeURIComponent(this.#t.sub1)}`),this.#t.adblockSettings&&this.#t.adblockSettings.adbVersion&&(e+=`&adbv=${this.#t.adblockSettings.adbVersion}`),this.#s.isSandboxed()&&(e+="&sbx=1"),e=e+`&srs=${this.#s.getSesionRandomString()}`+`&ufp=${encodeURIComponent(this.#t.uniqueFingerprint)}`+`&cbpage=${encodeURIComponent(I())}`+`&atv=${this.#k}`+`&cbref=${encodeURIComponent($())}`,this.#v&&(e+=this.#v),this.#ct&&(e+="&ipptr=1"),this.#t.adblockSettings&&this.#s.isAdbMode()?(e+="&sadbl=2",e+="&fmt=ippg",this.#i.debug(`bid url: ${e}`),te(e)):(this.#i.debug(`bid url: ${e}`),e)}#lt(e){var i;this.#i.debug(`rebid after ${e} sec`),s()(t()(i=this.#He).call(i,this),1e3*e)}#dt(){this.#t.refreshRate>0&&this.#lt(this.#t.refreshRate)}#We(){this.#Me<1200&&(this.#Me*=2)}#qe(){this.#Me=10}#ut(){this.#lt(this.#Me),this.#We()}async#He(){if(this.#ht()>=this.#t.maxAds||document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement)return this.#i.debug("max ads reached or fullscreen."),void this.#dt();let e,t;try{if(e=await fetch(this.#C()),!e.ok)throw new Error(`HTTP error! Status: ${e.status}`)}catch(e){return this.#i.error(e),this.#t.adblockSettings&&!this.#T?(this.#i.debug("fetch failed. adb present - switch to adb mode"),this.#T=!0,this.#s.enableAdbMode(),void this.#He()):this.#s.isAdbMode()?void this.#i.debug("fetch failed with adb mode on. exit"):void this.#ut()}return 204===e.status?(this.#i.debug("unsold inventory!"),this.#b=!0,void this.#ut()):200!==e.status&&202!==e.status?(this.#i.error(`response status ${e.status} not recognised!`),void this.#ut()):(this.#b=!0,t=await e.json(),t=se(t),this.#i.debug("response data:",t),202===e.status?(t.hp&&this.#gt(t.hp),t.hs&&this.#Ke(t.hs),t.capped_ttl?(this.#i.debug("capped!"),void this.#lt(t.capped_ttl)):void this.#ut()):(t.hp&&this.#gt(t.hp),t.hs&&this.#Ke(t.hs),t.fallback?this.#rt(t.fallback)?void this.#i.debug("fallback rendered. exit!"):void this.#ut():(this.#qe(),this.#t.refreshRate=t.rr,this.#v&&(t.impression_url&&(t.impression_url+=this.#v),t.click_url&&(t.click_url+=this.#v)),2===t.type?this.#ct?this.#i.debug("custom ipp html already present"):this.#pt({script:t.script||"",link:t.click_url,impressionLink:t.impression_url||null}):(this.#at.push({title:t.title||"",description:t.description||"",icon:t.icon||t.image,link:t.click_url,impressionLink:t.impression_url||null}),this.#ft()),void this.#dt())))}#ht(){return this.#ct?this.#at.length+1:this.#at.length}#rt(e){this.#i.debug("fallback script str decoded:",e);const t=(new DOMParser).parseFromString(e,"text/html").querySelector("script");if(!t)return this.#i.error("invalid fallback script. move on"),!1;this.#i.debug("fallback script:",t);const i=document.createElement("script");for(const e of t.attributes)i.setAttribute(e.name,e.value);return i.src||(i.textContent=t.textContent),document.body.appendChild(i),!0}#gt(e){if(this.#ot)return void this.#i.debug("hp already attached");if(this.#t.isAutoTag)return void this.#i.debug("hp not allowed when autotag");this.#ot=!0,this.#i.debug("attach hp. hp data:",e);const t={zoneId:e.pop_zone_id.toString(),linkedZoneId:e.source_zone_id.toString(),isHPop:!0};var i;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=We()(i=e.attributes["country-list"]).call(i).split(","),t.triggerOnTargetCountries="allow"===e.attributes["country-action"])),this.#s.runPop(t)}#Ke(e){if(this.#Be)return void this.#i.debug("hs already attached!");if(this.#t.isAutoTag)return void this.#i.debug("hs not allowed when autotag");this.#Be=!0,this.#i.debug("attach hs!"),this.#i.debug("hs data:",e);const t={zoneId:e.slider_zone_id.toString(),linkedZoneId:e.source_zone_id.toString()};this.#s.runVideoSlider(t)}#pt(e){this.#ct=e;const t=(new DOMParser).parseFromString(this.#ct.script,"text/html").querySelector("script"),i=document.createElement("script");if(t)for(const e of t.attributes)i.setAttribute(e.name,e.value);i.src||(i.innerText=t.innerText);const r=()=>{this.#i.debug("CT-CLICK"),fetch(this.#ct.link,{mode:"no-cors"}),document.removeEventListener("ct-click",r)},n=()=>{this.#i.debug("CT-CLOSE"),document.removeEventListener("ct-click",r),document.removeEventListener("ct-close",n),this.#ct=null,document.body.removeChild(i)};S(document,"ct-click",r),S(document,"ct-close",n);let s=this.#ct.impressionLink;window[Je]&&(s+=`&utsid=${window[Je]}`),s+=`&cbpage=${encodeURIComponent(I())}`,s+=`&cbref=${encodeURIComponent($())}`,(async()=>{try{await fetch(s.toString())}catch(e){return this.#i.debug(e),void(this.#t.adblockSettings&&!this.#s.isAdbMode()&&(this.#i.debug("imp failed: try alt domain and path"),this.#s.enableAdbMode()))}document.dispatchEvent(new CustomEvent("impression-event"))})(),i.onerror=()=>{this.#i.debug("custom html script failed to load"),this.#ct=null},document.body.appendChild(i)}#ft(){var e,t;this.#i.debug("drawing.."),x()(e=this.#at).call(e,(e=>{let{htmlElement:t}=e;t&&t.remove()})),x()(t=this.#at).call(t,((e,t)=>{const i=document.createElement("in-page-message");i.setAttribute("doskip","1"),i.setAttribute("id",t.toString()),i.setAttribute("data-icon",e.icon),i.setAttribute("data-title",e.title),i.setAttribute("data-description",e.description),i.setAttribute("data-offset-top",this.#t.offsetTop),i.setAttribute("data-render-pos-desktop",this.#t.renderPosDesktop),i.setAttribute("data-render-pos-mobile",this.#t.renderPosMobile),e.impressionLink&&(i.setAttribute("data-imp-link",e.impressionLink),e.impressionLink=null,document.dispatchEvent(new CustomEvent("impression-event"))),i.addEventListener(Qe,(()=>{var r;if(J||this.#t.adblockSettings&&this.#s.isAdbMode()){const t=document.createElement("a");t.href=e.link,t.rel="noopener, noreferrer",t.target="_blank",t.click()}else try{window.open(e.link,"_blank","noopener,noreferrer")}catch{}i.remove(),Ge()(r=this.#at).call(r,t,1),this.#ft()})),i.addEventListener(Ye,(()=>{var e;i.remove(),Ge()(e=this.#at).call(e,t,1),this.#ft()})),e.htmlElement=i,document.body.appendChild(i)}))}},Banner:class{#s;#t={};#i;#mt="";#vt;#l=null;#bt=null;#yt=null;#wt=null;#kt;#At;#m="adexchangeclear.com";#ye="velocecdn.com";#Tt;#o;#T=!1;#Be=!1;#k="66.0";constructor(e){this.#i=new a(`banner_${e.zoneId}`),this.#s=window[e.adcashGlobalName],this.#i.debug("init banner with config:",e),this.#t=e,this.#l=this.#t.zoneId,this.#bt=this.#t.width,this.#yt=this.#t.height,this.#wt=this.#t.renderIn,this.#o=this.#t.adblockSettings,this.#t.currentScript&&(this.#Tt=this.#t.currentScript),this.#kt=this.#At=document.body.clientWidth||window.innerWidth,e.tagVersionSuffix&&(this.#k+=e.tagVersionSuffix),this.#i.debug("tag version:",this.#k),this.#xt()}#St(){const e=this.#vt.impression_url;(new Image).src=e}async#xt(){this.#i.debug("get initial ad and config"),this.#mt=await E(this.#i);const e=await this.#Ct();let t;this.#i.debug("URL to fetch",e);try{t=await fetch(e)}catch(e){return this.#i.error(e),this.#o&&!this.#T?(this.#i.debug("fetch failed: try alt domain and path"),this.#T=!0,this.#s.enableAdbMode(),void this.#xt()):this.#s.isAdbMode()?void this.#i.debug("fetch failed: alt domain and path blocked. exit"):void this.#i.debug("fetch failed. exit")}if(200===t.status||202===t.status){this.#i.debug("initial fetch received 200 or 202");const e=await t.json();this.#vt=se(e),this.#Et(),this.#vt.hs&&this.#Ke(this.#vt.hs)}else 204===t.status&&this.#i.debug("initial fetch received 204. No inventory")}async#Ct(){let e=`${window.location.protocol}//${this.#m}/script/banner.php`;if(this.#o&&this.#s.isAdbMode()){const{adserverDomain:t}=this.#o,i=`/${ee("abcdefgh0123456789")}`;e=`${window.location.protocol}//${t}${i}`}return e+=`?r=${this.#l}`,e+=`&cbpage=${encodeURIComponent(I())}`,e+=`&cbref=${encodeURIComponent($())}`,e+=`&cbdescription=${encodeURIComponent(F("description"))}`,e+=`&cbkeywords=${encodeURIComponent(F("keywords"))}`,e+=`&cbtitle=${encodeURIComponent(U())}`,e+=`&srs=${L()}`,e+=`&ufp=${encodeURIComponent(this.#t.uniqueFingerprint)}`,e+=`&atv=${this.#k}`,this.#t.sub1&&(e+=`&sub1=${encodeURIComponent(this.#t.sub1)}`),this.#o&&this.#s.isAdbMode()?(e+="&sadbl=2",e+="&fmt=bnr",te(e)):e}#Et(){if(!this.#vt||"undefined"===this.#vt)return;if(this.#vt.hp&&(this.#It(this.#vt.hp),1===it()(this.#vt).length))return;if(this.#vt.capped_ttl)return void this.#i.debug("capped");let e;e=this.#wt?document.querySelector(this.#wt):this.#t.currentElement?this.#t.currentElement:this.#Tt.parentElement,this.#Rt(e);const t=this.#Ot();e.appendChild(t)}#Ot(){let e;return this.#vt.fallback?(this.#i.debug("Banner type - fallback"),e=this.#Lt()):1===this.#vt.render_image?(this.#i.debug("Banner type - image"),e=this.#Pt()):(this.#i.debug("Banner type - html"),e=this.#Nt()),this.#vt.fallback||this.#St(),this.#s||this.#Ut(),e}#Pt(){const e=document.createElement("a");e.href=this.#vt.click_url,e.target="_blank",e.rel="noopener, noreferrer",e.style.display="block",e.style.width=`${this.#bt?this.#bt:this.#vt.width}px`,e.style.height=`${this.#yt?this.#yt:this.#vt.height}px`,e.style.position="relative",e.style.top=0,e.style.left=0,e.style.right=0,e.style.bottom=0,e.setAttribute("doskip","1"),e.setAttribute(Ce,"1");const t=document.createElement("img");if(t.src=this.#vt.image_url,t.target="_blank",t.width=this.#bt?this.#bt:this.#vt.width,t.height=this.#yt?this.#yt:this.#vt.height,this.#vt.width>this.#kt&&this.#vt.force_resize){const i=(this.#bt?this.#bt:this.#vt.width)/this.#At;e.style.width=`${this.#At}px`,e.style.height=`${Math.round((this.#yt?this.#yt:this.#vt.height)/i)}px`,t.style="max-width: 100%;",t.width=this.#At,t.height=Math.round((this.#yt?this.#yt:this.#vt.height)/i)}return e.appendChild(t),e}#Nt(){const e=document.createElement("div");e.id=`b_${this.#l}`,e.style.display="block",e.style.width=`${this.#bt?this.#bt:this.#vt.width}px`,e.style.height=`${this.#yt?this.#yt:this.#vt.height}px`,e.style.position="relative",e.style.inset="0",e.setAttribute("doskip","1");const t=document.createElement("iframe");t.srcdoc=this.#vt.html,t.style.zIndex=10,t.style.height="100%",t.style.width="100%",t.style.border="none",t.setAttribute("sandbox","allow-scripts"),t.setAttribute("referrerpolicy","no-referrer");const i=document.createElement("div");return i.style.top=0,i.style.left=0,i.style.width="100%",i.style.height="100%",i.style.position="absolute",i.style.zIndex=11,i.style.backgroundColor="transparent",i.addEventListener("click",(e=>{this.#i.debug(`${e.type} on overlay`),this.#i.debug("click recorded:",this.#vt.click_url),window.open(this.#vt.click_url,"_blank","noopener,noreferrer")})),e.appendChild(t),e.appendChild(i),e}#Lt(){const e=`b_${this.#l}`,t=document.createElement("iframe");return t.id=e,t.style.border="medium none",t.style.padding="0",t.style.margin="0",t.style.width=`${this.#bt?this.#bt:this.#vt.width}px`,t.style.height=`${this.#yt?this.#yt:this.#vt.height}px`,t.width=this.#bt?this.#bt:this.#vt.width,t.height=this.#yt?this.#yt:this.#vt.height,t.scrolling="no",t.vspace="0",t.hspace="0",t.allowtransparency="true",t.allowfullscreen="true",t.srcdoc=this.#vt.fallback,t}#Ke(e){if(this.#Be)return void this.#i.debug("hs already attached!");this.#Be=!0,this.#i.debug("attach hs!"),this.#i.debug("hs data:",e);const t={zoneId:e.slider_zone_id.toString(),linkedZoneId:e.source_zone_id.toString()};this.#s.runVideoSlider(t)}#It=e=>{if(this.#s){const i={zoneId:e.pop_zone_id.toString(),linkedZoneId:e.source_zone_id.toString()};var t;return 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=We()(t=e.attributes["country-list"]).call(t).split(","),i.triggerOnTargetCountries="allow"===e.attributes["country-action"])),void this.#s.runPop(i)}const i=document.createElement("script");var r;i.type="text/javascript",i.src=`//${this.#ye}/script/suv4.js`,i.setAttribute("zid",e.pop_zone_id),i.setAttribute("lpzi",e.source_zone_id),i.setAttribute("data-adel","lwsu"),i.setAttribute("adlm","ipvipplm"),e.attributes&&x()(r=it()(e.attributes)).call(r,(t=>{i.setAttribute(t,e.attributes[t])})),document.body.appendChild(i)};#Rt(e){if(this.#i.debug("Initial viewport:",this.#kt),this.#vt.width>this.#kt&&this.#vt.force_resize){var t=window.getComputedStyle(e),i=nt()(t.paddingLeft),r=nt()(t.marginLeft);this.#At=e.clientWidth-i-r,this.#i.debug("Parent element width:",this.#At)}}#Ut(){const e=document.createElement("a");e.style.display="none",e.style.visibility="hidden",e.style.position="relative",e.style.left="-1000px",e.style.top="-1000px",e.href=this.#vt.bot_link,document.body.appendChild(e)}},VideoSlider:class{#s;#i;#$t=5;#Ft=!0;#t={};#zt={};#Dt;#Bt="";#b=!1;#k="66.0";#v="";#S="";#Mt;#Vt;#Ht=null;#jt=null;#ot=!1;constructor(e){if(this.#i=new a("slider_alt"),this.#t=e,this.#s=window[e.adcashGlobalName],this.#S=e.uniqueFingerprint,this.#Bt=`${window.location.protocol}//${this.#t.adserverDomain}`,this.#Mt=J?320:426,this.#Vt=J?180:240,this.#t.isPreviewMode)return this.#zt.renderPosition="right",this.#zt.closeButtonDelay=10,void this.#He().catch((e=>{this.#i.error(e)}));this.#t.tagVersionSuffix&&(this.#k+=this.#t.tagVersionSuffix),this.#s.getClientHints(!1).then((e=>(this.#v=e,this.#_t()))).then((()=>{var e;this.#zt.hp&&this.#gt(this.#zt.hp),s()(t()(e=this.#He).call(e,this),this.#zt.delay)})).catch((e=>{this.#i.error(e)}))}#Wt(){let e=`${this.#Bt}/video/slider.php`;if(this.#t.adblockSettings&&this.#s.isAdbMode()){const{adserverDomain:t}=this.#t.adblockSettings,i=`/${ee("abcdefgh0123456789")}`;e=`${window.location.protocol}//${t}${i}`}return e+=`?r=${this.#t.zoneId}`,e+=`&atv=${this.#k}`,this.#t.adblockSettings&&(e+="&abtg=1"),this.#t.adblockSettings&&this.#t.adblockSettings.adbVersion&&(e+=`&adbv=${this.#t.adblockSettings.adbVersion}`),this.#t.adblockSettings&&this.#s.isAdbMode()&&(e+="&sadbl=2",e+="&fmt=vid",e=te(e)),e}async#_t(){let e=0,t=1;for(;e<3;)try{let e=await fetch(this.#Wt());if(200!==e.status)throw new Error(`HTTP Error. Status: ${e.status}: ${e.statusText}`);return e=await e.json(),this.#zt=se(e),void this.#i.debug("Zone config loaded:",this.#zt)}catch(i){this.#i.error("Error fetching zone config",i),this.#t.adblockSettings&&!this.#s.isAdbMode()&&this.#s.enableAdbMode(),this.#i.debug(`Retry in ${t}s`),await oe(1e3*t),t*=5,e++}throw new Error("Failed to fetch zone configuration after 3 attempts")}async#He(){let e;try{e=await this.#qt()}catch(e){return this.#i.error("Get VAST Ad error:",e),void this.#i.debug("exit")}this.#b=!0,this.#Zt(e)}#Gt(){let e=`${this.#Bt}/video/select.php`;if(this.#t.adblockSettings&&this.#s.isAdbMode()){const{adserverDomain:t}=this.#t.adblockSettings,i=`/${ee("abcdefgh0123456789")}`;e=`${window.location.protocol}//${t}${i}`}return e+=`?r=${this.#t.zoneId}`,this.#t.sub1&&(e+=`&sub1=${encodeURIComponent(this.#t.sub1)}`),this.#b&&(e+="&rbd=1"),this.#v&&(e+=this.#v),this.#s.isSandboxed()&&(e+="&sbx=1"),e=`${e}&srs=${this.#s.getSesionRandomString()}&ufp=${encodeURIComponent(this.#S)}&cbpage=${encodeURIComponent(I())}&atv=${this.#k}&cbref=${encodeURIComponent($())}`,this.#t.adblockSettings&&(e+="&abtg=1"),this.#t.adblockSettings&&this.#t.adblockSettings.adbVersion&&(e+=`&adbv=${this.#t.adblockSettings.adbVersion}`),this.#t.adblockSettings&&this.#s.isAdbMode()?(e+="&sadbl=2",e+="&fmt=vast",this.#i.debug(`bid url: ${e}`),te(e)):(this.#i.debug("bid url:",e),e)}#Kt(e){if(!e||0===e.length)return null;const t=window.innerWidth,i=navigator.connection||navigator.mozConnection||navigator.webkitConnection,r=i?i.effectiveType:"4g";this.#i.debug("network speed",r),ot()(e).call(e,((e,t)=>Number(t.width)-Number(e.width)));let n=e[e.length-1];for(const i of e)if(Number(i.width)<=t){n="slow-2g"===r||"2g"===r?e[e.length-1]:"3g"===r?ct()(e).call(e,(e=>Number(e.width)<=480))||n:i;break}return this.#i.debug("file selected",n),n.fileURL}async#qt(){var e;const t=this.#Gt();let i;if(this.#i.debug("Fetching VAST ad from:",t),this.#jt=new Qt,this.#t.isPreviewMode){const e=(new DOMParser).parseFromString(this.#t.vastXml,"application/xml");i=await this.#jt.parseVAST(e)}else try{i=await this.#jt.get(t)}catch(e){if(this.#i.error("Error fetching VAST ad",e),this.#t.adblockSettings&&!this.#s.isAdbMode())return this.#s.enableAdbMode(),this.#qt()}if(this.#i.debug("Res:",i),!i||!i.ads.length)throw new Error("No ads found in VAST response");const r=i.ads[0];this.#i.debug("Ad:",r);const n=ct()(e=r.creatives).call(e,(e=>"linear"===e.type));if(!n||!n.mediaFiles.length)throw new Error("No valid media file found in VAST response");this.#i.debug("Creative:",n),n.skipDelay&&n.skipDelay>-1?(this.#i.debug("Skip delay present:",n.skipDelay),this.#$t=n.skipDelay):this.#$t=this.#zt.closeButtonDelay;const s=this.#Kt(n.mediaFiles);if(!s)throw new Error("No suitable media file found.");this.#i.debug("Media file selected:",s);const o=n.videoClickThroughURLTemplate?.url||null;if(!o)throw new Error("No Clickthrough URL found!");return{mediaFileURL:s,clickThroughURL:o,ad:r,creative:n}}#Zt(e){const{mediaFileURL:t,clickThroughURL:i,ad:r,creative:n}=e;this.#Dt=document.createElement("div"),this.#Dt.setAttribute("doskip","1");const o=this.#Dt.attachShadow({mode:"open"}),a=((e,t,i)=>{const r=document.createElement("div");return r.style.position="fixed",r.style.bottom="10px",r.style.width=`${e}px`,r.style.height=`${t}px`,r.style.background="black",r.style.borderRadius="8px",r.style.overflow="hidden",r.style.zIndex="2147483645",r.style.boxShadow="0px 4px 8px rgba(0, 0, 0, 0.2)",r.style.cursor="pointer","left"===i?(r.style.left="0px",r.style.transform="translateX(-100%)"):(r.style.right="0px",r.style.transform="translateX(100%)"),r.style.willChange="transform",r.style.transition="transform 0.5s ease-in-out",r})(this.#Mt,this.#Vt,this.#zt.renderPosition);this.#i.debug("video src",t);const c=document.createElement("video");c.src=t,c.width=this.#Mt,c.height=this.#Vt,c.muted=!0,c.style.borderRadius="8px",c.style.objectFit="cover",c.style.display="block",c.controls=!1,c.setAttribute("playsinline",""),c.setAttribute("webkit-playsinline",""),c.setAttribute("autoplay",""),c.setAttribute("preload","auto"),this.#Ht=new Yt(null,r,n);let l=!1;c.addEventListener("play",(()=>{l||(this.#Ht.track("start"),this.#Ht.trackImpression(),this.#Ht.track("creativeView"),l=!0)}));const d={first:!1,mid:!1,third:!1};c.addEventListener("timeupdate",(()=>{const e=c.currentTime/c.duration;e>=.25&&!d.first&&(this.#Ht.track("firstQuartile"),d.first=!0),e>=.5&&!d.mid&&(this.#Ht.track("midpoint"),d.mid=!0),e>=.75&&!d.third&&(this.#Ht.track("thirdQuartile"),d.third=!0)})),c.addEventListener("ended",(()=>{this.#i.debug("video ended"),this.#Ht.track("complete"),this.#Qt()})),c.addEventListener("error",(e=>{this.#i.error("video error",e),this.#Qt()}));const u=(()=>{const e=document.createElement("div");e.style.position="absolute",e.style.top="50%",e.style.left="50%",e.style.transform="translate(-50%, -50%)",e.style.background="rgba(0, 0, 0, 0.5)",e.style.borderRadius="50%",e.style.padding="10px",e.style.display="flex",e.style.alignItems="center",e.style.justifyContent="center";const t=document.createElement("div");t.style.width="30px",t.style.height="30px",t.style.border="3px solid rgba(255, 255, 255, 0.3)",t.style.borderTop="3px solid white",t.style.borderRadius="50%";const i=e.attachShadow({mode:"open"}),r=document.createElement("style");return r.textContent="\n @keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n }\n div {\n animation: spin 1s linear infinite;\n }\n ",i.appendChild(r),i.appendChild(t),e.style.display="none",e})();c.addEventListener("waiting",(()=>{this.#i.debug("video waiting"),u.style.display="block"})),c.addEventListener("stalled",(()=>{this.#i.debug("video stalled")})),c.addEventListener("playing",(()=>{u.style.display="none"})),a.addEventListener("click",(e=>{e.preventDefault(),e.stopPropagation(),i&&(this.#Ht.track("clickthrough"),window.open(i,"_blank","noopener,noreferrer"))}));let h=!1;c.addEventListener("canplaythrough",(()=>{this.#i.debug("canplaythrough triggered"),h||(this.#i.debug("Video loaded successfully, showing ad..."),((e,t,i,r,n)=>{const s=performance.now();requestAnimationFrame((function t(r){const o=r-s,a=Math.min(o/300,1),c=0+a*(2-a)*(i-0);e.style[n]=`${c}px`,a<1&&requestAnimationFrame(t)}))})(a,0,this.#Mt+10,0,"left"===this.#zt.renderPosition?"left":"right"),h=!0)}));const g=(()=>{const e=document.createElement("div");return e.innerHTML=Jt,e.style.position="absolute",e.style.top="5px",e.style.left="5px",e.style.cursor="pointer",e.style.background="rgba(0,0,0,0.5)",e.style.width="32px",e.style.height="32px",e.style.display="flex",e.style.alignItems="center",e.style.justifyContent="center",e.style.borderRadius="50%",e})();g.onclick=e=>{this.#i.debug("mute button click"),e.stopPropagation(),c.muted=!c.muted,g.innerHTML=c.muted?Jt:'\n\n\n\n',this.#Ht.track(c.muted?"mute":"unmute")};const p=((e,t)=>{const i=document.createElement("div");if(i.style.position="absolute",i.style.top="5px",i.style.right="5px",i.style.cursor="default",i.style.overflow="hidden",i.style.color="white",i.disabled=!0,e){i.style.height="24px",i.style.display="flex",i.style.alignItems="center",i.style.justifyContent="center",i.style.borderRadius="8px",i.style.background="rgba(0,0,0,0.5)",i.style.padding="4px 10px",i.style.fontFamily="'Arial', sans-serif",i.style.fontWeight="bold",i.style.letterSpacing="0.5px",i.style.fontSize="13px",i.style.whiteSpace="nowrap",i.style.gap="6px";let e=Math.ceil(t/1e3);i.innerHTML=`Close ad in ${e}`;const r=he()((()=>{e-=1,e>0?i.innerText=`Close ad in ${e}`:(clearInterval(r),i.innerHTML=`Close ad ${Xt(!1)}`,i.style.background="rgba(0,0,0,0.5)",i.style.cursor="pointer",i.disabled=!1)}),1e3)}else i.style.width="32px",i.style.height="32px",i.style.display="flex",i.style.alignItems="center",i.style.justifyContent="center",i.style.borderRadius="50%",i.style.background="rgba(255,255,255,0.3)",i.innerHTML=Xt(!0);return s()((()=>{e||(i.innerHTML=Xt(!1),i.style.background="rgba(0,0,0,0.5)",i.style.cursor="pointer",i.disabled=!1)}),t),i})(this.#Ft,1e3*this.#$t);p.onclick=e=>{this.#i.debug("close button click"),p.disabled?e.stopPropagation():(e.stopPropagation(),c.ended||this.#Ht.track("skip"),this.#Ht.track("close"),this.#Qt())},a.appendChild(u),a.appendChild(c),a.appendChild(g),a.appendChild(p),o.appendChild(a),document.body.appendChild(this.#Dt)}#Qt(){var e;this.#Dt.remove(),this.#Dt=null,this.#Ht=null,this.#jt=null,this.#t.isPreviewMode||(this.#zt.refreshRate>0?(this.#i.debug(`try bidding again after ${this.#zt.refreshRate}s`),s()(t()(e=this.#He).call(e,this),1e3*this.#zt.refreshRate)):this.#i.debug("no rr. exit"))}#gt(e){if(this.#ot)return void this.#i.debug("hp already attached");this.#ot=!0,this.#i.debug("attach hp. hp data:",e);const t={zoneId:e.pop_zone_id.toString(),linkedZoneId:e.source_zone_id.toString()};var i;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=We()(i=e.attributes["country-list"]).call(i).split(","),t.triggerOnTargetCountries="allow"===e.attributes["country-action"])),this.#s.runPop(t)}}}}))}()}();