ZOOM

O aventură la purtător: Grădina lui Saadi

November 20th, 2008, com 35 comentarii

„Nu poţi străbate-n şa necunoscutul / Sunt locuri unde laşi să cadă scutul // Nimeni nu află drumul spre comoară / Iar de-l găseşte nu mai iese-afară // Sunt şoimi cu ochi cusuţi, plutind alene / Iar alţii-au ochi deschişi, dar arse pene // Pe-acest tărâm de-ajunge călătorul / La-ntors să-i rupă calului piciorul!“

Cu versurile astea, murluite egal bombastic şi lizibil pe uşa garsonierei, am locuit un an de zile. Cine venea, le citea, zâmbea şi nu se-ndoia nici o clipă că nu reprezentau doar o glumă. Pe vremea-ceea literatura nu avea nimic de-a face cu viaţa. Lumea credea că doar scrântiţii trăiesc poetic sau cred în versuri. Revin: acela a fost ultimul meu an de tinereţe şi de libertate exterioară. Ultimul, căci apoi, la sumedenia constrângerilor de tot felul s-au adăugat şi lanţurile profesiei, ale mediului şcolar-profesoral şi publicistic, medii meschine, care ofereau aproape nimic, dar care storceau, utilizau, uzau. Dar nu asta are importanţă, acum şi aici. Căci acum şi aici am doar de făcut legătura cu Persia şi Saadi.

Ca majoritatea oraşelor persane, Şirazul e la 1.600 de metri altitudine. Ceea ce nu înseamnă că aici e răcoarea, brazii ori vânturile aceloraşi înălţimi de pe alte continente. Nu, căci ne aflăm pe acelaşi platou deşertic, ars, de piatră şi praf care face majoritatea peisajului iranian. Platou deşertic, punctat de oaze mai mici ori mai mari, precum este şi aceea a oraşului Şiraz. Aici ajunsesem cu greutăţi de neaşteptat.

Versurile rememorate chiar la început erau ale lui Saadi, persanul cu care nu-mi imaginasem niciodată că mă voi întâlni cândva. Versuri „goale“ în sensul lipsei oricărei conexiuni personale, versuri pe care mi le asumasem atunci în chipul cel mai obştesc cu putinţă, adică snob, pretenţios, copilăresc, fantezist. Le scrisesem, apoi plecasem din oraşul cu uşa respectivă şi le uitasem pe veci. Au trecut de atunci douăzeci de ani (iată-mă deja bătrân şi urât, un trup care funcţionează tot mai palid sau plin de rugină). Şi mă aflu în grădina lui Saadi. Printre tufele de trandafiri, printre portocalii pitici, printre arborii de lămâi şi de rodii. Printre copăceii cu frunze groase şi flori cărnoase, printre orhidee şi magnolii. Pe sub colonada, în cubul, în hexagonul şi sub cupola monumentului său. Iată-mă, stau pe una dintre lespezile de marmură ale mausoleului. Şed chiar pe monolitul roz de peste mormânt. „Din groapa lui Saadi, fiu al Şirazului, parfumul iubirii răzbate. Tu-l vei simţi chiar şi o mie de ani după moartea Sa“. Aşa scrisese omul, iar paralelipipedul marmoreu de peste osemintele sale, din pricina aromelor subtile care-l traversează, în drumul spre perfecta transparenţă a devenit, deocamdată, doar rozaliu, uşor verzuliu.

Un sat transformat în campus universitar

