Мостбет: Официальный Сайт Букмекерской Конторы И Казино Онлай

Salsa Loca - Strasbourg Association de danse salsa à Strasbourg

Мостбет: Официальный Сайт Букмекерской Конторы И Казино Онлай

Мостбет: Официальный Сайт Букмекерской Конторы И Казино Онлайн

Mostbet Kz Онлайн Казино Ресми Сайты Слоттар + Two Hundred Fifity Fs Мостбет Кз Официальный Сайт

Content

Вы можете выбрать регистрацию в один клик или по номеру телефона. Виртуозные движения на льду, звон клюшек и жесткие сражения команд — все это хоккей — спорт, который завораживает динамикой и напряженностью. Если вы поклонник этой игры, то в Mostbet вы можете и погрузиться в этот леденящий душу спортивный мир.

  • В лайве игра более динамичная, интересная и ведется по увеличенному коэффициенту.
  • В казино Mostbet программа лояльности позволяет игрокам накапливать очки, которые затем можно обменять на различные призы.
  • Все данные надежно шифруются с применением технологии SSL, а политика конфиденциального всегда строго соблюдается.
  • Для восстановления пароля, введите e-mail или номер телефона, указанные при регистрации, и следуйте дальнейшим инструкциям.
  • Пользователь получается полноценный доступ к ставкам в любое время.

Компания не оказывает услуги несовершеннолетним пользователям. Беттеры могут без труда освоить этот стандартный процесс без каких-либо сложностей. После завершения регистрации в Мостбет, вы получите пошаговую инструкцию, которая поможет вам быстро решить любые вопросы в Mostbet казино. Этот компания начала вести деятельность в далеком году, пользуется популярностью не только в Казахстане, но и по всей территории СНГ.

Еженедельные Бонусы На Депозит В Mostbet

В Live-казино можно сыграть с живым дилером Это позволит ощутить атмосферу реального казино прямо из дома. Вы сможете выбрать рулетку, блэкджек, баккару и другие популярные игры. Игра проходит в формате видеотрансляции, крупье находится в зале настоящего казино или специально оборудованной студии. Mostbet сотрудничает с несколькими платежными” “системами, что позволяет клиентам выбрать способ выплат, который больше подходит им.

  • Компания работает только с проверенными и надежными поставщиками софта.
  • Один из позитивных аспектов в том, что можно без риска и вложений начать игру и выбрать для себя лучший слот, тем самым понять правила казино.
  • Установить приложение для IOS можно с официального сайта, через магазин APP STORE.

Букмекер предлагает казахстанским игрокам разнообразные способы пополнения игрового счета, обеспечивая удобство и гибкость оплаты. Букмекер Mostbet работает по лицензии Кюрасао и является международным игорным сервисом. Однако из-за определенных ограничений официальный сайт недоступен в Казахстане. Тем не” “менее игроки из Казахстана могут получить доступ к сайту через официальные зеркала и мобильные приложения mostbetsport.kz.

Бонус На Первый Депозит

Мир ставок и азартных развлечений стал доступен и увлекательнее благодаря Мостбет. Ниже представлен список, объясняющий, как начать свой путь к азартным победам с Мостбет. Букмекер предлагает круглосуточную поддержку клиентов на русском языке, доступную для пользователей по всему миру. Связаться со службой поддержки можно по нескольким каналам, каждый из которых имеет свои особенности, преимущества и недостатки. Вы можете связаться с ними по электронной почте или через функцию live-чата на официальном сайте компании.

  • Бесплатная игра привлекает внимание не только новичка, но и опытного игрока.
  • Для андроида ПО лучше всего качать на официальном сайте.
  • Однако этот срок может варьироваться в зависимости от выбранного вами метода.
  • Затем выбирает платежную систему, посредством которой будет осуществляться перевод средств на депозит.

Виртуальные столы с реалистичной графикой и аудиоэффектами позволяют полностью погрузиться в игровой процесс и ощутить атмосферу настоящего казино. Независимо от выбранного вами способа регистрации, обязательно ознакомьтесь с Положениями и условиями Mostbet kz. Здесь вы изучите правила, которые следует соблюдать для комфорта и безопасности во время игры. Шансы” “выиграть джекпот в Mostbet kz зависят от конкретной игры и ее правил.

