\n\n\n',Xt=e=>{const t=e?"gray":"white";return``},ei=1e3;var ti=o(3128),ii=o.n(ti),ri=o(8075),ni=o.n(ri),si=o(8462),oi=o.n(si),ai=o(653),ci=o.n(ai),li=o(7950),di=o.n(li);const ui=e=>"boolean"==typeof e,hi=e=>oi()(e),gi=e=>"[object String]"===Object.prototype.toString.call(e),pi=e=>{var t;return di()(t=["top","bottom","top-left","top-right","bottom-left","bottom-right"]).call(t,e)};const fi=()=>Math.round((new Date).getTime()/1e3);var mi=e=>{const t=new a("user_engagement"),i="utsid-send";let n,o=0,c=!1,l=!1,d={clientHints:{},isScrollable:0,totalClicks:0,sessionLength:0,ippMissclicks:0,visible:0,caught:0,lastevent:0,isFullscreen:0,isTabFocused:0,eventImps:0,retryCounts:0,isScrolled:0,isMouseMoved:0,pagePercentageSeen:0,belowTheFoldSeen:0,touchEnd:0,touchMove:0,clicksByType:{idle:0,input:0,video:0,button:0,link:0,img:0},browsingTopics:[],ufp:ie()},u=O(),g=fi();function p(){var i,r;0===d.isFullscreen&&(d.isFullscreen=document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement?1:0),d.isTabFocused=document.hidden||document.mozHidden||document.webkitHidden?0:1,d.sessionStartTime=g,d.sessionId=u,d.sessionLength=fi()-g,d.timeZoneOffset=(new Date).getTimezoneOffset(),d.zones=[],e&&(d.zones=e.getZoneIds()),d.pUrl=encodeURIComponent(I()),d.pReferrer=encodeURIComponent((()=>{const e=document.referrer;return e?L(e):""})()),d.pTitle=encodeURI(U()),d.pDescription=encodeURIComponent(F("description",t)),d.pKeywords=encodeURIComponent(F("keywords",t)),d.pHasIframes=(()=>{const e=document.getElementsByTagName("iframe");return e.length?e.length:0})(),d.pWidth=Math.ceil(window.scrollWidth||document.body.scrollWidth),d.pHeight=Math.ceil(window.scrollHeight||document.body.scrollHeight),d.vWidth=Math.ceil(window.innerWidth||document.body.clientWidth),d.vHeight=Math.ceil(window.innerHeight||document.body.clientHeight),d.inIframe=R(),sessionStorage.getItem("template")&&(d.ippTemplate=sessionStorage.getItem("template")),d.visible=(i=d.vWidth,r=d.vHeight,R()&&(i<10||r<10)?0:1),d.caught=(()=>{let e=0;if(R())try{window.top.location.href}catch(t){e=1}return e})(),d.isScrollable=((e,t)=>{if(e>t){const i=.05;return e-t>Math.ceil(t*i)?1:0}return 0})(d.pHeight,d.vHeight)}function f(){t.debug("Touch move detected."),d.touchMove++,l=!0}function m(){1!==d.isMouseMoved&&(t.debug("Mouse move tracked"),d.isMouseMoved=1,l=!0)}function v(){t.debug("Touch end detected."),d.touchEnd++,l=!0,b()}function b(){if(t.debug("checkScrolling()"),d.pHeight<=d.vHeight)return d.pagePercentageSeen=100,void(d.belowTheFoldSeen=100);var e=Math.ceil(window.scrollTop||document.body.scrollTop),i=Math.ceil((e+d.vHeight)/d.pHeight*100);i>100&&(i=100),i!=d.pagePercentageSeen&&(t.debug("Scroll event detected."),d.isScrolled=1,l=!0),i>d.pagePercentageSeen&&(t.debug("Page percentage seen updated."),d.pagePercentageSeen=i,l=!0);var r=Math.ceil(e/(d.pHeight-d.vHeight)*100);r>100&&(r=100),r>d.belowTheFoldSeen&&(t.debug("Bellow the fold percentage seen updated."),d.belowTheFoldSeen=r,l=!0)}function y(){d.ippMissclicks++,l=!0}function w(e){t.debug("Click tracked"),d.totalClicks++;var i=e.target,r=null;do{null!==r&&""!==r||(r=k(i)),i=i.parentElement}while(i&&"body"!==i.nodeName.toLowerCase()&&"document"!==i.nodeName.toLowerCase());null===r&&(r="idle"),d.clicksByType[r]++,l=!0}function k(e){var t=null,i=["a","video","button","input","textarea","img","select"];return-1!==h()(i).call(i,e.nodeName.toLowerCase())&&("a"===(t=e.nodeName.toLowerCase())?t="link":"textarea"!==t&&"select"!==t||(t="input")),t}function A(){t.debug("Impression tracked"),d.eventImps++}function T(){t.debug("Retry tracked!"),d.retryCounts++}function x(){var e="//usrpubtrk.com/ut/hb.php?cb="+Math.random();return e+="&v=1",t.debug("Target Url: "+e.toString()),e}function S(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!c){if(c=!0,p(),e&&(d.lastevent=1),t.isDebugEnabled&&t.debug("send payload:",JSON.parse(Fe()(d))),"navigator"in window&&"sendBeacon"in window.navigator&&void 0!==navigator.sendBeacon&&void 0!==Blob){d.sentTimestamp=r()();var i=new Blob([Fe()(d)],{type:"text/plain; charset=UTF-8"});navigator.sendBeacon(x(),i)}else{var n="XMLHttpRequest"in window?new XMLHttpRequest:new ActiveXObject("Microsoft.XMLHTTP");n.open("POST",x(),!0),n.setRequestHeader("Content-Type","text/plain;charset=UTF-8");try{d.sentTimestamp=r()(),n.send(Fe()(d))}catch(e){}}d.lastevent=0,c=!1}}function C(){t.debug("visibility state is",document.visibilityState),"hidden"===document.visibilityState&&l?(clearInterval(n),S(),l=!1):"visible"===document.visibilityState&&(n=he()(N,6e4))}function P(){var e=new CustomEvent(i,{detail:{issued:"UT",data:{utsid:u}}});document.dispatchEvent(e)}function N(){if(d.sessionLength=fi()-g,d.sessionLength>=7200)return t.debug("Session limit reached! Send last payload and tear down"),S(),clearInterval(n),t.debug("detaching behavior listeners"),document.removeEventListener("click",w,!1),document.removeEventListener("mousemove",m,!1),document.removeEventListener("scroll",b,!1),document.removeEventListener("in-page-missclick",y,!1),document.removeEventListener("impression-event",A,!1),document.removeEventListener("impression-retry-event",T,!1),document.removeEventListener("touchend",v,!1),document.removeEventListener("touchmove",f,!1),document.removeEventListener("touchcancel",b,!1),document.removeEventListener("visibilitychange",C),void window.removeEventListener("beforeunload",S);0!==o&&1!==o&&5!==o&&10!==o&&o%30!=0||S(),o++}!async function e(){if("complete"===document.readyState||"interactive"===document.readyState)return d.clientHints=await E(t,true),d.browsingTopics=await async function(){let e=[];if("browsingTopics"in document&&document.featurePolicy.allowsFeature("browsing-topics"))try{e=await document.browsingTopics(),t.debug("document.browsingTopics() return value:",e)}catch(e){t.debug("Error calling document.browsingTopics(): ",e)}return e}(),"ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0?(document.addEventListener("touchend",v,!1),document.addEventListener("touchmove",f,!1),document.addEventListener("touchcancel",b,!1)):(document.addEventListener("mousemove",m,!1),document.addEventListener("scroll",b,!1)),document.addEventListener("click",w,!1),document.addEventListener("impression-event",A,!1),document.addEventListener("impression-retry-event",T,!1),document.addEventListener("in-page-missclick",y,!1),p(),b(),0===o&&N(),n=he()(N,6e4),window[i]=u,P(),s()(P,2e4),document.addEventListener("visibilitychange",C),void window.addEventListener("beforeunload",(()=>{S(!0)}));s()(e,100)}()},vi=o(3038),bi=o.n(vi);const yi="sandboxedDetector";var wi=class{#i;#ue;#he;#ge=!1;#pe=!1;#fe=!1;constructor(e,t,i){this.#i=e,this.#ue=t,this.#he=i}isSandboxed(){return this.#pe}load(){var e;if(this.#ge)return void this.#i.debug("already checked");if(this.#ge=!0,this.#i.debug("load sandbox detector"),!R())return void this.#i.debug("not in iframe. exit");this.#i.debug("iframe detected");const i=this.#he.getState();if(i&&i.expiresAt>r()())return this.#i.debug("previous state present. Expires at:",new Date(i.expiresAt)),i.isSandboxed?(this.#i.debug("sandboxed recently! show overlay"),void(this.#pe=!0)):void this.#i.debug("not sandboxed recently. dont check further");this.#i.debug("attach detector listener to events");const n={zoneId:yi,callback:t()(e=this.#me).call(e,this)};J||this.#ue.subscribe("mousedown",n,!0),this.#ue.subscribe("click",n,!0)}#me(e){if(!e.isTrusted)return void this.#i.debug(`${e.type} on ${e.target.tagName}. Detector skipped: event is not trusted`,e);if(this.#ue.isShowingPop)return void this.#i.debug("detector skipped: pop being currently shown");this.#ue.isShowingPop=!0,this.#i.debug("detector taking action. prevent other pops from showing");let t=null;try{t=window.open("about:blank","_blank")}catch(e){this.#i.error("detector error",e)}t&&t.close(),null===t&&(this.#i.debug("sandbox detected"),this.#pe=!0),this.#he.setState({expiresAt:r()()+36e5,isSandboxed:this.#pe}),J||this.#ue.unsubscribe("mousedown",yi,!0),this.#ue.unsubscribe("click",yi,!0),s()((()=>{this.#ue.isShowingPop=!1}),300)}showSandboxWarningOverlay(){this.#fe||(this.#fe=!0,this.#i.debug("show sandbox warning overlay"),this.#ve())}#be(){const e=document.createElement("div");e.id="sbxwo",bi()(e.style,{position:"fixed",top:0,left:0,width:"100%",height:"100%",backgroundColor:"rgba(0, 0, 0, 0.8)",color:"#fff",zIndex:1e4,display:"flex",alignItems:"center",justifyContent:"center",flexDirection:"column",padding:"20px",boxSizing:"border-box",textAlign:"center"});const t=document.createElement("div");t.innerHTML="\n
Ad Functionality Blocked
\n
\n It looks like your page is running in a sandbox that blocks certain functionality.\n This setting is preventing our ads from working properly.\n Please disable the sandbox restrictions or adjust your settings.\n
\n To continue playing please remove Sandbox from iframe tab or add "allow-popups" to Sandbox\n
\n ',e.appendChild(t),document.body.appendChild(e)}};const ki="x4G9Tq2Kw6R7v1Dy3P0B5N8Lc9M2zF",Ai="ZpQw9XkLmN8c3vR3",Ti="adblock-settings",xi=(()=>{let e=document.currentScript;return e||(e=document.getElementById("aclib")),e||(e=document.getElementById("adcash-lib")),e})();let Si=null;var Ci=class{#ye;#we={pop:!1,autoTag:!1,inPagePush:!1,interstitial:!1,videoSlider:!1};#ke;#v;#Ae=new(ni());#Te=new(ni());#i;#xe=!1;#Se=!1;#Ce;#m="adexchangeclear.com";#k="69.0";#o=null;#Ee="aclib";#Ie;#Re=!1;isShowingPop=!1;#S;#Le=!1;#Oe={};#Pe;constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(Si)return Si;Si=this;let t="aclib";if(e.classes&&(this.#Oe=e.classes,t="aclib_adbl"),this.#i=new a(t),this.#Ce=(e=>{const t={mousedown:[],click:[],touchstart:[]},i={mousedown:[],scroll:[],click:[],touchstart:[]},r=i=>{var r;const n=i.currentTarget===window?"win":"doc";e.debug(`${n} mousedown with capture: in`),x()(r=t.mousedown).call(r,(t=>{e.debug(`${n} mousedown with capture: calling observer`),t.callback(i)}))},n=t=>{var r;const n=t.currentTarget===window?"win":"doc";e.debug(`${n} mousedown: in`),x()(r=i.mousedown).call(r,(i=>{e.debug(`${n} mousedown: calling observer`),i.callback(t)}))},s=i=>{var r;const n=i.currentTarget===window?"win":"doc";e.debug(`${n} click with capture: in`),x()(r=t.click).call(r,(t=>{e.debug(`${n} click with capture: calling observer`),t.callback(i)}))},o=t=>{var r;const n=t.currentTarget===window?"win":"doc";e.debug(`${n} click: in`),x()(r=i.click).call(r,(i=>{e.debug(`${n} click: calling observer`),i.callback(t)}))},a=e=>{var t;x()(t=i.scroll).call(t,(t=>{t.callback(e)}))};return{subscribe:(e,r,n)=>{if(!t[e]||!i[e])throw new Error(`${e} is not observable!`);n?t[e].push(r):i[e].push(r)},unsubscribe:(e,r,n)=>{if(!t[e]||!i[e])throw new Error(`${e} is not observable!`);if(n)for(let i=0;i{window.addEventListener("mousedown",r,!0),window.addEventListener("mousedown",n,!1),window.addEventListener("click",s,!0),window.addEventListener("click",o,!1),document.addEventListener("mousedown",r,!0),document.addEventListener("mousedown",n),document.addEventListener("click",s,!0),document.addEventListener("click",o),window.addEventListener("scroll",a)},detachListeners:()=>{window.removeEventListener("mousedown",r,!0),window.removeEventListener("mousedown",n,!1),window.removeEventListener("click",s,!0),window.removeEventListener("click",o,!1),document.removeEventListener("mousedown",r,!0),document.removeEventListener("mousedown",n),document.removeEventListener("click",s,!0),document.removeEventListener("click",o),window.removeEventListener("scroll",a)}}})(this.#i),this.#Ce.attachListeners(),this.getClientHints(),this.#Ie=O(),this.#S=ie(),this.#Pe=new wi(new a("sd"),Si,new ze("sndbxchckiborjforqp2")),this.#i.debug("init adcash lib. listeners attached. ready to publish"),this.#i.debug("is mobile device:",J),window[ki]&&(this.#o=JSON.parse(Fe()(window[ki])),this.#ye=this.#o.cdnDomain,delete window[ki]),window[Ai]&&(this.#o=JSON.parse(function(e){var t;let i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"xR9tB2pL6q7MwVe";const r=atob(e);return A()(t=[...r]).call(t,((e,t)=>String.fromCharCode(e.charCodeAt(0)^i.charCodeAt(t%i.length)))).join("")}(window[Ai])),this.#ye=this.#o.cdnDomain,delete window[Ai]),this.#o||(this.#ye=new(m())(xi.src).host,xi.hasAttribute(Ti)&&(this.#o=JSON.parse(xi.getAttribute(Ti)),xi.removeAttribute(Ti))),this.#o&&this.#i.debug("adblock settings:",this.#o),xi.getAttribute("data-preview"))return this.#i.debug("preview mode"),void(this.#Le=!0);this.#Ne(),this.#Ue(),this.#$e(),this.#Pe.load()}isSandboxed(){return this.#Pe.isSandboxed()}showSandboxWarningOverlay(){this.#Pe.showSandboxWarningOverlay()}async getClientHints(e){if(void 0===this.#ke){this.#ke=await E(this.#i,!0);let e="";for(const t in this.#ke)e+=`&${t}=${this.#ke[t]}`;this.#v=e}return e?this.#ke:this.#v}getCdnDomain(){return this.#ye}getSesionRandomString(){return this.#Ie}enableAdbMode(){this.#i.debug("enable adb mode"),this.#Re=!0}isAdbMode(){return this.#Re}subscribe(e,t,i){this.#Ce.subscribe(e,t,i)}unsubscribe(e,t,i){this.#Ce.unsubscribe(e,t,i)}#$e(){var e;if(document.body){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";let t=this.#m;return this.#o&&(t=this.#o.adserverDomain),e.href=`${location.protocol}//${t}/ad/visit.php?al=1`,void document.body.appendChild(e)}s()(t()(e=this.#$e).call(e,this),100)}#Ue(){mi(Si)}#Ne(){var e;if(document.head){let e=new(ni())([this.#ye,this.#m]);return this.#o&&e.add(this.#o.adserverDomain),e=w()(e),this.#i.debug("prefetch domains:",e),void x()(e).call(e,(e=>{const t=document.createElement("link");t.rel="dns-prefetch",t.href=`//${e}`,document.head.appendChild(t)}))}s()(t()(e=this.#Ne).call(e,this),100)}getZoneIds(){return w()(this.#Ae)}runPop(e){const{zoneId:t,delay:i,targetElementsCssSelector:r,triggerOnTargetElementsClick:n,targetCountries:s,triggerOnTargetCountries:o,sub1:a,sub2:c,publisherUrl:l,storeUrl:d,c1:u,c2:h,c3:g,pubHash:p,pubClickId:f,pubValue:m,fallbackOn:v,isAutoTag:b,collectiveZoneId:y,aggressivity:w,recordPageView:k,linkedZoneId:A,abTest:T,tagVersionSuffix:x}=e;if(!t)throw new Error("mandatory zoneId is not provided!");if(!gi(t))throw new Error("zoneId is not a string!");if(void 0!==i&&(!hi(i)||i<0))throw new Error("delay is not an integer or is less than zero");if(void 0!==r){if(!gi(r))throw new Error("targetElementsCssSelector is not a string");if(!(e=>{try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0})(r))throw new Error("targetElementsCssSelector is not a valid css selector");if(!ui(n))throw new Error("triggerOnTargetElementsClick is not a boolean")}if(void 0!==s){if(!(e=>{if(!ci()(e))return!1;if(0===e.length)return!1;for(let t=0;t{window.PopUnder&&(this.#Ae.add(S.zoneId),new PopUnder(S),clearInterval(e))}),100)}else{this.#i.debug("loading suv5 script on page"),this.#xe=!0;const e=document.createElement("script");e.type="text/javascript",e.src=`${location.protocol}//${this.#ye}/script/suv5.js`,e.onload=()=>{this.#we.pop=!0,this.#xe=!1,b?this.#Ae.add(y):this.#Ae.add(S.zoneId),new PopUnder(S)},e.onerror=()=>{this.#we.pop=!1,this.#xe=!1,this.#i.error(`failed loading ${e.src}`)},document.head.appendChild(e)}}runInPagePush(e){if(this.#we.inPagePush)return void this.#i.error("in-page push zone already loaded on page");this.#we.inPagePush=!0;const{zoneId:t,delay:i,maxAds:r,renderPosDesktop:n,renderPosMobile:s,offsetTop:o,sub1:a,isAutoTag:c,collectiveZoneId:l,linkedZoneId:d,aggressivity:u,recordPageView:h,abTest:g,tagVersionSuffix:p}=e;let{refreshRate:f}=e;if(!t)throw new Error("mandatory zoneId is not provided!");if(!gi(t))throw new Error("zoneId is not a string!");if(void 0!==f&&(!hi(f)||f<0))throw new Error("refreshRate is not an integer or is less than zero");if(void 0!==i&&(!hi(i)||i<0))throw new Error("delay is not an integer or is less than zero");if(void 0!==r&&(!hi(r)||r<1))throw new Error("maxAds is not an integer or is less than one");if(void 0!==n&&!pi(n))throw new Error("renderPosDesktop is not valid");if(void 0!==s&&!pi(s))throw new Error("renderPosMobile is not valid");if(void 0!==o&&(!hi(o)||o<0))throw new Error("offsetTop is not an integer or is less than zero");this.#i.debug("loading in-page push on page"),c?this.#Ae.add(l):this.#Ae.add(t),void 0!==f&&f>0&&f<10&&(f<5?f*=60:f=30),this.#i.debug("ipp rr set to",f);const m={zoneId:t,refreshRate:f??60,delay:i??0,maxAds:r??1,renderPosDesktop:n??"top",renderPosMobile:s??"top",offsetTop:o??0,sub1:a,isAutoTag:c,collectiveZoneId:l,linkedZoneId:d,aggressivity:u,recordPageView:h,abTest:g,tagVersionSuffix:p,adserverDomain:this.#m,adblockSettings:this.#o,adcashGlobalName:this.#Ee,isLoadedAsPartOfLibrary:!1,uniqueFingerprint:this.#S};if(this.#Oe.InPagePush)return m.isLoadedAsPartOfLibrary=!0,void new this.#Oe.InPagePush(m);if(window.InPagePush)new window.InPagePush(m);else{const e=document.createElement("script");e.type="text/javascript",e.src=`${window.location.protocol}//${this.#ye}/script/inpagepush.js`,e.setAttribute("nipp","1"),e.onload=()=>{new window.InPagePush(m)},e.onerror=()=>{this.#i.error(`failed loading ${e.src}`)},document.head.appendChild(e)}}runBanner(e){const{zoneId:t,width:i,height:r,renderIn:n,sub1:s,currentScript:o}=e;if(!t)throw new Error("mandatory zoneId is not provided!");if(!gi(t))throw new Error("zoneId is not a string!");if(void 0!==i&&!hi(i))throw new Error("Banner width is not an integer");if(void 0!==r&&!hi(r))throw new Error("Banner height is not an integer");let a;this.#i.debug("loading banner on page",t),n||(document.currentScript&&document.currentScript.parentElement&&(a=document.currentScript.parentElement),o&&(a=o.parentElement));const c={zoneId:t,width:i,height:r,renderIn:n,currentElement:a,sub1:s,adcashGlobalName:this.#Ee,uniqueFingerprint:this.#S,adblockSettings:this.#o};if(this.#Oe.Banner)new this.#Oe.Banner(c);else if(this.#we.banner||this.#Se){if(window.Banner)return this.#Ae.add(c.zoneId),void new Banner(c);const e=he()((()=>{window.Banner&&(this.#Ae.add(c.zoneId),new Banner(c),clearInterval(e))}),100)}else{this.#Se=!0;const e=document.createElement("script");e.type="text/javascript",e.src=`${location.protocol}//${this.#ye}/script/banner.js`,e.onload=()=>{this.#we.banner=!0,this.#Se=!1,this.#Ae.add(c.zoneId),new Banner(c)},e.onerror=()=>{this.#we.banner=!1,this.#Se=!1,this.#i.error(`failed loading ${e.src}`)},e.setAttribute("data-adel","ban"),e.setAttribute("a-lib","1"),document.head.appendChild(e)}}runInterstitial(e){if(this.#we.interstitial)return void this.#i.error("interstitial zone already loaded on page");this.#we.interstitial=!0;const{zoneId:t,sub1:i,isAutoTag:r,collectiveZoneId:n,linkedZoneId:s,aggressivity:o,recordPageView:a,abTest:c,tagVersionSuffix:l}=e;if(!t)throw new Error("mandatory zoneId is not provided!");if(!gi(t))throw new Error("zoneId is not a string!");this.#i.debug("loading interstitial on page");const d={zoneId:t,sub1:i,isAutoTag:r,collectiveZoneId:n,linkedZoneId:s,aggressivity:o,recordPageView:a,abTest:c,tagVersionSuffix:l,adcashGlobalName:this.#Ee,adserverDomain:this.#m,adblockSettings:this.#o,uniqueFingerprint:this.#S,isLoadedAsPartOfLibrary:!1};if(this.#Ae.add(t),this.#Oe.Interstitial)return d.isLoadedAsPartOfLibrary=!0,void new this.#Oe.Interstitial(d);if(window.Interstitial)new Interstitial(d);else{const e=document.createElement("script");e.type="text/javascript",e.src=`${location.protocol}//${this.#ye}/script/interstitial.js`,e.setAttribute("a-lib","1"),e.onload=()=>{new Interstitial(d)},e.onerror=()=>{this.#i.error(`failed loading ${e.src}`)},document.head.appendChild(e)}}async#Fe(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.#i.debug("fetch collective zone config");let i=`${window.location.protocol}//${this.#m}/ad/czcf.php`;if(this.isAdbMode()){const e=`/${ee("abcdefgh0123456789")}`;i=`${window.location.protocol}//${this.#o.adserverDomain}${e}`}i+=`?cz=${e}`,i+=`&atv=${this.#k}`;const r=await this.getClientHints();let n;r&&(i+=r),this.isAdbMode()&&(i+="&sadbl=2",i+="&fmt=atg",i=te(i)),this.#i.debug("collective zone config url: ",i);try{n=await fetch(i)}catch(i){return this.#i.error(i),this.#o&&t?(this.#i.debug("collective zone config fetch failed: try alt domain and path"),this.enableAdbMode(),this.#Fe(e,!1)):null}return 200!==n.status?null:(n=await n.json(),se(n))}async runAutoTag(e){if(this.#we.autoTag)return void this.#i.error("autotag zone already loaded on page");this.#we.autoTag=!0;const t=e.zoneId;if(!t)throw new Error("mandatory zoneId is not provided!");if(!gi(t))throw new Error("zoneId is not a string!");const i=await this.#Fe(t);if(!i)return void this.#i.error(`failed to fetch collective zone config! czid: ${t}`);if(this.#i.debug("collective zone config:",i),!i.rotationList){this.#i.debug("running in NORMAL MODE (no rotation)");const r=i.indexedFormats;let n=!0;for(const s in r){switch(s){case"suv4":case"pop":this.runPop({zoneId:r[s].zoneId.toString(),targetElementsCssSelector:r[s]["element-list"],triggerOnTargetElementsClick:"allow"===r[s]["element-action"],targetCountries:r[s]["country-list"],triggerOnTargetCountries:"allow"===r[s]["country-action"],isAutoTag:!0,collectiveZoneId:t,aggressivity:i.aggressivity,abTest:i.ab_test,recordPageView:n,tagVersionSuffix:e.tagVersionSuffix});break;case"interstitial":this.runInterstitial({zoneId:r[s].zoneId.toString(),isAutoTag:!0,collectiveZoneId:t,aggressivity:i.aggressivity,abTest:i.ab_test,recordPageView:n,tagVersionSuffix:e.tagVersionSuffix});break;case"ippg":this.runInPagePush({zoneId:r[s].zoneId.toString(),refreshRate:r[s].rr,delay:r[s].d,maxAds:r[s].mads,renderPosDesktop:r[s]["render-pos-desktop"],renderPosMobile:r[s]["render-pos-mobile"],offsetTop:r[s]["offset-top"],isAutoTag:!0,collectiveZoneId:t,aggressivity:i.aggressivity,abTest:i.ab_test,recordPageView:n,tagVersionSuffix:e.tagVersionSuffix});break;default:this.#i.error(`ad format type not recognised from collective zone config. adformat.type: ${s}; czid: ${t}`)}n=!1}return}this.#i.debug("running in ROTATION MODE (rotation present)");const r={adcashGlobalName:this.#Ee,collectiveZoneConfig:i,adserverDomain:this.#m,adblockSettings:this.#o,clientHintsQueryStr:this.#v,tagVersionSuffix:e.tagVersionSuffix,isLoadedAsPartOfLibrary:!1,uniqueFingerprint:this.#S};if(this.#Oe.AutoTagRotation)return this.#Ae.add(t),r.isLoadedAsPartOfLibrary=!0,void new this.#Oe.AutoTagRotation(r);this.#i.debug("loading autotag rotation script on page");const n=document.createElement("script");n.type="text/javascript",n.src=`${location.protocol}//${this.#ye}/script/atagv2.js`,n.onload=()=>{this.#Ae.add(t),new De(r)},n.onerror=()=>{this.#i.error(`failed loading ${n.src}`)},document.head.appendChild(n)}runVideoSlider(e){if(this.#we.videoSlider)return void this.#i.error("videoslider zone already loaded on page");this.#we.videoSlider=!0;const{zoneId:t,sub1:i,vastXml:r,linkedZoneId:n}=e;if(!t)throw new Error("mandatory zoneId is not provided!");if(!gi(t))throw new Error("zoneId is not a string!");const s={zoneId:t,sub1:i,adserverDomain:this.#m,adcashGlobalName:this.#Ee,uniqueFingerprint:this.#S,isPreviewMode:this.#Le,vastXml:r,linkedZoneId:n,adblockSettings:this.#o};if(this.#Oe.VideoSlider)return s.isLoadedAsPartOfLibrary=!0,void new this.#Oe.VideoSlider(s);if(window.VideoSlider)new VideoSlider(s);else{const e=document.createElement("script");e.type="text/javascript",e.src=`${window.location.protocol}//${this.#ye}/script/videoSliderAlt.js`,e.onload=()=>{this.#Ae.add(t),new VideoSlider(s)},e.onerror=()=>{this.#i.error(`failed loading ${e.src}`)},document.head.appendChild(e)}}};const Ei=new a("aclib_adblock_index");window.Adcash?Ei.debug("lib already on page. exit"):(Ei.debug("load lib on page"),function(){var e;const t={aclib:new Ci(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),Adcash:Ci,AtcshAltNm:Ci};x()(e=it()(t)).call(e,(e=>{ii()(window,e,{value:t[e]})}))}({classes:{AutoTagRotation:De,PopUnder:class{#s;#y=null;#t={};#O=!1;#ze=!1;#De=!1;#Be=!1;#P;#b=!1;#R=!0;#i;#k="69.0";#N=null;#Me=12;#T=!1;constructor(e){var i,n;this.#i=new a(`suv5_${e.zoneId}`),this.#s=window[e.adcashGlobalName],e.tagVersionSuffix&&(this.#k+=e.tagVersionSuffix),this.#i.debug("tag version:",this.#k),this.#i.debug("init pop with config:",e),this.#t=e,this.elementTargeting=new je(this.#t.targetElementsCssSelector,this.#t.triggerOnTargetElementsClick,this.#t.zoneId),!J||this.elementTargeting.isPresent()||this.#t.linkedZoneId||(this.#R=!1),this.#i.debug("useCapture:",this.#R),this.overlays=new He(this.elementTargeting,t()(i=this.#U).call(i,this),t()(n=this.#Ve).call(n,this),this.#i,this.#t.zoneId,this.#R),this.#z(),this.localStorage=new ze(`suv5_${e.zoneId}_state`);const o=this.localStorage.getState();o&&o.adbExpiresAt>r()()&&this.#s.enableAdbMode();const c=r()();if(o&&o.renderAfterTimestamp>c){var l;const e=o.renderAfterTimestamp-c;this.#i.debug(`previous state present. bid after ${e/1e3} sec`),s()(t()(l=this.#He).call(l,this),e)}else this.#He()}async#C(){const e=await this.#s.getClientHints(!1);let t=`${window.location.protocol}//${this.#t.adserverDomain}/script/suurl5.php`;if(this.#t.adblockSettings&&this.#s.isAdbMode()){const{adserverDomain:e}=this.#t.adblockSettings,i=`/${ee("abcdefgh0123456789")}`;t=`${window.location.protocol}//${e}${i}`}if(t+=`?r=${this.#t.zoneId}`,this.#b&&(t+="&rbd=1"),this.#t.targetCountries){const e=this.#t.targetCountries.join(",");this.#t.triggerOnTargetCountries?t+="&allowed_countries="+encodeURIComponent(e):t+="&excluded_countries="+encodeURIComponent(e)}return t=t+e+"&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())+"&ufp="+encodeURIComponent(this.#t.uniqueFingerprint)+"&ts="+r()()+"&srs="+this.#s.getSesionRandomString()+"&atv="+this.#k,this.#t.sub1&&(t+=`&sub1=${encodeURIComponent(this.#t.sub1)}`),this.#t.sub2&&(t+=`&sub2=${encodeURIComponent(this.#t.sub2)}`),this.#t.publisherUrl&&(t+=`&pu=${encodeURIComponent(this.#t.publisherUrl)}`),this.#t.storeUrl&&(t+=`&storeurl=${encodeURIComponent(this.#t.storeUrl)}`),this.#t.c1&&(t+=`&c1=${encodeURIComponent(this.#t.c1)}`),this.#t.c2&&(t+=`&c2=${encodeURIComponent(this.#t.c2)}`),this.#t.c3&&(t+=`&c3=${encodeURIComponent(this.#t.c3)}`),this.#t.pubHash&&(t+=`&pub_hash=${encodeURIComponent(this.#t.pubHash)}`),this.#t.pubClickId&&(t+=`&pub_clickid=${encodeURIComponent(this.#t.pubClickId)}`),this.#t.pubValue&&(t+=`&pub_value=${encodeURIComponent(this.#t.pubValue)}`),this.#t.fallbackOn&&(t+=`&fallbackon=${encodeURIComponent(this.#t.fallbackOn)}`),this.#t.adblockSettings&&(t+="&abtg=1"),this.#t.isAutoTag&&(t+="&atag=1"),this.#t.aggressivity&&(t+=`&aggr=${this.#t.aggressivity}`),this.#t.collectiveZoneId&&(t+=`&czid=${this.#t.collectiveZoneId}`),this.#t.recordPageView&&(t+="&ppv=1"),this.#t.linkedZoneId&&(t+=`&pblcz=${this.#t.linkedZoneId}`),this.#t.abTest&&(t+=`&ab_test=${this.#t.abTest}`),this.#t.adblockSettings&&this.#t.adblockSettings.adbVersion&&(t+=`&adbv=${this.#t.adblockSettings.adbVersion}`),this.#s.isSandboxed()&&(t+="&sbx=1"),this.#t.adblockSettings&&this.#s.isAdbMode()?(t+="&sadbl=2",t+="&fmt=suv5",this.#i.debug(`bid url: ${t}`),te(t)):(this.#i.debug(`bid url: ${t}`),t)}#F(e){try{let t=this.#N?this.#N(""):window.open("");return t.document.open(),t.document.writeln('
17 OCT 2024 - Welcome Back to TorrentFunk! Get your pirate hat back out. Streaming is dying and torrents are the new trend. Account Registration works again and so do Torrent Uploads. We invite you all to start uploading torrents again!
TORRENT DETAILS
Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game
TORRENT SUMMARY
Status:
All the torrents in this section have been verified by our verification system
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/01 Introduction/001 Introduction.mp4
13.7 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/02 Algorithm of the game app/002 Algorithm - Part 1.mp4
12.5 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/02 Algorithm of the game app/003 Algorithm - Part 2.mp4
7.5 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/03 HTML5 Building Blocks of the Game/004 Create skeleton of the HTML5 code.mp4
13.8 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/03 HTML5 Building Blocks of the Game/005 Meta tags of the HTML5 code.mp4
11.2 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/03 HTML5 Building Blocks of the Game/006 Create the header and the result heading.mp4
10.4 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/03 HTML5 Building Blocks of the Game/007 Create the game and rule sections skeletons.mp4
9.3 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/03 HTML5 Building Blocks of the Game/008 Create the game canvases and new game button.mp4
14.3 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/03 HTML5 Building Blocks of the Game/009 Create the rules sections paragraphs and heading.mp4
6.9 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/03 HTML5 Building Blocks of the Game/010 index.html file - Tic Tac Toe game.html
430 B
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/04 Styling the Tic Tac Toe Game app - achieving the final look/011 Connect HTML and CSS files.mp4
8.7 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/04 Styling the Tic Tac Toe Game app - achieving the final look/012 Set background and more on colors.mp4
17.1 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/04 Styling the Tic Tac Toe Game app - achieving the final look/013 Set default styles and style the header.mp4
9 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/04 Styling the Tic Tac Toe Game app - achieving the final look/014 Style the headings.mp4
11.1 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/04 Styling the Tic Tac Toe Game app - achieving the final look/015 Style the canvases.mp4
7.3 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/04 Styling the Tic Tac Toe Game app - achieving the final look/016 Style the entire game area.mp4
18.4 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/04 Styling the Tic Tac Toe Game app - achieving the final look/017 Style the Divs that hold the canvases and rules area.mp4
15.7 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/04 Styling the Tic Tac Toe Game app - achieving the final look/018 Style the paragraphs and h2 headings.mp4
5.9 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/04 Styling the Tic Tac Toe Game app - achieving the final look/019 Style the New Game button.mp4
13.8 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/04 Styling the Tic Tac Toe Game app - achieving the final look/020 Create hover effects on the canvases and new game button.mp4
11.7 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/04 Styling the Tic Tac Toe Game app - achieving the final look/021 style.css file - Tic Tac Toe game.html
427 B
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/04 Styling the Tic Tac Toe Game app - achieving the final look/quizzes/001 HTML5 CSS practice test.html
17.4 KB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/05 OPTIONAL Javascript Basic Concepts related to this project/022 Connecting HTML and scriptJS files.mp4
12.8 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/05 OPTIONAL Javascript Basic Concepts related to this project/023 An introduction to variables and assigning values.mp4
19.5 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/05 OPTIONAL Javascript Basic Concepts related to this project/024 Mathematical operators and alerts.mp4
20.7 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/05 OPTIONAL Javascript Basic Concepts related to this project/025 Conditional statements - if else statement.mp4
14.2 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/05 OPTIONAL Javascript Basic Concepts related to this project/026 Conditional statements - Switch case.mp4
15.8 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/05 OPTIONAL Javascript Basic Concepts related to this project/027 Loops - For loop.mp4
13.2 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/05 OPTIONAL Javascript Basic Concepts related to this project/028 Arrays - 1 dimensional arrays.mp4
14 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/05 OPTIONAL Javascript Basic Concepts related to this project/029 Arrays - 2 dimensional arrays.mp4
10.2 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/05 OPTIONAL Javascript Basic Concepts related to this project/030 An introduction to functions function definition and calls.mp4
21.9 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/05 OPTIONAL Javascript Basic Concepts related to this project/031 Intro to DOM - getElementById and InnerText.mp4
21.5 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/05 OPTIONAL Javascript Basic Concepts related to this project/032 Intro to DOM - adding click events to buttons.mp4
18.8 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/05 OPTIONAL Javascript Basic Concepts related to this project/033 More Event listeners Part 1.mp4
9.7 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/05 OPTIONAL Javascript Basic Concepts related to this project/034 More Event listeners Part 2.mp4
11.4 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/06 OPTIONAL HTML5 Canvas Basic Concepts related to this project/035 Step 1 2 - Getting the canvas and creating the drawing object.mp4
16.4 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/06 OPTIONAL HTML5 Canvas Basic Concepts related to this project/036 Drawing a line also explanation on canvas dimensions and pixel points.mp4
18.5 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/06 OPTIONAL HTML5 Canvas Basic Concepts related to this project/037 Drawing coloring a shape with poly lines a path.mp4
21.9 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/06 OPTIONAL HTML5 Canvas Basic Concepts related to this project/038 Drawing coloring a circle and arcs.mp4
20.1 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/07 Javascript code for the game - Making the game playable/039 Step 1 - Setting things up onload function.mp4
12.2 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/07 Javascript code for the game - Making the game playable/040 Step 1 cont. - Initial states - declare and assign.mp4
7.9 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/07 Javascript code for the game - Making the game playable/041 Step 1 cont. - Initial states - assign values to arrays.mp4
15.7 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/07 Javascript code for the game - Making the game playable/042 Step 2 - Make the new game button work.mp4
14.3 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/07 Javascript code for the game - Making the game playable/043 Step 3 - Canvas click event.mp4
15.6 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/07 Javascript code for the game - Making the game playable/044 Step 3 cont. - Canvas click function - retrieve canvas ids.mp4
15 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/07 Javascript code for the game - Making the game playable/045 Step 4 - Draw relevant shapes on canvas.mp4
14.5 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/07 Javascript code for the game - Making the game playable/046 Step 4 cont. - X and O draw codes.mp4
18.2 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/07 Javascript code for the game - Making the game playable/047 Step 4 cont. - Test intermediate output.mp4
6 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/07 Javascript code for the game - Making the game playable/048 Step 5 - Winner check.mp4
24.3 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/07 Javascript code for the game - Making the game playable/049 Step 5 cont. - Display game results.mp4
7.7 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/07 Javascript code for the game - Making the game playable/050 Error condition alerts.mp4
24.6 MB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/07 Javascript code for the game - Making the game playable/051 script.js file - Tic Tac Toe game.html
449 B
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/07 Javascript code for the game - Making the game playable/052 All the code files - Tic Tac Toe game.html
739 B
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/07 Javascript code for the game - Making the game playable/quizzes/002 Javascript HTML5 Canvas Practice Test.html
13.4 KB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/08 Conclusion Feature ideas/053 Congrats.html
1 KB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/08 Conclusion Feature ideas/054 New features that you can try to create for this game.html
3.5 KB
[Tutsgalaxy.com] - Learn Javascript & HTML5 Canvas - Build A Tic Tac Toe Game/TutsGalaxy.com.txt