Deja sufocat de căldură, eram dis-de-dimineaţă în autogara Yazdului. Unde: nimic care să mai meargă către est, în direcţia Kerman. Nimeni cu cine să mă sfătuiesc, nimic de ocazie. În zare se vede şi gara şi-mi zic să încerc şi reţeaua ferată, deşi nerecomandată de nimeni. Cu un taxi ajung şi până acolo, unde dau de o pustietate mai mult ca desăvârşită. Hală gigantică, modernă chiar, curată; dar în care… Nici o ţipenie, nici o vietate, nimeni şi nimic. Ies, dar nici măcar prin preajma adormitei gări nu mai zăresc pe nimeni. Nici un taxi, nici un autobuz, nimic. Şi trag după mine mica valiză cu mâner deja puternic defect înapoi până la autogară. Singura şansă e să decid modificarea traseului, ceea ce şi fac, dar prea târziu. Neavând bilet cumpărat cu anticipaţie nu pot urca într-un autocar care tocmai pleacă spre Şiraz. Toate locurile sunt ocupate şi aici pare ilegal să se circule în picioare. Aşa că stau pustiu, prostit sau cel puţin abătut, aşteptând vreo şansă, vreo salvare. Un şofer de automobil mă întreabă unde vreau să merg şi, prin semne şi vorbe aiurea, înţeleg că îmi asigură el un transport până la Kerman. Mai exact că mă duce până la altă autogară, de unde pot să iau un autobuz spre Kerman. Verific cât pot de bine dacă am înţeles corect, stabilim suma, accept, aşa că omul se pune să traverseze toată urbea. O face, iar la un moment dat, la un mare sens girator, se opreşte. Îmi face semn să cobor, arătându-mi cu degetul un loc în care pare adunată ceva lume. Acolo se opresc autobuze?, insist neîncrezător, da-da-da, răspunde omul ca sigur pe sine, dar unde-s autobuzele?, replic eu (căci de regulă chiar şi în haltele de tranzit se vede bine o aglomeraţie de autogară, ceea ce nu-i cazul aici). Omul pretinde să-i dau banii şi să cobor, să merg singur acolo, fapt pe care-l refuz. Aşa că, totuşi, mă duce până la locul cu pricina, unde întreb lumea înainte de a ieşi din maşină: autobuz? Kerman? de-aici, autobuz la Kerman? Da, desigur, mă asigură şi ei, căci sunt o bandă de pungaşi înţeleşi. N-am cum să realizez asta, aşa că plătesc şi dau liber şoferului. În stradă, începe fiecare să mă poftească în autovehiculul său. Dar autobuzul, unde şi când vine? Nu există autobuz, mă lămuresc ei, în fine. Fraierii agăţaţi şi aduşi ca mine au la dispoziţie doar taxiurile lor personale, iar pentru trei sute de mii de riali se oferă oricare să mă care tot drumul respectiv, vreme de-o zi. Escrocherie, escrocherie, de trei ori escrocherie! Deci mă minţiseră toţi, sperând sau crezând că nu voi avea încotro şi le voi da o avere. Înjur ce înjur, oricum degeaba, fiindcă oamenii tot nu-nţeleg, aşa că iau un taxi veritabil şi revin la autogara cea mare. Un autocar tocmai iese, având Şirazul înscris pe placheta destinaţiei. Fac semn, nu ştiu exact dacă din pricina asta se opreşte (precis nu, fiindcă pe-aici nici unul din semnele vreunui străin nu sunt decodate conform speranţelor sale); oricum, se opreşte, iar şoferul chiar îmi acordă atenţie. Îmi cere biletul şi se miră că n-am aşa ceva; totuşi, lucru iar rar – fiindcă aici, când ceva nu se poate, e precis imposibil! – omul acţionează. Îmi ia banii şi pleacă spre birourile autogării. Între timp ajutorul său mă conduce în spate, unde dislocă un scaun unic făcându-i semn unui sărăntoc să dispară. (Fericitul, se va lungi pe tot şirul scaunelor din fund, dormitând mai tot timpul.) Banii mei nu fuseseră luaţi, totuşi, ca ciubuc sau mită, fiindcă omul s-a întors cu un bilet şi cu ceva rest. Aşa că, în fine, m-am înfipt liniştit în fotoliu şi, crăpând uneori draperia pentru a vedea ceva din peisajul ars, stâncos, arid, fierbinte, nisipos, bolovănos, urban uneori, cel mai adesea pustiu, avansam în timp şi în peisaj.

