Les 10 commandements du régime paléo

Dernière mise à jour: 6 mai 2025

Rassurez-vous, je ne me prends pas pour Moïse, mais les 10 commandements du régime paléo sont aussi importants sinon plus que ceux de la version originale. Pourquoi? Parce que cela concerne votre santé.

Les 10 commandements du régime paléo

Retrouvez le droit chemin (de la santé) avec ces dix commandements (cliquez pour zoomer)

1. Tu banniras les céréales

Les céréales contiennent des protéines qui peuvent pirater votre système immunitaire. Le blé est sans doute la céréale que vous consommer le plus. Sa grande consommation apporte également beaucoup de glucides qui vous font stocker de la graisse.

2. Tu réduiras ta consommation de glucides

Que ce soit les glucides au goût sucré (comme le sucre) ou non (patate), réduisez votre consommation de glucides. Vous soulagerez votre foie, votre pancréas, vous arrêterez votre vieillissement prématuré (glycation), vous optimiserez le fonctionnement de votre cerveau et vous brulerez enfin vos graisses.

3. Tu ignoreras les produits industriels

Les produits industriels subissent des traitements à hautes températures pour répondre à des normes d’hygiène ou pour rendre un produit plus stable (et augmenter sa conservation). Non seulement cela donne des coquilles vides nutritionnelles, dépourvues de toutes vitamines, mais cela engendre de grandes quantités d’acides gras trans. Et réduire votre consommation de produits industriels améliorera votre ratio oméga 3 oméga 6.

4. Tu te méfieras des produits laitiers

Autre produit hautement industrialisé : le lait de vache et ses dérivés. Mis à part les traitements industriels, le lait contient des protéines allergènes (comme la caséine) et des hormones de croissance. Mais certaines préparations traditionnelles permettent de s’affranchir de la caséine. Je vous en dis plus très bientôt.

5. Tu consommeras du bon gras

Le gras est la source d’énergie ancestrale. Contrairement aux glucides que vous pouvez consommer presque sans limite (et c’est bien à cause de cela que des maladies comme le diabète se développent), vous ne pouvez pas trop manger de gras. Au bout d’un moment (rapidement), votre corps arrive à satiété. Que ce soit le gras de l’animal ou celui des fruits (avocat, olive, coco, noix…) ces acides gras sont vos amis pour la vie.

6. Tu continueras de te faire plaisir

Ce n’est pas parce que vous mangez paléo que vous ne pouvez plus vous faire plaisir. En consommant des produits de qualité au quotidien, vous retrouvez le goût des bonnes choses. Et vous pouvez vous accorder de temps en temps un petit plaisir sucré, même non paléo.

7. Tu feras uniquement du sport paléo

Sauf si vous êtes un fana du marathon, ne courez pas des heures pour perdre vos kilos ou pour votre santé. Si vous visez l’efficacité, pratiquez le High Intensity Interval Training ou HIIT (l’entrainement à intervalles à haute intensité). Le meilleur exemple est le sprint fractionné. Il n’y a rien de mieux pour brûler la graisse. Courez intensément mais pas longtemps. Mettez également du rythme dans vos séances de « musculation » : qu’elles soient courtes mais intenses.

8. Tu élimineras le stress

Il s’agit du deuxième pilier paléo. Que votre stress soit créé par votre cerveau (soucis) ou votre rythme de vie (fatigue), le stress est source de maladies car il affaiblit vos défenses immunitaires. Le stress peut aussi vous empêcher de brûler de la graisse en perturbant votre système hormonal (cortisol).

9. Tu visiteras ta tribu

Vivre paléo c’est aussi partager des expériences avec les autres, des moments plaisants auprès des personnes qui comptent. Cela influe positivement sur votre niveau de stress. Détendez-vous en bonne compagnie et vivez.

10. Tu commenceras par t’aimer

Ce dernier commandement est le fondement de tous. Vivre paléo vise à vous rendre une meilleure santé et à profiter de la vie. Une fois que vous avez cela, vous pouvez le partager avec votre entourage et influer sur leurs vies, en leur communiquant votre bien être. Mais tout cela n’est possible que si vous vous aimez et si vous estimez mériter tout le bien qui vous attend. Donc aimez-vous, arrêtez les régimes qui vous font du mal et commencez à améliorer votre monde.

25 commentaires

Marie Henri dit: 23 janvier 2014 à 13 h 59 min

Bonjour Julien et merci pour ce mot. Sympathique condensé en forme de piqure de rappel pour ceux , ou celles….. qui ont du mal à fixer les consignes.

Mention spéciale pour les points 8 9 et 10.J’adore et j’applique, dans la mesure du possible. Mais à force d’essayer, on y arrive. C’est comme l’alimentation paleo.

Grand merci pour tout. A bientôt.

Marie

Magda dit: 23 janvier 2014 à 14 h 33 min

Pour moi, je ne suis pas (trop) d’accord sur le point n°7. J’estime que si l’on aime, par exemple, jouer au foot, qui n’est pas paléo, pourquoi devrait on l’arrêter et faire un truc dont l’on n’a rien à faire et qui ne nous fait aucun plaisir ?

Perso, je pratique de la course à pied (paléo), de la natation (paléo) mais qui ne sont pas spécialement recommandés. Pourquoi ?

Je pratique aussi de la danse (rock, salsa et tango argentin), des pilates, du stretching, des cours de gym (genre secoue-tes-fesses) et un peu tout à ce que j’arrive à participer. Ca me fait plaisir.

Et JE NE COMPTE PAS LAISSER TOMBER et puis c’est tout. Na !

Hihihi ! Je fais la dissidence. Qui est d’accord ?

    julien dit: 24 janvier 2014 à 8 h 18 min

    Hello Magda

    Je précise bien : asuf si vous êtes fana de ….

    Et pour avoir fait du football en club, je peux te dire que c’est très paléo : tu alternes les sprints avec les phases de « repos »

    Et comme tu dis, le principal est de se faire plaisir.

      Magda dit: 24 janvier 2014 à 9 h 48 min

      OK Julien, alors hier j’ai fait 1 heure de Pilates, 30 minutes de muscu et 45 minutes de stretching et je t’assure que je me suis fait vraiment plaisir.

      Du coup, le 6, le 8 et le 10 ont été bien observés 😉

Dani dit: 23 janvier 2014 à 14 h 37 min

