Logo AIRI


AREA PAZIENTI

Clicca qui per inviare una nuova domanda.

25-10-2006 12:05

Granuloma eosinofilo

Domanda
Gent.mo dott.,ho 33 anni e da più di un anno,ho un bozzo sulla retroteca cranica sx ke nn mi dà alcun disturbo se non quando spingo sulla parte, mi sono rivolto al mio medico curante ke mi ha prescritto dapprima un'ecografia ke nn ha rilevato assolutamente nulla, successivamente una radiografia ke ha invece evidenziato un'area osteolitica ovoidale di cm3x2 a contorni finemente irregolari cosଠmi sono rivolto al neurologo ke ovviamente mi ha consigliato la rm con contrasto ke ha confermato quello ke c'era nell'rx e cioè:in corrispondenza diploe parietale sx, erosione-rimodellamento con divaricazione dei tavolati esterna di interno(???) a segnale disomogeneamente ipotenso caratterizzato da qualke disomogeneità della struttura interna,da notevole impregnazione dopo contrasto,sui si accompagna una modestissima reazione durale.Apprezzabili anke per il flusso verosimilmente rallentato,vasi venosi di drernaggio peraltro di calibro regolare.Il quadro appare in prima istanza riferibile a granuloma eosinofilo.Sistema ventricolocisternale in asse, a morfologia conservata, non dilatato.Non aree di patologico segnale a carico del parenchima cerebrale,la somministrazione del contrasto, non modifica il quadro.Mi scusi se le ho descritto x intero il risultato della rm all'encefalo ma, sono preoccupato fino a quando non andro' dal neurochirurgo.Leggendo le sue risposte on line egregio dott, vorrei gentilmente anke il suo parere sulle terapie da fare, di cosa si tratta e se si puo' guarire da questo tipo di malattia e se e' necessario l'intervento chirurgico, mi trovo a bari e vorrei sapere in ke mani andare, e' una cosa grave?Mia moglie e' piu' terrorizzata di me, tra l'altro ho donato il sangue due settimane fa ed era tutto nella norma a parte la fosfatasi alcalina al di sotto della norma(23), potrebbe essere correlata al tipo di patologia in questione?Potro' continuare a giocare a calcio?Aspetto una cortese risposta, mi scusi per l'invadenza arrivederci.
Risposta
Carissimo, stia tranquillo, fara' una vita normale! Deve andare da un buon neurochirurgo. Puo' parlare con il suo medico curante per farsi consigliare. Deve essere fatto un intervento MOLTO RIDOTTO. NON DEVONO TOGLIERE LA SQUAMA DI OSSO! Bisogna solo pulire la zona di erosione e fare la diagnosi istologica. Se il suo medico ha dubbi mi faccia chiamare. Se non siete tranquilli sulla scelta del neutrochirurgo, ne scegliamo uno insieme. NON c'e' urgenza!! Tranquillizzi sua moglie, non e' una cosa grave! Auguri, mi faccia sapere!

17-03-2009 06:01

dolori intestinali, ves, leucociti, PCR alta: cos'è ?!?

Domanda
ves alta, , sugli 80mm/h, PCR intorno ai 18 mg/l, leucocito inorno ai 18 migl/mmc, neutrofili 80 val perc e 12 val. assol, C3 235 e C4 a 48, istologia che rileva nel sigma (massa polipoide mammellonata di 3cm secondo endoscopia, addensamento del cellulare lasso mesenterico e minute nodulazioni linfonodali, nodulazioni surrenaliche) "edema, flogosi cronica e d acuta a carattere granulocitario eosinofilo del chorion,,. sintomi: dolori addominali intensi ma intermittenti, dolori anche schiena, fabbricola serale improvvisa (intorno 37.2-5 max),stitichezza in donna di 77 anni, ipertesa, con emorroidi ricorrenti. Può essere granuloma eosinofilo ? istiocitosi ? cosa consigliate di fare in attesa di consulto con gastroenterologo di verona ? potete rispondermi anche via email personale ? siamo abbastanza disperate, dopo un mese e mezzo di peregrinazioni, grazie. nicoletta, TN
Risposta

Credo sia indispensabile avere 'esame istologico della massa endo-sigmoidea, prima di fare qualunque ipotesi. Il quadro NON e' caratteristico per una istiocitosi, ma esistono anche i casi eccexionali. Auguri!

Maurizio Aricò
Direttore
Dipartimento Oncoematologia Pediatrica
Azienda Ospedaliero-Universitaria Meyer
Viale Pieraccini, 24
50139 Firenze
tel. +39 055 5662739
fax  +39 055 5662746
m.arico@meyer.it

17-03-2009 06:00

tanti

Domanda
Sono Lucia, ho 27 anni. Ad aprile 2003 mi sono accorta di avere un sulla fronte dx un rigonfiamento €œduro€?. Da risonanze magnetiche e tac effettuate si vedeva poco o niente. Da agosto 2005 sulla fronte sinistra avverto, premendo, un dolore simile (molto più acuto) a quello che sento a dx. La Tac del tavolato osseo frontale fatta il 18/11/05, ha refertato €œsono apprezzabili due piccole lesioni litiche, non presenti nel precedente esame TC, situate rispettivamente a livello del tavolato osseo della squama frontale destra e sinistra i cui profili sono netti. In particolare la lesione di destra, del diametro massimo di 1,2 cm, erode il tavolato esterno con minima tumefazione dei tessuti subgaleali mentre la lesione di sinistra, con diam. massimo di 1,1 cm, non altera il tavolato esterno mentre assottiglia quello interno. Entrambe le lesioni contengono materiale €˜molle€™ disomogeneo, tendenzialmente iperdenso ed in prima ipotesi potrebbero essere ascrivibili a granulomi eosinofili.€? Inoltre, ritengo di avere altre due €œbozze€? sul cranio (le riconosco dal dolore), non documentate da tac, spuntate da qualche mese. Mi sono sottoposta ad esami del sangue (emocromocitometrico + F L, PT+INR, tempo tromboplast. Parz., fibrin.,antitr.III, protid.elettr., immunielettrof.sierica), tutti hanno dato esito normale. Ho consultato più di un neurochirurgo, sono tutti concordi sulla rimozione dei verosimili granulomi eosinofili, infatti, sono in lista d€™attesa. Le mie domande: 1. c€™è un esame, oltre a quello istologico, che dà la certezza che siano granulomi eosinofili? 2. perchè sono più di uno? àˆ normale? sul vostro forum si parla sempre di un granuloma, mai di tanti. 3. dopo l€™asportazione chirurgica dovrò sottopormi ad una cura contro la formazione di altri granulomi eos.? Ringrazio per l€™attenzione e saluto, Lucia
Risposta

