ZOOM

Asfalt-manea: Autostrăzile româneşti, o afacere eşuată perfect

November 20th, 2009, com 30 comentarii

Autostrăzile din România sunt o poveste, despre care se spune că ar fi ­frumoasă, dar pe care nu a povestit-o nimeni până la capăt. Nici începutul poveştii nu s-a spus tot. Personajele nu sunt niciodată aceleaşi. Se schimbă în funcţie de vremuri. Nu mai ştie nimeni cine, unde şi când a început povestea. Nimeni nu o urmăreşte, nimeni nu ţine firul istoriei. Auditoriul se schimbă. Unii s-au plictisit. Alţii au renunţat să mai asculte, alţii au plecat şi, nu puţini, au murit. Rar, povestea devine interesantă, dar de cele mai multe ori este doar un pretext. Nimeni nu ia în seamă, nici povestea, nici povestitorul.

Undeva, cineva spune poveşti despre autostrăzi…


Preşedintele Traian Băsescu, întrebat cum pot veni turiştii străini în România dacă nu există autostrăzi şi drumuri bune, a răspuns că, în realitate, 70 la sută din turism se face cu avionul.

Acesta a mai afirmat că preferă să meargă cu elicopterul, pentru că ştie că o coloană oficială produce ambuteiaje şi este privită cu resentimente de participanţii la trafic.


Povestitorul şi povestea oficială

Organizările şi reorganizările, tipic româneşti, au dus la apariţia Companiei Naţionale de Autostrăzi şi Drumuri Naţionale din România (CNADNR), prin reorganizarea Regiei Autonome „Administraţia Naţională a Drumurilor” România (RAANDR). Ordonanţa a fost concepută şi semnată de Adrian Năstase şi a intrat în vigoare la 18 august 2003, prin asumare tacită în Parlament. Ordonanţa a fost contrasemnată de Miron Mitrea, ca ministru al Transporturilor. La articolul doi al Ordonanţei se arată: CNADNR este persoană juridică română de interes strategic naţional, care se organizează şi funcţionează sub autoritatea Ministerului Transporturilor, Construcţiilor şi Turismului, pe bază de gestiune economică şi autonomie financiară, conform legilor în vigoare şi statutului.

Capitalul social de constituire a preluat capitalul fostului RAANDR şi a fost, în sumă totală, 16.370.220 lei (noi), aşa cum a fost calculat la 31 decembrie 2002. Valoarea azi este de aproape patru milioane de euro. La aceasta s-a adăugat şi pasivul deţinut de RAANDR, reprezentând încă un milion de euro.

CNADNR funcţionează sub autoritatea Ministerului Transporturilor. Oficial rolul este acela de a gestiona dezvoltarea unitară a reţelei de drumuri publice, conform Planului Naţional de Dezvoltare (PND). Respectivul Plan de Dezvoltare Naţională, un fel de cincinal, în acord cu politica economică a Uniunii Europene, a fost elaborat pentru perioada 2007–2013, dar nu a luat în calcul eşecul masiv al economiei naţionale, ca urmare a crizei economice. În teorie PND prevedea ca volumul activităţii de transport reflectată în PIB să crească de la 3,6 miliarde euro (în 2007), la cel puţin şapte miliarde euro, în 2015. Respectivele cifre şi planuri sunt considerate azi, de către cei care le-au lansat, utopice.

Conform statutului CNADNR, elaborat de aceeaşi echipă care a formulat şi textul ordonanţei de înfiinţare, Compania are misiunea de a face tot ceea ce presupune construcţia, întreţinerea şi administrarea drumurilor naţionale, adică să joace rolul administratorului perfect.

De la rol, la interpretare

Cifrele sunt demonstraţia cea mai la îndemână. Vorbesc singure, şi scutesc autorul de orice comentarii. Conform CNADNR, lungimea reţelei de drumuri din România este de circa 200.000 de kilometri, dintre care au statut de Drum Naţional, deci întrunesc minime condiţii de standard, doar 15.000 de kilometri, care includ şi cei 262,9 kilomeri de autostradă, pe care îi are România. Pentru comparaţie, Germania are 9.000 de kilometri de autostradă, Franţa 7.800, Italia 6.800, Spania 2.700, ţările din fosta Iugoslavie, însumat 700 de kilometri, în timp ce Estul este condus de Ungaria care are peste 1.100 de kilometri de autostradă (dintre care peste 800 au fost construiţi în ultimii patru ani). Bulgaria, deşi are mai puţin de jumătate din suprafaţa României, a reuşit să ajungă şi să depăşească numărul de kilometri de autostradă românească având azi, funcţionali, peste 350 de kilometri de autostradă. Despre state precum Polonia, Slovacia şi Slovenia nu are rost să mai pomenim, infrastructura rutieră fiind cu mult deasupra celei din România.

