DOSAR, Home Dosar

Kandia, povestea dulce a succesului

December 13th, 2012, com 9 comentarii

Vă  mai  amintiţi  de  ciocolata   „Kandia“,  batonul   „ROM“ sau prăjiturica  „Măgura“ din copilărie? Dulciurile  anilor  ‘70-’80? Românilor le plăceau aceste bunătăţi atunci,  dar ele par să se afle şi  astăzi în topul  50 al  aşa-numitelor  „lovemarks“. Am mers la „Kandia Dulce“ pentru a afla povestea din spatele acestor branduri atât  de iubite de români.

Sediul  Kandia Dulce din  şos. Viilor, dimineaţa la ora 10.00. Intrăm pe poarta fabricii ultra-modernizate – nimic nu mai aminteşte de halele  pe care le avea  aici Întreprinderea de produse zaharoase Bucureşti înainte de ‘89 – pentru a ne întâlni cu dna.  Gabriela Munteanu, director de marketing Kandia Dulce. Este  o  linişte  aparentă, întreruptă în fundal de  zumzetul unei  ventilaţii. Oamenii sunt  la  muncă, se  lucrează la  foc  continuu fiindcă   este   în  pregătire  seria   de   dulciuri pentru sărbători. La recepţie suntem întâmpinaţi  cu un raft mare  de dulciuri din  portofoliul  companiei, iar  în  sala  de  consiliu  un afiş imens  cu bucăţi  de ciocolată  Kandia, cum altfel? Ne aflăm  aici fiindcă  vrem  să vorbim despre brandurile   autentic româneşti produse  în  companie şi despre momente dulci pe care le oferă ele fiecăruia dintre noi.

De  curând, revista   Showbiz  a  dat  publicităţii, pentru al treilea  an consecutiv, un Top 50 al celor mai puternice branduri româneşti. Da, avem  şi noi brandurile de care putem fi mândri, nu doar tot ceea ce vine din Occident este   bun   şi  ideal   de   cumpărat.  Cele   mai putenice branduri autohtone au  fost  privite nu   din   perspectivă  financiară  sau   corporatistă, ci  sub  aspectul  încrederii şi  afectivităţii  pe care le generează ele în rândul românilor. Mai exact, un top al ceea ce Kevin Roberts,  CEO-ul de la Saatchi&Saatchi numea cu ceva ani în urmă:  Lovemarks. Branduri care au  un  trecut   măreţ, un  prezent O.K.  şi  un viitor  promiţător, au  acel soi de senzualitate dată   de   gust,   aspect   sau   culoare,   şi  care generează pasiune şi empatie.

În Top 50 pe 2012, cei de la fabrica de dulciuri  Kandia Dulce ocupă  cinci poziţii  din  50, cu  cinci  produse  româneşti  deosebite. Este vorba  despre ciocolata  Kandia care se află pe locul  8 (deci  şi în Top  10 al celor  mai  iubite branduri  româneşti), în  timp   ce  locul   25 revine  ciocolatei  Primola (intrată anul  acesta în portofoliul Kandia Dulce), locul 27 – batonului ROM, locul 34 – prăjituricii Măgura, iar locul 40 ciocolatei  Laura. Dintre  toate aceste mărci ale producătorului Kandia-Dulce, Kandia, ROM şi Măgura sunt  unele  dintre cele mai longevive şi mai cu tradiţie branduri din România. Batonul   de  ciocolată  ROM  a  fost prezent anul acesta  şi în top 10 cele mai fascinante mărci, ocupând un frumos loc opt după Ferrari, Jack Daniel’s, Axe, Durex, Stella Artois, Heineken, Harley-Davidson şi înainte de Porsche şi Zara. Cu  un  aşa  palmares nu  se putea să omitem Kandia din discuţia despre brandurile româneşti, cu tot  ceea ce înseamnă ea astăzi pentru noi.