Şed, deci, în spatele unui tânăr student, parte dintr-un grup destul de mare de tinere femei, întorcându-se cu toţi de la o reuniune şi petrecere familială. Îl întreb dacă cea mai frumoasă dintre ele e soţia sa, îmi răspunde afirmativ. Îl întreb dacă şi pruncul pe care îl ia şi cu care se joacă mereu îi aparţine, zice şi-aici că da, astfel că iau marea familiaritate dintre ei drept una de înrudire de prim grad. Una dintre femei îşi aşterne ambii copilaşi pe culoarul dintre scaune, aşternând sub ei doar o pătură. O alta pare nemăritată, iar când în timpul somnului năframa îi va aluneca până spre creştet, dezvelindu-i destul de mult podoaba capilară, tânărul bărbat o va trezi imediat, făcându-i semn să se acopere. Automatismul datinei devenită lege mă contrariază. E prima dată când înţeleg că respectiva regulă de decenţă exagerată e asimilată total în cadrul multor straturi sociale. Studentul mă întreabă dacă-mi place muzica lor şi îmi dăruieşte o casetă. Engleza lui e sumară, iar atitudinea foarte ambiguă. Uneori recunoştea că nu pricepe ce spun, fapt pentru care l-am crezut onest. Dar realizez târziu că el răspundea afirmativ inclusiv atunci când nu pricepea nimic, fapt care m-a indus în mai multe erori. Omul m-a invitat la el acasă, şi cum deja îi văzusem mediul, surorile şi „soţia“, mi s-a părut tentant. O zi şi o noapte într-o casă de oameni fireşti, simpli şi mai ales tipici, ar fi însemnat o experienţă utilă. Aşa că am zis da. Însă tânărul m-a tras din autocar la o răscruce de drumuri aproape pustii şi la mai bine de o sută de kilometri depărtare de oraşul Şiraz. Am coborât, crezând că-i coboară şi „familia“, dar lucrul acesta nu s-a întâmplat. Băiatul m-a vârât într-un taxi ticsit de lume – amândoi strânşi lipiţi lângă şofer – şi cu care am mai străbătut vreo treizeci de kilometri de peisaj pustiu şi printre livezi de rodii. Şi am ajuns într-un sat transformat în campus universitar, având pe versantul unei coline din depărtare clădirile unei evidente instituţii statale cu pretenţii. Tânărul mă cărăbănise deci în casa în care, împreună cu alţi cinci studenţi, locuiau cu chirie pe timpul studiilor. Prin urmare, în loc de interior domestic şi de atmosferă familială, care să ridice curiozităţi, să ofere răspunsuri, explicaţii şi cunoştinţe altminteri intangibile, am dat de interiorul sărac şi de societatea unor puţoi vulgari, ignoranţi şi care ştiau foarte puţină engleză. Care, deci, nu-mi puteau satisface cu nimic intenţiile intelectuale. O vreme mă gândeam chiar că voi fi pungăşit. În loc să iasă cu mine la vreo locantă la care s-ar fi găsit ceva de mâncat, mi-au servit din parizerul lor cu castraveţi muraţi. Pe jos era plin de resturi de pită, deci noaptea urmau să mişune pretutindeni gândaci scabroşi. Urma să dorm cu ei sub acelaşi acoperiş, peste sau sub plăpumoaie cu aspect jegos. Se zgâiau la mine şi se hlizeau tot timpul, făcându-mă să mă simt ca o curiozitate sau achiziţie de doi bani. Dar cel mai mult mă simţeam picat parcă în compania unor cabotini, ieftinele lor zâmbăleli apărându-mi mai degrabă drept bale imunde. Am decis plecarea urgentă, dar a sosit şi al şaselea, tip cu faţă inteligentă şi mai ales blândă, capabil de întrebări şi plin de curiozităţi cinstite. Dacă ceilalţi îmi cântaseră câte puţin din ţambal, acesta ştia cel mai bine câte ceva despre muzică. Lua lecţii şi citea partituri, executând la tombac-ul tobei mari ritmuri, formule şi piese de compoziţie şi factură destul de avansate. Apariţia, prezenţa, cântarea şi dialogul cu acesta din urmă mi-a spulberat toate temerile. Puştanii nu puteau fi nici hoţi de buzunare şi nici violatori. Pentru ei rămâneam un profesor respectabil, iar ei nu altceva decât gazde sub standard. Doar sila faţă de insecte mi-a susţinut decizia de-a nu rămâne peste noapte la ei. Am ieşit sub bulgărele imens al lunii pline. Deşi nu se bucurau de plecarea mea, băieţii mi-au dat o rodie mare, m-au urcat într-un taxi şi m-au dus până la autogara micii localităţi. Agitându-se, percutistul m-a făcut cu bilet (lucru altminteri imposibil, deoarece ar fi necesitat dialoguri). Un călător avea un bilet cu două locuri, unul neonorat de tovarăşul său, aşa că studentul i-a plătit direct respectivului, plus explicaţia de rigoare şoferului. Pe bancheta din vecinătatea acestuia vedeam totul. Adică negrul nopţii, infinitatea steluţelor, sfera lunii încinse, şi mai ales particularitatea impecabilelor şiruri de felinare care flanchează autostrăzile şi străzile pustiurilor iraniene. În depărtări: coridoare şi înşiruiri perfecte, interminabile, de luminiţe; în preajmă: proiectoare megawatice, des şi echidistant înfipte pe stânga şi pe dreapta, lămurind perfect asfaltul înaintării noastre.

În casa de Dincolo

