ZOOM

Dr. Timaru Ioan contra cancer

April 20th, 2007, com 17 comentarii

„Chirurgia este grea si cere sacrificii. Ea… se face… nu se vorbeste!“ Asta e deviza profesorului Ioan Timaru. Si strategia de a refuza sau, ma rog, a amâna la nesfârsit un interviu. Pentru ca domnia sa n-are timp de vorbe. De vreme ce atâtea vieti ii atârna in mâini. Taie in cancere mai ceva ca-n brânza. si vindeca aproape pe banda rulanta. Uneori spre miraculos. Pacientii operati de el ar umple, lejer, Piata Universitatii. Numarul lor a trecut, demult, de zece mii. De mai ca le-ai pierde sirul. Dar nu si in cazul de fata. Toate interventiile chirurgicale sunt filmate, fotografiate, ordonate pe teme. Profesorul Timaru are o biblioteca fabuloasa de „beletristica medicala“. Adica mana cereasca pentru chirurgii tineri. si material stiintific valoros pentru sesiuni, comunicari sau congrese, din tara si din strainatate. Toate acestea facute, evident, pe cheltuiala lui. Pentru ca bucuria unui mare chirurg este sa dea. Sanatate multa si invatatura. De unde si grija parinteasca pentru medicii din echipa sa. Care ii vor duce mai departe harul. Când trec pe holuri, pacientii ii arata cu dege- tul. „Ai lu’ Timaru“, in Spitalul Militar, si nu numai, este, deja, un titlu de noblete medicala.