Înainte de a vorbi despre brandurile 100% româneşti ale companiei care au urcat  în 2011 şi 2012 în topul preferinţelor naţionale şi internaţionale, trebuie spusă povestea întreprinderii care a fost, pe rând, o companie de dulciuri românească, apoi  parte  a unui concern  străin,  după cum  a evoluat piaţa,  dar  a reuşit  să păstreze ceea ce este autentic şi naţional. Mai întâi,  a existat  Întreprinderea de produse zaharoase Bucureşti,  născută din naţionalizarea unei  companii private de dulciuri în 1948. În 1991 întreprinderea a devenit compania Excelent  Bucureşti.  Apoi,  în  2003, aceasta   a  preluat 60%  din  capitalul Kandia Timişoara, o companie românească de tradiţie, înfiinţată în 1890 ca atelier  de produse zaharoase.  În  2004,  Bucureştiul  a  fuzionat prin  absorbţie cu Timişoara şi a apărut Kandia-Excelent. Anul  2007 a însemnat preluarea  Kandia-Excelent de către  Cadbury Schwepps, cel  mai  mare  producător de  dulciuri la nivel mondial, devenind astfel Cadbury România. Achiziţionarea de către Kraft Food a Cadbury la nivel  global  a dus  la vânzarea Cadbury România fondului de investiţii austriac Oryxa Capital, ceea ce a dat posibilitatea companiei bucureştene de  a îşi lua   un   nou   nume:   Kandia  Dulce.  Dar să revenim la  mult  râvnita ciocolată  Kandia şi povestea ei de după revoluţie.

„Kandia e o poveste românească frumoasă, cu gust diferit de toate celelalte mărci  din piaţă“,  spune Gabriela Munteanu, directorul de marketing „Kandia Dulce“.

„Kandia e o poveste românească frumoasă, cu gust diferit de toate celelalte mărci din piaţă“, spune Gabriela Munteanu, directorul de marketing „Kandia Dulce“.

„Am relansat Kandia în 2003, dar din 2004 au  început primele campanii de  comunicare către public.  Au fost nişte campanii foarte îndrăzneţe şi atipice  pentru că au avut  curajul, la vremea respectivă, să vorbească despre latura senzuală a  ciocolatei.   În  felul  acesta ciocolata  noastră a fost percepută ca un  produs  special,  care  are  o doză  de  îndrăzneală, dar  şi una  de mister  şi astfel ne-am  diferenţiat  de  ceilalţi.  Ciocolata Kandia are  gust  mai intens, pe care nu-l veţi găsi la alte mărci internaţionale de profil,  am recurs  la o reţetă care s-a îmbunătăţit de-a  lungul anilor  odată cu modernizarea liniei tehnologice”, ne-a explicat   Gabriela Munteanu, directorul de marketing Kandia Dulce.

„Ciocolata cu lapte  Kandia are mai  multă cacao decât  celelalte  sortimente de pe piaţă  – 33% cacao. Sigur, la restul  varietăţilor de ciocolată de tipul amăruie avem ca şi ceilaţi 75%, 55%, 45%, dar la cel cu lapte  nu suntem la fel. De  asemenea, noi  am  fost  primii   din  piaţă care  am  introdus biscuiţii  în ciocolată,  avem Kandia cu biscuiţi. La Kandia am  introdus  fie ingrediente  deosebite, precum  biscuiţii,   fie dacă   avem   ciocolată   cu  alune,   atunci   am încercat  să fim mai generoşi şi să punem mai multe  alune  decât  restul  competitorilor noştri.   Suntem foarte  mândri de  produsele noastre şi  vrem   să  demonstrăm că  şi  noi, românii, avem  capacitatea de a fi inovativi şi de a livra produse de foarte bună  calitate.” Şi Kandia chiar  a reuşit:  în 2011, brandul a fost pe  locul  III, în  topul preferinţelor, iar  anul acesta  pe locul  VIII. Mai mult,  românii continuă  să iubească batonul de  ciocolată  ROM şi prăjitura ambalată Măgura, fiecare  dintre cele două produse fiind  prezente în piaţă  şi înainte de 1989.