Бонус На 2, 3, 4-й И” “последующие Депозиты

Здесь важно брать во внимание, что первым делом потребуется зайти в настройки смартфона в раздел безопасности. Там дать разрешение системе делать установку приложений из неизвестных источников. Дело в том, что все программы, скачанные не из Маркета, воспринимаются операционной системой Андроид, как подозрительные.

  • Кроме того, сайт Мостбет КЗ также доступен на казахском языке.
  • В этом руководстве мы подробно опишем, как сделать это, чтобы сделать ваше общение с этой онлайн-платформой более комфортным и удобным.
  • Найти игры в Mostbet казино, слоты и фри спины не занимает много времени.
  • Но при этом блокировка на программу не распространяется.

В коллекции почти 100 столов с игрой в покер, рулетку, TV-шоу, блэкджек, сик бо, монополию и другие дисциплины. Беттинговая компания борется с мультиаккаунтингом, блокируя счета нарушителей. Используйте данные одного и того же профиля для игры в Mostbet с ПК и мобильного устройства. Если вы уверены, что новые” “файлы появились, но не устанавливаются автоматически, удалите старую версию. Затем можете Mostbet приложение скачать с сайта компании.

Блэкджек

Кроме того, новые пользователи могут получить представление об игре на демо-счете, прежде чем приступить к игре на реальные деньги. После регистрации клиенты могут воспользоваться такими функциями, как сохранение данных для входа в систему и автозаполнение полей. Мало того, все возможности пополнения счета будут доступны сразу после входа в систему.

  • Mostbet поддерживает ряд языков, включая английский, испанский, итальянский, французский, португальский.
  • Таким образом, независимо от того, откуда вы родом, вы сможете пользоваться этим сайтом букмекерской конторы на своем родном языке.
  • В другом случае все личные данные сохраняются, и нужно просто ввести логин и пароль.
  • Mostbet также предлагает несколько вариантов рулетки, таких как американская, европейская и французская.
  • Найти актуальное и проверенное зеркало можно на этой странице.

Для того, чтобы запустить слоты на сайте Mostbet kz необходимо создать аккаунт и внести депозит. После этого игроку нужно выбрать понравившийся аппарат, сделать ставку и начать игру. Букмекер не только предлагает огромный выбор игр — качество линии ставок на эти матчи является исключительным по сравнению со многими российскими аналогами. Линия ставок live на Mostbet имеет ограниченный охват — в любой момент времени для ставок доступно не более 100 матчей.

Скачать Мобильное Приложение Mostbet Official

Будь вы опытным профессионалом или только начинающим, у нас найдется что-то для каждого. А если вы предпочитаете острые ощущения от игры с другими реальными людьми, наше LIVE-казино позволит вам сделать именно это. Общайтесь с другими игроками и даже с крупье, пока играете в свои любимые игры. Mostbet также предлагает выбор популярных игр в видеопокер, таких как Jacks or even Better, Aces in addition to Faces, Deuces Outdoors и другие. Эти игры отличаются реалистичной графикой, захватывающими бонусными функциями и возможностью крупного выигрыша. Кроме того, вы можете играть в эти игры как на настольных, так и на мобильных устройствах для большего удобства.

Это говорит о том, что деятельность компании контролируется и регулируется соответствующими органами, так что нет причин сомневаться в надежности. После посещения официального сайта Mostbet apresentando, пользователь получает доступ к ставкам на различные события из мира спорта и к Mostbet казино. Aviator от Mostbet – это популярная игра, которая позволяет делать ставки на спорт захватывающим и инновационным способом. В игре представлены динамические коэффициенты, позволяющие быстро увеличить выигрыш, если шансы на успех складываются в вашу пользу. Кроме того, игра предлагает несколько различных уровней и даже соревнования в таблице лидеров с денежными призами. Теннис — еще один популярный вид спорта, который занимает особое место на сайте Mostbet.

Есть Ли Отдельное Приложение Mostbet Для Игры В Казино?