Bjr? Julien, mes félicitations pour ton site, ton humour et les tips très utiles.
Je mettrais personnellement ton 10me commandement en premier. C’est en effet le fondament de tout, …donc à faire en premier!

sabine dit: 23 janvier 2014 à 14 h 43 min

Bonjour Julien

Suite à tes conseils j’ai déjà supprimé le lait ainsi que les céréales et du coup je me sens bien mieux, moins de problèmes
digestifs. J’aime assez le commandement 6

Merci pour les recettes et les conseils

Sabine

    julien dit: 24 janvier 2014 à 12 h 56 min

    Bonjour Sabine

    Le 6. Tu continueras de te faire plaisir est essentiel (comme les autres d’ailleurs 🙂 )

Isabelle dit: 23 janvier 2014 à 15 h 23 min

Bonjour Julien,
et surtout merci pour ton site j’y vais presque tout les jours il est super sympa et m’aide bien j’ai commencé le programme 5 semaines et suis a la 3éme et tout va bien , j’ai éliminer les céréales et les produits industriels, réduit ma conso de glucides et ça va super j’ai commencé aussi les sprints fractionné et ça c’est dur dur!!mais je m’accroche car j’ai perdu 1kg5 en tout et suis super ravi je suis donc tout a fait ok avec les 10 commandements ça permet de faire un point et c’est bien cool, pour le commandement 7 je continue quand même la course a pied et la natation et intercale les sprints !!! aprés je suis comme le commentaire de Marie le commandement 8 9 et 10 sont supers et j’applique dés que possible encore merci c’est excellent
Isa

    julien dit: 24 janvier 2014 à 12 h 57 min

    Bonjour Isabelle

    Super! Tu verras que tu ne pourras plus t’arreter

Fabrice dit: 23 janvier 2014 à 20 h 05 min

Bonjour Julien,

Totalement convaincu par l’alimentation paléo j’ai une question concernant les amendes peut on les manger tel quel ou faut il les laver ou les faire tremper dans l’eau

Merci pour ta réponse

Fabrice

Daniel dit: 24 janvier 2014 à 0 h 16 min

Bonsoir Julien et à toutes les personnes qui suivent ce site.

Oui c’est vrai que ton site est top, je te suis depuis un moment ainsi qu’une autre personne qui est dans ce domaine, que tu dois connaitre je pense  » C A  » je vois au dessus que Isabelle parle d’un programme de 5 semaines , de quoi s’agit-il, car je cherche pour débuter un programme ce genre de chose d’une durée de plusieurs semaines donc comment avoir celui-ci.

Merci encore et longue vie à ton site.

Daniel un futur convertis Paléo.

    julien dit: 24 janvier 2014 à 8 h 20 min

    Bonjour Daniel

    Tu peux recevoir le programme en 5 semaines en utilisant le formulaire au bas de chaque article

Margaux #LaRoutedelaForme dit: 24 janvier 2014 à 11 h 59 min

Haha sympa ces 10 commandements! On peut ajouter « Tu ne seras pas végétarien » aussi? 🙂

    julien dit: 24 janvier 2014 à 13 h 00 min

    Le problème c’est qu’ils consomment des céréales et il est difficile de trouver des protéines

    Mais le paléo n’est pas anti-végétarisme

Alex dit: 25 juin 2015 à 7 h 06 min

Bon, à chaque fois que je vois des recommandations paleo c’est toujours très dogmatique.

1. Tu banniras les céréales

Vrai en partie (je suis moi même pas un gros fan). En effect, idéalement on devrait les preparer selon la tradition, donc soi fermentés (pain à levain), soi poussés ou trempés. A’ éviter le blé durum clairement, mais parmi les céréales il y a des bonnes choices aussi, si correctement préparées (avoine, riz, seigle…). Enfin, ce n’est pas obligatoire de manger des céréales comme on nous à dit pendant 50 ans avec leur pyramide, je trouve juste que s’on doit vraiment avoir un morceau de pain pour tartiner une terrine de foie gras, le pain à levain c’est bien plus sain que les alternatives grotesques basées aux amandes ou le coco.

2. Tu réduiras ta consommation de glucides

Vrai, mais attention: les regimes low-carb ou zero-carb posent des gros problèmes sur les glandes surrénales et en suite sur la thyroïde. Je sais que ce n’est pas ce qu’on conseille ici, mais il faut faire attention quand on donne des « commandements », quelqu’un peut les prendre trop sérieusement.

4. Tu te méfieras des produits laitiers

Autre dogma. Il ne faut pas se méfier du lait sur la base des recherches faites aux Etais-Unis. Leur lait et surtout leur « fromages » ne peuvent pas rivaliser avec les merveilles que notre culture fromagère européenne à produit pendant des siècles. Je dirai moi aussi plus sur ça 😉

    Magda dit: 25 juin 2015 à 11 h 51 min

    Alex, en réalité, tu ne fais pas paléo. Toi, selon ce que tu dis, tu fais plutôt le régime « primal » où l’agriculture a déjà commencé, où l’on a déjà commencé à consommer des céréales et du lait.

    Pour moi, qui suis le paléo depuis 15 ans (en fait, avant 2005 c’était plutôt Seignalet) je peux te dire que peu importe si la céréale a été modifiée ou pas, vu qu’elle ne passera pas mes lèvres.

    Ni du riz, ni du sarrasin, encore moins le pain à levain, qui n’a rien à voir dans le paléo.

    Pour des glucides, seuls glucides de fruits, consommés en fruit entier sont vraiment paléo. Même un jus extrait des fruit est déjà « prédigéré », la plus grade partie des fibres est détruite, concassée.

    Quand au lait, quelqu’il soit, il est incompatible avec l’humain. L’albumine bovin qu’il contient provoque des allergies, prépare le terrain pour le diabète du type I chez l’enfant, quand aux maladies auto-immunes….

    La caséïne set le lactose passent qu’ensuite, pour participer à la perméabilisation de l’intestin grêle et préparer le terrain aux autres maladies, dont le cancer du sein et de la prostate.

    julien dit: 25 juin 2015 à 12 h 32 min

    Bonjour Alex

    Quoi de plus dogmatique que des commandements? 🙂

    Ce format est fait pour retenir les grandes lignes.
    Dans le détail, il faut évidemment adapter à chacun, je pense notamment à la quantité de glucides

    pour le lait, tu fais bien de souligner « la production depuis des siècles ».
    Mais celle actuelle, de masse, n’a plus rien à voir avec la production ancestrale.

    Une minorité de producteurs produisent du lait à partir de vache vivant paléo (consommant uniquement de l’herbe, faisant de allers-retours dans la montagne, loin du stress).
    Et même ce lait là, mieux vaut le consommer sous forme de fromage fermenté, dont la préparation modifie les protéines et glucides que cite Magda