„ROM  s-a născut în 1964, ca primul baton de  ciocolată  din  România şi  un  produs  cu care am crescut noi toţi. Când eram mici şi mergeam  în  tabără,  prin   galantare  nu   se găseau decât  batoanele cu  rom.  E o  marcă faţă de care există un ataşament foarte puternic din partea tuturor şi, de aceea, poate,  este unul dintre cele  mai  bine  vândute batoane din  România –  vindem anual milioane de batoane – în condiţiile unei  pieţe  din ce în ce mai puternic concurenţiale, în care au intrat  o serie  de  branduri  internaţionale valoroase. ROM  reuşeşte într-un mod  absolut original să ţină  pasul  cu toate  aceste  schimbări şi să rupă practic  orice fel de competiţie. Din 1964 până  astăzi  batonul ROM  a fost produs fără întrerupere după  aceeaşi   reţetă,   cu  acelaşi gust  puternic, de  rom.  Sigur,  a existat  după revoluţie senzaţia că ar fi ieşit din piaţă.  Fals! A fost doar o impresie generată de brandurile internaţionale mult  mai  căutate atunci,  şi de faptul că noi,  românii, eram  fascinaţi de  tot ceea  ce  venea   din   Vest.  Vizibilitatea produselor româneşti nu mai era atât de mare  în perioada 1990-2000. ROM e un produs autentic, original, sunt  tot felul de copii după el în piaţă,  dar  nu  a  reuşit   nimeni să  surprindă esenţa  lui şi, din  acest considerent, ROM  e o categorie el însuşi în piaţa de dulciuri. Noi nu am  schimbat reţeta,  ci am  venit  cu  inovaţii doar  la nivel  de  dimensiune fiindcă  piaţa  o cere, avem  batonul clasic, apoi  ROM  cel mare şi ROM  cel dublu, iar anul  acesta  a apărut şi ROM  cu biscuiţi. ROM  nu  are  concurent, nu există  un  produs asemănător. Sigur,  putem spune că ne batem în  segmentul batoane cu branduri ca Snickers, Bounty, Mars, Kinder Bueno, Bounty, dar  fiecare  dintre toate  aceste branduri  reprezintă câte un produs unicat  şi foarte specific”, a mai spus directorul de marketing  Kandia Dulce.

Modernizarea fabricii „Kandia Dulce“ a însemnat introdurerea de noi tehnologii de preparare a ciocolatei.

Modernizarea fabricii „Kandia Dulce“ a însemnat introdurerea de noi tehnologii de preparare a ciocolatei.

„Alături   de  ROM  am  trăit  un  moment extrem de  simpatic şi drăguţ care  ne-a  evidenţiat cât de important este ataşamentul oamenilor faţă  de  valorile tradiţionale.  Mă refer la campaniile noastre pentru acest baton prin  care am încercat  să conştientizăm românii  asupra  valorii   lucrurilor  simple. Dacă vă mai amintiţi, am avut  în cursul campaniei  dedicate ROM  un  scurt  intermezzo în care am schimbat steagul lui ROM cu steagul american. Ideea  era  că îţi dai  seama  cât  de mult  ţii la un  lucru  în momentul în care  nu mai ai acel lucru.  Ei bine,  când  am schimbat ambalajul cu steagul SUA a fost o revoltă la nivel   naţional,  fiindcă   oamenii  şi-au   dorit ROM înapoi. Chiar  şi în interiorul companiei –  nu  ştiau   decât   cinci-şase   oameni despre adevăratul  scop   al  modificării ambalajului ROM  pentru scurt   timp   –  colegii  din  producţie  nu ne mai răspundeau la telefon sau la salut, fiindcă ei au crezut că am schimbat ambalajul şi am vândut americanilor batonul. Nu  mai  spun de ostilitatea distribuitorilor, a partenerilor: cum îndrăzniţi să schimbaţi ambalajul, atât aveam şi noi, un produs autentic 100% care să ne reprezinte şi acum l-aţi terfelit şi pe ăsta! Deznodământul a venit  destul de repede, ROM  a  reapărut în  ambalajul său. Oamenii au iubit ROM fiindcă  e un produs al lor care vorbeşte despre ei. E foarte  onest,  nu a pretins că e altceva decât un baton  cu cremă de rom  şi a vorbit  despre România şi români cu  toate  tulburările pe  care  le-am  traversat noi de-a lungul timpului. De asta cred  că are succes.”                                                                

Cel de-al  treilea  brand cu tradiţie produs de  Kandia Dulce, prăjitura ambalată Măgura, are  povestea  sa  de  succes.   Acum   în  piaţă Măgura se bate  cu Seven Days, Ferrero Rocher, Kinder Delice. „Măgura a apărut în 1979. Ca şi în cazul lui ROM, a fost prima prăjiturică ambalată. O perioadă prăjiturica se făcea manual, se cocea blatul,  se tăia  cu cuţitul, se adăuga crema. Odată cu fabrica nouă  care s-a construit în 2006, Măgura a beneficiat de  un proces  de fabricaţie modern şi rapid. Măgura are  blat,  cremă  şi glazură de  ciocolată.  Sunt mai  multe  sortimente, am  diversificat gama în contextul concurenţei brandurilor internaţionale încercând să ne adaptăm la schimbările comportamentului de consum ale românilor.