Conducerea CNADNR

Nu a existat lună în care presa din România să nu fi constatat, comentat, criticat sau semnalat detalii ale activităţii conducerii CNADNR. Aflată strict sub comanda şi sub coordonarea Ministerului Transporturilor, minister vizat mereu de profunde interese politice, dar autonomă financiar, CNADNR a fost şi este o companie ineficientă.

Datele de bilanţ din fiecare an ale CNADNR dovedesc, fără alte comentarii, acest fapt. În caz că cineva din conducerea CNADNR s-ar simţi lezat de afirmaţie şi ar în­drăzni să o conteste, aduc în susţinerea acuzaţiei faptul că, în 20 de ani, în România s-au executat şi s-au dat în folosinţă mai puţin de vreo 120 de kilometri de autostradă, în condiţiile în care, prin CNADNR, de când există ca instituţie, s-au construit şi au fost daţi în folosinţă mai puţin de 30 de kilometri de autostradă.

În prezent, conform organigramei oficiale a CNADNR, instituţia are 129 de posturi de conducere şi 470 de posturi de execuţie, schema cuprinzând exact 26 de directori, şi asta doar în Bucureşti.

În martie 2009, ministrul Transporturilor, Radu Berceanu, a numit-o pe Dorina Tiron director general la CNADNR, specialist (zice Berceanu), în domeniul Drumuri şi Poduri. Dorina Tiron a mai fost director la CNADNR în 2006–2007. Tiron vine de la direcţia regională a CNADNR, „direcţia condusă cel mai bine“, spune tot Berceanu.

Organigrama, la care făceam referire mai sus, este cea făcută de Dorina Tiron. Aceasta a primit girul comisiilor de specialitate din cadrul Consiliului Europei, ca urmare a faptului că CNADNR are dreptul de a accesa, gestiona şi folosi fonduri europene.

Iarna la Companie: deszăpezirea şi întreţinerea

Ultimele mişcări de „trupe“ la Compania de autostrăzi s-au consumat la mijlocul lui octombrie, când ministrul Berceanu a schimbat întreaga conducere a Companiei, de la directorul general Dorina Tiron, în jos. Directorul general adjunct de întreţinere şi administrare, Cristian Duică, a demisionat. S-a dorit ca demisia să rămână discretă, dar cu toate acestea Druică nu s-a putut abţine să nu declare, pentru agenţiile de presă, că a plecat pentru că nu mai are autoritatea exercitării funcţiei de director general adjunct. „Conducerea Ministerului Transporturilor a avut grijă să îmi ia atribuţile, astfel am decis să plec“, a declarat Duică, adus în companie de PSD. Acesta a mai adăugat că plecarea sa are o dublă semnificaţie, pe de o parte epurarea politică, pe de alta licitaţiile pentru perioada de iarnă, care se referă la deszăpezire şi întreţinere. A fost demis şi directorul de la achiziţii publice, Ştefan Savu, iar în locul lui a fost numit un membru marcant al PDL, Marius-Bogdan Ivan, vicepreşedinte PDL Argeş.

Detaliile de mai sus nu sunt complete fără precizările următoare. Conform licitaţiilor, în intervalul de timp 1 noiembrie 2009–28 februarie 2010, au fost desemnate să se ocupe de deszăpezirea autostrăzilor A1 şi A2 firmele Argecom Piteşti şi Gecor Bucureşti. Argecom primeşte 5,40 milioane lei, iar Gecor, pentru curăţarea a doar 60 kilomeri din autostrada A2, încasează 6,85 milioane de lei. Firmele res­pective au candidat pentru o licitaţie asemănătoare şi în sezonul trecut, dar au pierdut în favoarea Romprest, firmă de casă a PNL. Atunci cele două firme Argecom şi Gecor au reclamat manevrele politice ale PNL. Anul acesta îşi vor lua revanşa!


Povestea autostrăzii Transilvania…

… sau despre cum se poate ca, dintr-un miliard de euro, să construieşti doar 42 de kilometri de autostradă neterminată, încă.