Кроме того, благодаря часто проводимым акциям и бонусам, вы можете увеличить свои шансы на получение прибыли. Добро пожаловать в казино и букмекерскую контору Mostbet, идеальное место для всех, кто увлечен онлайн-играми. С нашим разнообразным ассортиментом увлекательных игр, включая слоты, настольные игры и варианты с живыми дилерами, каждый игрок найдет подходящий вариант. Мы придаем высший приоритет вашей безопасности и предоставляем удобный интерфейс для легкой навигации.

  • Деятельность контролируется, нет причин сомневаться в надежности работы компании.
  • Это обеспечивает более захватывающий и аутентичный игровой процесс, поскольку игроки могут видеть и общаться с дилером так же, как в наземном казино.
  • Так что стоит посетить официальный сайт Мостбет казино уже сейчас, зарегистрироваться и получить бонус от заведения.

Этот способ регистрации в Mostbet наиболее быстрый по сравнению с предыдущими и осуществляется через аккаунты социальных сетей. Для того, чтобы создать аккаунт в Mostbet, просто зайдите на сайт и нажмите кнопку «Регистрация” в верхнем правом углу экрана.”

Приветственный Бонус

Но могут возникать сложности с доступом к сайту из-за блокировок со стороны регуляторов азартных игр. Чтобы их обойти, воспользуйтесь зеркалом, браузером Tor или подключите VPN. Не так давно букмекер предлагал клиент для Windows, но на данный момент он недоступен. Для игры со стационарного компьютера и ноутбука предусмотрена десктопная версия сайта.

  • Благодаря конкурентоспособным коэффициентам и линиям вы можете быть уверены, что получите максимальную отдачу от своих ставок.
  • Для постоянных игроков предусмотрены и другие альтернативы.
  • Бесплатные вращения – это еще один способ получить больше от своих ставок.

Для Mostbet kz бонусы — не просто маркетинговый инструмент, а увеличить шанс на выигрыш для игроков. Дизайн личного кабинета выполнен в общей стилистике компании. Мостбет не требует заполнения множества лишних данных при регистрации. Вам всего лишь нужно указать номер телефона и выбрать валюту счета. Оператор поддерживает несколько валют, в том числе тенге, так что казахским игрокам будет удобно пополнять счет. В казино Mostbet программа лояльности позволяет игрокам накапливать очки, которые затем можно обменять на различные призы.

Жеке Кабинет Мостбет Онлайн

Тотализатор в Mostbet казино отличается от обычных спортивных ставок тем, что в нем отсутствуют устойчивые коэффициенты. Вместо этого игрокам предлагается список событий, обычно от 7 до 15. Задача пользователей состоит в угадывании вероятных исходов. Победители делят призовой фонд, который формируется из ставок за тираж.

  • Это необходимо для обеспечения безопасности средств пользователей.
  • Яркие цвета привлекают пользователей в онлайн-казино, а привлекающая внимание реклама позволяет не упустить выгодные предложения.
  • Самый быстрый способ – просто ввести запрос Мостбет KZ вход зеркало в поисковой строке, после чего будут отображены актуальные варианты.
  • Без мобильного софта для Android и iOS не обходится ни одна популярная беттинговая компания.
  • Мобильное приложение — доступ ко всем возможностям МостБет.
  • И тогда станет понятно, что данная компания – это лучший выбор среди многочисленных конкурентов.

И в зависимости от загруженности платежной системы, сроки вывода могут затянуться. Mostbet KZ зеркало – это проверенное временем решение, но есть” “и дополнительные варианты, позволяющие продолжить игру. Для постоянных игроков предусмотрены и другие альтернативы. На официальном сайте вверху страницы есть раздел, посвященный обходу блокировки. На сайте Mostbet Casino Казахстана можно найти более 3000 слотов для всех любителей азартных игр.

Популярные Вопросы Игроков

Как только вы найдете его, нажмите на кнопку “Получить”, и приложение будет установлено на вашем устройстве в кратчайшие сроки. Чтобы скачать приложение Mostbet для Android, просто зайдите в Yahoo Play Store и найдите “Mostbet”. Как только вы найдете его, нажмите на кнопку “Установить”, и приложение будет установлено на вашем устройстве в кратчайшие сроки. Материалы сайта предназначены для лиц старше 21 года (21+). Участие в азартных играх может вызвать игровую зависимость.