Gentile Sig.ra Lucia, cerco di rispondere alle sue domande: 1. c€™è un esame, oltre a quello istologico, che dà la certezza che siano granulomi eosinofili? No, l'esame istologico rimane lo standard. 2. perchè sono più di uno normale sul vostro forum si parla sempre di un granuloma, mai di tanti. E' un problema di interpretazione. Ciascuna lesione si definisce granuloma eosinofilo. Spesso questo puo' spesso essere accompagnato da altre lesini, senza che cio' voglia dire che la forma e' piu' grav! e, assolutamente! 3. dopo l'asportazione chirurgica dovrà sottopormi ad una cura contro la formazione di altri granulomi eos.? Per l'intervento consiglierei di fare una pulizia minima, che in gergo chiamiamo curettage, non la asportzaione del pezzo di osso. Infatti la lesione va incontro a guarigione, tanto prima se e' stata fatta la pulizia. Cosi' non rimane nessun segno dopo la guarigione, invece dui avere il "buco" del'interventio o la placca che eventualmente viene posizionata. La necessita' di una cura dipende dal numero e dalla sede delle lesioni. Se sono solo sulla fronte esul lato della testa non e' necessario. se sono alla base del cranio o alla faccia, potrebbe valere la pena. Ha fatto una risonanza magnetica del cranio? Potrebbe valere la pena. Mi faccia sapere!

Maurizio Aricò
Direttore
Dipartimento Oncoematologia Pediatrica
Azienda Ospedaliero-Universitaria Meyer
Viale Pieraccini, 24
50139 Firenze
tel. +39 055 5662739
fax  +39 055 5662746
m.arico@meyer.it

25-10-2006 12:05

Gentilissimo Dottore, la

Domanda
Gentilissimo Dottore, la ringrazio innanzi tutto per la risposta. Ieri 22.02. siamo tornata al Meyer per fare la Tac al bambino(granuloma eosinofilo alla teca cranica operato lo scorso anno)... i medici chiaramente non si sono pronunciati più di tanto perchè devono confrontare la tac dello scorso anno e radiografie ultime che abbiamo fatto in seguito alla comparsa del "bozzolo". La dottoressa comunque mi ha detto che molto probabilmente si vede questa area osteolitica... Lo scorso anno il bambino fece tutti gli esami del caso.. radiografie in tutto il corpo, ecografia dgli organi e dopo l'intervento gli venne fatta anche la scintigrafia ossea . Anche quest'ultima dava risultati negati. Volevo chiederle.. Dobbiamo rioperare di nuovo il bambino oppure possiamo intervenire con una terapia farmacologica? Questa malattia se la porterà dietro per tutta la vita? E' a rischio la vita? La ringrazio per di nuovo per la risposta. Nadia.

17-03-2009 06:00

X cortesia URGENTE.. Buona

Domanda
X cortesia URGENTE.. Buona sera e perdoni la mia richiesta di urgenza ma sono preoccupatissima... sono la mammma di un bimbo di 9 anni e 3 mesi che lo scorso anno è stato operato c/o il Meyer reparto di neurochirurgia ad un granuloma eosinofilo alla teca cranica. Dopo un mese dall'intervento (asportazione del granuloma di circa un cm e ricostruzione dell'osso), perfettamente riuscito, abbiamo fatto il controllo ed il neurochirurgo disse che il bambino era perfettamente guarito e non doveva fare assolutamente alcuna cura. 10 giorni fa il bimbo mi ha riferito che durante il sonno ha picchiato la testa nella "testata" del letto. Visto che il dolore non passava ed era venuto fuori un piccolo "bozzolo", ho pensato d fargli fare una radiografia dove il medico ha evidenziato una leggera area osteolitica al vertice.. Chiaramente siamo andati subito al Meyer dove il neurochirurgo ha visitato il bambino e confrontando la tac dell'anno precedente, la radiografia ultima ci ha abbastanza tranquillizzato dicendoci che secondo lui era un autentico "bernoccolo". Per sicurezza ci ha consigliato di fare una tac con studio per osso. Volevo chiederLe.. con quale percentuale (visto che mi hanno detto che è rarissimo che si ripresenti) un granuloma eosinofilo possa ripresentarsi? Quali controlli precauzionali posso far fare al bambino? Sin da piccolo ha sempre avuto le IGE altissime, senza mai riuscire a trovare la causa (esami per allergie di ogni genere!!)... Può essere una conseguenza questa? Come tutte le mamme di questo mondo sono preoccupatissima... Per cortesia mi aiuti!! La ringrazio infinitamente. Nadia.
Risposta

Gentile signora, la ricomparsa di una lesione osteolitica e' assai frequente nella istiocitosi a cellule di Langerhans, fino al 40% dei casi. Dunque va considerata, se avviene, come un evento quasi atteso. Peraltro NON vuol dire assolutamente che le cose vanno male, ma solo che ... non abbiamo finito! E' opportuno che oltre al Prof. Genitori, che immagino la abbia vista in NCH, la piccola sia vista anche dai colleghi della oncoematologia pediatrica del meyer (Bernini, Lippi, Tucci...), che faranno una valutazione generale per escludere segni legati alla malattia in altre zone dell'organismo. Stia tranquilla. Le IgEnon c'entrano nulla con la ICL, la allergia sta diventando molto comune... Auguri,

Maurizio Aricò
Direttore
Dipartimento Oncoematologia Pediatrica
Azienda Ospedaliero-Universitaria Meyer
Viale Pieraccini, 24
50139 Firenze
tel. +39 055 5662739
fax  +39 055 5662746
m.arico@meyer.it

25-10-2006 12:05

Buona sera, sono la mamma di

Domanda
Buona sera, sono la mamma di un bimbo di 9 anni e 3 mesi che lo scorso anno (marzo 2005) è stato operato c/o il Meyer reparto di neurochirurgia ad un granuloma eosinofilo alla teca cranica (a six poco sopra meninge) . Dopo un mese dall'intervento (asportazione del granuloma di circa un cm e ricostruzione dell'osso), perfettamente riuscito, abbiamo fatto il controllo ed il neurochirurgo disse che il bambino era perfettamente guarito e non doveva fare assolutamente alcuna cura. 10 giorni fa il bimbo mi ha riferito che durante il sonno ha picchiato la testa nella "testata" del letto. Visto che il dolore non passava ed era venuto fuori un piccolo "bozzolo", ho pensato d fargli fare una radiografia dove il medico ha evidenziato una leggera area osteolitica al vertice.. Chiaramente siamo andati subito al Meyer dove il neurochirurgo ha visitando il bambino e confrontando la tac dell'anno precedente, la radiografia ultima ci ha abbastanza tranquillizzato dicendoci che secondo lui era un autentico "bernoccolo". Per sicurezza ci ha consigliato di fare una tac con studio per osso. Volevo chiederLe.. con quale percentuale (visto che mi hanno detto che è rarissimo che si ripresenti) un granuloma eosinofilo possa ripresentarsi? Quali controlli precauzionali posso far fare al bambino? Sin da piccolo ha sempre avuto le IGE altissime, senza mai riuscire a trovare la causa (esami per allergie di ogni genere!!)... Può essere una conseguenza questa? Come tutte le mamme di questo mondo sono preoccupatissima... Per cortesia mi aiuti!! La ringrazio infinitamente. Nadia.

17-03-2009 05:59

Buongiorno, ha mia figlia di

Domanda
Buongiorno, ha mia figlia di 6 anni è stato diagnosticato dopo una tac un granuloma eosinofilo al femore sx. Siamo in attesa di essere chiamati dall'ospedale Gaetano Pini di Milano per effettuare la pulizia e la biopsia. Esiste solo l'intervento chirurgico o ci sono altre cure? In cosa consiste questo intervento, può avere delle conseguenze durante la crescita? Può riformarsi? Grazie per la sua attenzione.
Risposta