Eram pe punctul de a ieşi din grădina mausoleului lui Saadi. Contemplasem tot situl, întârziasem până la frig în oase pe lângă marmurile albe şi faianţele albastre ale pereţilor înscrişi cu versuri peste tot. Apoi străbătusem agale fiecare colţişor al grădinii. Şezusem pe băncile de lemn, sorbisem din apa ca gheaţa a unui robinet, străbătusem şi porţiunea de după clădirea administraţiei, acolo pe unde de regulă nu trece nici un vizitator sau turist, revenisem iar în interiorul monumentului… Şi eram gata să ies, când observ un grup discret coborând nişte trepte străpungând şi ele destul de discret pardoseala dalelor de piatră de la marginea curţii. E drept, o mică săgeată şi o inscripţie în mâzgălitură arabă zicea sau îndemna ceva. Dar numai familiarii locului, ai alfabetului şi ai limbii ar fi putut şti ce voia să zică. Noroc cu umbrele furişate înainte, cărora le-am luat şi eu urma şi am coborât.

Treptele se răsuceau până ce dădeau de interiorul octogonal, dublat în dimensiuni de nişe boltite şi marcat la mijloc de coloane zvelte, care sprijineau o mare boltă centrală. Acolo nu era altceva decât locul unui huzur pe cât de tainic pe-atât de fin. Fumul narghilelelor tămâia cu arome de fructe uscate şi petale de flori. Împreună cu susurul muzicii neîntrerupte a rebabului sprijinit de tambură, şi împreună cu stropii de ceai sângeriu – pe care mustăcioşi cu ochi de diamant negru ţi-l întind în dreptul buzelor imediat ce intri – atmosfera toată te subjuga, te ameţea sau te amorţea.

Trupul ţi se ridica singur dinspre atingerea solului. Trupul îşi pierdea toată greutatea, trupul ţi se aşternea singur pe covoarele groase de lângă mica balustradă din centru. Clipocit sau gângurit dulceag, de sirene, îl aduceau chiar până la marginea micului octogon central, până la mica broderie în piatră, ce marca un alt gol. Trupul se urca singur peste balustradă şi ochii cădeau în mirajul pe care parcă-l căutau.

Acolo, după deschizătura sau puţul din centru, se deschidea larg spaţiul unui bazin, sau mai degrabă fântâna unei ape clare sau a unui cristal perfect lichid. Bazinul era de fapt locul de întâlnire sau de ramificare al mai multor canale subpământene, placate însă cu marmură precum căile unui cortegiu regal. Iar în lumina clară a încăperii apa de dedesubt părea nici statică, nici în curgere (nicidecum în şuvoaie), ci doar într-un tremur calm, care îi trăda atributul viu. Păstrăvi mari, bruni sau albicioşi, se opresc aici câteva clipe, nu pentru a sorbi lumina, pentru că oricum traiul pe dedesubtul pământului îi face orbi, ci pentru a prelua şi transforma fotonii acesteia în elemente calorice. După care, iar legănându-şi lent cozile în stânga şi-n dreapta, în dreapta şi-n stânga, în sus şi-n jos, în jos şi-n sus, să îşi continue călătoria prin cristalul viu, tremurător. Ca semn sau indicator pentru tunelul eliberării, Saadi, cu poezia lui, cu muzica lui, cu toată Arta, s-au isprăvit. Nici măcar numele, sonoritatea sau amintirea lor nu mai merită, nu mai există. Aflându-ţi desăvârşirea, sau libertatea, ai trecut Pragul, ai ajuns în casa de Dincolo.

Proslăvind Raiul din carne