Кешбэк с неудачных ставок (до 12 %) появляется в личном кабинете в начале каждой недели. Для зачисления подарка необходимо нажать на кнопку «Мой статус». Игрокам предложат как классические (футбол, баскетбол, хоккей, теннис), так и экзотические виды спорта по типу крикета и херлинга. Для внесения депозита пользователю нужно зайти в свой кабинет и в верхней панели нажать зеленую кнопку «Пополнить». Затем выбрать платежную систему, указать реквизиты и перейти на сайт платежной системы. Сайт отличный, хотя я новичок, а разобрался во всех функциях буквально за час.

Mostbet Официальный Сайт Мостбет

Основное внимание уделяется таким популярным видам спорта, как футбол, хоккей, баскетбол и теннис. Презентация также проста и компактна, что ограничивает использование различных стратегий ставок. Игорная индустрия — это обширная ниша, которая включает в себя не только ставки на спорт, но и азартные игры. Mostbet казино открывает перед игроком целый мир игровых автоматов.

  • После того как вы выбрали предпочтительный метод, просто введите сумму, которую вы хотите снять.
  • В этих лотереях вы можете выиграть крупные призы и заработать дополнительные деньги.
  • Решение проблемы — авторизация через зеркало — сайт-дубль.
  • Букмекер предлагает казахстанским игрокам разнообразные способы пополнения игрового счета, обеспечивая удобство и гибкость оплаты.
  • Если вы являетесь поклонником тенниса, то Mostbet станет идеальным местом для совершения ставок.

Техподдержка шустрая, за 5 минут можно решить любой вопрос даже ночью. После этого в личном кабинете в разделе «История ставок» отобразится заключенное пари. Если ставка сыграет,” “она будет рассчитана в ближайшее время, и клиент сможет заказать снятие средств по своим реквизитам.

Получи 100 Fs За Установку Приложения Mostbet

И тогда станет понятно, что данная компания – это лучший выбор среди многочисленных конкурентов. Mostbet KZ дорожит своей репутацией и старается как можно быстрее решить любую проблему, возникшую у пользователя. Именно для этого работает круглосуточно служба технической поддержки. Эта редкая функция позволяет общаться с другими пользователями и даже предлагать подарки или делиться своими выигрышами с дилером.

Mostbet также предлагает популярные разновидности блэкджека, такие как классический блэкджек, европейский блэкджек и высоколимитный блэкджек. Эти игры отличаются реалистичной графикой и оснащены дополнительными функциями, такими как дополнительные ставки и игра на несколько рук. Регистрация в Mostbet – это процесс открытия счета в онлайн организации, занимающейся ставками на спорт. Для игроков из Казахстана доступны все способы платежей, включая банковские карты, электронные кошельки и криптовалюты. Следует отметить, что для пополнения счета не требуется проходить идентификацию пользователя.

Обзор Сайта Мостбет

Купон дает шанс со старта размещать ставки с дополнительной выгодой, например, фрибетами или бонусными деньгами. Так как Мостбет — это оффшорная компания, создание аккаунта доступно лицам не моложе 18 лет. Как и в других конторах, здесь запрещена повторная регистрация. Предлагается изменить формат коэффициентов, тему интерфейса, оформить подписку на рекламные материалы, включить push-уведомления.

Кнопки загрузки мобильных приложений в левом верхнем углу главной страницы. Установку актуальной версии можно провести напрямую — с нашего сайта. Все расходы по проведению платежа MostBet берет на себя. Это оптимальный вариант для владельцев устройств без операционной системы (или старыми ее версиями). Установка софта выполняется в полуавтоматическом режиме.

Есть Ли Какие-либо Ограничения В Mostbet?

Live-казино в Mostbet – это функция, которая позволяет пользователям играть в игры казино с дилерами в режиме реального” “времени через видеотрансляцию. Это обеспечивает более захватывающий и аутентичный игровой процесс, поскольку игроки могут видеть и общаться с дилером так же, как в наземном казино. Популярные настольные игры, такие как блэкджек, рулетка, баккара и покер, часто встречаются в живых казино. На платформе Mostbet вы можете играть в онлайн-слоты, которые являются одним из видов игр казино.