Gentile signora, dopo la pulizia chirurgica al Pini e' molto raccomandabile che Lei sia seguita da un team di oncoematologi pediatri per alcune piccole verifiche addizionali e per avere notizie piu' dettagliate su questa malattia. Se come immagino risiede nella zona di Milano, Le consiglierei il team della Clinica Pediatrica di Monza, in particolare il Dr.Conter e la Dr.ssa Vallinoto, che hanno grande esperienza in questo campo. Mi faccia sapere!

Maurizio Aricò
Direttore
Dipartimento Oncoematologia Pediatrica
Azienda Ospedaliero-Universitaria Meyer
Viale Pieraccini, 24
50139 Firenze
tel. +39 055 5662739
fax  +39 055 5662746
m.arico@meyer.it

25-10-2006 12:05

Egregio Dottore,ho 21 anni,

Domanda
Egregio Dottore,ho 21 anni, in seguito ad una rx al cranio mi è stato diagnosticato un granuloma eosinofilo.. non essendo pienamente soddisfatto del parere dei vari dottori che ho consultato vorrei rivolgermi ad un centro specializzato. Abito ad Ascoli Piceno, saprebbe indicarmi uno specialista, o il centro specializzato più vicino? Grazie mille ,saluti, Marco
Risposta
Puo' rivolgersi al Dr. Pierani ad Ancona ovvero a Bologna al Prof. Pession, entrambi esperti in oncoematologia pediatrica. Mi faccia sapere!

25-10-2006 12:05

Egr Dottore mio fratello ha

Domanda
Egr Dottore mio fratello ha 31 anni, in seguito ad un incidente in macchina gli hanno effettuato una rx al cranio e gli hanno trovato una macchia scura sul lato destro del cranio. Il nostro medico di famiglia ci ha consigliato di effettuare una tac, dalla tac (senza contrasto) risulta un granuloma eosinofilo sul lato destro del cranio proprio a livello dell'osso! Ora deve effettuare una visita dal neochirurgo ma il nostro medico insiste nel dire che il granuloma va tolto tramite un intervento. Io leggendo le sue risposte ho notato che lei in tutti i casi sconsiglia l'intervento e anche noi saremmo ben contenti di poterlo evitare.E' possibile che non vi siano alternative? Non è possibile asportarlo in un altro modo? Le sarei davvero grata inoltre se potesse consigliarci un medico preparato sull'argomento perchè in questo momento non sappiamo a chi dare retta e come comportarci, fino ad ora le visite le abbiamo effettuate al San Gerardo di Monza e domani abbiamo un appuntamento al Policlinico di monza con un neochirurgo. In attesa di una sua risposta la ringrazio per la disponibilità . Distinti saluti
Risposta
Si puo' chiedere al neurochirurgo di fare una biopsia senza togliere tutto l'osso interessato. Questo permette di fare la diagnosi e lasciare spazio all'osso di riformarsi col tempo, senza bisogno di togliere una parte ampia di osso magari ricorrendo ad una placca o altro che poi rimarrebbe a vita.

25-10-2006 12:05

Mio figlio tre anni fa,