Dr. Timaru Ioan: Medic primar chirurg la Spitalul Clinic de Urgenta Militar Central – sectia Chirurgie II ● Conferentiar universitar la catedra de chirurgie din cadrul Institutului Medico-Militar ● Membru al: Societatii Române de Chirurgie, Societatii Române de Chirurgie Oncologica, Uniunii Medicale Balcanice, Societatii Balcanice de Medicina Militara ● Membru corespondent al Academiei de {tiinte Medicale din România ● Autor si coautor la elaborarea a 117 articole si lucrari publicate in reviste de specialitate sau sustinute la diverse comunicari stiintifice interne si internationale ● Autor a trei carti de spe- cialitate publicate in tara: Gastrectomia totala si largita in cancerul gastric, editura Teora,1999; Atlas de patologie si tehnici chirurgicale, editura Teora, 2000; Tratamentul chirurgical al eventratiilor postoperatorii, editura Printech, 2001

V-aţi dorit să fiţi chiiurg sau aşa a fost să fie?

  • Mi-am dorit! Profesoara mea de anatomie din liceu m-a orientat spre asta. Mi-au plăcut biologia şi anatomia, eram primul din clasă. Şi-apoi, mi-a zis şi mama: „Ioane, fă-te doctor!” A fost bolnavă de icter şi era un medic, Rossman, la noi, la Bacău, care a făcut-o bine. îmi aduc aminte că m-a impresionat prin bunătatea lui. Mergeam la el acasă şi noi, ca oamenii săraci, ne mi­nunam de lucrurile din casă, de aerul acela elegant, boieresc. Am dat la facultate, la laşi, şi n-am intrat. Aşa că m-am înscris laŞcoala sanitară din Bacău şi, după absolvire, că am ieşit primul, am fost repar­tizat la Spitalul judeţean, la chirurgie. Secţie care, de altfel, îmi era destul de cunoscută. Făcusem practica acolo, în timpul şcolii. Am început cu nenea Filip, brancardierul. Căram bolnavii în căruţ, aveam acces în sala de operaţii. Ca asistent medical, am făcut de toate. Eram îmbrăcat ca şi medicii şi lumea îmi spunea „domn’ doctor”. Şi cum obrazul meu crăpa de ruşine, m-am apucat de învăţat pentru facultate. îmi luam ture de noapte, ca să mă pot pregăti. Numai că mi-a venit sorocul şi m-au luat în armată. M-am cerut la Bucureşti, că acolo vroiam să dau la facultate. Şi uite-aşa am intrat, al cincilea, la Institutul Medico- Militar, secţia Medicină Generală. Dar eram chitit pe chirurgie.

Cum a fost prima operaţie la care aţi par­ticipat?

  • Eram elev la şcoala sanitară şi doc­torul Gheorghe Popovici II, că mai era unul, opera o bătrână, cu o cangrenă foarte urâtă. Eu trebuia să-i ţin piciorul, uscat şi negru. îl tăiau cu un fierăstrău, zânga- zânga, mirosea a os încins şi, deodată, crâh, am rămas cu o bucată de picior în mână. Mă uitam nedumerit şi nu ştiam ce să fac. Doctorul mi-a zis să-l arunc în lighean. Şi acum îmi amintesc cum a zdrăngănit ciotul ăla negru şi uscat în ligheanul metalic. Asta a fost prima mea operaţie.

Mulţi chirurgi sunt specializaţi într-o anu­mită zonă, ca să zic aşa, şi îşi văd de „bucata” aia. La dumneavoastră, din câte ştiu, nu există graniţe: inimă, vase, abdomen, ovare, ochi…

  • Sunt de modă veche, mi-a plăcut să le fac pe toate. Nu m-am oprit, am trecut de graniţa chirurgului de chirurgie generală. Nu mă mai ocup doar de abdomen şi atât. Şi să vă spun şi de ce. într-un cancer gastric, de pildă, tumora poate să invadeze şi esofagul. Deci trebuie deschis şi toracele, că nu poţi altfel. Şi doar n-o să chem pe altcineva pentru asta! Deci trebuie să fac şi chirurgie toracică. Alt caz, tumora-mamă dă metastaze în cele două ovare. Aşa că tre­buie să operez şi acolo. Ar fi mai mare ruşinea să chem un ginecolog. Nu, mulţumesc, mai bine să mă cheme alţii pe mine când apar complicaţii.

Care este raportul dintre „transpiraţie” şi „inspiraţie” în munca unui chirurg?

  • E multă muncă fizică, deşi n-ai crede. Trebuie să tragi, să depărtezi, îţi sunt soli­citate coloana, membrele, musculatura. Eu am noroc, la mine e mai simplu, am doar 1,66 de metri, sunt mai aproape de pământ, am centrul de greutate mai jos. De-abia când ai terminat simţi cât ţi-a fost de greu. Atunci realizezi că mori de sete, că trebuie să fugi la toaletă, că ţi-o fi foame… în timpul operaţiei n-ai cum să te gândeşti la astea.

Chiar dacă operaţia durează ore în şir?

  • Chiar! Am avut o operaţie de esofago- plastie în care am intrat ziua la 12 şi am ieşit la 12 noaptea. Era un băiat cu o arsură groaznică pe esofag. S-a dus să-şi taie fânul şi a luat o sticlă în care credea că e bere. A băut substanţă caustică, şi încă o cantitate destul de mare, că stătea culcat, în căruţă, şi înghiţitura a fost zdravănă. Din fericire, l-am salvat, trăieşte şi astăzi. Pe lângă efortul fizic, şi consumul intelectual este mare. în plagă ai multe posibilităţi şi tu trebuie să o alegi pe cea mai bună, cea mai eficientă, fără prea mulţi timpi de gândire. Pe un chirurg bun îl definesc mintea, văzul şi simţul tactil. Legătura dintre acestea e „inspiraţia”. în operaţie eşti ca un mare şahist pe o tablă de şah. Te uiţi şi trebuie să vezi mişcarea salvatoare imediat!

Cât contează modelele, profesorii, în for­marea unui chirurg?

  • Chirurgul tânăr învaţă de la oricine, şi de la asistentă şi de la profesor. Trebuie să fie foarte atent, să caşte ochii, să fure. Chirurgia e o meserie practică, dar şi foarte specială. Oricine poate trata zece pacienţi, dar nu oricine poate opera. Chirurgul este singurul care are aprobarea juridică să despice un om. Dacă o face altcineva, intră în puşcărie. Revenind la modele şi profe­sori, eu am avut nume mari: Traian Oancea, Ion Juvara, luliu Şuteu, Cezar Petrescu, Corneliu Dragomirescu, Dan Rădulescu, Vasile Cândea…

Câţi miniştri ai Apărării aţi operat?

  • Cam pe toţi: Gheorghe Tinca, loan Mircea Paşcu, Victor Babiuc… Apoi „o armată” de generali, zilele trecute, con­silierul prezidenţial Constantin Degeratu…

De ce vin toţi la dumneavoastră?

  • (Râde) Că sunt băiat bun, primitor, cald…

Operaţi şi rude, prieteni?

  • Pe toţi, lumea zice că-s nebun, nu scapă nimeni. Ştiu că fac bine, aşa că nu mă împiedic în sentimente. Mi-am operat toată familia, nu-i dau pe mâna altuia, eu îi fac!

Se întâmplă şi minuni în chirurgie? Situaţii care evoluează cu totul altfel decât vă aşteptaţi?

  • Sigur că multe evoluţii sunt imprevi­zibile. Există tumori mici care dau metas­taze multiple şi tumori voluminoase care nu dau metastaze întinse. Deşi nu te-ai aştepta, pacientul trăieşte, îl vezi după nu ştiu câţi ani. într-un stadiu avansat de can­cer, însă, nu se întâmplă minuni. Mai poţi doar să prelungeşti viaţa bolnavului şi să-i dai o stare de confort.

Inţeleg că operaţia de cancer este mult mai complicată decât una „ţintită” pe un organ…

  • Chirurgia mare e de sistem, nu de organ. într-un cancer gastric, de pildă, nu trebuie scoasă doar tumora din stomac, ci trebuie să mă adresez şi sistemului limfa­tic, să scot ganglionii, şi celorlalte organe invadate, splină, pancreas, poate şi metas­taze hepatice. E un fel de curăţenie gene­rală, ca să-i dai cât mai multe şanse pacien­tului.

Credeţi în Dumnezeu? Vă rugaţi uneori pentru reuşita unei operaţii?

  • Sunt creştin, sigur că există şi ceva deasupra, dar nu am o reprezentare a lui Dumnezeu de genul unui gigant care ne ţine în palmă. Pe „Doamne-ajută!” îl am de la mama, de când plecam la şcoală. Atunci mă rugam să nu mă asculte la lecţii, când nu eram pregătit. Am copilărit cu un străbunic din partea mamei, un ţăran cu iţari, opinci din piele, cămaşă de in lungă până la genunchi, centură neagră cu chimir, cu ţinte din alamă, ca la hainele militare. Eram patru fraţi, doi băieţi şi două fete, dar bunicul ăla pe mine mă iubea cel mai mult. Şi eu ţineam la el pe măsură. A murit la 90 de ani, când eram în liceu. Vă spun toate astea pentru că mă gândesc la el şi acum. Uneori chiar îl rog: „Ajută-mă, bunicule!”

Cum funcţionează „echipa Timaru”?

  • Am o echipă tânără, valoroasă şi de mare perspectivă. Operez alături de Cristian Muşat, medic primar, Remus Nica, prepara­tor universitar, Andrei Tudoran şi Sebastian Doboş, rezidenţi. Doctorul Adrian Zaciu este anestezistul echipei. Aş vrea să-l menţionez şi pe dr. Bâtcă Viorel, general de brigadă, şeful secţiei Chirurgie II. Şi Dana Buzărnescu, şefa Blo­cului operator, apoi Mariana Bogriceanu, asistenta şefă… Actul medical are o mare com­plexitate, dar nu e militărie, cu un chirurg principal care dă ordine. E colaborare, înţele­gere, consens între mâini şi minţi. O împletire a gesturilor, ca o simfonie. Imaginaţi-vă nişte pianişti cântând, nişte mâini care nu se întâlnesc, nu se ating, dar împreună înalţă o simfonie superbă. Chirurgia se fură, vă spuneam, dar nu avem ce discuta dacă n-o dai mai departe. Am văzut chirurgi care operează cu sala închisă, ca nu cumva să li se fure tehnica. Prinde unul câte o chichiţă şi o ţine doar pentru el. Nu se face aşa ceva! Eu şi colegii mei facem şcoală în plagă, în ăia 20 de centimetri pătraţi, că acolo e bătălia!

Cum împăcaţi chirurgia, care vă vrea cu totul, şi viaţa de familie?

  • Nu ai cum să le faci pe toate, mai furi de aici, mai pui dincolo, renunţi la ceva. La mine, întâi a fost profesia, apoi familia. Din fericire, soţia înţelege, e tot medic, oftal­molog. Chirurgul nici hobby-uri nu-şi prea permite, decât dacă sunt mai de casă. Nu poţi pleca la vânătoare, prin munţi, de pildă, că se ivesc urgenţe şi trebuie să ajungi la ele. Eu mi-am făcut o căsuţă la Belciuga- tele, la 32 de kilometri de Bucureşti. Simplă, fără turnuleţe, dar e cea mai mare realizare a mea. Stau pe mal de baltă, am pomi, gazon, trei câini lup. Mă adoră, eu le fac toate poftele, ne jucăm împreună. Am şi viţă-de-vie, grădină de legume, tata, care a făcut 83 de ani, acum e acolo, lucrează pământul. îmi place să sap, să cosesc, mă ocup de vie. Ionică Timaru are vinuleţul făcut de el, a învăţat şi treaba cu ţuica…

Copii aveţi? i-aţi „contaminat” de chirurgie?

  • Am un băiat de 30 de ani, e infor- matician la Banca Naţională. Soţia a vrut să-l facem doctor, dar nu s-a potrivit. înainte de admitere, l-am adus la spital şi i-am arătat totul. Apoi i-am dat o săptămână de gândire. Răspunsul a fost clar: „Tată, nu-mi place!”

Vă deranjează ceva în oiganizarea actu­ală a sistemului medical?

  • Cred că medicii şi chirurgii nu au ce căuta în politică. Chiar şi pe câmpul de luptă, un medic e obligat să-i dea ajutor adversarului, dacă e rănit. Apoi, ca să faci un act chirurgical îţi trebuie un anume con­fort, aparatură performantă… Sigur că te deranjează când nu le ai. Şi nu le avem pe toate, nu mă întrebaţi de ce. Dar talent chirurgical în România este de dă şi pe-afară! Numai că nu poţi progresa doar cu asta. Sigur că sistemul trebuie pus la punct. M-am întrebat, de pildă, dacă omul dă bani pentru sănătate, toată viaţa, prin contribuţia respectivă, de ce nu i se dau banii înapoi când îşi pierde sănătatea? Că-s banii lui! Şi nici nu prea ştiu unde sunt aceste fonduri, că nu s-au făcut zeci de spi­tale, în ultimii ani.

Dacă aş fi zâna bună, ceea ce nu este cazul, ce dorinţă aţi avea?

  • Mi-aş dori să călătoresc, să fiu pe o plajă, în ţările sudice, printre cocotieri, să privesc răsăritul…

Şi de ce n-aţi făcut asta până acum?

  • Ei, timpul, poate că şi banii…

     

O tumoră abdominală de peste sase kilograme

Doamna Valeria Stoenescu, pensionară, din Bucureşti, tocmai a trecut printr-o operaţie foarte dificilă. Echipa Timaru i-a scos, din abdomen, o tumoră gigant, de peste şase kilograme: „Nu am avut nici un fel de dureri, aşa că eu am crezut că mă îngraş, pur şi simplu. Când am ajuns la spital, domnul profesor m-a certat, mai întâi. Că mă operase şi în 2001, iar eu n-am mai venit la control. Apoi mi-a făcut, uigent, toate investigaţiile, ca să ştie de unde pleacă, să fie el sigur. Are o dragoste de pacient cum n-am mai văzut, pe care o transmite şi nici nu ştiţi ce mult contează asta, când eşti bolnav. Că talentaţi or mai fi şi alţii. Dar om ca dum­nealui mai rar. Dacă ajungi pe mâinile lui Timaru, nu trebuie să-ţi mai faci griji, că îşi face el destule. După operaţie, am vrut să-i dau şi eu ceva şi m-a scos afară din cabinet. A zis că lasă, când te faci bine îmi dai o icoană. Mâna a doua a fost doctorul Muşat şi a treia – doctorul Nica. Toţi se poartă frumos şi cred că aici e tot meritul celui care conduce echipa. Până şi fetele de la sala de operaţie sunt deosebite. Le-am rugat să-mi pună sub cap, în timpul intervenţiei, două iconiţe la care ţin eu foarte mult: Maica Domnului şi Sfântul Nectarie. Când m-am trezit din anestezie, am căutat sub pernă şi iconiţele erau acolo”.

 

„Ai Iu’ limaru”

Cristian Muşat: „E un chirurg extrem de talentat şi de inspirat, în cazurile foarte grave, care nu sunt în cărţi, găseşte exact soluţia optimă. Morta­litatea şi morbiditatea, în intervenţiile lui chirurgicale, sunt sub media mon­dială, ceea ce mi se pare o performanţă greu de egalat. Sigur că şi noi creştem, dar nu ştiu dacă ajungem să-i umplem pantofii!” Remus Nica: „Şi-a sacrificat toată viaţa ca să facă bine oamenilor. Este o îngemănare de talent, forţă şi pricepere, stăpânire de sine, şi, aş spune, chiar şi noroc. Cineva, acolo sus, îl iubeşte! Şi are un har… că va lăsa un con mare de umbră în urma lui. Noi suntem mai normali şi, din păcate pen­tru noi, toată lumea ne va compara cu el”.

Andrei Tudoran: „întotdeauna apreciază cât am acumulat şi de ce suntem capabili. Are răbdare să ne explice ce şi cum trebuie făcut. Şi mai are un fler cu totul special. Chiar dacă eşti tobă de carte, în operaţie ai nevoie şi de altceva, ca să alegi metoda salvatoare.”

Sebastian Doboş: „E foarte generos cu sfaturile şi nu are rezerve în a-şi împărtăşi experienţa. Din punctul meu de vedere, profesorul Timaru este o şcoală, mult peste cele pe care le-am absolvit, deja.”

Taguri:

Comentarii

  1. I just added your blog to my blogroll, I hope you’ll consider doing the same.

  2. Yosh says:

    Best Links 2011…

    Hi, I think your site might be having browser compatibility issues. When I look at your website in Safari, it looks fine but when opening in Internet Explorer, it has some overlapping. I just wanted to give you a quick heads up! Other then that, fantas…

  3. Best Links 2011…

    As I site possessor I believe the content matter here is rattling excellent , appreciate it for your efforts. You should keep it up forever! Good Luck….

  4. Best Links 2011…

    Hi, Neat post. There’s a problem with your website in internet explorer, would test this… IE still is the market leader and a huge portion of people will miss your great writing due to this problem….

  5. Best Links 2011…

    I’ve been absent for some time, but now I remember why I used to love this website. Thank you, I’ll try and check back more frequently. How frequently you update your web site?…

  6. Best Links 2011…

    Just wish to say your article is as astonishing. The clearness in your post is simply excellent and i could assume you’re an expert on this subject. Fine with your permission let me to grab your feed to keep updated with forthcoming post. Thanks a mil…

  7. Best Links 2011…

    Hi there! This post couldn’t be written any better! Reading through this post reminds me of my previous room mate! He always kept talking about this. I will forward this article to him. Pretty sure he will have a good read. Thank you for sharing!…

  8. Best Links 2011…

    I got good info from your blog…

  9. Best Links 2011…

    Great post. I am facing a couple of these problems….

  10. Best Links 2011…

    This is a very good tips especially to those new to blogosphere, brief and accurate information… Thanks for sharing this one. A must read article….

  11. OH HAI…

    Just wish to say your article is as astonishing. The clearness in your post is just great and i could assume you are an expert on this subject. Well with your permission let me to grab your RSS feed to keep up to date with forthcoming post. Thanks a mi…

  12. Hiya…..

    Excellent read, I just passed this onto a colleague who was doing some research on that. And he just bought me lunch since I found it for him smile Thus let me rephrase that: Thanks for lunch! “Creativity comes from zeal to do something, generally it …

  13. OH HAI…

    I think other site proprietors should take this web site as an model, very clean and excellent user friendly style and design, as well as the content. You are an expert in this topic!…

  14. http://www.eRealEstateSanDiego.com...

    Pacific Real Estate Broker serving all of your San Diego county real estate needs. Search Ca homes for sale using our MLS search. Receive email updates of Realtor listings with prices and blog. Whether single-family houses, townhomes, luxury homes, bea…

  15. 2011…

    I have read several good stuff here. Definitely worth bookmarking for revisiting. I wonder how much effort you put to create such a wonderful informative web site….

  16. 2011…

    Its like you read my mind! You appear to know a lot about this, like you wrote the book in it or something. I think that you could do with a few pics to drive the message home a bit, but other than that, this is magnificent blog. An excellent read. I w…

  17. 2011…

    I have been absent for some time, but now I remember why I used to love this site. Thanks, I’ll try and check back more often. How frequently you update your site?…

Comenteaza la Yosh

 

!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}));