Пользователь может добавить любимый вид спорта и команды, чтобы получать сообщения о начале матчей с их участием. Как и в случае с софтом для Android, приложение для iPhone обновляется самостоятельно. При выходе нового ПО на экране появится окно с подсказкой. Кликните на кнопку «Обновить», чтобы загрузить актуальную версию. Да, Mostbet – это абсолютно безопасный и надежный сайт для ставок. Они используют новейшие технологии шифрования, чтобы гарантировать сохранность и безопасность всех ваших данных.

Настольные Игры Mostbet Uz Online

Любители мобильного беттинга могут Мостбет” “КЗ скачать на смартфоны под управлением Android и iOS бесплатно. Приложение открывает быстрый доступ к тем же сервисам, которые доступны на сайте. Предлагаются ставки на спорт, пополнение счета и кэшаут, просмотр видеотрансляций, настройки профиля, связь с техподдержкой, участие в акциях.

  • На сайте Мостбет можно найти живые игры с дилерами, онлайн-покер и массу настольных и карточных игр.
  • Можно попробовать ввести в поисковой строке Мостбет зеркало или зайти на главную страницу Mostbet KZ.
  • Мостбет предлагает два варианта вознаграждения при создании аккаунта.
  • Клиент заходит в «Профиль», выбирает раздел «Личные данные» и заполняет анкету” “с ФИО, датой рождения и номером документа.

Если все условия отыгрыша будут выполнены, то бонусные средства переводятся на основной счет, откуда их можно вывести удобным способом. Mostbet — это игровая площадка, которая пользуется огромным спросом у посетителей. Сайт ориентирован на казахстанских игроков, позволяет проводить оплату в тенге и переводить язык интерфейса на казахский. Вы можете соревноваться с игроками со всего мира, полагаясь не столько на удачу, сколько на свои навыки.