Compania Bechtel, cea care a câştigat execuţia Autostrăzii Transilvania (A3 pleacă de la nord-vest de Braşov, ajungând la Oradea, la graniţa cu Ungaria), a primit de la buget un miliard de euro. În schimb a finalizat ZERO kilometri din cei 415 cât are pe hârtie Autostrada Transilvania. La semnarea contractelor, în urmă cu cinci ani, între statul român şi Compania Bechtel, în calitate de executant, autostrada trebuia să coste, cu totul şi cu totul, fix 2,24 miliarde euro.

Contractul prevede că autostrada Braşov – Cluj – Borş trebuie terminată în decembrie 2013. În fapt, acum, la finele lui 2009, Compania Bechtel dă zor să termine primii 42 de kilometri de autostradă, în condiţiile în care oficiali ai Bechtel susţin că alţi 50 de kilometri sunt gata pe jumătate.

Un Raport Intern al CNADNR consemnează faptul că o parte dintre cei 300 de milioane de euro pe care Compania Bechtel i-a primit de la statul român, doar pe parcursul anului în curs, reprezintă plăţi nelegale. Raportul CNADNR vorbeşte despre facturi neconfirmate de inspectorii de şantier, despre taxe vamale, penalităţi de întârziere şi costuri indirecte de capital achitate şi pe perioada sistării lucrărilor. Raportul consemnează şi numeroasele deficienţe tehnice, constatate în urma inspecţiilor, de la fisuri ale structurilor de beton, până la alunecări de teren care au stricat fundaţia şi deplasat structurile deja turnate ale autostrăzii. Se vorbeşte despre posibilitatea ca respectivele „defecţiuni să evolueze în timp“, dar şi despre proasta „execuţie a reparaţiilor, care nu au rezolvat problema de fond“. Concluziile au fost urmarea unor inspecţii pe teren.

Specialiştii au mai îndrăznit să spună încă un mare adevăr despre Bechtel: „Constructorii au aplicat tehnologii greşite, care au implicat excavaţii excesive ceea ce implicit a dus la un cost majorat, care a fost suportat de partea română“.

În respectivul raport CNADNR ridică în premieră problema capacităţii Bechtel de a finaliza autostrada şi ia în calcul penalizarea pe care ar trebui să o aplice Companiei Bechtel.

Culmea este că, cea care a plătit până acum penalităţi, a fost mereu CNADNR către Bechtel, pentru întârzierea termenelor de plată, către aceştia din urmă.

Dar CNADNR este legată de mâini şi de picioare în relaţia cu Bechtel, din cauza clauzelor contractuale şi a angajamentelor în care s-a prins Compania de Autostrăzi.

Teoria este perfectă, practica ucigătoare

Conform Companiei de Autostrăzi, sunt în execuţie zece tronsoane de autostradă. Potrivit CNADNR, se lucrează la două sectoare ale autostrăzii Transilvania (A3), dar şi pe tronsoane din A4, respectiv Bucureşti–Moara Vlă­siei –Plo­ieşti, şi pe segmentul final al A2, pe porţiunea Cerna­vo­dă–Medgidia–Cons­tanţa, şi pe Arad–Timişoara.

Pe autostrada A2, între Cernavodă şi Constanţa, se zice că o să se poată circula din 2011. Pe autostrada Transilvania ar trebui să duduie maşinile de la 1 ianuarie 2014.

Cea mai mare realizare a ultimului an este însă primul tronson al autostrăzii Bucureşti-Ploieşti, despre care se afirmă că va fi dat în folosinţă la jumătatea anului viitor. Către Bechtel urmează a fi direcţionat 15 la sută din bugetul CNADNR pentru anul viitor. Teoretic este frumos. În ritmul acesta este posibil să depăşim Bulgaria, doar că în practică nu a fost dat în folosinţă nici măcar un kilometru de autostradă, în ultimii patru ani!

Constanţa – Medgidia

Construcţia A2 între Bucureşti şi Constanţa a fost demarată de Nicolae Ceauşescu. Primul tronson, Feteşti – Cernavodă, cel mai dificil al autostrăzii, cu o lungime de 18 kilometri, a fost dat în folosinţă în 1987 şi include un complex sistem de poduri, ­inclusiv peste Dunăre şi Braţul Borcea, dar şi viaducte de ­autostradă şi cale ferată. Ceauşescu a ­construit cei 18 kilometri într-un an!


Deva – Orăştie…