Domanda
Mio figlio tre anni fa, all'età di nove anni, è stato operato al cranio per l'asportazione di un granuloma eosinofilo. Da qualche giorno a seguito di una malattia infettiva (salmonella minore), sono comparse diverse afte in bocca e succesivamente un eritema nodosso alle gambe. Vi chiedo se può esserci una relazione tra granuloma ed eritema.
Risposta
L'eritema nodoso non fa parte della malattia ma le afte potrebbero in qualche modo farne parte. E' importante che il piccolo sia visto da un pediatra ematologo-oncologo esperto della malattia per vedere se tra le due cose ci sono connessioni. Se crede, posso darvi qaulche indicazione di un centro esperto vicino alla vostra residenza.

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).version={})}(this,(function(exports){"use strict";function __awaiter(e,t,n,i){return new(n||(n=Promise))((function(s,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?s(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))}var Blocking;"function"==typeof SuppressedError&&SuppressedError,function(e){e.PENDING="pending",e.NONE="none",e.BLOCKED="blocked",e.ALLOWED="allowed"}(Blocking||(Blocking={}));class Adblock{constructor(e){this.state=Blocking.PENDING,this._mocked=!1,e?(this.state=e,this._mocked=!0):this.state=Blocking.ALLOWED}inject(){return __awaiter(this,void 0,void 0,(function*(){}))}hasAdblocker(){if(void 0===window.google)return!0;const e=document.querySelectorAll("style");return Array.from(e).some((e=>!!e.innerHTML.includes("adblockkey")))}handleAdblocked(){this.removeAdblockKey(),this.state=Blocking.BLOCKED}removeAdblockKey(){var e;null===(e=document.documentElement.dataset)||void 0===e||delete e.adblockkey}get isBlocked(){return this.state===Blocking.BLOCKED}get isAllowed(){return this.state===Blocking.ALLOWED}toContext(){return{user_has_ad_blocker:null,is_ad_blocked:null}}}const OBFUSCATING_BASE_64_PREFIX="UxFdVMwNFNwN0wzODEybV",encode=e=>OBFUSCATING_BASE_64_PREFIX+btoa(unescape(encodeURIComponent(JSON.stringify(e))));function decode$1(e){return JSON.parse(decodeURIComponent(escape(atob(e.replace(OBFUSCATING_BASE_64_PREFIX,"")))))}var version="0.5.2";const APP_ENV="production",TRACKING_DOMAIN="https://click-euw1.bodis.com/",SALES_JS_URL="https://parking.bodiscdn.com/js/inquiry.js",GOOGLE_CAF_TIMEOUT_SCRIPTS="0",GOOGLE_CAF_TIMEOUT_CALLBACKS="0",GOOGLE_MV3_URL_PARAMS="abp=1&bodis=true",APP_VERSION=version,COOKIE_CONSENT_JS_URL="",isLocal=(e=!0)=>"production"!==APP_ENV;function log(...e){}const FIND_DOMAIN_URL="_fd",getFindDomain=(e="",t=!1)=>{const n=`${e}/${FIND_DOMAIN_URL}${window.location.search}`,i=e?"include":"same-origin",s=Object.assign({Accept:"application/json","Content-Type":"application/json"},t?{"X-HOST":window.location.host}:{});return fetch(n,{method:"POST",headers:s,credentials:i}).then((e=>e.text())).then(decode$1)};var ZeroClickReasons;!function(e){e.CAF_TIMEDOUT="caf_timedout",e.CAF_ADLOAD_FAIL_RS="caf_adloadfail_rs",e.CAF_ADLOAD_FAIL_ADS="caf_adloadfail_ads",e.DISABLED_GB="disabled_gb",e.DISABLED_AB="disabled_ab",e.DISABLED_DS="disabled_ds",e.AD_BLOCKED="ad_blocked",e.PREFERRED="preferred"}(ZeroClickReasons||(ZeroClickReasons={}));const getZeroClick=e=>__awaiter(void 0,void 0,void 0,(function*(){const t=Object.assign(Object.assign({},e),{type:"zc_fetch"});return fetch("/_zc",{method:"POST",body:JSON.stringify({signature:encode(t)}),headers:{Accept:"application/json","Content-Type":"application/json"}}).then((e=>__awaiter(void 0,void 0,void 0,(function*(){try{return decode$1(yield e.text())}catch(e){return{}}}))))})),waiter=(e,t)=>new Promise((n=>{t(e),e<=0&&n();let i=e;const s=()=>{i>0?(i-=1,t(i),setTimeout(s,1e3)):n()};s()})),decode=()=>JSON.parse(atob(window.park||""));var PAGE_STYLES='* {\n font-smoothing: antialiased;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\nhtml, body {\n width: 100%;\n margin: 0;\n}\n\nhtml {\n background-color: #2B2B2B;\n height: 100%;\n}\n\nbody {\n min-height: 90%;\n font-family: Arial, sans-serif;\n letter-spacing: 1.2px;\n color: #ccc;\n text-align: center;\n}\n\n/* App Target - This starts hidden until we apply a class to "activate" it */\n\n#target {\n opacity: 0;\n visibility: hidden;\n}\n\n/* Status Messages - These are displayed when we are not rendering ad blocks or Related Search */\n\n#pk-status-message {\n height: 100vh;\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n}\n\n/* Sales Box - Default State */\n\n#sales-box {\n display: block;\n width: 100%;\n padding: 3px;\n text-align: center;\n text-decoration: none;\n color: #8EABC0;\n}\n\n#sales-box a {\n display: block;\n width: 100%;\n text-decoration: inherit;\n color: #8EABC0;\n cursor: pointer;\n}\n\n/* Sales Box - Highlighted State */\n\n#sales-box.is-highlighted {\n position: relative;\n z-index: 1;\n background: #032438 linear-gradient(to top, #044368 0%, #000 100%);\n box-shadow: 0 0 15px 0 #000;\n border-bottom: 3px solid #262626;\n}\n\n#sales-box.is-highlighted a {\n line-height: 1.3;\n display: inline-block;\n font-size: 18px;\n color: #fff;\n text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.5);\n background: none;\n}\n\n/* Ellipsis Loader */\n\n.pk-loader {\n display: inline-block;\n position: relative;\n width: 80px;\n height: 80px;\n}\n\n.pk-loader div {\n position: absolute;\n top: 33px;\n width: 13px;\n height: 13px;\n border-radius: 50%;\n background: #ccc;\n animation-timing-function: cubic-bezier(0, 1, 1, 0);\n}\n\n.pk-loader div:nth-child(1) {\n left: 8px;\n animation: pk-anim-1 0.6s infinite;\n}\n\n.pk-loader div:nth-child(2) {\n left: 8px;\n animation: pk-anim-2 0.6s infinite;\n}\n\n.pk-loader div:nth-child(3) {\n left: 32px;\n animation: pk-anim-2 0.6s infinite;\n}\n\n.pk-loader div:nth-child(4) {\n left: 56px;\n animation: pk-anim-1 0.6s infinite;\n animation-direction: reverse;\n}\n\n.pk-loader-text {\n position: fixed;\n font-size: 12px;\n right: 20px;\n bottom: 20px;\n font-weight: lighter;\n}\n\n/* Utilities */\n\n.pk-message-title {\n font-size: 2em;\n font-weight: bold;\n}\n\n.pk-page-ready {\n opacity: 1 !important;\n visibility: visible !important;\n}\n\n@media only screen and (max-width: 600px) {\n .hidden-xs {\n opacity: 0;\n visibility: hidden;\n }\n}\n\n/* Animation */\n\n@keyframes pk-anim-1 {\n 0% {\n transform: scale(0);\n }\n 100% {\n transform: scale(1);\n }\n}\n\n@keyframes pk-anim-2 {\n 0% {\n transform: translate(0, 0);\n }\n 100% {\n transform: translate(24px, 0);\n }\n}\n';const APP_TARGET="#target",MESSAGE_SELECTOR="#pk-status-message",PAGE_READY_CLASS="pk-page-ready",MESSAGE_TEMPLATE='
';class Renderer{constructor(e){this._domIsReady=!1,this.revealPage=()=>{this.domNode&&this.domNode.classList.add(PAGE_READY_CLASS)},this.injectMetaDescription=e=>{if(!e||0===e.length)return;window.document.title=e;const t=document.createElement("meta");t.setAttribute("name","description"),t.setAttribute("content",`See relevant content for ${e}`),document.getElementsByTagName("head")[0].appendChild(t)},this.domNode=document.querySelector(e)}get domIsReady(){return this._domIsReady}set domIsReady(e){this._domIsReady=e,e&&this.injectStyles(PAGE_STYLES)}message(e,t=""){if(this.injectHTML(MESSAGE_TEMPLATE),this.domNode){const t=this.domNode.querySelector(MESSAGE_SELECTOR);t&&(t.innerHTML=e)}t&&this.injectMetaDescription(t)}salesBanner(e){if(!e)return;const{href:t,position:n,message:i,theme:s,status:a}=e,o=document.createElement("div"),r=n||"",d="HIGHLIGHT"===s?"is-highlighted":"";o.innerHTML=t?`\n
\n ${i}\n
\n `:`\n
\n ${i}\n
\n `,"BOTTOM"===n?(o.style.marginTop="30px",document.body.appendChild(o)):document.body.prepend(o)}loading(e){let t="a few";e>0&&(t=`${e}`),this.message(`\n
\n
\n
\n
\n
\n
\n \n `)}adBlockMessage(){this.message("\n

Ad block detected

\n Please disable your ad blocker and reload the page.\n ")}errorParkingUnavailable(){this.message("\n

An Error Occurred

\n

Parking is currently unavailable. We'll be right back.

\n ")}errorParkingServicesDisabled(){this.message("\n

An Error Occurred

\n

Services for this domain name have been disabled.

\n ")}errorParkingNoSponsors(e){this.message(`\n
\n No sponsors\n
\n \n ${window.location.hostname} currently does not have any sponsors for you.\n \n `,e)}imprint(e){if(!e)return;const t=document.querySelector("#imprint-text");t&&(t.innerHTML=e.replace(/(?:\r\n|\r|\n)/g,"
"))}injectStyles(e){if(!e)return;const t=document.createElement("style");t.innerHTML=e.toString(),document.head.appendChild(t)}injectScript(e){if(!e)return;const t=document.createElement("script");t.type="text/javascript",t.src=e,document.body.appendChild(t)}injectJS(js){js&&0!==js.length&&eval(js)}injectHTML(e){this.domNode?(e&&(this.domNode.innerHTML=e),this.domIsReady=!0):(this.domIsReady=!1,console.error("An error occurred when trying to render this page. DOM node not found."))}prerender(e){this.injectMetaDescription(e.domain),this.injectHTML(e.html)}template(e){var t;this.domIsReady||this.prerender(e),this.injectStyles(e.stylesheet),this.imprint(e.imprint),this.salesBanner(e.salesBanner),this.injectJS(e.javascript),null===(t=e.scripts)||void 0===t||t.forEach((e=>{this.injectScript(e)}))}}const Render=new Renderer(APP_TARGET);var Type;!function(e){e[e.Failed=0]="Failed",e[e.Disabled=1]="Disabled",e[e.Redirect=2]="Redirect",e[e.Parking=3]="Parking",e[e.Sales=4]="Sales"}(Type||(Type={}));let State$2=class{get trackingType(){return this._trackingType}set trackingType(e){this._trackingType=e}get track(){return!!this.trackingType}};class Disabled extends State$2{constructor(){super(...arguments),this.type=Type.Disabled}static build(e,t){let n;switch(t===Blocking.BLOCKED&&(n="adblocker"),e.cannotPark){case"disabled_mr":case"disabled_rc":n=e.cannotPark}if(n){const t=new Disabled;return t.reason=n,t.domain=e.domainName,t}}get message(){switch(this.reason){case"adblocker":return"

Content blocked

Please turn off your ad blocker.";case"disabled_mr":return`

Invalid URL

Referral traffic for ${this.domain} does not meet requirements.`;default:return`

No sponsors

${this.domain} currently does not have any sponsors for you.`}}get trackingType(){switch(this.reason){case"adblocker":return"ad_blocked_message";case"disabled_mr":return"invalid_referral";case"disabled_rc":return"revenue_cap_reached";default:return"no_sponsors_message"}}toContext(){return{cannotPark:this.reason}}}class Failed extends State$2{constructor(){super(...arguments),this.type=Type.Failed}static cannotPark({cannotPark:e}){switch(e){case"disabled_b":case"prohibited_ua":case"disabled_fr":case"revenue_cap_reached":case"disabled_mr":case"disabled_rc":case"disabled_cp":case"invalid_domain":{const t=new Failed;return t.reason=e,t}}}static noSponsors({cannotLoadAds:e}){if(e){const e=new Failed;return e.reason="no_sponsors",e}}static fromError(e){const t=new Failed;return t.reason="js_error",t.error=e,t}get track(){return!!this.trackingType}get message(){switch(this.reason){case"disabled_fr":case"disabled_rc":case"no_sponsors":return`\n

No Sponsors

\n

${this.domain} currently does not have any sponsors for you.

`;case"disabled_mr":return`\n

Invalid URL

\n

Referral traffic for ${this.domain} does not meet requirements.

`;case"js_error":return"\n

An Error Occurred

\n

Parking is currently unavailable. We'll be right back.

\n ";default:return"\n

An Error Occurred

\n

Services for this domain name have been disabled.

\n "}}get trackingType(){switch(this.reason){case"disabled_rc":return"revenue_cap_reached";case"disabled_mr":return"invalid_referral";case"adblock":return"ad_blocked_message";case"no_sponsors":return"no_sponsors_message"}}get domain(){return window.location.hostname}toContext(){return{cannotPark:this.reason}}}function unpackPHPArrayObject(e,t){const n=e[t];if(n&&!Array.isArray(n))return n}class Parking extends State$2{constructor(){super(...arguments),this.type=Type.Parking}static build(e,t){const n=new Parking;n.domain=e.domainName,n.html=e.template,n.scripts=e.scripts||[],n.javascript=e.inlineJs,n.stylesheet=e.styles,n.imprint=e.imprintText;const i=unpackPHPArrayObject(e,"salesSettings"),s=(null==i?void 0:i.status)&&"NOT_FOR_SALE"!==(null==i?void 0:i.status);if(s){const{status:e,location:t,message:s,link:a,type:o}=i;n.salesBanner={message:s,href:a,position:t,theme:o,status:e}}return t.wantsToServeAds?n.trackingType="ctr":s&&window.location.pathname.startsWith("/listing")?n.trackingType="sales":n.trackingType="visit",n}toContext(){return{}}}class Sales extends State$2{constructor(){super(...arguments),this.type=Type.Sales}static build(e){const t=unpackPHPArrayObject(e,"salesSettings");if(!t)return;const{status:n}=t;return["NOT_FOR_SALE","EXTERNAL_MARKET","URL"].includes(n)?void 0:window.location.pathname.startsWith("/listing")?new Sales:void 0}toContext(){return{}}get trackingType(){return"sales"}init(e){window.context=e;const t=document.createElement("script");t.type="text/javascript",t.src=SALES_JS_URL,document.head.append(t)}}class Redirect extends State$2{constructor(){super(...arguments),this.type=Type.Redirect}static build(e,t,n){const i=unpackPHPArrayObject(e,"salesSettings"),{zeroClickDelay:s,skenzoRedirect:a,skenzoUrl:o,showInquiryForm:r,canZeroClick:d,cannotPark:c}=e;if(window.location.pathname.startsWith("/listing")&&["EXTERNAL_MARKET","URL"].includes(null==i?void 0:i.status)){if(null==i?void 0:i.external)return Redirect.toState(i.external,"sales");if(null==i?void 0:i.link)return Redirect.toState(i.link,"sales")}if(n.cannotLoadAds&&n.wantsToServeAds)return Redirect.toState(n.noAdsRedirectUrl,"no_ads_redirect");if(d&&(null==t?void 0:t.reason)){if(null==t?void 0:t.redirect)return Redirect.toState(t.redirect,"zc_redirect",s);if(a&&o)return Redirect.toState(o,"skenzo_redirect")}return(null==i?void 0:i.status)&&"NOT_FOR_SALE"!==(null==i?void 0:i.status)&&(n.cannotLoadAds||n.cannotLoadAds&&!d||r)?Redirect.toState(`${window.location.origin}/listing`):void 0}static toState(e,t,n=0){const i=new Redirect;return i.url=e,i.delay=n,i.trackingType=t,i}toContext(){return{}}}const browserState=()=>{var e,t,n,i,s;const{screen:{width:a,height:o},self:r,top:d,matchMedia:c,opener:l}=window,{documentElement:{clientWidth:h,clientHeight:u}}=document;let p;try{p=(new Date).getTimezoneOffset()/60*-1}catch(e){p=null}return{popup:!(!l||l===window),timezone_offset:p,user_preference:null===(e=null===Intl||void 0===Intl?void 0:Intl.DateTimeFormat())||void 0===e?void 0:e.resolvedOptions(),user_using_darkmode:Boolean(c&&c("(prefers-color-scheme: dark)").matches),user_supports_darkmode:Boolean(c),window_resolution:{width:null!=h?h:0,height:null!=u?u:0},screen_resolution:{width:null!=a?a:0,height:null!=o?o:0},frame:d===r?null:{innerWidth:null!==(t=null==r?void 0:r.innerWidth)&&void 0!==t?t:0,innerHeight:null!==(n=null==r?void 0:r.innerHeight)&&void 0!==n?n:0,outerWidth:null!==(i=null==r?void 0:r.outerWidth)&&void 0!==i?i:0,outerHeight:null!==(s=null==r?void 0:r.outerHeight)&&void 0!==s?s:0}}},TRACKING_URL="_tr",buildSignature=({callbacks:e,context:t},n)=>{var i,s,a,o;return Object.assign({ad_loaded_callback:null==e?void 0:e.adLoadedCallback,app_version:version,caf_client_id:null===(i=null==t?void 0:t.pageOptions)||void 0===i?void 0:i.pubId,caf_timed_out:null==e?void 0:e.cafTimedOut,caf_loaded_ms:null==e?void 0:e.cafLoadedMs,channel:null===(s=null==t?void 0:t.pageOptions)||void 0===s?void 0:s.channel,desktop:t.desktop,terms:null===(a=null==t?void 0:t.pageOptions)||void 0===a?void 0:a.terms,fd_server_datetime:t.fd_server_datetime,fd_server:t.fd_server,flex_rule:t.flex_rule,host:t.host,ip:t.ip,ivt:null===(o=null==t?void 0:t.pageOptions)||void 0===o?void 0:o.ivt,js_error:t.js_error,mobile:t.mobile,no_ads_redirect:t.noAdsRedirect,page_headers:t.page_headers,page_loaded_callback:null==e?void 0:e.pageLoadedCallback,page_method:t.page_method,page_request:t.page_request,page_time:t.page_time,page_url:t.page_url,reportable_channel:t.reportableChannel,reportable_style_id:t.reportableStyleId,tablet:t.tablet,template_id:t.templateId,type:n,user_has_ad_blocker:t.user_has_ad_blocker,uuid:t.uuid,zeroclick:t.zeroClick},browserState())},trackVisit=({callbacks:e,context:t},n,i="")=>{const s=`${i}/${TRACKING_URL}`,a=i?"include":"same-origin",o=buildSignature({callbacks:e,context:t},n);let r={};"click"===n&&(r={click:"true",session:t.uuid,nc:Date.now().toString()}),fetch(s,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},credentials:a,body:JSON.stringify(Object.assign({signature:encode(o)},r))})};var State$1;!function(){if(!window.CustomEvent){function e(e,t){t=t||{bubbles:!1,cancelable:!1,detail:void 0};const n=document.createEvent("CustomEvent");return n.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),n}e.prototype=window.Event.prototype,window.CustomEvent=e}}(),function(e){e[e.Pending=0]="Pending",e[e.Loaded=1]="Loaded",e[e.Failed=2]="Failed"}(State$1||(State$1={}));class Provider{constructor(e){this.timeoutSeconds=5,this.handlePixelEvent=e=>{switch(this.state){case State$1.Failed:break;case State$1.Pending:setTimeout((()=>this.handlePixelEvent(e)),100);break;case State$1.Loaded:this.onPixelEvent(e)}},this.watch=()=>{switch(this.state){case State$1.Loaded:case State$1.Failed:break;case State$1.Pending:this.isLoaded()?this.state=State$1.Loaded:this.isTimedOut()?this.state=State$1.Failed:setTimeout(this.watch,50)}},this.config=e,this.identifier&&this.identifier.length>0?(this.state=State$1.Pending,this.timeoutAt=new Date,this.timeoutAt.setSeconds(this.timeoutAt.getSeconds()+this.timeoutAfter()),this.injectPixel()):this.state=State$1.Failed}get identifier(){var e;return null===(e=this.config)||void 0===e?void 0:e.key}get pixelEvents(){var e;return null===(e=this.config)||void 0===e?void 0:e.pixel_events}injectPixel(){this.injectedAt||(this.injectedAt=new Date,this.inject(),this.watch())}inject(){const e=document.createElement("script");e.text=this.script,document.head.appendChild(e)}isTimedOut(){return+new Date>=+this.timeoutAt}timeoutAfter(){return this.timeoutSeconds}selectPixelEvents(e){if(Array.isArray(this.pixelEvents))return this.pixelEvents.filter((t=>"term-view"===t.trigger&&"visit"===e||(!(!["term-click","ad-view"].includes(t.trigger)||"ctr"!==e)||"ad-click"===t.trigger&&"click"===e)))}}class Facebook extends Provider{get script(){return`!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, document,'script','https://connect.facebook.net/en_US/fbevents.js');fbq('init', '${this.identifier}');`}onPixelEvent(e){this.selectPixelEvents(e).forEach((e=>{e&&(e.custom?window.fbq("trackCustom",e.event):window.fbq("track",e.event))}))}isLoaded(){return!!window.fbq}}class Outbrain extends Provider{get script(){return`!function(_window, _document) {var OB_ADV_ID = '${this.identifier}';if (_window.obApi) {var toArray = function(object) {return Object.prototype.toString.call(object) === '[object Array]' ? object : [object];};_window.obApi.marketerId = toArray(_window.obApi.marketerId).concat(toArray(OB_ADV_ID));return;}var api = _window.obApi = function() {api.dispatch ? api.dispatch.apply(api, arguments) : api.queue.push(arguments);};api.version = '1.1';api.loaded = true;api.marketerId = OB_ADV_ID;api.queue = [];var tag = _document.createElement('script');tag.async = true;tag.src = '//amplify.outbrain.com/cp/obtp.js';tag.type = 'text/javascript';var script = _document.getElementsByTagName('script')[0];script.parentNode.insertBefore(tag, script);}(window, document);`}onPixelEvent(e){this.selectPixelEvents(e).forEach((e=>{e&&window.obApi("track",e.event)}))}isLoaded(){return!!window.obApi}}class Revcontent extends Provider{get script(){return""}inject(){const e=document.createElement("script");e.src="https://assets.revcontent.com/master/rev.js",document.head.appendChild(e)}onPixelEvent(e){this.selectPixelEvents(e).forEach((e=>{e&&window.rev("event",e.event)}))}isLoaded(){return!!window.rev}}class Taboola extends Provider{get script(){return"window._tfa = window._tfa || [];!function (t, f, a, x) {if (!document.getElementById(x)) {t.async = 1;t.src = a;t.id=x;f.parentNode.insertBefore(t, f);}}(document.createElement('script'),document.getElementsByTagName('script')[0],'//cdn.taboola.com/libtrc/unip/1451879/tfa.js','tb_tfa_script');"}onPixelEvent(e){this.selectPixelEvents(e).forEach((e=>{e&&window._tfa.push({notify:"event",name:e.event,id:e.pixel_id})}))}isLoaded(){return Array.isArray(window._tfa)}}class Tiktok extends Provider{constructor(e,t){super(e),this.useAltTikTokEventsForAdsPlatformUser=t}get script(){return`!function (w, d, t) {w.TiktokAnalyticsObject=t;var ttq=w[t]=w[t]||[];ttq.methods=["page","track","identify","instances","debug","on","off","once","ready","alias","group","enableCookie","disableCookie"],ttq.setAndDefer=function(t,e){t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}};for(var i=0;i{e&&window.ttq.instance(this.identifier).track(e.event)}))}isLoaded(){return!!window.ttq}}const ADS_PARAM$1="?caf",MESSAGE_PREFIX="FSXDC,.aCS:",ALLOWED_ORIGINS=["https://www.google.com","https://www.adsensecustomsearchads.com","https://syndicatedsearch.goog","https://googleadservices.com"];class Pixels{static build(e){const t=unpackPHPArrayObject(e,"pixel_tracking_data");if(t)return t.useAltTikTokEventsForAdsPlatformUser=e.is_ads,new Pixels(t)}constructor(e){this.onPixelEvent=e=>{const{detail:{type:t}}=e;switch(t){case"visit":case"ctr":case"click":this.providers.forEach((e=>e.handlePixelEvent(t)))}},this.providers=[new Facebook(e.facebook),new Tiktok(e.tiktok,e.useAltTikTokEventsForAdsPlatformUser),new Taboola(e.taboola),new Revcontent(e.revcontent),new Outbrain(e.outbrain)]}listenForEvents(){document.addEventListener("pixel",(e=>{this.onPixelEvent(e)}));window.onmessage=e=>{const{origin:t,data:n}=e;ALLOWED_ORIGINS.includes(t)&&(null==n?void 0:n.startsWith(MESSAGE_PREFIX))&&window.location.search.startsWith(ADS_PARAM$1)&&document.dispatchEvent(new CustomEvent("pixel",{detail:{type:"click"}}))}}dispatchEvent(e){document.dispatchEvent(new CustomEvent("pixel",{detail:e}))}}var State;!function(e){e[e.Pending=0]="Pending",e[e.Loaded=1]="Loaded",e[e.Failure=2]="Failure",e[e.TimedOut=3]="TimedOut",e[e.Errored=4]="Errored"}(State||(State={}));const CAF_SCRIPT_SRC=`https://www.google.com/adsense/domains/caf.js?${GOOGLE_MV3_URL_PARAMS}`,TIMEOUT_SCRIPTS=Number(GOOGLE_CAF_TIMEOUT_SCRIPTS),TIMEOUT_CALLBACKS=Number(GOOGLE_CAF_TIMEOUT_CALLBACKS);class StateMachine{constructor(){this.state=State.Pending}transitionTo(e){this.state=e}transitionFromPendingTo(e){this.done||(this.state=e)}get loaded(){return this.state===State.Loaded}get timedOut(){return this.state===State.TimedOut}get done(){return this.state!==State.Pending}}class Ads{constructor(e,t){this.state={script:new StateMachine,blocks:new StateMachine},this.blocksLoaded=[],this.injectScriptTags=()=>__awaiter(this,void 0,void 0,(function*(){return new Promise((e=>{const t=document.createElement("script");t.type="text/javascript",t.src=CAF_SCRIPT_SRC,t.addEventListener("load",(()=>e(!0))),t.addEventListener("error",(()=>e(!1))),document.body.appendChild(t),TIMEOUT_SCRIPTS>0&&setTimeout((()=>e(!1)),TIMEOUT_SCRIPTS)}))})),this.onPageLoaded=(e,t)=>{if(this.pageLoaded={requestAccepted:e,status:t},this.state.script.done)return;const n=null==t?void 0:t.error_code;n?(this.state.script.transitionTo(State.Failure),this.failureReason=`caf_pageloaderror_${n}`):this.state.script.transitionTo(State.Loaded)},this.onBlockLoaded=(e,t,n,i)=>{this.blocksLoaded.push({containerName:e,adsLoaded:t,isExperimentVariant:n,callbackOptions:i}),this.state.blocks.done||(t?this.state.blocks.transitionTo(State.Loaded):this.blocksLoaded.length>=this.blocks.length&&(this.state.blocks.transitionTo(State.Failure),this.failureReason=`caf_adloadfail_${e}`))},this.onTimeout=()=>{this.state.script.transitionFromPendingTo(State.TimedOut),this.state.blocks.transitionFromPendingTo(State.TimedOut)},this.blocks=e,this.options=t}get loaded(){return this.state.script.loaded&&!this.blocksLoaded.map((e=>e.adsLoaded)).includes(!1)}waitForBlocks(){return __awaiter(this,void 0,void 0,(function*(){return new Promise((e=>{const t=()=>{const n=performance.now();if(this.state.blocks.done)return this.cafLoadTime=Math.round(n-this.cafStartTime),void e();const i=this.blocksLoaded.map((e=>e.adsLoaded));i.includes(!1)||i.length>=this.blocks.length?e():setTimeout(t,50)};t()}))}))}inject(){return __awaiter(this,void 0,void 0,(function*(){try{const e=yield this.injectScriptTags();return this.cafStartTime=performance.now(),e&&void 0!==window.google?(new window.google.ads.domains.Caf(Object.assign(Object.assign({},this.options),{pageLoadedCallback:this.onPageLoaded,adLoadedCallback:this.onBlockLoaded}),...this.blocks),TIMEOUT_CALLBACKS>0&&setTimeout(this.onTimeout,TIMEOUT_CALLBACKS),yield new Promise((e=>{const t=()=>{this.state.script.done?e():setTimeout(t,10)};t()}))):void this.state.script.transitionTo(State.Failure)}catch(e){return void(this.error=e.toString())}}))}toCallbacks(){return{adLoadedCallback:this.blocksLoaded.slice(-1)[0],pageLoadedCallback:this.pageLoaded,cafTimedOut:this.state.script.timedOut||this.state.blocks.timedOut,cafLoadedMs:this.cafLoadTime,googleAdsFailure:!!this.failureReason}}toContext(){const e={cafScriptWasLoaded:this.state.script.loaded,cafScriptLoadTime:this.cafLoadTime,callbacks:this.toCallbacks};return this.error&&(e.js_error={message:this.error}),this.state.script.loaded||(e.zeroclick={reason:"googleAdsFailure"}),e}mockFailedState(){this.state.blocks.transitionTo(State.Failure),this.state.script.transitionTo(State.Failure)}}class TagManager{constructor(e){this.injected=!1,this.identifier=e}inject(){if(this.injected)return;if(!this.identifier)return;if("TEST"===this.identifier)return;const e=document.createElement("script");e.setAttribute("src",`https://www.googletagmanager.com/gtag/js?id=${this.identifier}`),document.head.appendChild(e),this.track(),this.injected=!0}track(){this.push("js",new Date),this.push("config",this.identifier)}push(e,t){window.dataLayer||(window.dataLayer=[]),window.dataLayer.push(arguments)}}const ADS_PARAM="caf",ADS_TRACKING_URL="_tr",BLOCKS_TYPE="ads",BLOCKS_CONTAINER="rs",KNOWN_CAF_PARAMS=["caf","query","afdToken","pcsa","nb","nm","nx","ny","is","clkt"];class Google{static build({pageOptions:e,preferredLanguage:t,blocks:n,googleAnalytics:i},s,a,o){let r={};e&&(r=Object.assign({},e),r.hl||(r.hl=t));let d=null==e?void 0:e.resultsPageBaseUrl;d||(d=window.location.origin);return new Google(s.uuid,n,r,i,d,o)}constructor(e,t,n,i,s,a){this._blocks=t,this._pageOptions=n,this.uuid=e,this._baseURL=new URL(s),this._signature=a,this.ads=new Ads(this.blocks,this.pageOptions),this.tagManager=new TagManager(i)}injectTagManager(){this.tagManager.inject()}injectAds(){return __awaiter(this,void 0,void 0,(function*(){yield this.ads.inject()}))}waitForBlocks(){return __awaiter(this,void 0,void 0,(function*(){return this.ads.waitForBlocks()}))}get blocks(){return(this._blocks||[]).filter((e=>this.wantsToServeAds?e.type===BLOCKS_TYPE:e.container===BLOCKS_CONTAINER)).map((e=>{const t=this.baseURL;new URLSearchParams(window.location.search).forEach(((e,n)=>{t.searchParams.has(n)||t.searchParams.append(n,e)}));const n=Object.assign({},e);if(n.resultsPageBaseUrl=t.toString(),this.wantsToServeAds){const e=new URLSearchParams;e.append("click","true"),e.append("session",this.uuid);const t=Object.assign({},this._signature);delete t.ad_loaded_callback,delete t.caf_loaded_ms,delete t.caf_timed_out,delete t.flex_rule,delete t.frame,delete t.js_error,delete t.no_ads_redirect,delete t.page_headers,delete t.page_request,delete t.page_loaded_callback,delete t.popup,delete t.screen_resolution,delete t.user_has_ad_blocker,delete t.user_preference,delete t.user_supports_darkmode,delete t.user_using_darkmode,delete t.zeroclick,e.append("signature",encode(t)),n.clicktrackUrl=`${TRACKING_DOMAIN}${ADS_TRACKING_URL}?${e.toString()}`}return n}))}get baseURL(){const e=new URL(this._baseURL.origin);return e.searchParams.append(ADS_PARAM,"1"),this._baseURL.searchParams.forEach(((t,n)=>{e.searchParams.append(n,t)})),e}get pageOptions(){const e=Object.assign({},this._pageOptions);return Object.keys(this._pageOptions).forEach((t=>{t.startsWith("bodis")&&delete e[t]})),e}get cannotLoadAds(){return!this.ads.loaded}get wantsToServeAds(){return new URLSearchParams(window.location.search).has(ADS_PARAM)}get adsMode(){return this.ads.loaded&&this.wantsToServeAds}get adsReady(){return this.wantsToServeAds&&!this.cannotLoadAds}get noAdsRedirectUrl(){const e=new URLSearchParams(window.location.search);return KNOWN_CAF_PARAMS.forEach((t=>e.delete(t))),`${window.location.origin}?${e.toString()}`}get callbacks(){return this.ads.toCallbacks()}toContext(){return Object.assign({blocks:this.blocks,pageOptions:this.pageOptions},this.ads.toContext())}}class CookieConsentManager{constructor(){this.injectScriptTag=()=>__awaiter(this,void 0,void 0,(function*(){return new Promise((e=>{const t=document.createElement("script");t.setAttribute("src",COOKIE_CONSENT_JS_URL),t.addEventListener("load",(()=>this.awaitConsent(e))),t.addEventListener("error",(()=>e(!1))),document.head.appendChild(t)}))}))}inject(){return __awaiter(this,void 0,void 0,(function*(){this.injected||!COOKIE_CONSENT_JS_URL||isLocal()||(this.injected=yield this.injectScriptTag())}))}awaitConsent(e){let t=0;const n=setInterval((()=>{t+=1,20===t&&(clearInterval(n),e(!0)),void 0!==window.__tcfapi&&(window.addEventListener("ConsentActivity",(t=>{const{detail:{status:n}}=t;n&&e(!0)})),clearInterval(n))}),50)}}class App{main(){var e,t;return __awaiter(this,void 0,void 0,(function*(){if(this.parkResponse=decode(),this.findDomainResponse=yield getFindDomain(),!this.findDomainResponse)throw new Error("Domain failed to load.");this.pixels=Pixels.build(this.findDomainResponse),null===(e=this.pixels)||void 0===e||e.listenForEvents(),this.adblock=new Adblock,yield this.adblock.inject(),this.google=Google.build(this.findDomainResponse,this.parkResponse,this.adblock,buildSignature({context:this.context,callbacks:null===(t=this.google)||void 0===t?void 0:t.callbacks},"click")),this.google.injectTagManager();const n=Parking.build(this.findDomainResponse,this.google);Render.prerender(n),this.cookieConsentManager=new CookieConsentManager,yield this.cookieConsentManager.inject();let i=Failed.cannotPark(this.findDomainResponse);if(i)return void(yield this.transitionToFailed(i));yield this.google.injectAds();let s=Disabled.build(this.findDomainResponse,this.adblock.state);if(s)return void(yield this.transitionToDisabled(s));const a=this.adblock.hasAdblocker();a&&this.adblock.handleAdblocked();const o=Sales.build(this.findDomainResponse);if(o)return void(yield this.transitionToSales(o));this.eligibleForZeroClick&&(this.zeroClickResponse=yield getZeroClick(this.context));const r=Redirect.build(this.findDomainResponse,this.zeroClickResponse,this.google);if(r)yield this.transitionToRedirect(r);else{if(a)return s=Disabled.build(this.findDomainResponse,this.adblock.state),void(yield this.transitionToDisabled(s));i=Failed.noSponsors(this.google),i?yield this.transitionToFailed(i):yield this.transitionToParking(n)}}))}transitionToParking(e){return __awaiter(this,void 0,void 0,(function*(){this.state=e,Render.template(e),Render.revealPage(),yield this.google.waitForBlocks(),yield this.track()}))}transitionToRedirect(e){return __awaiter(this,void 0,void 0,(function*(){this.state=e;const t=this.track();Render.revealPage(),yield waiter(e.delay,(e=>Render.loading(e))),yield t,window.location.href=e.url,log(`➡ Redirecting [${e.url}]`)}))}transitionToFailed(e){return __awaiter(this,void 0,void 0,(function*(){this.state=e,Render.message(e.message),Render.revealPage(),yield this.track()}))}transitionToSales(e){return __awaiter(this,void 0,void 0,(function*(){this.state=e,e.init(this.context),yield this.track()}))}transitionToDisabled(e){return __awaiter(this,void 0,void 0,(function*(){this.state=e,Render.message(e.message),Render.revealPage(),yield this.track()}))}track(){var e;return __awaiter(this,void 0,void 0,(function*(){if(!this.state.track)return Promise.resolve();try{const t=this.state.trackingType;return null===(e=this.pixels)||void 0===e||e.dispatchEvent({type:t}),trackVisit({context:this.context,callbacks:this.google.callbacks},t)}catch(e){return}}))}get eligibleForZeroClick(){const{cannotPark:e,canZeroClick:t,zeroClick:n}=this.findDomainResponse,{cannotLoadAds:i,wantsToServeAds:s}=this.google;return this.adblock.state!==Blocking.BLOCKED&&(!!t&&(!!e||(!(!i||s)||!!(null==n?void 0:n.reason))))}get context(){var e,t,n,i;const s=this.findDomainResponse,a=this.parkResponse,o=null===(e=this.state)||void 0===e?void 0:e.toContext(),r=null===(t=this.adblock)||void 0===t?void 0:t.toContext(),d=null===(n=this.google)||void 0===n?void 0:n.toContext(),c=browserState(),l=Object.assign(Object.assign({},null===(i=this.findDomainResponse)||void 0===i?void 0:i.zeroClick),this.zeroClickResponse);return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({app_version:APP_VERSION},s),a),r),d),o),c),{zeroClick:l})}init(){return __awaiter(this,void 0,void 0,(function*(){try{window.__parkour=this,yield this.main()}catch(e){console.error("app",e);const t=Failed.fromError(e);this.state=t,Render.message(t.message),Render.revealPage()}}))}}(new App).init(),exports.App=App}));