UNPKG

abee-adi-core

Version:

Behavioral tracking and device fingerprinting library

2 lines (1 loc) 46.6 kB
class ADIEventImplV1{constructor(e,t,n,r){this.v="1",this.c=e,this.i=t,this.t=n,this.p=r,this.u={}}}class ADIKeyPressed extends ADIEventImplV1{constructor(e,t){super(ADIKeyPressed.CODE,t,Date.now(),e)}}ADIKeyPressed.CODE="A_KP";class ADITouch extends ADIEventImplV1{constructor(e,t){super(ADITouch.CODE,t,Date.now(),e)}}ADITouch.CODE="A_T";class ADIView extends ADIEventImplV1{constructor(e,t){super(ADIView.CODE,t,Date.now(),e)}}ADIView.CODE="A_V";class ADIElementView extends ADIEventImplV1{constructor(e,t){super(ADIElementView.CODE,t,Date.now(),e)}}ADIElementView.CODE="A_EV";class ADIDeviceInfo extends ADIEventImplV1{constructor(e,t){super(ADIDeviceInfo.CODE,t,Date.now(),e)}}ADIDeviceInfo.CODE="A_DI";class ADIChannelLogin extends ADIEventImplV1{constructor(e,t){super(ADIChannelLogin.CODE,t,Date.now(),e)}}ADIChannelLogin.CODE="A_CL";class ADIChannelLogOut extends ADIEventImplV1{constructor(e,t){super(ADIChannelLogOut.CODE,t,Date.now(),e)}}ADIChannelLogOut.CODE="A_CLO";class ADIChannelLoginFailed extends ADIEventImplV1{constructor(e,t){super(ADIChannelLoginFailed.CODE,t,Date.now(),e)}}ADIChannelLoginFailed.CODE="A_CLF";class ADIIntegration{constructor(e,t,n){this.endpoint=n,this.client=t,this.applicationKey=e}async sendEvent(e){await this.client.postForText(this.endpoint.adiBaseURL,e,void 0,this.applicationKey),console.log(`Sent event ${JSON.stringify(e)}`,e)}async sendEvents(e){await this.client.postForText(this.endpoint.adiBaseURL,e,void 0,this.applicationKey),console.log(`Sent events ${JSON.stringify(e)}`,e)}}class ApiClientBrowserFetch{constructor(){}async postForText(e,t,n,r){const o={Accept:"application/json","Content-Type":"application/json"};n&&(o.Authorization=`Bearer ${n}`),r&&(o["x-api-key"]=`${r}`);const i=await fetch(`${e}`,{method:"POST",headers:o,body:JSON.stringify(t)});if(!i.ok)throw new Error(i.statusText);return await i.text()}async postForJSON(e,t,n,r){const o={Accept:"application/json","Content-Type":"application/json"};n&&(o.Authorization=`Bearer ${n}`),r&&(o["x-api-key"]=`${r}`);const i=await fetch(`${e}`,{method:"POST",headers:o,body:JSON.stringify(t)});if(!i.ok)throw new Error(i.statusText);return await i.json()}async getForText(e,t,n){const r={Accept:"application/json","Content-Type":"application/json"};t&&(r.Authorization=`Bearer ${t}`),n&&(r["x-api-key"]=`${n}`);const o=await fetch(`${e}`,{method:"GET",headers:r});if(!o.ok)throw new Error(o.statusText);return await o.text()}async getForJSON(e,t,n){const r={Accept:"application/json","Content-Type":"application/json"};t&&(r.Authorization=`Bearer ${t}`),n&&(r["x-api-key"]=`${n}`);const o=await fetch(`${e}`,{method:"GET",headers:r});if(!o.ok)throw new Error(o.statusText);return await o.json()}async deleteForJSON(e,t,n,r){const o={Accept:"application/json","Content-Type":"application/json"};n&&(o.Authorization=`Bearer ${n}`),r&&(o["x-api-key"]=`${r}`);const i=await fetch(`${e}`,{method:"DELETE",headers:o,body:JSON.stringify(t)});if(!i.ok)throw new Error(i.statusText);return await i.json()}}const STORAGE_PROVIDER_DEFAULTS={JOURNEY_ID_NAME:"adiJourneyId",DEVICE_ID_NAME:"adiDeviceId",PERSONA_ID_NAME:"adiPersonaId",COOKIE_EXPIRY_HRS:2};class DefaultProvider{storeObject(e,t){throw new Error("Must be implemented")}restoreObject(e){throw new Error("Must be implemented")}storeString(e,t){throw new Error("Must be implemented")}restoreString(e){throw new Error("Must be implemented")}deleteItem(e){throw new Error("Must be implemented")}getToken(){throw new Error("Must be implemented")}setToken(e){throw new Error("Must be implemented")}deleteToken(){throw new Error("Must be implemented")}}class LocalStorageProvider extends DefaultProvider{storeObject(e,t){"object"==typeof t&&null!==t&&localStorage.setItem(e,JSON.stringify(t))}restoreObject(e){const t=localStorage.getItem(e);if(null!=t)return JSON.parse(t)}storeString(e,t){localStorage.setItem(e,t)}restoreString(e){return localStorage.getItem(e)||void 0}deleteItem(e){localStorage.removeItem(e)}}class ADICore{constructor(){const e=new ApiClientBrowserFetch;this._apiClient=e,this._consentGranted=!1,this.patient={id:{deviceId:void 0,journeyId:void 0,personaId:void 0}},this._delayedEvents=[]}async boot(e){if(this._applicationKey=e.applicationKey,this._gdprProvider=e.gdprProvider,this._personaProvider=e.personaProvider,this._fingerprintProvider=e.fingerprintProvider,this._storageProvider=e.storageProvider,this._apiClient=e.apiClient||this._apiClient,this._endpoint=e.endpoint,this._api=new ADIIntegration(this._applicationKey,this._apiClient,this._endpoint),!this._applicationKey)throw new Error("applicationKey is required");if(!this._fingerprintProvider)throw new Error("fingerprintProvider is required");if(!this._storageProvider)throw new Error("storageProvider is required");return await this._updateUserConsent(),await this._updatePersona(),await this._bootPatient(),this.patient}async _bootPatient(){this.patient.id.journeyId=this._storageProvider.restoreString(STORAGE_PROVIDER_DEFAULTS.JOURNEY_ID_NAME),this.patient.id.journeyId||(this.patient.id.journeyId=`${Math.random().toString(36).substring(2,12)}`,this._storageProvider.storeString(STORAGE_PROVIDER_DEFAULTS.JOURNEY_ID_NAME,this.patient.id.journeyId));const e=await this._fingerprintProvider(this._applicationKey,this.patient,this._apiClient);this.patient.id.deviceId=e.deviceId,this._delayedEvents.push(new ADIDeviceInfo({d:e},!1)),this.patient.id.personaId=this._storageProvider.restoreString(STORAGE_PROVIDER_DEFAULTS.PERSONA_ID_NAME)}async _updatePersona(){var e;if(this._consentGranted&&this._personaProvider){const t=await this._personaProvider(this._applicationKey,this.patient,this._apiClient);t&&(this.patient.id.personaId=t,null===(e=this._storageProvider)||void 0===e||e.storeString(STORAGE_PROVIDER_DEFAULTS.PERSONA_ID_NAME,t))}}async setPersona(e){this.patient.id.personaId=e,await this._updateUserConsent(),this._consentGranted?this._storageProvider.storeString(STORAGE_PROVIDER_DEFAULTS.PERSONA_ID_NAME,e):this._clean()}revokeGDPRConsent(){this._consentGranted=!1,this._clean()}async capture(e){this._consentGranted&&this._sendEvent(e)}setApiClient(e){this._apiClient=e}async _updateUserConsent(){this._gdprProvider?this._consentGranted=await this._gdprProvider(this._applicationKey,this.patient,this._apiClient):this._consentGranted=!0}_clean(){this._storageProvider.deleteItem(STORAGE_PROVIDER_DEFAULTS.JOURNEY_ID_NAME),this._storageProvider.deleteItem(STORAGE_PROVIDER_DEFAULTS.PERSONA_ID_NAME),this._storageProvider.deleteItem(STORAGE_PROVIDER_DEFAULTS.DEVICE_ID_NAME),this.patient.id.personaId=void 0,this.patient.id.deviceId=void 0,this.patient.id.journeyId=void 0}async _sendEvent(e){const t=JSON.parse(JSON.stringify(this._delayedEvents));this._delayedEvents.length=0,t.push(e),t.forEach((e=>{e.u=this.patient})),await this._api.sendEvents(t)}}class ADIFinTransfer extends ADIEventImplV1{constructor(e,t){super(ADIFinTransfer.CODE,t,Date.now(),e)}}ADIFinTransfer.CODE="A_FT";class ADIFinTransferCreditCard extends ADIEventImplV1{constructor(e,t){super(ADIFinTransferCreditCard.CODE,t,Date.now(),e)}}ADIFinTransferCreditCard.CODE="A_FTCC";class ADIFinTransferSEPA extends ADIEventImplV1{constructor(e,t){super(ADIFinTransferSEPA.CODE,t,Date.now(),e)}}ADIFinTransferSEPA.CODE="A_FTSE";var __assign=function(){return __assign=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},__assign.apply(this,arguments)};function __awaiter(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{s(r.next(e))}catch(e){i(e)}}function c(e){try{s(r.throw(e))}catch(e){i(e)}}function s(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,c)}s((r=r.apply(e,t||[])).next())}))}function __generator(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return a.next=c(0),a.throw=c(1),a.return=c(2),"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function c(c){return function(s){return function(c){if(n)throw new TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&c[0]?r.return:c[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;switch(r=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return i.label++,{value:c[1],done:!1};case 5:i.label++,r=c[1],c=[0];continue;case 7:c=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==c[0]&&2!==c[0])){i=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){i.label=c[1];break}if(6===c[0]&&i.label<o[1]){i.label=o[1],o=c;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(c);break}o[2]&&i.ops.pop(),i.trys.pop();continue}c=t.call(e,i)}catch(e){c=[6,e],r=0}finally{n=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}([c,s])}}}function __spreadArray(e,t,n){if(n||2===arguments.length)for(var r,o=0,i=t.length;o<i;o++)!r&&o in t||(r||(r=Array.prototype.slice.call(t,0,o)),r[o]=t[o]);return e.concat(r||Array.prototype.slice.call(t))}"function"==typeof SuppressedError&&SuppressedError;var version="3.4.2";function wait(e,t){return new Promise((function(n){return setTimeout(n,e,t)}))}function requestIdleCallbackIfAvailable(e,t){void 0===t&&(t=1/0);var n=window.requestIdleCallback;return n?new Promise((function(e){return n.call(window,(function(){return e()}),{timeout:t})})):wait(Math.min(e,t))}function isPromise(e){return!!e&&"function"==typeof e.then}function awaitIfAsync(e,t){try{var n=e();isPromise(n)?n.then((function(e){return t(!0,e)}),(function(e){return t(!1,e)})):t(!0,n)}catch(e){t(!1,e)}}function mapWithBreaks(e,t,n){return void 0===n&&(n=16),__awaiter(this,void 0,void 0,(function(){var r,o,i,a;return __generator(this,(function(c){switch(c.label){case 0:r=Array(e.length),o=Date.now(),i=0,c.label=1;case 1:return i<e.length?(r[i]=t(e[i],i),(a=Date.now())>=o+n?(o=a,[4,wait(0)]):[3,3]):[3,4];case 2:c.sent(),c.label=3;case 3:return++i,[3,1];case 4:return[2,r]}}))}))}function suppressUnhandledRejectionWarning(e){e.then(void 0,(function(){}))}function x64Add(e,t){e=[e[0]>>>16,65535&e[0],e[1]>>>16,65535&e[1]],t=[t[0]>>>16,65535&t[0],t[1]>>>16,65535&t[1]];var n=[0,0,0,0];return n[3]+=e[3]+t[3],n[2]+=n[3]>>>16,n[3]&=65535,n[2]+=e[2]+t[2],n[1]+=n[2]>>>16,n[2]&=65535,n[1]+=e[1]+t[1],n[0]+=n[1]>>>16,n[1]&=65535,n[0]+=e[0]+t[0],n[0]&=65535,[n[0]<<16|n[1],n[2]<<16|n[3]]}function x64Multiply(e,t){e=[e[0]>>>16,65535&e[0],e[1]>>>16,65535&e[1]],t=[t[0]>>>16,65535&t[0],t[1]>>>16,65535&t[1]];var n=[0,0,0,0];return n[3]+=e[3]*t[3],n[2]+=n[3]>>>16,n[3]&=65535,n[2]+=e[2]*t[3],n[1]+=n[2]>>>16,n[2]&=65535,n[2]+=e[3]*t[2],n[1]+=n[2]>>>16,n[2]&=65535,n[1]+=e[1]*t[3],n[0]+=n[1]>>>16,n[1]&=65535,n[1]+=e[2]*t[2],n[0]+=n[1]>>>16,n[1]&=65535,n[1]+=e[3]*t[1],n[0]+=n[1]>>>16,n[1]&=65535,n[0]+=e[0]*t[3]+e[1]*t[2]+e[2]*t[1]+e[3]*t[0],n[0]&=65535,[n[0]<<16|n[1],n[2]<<16|n[3]]}function x64Rotl(e,t){return 32===(t%=64)?[e[1],e[0]]:t<32?[e[0]<<t|e[1]>>>32-t,e[1]<<t|e[0]>>>32-t]:(t-=32,[e[1]<<t|e[0]>>>32-t,e[0]<<t|e[1]>>>32-t])}function x64LeftShift(e,t){return 0===(t%=64)?e:t<32?[e[0]<<t|e[1]>>>32-t,e[1]<<t]:[e[1]<<t-32,0]}function x64Xor(e,t){return[e[0]^t[0],e[1]^t[1]]}function x64Fmix(e){return e=x64Xor(e,[0,e[0]>>>1]),e=x64Xor(e=x64Multiply(e,[4283543511,3981806797]),[0,e[0]>>>1]),e=x64Xor(e=x64Multiply(e,[3301882366,444984403]),[0,e[0]>>>1])}function x64hash128(e,t){t=t||0;var n,r=(e=e||"").length%16,o=e.length-r,i=[0,t],a=[0,t],c=[0,0],s=[0,0],l=[2277735313,289559509],u=[1291169091,658871167];for(n=0;n<o;n+=16)c=[255&e.charCodeAt(n+4)|(255&e.charCodeAt(n+5))<<8|(255&e.charCodeAt(n+6))<<16|(255&e.charCodeAt(n+7))<<24,255&e.charCodeAt(n)|(255&e.charCodeAt(n+1))<<8|(255&e.charCodeAt(n+2))<<16|(255&e.charCodeAt(n+3))<<24],s=[255&e.charCodeAt(n+12)|(255&e.charCodeAt(n+13))<<8|(255&e.charCodeAt(n+14))<<16|(255&e.charCodeAt(n+15))<<24,255&e.charCodeAt(n+8)|(255&e.charCodeAt(n+9))<<8|(255&e.charCodeAt(n+10))<<16|(255&e.charCodeAt(n+11))<<24],c=x64Rotl(c=x64Multiply(c,l),31),i=x64Add(i=x64Rotl(i=x64Xor(i,c=x64Multiply(c,u)),27),a),i=x64Add(x64Multiply(i,[0,5]),[0,1390208809]),s=x64Rotl(s=x64Multiply(s,u),33),a=x64Add(a=x64Rotl(a=x64Xor(a,s=x64Multiply(s,l)),31),i),a=x64Add(x64Multiply(a,[0,5]),[0,944331445]);switch(c=[0,0],s=[0,0],r){case 15:s=x64Xor(s,x64LeftShift([0,e.charCodeAt(n+14)],48));case 14:s=x64Xor(s,x64LeftShift([0,e.charCodeAt(n+13)],40));case 13:s=x64Xor(s,x64LeftShift([0,e.charCodeAt(n+12)],32));case 12:s=x64Xor(s,x64LeftShift([0,e.charCodeAt(n+11)],24));case 11:s=x64Xor(s,x64LeftShift([0,e.charCodeAt(n+10)],16));case 10:s=x64Xor(s,x64LeftShift([0,e.charCodeAt(n+9)],8));case 9:s=x64Multiply(s=x64Xor(s,[0,e.charCodeAt(n+8)]),u),a=x64Xor(a,s=x64Multiply(s=x64Rotl(s,33),l));case 8:c=x64Xor(c,x64LeftShift([0,e.charCodeAt(n+7)],56));case 7:c=x64Xor(c,x64LeftShift([0,e.charCodeAt(n+6)],48));case 6:c=x64Xor(c,x64LeftShift([0,e.charCodeAt(n+5)],40));case 5:c=x64Xor(c,x64LeftShift([0,e.charCodeAt(n+4)],32));case 4:c=x64Xor(c,x64LeftShift([0,e.charCodeAt(n+3)],24));case 3:c=x64Xor(c,x64LeftShift([0,e.charCodeAt(n+2)],16));case 2:c=x64Xor(c,x64LeftShift([0,e.charCodeAt(n+1)],8));case 1:c=x64Multiply(c=x64Xor(c,[0,e.charCodeAt(n)]),l),i=x64Xor(i,c=x64Multiply(c=x64Rotl(c,31),u))}return i=x64Add(i=x64Xor(i,[0,e.length]),a=x64Xor(a,[0,e.length])),a=x64Add(a,i),i=x64Add(i=x64Fmix(i),a=x64Fmix(a)),a=x64Add(a,i),("00000000"+(i[0]>>>0).toString(16)).slice(-8)+("00000000"+(i[1]>>>0).toString(16)).slice(-8)+("00000000"+(a[0]>>>0).toString(16)).slice(-8)+("00000000"+(a[1]>>>0).toString(16)).slice(-8)}function errorToObject(e){var t;return __assign({name:e.name,message:e.message,stack:null===(t=e.stack)||void 0===t?void 0:t.split("\n")},e)}function includes(e,t){for(var n=0,r=e.length;n<r;++n)if(e[n]===t)return!0;return!1}function excludes(e,t){return!includes(e,t)}function toInt(e){return parseInt(e)}function toFloat(e){return parseFloat(e)}function replaceNaN(e,t){return"number"==typeof e&&isNaN(e)?t:e}function countTruthy(e){return e.reduce((function(e,t){return e+(t?1:0)}),0)}function round(e,t){if(void 0===t&&(t=1),Math.abs(t)>=1)return Math.round(e/t)*t;var n=1/t;return Math.round(e*n)/n}function parseSimpleCssSelector(e){for(var t,n,r="Unexpected syntax '".concat(e,"'"),o=/^\s*([a-z-]*)(.*)$/i.exec(e),i=o[1]||void 0,a={},c=/([.:#][\w-]+|\[.+?\])/gi,s=function(e,t){a[e]=a[e]||[],a[e].push(t)};;){var l=c.exec(o[2]);if(!l)break;var u=l[0];switch(u[0]){case".":s("class",u.slice(1));break;case"#":s("id",u.slice(1));break;case"[":var d=/^\[([\w-]+)([~|^$*]?=("(.*?)"|([\w-]+)))?(\s+[is])?\]$/.exec(u);if(!d)throw new Error(r);s(d[1],null!==(n=null!==(t=d[4])&&void 0!==t?t:d[5])&&void 0!==n?n:"");break;default:throw new Error(r)}}return[i,a]}function ensureErrorWithMessage(e){return e&&"object"==typeof e&&"message"in e?e:{message:e}}function isFinalResultLoaded(e){return"function"!=typeof e}function loadSource(e,t){var n=new Promise((function(n){var r=Date.now();awaitIfAsync(e.bind(null,t),(function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];var o=Date.now()-r;if(!e[0])return n((function(){return{error:ensureErrorWithMessage(e[1]),duration:o}}));var i=e[1];if(isFinalResultLoaded(i))return n((function(){return{value:i,duration:o}}));n((function(){return new Promise((function(e){var t=Date.now();awaitIfAsync(i,(function(){for(var n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];var i=o+Date.now()-t;if(!n[0])return e({error:ensureErrorWithMessage(n[1]),duration:i});e({value:n[1],duration:i})}))}))}))}))}));return suppressUnhandledRejectionWarning(n),function(){return n.then((function(e){return e()}))}}function loadSources(e,t,n){var r=Object.keys(e).filter((function(e){return excludes(n,e)})),o=mapWithBreaks(r,(function(n){return loadSource(e[n],t)}));return suppressUnhandledRejectionWarning(o),function(){return __awaiter(this,void 0,void 0,(function(){var e,t,n,i;return __generator(this,(function(a){switch(a.label){case 0:return[4,o];case 1:return[4,mapWithBreaks(a.sent(),(function(e){var t=e();return suppressUnhandledRejectionWarning(t),t}))];case 2:return e=a.sent(),[4,Promise.all(e)];case 3:for(t=a.sent(),n={},i=0;i<r.length;++i)n[r[i]]=t[i];return[2,n]}}))}))}}function isTrident(){var e=window,t=navigator;return countTruthy(["MSCSSMatrix"in e,"msSetImmediate"in e,"msIndexedDB"in e,"msMaxTouchPoints"in t,"msPointerEnabled"in t])>=4}function isEdgeHTML(){var e=window,t=navigator;return countTruthy(["msWriteProfilerMark"in e,"MSStream"in e,"msLaunchUri"in t,"msSaveBlob"in t])>=3&&!isTrident()}function isChromium(){var e=window,t=navigator;return countTruthy(["webkitPersistentStorage"in t,"webkitTemporaryStorage"in t,0===t.vendor.indexOf("Google"),"webkitResolveLocalFileSystemURL"in e,"BatteryManager"in e,"webkitMediaStream"in e,"webkitSpeechGrammar"in e])>=5}function isWebKit(){var e=window,t=navigator;return countTruthy(["ApplePayError"in e,"CSSPrimitiveValue"in e,"Counter"in e,0===t.vendor.indexOf("Apple"),"getStorageUpdates"in t,"WebKitMediaKeys"in e])>=4}function isDesktopSafari(){var e=window;return countTruthy(["safari"in e,!("DeviceMotionEvent"in e),!("ongestureend"in e),!("standalone"in navigator)])>=3}function isGecko(){var e,t,n=window;return countTruthy(["buildID"in navigator,"MozAppearance"in(null!==(t=null===(e=document.documentElement)||void 0===e?void 0:e.style)&&void 0!==t?t:{}),"onmozfullscreenchange"in n,"mozInnerScreenX"in n,"CSSMozDocumentRule"in n,"CanvasCaptureMediaStream"in n])>=4}function isChromium86OrNewer(){var e=window;return countTruthy([!("MediaSettingsRange"in e),"RTCEncodedAudioFrame"in e,""+e.Intl=="[object Intl]",""+e.Reflect=="[object Reflect]"])>=3}function isWebKit606OrNewer(){var e=window;return countTruthy(["DOMRectList"in e,"RTCPeerConnectionIceEvent"in e,"SVGGeometryElement"in e,"ontransitioncancel"in e])>=3}function isIPad(){if("iPad"===navigator.platform)return!0;var e=screen,t=e.width/e.height;return countTruthy(["MediaSource"in window,!!Element.prototype.webkitRequestFullscreen,t>.65&&t<1.53])>=2}function getFullscreenElement(){var e=document;return e.fullscreenElement||e.msFullscreenElement||e.mozFullScreenElement||e.webkitFullscreenElement||null}function exitFullscreen(){var e=document;return(e.exitFullscreen||e.msExitFullscreen||e.mozCancelFullScreen||e.webkitExitFullscreen).call(e)}function isAndroid(){var e=isChromium(),t=isGecko();if(!e&&!t)return!1;var n=window;return countTruthy(["onorientationchange"in n,"orientation"in n,e&&!("SharedWorker"in n),t&&/android/i.test(navigator.appVersion)])>=2}function getAudioFingerprint(){var e=window,t=e.OfflineAudioContext||e.webkitOfflineAudioContext;if(!t)return-2;if(doesCurrentBrowserSuspendAudioContext())return-1;var n=new t(1,5e3,44100),r=n.createOscillator();r.type="triangle",r.frequency.value=1e4;var o=n.createDynamicsCompressor();o.threshold.value=-50,o.knee.value=40,o.ratio.value=12,o.attack.value=0,o.release.value=.25,r.connect(o),o.connect(n.destination),r.start(0);var i=startRenderingAudio(n),a=i[0],c=i[1],s=a.then((function(e){return getHash(e.getChannelData(0).subarray(4500))}),(function(e){if("timeout"===e.name||"suspended"===e.name)return-3;throw e}));return suppressUnhandledRejectionWarning(s),function(){return c(),s}}function doesCurrentBrowserSuspendAudioContext(){return isWebKit()&&!isDesktopSafari()&&!isWebKit606OrNewer()}function startRenderingAudio(e){var t=function(){};return[new Promise((function(n,r){var o=!1,i=0,a=0;e.oncomplete=function(e){return n(e.renderedBuffer)};var c=function(){setTimeout((function(){return r(makeInnerError("timeout"))}),Math.min(500,a+5e3-Date.now()))},s=function(){try{var t=e.startRendering();switch(isPromise(t)&&suppressUnhandledRejectionWarning(t),e.state){case"running":a=Date.now(),o&&c();break;case"suspended":document.hidden||i++,o&&i>=3?r(makeInnerError("suspended")):setTimeout(s,500)}}catch(e){r(e)}};s(),t=function(){o||(o=!0,a>0&&c())}})),t]}function getHash(e){for(var t=0,n=0;n<e.length;++n)t+=Math.abs(e[n]);return t}function makeInnerError(e){var t=new Error(e);return t.name=e,t}function withIframe(e,t,n){var r,o,i;return void 0===n&&(n=50),__awaiter(this,void 0,void 0,(function(){var a,c;return __generator(this,(function(s){switch(s.label){case 0:a=document,s.label=1;case 1:return a.body?[3,3]:[4,wait(n)];case 2:return s.sent(),[3,1];case 3:c=a.createElement("iframe"),s.label=4;case 4:return s.trys.push([4,,10,11]),[4,new Promise((function(e,n){var r=!1,o=function(){r=!0,e()};c.onload=o,c.onerror=function(e){r=!0,n(e)};var i=c.style;i.setProperty("display","block","important"),i.position="absolute",i.top="0",i.left="0",i.visibility="hidden",t&&"srcdoc"in c?c.srcdoc=t:c.src="about:blank",a.body.appendChild(c);var s=function(){var e,t;r||("complete"===(null===(t=null===(e=c.contentWindow)||void 0===e?void 0:e.document)||void 0===t?void 0:t.readyState)?o():setTimeout(s,10))};s()}))];case 5:s.sent(),s.label=6;case 6:return(null===(o=null===(r=c.contentWindow)||void 0===r?void 0:r.document)||void 0===o?void 0:o.body)?[3,8]:[4,wait(n)];case 7:return s.sent(),[3,6];case 8:return[4,e(c,c.contentWindow)];case 9:return[2,s.sent()];case 10:return null===(i=c.parentNode)||void 0===i||i.removeChild(c),[7];case 11:return[2]}}))}))}function selectorToElement(e){for(var t=parseSimpleCssSelector(e),n=t[0],r=t[1],o=document.createElement(null!=n?n:"div"),i=0,a=Object.keys(r);i<a.length;i++){var c=a[i],s=r[c].join(" ");"style"===c?addStyleString(o.style,s):o.setAttribute(c,s)}return o}function addStyleString(e,t){for(var n=0,r=t.split(";");n<r.length;n++){var o=r[n],i=/^\s*([\w-]+)\s*:\s*(.+?)(\s*!([\w-]+))?\s*$/.exec(o);if(i){var a=i[1],c=i[2],s=i[4];e.setProperty(a,c,s||"")}}}var testString="mmMwWLliI0O&1",textSize="48px",baseFonts=["monospace","sans-serif","serif"],fontList=["sans-serif-thin","ARNO PRO","Agency FB","Arabic Typesetting","Arial Unicode MS","AvantGarde Bk BT","BankGothic Md BT","Batang","Bitstream Vera Sans Mono","Calibri","Century","Century Gothic","Clarendon","EUROSTILE","Franklin Gothic","Futura Bk BT","Futura Md BT","GOTHAM","Gill Sans","HELV","Haettenschweiler","Helvetica Neue","Humanst521 BT","Leelawadee","Letter Gothic","Levenim MT","Lucida Bright","Lucida Sans","Menlo","MS Mincho","MS Outlook","MS Reference Specialty","MS UI Gothic","MT Extra","MYRIAD PRO","Marlett","Meiryo UI","Microsoft Uighur","Minion Pro","Monotype Corsiva","PMingLiU","Pristina","SCRIPTINA","Segoe UI Light","Serifa","SimHei","Small Fonts","Staccato222 BT","TRAJAN PRO","Univers CE 55 Medium","Vrinda","ZWAdobeF"];function getFonts(){return withIframe((function(e,t){var n=t.document,r=n.body;r.style.fontSize=textSize;var o=n.createElement("div"),i={},a={},c=function(e){var t=n.createElement("span"),r=t.style;return r.position="absolute",r.top="0",r.left="0",r.fontFamily=e,t.textContent=testString,o.appendChild(t),t},s=baseFonts.map(c),l=function(){for(var e={},t=function(t){e[t]=baseFonts.map((function(e){return function(e,t){return c("'".concat(e,"',").concat(t))}(t,e)}))},n=0,r=fontList;n<r.length;n++){t(r[n])}return e}();r.appendChild(o);for(var u=0;u<baseFonts.length;u++)i[baseFonts[u]]=s[u].offsetWidth,a[baseFonts[u]]=s[u].offsetHeight;return fontList.filter((function(e){return t=l[e],baseFonts.some((function(e,n){return t[n].offsetWidth!==i[e]||t[n].offsetHeight!==a[e]}));var t}))}))}function getPlugins(){var e=navigator.plugins;if(e){for(var t=[],n=0;n<e.length;++n){var r=e[n];if(r){for(var o=[],i=0;i<r.length;++i){var a=r[i];o.push({type:a.type,suffixes:a.suffixes})}t.push({name:r.name,description:r.description,mimeTypes:o})}}return t}}function getCanvasFingerprint(){var e,t,n=!1,r=makeCanvasContext(),o=r[0],i=r[1];if(isSupported(o,i)){n=doesSupportWinding(i),renderTextImage(o,i);var a=canvasToString(o);a!==canvasToString(o)?e=t="unstable":(t=a,renderGeometryImage(o,i),e=canvasToString(o))}else e=t="";return{winding:n,geometry:e,text:t}}function makeCanvasContext(){var e=document.createElement("canvas");return e.width=1,e.height=1,[e,e.getContext("2d")]}function isSupported(e,t){return!(!t||!e.toDataURL)}function doesSupportWinding(e){return e.rect(0,0,10,10),e.rect(2,2,6,6),!e.isPointInPath(5,5,"evenodd")}function renderTextImage(e,t){e.width=240,e.height=60,t.textBaseline="alphabetic",t.fillStyle="#f60",t.fillRect(100,1,62,20),t.fillStyle="#069",t.font='11pt "Times New Roman"';var n="Cwm fjordbank gly ".concat(String.fromCharCode(55357,56835));t.fillText(n,2,15),t.fillStyle="rgba(102, 204, 0, 0.2)",t.font="18pt Arial",t.fillText(n,4,45)}function renderGeometryImage(e,t){e.width=122,e.height=110,t.globalCompositeOperation="multiply";for(var n=0,r=[["#f2f",40,40],["#2ff",80,40],["#ff2",60,80]];n<r.length;n++){var o=r[n],i=o[0],a=o[1],c=o[2];t.fillStyle=i,t.beginPath(),t.arc(a,c,40,0,2*Math.PI,!0),t.closePath(),t.fill()}t.fillStyle="#f9c",t.arc(60,60,60,0,2*Math.PI,!0),t.arc(60,60,20,0,2*Math.PI,!0),t.fill("evenodd")}function canvasToString(e){return e.toDataURL()}function getTouchSupport(){var e,t=navigator,n=0;void 0!==t.maxTouchPoints?n=toInt(t.maxTouchPoints):void 0!==t.msMaxTouchPoints&&(n=t.msMaxTouchPoints);try{document.createEvent("TouchEvent"),e=!0}catch(t){e=!1}return{maxTouchPoints:n,touchEvent:e,touchStart:"ontouchstart"in window}}function getOsCpu(){return navigator.oscpu}function getLanguages(){var e=navigator,t=[],n=e.language||e.userLanguage||e.browserLanguage||e.systemLanguage;if(void 0!==n&&t.push([n]),Array.isArray(e.languages))isChromium()&&isChromium86OrNewer()||t.push(e.languages);else if("string"==typeof e.languages){var r=e.languages;r&&t.push(r.split(","))}return t}function getColorDepth(){return window.screen.colorDepth}function getDeviceMemory(){return replaceNaN(toFloat(navigator.deviceMemory),void 0)}function getScreenResolution(){var e=screen,t=function(e){return replaceNaN(toInt(e),null)},n=[t(e.width),t(e.height)];return n.sort().reverse(),n}var screenFrameBackup,screenFrameSizeTimeoutId,screenFrameCheckInterval=2500,roundingPrecision=10;function watchScreenFrame(){if(void 0===screenFrameSizeTimeoutId){var e=function(){var t=getCurrentScreenFrame();isFrameSizeNull(t)?screenFrameSizeTimeoutId=setTimeout(e,screenFrameCheckInterval):(screenFrameBackup=t,screenFrameSizeTimeoutId=void 0)};e()}}function getScreenFrame(){var e=this;return watchScreenFrame(),function(){return __awaiter(e,void 0,void 0,(function(){var e;return __generator(this,(function(t){switch(t.label){case 0:return isFrameSizeNull(e=getCurrentScreenFrame())?screenFrameBackup?[2,__spreadArray([],screenFrameBackup,!0)]:getFullscreenElement()?[4,exitFullscreen()]:[3,2]:[3,2];case 1:t.sent(),e=getCurrentScreenFrame(),t.label=2;case 2:return isFrameSizeNull(e)||(screenFrameBackup=e),[2,e]}}))}))}}function getRoundedScreenFrame(){var e=this,t=getScreenFrame();return function(){return __awaiter(e,void 0,void 0,(function(){var e,n;return __generator(this,(function(r){switch(r.label){case 0:return[4,t()];case 1:return e=r.sent(),[2,[(n=function(e){return null===e?null:round(e,roundingPrecision)})(e[0]),n(e[1]),n(e[2]),n(e[3])]]}}))}))}}function getCurrentScreenFrame(){var e=screen;return[replaceNaN(toFloat(e.availTop),null),replaceNaN(toFloat(e.width)-toFloat(e.availWidth)-replaceNaN(toFloat(e.availLeft),0),null),replaceNaN(toFloat(e.height)-toFloat(e.availHeight)-replaceNaN(toFloat(e.availTop),0),null),replaceNaN(toFloat(e.availLeft),null)]}function isFrameSizeNull(e){for(var t=0;t<4;++t)if(e[t])return!1;return!0}function getHardwareConcurrency(){return replaceNaN(toInt(navigator.hardwareConcurrency),void 0)}function getTimezone(){var e,t=null===(e=window.Intl)||void 0===e?void 0:e.DateTimeFormat;if(t){var n=(new t).resolvedOptions().timeZone;if(n)return n}var r=-getTimezoneOffset();return"UTC".concat(r>=0?"+":"").concat(Math.abs(r))}function getTimezoneOffset(){var e=(new Date).getFullYear();return Math.max(toFloat(new Date(e,0,1).getTimezoneOffset()),toFloat(new Date(e,6,1).getTimezoneOffset()))}function getSessionStorage(){try{return!!window.sessionStorage}catch(e){return!0}}function getLocalStorage(){try{return!!window.localStorage}catch(e){return!0}}function getIndexedDB(){if(!isTrident()&&!isEdgeHTML())try{return!!window.indexedDB}catch(e){return!0}}function getOpenDatabase(){return!!window.openDatabase}function getCpuClass(){return navigator.cpuClass}function getPlatform(){var e=navigator.platform;return"MacIntel"===e&&isWebKit()&&!isDesktopSafari()?isIPad()?"iPad":"iPhone":e}function getVendor(){return navigator.vendor||""}function getVendorFlavors(){for(var e=[],t=0,n=["chrome","safari","__crWeb","__gCrWeb","yandex","__yb","__ybro","__firefox__","__edgeTrackingPreventionStatistics","webkit","oprt","samsungAr","ucweb","UCShellJava","puffinDevice"];t<n.length;t++){var r=n[t],o=window[r];o&&"object"==typeof o&&e.push(r)}return e.sort()}function areCookiesEnabled(){var e=document;try{e.cookie="cookietest=1; SameSite=Strict;";var t=-1!==e.cookie.indexOf("cookietest=");return e.cookie="cookietest=1; SameSite=Strict; expires=Thu, 01-Jan-1970 00:00:01 GMT",t}catch(e){return!1}}function getFilters(){var e=atob;return{abpIndo:["#Iklan-Melayang","#Kolom-Iklan-728","#SidebarIklan-wrapper",'[title="ALIENBOLA" i]',e("I0JveC1CYW5uZXItYWRz")],abpvn:[".quangcao","#mobileCatfish",e("LmNsb3NlLWFkcw=="),'[id^="bn_bottom_fixed_"]',"#pmadv"],adBlockFinland:[".mainostila",e("LnNwb25zb3JpdA=="),".ylamainos",e("YVtocmVmKj0iL2NsaWNrdGhyZ2guYXNwPyJd"),e("YVtocmVmXj0iaHR0cHM6Ly9hcHAucmVhZHBlYWsuY29tL2FkcyJd")],adBlockPersian:["#navbar_notice_50",".kadr",'TABLE[width="140px"]',"#divAgahi",e("YVtocmVmXj0iaHR0cDovL2cxLnYuZndtcm0ubmV0L2FkLyJd")],adBlockWarningRemoval:["#adblock-honeypot",".adblocker-root",".wp_adblock_detect",e("LmhlYWRlci1ibG9ja2VkLWFk"),e("I2FkX2Jsb2NrZXI=")],adGuardAnnoyances:[".hs-sosyal","#cookieconsentdiv",'div[class^="app_gdpr"]',".as-oil",'[data-cypress="soft-push-notification-modal"]'],adGuardBase:[".BetterJsPopOverlay",e("I2FkXzMwMFgyNTA="),e("I2Jhbm5lcmZsb2F0MjI="),e("I2NhbXBhaWduLWJhbm5lcg=="),e("I0FkLUNvbnRlbnQ=")],adGuardChinese:[e("LlppX2FkX2FfSA=="),e("YVtocmVmKj0iLmh0aGJldDM0LmNvbSJd"),"#widget-quan",e("YVtocmVmKj0iLzg0OTkyMDIwLnh5eiJd"),e("YVtocmVmKj0iLjE5NTZobC5jb20vIl0=")],adGuardFrench:["#pavePub",e("LmFkLWRlc2t0b3AtcmVjdGFuZ2xl"),".mobile_adhesion",".widgetadv",e("LmFkc19iYW4=")],adGuardGerman:['aside[data-portal-id="leaderboard"]'],adGuardJapanese:["#kauli_yad_1",e("YVtocmVmXj0iaHR0cDovL2FkMi50cmFmZmljZ2F0ZS5uZXQvIl0="),e("Ll9wb3BJbl9pbmZpbml0ZV9hZA=="),e("LmFkZ29vZ2xl"),e("Ll9faXNib29zdFJldHVybkFk")],adGuardMobile:[e("YW1wLWF1dG8tYWRz"),e("LmFtcF9hZA=="),'amp-embed[type="24smi"]',"#mgid_iframe1",e("I2FkX2ludmlld19hcmVh")],adGuardRussian:[e("YVtocmVmXj0iaHR0cHM6Ly9hZC5sZXRtZWFkcy5jb20vIl0="),e("LnJlY2xhbWE="),'div[id^="smi2adblock"]',e("ZGl2W2lkXj0iQWRGb3hfYmFubmVyXyJd"),"#psyduckpockeball"],adGuardSocial:[e("YVtocmVmXj0iLy93d3cuc3R1bWJsZXVwb24uY29tL3N1Ym1pdD91cmw9Il0="),e("YVtocmVmXj0iLy90ZWxlZ3JhbS5tZS9zaGFyZS91cmw/Il0="),".etsy-tweet","#inlineShare",".popup-social"],adGuardSpanishPortuguese:["#barraPublicidade","#Publicidade","#publiEspecial","#queTooltip",".cnt-publi"],adGuardTrackingProtection:["#qoo-counter",e("YVtocmVmXj0iaHR0cDovL2NsaWNrLmhvdGxvZy5ydS8iXQ=="),e("YVtocmVmXj0iaHR0cDovL2hpdGNvdW50ZXIucnUvdG9wL3N0YXQucGhwIl0="),e("YVtocmVmXj0iaHR0cDovL3RvcC5tYWlsLnJ1L2p1bXAiXQ=="),"#top100counter"],adGuardTurkish:["#backkapat",e("I3Jla2xhbWk="),e("YVtocmVmXj0iaHR0cDovL2Fkc2Vydi5vbnRlay5jb20udHIvIl0="),e("YVtocmVmXj0iaHR0cDovL2l6bGVuemkuY29tL2NhbXBhaWduLyJd"),e("YVtocmVmXj0iaHR0cDovL3d3dy5pbnN0YWxsYWRzLm5ldC8iXQ==")],bulgarian:[e("dGQjZnJlZW5ldF90YWJsZV9hZHM="),"#ea_intext_div",".lapni-pop-over","#xenium_hot_offers"],easyList:[".yb-floorad",e("LndpZGdldF9wb19hZHNfd2lkZ2V0"),e("LnRyYWZmaWNqdW5reS1hZA=="),".textad_headline",e("LnNwb25zb3JlZC10ZXh0LWxpbmtz")],easyListChina:[e("LmFwcGd1aWRlLXdyYXBbb25jbGljayo9ImJjZWJvcy5jb20iXQ=="),e("LmZyb250cGFnZUFkdk0="),"#taotaole","#aafoot.top_box",".cfa_popup"],easyListCookie:[".ezmob-footer",".cc-CookieWarning","[data-cookie-number]",e("LmF3LWNvb2tpZS1iYW5uZXI="),".sygnal24-gdpr-modal-wrap"],easyListCzechSlovak:["#onlajny-stickers",e("I3Jla2xhbW5pLWJveA=="),e("LnJla2xhbWEtbWVnYWJvYXJk"),".sklik",e("W2lkXj0ic2tsaWtSZWtsYW1hIl0=")],easyListDutch:[e("I2FkdmVydGVudGll"),e("I3ZpcEFkbWFya3RCYW5uZXJCbG9jaw=="),".adstekst",e("YVtocmVmXj0iaHR0cHM6Ly94bHR1YmUubmwvY2xpY2svIl0="),"#semilo-lrectangle"],easyListGermany:["#SSpotIMPopSlider",e("LnNwb25zb3JsaW5rZ3J1ZW4="),e("I3dlcmJ1bmdza3k="),e("I3Jla2xhbWUtcmVjaHRzLW1pdHRl"),e("YVtocmVmXj0iaHR0cHM6Ly9iZDc0Mi5jb20vIl0=")],easyListItaly:[e("LmJveF9hZHZfYW5udW5jaQ=="),".sb-box-pubbliredazionale",e("YVtocmVmXj0iaHR0cDovL2FmZmlsaWF6aW9uaWFkcy5zbmFpLml0LyJd"),e("YVtocmVmXj0iaHR0cHM6Ly9hZHNlcnZlci5odG1sLml0LyJd"),e("YVtocmVmXj0iaHR0cHM6Ly9hZmZpbGlhemlvbmlhZHMuc25haS5pdC8iXQ==")],easyListLithuania:[e("LnJla2xhbW9zX3RhcnBhcw=="),e("LnJla2xhbW9zX251b3JvZG9z"),e("aW1nW2FsdD0iUmVrbGFtaW5pcyBza3lkZWxpcyJd"),e("aW1nW2FsdD0iRGVkaWt1b3RpLmx0IHNlcnZlcmlhaSJd"),e("aW1nW2FsdD0iSG9zdGluZ2FzIFNlcnZlcmlhaS5sdCJd")],estonian:[e("QVtocmVmKj0iaHR0cDovL3BheTRyZXN1bHRzMjQuZXUiXQ==")],fanboyAnnoyances:["#ac-lre-player",".navigate-to-top","#subscribe_popup",".newsletter_holder","#back-top"],fanboyAntiFacebook:[".util-bar-module-firefly-visible"],fanboyEnhancedTrackers:[".open.pushModal","#issuem-leaky-paywall-articles-zero-remaining-nag","#sovrn_container",'div[class$="-hide"][zoompage-fontsize][style="display: block;"]',".BlockNag__Card"],fanboySocial:["#FollowUs","#meteored_share","#social_follow",".article-sharer",".community__social-desc"],frellwitSwedish:[e("YVtocmVmKj0iY2FzaW5vcHJvLnNlIl1bdGFyZ2V0PSJfYmxhbmsiXQ=="),e("YVtocmVmKj0iZG9rdG9yLXNlLm9uZWxpbmsubWUiXQ=="),"article.category-samarbete",e("ZGl2LmhvbGlkQWRz"),"ul.adsmodern"],greekAdBlock:[e("QVtocmVmKj0iYWRtYW4ub3RlbmV0LmdyL2NsaWNrPyJd"),e("QVtocmVmKj0iaHR0cDovL2F4aWFiYW5uZXJzLmV4b2R1cy5nci8iXQ=="),e("QVtocmVmKj0iaHR0cDovL2ludGVyYWN0aXZlLmZvcnRobmV0LmdyL2NsaWNrPyJd"),"DIV.agores300","TABLE.advright"],hungarian:["#cemp_doboz",".optimonk-iframe-container",e("LmFkX19tYWlu"),e("W2NsYXNzKj0iR29vZ2xlQWRzIl0="),"#hirdetesek_box"],iDontCareAboutCookies:['.alert-info[data-block-track*="CookieNotice"]',".ModuleTemplateCookieIndicator",".o--cookies--container","#cookies-policy-sticky","#stickyCookieBar"],icelandicAbp:[e("QVtocmVmXj0iL2ZyYW1ld29yay9yZXNvdXJjZXMvZm9ybXMvYWRzLmFzcHgiXQ==")],latvian:[e("YVtocmVmPSJodHRwOi8vd3d3LnNhbGlkemluaS5sdi8iXVtzdHlsZT0iZGlzcGxheTogYmxvY2s7IHdpZHRoOiAxMjBweDsgaGVpZ2h0OiA0MHB4OyBvdmVyZmxvdzogaGlkZGVuOyBwb3NpdGlvbjogcmVsYXRpdmU7Il0="),e("YVtocmVmPSJodHRwOi8vd3d3LnNhbGlkemluaS5sdi8iXVtzdHlsZT0iZGlzcGxheTogYmxvY2s7IHdpZHRoOiA4OHB4OyBoZWlnaHQ6IDMxcHg7IG92ZXJmbG93OiBoaWRkZW47IHBvc2l0aW9uOiByZWxhdGl2ZTsiXQ==")],listKr:[e("YVtocmVmKj0iLy9hZC5wbGFuYnBsdXMuY28ua3IvIl0="),e("I2xpdmVyZUFkV3JhcHBlcg=="),e("YVtocmVmKj0iLy9hZHYuaW1hZHJlcC5jby5rci8iXQ=="),e("aW5zLmZhc3R2aWV3LWFk"),".revenue_unit_item.dable"],listeAr:[e("LmdlbWluaUxCMUFk"),".right-and-left-sponsers",e("YVtocmVmKj0iLmFmbGFtLmluZm8iXQ=="),e("YVtocmVmKj0iYm9vcmFxLm9yZyJd"),e("YVtocmVmKj0iZHViaXp6bGUuY29tL2FyLz91dG1fc291cmNlPSJd")],listeFr:[e("YVtocmVmXj0iaHR0cDovL3Byb21vLnZhZG9yLmNvbS8iXQ=="),e("I2FkY29udGFpbmVyX3JlY2hlcmNoZQ=="),e("YVtocmVmKj0id2Vib3JhbWEuZnIvZmNnaS1iaW4vIl0="),".site-pub-interstitiel",'div[id^="crt-"][data-criteo-id]'],officialPolish:["#ceneo-placeholder-ceneo-12",e("W2hyZWZePSJodHRwczovL2FmZi5zZW5kaHViLnBsLyJd"),e("YVtocmVmXj0iaHR0cDovL2Fkdm1hbmFnZXIudGVjaGZ1bi5wbC9yZWRpcmVjdC8iXQ=="),e("YVtocmVmXj0iaHR0cDovL3d3dy50cml6ZXIucGwvP3V0bV9zb3VyY2UiXQ=="),e("ZGl2I3NrYXBpZWNfYWQ=")],ro:[e("YVtocmVmXj0iLy9hZmZ0cmsuYWx0ZXgucm8vQ291bnRlci9DbGljayJd"),e("YVtocmVmXj0iaHR0cHM6Ly9ibGFja2ZyaWRheXNhbGVzLnJvL3Ryay9zaG9wLyJd"),e("YVtocmVmXj0iaHR0cHM6Ly9ldmVudC4ycGVyZm9ybWFudC5jb20vZXZlbnRzL2NsaWNrIl0="),e("YVtocmVmXj0iaHR0cHM6Ly9sLnByb2ZpdHNoYXJlLnJvLyJd"),'a[href^="/url/"]'],ruAd:[e("YVtocmVmKj0iLy9mZWJyYXJlLnJ1LyJd"),e("YVtocmVmKj0iLy91dGltZy5ydS8iXQ=="),e("YVtocmVmKj0iOi8vY2hpa2lkaWtpLnJ1Il0="),"#pgeldiz",".yandex-rtb-block"],thaiAds:["a[href*=macau-uta-popup]",e("I2Fkcy1nb29nbGUtbWlkZGxlX3JlY3RhbmdsZS1ncm91cA=="),e("LmFkczMwMHM="),".bumq",".img-kosana"],webAnnoyancesUltralist:["#mod-social-share-2","#social-tools",e("LmN0cGwtZnVsbGJhbm5lcg=="),".zergnet-recommend",".yt.btn-link.btn-md.btn"]}}function getDomBlockers(e){var t=(void 0===e?{}:e).debug;return __awaiter(this,void 0,void 0,(function(){var e,n,r,o,i;return __generator(this,(function(a){switch(a.label){case 0:return isApplicable()?(e=getFilters(),n=Object.keys(e),[4,getBlockedSelectors((i=[]).concat.apply(i,n.map((function(t){return e[t]}))))]):[2,void 0];case 1:return r=a.sent(),t&&printDebug(e,r),(o=n.filter((function(t){var n=e[t];return countTruthy(n.map((function(e){return r[e]})))>.6*n.length}))).sort(),[2,o]}}))}))}function isApplicable(){return isWebKit()||isAndroid()}function getBlockedSelectors(e){var t;return __awaiter(this,void 0,void 0,(function(){var n,r,o,i,a,c,s;return __generator(this,(function(l){switch(l.label){case 0:for(n=document,r=n.createElement("div"),o=new Array(e.length),i={},forceShow(r),s=0;s<e.length;++s)"DIALOG"===(a=selectorToElement(e[s])).tagName&&a.show(),forceShow(c=n.createElement("div")),c.appendChild(a),r.appendChild(c),o[s]=a;l.label=1;case 1:return n.body?[3,3]:[4,wait(50)];case 2:return l.sent(),[3,1];case 3:n.body.appendChild(r);try{for(s=0;s<e.length;++s)o[s].offsetParent||(i[e[s]]=!0)}finally{null===(t=r.parentNode)||void 0===t||t.removeChild(r)}return[2,i]}}))}))}function forceShow(e){e.style.setProperty("display","block","important")}function printDebug(e,t){for(var n="DOM blockers debug:\n```",r=0,o=Object.keys(e);r<o.length;r++){var i=o[r];n+="\n".concat(i,":");for(var a=0,c=e[i];a<c.length;a++){var s=c[a];n+="\n ".concat(t[s]?"🚫":"➡️"," ").concat(s)}}console.log("".concat(n,"\n```"))}function getColorGamut(){for(var e=0,t=["rec2020","p3","srgb"];e<t.length;e++){var n=t[e];if(matchMedia("(color-gamut: ".concat(n,")")).matches)return n}}function areColorsInverted(){return!!doesMatch$4("inverted")||!doesMatch$4("none")&&void 0}function doesMatch$4(e){return matchMedia("(inverted-colors: ".concat(e,")")).matches}function areColorsForced(){return!!doesMatch$3("active")||!doesMatch$3("none")&&void 0}function doesMatch$3(e){return matchMedia("(forced-colors: ".concat(e,")")).matches}var maxValueToCheck=100;function getMonochromeDepth(){if(matchMedia("(min-monochrome: 0)").matches){for(var e=0;e<=maxValueToCheck;++e)if(matchMedia("(max-monochrome: ".concat(e,")")).matches)return e;throw new Error("Too high value")}}function getContrastPreference(){return doesMatch$2("no-preference")?0:doesMatch$2("high")||doesMatch$2("more")?1:doesMatch$2("low")||doesMatch$2("less")?-1:doesMatch$2("forced")?10:void 0}function doesMatch$2(e){return matchMedia("(prefers-contrast: ".concat(e,")")).matches}function isMotionReduced(){return!!doesMatch$1("reduce")||!doesMatch$1("no-preference")&&void 0}function doesMatch$1(e){return matchMedia("(prefers-reduced-motion: ".concat(e,")")).matches}function isHDR(){return!!doesMatch("high")||!doesMatch("standard")&&void 0}function doesMatch(e){return matchMedia("(dynamic-range: ".concat(e,")")).matches}var M=Math,fallbackFn=function(){return 0};function getMathFingerprint(){var e,t=M.acos||fallbackFn,n=M.acosh||fallbackFn,r=M.asin||fallbackFn,o=M.asinh||fallbackFn,i=M.atanh||fallbackFn,a=M.atan||fallbackFn,c=M.sin||fallbackFn,s=M.sinh||fallbackFn,l=M.cos||fallbackFn,u=M.cosh||fallbackFn,d=M.tan||fallbackFn,h=M.tanh||fallbackFn,m=M.exp||fallbackFn,f=M.expm1||fallbackFn,p=M.log1p||fallbackFn;return{acos:t(.12312423423423424),acosh:n(1e308),acoshPf:(e=1e154,M.log(e+M.sqrt(e*e-1))),asin:r(.12312423423423424),asinh:o(1),asinhPf:function(e){return M.log(e+M.sqrt(e*e+1))}(1),atanh:i(.5),atanhPf:function(e){return M.log((1+e)/(1-e))/2}(.5),atan:a(.5),sin:c(-1e300),sinh:s(1),sinhPf:function(e){return M.exp(e)-1/M.exp(e)/2}(1),cos:l(10.000000000123),cosh:u(1),coshPf:function(e){return(M.exp(e)+1/M.exp(e))/2}(1),tan:d(-1e300),tanh:h(1),tanhPf:function(e){return(M.exp(2*e)-1)/(M.exp(2*e)+1)}(1),exp:m(1),expm1:f(1),expm1Pf:function(e){return M.exp(e)-1}(1),log1p:p(10),log1pPf:function(e){return M.log(1+e)}(10),powPI:function(e){return M.pow(M.PI,e)}(-100)}}var defaultText="mmMwWLliI0fiflO&1",presets={default:[],apple:[{font:"-apple-system-body"}],serif:[{fontFamily:"serif"}],sans:[{fontFamily:"sans-serif"}],mono:[{fontFamily:"monospace"}],min:[{fontSize:"1px"}],system:[{fontFamily:"system-ui"}]};function getFontPreferences(){return withNaturalFonts((function(e,t){for(var n={},r={},o=0,i=Object.keys(presets);o<i.length;o++){var a=i[o],c=presets[a],s=c[0],l=void 0===s?{}:s,u=c[1],d=void 0===u?defaultText:u,h=e.createElement("span");h.textContent=d,h.style.whiteSpace="nowrap";for(var m=0,f=Object.keys(l);m<f.length;m++){var p=f[m],v=l[p];void 0!==v&&(h.style[p]=v)}n[a]=h,t.appendChild(e.createElement("br")),t.appendChild(h)}for(var g=0,y=Object.keys(presets);g<y.length;g++){r[a=y[g]]=n[a].getBoundingClientRect().width}return r}))}function withNaturalFonts(e,t){return void 0===t&&(t=4e3),withIframe((function(n,r){var o=r.document,i=o.body,a=i.style;a.width="".concat(t,"px"),a.webkitTextSizeAdjust=a.textSizeAdjust="none",isChromium()?i.style.zoom="".concat(1/r.devicePixelRatio):isWebKit()&&(i.style.zoom="reset");var c=o.createElement("div");return c.textContent=__spreadArray([],Array(t/20|0),!0).map((function(){return"word"})).join(" "),i.appendChild(c),e(o,i)}),'<!doctype html><html><head><meta name="viewport" content="width=device-width, initial-scale=1">')}function getVideoCard(){var e,t=document.createElement("canvas"),n=null!==(e=t.getContext("webgl"))&&void 0!==e?e:t.getContext("experimental-webgl");if(n&&"getExtension"in n){var r=n.getExtension("WEBGL_debug_renderer_info");if(r)return{vendor:(n.getParameter(r.UNMASKED_VENDOR_WEBGL)||"").toString(),renderer:(n.getParameter(r.UNMASKED_RENDERER_WEBGL)||"").toString()}}}function isPdfViewerEnabled(){return navigator.pdfViewerEnabled}function getArchitecture(){var e=new Float32Array(1),t=new Uint8Array(e.buffer);return e[0]=1/0,e[0]=e[0]-e[0],t[3]}var sources={fonts:getFonts,domBlockers:getDomBlockers,fontPreferences:getFontPreferences,audio:getAudioFingerprint,screenFrame:getRoundedScreenFrame,osCpu:getOsCpu,languages:getLanguages,colorDepth:getColorDepth,deviceMemory:getDeviceMemory,screenResolution:getScreenResolution,hardwareConcurrency:getHardwareConcurrency,timezone:getTimezone,sessionStorage:getSessionStorage,localStorage:getLocalStorage,indexedDB:getIndexedDB,openDatabase:getOpenDatabase,cpuClass:getCpuClass,platform:getPlatform,plugins:getPlugins,canvas:getCanvasFingerprint,touchSupport:getTouchSupport,vendor:getVendor,vendorFlavors:getVendorFlavors,cookiesEnabled:areCookiesEnabled,colorGamut:getColorGamut,invertedColors:areColorsInverted,forcedColors:areColorsForced,monochrome:getMonochromeDepth,contrast:getContrastPreference,reducedMotion:isMotionReduced,hdr:isHDR,math:getMathFingerprint,videoCard:getVideoCard,pdfViewerEnabled:isPdfViewerEnabled,architecture:getArchitecture};function loadBuiltinSources(e){return loadSources(sources,e,[])}var commentTemplate="$ if upgrade to Pro: https://fpjs.dev/pro";function getConfidence(e){var t=getOpenConfidenceScore(e),n=deriveProConfidenceScore(t);return{score:t,comment:commentTemplate.replace(/\$/g,"".concat(n))}}function getOpenConfidenceScore(e){if(isAndroid())return.4;if(isWebKit())return isDesktopSafari()?.5:.3;var t=e.platform.value||"";return/^Win/.test(t)?.6:/^Mac/.test(t)?.5:.7}function deriveProConfidenceScore(e){return round(.99+.01*e,1e-4)}function componentsToCanonicalString(e){for(var t="",n=0,r=Object.keys(e).sort();n<r.length;n++){var o=r[n],i=e[o],a=i.error?"error":JSON.stringify(i.value);t+="".concat(t?"|":"").concat(o.replace(/([:|\\])/g,"\\$1"),":").concat(a)}return t}function componentsToDebugString(e){return JSON.stringify(e,(function(e,t){return t instanceof Error?errorToObject(t):t}),2)}function hashComponents(e){return x64hash128(componentsToCanonicalString(e))}function makeLazyGetResult(e){var t,n=getConfidence(e);return{get visitorId(){return void 0===t&&(t=hashComponents(this.components)),t},set visitorId(e){t=e},confidence:n,components:e,version:version}}function prepareForSources(e){return void 0===e&&(e=50),requestIdleCallbackIfAvailable(e,2*e)}function makeAgent(e,t){var n=Date.now();return{get:function(r){return __awaiter(this,void 0,void 0,(function(){var o,i,a;return __generator(this,(function(c){switch(c.label){case 0:return o=Date.now(),[4,e()];case 1:return i=c.sent(),a=makeLazyGetResult(i),(t||(null==r?void 0:r.debug))&&console.log("Copy the text below to get the debug data:\n\n```\nversion: ".concat(a.version,"\nuserAgent: ").concat(navigator.userAgent,"\ntimeBetweenLoadAndGet: ").concat(o-n,"\nvisitorId: ").concat(a.visitorId,"\ncomponents: ").concat(componentsToDebugString(i),"\n```")),[2,a]}}))}))}}}function monitor(){if(!(window.__fpjs_d_m||Math.random()>=.001))try{var e=new XMLHttpRequest;e.open("get","https://m1.openfpcdn.io/fingerprintjs/v".concat(version,"/npm-monitoring"),!0),e.send()}catch(e){console.error(e)}}function load(e){var t=void 0===e?{}:e,n=t.delayFallback,r=t.debug,o=t.monitoring,i=void 0===o||o;return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){switch(e.label){case 0:return i&&monitor(),[4,prepareForSources(n)];case 1:return e.sent(),[2,makeAgent(loadBuiltinSources({debug:r}),r)]}}))}))}class ADIDevice extends ADIEventImplV1{constructor(e,t){super(ADIDevice.CODE,t,Date.now(),e)}}ADIDevice.CODE="D";const fingerprintProvider=async()=>{const e=await load(),t=await e.get(),n=t.components;return n.deviceId=t.visitorId,n};class BaseGDPRProvider{constructor(e){this._PATH="/adi/v1/gdpr/consent",this._options=e}static getInstance(e){const t=new BaseGDPRProvider(e);if(!t._options.baseURL)throw new Error("options.baseURL is required");return t}buildGDPRProvider(){return this._gdprProvider.bind(this)}async _gdprProvider(e,t,n){if(!n)throw new Error("apiClient is required");const r=`${this._options.baseURL.replace(/\/$/g,"")}${this._PATH}`;return!!(await n.postForJSON(r,t.id,void 0,e)).consent}}const core=new ADICore;export{ADIChannelLogOut,ADIChannelLogin,ADIChannelLoginFailed,ADICore,ADIDevice,ADIDeviceInfo,ADIElementView,ADIEventImplV1,ADIFinTransfer,ADIFinTransferCreditCard,ADIIntegration,ADIKeyPressed,ADITouch,ADIView,ApiClientBrowserFetch,BaseGDPRProvider,DefaultProvider,LocalStorageProvider,STORAGE_PROVIDER_DEFAULTS,core,fingerprintProvider};