…sau autostrada pe care nu vrea nimeni să o construiască.

Cei 32 de kilometri care au fost proiectaţi deja îşi caută constructor din 2006. În iulie 2009 CNADNR a anulat, spre exemplu, o licitaţie după ce a schimbat, cu patru zile înainte de termenul de depunere a ofertelor finale, procedura de achiziţie, din licitaţie deschisă, în licitaţie cu precalificare. De ce nu vrea Compania să găsească constructor pentru segmentul Deva–Orăştie, nu se ştie.

Compania de autostrăzi a scos acest proiect la licitaţie pentru a treia oară la începutul lui octombrie. Licitaţia va avea loc în decembrie. Fără explicaţii, caietul de sarcini a fost astfel alcătuit încât au fost evident favorizate firme străine în detrimentul constructorilor autohtoni. Concret, Compania cere ca viitorul constructor să fi turnat, la momentul angajării în licitaţie, cel puţin 20.000 de metri cubi de asfalt. „Cantitatea cerută nu s-a turnat în ultimii 40 de ani în întreaga Românie. Este un cerc vicios. Nu intri la licitaţie pentru că nu ai făcut acest volum de lucrări şi nu îl faci pentru că niciodată nu eşti primit la licitaţie“, spune patronul unei firme autohtone, căzut la licitaţie, dar care are o cifră de afaceri de sute de milioane de euro, citat de Mediafax. De ce se întâmplă asta, nu a putut nimeni din CNADNR să explice.

Costurile evaluate sunt de 314 milioane de euro, iar oficial lucrările trebuiau să demareze în trimestrul II al acestui an şi să se finalizeze (ce utopie!) la finele lui 2010, adică într-un an de acum încolo! Asta în condiţiile în care proiectul prevede 15 poduri şi 10 pasaje!

Situaţia Deva – Orăştie seamănă foarte bine cu ceea ce se întâmplă pe acest segment. Segmentul de 19 kilometri nu găseşte constructor.

Este drept că este cotat ca fiind unul dificil, dat fiind faptul că are, din proiect, incluse 12 poduri şi două pasaje. Dar valoarea investiţiei este de 224 milioane şi CNADNR susţine că banii există. Construcţia trebuia începută în martie 2009 şi avea termen de execuţie de 24 de luni. Dar lucrările nu au început încă. Neoficial, lucrările nu se vor termina mai înainte de 2015, din cauza restricţiilor impuse de FMI şi a faptului că din cauza unor interese necunoscute CNADNR nu vrea să găsească un constructor competent.


Autostrada Nokia, un veşnic proiect

CNADNR are în fază de proiect, de mai bine de doi ani, un studiu pentru autostrada Jucu–Dej, supranumită şi „Autostrada Nokia“, şi prelungirea acesteia cu un drum expres până la Bistriţa, valoarea estimativă fiind de 3,66 milioane de lei de la bugetul de stat. Şoseaua va extinde autostrada Nokia, Cluj–Jucu, până la Dej, unde grupul german Kolbenschmidtse produce blocuri motoare pentru modelele Porsche, Jaguar şi Mercedes. Singura certitudine este că cei 75 de kilometri nu s-au concretizat nici măcar pe hârtie, deşi au costat deja bugetul Companiei 700.000 de lei, reprezentând costul studiilor şi plata comisiilor de avizare şi a licitaţiilor eşuate.


Berceanu: „1.800 kilometri de autostradă“

Ministerul Transporturilor şi Compania de Autostrăzi au trasat, cu creionul pe hârtie, o utopie! 1.800 kilometri de autostradă, până în 2013, şi investiţii de 12,8 miliarde de euro. Berceanu afirma, în februarie 2007, următoarele: „Conform noilor estimări, la sfârşitul anului (2007 – n.a.) vor fi în exploatare 298 de kilometri de autostradă, adică se termină A2 până la Constanţa, 420 de kilometri la finele anului viitor (2008 – n.a.), adică finalizarea primului segment din A3 şi până la 795 de kilometri la finele lui 2009“. Berceanu continua predicţiile şi promitea că în 2013 ar urma să fie în folosinţă, în România, exact 1.794 km de autostrăzi.

foto Octavian Tibăr


Boc – misiune imposibilă