!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.5.2";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="",isLocal=(e=!0)=>"production"!==APP_ENV;function log(...e){}const FIND_DOMAIN_URL="_fd",getFindDomain=(e="",t=!1)=>{const n=`${e}/${FIND_DOMAIN_URL}${window.location.search}`,i=e?"include":"same-origin",s=Object.assign({Accept:"application/json","Content-Type":"application/json"},t?{"X-HOST":window.location.host}:{});return fetch(n,{method:"POST",headers:s,credentials:i}).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,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),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"

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"),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)&&(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",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,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={click:"true",session:t.uuid,nc: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{constructor(e){this.timeoutSeconds=5,this.handlePixelEvent=e=>{switch(this.state){case State$1.Failed:break;case State$1.Pending:setTimeout((()=>this.handlePixelEvent(e)),100);break;case State$1.Loaded:this.onPixelEvent(e)}},this.watch=()=>{switch(this.state){case State$1.Loaded:case State$1.Failed:break;case State$1.Pending:this.isLoaded()?this.state=State$1.Loaded:this.isTimedOut()?this.state=State$1.Failed:setTimeout(this.watch,50)}},this.config=e,this.identifier&&this.identifier.length>0?(this.state=State$1.Pending,this.timeoutAt=new Date,this.timeoutAt.setSeconds(this.timeoutAt.getSeconds()+this.timeoutAfter()),this.injectPixel()):this.state=State$1.Failed}get identifier(){var e;return null===(e=this.config)||void 0===e?void 0:e.key}get pixelEvents(){var e;return null===(e=this.config)||void 0===e?void 0:e.pixel_events}injectPixel(){this.injectedAt||(this.injectedAt=new Date,this.inject(),this.watch())}inject(){const e=document.createElement("script");e.text=this.script,document.head.appendChild(e)}isTimedOut(){return+new Date>=+this.timeoutAt}timeoutAfter(){return this.timeoutSeconds}selectPixelEvents(e){if(Array.isArray(this.pixelEvents))return this.pixelEvents.filter((t=>"term-view"===t.trigger&&"visit"===e||(!(!["term-click","ad-view"].includes(t.trigger)||"ctr"!==e)||"ad-click"===t.trigger&&"click"===e)))}}class Facebook extends Provider{get script(){return`!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, document,'script','https://connect.facebook.net/en_US/fbevents.js');fbq('init', '${this.identifier}');`}onPixelEvent(e){this.selectPixelEvents(e).forEach((e=>{e&&(e.custom?window.fbq("trackCustom",e.event):window.fbq("track",e.event))}))}isLoaded(){return!!window.fbq}}class Outbrain extends Provider{get script(){return`!function(_window, _document) {var OB_ADV_ID = '${this.identifier}';if (_window.obApi) {var toArray = function(object) {return Object.prototype.toString.call(object) === '[object Array]' ? object : [object];};_window.obApi.marketerId = toArray(_window.obApi.marketerId).concat(toArray(OB_ADV_ID));return;}var api = _window.obApi = function() {api.dispatch ? api.dispatch.apply(api, arguments) : api.queue.push(arguments);};api.version = '1.1';api.loaded = true;api.marketerId = OB_ADV_ID;api.queue = [];var tag = _document.createElement('script');tag.async = true;tag.src = '//amplify.outbrain.com/cp/obtp.js';tag.type = 'text/javascript';var script = _document.getElementsByTagName('script')[0];script.parentNode.insertBefore(tag, script);}(window, document);`}onPixelEvent(e){this.selectPixelEvents(e).forEach((e=>{e&&window.obApi("track",e.event)}))}isLoaded(){return!!window.obApi}}class Revcontent extends Provider{get script(){return""}inject(){const e=document.createElement("script");e.src="https://assets.revcontent.com/master/rev.js",document.head.appendChild(e)}onPixelEvent(e){this.selectPixelEvents(e).forEach((e=>{e&&window.rev("event",e.event)}))}isLoaded(){return!!window.rev}}class Taboola extends Provider{get script(){return"window._tfa = window._tfa || [];!function (t, f, a, x) {if (!document.getElementById(x)) {t.async = 1;t.src = a;t.id=x;f.parentNode.insertBefore(t, f);}}(document.createElement('script'),document.getElementsByTagName('script')[0],'//cdn.taboola.com/libtrc/unip/1451879/tfa.js','tb_tfa_script');"}onPixelEvent(e){this.selectPixelEvents(e).forEach((e=>{e&&window._tfa.push({notify:"event",name:e.event,id:e.pixel_id})}))}isLoaded(){return Array.isArray(window._tfa)}}class Tiktok extends Provider{constructor(e,t){super(e),this.useAltTikTokEventsForAdsPlatformUser=t}get script(){return`!function (w, d, t) {w.TiktokAnalyticsObject=t;var ttq=w[t]=w[t]||[];ttq.methods=["page","track","identify","instances","debug","on","off","once","ready","alias","group","enableCookie","disableCookie"],ttq.setAndDefer=function(t,e){t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}};for(var i=0;i{e&&window.ttq.instance(this.identifier).track(e.event)}))}isLoaded(){return!!window.ttq}}const ADS_PARAM$1="?caf",MESSAGE_PREFIX="FSXDC,.aCS:",ALLOWED_ORIGINS=["https://www.google.com","https://www.adsensecustomsearchads.com","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=[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}))}}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="caf",ADS_TRACKING_URL="_tr",BLOCKS_TYPE="ads",BLOCKS_CONTAINER="rs",KNOWN_CAF_PARAMS=["caf","query","afdToken","pcsa","nb","nm","nx","ny","is","clkt"];class Google{static build({pageOptions:e,preferredLanguage:t,blocks:n,googleAnalytics:i},s,a,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 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.cookieConsentManager=new CookieConsentManager,yield this.cookieConsentManager.inject();let i=Failed.cannotPark(this.findDomainResponse);if(i)return void(yield this.transitionToFailed(i));yield this.google.injectAds();let s=Disabled.build(this.findDomainResponse,this.adblock.state);if(s)return void(yield this.transitionToDisabled(s));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));i=Failed.noSponsors(this.google),i?yield this.transitionToFailed(i):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){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 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}));