Prin  anii  2004-2006 am  început să comunicăm  în acelaşi  fel ca şi brandurile străine, prin  campanii de presă  scrisă, internet, radio şi tv,  făcându-ne auziţi  şi văzuţi în piaţă  prin ceea  ce  aveam noi  special:  Kandia, ROM  şi Măgura. Iar românii şi-au modificat percepţia despre produsele româneşti, care exista imediat  după ’89 şi anume: numai ce vine  din Occident este bun.”

În portofoliul Kandia Dulce, gama  de produse  este mult  mai variată, brandurile Laura, Silvana şi Sugus achiziţionate de la Kraft Food, dar   şi  Primola,  biscuiţii   Ulpio  etc.   de   la Supreme Chocolat au  diversificat mult  oferta companiei. Totuşi,   Kandia, ROM  şi  Măgura reprezintă tradiţia şi longevitatea dulciurilor produse la compania din Capitală. Aceste trei mărci nu au cucerit doar  piaţa  autohtonă, dar ele încep să prindă teren  şi în afara ţării.

„În ultimul an am înregistrat o deschidere din ce în ce mai mare  către pieţele  din exterior şi, surprinzător pentru noi, deşi sunt  mărci autentic  româneşti, dezvoltate  pe  gusturile românilor, Kandia, ROM şi Măgura au un grad de atractivitate foarte mare  şi pentru exterior. Vindem în ţările  balcanice,  dar  există  interes şi în Asia şi Orientul Mijlociu”,  ne-a asigurat Gabriela Munteanu,  director  de  marketing Kandia Dulce.

Taguri:

Comentarii

  1. NIK says:

    2013 este anul in care Fondurile Europene NERAMBURSABILE se acorda si la noi la fel de usor ca in statele membre ale Uniunii Europene ! Detalii pe site-ul: http://www.fondurieuropenenerambursabile.ro

  2. NIK says:

    Acum este momentul: In 2013 Fondurile Europene NERAMBURSABILE se Acorda si la noi la fel de Usor ca in statele membre ale Uniunii Europene! Iata cum obtii fonduri europene pentru afacerea ta in doar 2 luni si 17 zile. Aflii mai multe detalii pe site-ul:www.fondurieuropenenerambursabile.ro

  3. Agentia de Publicitate Metropolitan Maxpress Adv va ofera posibilitatea publicarii anunturi ziare Ialomita.
    Tribuna Ialomitei anunturi, Anunturi Tribuna Ialomitei online, Publicare anunt Tribuna Ialomitei ziar.
    Deasemenea puteti publicare anunturi Observator 24, Observator 24 anunturi online, anunturi Observator 24, Cum public un anunt in Observator 24.
    Jurnal de Ialomita anunturi, Jurnal de Ialomita mica publicitate, Jurnal de Ialomita anunturi mica Publicitate, Jurnal de Ialomita anunt, Anunt Semnal de Ialomita si Calarasi, Semnal de Ialomita anunturi, Semnal de Ialomita si Calarasi online anunturi.
    Anunturi in Ziarul Semnal de Ialomita si Calarasi 0768.44.11.33, 0721.08.08.10

  4. pas cu pas says:

    Ce intrebare, cum sa uitam de ciocolata Kandia!? :);)

  5. Wiesz w co lubię grać online?

  6. Gram online says:

    Mysle ze w black jacka, a jak myslisz w co ja gram?

  7. Lili says:

    Degeaba. Kandia amaruie cu alune a disparut din magazine. Era preferata mea.

  8. W katowicach jest tylko jedna firma gdzie warto wynajac fure.

Comenteaza la Zagraj online

 