La sfârşitul lui septembrie, plin de elan, încă premier plin, Boc s-a lăudat că va inaugura, până la începutul lui decembrie, 42 de kilometri de autostradă pe sectorul Turda–Gilău. Promisiunea va fi foarte greu de onorat, şi asta nu are nici o legătură nici cu demiterea Guvernului, nici cu dificultăţile economice ci doar cu faptul că, deşi ţine asfaltul la cald, Compania de Autostrăzi nu are autorizaţie de mediu pentru construcţia porţiunii unde se află depozitul cu deşeuri de mercur şi cianuri de lângă Turda. Povestea este veche şi este responsabilitatea exclusivă a „specialiştilor“ de la CNADNR care au uitat efectiv despre această problemă. Omisiunea lor se traduce prin bani transferaţi de la CNADNR în contul Bechtel.


Cine este vinovat? FMI!

Fondul Monetar Internaţional (FMI) nu este de acord cu continuarea investiţiilor în autostrăzi şi drumuri dacă sunt finanţate cu bani de la Banca Europeană pentru Investiţii întrucât astfel ar creşte şi mai mult deficitul bugetar, afirma ministrul Transporturilor, Radu Berceanu. „Nu ne dă voie FMI să continuăm investiţiile, pentru că mărim deficitul bugetar. Au spus: «cheltuiţi cu 500 de milioane mai mult în investiţii în infrastructură şi mai puţin cu 500 de milioane la salarii. Aţi depăşit per-total la salarii şi la cheltuieli cu bunurile şi serviciile»“, s-a explicat Berceanu. Compania de Autostrăzi se află în monitorizarea specială a FMI, pentru reducerea banilor proveniţi de la bugetul de stat.


3.200 de km de autostradă comunistă

Ceauşescu a conceput pentru România, înainte de 1970, un program complet care viza construcţia a nu mai puţin de 3.200 de kilometri de autostradă. Proiectele de azi sunt identice cu cele concepute de inginerii de la Institutul de Proiectări pentru Transporturi Auto, Navale şi Aeriene (IPTANA), în perioada 1967–1970. Proiectele IPTANA au fost concepute după recensământul maşinilor în circulaţie realizat în 1965 şi în 1967–1968, care arătă tendinţele creşterii numărului de maşini la 100.000 de locuitori. În 1977, România s-a implicat, alături de alte zece state, în realizarea unei infrastructuri integrate, adică exact coridoarele de transport pan-europene de azi.


Peste 130 de ani

Infrastructura rutieră din România o va ajunge din urmă pe cea din Vest peste 130 de ani, şi asta dacă se păstrează ritmul de dezvoltare din anii 2000–2004 (perioada cu cea mai intensă dezvoltare din ultimii ani), se arată într-un studiu al companiei de consultanţă A.T. Kearney. „Chiar dacă piaţa românească va creşte cu 30 la sută pe an până în 2012, România va avea nevoie între 130 şi 150 de ani pentru a ajunge la standardele de infrastructură rutieră ale Europei de Vest“, a declarat consultantul A.T. Kearney, Iulian Cârciumaru. Densitatea drumurilor din România este de patru ori mai mică faţă de alte state din Europa de Est şi Centrală şi de 14 ori mai mică faţă de densitatea din ţările dezvoltate. Conform ultimelor cifre oficiale, Guvernul a alocat 10 miliarde de euro pentru investiţiile publice în infrastructură în 2009, la care s-au adăugat cele 3,4 miliarde de euro de la Uniunea Europeană. „Chiar şi în acest ritm, tot peste 100 de ani sunt necesari“.


Taguri:

Comentarii

  1. If at first you don’t succeed, redefine success

  2. The reason for seeing a psychic is to get answers to any questions you may have about problems and issues in your life.

  3. It might sound weird but my browser does notseem to become ready to d isplay your write-up rightly?- It looks like a whole chunk of if shouldn’t be correctly d isplayed as well as the layout of your page does notappear to be appropriate. Can you confirm that th is publish continues to be put in place for Opera?

  4. I’ve read some of the posts in your website currently, and I enjoy your style of blogging. I included it to my favorites blog listing and will also be checking back soon. Take a look at my web site as well and tell me what you think.

  5. The post continually contain plenty of up to date details. Exactly where do you come up with that? Merely stating you are very impressive. Many thanks

  6. math tuition says:

    I’m looking at your blog through Firefox and not all of the pictures is displaying correctly. Were you aware about this?

  7. Hello; great publish for me. Your publish has very good quality. I need to has very good posts like yours at my website. How don’t you arrive around these posts?

  8. Just a fast hello and also to thank you for discussing your ideas on this page. I wound up inside your weblog right after researching physical fitness connected issues on Yahoo… guess I lost track of what I had been performing! Anyway I’ll be back once again inside the potential to verify out your blogposts down the road. Thanks!

  9. Yosh says:

    Best Links 2011…

    Excellent read, I just passed this onto a colleague who was doing some research on that. And he just bought me lunch because I found it for him smile Thus let me rephrase that: Thank you for lunch!…

  10. Best Links 2011…

    I’m so happy to read this. This is the kind of manual that needs to be given and not the accidental misinformation that’s at the other blogs. Appreciate your sharing this best doc….

  11. Best Links 2011…

    This blog is definitely rather handy since I’m at the moment creating an internet floral website – although I am only starting out therefore it’s really fairly small, nothing like this site. Can link to a few of the posts here as they are quite. Thanks…

  12. Best Links 2011…

    Heya i’m for the first time here. I found this board and I find It truly useful & it helped me out a lot. I hope to give something back and aid others like you helped me….

  13. Best Links 2011…

    magnificent points altogether, you just gained a brand new reader. What would you suggest in regards to your post that you made some days ago? Any positive?…

  14. Best Links 2011…

    I would like to thnkx for the efforts you have put in writing this blog. I am hoping the same high-grade blog post from you in the upcoming as well. In fact your creative writing abilities has inspired me to get my own blog now. Really the blogging is …

  15. 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 large portion of people will miss your great writing due to this problem….

  16. Best Links 2011…

    Somebody essentially help to make seriously articles I would state. This is the very first time I frequented your web page and thus far? I amazed with the research you made to create this particular publish extraordinary. Wonderful job!…

  17. Subliminal says:

    Best Links 2011…

    I am not sure where you’re getting your information, but great topic. I needs to spend some time learning more or understanding more. Thanks for excellent info I was looking for this information for my mission….

  18. Best Links 2011…

    Thanks, I’ve recently been searching for information about this subject for ages and yours is the best I have discovered so far. But, what about the conclusion? Are you sure about the source?…

  19. Best Links 2011…

    I’ll right away grab your rss feed as I can not find your e-mail subscription link or e-newsletter service. Do you have any? Please let me know so that I could subscribe. Thanks….

  20. Best Links 2011…

    Greetings! Very helpful advice on this article! It is the little changes that make the biggest changes. Thanks a lot for sharing!”…

  21. Best Links 2011…

    Hi, Neat post. There is a problem with your web site in internet explorer, would check this… IE still is the market leader and a good portion of people will miss your wonderful writing because of this problem….

  22. PLR Products says:

    Best Links 2011…

    Hi, just required you to know I he added your site to my Google bookmarks due to your layout. But seriously, I believe your internet site has 1 in the freshest theme I??ve came across. It extremely helps make reading your blog significantly easier….

  23. new led watch Starting a website kind of like this one forced me to do some research and I found your post to be quite helpful. My content is centered around the idea of knowledge, fun and sharing. I wish you fine luck with your web site in the futur…

    Starting a website kind of like this one forced me to do some research and I found your post to be quite helpful. My content is centered around the idea of knowledge, fun and sharing. I wish you fine luck with your web site in the future and you can be…

  24. PLR Products says:

    OH HAI…

    Greetings! Very helpful advice on this article! It is the little changes that make the biggest changes. Thanks a lot for sharing!”…

  25. 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…

  26. Phen375 reviews…

    This is very interesting, You’re a very professional blogger. I’ve joined your rss feed and look forward to searching for more of your great post. Additionally, I have shared your website in my social networks! phen375 reviews…

  27. 2011…

    I will immediately grab your rss as I can not find your e-mail subscription link or newsletter service. Do you’ve any? Kindly let me know so that I could subscribe. Thanks….

  28. Yosezd says:

    2011…

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

Comenteaza la Ways To Make Money

 

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

Ad block detected

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

An Error Occurred

\n

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

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

An Error Occurred

\n

Services for this domain name have been disabled.

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

Ad block detected

Please disable your ad blocker and reload the page.";case"disabled_mr":return`

Invalid URL

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

No sponsors

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

No Sponsors

\n

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

`;case"disabled_mr":return`\n

Invalid URL

\n

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

`;case"js_error":return"\n

An Error Occurred

\n

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

\n ";default:return"\n

An Error Occurred

\n

Services for this domain name have been disabled.

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