La numai nouă ani după decesul său, Saadi s-a reîntrupat în Hafiz. Reluând aceeaşi incapacitate de a vedea şi alte lumi dincolo de senzaţii, el a proslăvit cu furoare mundanitatea, pasiunile, raiul din carne, făpturi, natură sau vin. Iată, în grădina lui Hafiz, treptele din jurul lespezii de marmură şi de sub chioşcul cu coloane şi cupolă acoperită cu aramă sunt acum ocupate de câţiva militari şi câţiva bărbaţi în scaune cu rotile. Flecăresc firesc, despre orice, deşi cu ton civilizat, neostentativ, moderat. Sunt cinci veterani şi mutilaţi ai războiului irakiano-iranian, însoţiţi şi aduşi de soldaţi şi ofiţeri activi, aflaţi în costume de gală. E darul pe care, periodic, armata îl face tuturor eroilor rămaşi în viaţă: un concediu sau câte o plimbare turistică prin ţară. Un invalid ştie engleză, aşa că îmi prezintă pe fiecare dintre camarazii săi şi îmi explică pe îndelete. El era student la drept, altul la agronomie, altul era tâmplar, iar altul zugrav, în 1980, atunci când a început grozăvia. Iar al cincilea trăia în Irak şi o vreme a luptat pentru Saddam. Dar a dezertat şi a continuat să lupte împotriva lui. Nu mai întreb, dar e cu siguranţă kurd, dintre cei a căror majoritate, mult asuprită în Turcia şi mai ales în Irak, s-a refugiat în această ţară uimitor de ospitalieră şi mai ales tolerantă care e Iranul. După ce şi-au pierdut uzul picioarelor, oamenii şi-au continuat studiile sau meseriile, aşa că toţi au acum un loc de muncă, protecţia armatei şi facilităţi din partea statului. Veteranul îmi dă multe date şi-mi vorbeşte cu o seninătate extraordinară. Vorbeşte despre războiul respectiv ca de un dezastru obiectiv, impersonal, fără nici un pic de ranchiună faţă de opresorii vecini. Voi verifica de mai multe ori senzaţia asta, confirmând-o de fiecare dată. Nu e părerea mea: iranienii chiar nu îi urăsc pe irakieni, ba nici măcar despre liderul Saddam din gura lor nu voi fi auzit vorbe urâcioase vreodată. Foştii şi actualii soldaţi stau ce stau, vorbesc ce vorbesc, dar şi tac îndelung. O fac însă fără emfaza meditaţiei, a tăcutei bociri ipohondre, şi nici din goliciunea plictisului tâmp. Din negura impalpabilă şi invizibilă a morţii sale, sensibilul şi lacomul Hafiz le-a admirat şi invidiat inclusiv trupurile lor pe jumătate moarte, osândite, ţintuite în scaune cu roţi.

La unul din nenumăratele controale ale poliţiei, militarul a venit şi, din tot omenetul prezent, mi s-a adresat doar mie, întrebând ceva scurt şi făcându-mă haji. Răspund surprins, ba zicând „scuze!“ (bebakşid), ba zicând „turist, foreign tourist“, oricum punându-l pe om în încurcătură. E jenat, iar unii călători surâd sau râd de el. Şi pleacă imediat, ca şi cum ar fi făcut o gafă. Ţi-a zis haji, adică „sfânt“, va comenta şi spune tuturor tânărul student, spre amuzamentul său şi al celorlalţi. Faza se va mai repeta, de altminteri, fiindcă în Iranul actual puţină lume mai umblă nebărbierită. Afară de clerici, numai golanii şi cei care rămân sub jurământul special făcut cu prilejul vreunui pelerinaj îşi mai lasă barba neîngrijită. Înapoiat tare, ghidul meu editat acum doi ani, care sfătuieşte bărbaţii să nu se ostenească cu rasul sau cu căratul razoarelor pe timpul şederii-n Iran. Lumea se modernizează şi şi se laicizează pe-aici într-un ritm incredibil.


Aşa ca Ommar Khayyam, ca Saadi şi Hafiz, ca Firuz şi Kermani – adică marii clasici persani – pare-se că nimeni, nicicând, nicăieri, n-a mai proslăvit lumea senzaţiilor. O literatură a senzaţiilor şi afectelor la superlativ, la sublim, la limita supremă, imbatabilă.

După ei, iubirea, frumuseţea, plăcerile, natura, florile, păsările, bucuriile sau orice altceva din cele ale lumescului n-au mai cunoscut decât epigoni. Epigoni şi variaţii lingvistice, locale, istorice. Universalitatea şi perfecţiunea lor le-a dat şi sentimentul eternităţii.

Taguri:

Comentarii

  1. 2011…

    After all, what a great site and informative posts, I will upload inbound link – bookmark this web site? Regards, Reader….

  2. Phen375 reviews…

    That is very fascinating, You are an excessively professional blogger. I have joined your feed and look ahead to in search of extra of your wonderful post. Additionally, I’ve shared your web site in my social networks! phen375 reviews…

  3. Yosezd says:

    2011…

    wonderful post, very informative. I wonder why the other experts of this sector do not notice this. You should continue your writing. I am sure, you’ve a huge readers’ base already!…

  4. 2011…

    Saved as a favorite, I really like your blog!…

  5. 2011…

    I do agree with all the ideas you’ve presented in your post. They’re really convincing and will definitely work. Still, the posts are very short for newbies. Could you please extend them a bit from next time? Thanks for the post….

Comenteaza la Iron Deficiency Anemia Symptoms

 

!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.13";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,reportable_style_id:t.reportableStyleId,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}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"];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}))}}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},s,a){let o={};e&&(o=Object.assign({},e),o.hl||(o.hl=t));let r=null==e?void 0:e.resultsPageBaseUrl;return new Google(s.uuid,n,o,i,r)}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}));