\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
Udemy - NodeJs - Beginner Practical Guide - E-Commerce Web API [2022]
TORRENT SUMMARY
Status:
All the torrents in this section have been verified by our verification system
If You Need More Stuff, kindly Visit and Support Us -->> https://CourseWikia.com
Get More Tutorials and Support Us -->> https://FreeCourseWeb.com
We upload these learning materials for the people from all over the world, who have the talent and motivation to sharpen their skills/ knowledge but do not have the financial support to afford the materials. If you like this content and if you are truly in a position that you can actually buy the materials, then Please, we repeat, Please, Support Authors. They Deserve it! Because always remember, without "Them", you and we won't be here having this conversation. Think about it! Peace...
VISITOR COMMENTS (0 )
FILE LIST
Filename
Size
~Get Your Files Here !/01 - Introduction/001 Introduction.mp4
27.3 MB
~Get Your Files Here !/01 - Introduction/001 Introduction_en.vtt
2.3 KB
~Get Your Files Here !/01 - Introduction/002 Overview to our RESTful API.mp4
11.2 MB
~Get Your Files Here !/01 - Introduction/002 Overview to our RESTful API_en.vtt
3.3 KB
~Get Your Files Here !/01 - Introduction/003 How to use this course.html
1003 B
~Get Your Files Here !/01 - Introduction/004 If you get stuck and Errors.html
1.7 KB
~Get Your Files Here !/02 - Tools and Environment/001 Installing our Coding Editor (IDE) + Extensions.mp4
40.4 MB
~Get Your Files Here !/02 - Tools and Environment/001 Installing our Coding Editor (IDE) + Extensions_en.vtt
7.3 KB
~Get Your Files Here !/02 - Tools and Environment/002 Installing NodeJs.mp4
15.9 MB
~Get Your Files Here !/02 - Tools and Environment/003 Installing PostMan to Test our API's.mp4
8.9 MB
~Get Your Files Here !/02 - Tools and Environment/003 Installing PostMan to Test our API's_en.vtt
1.8 KB
~Get Your Files Here !/02 - Tools and Environment/004 Configure MongoDB Atlas.mp4
13.8 MB
~Get Your Files Here !/02 - Tools and Environment/004 Configure MongoDB Atlas_en.vtt
2 KB
~Get Your Files Here !/02 - Tools and Environment/005 Using MondoDB Compass.mp4
16.6 MB
~Get Your Files Here !/02 - Tools and Environment/005 Using MondoDB Compass_en.vtt
3.6 KB
~Get Your Files Here !/03 - Preparing the API Server/001 Introduction.mp4
7.1 MB
~Get Your Files Here !/03 - Preparing the API Server/001 Introduction_en.vtt
1.4 KB
~Get Your Files Here !/03 - Preparing the API Server/002 File Structure.mp4
3.2 MB
~Get Your Files Here !/03 - Preparing the API Server/002 File Structure_en.vtt
1.1 KB
~Get Your Files Here !/03 - Preparing the API Server/003 Creating the Backend Server with Express.mp4
34.8 MB
~Get Your Files Here !/03 - Preparing the API Server/003 Creating the Backend Server with Express_en.vtt
5.9 KB
~Get Your Files Here !/03 - Preparing the API Server/004 Reading Environment Variables.mp4
27.9 MB
~Get Your Files Here !/03 - Preparing the API Server/004 Reading Environment Variables_en.vtt
4.9 KB
~Get Your Files Here !/03 - Preparing the API Server/005 Create First API Call & Parsing Json Data.mp4
39 MB
~Get Your Files Here !/03 - Preparing the API Server/005 Create First API Call & Parsing Json Data_en.vtt
5.9 KB
~Get Your Files Here !/03 - Preparing the API Server/006 Important note about parsing json data.html
532 B
~Get Your Files Here !/03 - Preparing the API Server/007 Logging API Requests.mp4
17.8 MB
~Get Your Files Here !/03 - Preparing the API Server/007 Logging API Requests_en.vtt
2.3 KB
~Get Your Files Here !/03 - Preparing the API Server/008 Installing Mongoose and Connect to MongoDB Database.mp4
61.3 MB
~Get Your Files Here !/03 - Preparing the API Server/008 Installing Mongoose and Connect to MongoDB Database_en.vtt
8.5 KB
~Get Your Files Here !/03 - Preparing the API Server/009 Optional Seeding Database.mp4
10 MB
~Get Your Files Here !/03 - Preparing the API Server/009 Optional Seeding Database_en.vtt
2.2 KB
~Get Your Files Here !/03 - Preparing the API Server/010 ReadWrite Data to Database Using API.mp4
96.3 MB
~Get Your Files Here !/03 - Preparing the API Server/010 ReadWrite Data to Database Using API_en.vtt
13.5 KB
~Get Your Files Here !/03 - Preparing the API Server/011 Analysing the E-Shop Database.mp4
32.6 MB
~Get Your Files Here !/03 - Preparing the API Server/011 Analysing the E-Shop Database_en.vtt
5.6 KB
~Get Your Files Here !/03 - Preparing the API Server/012 Create Backend API Routes & Schemas.mp4
76.5 MB
~Get Your Files Here !/03 - Preparing the API Server/012 Create Backend API Routes & Schemas_en.vtt
8.5 KB
~Get Your Files Here !/03 - Preparing the API Server/013 Enabling CORS & Why Do We Need It.mp4
20.6 MB
~Get Your Files Here !/03 - Preparing the API Server/013 Enabling CORS & Why Do We Need It_en.vtt
2.9 KB
~Get Your Files Here !/03 - Preparing the API Server/014 Section Code.html
327 B
~Get Your Files Here !/03 - Preparing the API Server/database/categories.json
792 B
~Get Your Files Here !/03 - Preparing the API Server/database/orderitems.json
2.3 KB
~Get Your Files Here !/03 - Preparing the API Server/database/orders.json
2.5 KB
~Get Your Files Here !/03 - Preparing the API Server/database/products.json
25.7 KB
~Get Your Files Here !/03 - Preparing the API Server/database/users.json
2 KB
~Get Your Files Here !/03 - Preparing the API Server/initial-eshop-backend/app.js
1.1 KB
~Get Your Files Here !/03 - Preparing the API Server/initial-eshop-backend/DS_Store
6 KB
~Get Your Files Here !/03 - Preparing the API Server/initial-eshop-backend/models/category.js
148 B
~Get Your Files Here !/03 - Preparing the API Server/initial-eshop-backend/models/order.js
136 B
~Get Your Files Here !/03 - Preparing the API Server/initial-eshop-backend/models/product.js
251 B
~Get Your Files Here !/03 - Preparing the API Server/initial-eshop-backend/models/user.js
239 B
~Get Your Files Here !/03 - Preparing the API Server/initial-eshop-backend/package-lock.json
60.9 KB
~Get Your Files Here !/03 - Preparing the API Server/initial-eshop-backend/package.json
424 B
~Get Your Files Here !/03 - Preparing the API Server/initial-eshop-backend/routes/categories.js
339 B
~Get Your Files Here !/03 - Preparing the API Server/initial-eshop-backend/routes/orders.js
321 B
~Get Your Files Here !/03 - Preparing the API Server/initial-eshop-backend/routes/products.js
727 B
~Get Your Files Here !/03 - Preparing the API Server/initial-eshop-backend/routes/users.js
315 B
~Get Your Files Here !/03 - Preparing the API Server/uploads/0C1D7F7C-42B1-4A62-B4C3-A042BEB6A6B5.jpg-1604606693142.jpeg
1.6 MB
~Get Your Files Here !/03 - Preparing the API Server/uploads/0ef3aefb-7fa8-4e00-9c26-96fe95b37780.png-1602682971782.png
3.3 MB
~Get Your Files Here !/03 - Preparing the API Server/uploads/22371A34-147B-492E-A624-8BDFDD380851.png-1602696877384.png
836.4 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/2578649B-655C-4C21-9118-D09A86E84D89.jpg-1605699395218.jpeg
1.3 MB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15d8852a025143f9593a7c-1604665285223.jpeg
38.4 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15d8852a025143f9593a7c-1604665316399.png
38.4 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15d8852a025143f9593a7c-1604665316400.jpeg
36.4 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15d9b3e520d44421ed8e9d-1603731680474.jpeg
44.3 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15d9b3e520d44421ed8e9d-1604699042286.jpeg
19.9 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15d9b3e520d44421ed8e9d-1604699042287.jpeg
17.1 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15d9b3e520d44421ed8e9d-1604699042288.jpeg
15.2 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15da135420d22456ed8e9e-1604697417413.jpeg
285.1 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15da135420d22456ed8e9e-1604697417417.jpeg
208.9 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15da135420d22456ed8e9e-1604697417419.jpeg
448.2 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15da135420d44421ed8e9e-1604695903120.jpeg
9.5 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15da135420d44421ed8e9e-1604695903122.jpeg
91.4 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15da135420d44421ed8e9e-1604695903124.jpeg
144.7 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15da135420d44443ed8e9e-1604698716796.jpeg
32.1 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15da135420d44443ed8e9e-1604698716798.jpeg
33.8 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15da135420d44443ed8e9e-1604698716799.jpeg
29.8 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15da135420d44443ed8e9e-1604698716800.jpeg
50.2 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15da135420d44456ed8e9e-1604665545871.jpeg
38 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15da135420d44456ed8e9e-1604665545872.jpeg
191.5 KB
~Get Your Files Here !/03 - Preparing the API Server/uploads/5f15da135420d44456ed8e9e-1604665545875.jpeg
119.1 KB
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/initial-eshop-backend/models/_category.js
212 B
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/initial-eshop-backend/models/_order.js
212 B
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/initial-eshop-backend/models/_product.js
212 B
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/initial-eshop-backend/models/_user.js
212 B
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/initial-eshop-backend/routes/_categories.js
212 B
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/initial-eshop-backend/routes/_orders.js
212 B
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/initial-eshop-backend/routes/_products.js
212 B
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/initial-eshop-backend/routes/_users.js
212 B
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/initial-eshop-backend/_.DS_Store
120 B
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/initial-eshop-backend/_app.js
212 B
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/initial-eshop-backend/_models
212 B
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/initial-eshop-backend/_package-lock.json
212 B
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/initial-eshop-backend/_package.json
212 B
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/initial-eshop-backend/_routes
212 B
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/_database
220 B
~Get Your Files Here !/03 - Preparing the API Server/__MACOSX/_initial-eshop-backend