Michèle dit: 31 juillet 2015 à 21 h 51 min

Bonsoir Julien, je viens de m’inscrire au programme sur la recommandation d’une amie.

Je suis séduite, mais une question se pose : les quantités. tu vas me dire « avec modération », mais j’ai du mal à ne pas me resservir, et ça doit jouer sur l’efficacité. je n’arrive pas à bien gérer les quantités, ayant pas mal d’appétit et de gourmandise!

Surtout en ce qui concerne les fruits secs .. et les « petits plaisirs ».
A propos est ce que le verre de vin blanc à l’apéro reste possible ?

Je fais des sessions Dukan pour contrer les prises de poids, mais au dela de 2 kg, je ne perds plus, il est vrai que Dukan préconise les laitages maigres à volonté et mon frigo est plein de Sveltesse, fromage blanc etc … pour moi cétait le régime le plus facile à suivre, étant à volonté.

Puis je garder les galettes de son d’avoine au petit déj ? ou les oeufs durs ? les deux tranches de jambon de poulet ? (pas le meme jour lol)

Merci, excuse moi de toutes ces questions, j’aurais du les séparer ..

    julien dit: 2 août 2015 à 16 h 33 min

    Bonjour Michèle

    pour les quantités : https://vivre-paleo.fr/faq/#qtite
    un petit plaisir de temps en temps a rarement un effet, c’est ce que tu consommes au quotidien qui importe.

    Contrairement à Dukan, paléo privilégie les graisses animales NATURELLES (qui ne sont pas passées par les transformations industrielles) et de ce fait te déconseille le jambon de poulet (que tu trouves en barquette au supermarché, je n’en ai jamais vu en produit artisanal, mais bien entendu ca peut exister)

    pour les produits laitiers : https://vivre-paleo.fr/faq/#prodlait

    pour ton petit dej, je garderais que les oeufs durs

      Michèle dit: 2 août 2015 à 16 h 46 min

      Julien, je commence à connaitre ton humour, mais si tu ne me laisses que les oeufs durs au petit déjeuner, ça ne va pas le faire!

      Je propose de manger un ou deux fruits avec, ils seront plus vite « brulés » le matin, contenant des sucres quand meme, en quantité non négligeables!

      Pour le jambon de poulet, ça tombe bien, je ne peux plus le voir en peinture!

      Que penses tu comme complément alimentaire, de la levure de bière et du son d’avoine ? (à mettre sur les légumes ou dans de l’eau) – j’ai besoin de la levure de bière pour mes cheveux qui graissent vite et tombent par moment.

        julien dit: 2 août 2015 à 21 h 31 min

        La levure de bière est une bonne chose, tout comme les produits fermentés de façon artisanale.
        Cela remet bien les intestins dans de bonnes conditions.

        Je ne suis pas convaincu par le son d’avoine.
        Même s’il a la propriété de gonfler l’estomac et de couper la faim, il peut encore contenir du gluten (en très faible quantité certes).
        Mais surtout l’enveloppe des céréales contient des anti nutriments, qui peuvent entraver l’absorption de minéraux.

        Protéines et lipides suffisent pour atteindre la satiété, et si l’effet « ventre plein » te manque, tu peux rajouter des crudités de la famille du chou 😉

Catherine dit: 10 août 2015 à 10 h 00 min

Bonjour,
Suite à une prise de sang  » gênante » ( thiroïdite de Hashimoto et pré-diabèthe) et un désir de prendre enfin le temps pour moi à 50 ans, je me suis renseignée sur les conseils alimentaires actuels en lisant d’abord la MFM de Souccar puis « le guide de l’équilibre acide-base » ainsi que « le nouveau régime IG » et enfin, pour prendre exemple sur mon fils, « le modèle paléo » ( il s’en trouve très bien !). Au fur et à mesure de mes lectures accompagnées de recherches Internet et de conseils d’une amie naturopathe, j’ai vidé mes armoires de cuisine, fréquenter les magasins bio et remplacé un max ce qui devait l’être. Résultats: j’ai perdu du poids, 5kg, mais je suis à un stade où je mélange un peu tout et je ne sais plus trop quoi adopter! Je lis une chose et son contraire notamment en ce qui concerne les céréales. Première difficulté: je suis seule ce qui ne motive pas pour la préparation des repas ! Ensuite, j’ai fait du sport intensif et très varié de longues années ce qui m’a abîmée entre autres chevilles et rotules ( luxation). Du coup, course à pieds et muscu, très peu pour moi … Je me remet au vélo et step en laissant ma moto au garage, snif. Merci de me faire part de ton sentiment.

    Magda dit: 10 août 2015 à 10 h 27 min

    Bonjour Catherine,

    Je peux te rassurer : j’étais moi-même pré-diabétique à l’âge de 45 ans (et ma mère et ma grand mère ont été diabétiques), et on m’avait dit que bientôt je serai diabétique, je ne pourrai pas en échapper. Je pesais alors 82 kg pour 175 cm.

    J’ai donc arrêté des céréales et du sucre en général sauf des fruits que je consomme avec modération. Et que s’est-il passé ? Rien. j’ai aujourd’hui 62 ans et le diabète n’est pas là,mon pré-diabète a disparu très vite, je suis en parfaite santé.

    Je mange très simplement : de la viande et du poisson, des légumes à la vapeur,des salades, des légumes cuits à la poêle, une ratatouille, voilà.

    Je pèse le même poids qu’à mes 18 ans, soit 63 kg….

    Pour tes luxations, as-tu pensé à te faire opérer ? J’ai des amies qui l’ont fait et refont la course à pied et la muscu. D’ailleurs, la muscu ne peut qu’améliorer ton état (même sans l’intervention) car les muscles vont palier à ta laxité ligamentaire.

    Tu n’as que 50 ans c’est de la jeunesse encore (si je les avais !!!), tout le meilleur est encore devant toi, allez, ne te laisse pas abattre.

    Je connais tous les régimes dont tu parles, les IG sont bien il faut toujorus en tenir compte… Mais les céréales sont très mauvais pour la santé, ils entretiennent l’inflammation.

    On le sait, c’est connu, dans tous les congrès scientifiques on en parle…Mais avant que les médecins l’adopteront dans leur discours, 20 ans vont s’écouler…

    julien dit: 24 août 2015 à 18 h 41 min

    bonjour Catherine

    pour guérir tes articulations, va voir un ostéopathe (en quelques séance sur plusieurs mois, il peut te remettre en état)
    Couplé au régime nutritif qu’est le paléo, ça devrait le faire

    pour le sport, tu peux facilement sprinter en vélo, ou dans une piscine
    le rameur est aussi un excellent exercice, complet (tu peux sprinter aussi)