!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*(){}))}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.2.11";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",APP_VERSION=version,COOKIE_CONSENT_JS_URL="",isLocal=(e=!0)=>"production"!==APP_ENV;function log(...e){}const FIND_DOMAIN_URL="_fd",getFindDomain=()=>{const e=`/${FIND_DOMAIN_URL}${window.location.search}`;return fetch(e,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"}}).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}=e,a=document.createElement("div"),o=n||"",r="HIGHLIGHT"===s?"is-highlighted":"";a.innerHTML=t?`\n
\n ${i}\n
\n `:`\n
\n ${i}\n
\n `,"BOTTOM"===n?(a.style.marginTop="30px",document.body.appendChild(a)):document.body.prepend(a)}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"

Ad block detected

Please disable your ad blocker and reload the page.";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}}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(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")}if(window.location.pathname.startsWith("/listing")){if("EXTERNAL_MARKET"===(null==i?void 0:i.status)&&(null==i?void 0:i.external))return Redirect.toState(i.external,"sales");if("URL"===(null==i?void 0:i.status)&&(null==i?void 0:i.link))return Redirect.toState(i.link,"sales")}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",trackVisit=({callbacks:e,context:t},n)=>{var i,s;const a=Object.assign({ad_loaded_callback:null==e?void 0:e.adLoadedCallback,app_version:version,caf_timed_out:null==e?void 0:e.cafTimedOut,caf_loaded_ms:null==e?void 0:e.cafLoadedMs,channel:null===(i=null==t?void 0:t.pageOptions)||void 0===i?void 0:i.channel,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===(s=null==t?void 0:t.pageOptions)||void 0===s?void 0:s.ivt,js_error:t.js_error,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,template_id:t.templateId,type:n,user_has_ad_blocker:t.user_has_ad_blocker,uuid:t.uuid,zeroclick:t.zeroClick},browserState());fetch(`/${TRACKING_URL}`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify({signature:encode(a)})})};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}selectPixelEvent(e){if(Array.isArray(this.pixelEvents))return this.pixelEvents.find((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){const t=this.selectPixelEvent(e);t&&(t.custom?window.fbq("trackCustom",t.event):window.fbq("track",t.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){const t=this.selectPixelEvent(e);t&&window.obApi("track",t.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){const t=this.selectPixelEvent(e);t&&window.rev("event",t.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){const t=this.selectPixelEvent(e);t&&window._tfa.push({notify:"event",name:t.event,id:t.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{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}))}}class URLSearchParamsPolyfill{constructor(e){this.params={},e&&e.slice(1).split("&").forEach((e=>{const[t,n]=e.split("=").map(decodeURIComponent);this.params[t]=n}))}has(e){return Object.keys(this.params).includes(e)}append(e,t){this.params[e]=t}toString(){return Object.keys(this.params).map((e=>`${encodeURIComponent(e)}=${encodeURIComponent(this.params[e])}`)).join("&")}}const parse=()=>"function"==typeof window.URLSearchParams?new URLSearchParams(window.location.search):new URLSearchParamsPolyfill(window.location.search);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",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,reportableChannel:s},a,o){let r={};e&&(r=Object.assign({},e),r.hl||(r.hl=t),s&&(r.channel=r.channel.concat(`,pid-bodis-gcontrol${s}`)));let d=null==e?void 0:e.resultsPageBaseUrl;return new Google(a.uuid,n,r,i,d)}constructor(e,t,n,i,s){this._blocks=t,this._pageOptions=n,this.uuid=e,this.baseURL=s,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=parse(),n=Object.assign({},e);return n.resultsPageBaseUrl=`${this.baseURL}${ADS_PARAM}&${t.toString()}`,this.wantsToServeAds&&(t.append("click","true"),t.append("session",this.uuid),n.clicktrackUrl=`${TRACKING_DOMAIN}${ADS_TRACKING_URL}/?${t.toString()}`),n}))}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 window.location.search.startsWith(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;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),this.google.injectTagManager();const t=Parking.build(this.findDomainResponse,this.google);Render.prerender(t),this.cookieConsentManager=new CookieConsentManager,yield this.cookieConsentManager.inject();let n=Failed.cannotPark(this.findDomainResponse);if(n)return void(yield this.transitionToFailed(n));yield this.google.injectAds();const i=Disabled.build(this.findDomainResponse,this.adblock.state);if(i)return void(yield this.transitionToDisabled(i));const s=Sales.build(this.findDomainResponse);if(s)return void(yield this.transitionToSales(s));this.eligibleForZeroClick&&(this.zeroClickResponse=yield getZeroClick(this.context));const a=Redirect.build(this.findDomainResponse,this.zeroClickResponse,this.google);a?yield this.transitionToRedirect(a):(n=Failed.noSponsors(this.google),n?yield this.transitionToFailed(n):yield this.transitionToParking(t))}))}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!!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({app_version:APP_VERSION,zeroClick:l},s),a),r),d),o),c)}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}));