Qui écrit ici?

Bonjour, je suis Julien, le créateur de ce blog. Cliquez ici pour savoir si je peux vous aider.

Pour suivre toutes les aventures
Les guides complets
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).version={})}(this,(function(exports){"use strict";function __awaiter(e,t,n,i){return new(n||(n=Promise))((function(s,a){function o(e){try{d(i.next(e))}catch(e){a(e)}}function r(e){try{d(i.throw(e))}catch(e){a(e)}}function d(e){var t;e.done?s(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,r)}d((i=i.apply(e,t||[])).next())}))}var Blocking;"function"==typeof SuppressedError&&SuppressedError,function(e){e.PENDING="pending",e.NONE="none",e.BLOCKED="blocked",e.ALLOWED="allowed"}(Blocking||(Blocking={}));class Adblock{constructor(e){this.state=Blocking.PENDING,this._mocked=!1,e?(this.state=e,this._mocked=!0):this.state=Blocking.ALLOWED}inject(){return __awaiter(this,void 0,void 0,(function*(){}))}hasAdblocker(){if(void 0===window.google)return!0;const e=document.querySelectorAll("style");return Array.from(e).some((e=>!!e.innerHTML.includes("adblockkey")))}handleAdblocked(){this.removeAdblockKey(),this.state=Blocking.BLOCKED}removeAdblockKey(){var e;null===(e=document.documentElement.dataset)||void 0===e||delete e.adblockkey}get isBlocked(){return this.state===Blocking.BLOCKED}get isAllowed(){return this.state===Blocking.ALLOWED}toContext(){return{user_has_ad_blocker:null,is_ad_blocked:null}}}const OBFUSCATING_BASE_64_PREFIX="UxFdVMwNFNwN0wzODEybV",encode=e=>OBFUSCATING_BASE_64_PREFIX+btoa(unescape(encodeURIComponent(JSON.stringify(e))));function decode$1(e){return JSON.parse(decodeURIComponent(escape(atob(e.replace(OBFUSCATING_BASE_64_PREFIX,"")))))}var version="0.8.1";const APP_ENV="production",TRACKING_DOMAIN="https://click-euw1.bodis.com/",SALES_JS_URL="https://parking.bodiscdn.com/js/inquiry.js",GOOGLE_CAF_TIMEOUT_SCRIPTS="0",GOOGLE_CAF_TIMEOUT_CALLBACKS="0",GOOGLE_MV3_URL_PARAMS="abp=1&bodis=true",APP_VERSION=version,COOKIE_CONSENT_JS_URL="",AFD_CHEQ_LOAD_PERCENTAGE="30",isLocal=(e=!0)=>"production"!==APP_ENV;function log(...e){}const FIND_DOMAIN_URL="_fd",getFindDomain=(e="",t=!1,n="")=>{const i=n||window.location.search,s=`${e}/${FIND_DOMAIN_URL}${i}`,a=e?"include":"same-origin",o=Object.assign({Accept:"application/json","Content-Type":"application/json"},t?{"X-HOST":window.location.host}:{});return fetch(s,{method:"POST",headers:o,credentials:a}).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: 75vh;\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.hide-sales-banner > #sales-banner {\n display: none;\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_TARGET="main",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.hideSalesBanner=()=>{this.domNode.classList.add("hide-sales-banner")},this.revealSalesBanner=()=>{this.domNode.classList.remove("hide-sales-banner")},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.injectMessage(MESSAGE_TEMPLATE),this.domNode){const t=this.domNode.querySelector(MESSAGE_SELECTOR);t&&(t.innerHTML=e)}t&&this.injectMetaDescription(t)}injectMessage(e){const t=document.querySelector(MESSAGE_TARGET);t?t.innerHTML=e:this.domNode&&(this.domNode.innerHTML=e)}salesBanner(e){if(!e)return;const{href:t,position:n,message:i,theme:s,status:a}=e,o=document.createElement("div"),r=n||"",d="HIGHLIGHT"===s?"is-highlighted":"";o.innerHTML=t?`\n
\n ${i}\n
\n `:`\n
\n ${i}\n
\n `,"BOTTOM"===n?(o.style.marginTop="30px",document.body.appendChild(o)):document.body.prepend(o)}loading(e){let t="a few";e>0&&(t=`${e}`),this.message(`\n
\n
\n
\n
\n
\n
\n \n `)}adBlockMessage(){this.message("\n

Ad block detected

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

An Error Occurred

\n

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

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

An Error Occurred

\n

Services for this domain name have been disabled.

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

Content blocked

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

Invalid URL

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

No sponsors

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

No Sponsors

\n

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

`;case"disabled_mr":return`\n

Invalid URL

\n

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

`;case"js_error":return"\n

An Error Occurred

\n

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

\n ";default:return"\n

An Error Occurred

\n

Services for this domain name have been disabled.

\n "}}get trackingType(){switch(this.reason){case"disabled_rc":return"revenue_cap_reached";case"disabled_mr":return"invalid_referral";case"adblock":return"ad_blocked_message";case"no_sponsors":return"no_sponsors_message"}}get domain(){return window.location.hostname}toContext(){return{cannotPark:this.reason}}}function unpackPHPArrayObject(e,t){const n=e[t];if(n&&!Array.isArray(n))return n}class Parking extends State$2{constructor(){super(...arguments),this.type=Type.Parking}static build(e,t){const n=new Parking;n.domain=e.domainName,n.html=e.template,n.scripts=e.scripts||[],n.javascript=e.inlineJs,n.stylesheet=e.styles,n.imprint=e.imprintText;const i=unpackPHPArrayObject(e,"salesSettings");n.bannerAdblockerOnly=null==i?void 0:i.banner_adblocker_only;const s=(null==i?void 0:i.status)&&"NOT_FOR_SALE"!==(null==i?void 0:i.status);if(s){const{status:e,location:t,message:s,link:a,type:o}=i;n.salesBanner={message:s,href:a,position:t,theme:o,status:e}}return t.wantsToServeAds?n.trackingType="ctr":s&&window.location.pathname.startsWith("/listing")?n.trackingType="sales":n.trackingType="visit",n}toContext(){return{}}}class Sales extends State$2{constructor(){super(...arguments),this.type=Type.Sales}static build(e){const t=unpackPHPArrayObject(e,"salesSettings");if(!t)return;const{status:n}=t;return["NOT_FOR_SALE","EXTERNAL_MARKET","URL"].includes(n)?void 0:window.location.pathname.startsWith("/listing")?new Sales:void 0}toContext(){return{}}get trackingType(){return"sales"}init(e){window.context=e;const t=document.createElement("script");t.type="text/javascript",t.src=SALES_JS_URL,document.head.append(t)}}class Redirect extends State$2{constructor(){super(...arguments),this.type=Type.Redirect}static build(e,t,n){const i=unpackPHPArrayObject(e,"salesSettings"),{zeroClickDelay:s,skenzoRedirect:a,skenzoUrl:o,showInquiryForm:r,canZeroClick:d,cannotPark:c}=e;if(window.location.pathname.startsWith("/listing")&&["EXTERNAL_MARKET","URL"].includes(null==i?void 0:i.status)){if(null==i?void 0:i.external)return Redirect.toState(i.external,"sales");if(null==i?void 0:i.link)return Redirect.toState(i.link,"sales")}if(n.cannotLoadAds&&n.wantsToServeAds)return Redirect.toState(n.noAdsRedirectUrl,"no_ads_redirect");if(d&&(null==t?void 0:t.reason)){if(null==t?void 0:t.redirect)return Redirect.toState(t.redirect,"zc_redirect",s);if(a&&o)return Redirect.toState(o,"skenzo_redirect")}return(null==i?void 0:i.status)&&"NOT_FOR_SALE"!==(null==i?void 0:i.status)&&!(null==i?void 0:i.banner_adblocker_only)&&(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}}},CAFKey="caf",ClickKey="click",NoCacheKey="nc",SessionKey="session",TRACKING_URL="_tr",buildSignature=({callbacks:e,context:t},n)=>{var i,s,a,o;return Object.assign({ad_loaded_callback:null==e?void 0:e.adLoadedCallback,app_version:version,caf_client_id:null===(i=null==t?void 0:t.pageOptions)||void 0===i?void 0:i.pubId,caf_timed_out:null==e?void 0:e.cafTimedOut,caf_loaded_ms:null==e?void 0:e.cafLoadedMs,channel:null===(s=null==t?void 0:t.pageOptions)||void 0===s?void 0:s.channel,desktop:t.desktop,terms:null===(a=null==t?void 0:t.pageOptions)||void 0===a?void 0:a.terms,fd_server_datetime:t.fd_server_datetime,fd_server:t.fd_server,flex_rule:t.flex_rule,host:t.host,ip:t.ip,ivt:null===(o=null==t?void 0:t.pageOptions)||void 0===o?void 0:o.ivt,js_error:t.js_error,mobile:t.mobile,no_ads_redirect:t.noAdsRedirect,page_headers:t.page_headers,page_loaded_callback:null==e?void 0:e.pageLoadedCallback,page_method:t.page_method,page_request:t.page_request,page_time:t.page_time,page_url:t.page_url,reportable_channel:t.reportableChannel,reportable_style_id:t.reportableStyleId,tablet:t.tablet,template_id:t.templateId,type:n,user_has_ad_blocker:t.user_has_ad_blocker,user_id:t.userId,uuid:t.uuid,zeroclick:t.zeroClick},browserState())},trackVisit=({callbacks:e,context:t},n,i="")=>{const s=`${i}/${TRACKING_URL}`,a=i?"include":"same-origin",o=buildSignature({callbacks:e,context:t},n);let r={};"click"===n&&(r={[ClickKey]:"true",[SessionKey]:t.uuid,[NoCacheKey]:Date.now().toString()}),fetch(s,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},credentials:a,body:JSON.stringify(Object.assign({signature:encode(o)},r))})};var State$1;!function(){if(!window.CustomEvent){function e(e,t){t=t||{bubbles:!1,cancelable:!1,detail:void 0};const n=document.createEvent("CustomEvent");return n.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),n}e.prototype=window.Event.prototype,window.CustomEvent=e}}(),function(e){e[e.Pending=0]="Pending",e[e.Loaded=1]="Loaded",e[e.Failed=2]="Failed"}(State$1||(State$1={}));class Provider{get providerCtor(){return this.constructor}constructor(e){this.state=new Map,this.injectedAt=new Map,this.timeoutAt=new Map,this.timeoutSeconds=5,this.handlePixelEvent=e=>{this.keys.forEach((t=>{switch(this.state.get(t)){case State$1.Failed:break;case State$1.Pending:setTimeout((()=>this.handlePixelEvent(e)),100);break;case State$1.Loaded:this.onPixelEvent(e,t)}}))},this.watch=e=>{switch(this.state.get(e)){case State$1.Loaded:case State$1.Failed:break;case State$1.Pending:this.isLoaded(e)?this.state.set(e,State$1.Loaded):this.isTimedOut(e)?this.state.set(e,State$1.Failed):setTimeout((()=>this.watch(e)),50)}},this.config=e,this.keys.length>0?this.keys.forEach((e=>{this.state.set(e,State$1.Pending);const t=new Date;t.setSeconds(t.getSeconds()+this.timeoutAfter()),this.timeoutAt.set(e,t),this.injectPixel(e)})):this.state.set("",State$1.Failed)}get keys(){return this.config?Object.keys(this.config):[]}getPixelEvents(e){var t,n;return null===(n=null===(t=this.config)||void 0===t?void 0:t[e])||void 0===n?void 0:n.pixel_events}injectPixel(e){this.injectedAt.has(e)||(this.injectedAt.set(e,new Date),this.inject(e),this.watch(e))}inject(e){if(!this.providerCtor.scriptInjected){const e=document.createElement("script");e.text=this.getScript(),document.head.appendChild(e),this.providerCtor.scriptInjected=!0}this.init(e)}isTimedOut(e){return+new Date>=+(this.timeoutAt.get(e)||0)}timeoutAfter(){return this.timeoutSeconds}selectPixelEvents(e,t){const n=this.getPixelEvents(t);if(Array.isArray(n))return n.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{getScript(){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');"}init(e){window.fbq&&window.fbq("init",e)}onPixelEvent(e,t){const n=this.selectPixelEvents(e,t);n&&n.forEach((e=>{e&&(e.custom?window.fbq("trackSingleCustom",t,e.event):window.fbq("trackSingle",t,e.event))}))}isLoaded(e){return!!window.fbq&&window.fbq.getState&&window.fbq.getState(e)}}Facebook.scriptInjected=!1;class Outbrain extends Provider{getScript(){return`!function(_window, _document) { var OB_ADV_ID = ${JSON.stringify(this.keys)}; 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);`}init(e){}onPixelEvent(e,t){const n=this.selectPixelEvents(e,t);n&&n.forEach((e=>{e&&window.obApi("track",e.event)}))}isLoaded(e){return!!window.obApi}}Outbrain.scriptInjected=!1;class Revcontent extends Provider{getScript(){return"var script=document.createElement('script');script.src='https://assets.revcontent.com/master/rev.js';document.head.appendChild(script);"}init(e){}onPixelEvent(e,t){const n=this.selectPixelEvents(e,t);n&&n.forEach((e=>{e&&window.rev("event",e.event)}))}isLoaded(e){return!!window.rev}}Revcontent.scriptInjected=!1;class Taboola extends Provider{getScript(){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/${this.keys[0]}/tfa.js','tb_tfa_script');`}init(e){}onPixelEvent(e,t){const n=this.selectPixelEvents(e,t);n&&n.forEach((e=>{if(e){const n=parseInt(t,10);window._tfa.push({notify:"event",name:e.event,id:n})}}))}isLoaded(e){return Array.isArray(window._tfa)}}Taboola.scriptInjected=!1;class Tiktok extends Provider{getScript(){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(t).track(e.event)}))}isLoaded(){return!!window.ttq}}Tiktok.scriptInjected=!1;class GoogleAds extends Provider{getScript(){return`var s=document.createElement('script');s.async=1;s.src='https://www.googletagmanager.com/gtag/js?id=${this.keys[0]}';document.head.appendChild(s);window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments)}gtag('set','allow_ad_personalization_signals',false);gtag('js',new Date);`}init(e){window.gtag&&window.gtag("config",e)}onPixelEvent(e,t){const n=this.selectPixelEvents(e,t);n&&n.forEach((e=>{e&&window.gtag("event","conversion",{send_to:`${t}/${e.event}`})}))}isLoaded(e){return!!window.gtag}}GoogleAds.scriptInjected=!1;const ADS_PARAM$1=CAFKey,MESSAGE_PREFIX="FSXDC,.aCS:",ALLOWED_ORIGINS=["https://www.google.com","https://www.adsensecustomsearchads.com","https://syndicatedsearch.goog","https://googleadservices.com"];class Pixels{static build(e){const t=unpackPHPArrayObject(e,"pixel_tracking_data");if(t)return t.useAltTikTokEventsForAdsPlatformUser=e.is_ads,new Pixels(t)}constructor(e){this.onPixelEvent=e=>{const{detail:{type:t}}=e;switch(t){case"visit":case"ctr":case"click":this.providers.forEach((e=>e.handlePixelEvent(t)))}},this.providers=[],e.facebook&&Object.keys(e.facebook).forEach((t=>{this.providers.push(new Facebook({[t]:e.facebook[t]}))})),e.tiktok&&Object.keys(e.tiktok).forEach((t=>{this.providers.push(new Tiktok({[t]:e.tiktok[t]}))})),e.taboola&&Object.keys(e.taboola).forEach((t=>{this.providers.push(new Taboola({[t]:e.taboola[t]}))})),e.revcontent&&Object.keys(e.revcontent).forEach((t=>{this.providers.push(new Revcontent({[t]:e.revcontent[t]}))})),e.outbrain&&this.providers.push(new Outbrain(e.outbrain)),e.googleads&&Object.keys(e.googleads).forEach((t=>{this.providers.push(new GoogleAds({[t]:e.googleads[t]}))}))}listenForEvents(){document.addEventListener("pixel",(e=>{this.onPixelEvent(e)}));window.onmessage=e=>{const{origin:t,data:n}=e;ALLOWED_ORIGINS.includes(t)&&"string"==typeof n&&(null==n?void 0:n.startsWith(MESSAGE_PREFIX))&&new URLSearchParams(window.location.search).has(ADS_PARAM$1)&&document.dispatchEvent(new CustomEvent("pixel",{detail:{type:"click"}}))}}listenForPixelEvents(){document.addEventListener("pixel",(e=>{this.onPixelEvent(e)}))}dispatchEvent(e){document.dispatchEvent(new CustomEvent("pixel",{detail:e}))}}var State;!function(e){e[e.Pending=0]="Pending",e[e.Loaded=1]="Loaded",e[e.Failure=2]="Failure",e[e.TimedOut=3]="TimedOut",e[e.Errored=4]="Errored"}(State||(State={}));const CAF_SCRIPT_SRC=`https://www.google.com/adsense/domains/caf.js?${GOOGLE_MV3_URL_PARAMS}`,TIMEOUT_SCRIPTS=Number(GOOGLE_CAF_TIMEOUT_SCRIPTS),TIMEOUT_CALLBACKS=Number(GOOGLE_CAF_TIMEOUT_CALLBACKS);class StateMachine{constructor(){this.state=State.Pending}transitionTo(e){this.state=e}transitionFromPendingTo(e){this.done||(this.state=e)}get loaded(){return this.state===State.Loaded}get timedOut(){return this.state===State.TimedOut}get done(){return this.state!==State.Pending}}class Ads{constructor(e,t){this.state={script:new StateMachine,blocks:new StateMachine},this.blocksLoaded=[],this.injectScriptTags=()=>__awaiter(this,void 0,void 0,(function*(){return new Promise((e=>{const t=document.createElement("script");t.type="text/javascript",t.src=CAF_SCRIPT_SRC,t.addEventListener("load",(()=>e(!0))),t.addEventListener("error",(()=>e(!1))),document.body.appendChild(t),TIMEOUT_SCRIPTS>0&&setTimeout((()=>e(!1)),TIMEOUT_SCRIPTS)}))})),this.onPageLoaded=(e,t)=>{if(this.pageLoaded={requestAccepted:e,status:t},this.state.script.done)return;const n=null==t?void 0:t.error_code;n?(this.state.script.transitionTo(State.Failure),this.failureReason=`caf_pageloaderror_${n}`):this.state.script.transitionTo(State.Loaded)},this.onBlockLoaded=(e,t,n,i)=>{this.blocksLoaded.push({containerName:e,adsLoaded:t,isExperimentVariant:n,callbackOptions:i}),this.state.blocks.done||(t?this.state.blocks.transitionTo(State.Loaded):this.blocksLoaded.length>=this.blocks.length&&(this.state.blocks.transitionTo(State.Failure),this.failureReason=`caf_adloadfail_${e}`))},this.onTimeout=()=>{this.state.script.transitionFromPendingTo(State.TimedOut),this.state.blocks.transitionFromPendingTo(State.TimedOut)},this.blocks=e,this.options=t}get loaded(){return this.state.script.loaded&&!this.blocksLoaded.map((e=>e.adsLoaded)).includes(!1)}waitForBlocks(){return __awaiter(this,void 0,void 0,(function*(){return new Promise((e=>{const t=()=>{const n=performance.now();if(this.state.blocks.done)return this.cafLoadTime=Math.round(n-this.cafStartTime),void e();const i=this.blocksLoaded.map((e=>e.adsLoaded));i.includes(!1)||i.length>=this.blocks.length?e():setTimeout(t,50)};t()}))}))}inject(){return __awaiter(this,void 0,void 0,(function*(){try{const e=yield this.injectScriptTags();return this.cafStartTime=performance.now(),e&&void 0!==window.google?(new window.google.ads.domains.Caf(Object.assign(Object.assign({},this.options),{pageLoadedCallback:this.onPageLoaded,adLoadedCallback:this.onBlockLoaded}),...this.blocks),TIMEOUT_CALLBACKS>0&&setTimeout(this.onTimeout,TIMEOUT_CALLBACKS),yield new Promise((e=>{const t=()=>{this.state.script.done?e():setTimeout(t,10)};t()}))):void this.state.script.transitionTo(State.Failure)}catch(e){return void(this.error=e.toString())}}))}toCallbacks(){return{adLoadedCallback:this.blocksLoaded.slice(-1)[0],pageLoadedCallback:this.pageLoaded,cafTimedOut:this.state.script.timedOut||this.state.blocks.timedOut,cafLoadedMs:this.cafLoadTime,googleAdsFailure:!!this.failureReason}}toContext(){const e={cafScriptWasLoaded:this.state.script.loaded,cafScriptLoadTime:this.cafLoadTime,callbacks:this.toCallbacks};return this.error&&(e.js_error={message:this.error}),this.state.script.loaded||(e.zeroclick={reason:"googleAdsFailure"}),e}mockFailedState(){this.state.blocks.transitionTo(State.Failure),this.state.script.transitionTo(State.Failure)}}class TagManager{constructor(e){this.injected=!1,this.identifier=e}inject(){if(this.injected)return;if(!this.identifier)return;if("TEST"===this.identifier)return;const e=document.createElement("script");e.setAttribute("src",`https://www.googletagmanager.com/gtag/js?id=${this.identifier}`),document.head.appendChild(e),this.track(),this.injected=!0}track(){this.push("js",new Date),this.push("config",this.identifier)}push(e,t){window.dataLayer||(window.dataLayer=[]),window.dataLayer.push(arguments)}}const ADS_PARAM=CAFKey,ADS_TRACKING_URL="_tr",BLOCKS_TYPE="ads",BLOCKS_CONTAINER="rs",KNOWN_CAF_PARAMS=["caf","query","afdToken","pcsa","nb","nm","nx","ny","is","clkt"];class Google{static build({pageOptions:e,preferredLanguage:t,blocks:n,googleAnalytics:i},s,a,o){let r={};e&&(r=Object.assign({},e),r.hl||(r.hl=t));let d=null==e?void 0:e.resultsPageBaseUrl;d||(d=window.location.origin);return new Google(s.uuid,n,r,i,d,o)}constructor(e,t,n,i,s,a){this._blocks=t,this._pageOptions=n,this.uuid=e,this._baseURL=new URL(s),this._signature=a,this.ads=new Ads(this.blocks,this.pageOptions),this.tagManager=new TagManager(i)}injectTagManager(){this.tagManager.inject()}injectAds(){return __awaiter(this,void 0,void 0,(function*(){yield this.ads.inject()}))}waitForBlocks(){return __awaiter(this,void 0,void 0,(function*(){return this.ads.waitForBlocks()}))}get blocks(){return(this._blocks||[]).filter((e=>this.wantsToServeAds?e.type===BLOCKS_TYPE:e.container===BLOCKS_CONTAINER)).map((e=>{const t=this.baseURL;new URLSearchParams(window.location.search).forEach(((e,n)=>{t.searchParams.has(n)||t.searchParams.append(n,e)}));const n=Object.assign({},e);if(n.resultsPageBaseUrl=t.toString(),this.wantsToServeAds){const e=new URLSearchParams;e.append("click","true"),e.append("session",this.uuid);const t=Object.assign({},this._signature);delete t.ad_loaded_callback,delete t.caf_loaded_ms,delete t.caf_timed_out,delete t.flex_rule,delete t.frame,delete t.js_error,delete t.no_ads_redirect,delete t.page_headers,delete t.page_request,delete t.page_loaded_callback,delete t.popup,delete t.screen_resolution,delete t.user_has_ad_blocker,delete t.user_preference,delete t.user_supports_darkmode,delete t.user_using_darkmode,delete t.zeroclick,e.append("signature",encode(t)),n.clicktrackUrl=`${TRACKING_DOMAIN}${ADS_TRACKING_URL}?${e.toString()}`}return n}))}get baseURL(){const e=new URL(this._baseURL.origin);return e.searchParams.append(ADS_PARAM,"1"),this._baseURL.searchParams.forEach(((t,n)=>{e.searchParams.append(n,t)})),e}get pageOptions(){const e=Object.assign({},this._pageOptions);return Object.keys(this._pageOptions).forEach((t=>{t.startsWith("bodis")&&delete e[t]})),e}get cannotLoadAds(){return!this.ads.loaded}get wantsToServeAds(){return new URLSearchParams(window.location.search).has(ADS_PARAM)}get adsMode(){return this.ads.loaded&&this.wantsToServeAds}get adsReady(){return this.wantsToServeAds&&!this.cannotLoadAds}get noAdsRedirectUrl(){const e=new URLSearchParams(window.location.search);return KNOWN_CAF_PARAMS.forEach((t=>e.delete(t))),`${window.location.origin}?${e.toString()}`}get callbacks(){return this.ads.toCallbacks()}toContext(){return Object.assign({blocks:this.blocks,pageOptions:this.pageOptions},this.ads.toContext())}}class CookieConsentManager{constructor(){this.injectScriptTag=()=>__awaiter(this,void 0,void 0,(function*(){return new Promise((e=>{const t=document.createElement("script");t.setAttribute("src",COOKIE_CONSENT_JS_URL),t.addEventListener("load",(()=>this.awaitConsent(e))),t.addEventListener("error",(()=>e(!1))),document.head.appendChild(t)}))}))}inject(){return __awaiter(this,void 0,void 0,(function*(){this.injected||!COOKIE_CONSENT_JS_URL||isLocal()||(this.injected=yield this.injectScriptTag())}))}awaitConsent(e){let t=0;const n=setInterval((()=>{t+=1,20===t&&(clearInterval(n),e(!0)),void 0!==window.__tcfapi&&(window.addEventListener("ConsentActivity",(t=>{const{detail:{status:n}}=t;n&&e(!0)})),clearInterval(n))}),50)}}class Cheq{constructor(e){let t;if(t="string"==typeof e?parseInt(e,10):e,t<0||t>100)throw new Error("Load percentage must be between 0 and 100");this.loadPercentage=t}inject(e,t,n){return __awaiter(this,void 0,void 0,(function*(){if(!n||this.injected)return;100*Math.random()<=this.loadPercentage&&(this.injected=this.injectScriptTag(e,t))}))}injectScriptTag(e,t){const n=document.createElement("script");return n.type="text/javascript",n.async=!0,n.setAttribute("src","https://ob.forseasky.com/i/148870ae21863d775c347e8893c985af.js"),n.setAttribute("data-ch","cheq4ppc"),n.setAttribute("data-uvid",e),n.setAttribute("data-utm-campaign",t.toString()),n.className="ct_clicktrue_73521",document.head.appendChild(n),!0}}class App{main(){var e,t;return __awaiter(this,void 0,void 0,(function*(){if(this.parkResponse=decode(),this.findDomainResponse=yield getFindDomain(),!this.findDomainResponse)throw new Error("Domain failed to load.");this.pixels=Pixels.build(this.findDomainResponse),null===(e=this.pixels)||void 0===e||e.listenForEvents(),this.adblock=new Adblock,yield this.adblock.inject(),this.google=Google.build(this.findDomainResponse,this.parkResponse,this.adblock,buildSignature({context:this.context,callbacks:null===(t=this.google)||void 0===t?void 0:t.callbacks},"click")),this.google.injectTagManager();const n=Parking.build(this.findDomainResponse,this.google);Render.prerender(n),this.cheq=new Cheq(AFD_CHEQ_LOAD_PERCENTAGE),this.cheq.inject(this.parkResponse.uuid,this.findDomainResponse.userId,this.findDomainResponse.referral),this.cookieConsentManager=new CookieConsentManager,yield this.cookieConsentManager.inject();let i=Failed.cannotPark(this.findDomainResponse);if(i)return void(yield this.transitionToFailed(i,n));yield this.google.injectAds();let s=Disabled.build(this.findDomainResponse,this.adblock.state);if(s)return void(yield this.transitionToDisabled(s,n));const a=this.adblock.hasAdblocker();a&&this.adblock.handleAdblocked();const o=Sales.build(this.findDomainResponse);if(o)return void(yield this.transitionToSales(o));this.eligibleForZeroClick&&(this.zeroClickResponse=yield getZeroClick(this.context));const r=Redirect.build(this.findDomainResponse,this.zeroClickResponse,this.google);if(r)yield this.transitionToRedirect(r);else{if(a)return s=Disabled.build(this.findDomainResponse,this.adblock.state),void(yield this.transitionToDisabled(s,n));i=Failed.noSponsors(this.google),i?yield this.transitionToFailed(i,n):yield this.transitionToParking(n)}}))}transitionToParking(e){return __awaiter(this,void 0,void 0,(function*(){this.state=e,Render.template(e),Render.revealPage(),yield this.google.waitForBlocks(),yield this.track()}))}transitionToRedirect(e){return __awaiter(this,void 0,void 0,(function*(){this.state=e;const t=this.track();Render.revealPage(),yield waiter(e.delay,(e=>Render.loading(e))),yield t,window.location.href=e.url,log(`➡ Redirecting [${e.url}]`)}))}transitionToFailed(e,t){return __awaiter(this,void 0,void 0,(function*(){this.state=e,Render.message(e.message),Render.injectJS(t.javascript),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,t){return __awaiter(this,void 0,void 0,(function*(){this.state=e,Render.message(e.message),Render.injectJS(t.javascript),"adblocker"===e.reason&&t.bannerAdblockerOnly&&Render.revealSalesBanner(),Render.revealPage(),yield this.track()}))}track(){var e;return __awaiter(this,void 0,void 0,(function*(){if(!this.state.track)return Promise.resolve();try{const t=this.state.trackingType;return null===(e=this.pixels)||void 0===e||e.dispatchEvent({type:t}),trackVisit({context:this.context,callbacks:this.google.callbacks},t)}catch(e){return}}))}get eligibleForZeroClick(){const{cannotPark:e,canZeroClick:t,zeroClick:n}=this.findDomainResponse,{cannotLoadAds:i,wantsToServeAds:s}=this.google;return this.adblock.state!==Blocking.BLOCKED&&(!!t&&(!!e||(!(!i||s)||!!(null==n?void 0:n.reason))))}get context(){var e,t,n,i;const s=this.findDomainResponse,a=this.parkResponse,o=null===(e=this.state)||void 0===e?void 0:e.toContext(),r=null===(t=this.adblock)||void 0===t?void 0:t.toContext(),d=null===(n=this.google)||void 0===n?void 0:n.toContext(),c=browserState(),l=Object.assign(Object.assign({},null===(i=this.findDomainResponse)||void 0===i?void 0:i.zeroClick),this.zeroClickResponse);return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({app_version:APP_VERSION},s),a),r),d),o),c),{zeroClick:l})}init(){return __awaiter(this,void 0,void 0,(function*(){try{window.__parkour=this,yield this.main()}catch(e){console.error("app",e);const t=Failed.fromError(e);this.state=t,Render.message(t.message),Render.revealPage()}}))}}(new App).init(),exports.App=App}));