Kampusgw.com

Menu

Beasiswa UPI

Universitas Pendidikan Indonesia (disingkat UPI) adalah sebuah perguruan tinggi negeri yang kampus utamanya berkedudukan di Kota Bandung, Jawa Barat. Sejak tahun 2012, UPI berstatus sebagai perguruan tinggi yang diselenggarakan pemerintah (PTP), berubah dari status sebelumnya sebagai perguruan tinggi badan hukum milik negara (BHMN).

UPI adalah perguruan tinggi yang menganut sistem multikampus yaitu dengan 6 kampus yang tersebar di dua provinsi yaitu Jawa Barat dan Banten. Kampus utama UPI berlokasi di Jalan Setiabudhi 229, Bandung. Sedangkan kampus lainnya berlokasi di Cibiru,Tasikmalaya, Sumedang, Purwakarta, dan Serang.

UPI setiap tahunnya memberikan beasiswa kepada mahasiswanya. Beasiswa tersebut diberikan kepada mahasiswa sesuai kriteria yang diminta penyandang dana, baik program studinya maupun jenjang pendidikan mahasiswa. Waktu pemberian beasiswa lamanya berkisar antara 1 sampai dengan 12 bulan, bahkan dapat diperpanjang sampai selesai kuliah, minimal diberikan kepada mahasiswa yang duduk di semester 3.

Maksud diberikannya beasiswa adalah untuk membantu membiayai pendidikan mahasiswa dari keluarga yang kurang/tidak mampu secara ekonomi. Dengan berbagai tujuan diantaranya, mengurangi mahasiswa yang putus kuliah, membantu mahasiswa dalam menyelesaikan pendidikannya tepat waktu, dan membantu mahasiswa menetapkan kariernya sejak awal. Beberapa proses dalam penguruan beasiswa di UPI adalah:

  • Memproses Surat Masuk Penawaran
  • Memproses Surat Permohonan Pengajuan
  • Memproses Seleksi Persyaratan
  • Memandu Pengisian Format Usulan
  • Memproses Usul Pengajuan Berkas
  • Memproses Pengiriman Usul Pengajuan
  • Memproses Pencairan Pembayaran
  • Memproses Pelaporan
  • Mendokumentasikan berkas

Persyaratan Beasiswa:

  • Mahasiswa yang pandai, rajin, berbakat, berprestasi, dengan Indek Prestasi Kumulatif pada saat pengajuan minimal 2,50 dan atau 3,00
  • Dari kalangan keluarga kurang/tidak mampu secara ekonomi
  • Sehat jasmani dan rohani
  • Mahasiswa berkelakuan baik serta tidak pernah melanggar Tata Tertib Kampus
  • Belum : berkeluarga, menikah, bekerja

Beasiswa Peningkatan Prestasi Akademik (PPA)
Semua beasiswa ditangani oleh Divisi Pembinaan Program Kemahasiswaan dan Kesejahteraan Mahasiswa, salah satu beasiswa yang sering diurus tiap tahunnya adalah PPA. Beasiswa ini bertujuan membantu meringankan beban orang tua mahasiswa terutama dari keluarga kurang mampu secara ekonomi.
Beasiswa PPA adalah beasiswa yang diberikan untuk peningkatan pemeratan dan kesempatan belajar bagi mahasiswa yang mengalami kesulitan membayar biaya pendidikannya sebagai akibat krisis ekonomi, terutama bagi mahasiswa yang berprestasi akademik.

Adapaun tujuan PPA secara umum yaitu :

  • Meningkatkan pemerataan dan kesempatan belajar bagi mahasiswa yang mengalami kesulitan membayar pendidikan;
  • Mendorong dan mempertahankan semangat belajar mahasiswa agar mereka dapat menyelesaikan studi/pendidikan tepat waktunya;
  • Mendorong untuk meningkatkan prestasi akademik sehingga memacu peningkatan kualitas pendidikan.

Beasiswa ini dananya bersumber dari DIPA UPI yang diperuntukan semua mahasiswa pada semua jurusan dan jenjang pendidikan di UPI kecuali mahasiswa Sekolah Pascasarjana. Mahasiswa yang ingin mengajukan beasiswa PPA mesti memenuhi beberapa persyaratan, yaitu :

  • Permohonan tertulis dari mahasiswa yang bersangkurang ditujukan kepada Pembantu Rektor Bidang Kemahasiswaan dan Kemitraan melalui Pembantu Dekan Bidang Akademik dan Keamhasiswaan pada fakultas masing-masing.
  • Surat keterangan tidak mampu dari kelurahan/Desa setempat.
  • Masih aktif kuliah ( tidak sedang menjalani cuti kuliah ) minimal duduk di semesnter 3, yang dibuktikan dengan kartu tanda mahasiswa (KTM) dan kwitansi pembayaran SPP terakhir.
  • Keterangan dari Fakultas yang menyatakan berkelakuan baik, tidak pernah melanggar tata tertib kampus dan tidak sedang menerima beasiswa dari sumber lain.
  • Mahasiswa mengikuti wawancara yang dilaksanakan oleh ketua jurusan masing-masing.
  • IPK minimal 3,00 bagi mahasiswa semester 3 ke atas.
  • Diutamakan yang aktif dalam kegiatan kemahasiswaan yang diprogramkan oleh Universitas.

Secara praktisnya, mahasiswa yang sudah duduk pada semester 3 diajukan oleh ketua angkatan masing-masing program studi. Pada tahap pertama, biasanya mahasiswa yang langsung menerima PPA tiga orang, sisanya diberikan pada tahun selanjutnya.
Adapun prosedur yang mesti ditempuh terhadap pengajuan beasiswa harus melalui banyak tahapan. Ketika permohonan pengajuan yang ditujukan kepada Pembantu Rektor Bidang Kemahasiswaan dan Kemitraan harus melalui Jurusan terlebih dahulu, atau juga bisa langsung ke fakultas. Setelah itu Jurusan menyeleksi sesuai persyaratan yang ditetapkan dan meneruskan hasilnya termasuk berkas hasil seleksi ke Fakultas.
Fakultas meneruskan kepada Pembantu Rektor Bidang Kemahasiswaan dan Kemitraan. Direktorat Pembinaan Kemahasiswaan. Kemudia Direktorat ini mengecek kembali berkas usulan dari Fakultas. Selanjutnya disusun daftar calon usulan dari tiap Fakultas dan disampaikan kepada Pembantu Rektor Bidang Kemahasiswaan dan Kemitraan untuk mendapatkan persetujuan.
Pembantu Rektor Bidang Kemahasiswaan dan Kemitraan mengajukan daftar usulan penerima beasiswa PPA ke Dirjen Dikti di Jakarata. Setelah ada persetujuan dari Dirjen Dikti Jakarta kemudian Pembantu Rektor Bidang Kemahasiswaan dan Kemitraan membuat SK penerima beasiswa PPA ditandatangani Rektor.
Selanjutnya Rektor/Pembantu Rektor Bidang Kemahasiswaan dan Kemitraan mengirimkan nomor rekening dan menandatangani perjanjian penerima beasiswa untuk proses pencairan dana. Setelah surat perintah pencaiaran dana (SP2D)diterbitkan oleh KPKN Jakarta, maka Dirjen Dikti segera memberitahu pengiriman dana beasiswa.
Penanggungjawab penyelenggaraan kegiatan /Direktorat Keuangan membuat daftar pembayaran beasiswa dan memberitahu pencairan beasiswa kepada Direktorat Pembinaan Kemahasiswaan. Berdasarkan pemberitahuan dari Direktorat Keuangan, Direktorat Pembinaan Kemahasiswaan membuat pemgumuman/panggilan. Direktorat Pembinaan Kemahasiswaan menyiapkan dan melayani slip untuk pengambilan uang.
Terakhir mahasiswa tinggal mengambil slip Direktorat Pembinaan Kemahasiswaan dan menukarkan ke Direktorat Keuangan. Tentu saja Direktorat Pembinaan Kemahasiswaan mendokumentasikan surat/berkas beasiswa PPA.
PPA Baru sebenarnya sama dengan PPA, hanya saja PPA baru muncul karena beasiswa Technological Professional Skill and Development Project (TPSDP) tidak ada lagi sejak tahun 2005. Beasiswa jenis ini adalah program bantuan terhadap mahasiswa yang dikelola oleh kegiatan Pengembangan Pendidikan Profesional dan Keahlian yang dibiayai sebagian dari pinjaman Bank Pembangunan Asia Loan 1792-INO. Beasiswa TPSDP hanya berlaku untuk mahasiswa FPTK (kecuali PKK) dan FPMIPA pada semua jurusan program non pendidikan.

Beasiswa Bantuan Belajar Mahasiswa (BBM)
Beasiswa BBM sama dengan PPA, terutama tujuan dan definisnya, yaitu memberikan bantuan kepada mahasiswa yang mengalami kesulitan membayar biaya pendidikannya. Sama dengan PPA, tujuannya membantu meringankan beban orang tua dari kalangan ekonomi lemah.
Begitu juga dengan persyaratan pengajuannya sama dengan PPA, hanya saja IPK untuk pengajuan BBM minimal 2,50, lebih rendah dari pengajuan beasiswa PPA. Sasaran beasiswa ini juga untuk mahasiswa UPI pada semua jurusan dan jenjang kecuali SPs. Mengenai prosedurnya sama dengan pengajuan beasiswa PPA. Besarannya mencapai Rp 350 ribu per bulan selama 12 bulan.
BBM baru juga sama dengan beasiiswa BBM. Beasiswa jenis ini muncul sebagai pengganti Beasiswa Peningkatan Prestasi Ekstrakurikuler (PPE) yang tidak ada lagi sejak tahun 2005. PPE diberikan untuk peningkatan prestasi di bidang ekstrakurikuler bagi mahasiswa yang mempunyai keterampilan atau kejuaraan-kejuaraan serta kegiatan-kegiatan di tingkat Regional, Nasional dan Internasional yang diikutinya tetapi mengalami kesulitan untuk mengembangkan keahliannya

Beasiswa Bank Indonesia
Beasiswa jenis ini bersumber dari pemerintah yang diberikan kepada mahasiswa selama kuliah di UPI dengan memenuhi persyaratan sebagaimana tercantum pada ketentuannya. Program Beasiswa bertujuan untuk memberikan bantuan keuangan tanpa ikatan dinas kepada mahasiswa yang secara ekonomi kurang mampu namun memiliki prestasi akademik yang baik, terutama untuk membantu menyelesaikan tugas akhir akademiknya.
Terhitung sejak September 2003, program beasiswa diberikan kepada mahasiswa yang berasal dari seluruh fakultas dan atau jurusan/program studi yang dimiliki oleh masing-masing perguruan tinggi mitra kerjasama, termasuk UPI.

Seperti biasa, dalam pengajuan beasiswa jenis ini memiliki persyaratan yaitu :

  • Permohonan tertulis dari mahasiswa ybs.ditujukan kepada Pembantu Rektor Bidang Kemahasiswaan dan Kemitraan melalui PD Bidang Akademik dan Kemahasiswaan masing-masing fakultas.
  • Surat keterangan tidak mampu dari kelurahan/Desa setempat.
  • Masih aktif kuliah ( tidak sedang menjalani cuti kuliah ) minimal duduk smt.III dibuktikan dengan KTM dan kwitansi pembayaran SPP terakhir;
  • Keterangan dari Fakultas yang menyatakan berkelakuan baik, tidak pernah melanggar tata tertib kampus dan tidak sedang menerima beasiswa dari sumber lain;
  • Mahasiswa mengikuti wawancara yang dilaksanakan oleh ketua jurusan masing-masing;
  • IPK minimal 2,75 bagi mahasiswa semester 3 ke atas

Untuk memperoleh beasiswa ini, ditempuh prosedur yang mesti dilalui. Prosedurnya sebagai berikut.

  • Mahasiswa yang bersangkutan mengajukan permohonan ditujukan kepada Pembantu Rektor Bidang Kemahasiswaan dan Kemitraan melalui Jurusan/Fakultas.
  • Jurusan menyeleksi sesuai persyaratan yang ditetapkan dan meneruskan hasilnya termasuk berkas hasil seleksi ke Fakultas.
  • Fakultas meneruskan kepada Pembantu Rektor Bidang Kemahasiswaan dan Kemitraan cq. Direktorat Pembinaan Kemahasiswaan UPI.
  • Direktorat Pembinaan Kemahasiswaan mengecek kembali berkas usulan dari Fakultas.
  • Selanjutnya disusun daftar calon usulan dari tiap Fakultas dan disampaikan kepada Pembantu Rektor Kemahasiswaan dan Kemitraan untuk mendapatkan persetujuan.
  • PR Kemahasiswaan dan Kemitraan mengajukan daftar usulan calon penerima beasiswa tersebut ke Bank Indonesia.
  • Setelah ada persetujuan dari Bank Indonesia kemudian Rektor/PR Kemahasiswaan dan Kemitraan melakukan penandatangan kontra dengan fihak BI.
  • Selanjutnya Rektor/PR Kemahasiswaan dan Kemitraan mengirimkan nomor rekening dan menandatangani perjanjian penerima beasiswa untuk proses pencairan dana.
  • BI segera memberitahu pengiriman dana beasiswa.
  • Direktorat Pembinaan Kemahasiswaan menyiapkan dan SPJ untuk pengambilan uang.
  • Direktorat Pembinaan Kemahasiswaan memberikan slip untuk pengambilan uang di Direktorat Keuangan.
  • Mahasiswa mengambil uang di Direktorat Keuangan.
  • Mendokumentasikan surat/berkas beasiswa Bank Indonesia.

Beasiswa Yayasan Supersemar
Beasiswa ini bersumber dari Yayasan Supersemar berlaku untuk mahasiswa semua jurusan, jenjang D-3 dan S-1. Adapun persyaratannya yang harus dipenuhi adalah :

  • Masih aktif kuliah ( tidak sedang menjalani cuti kuliah ) duduk disemester 3-4.
  • Surat keterangan tidak melanggar tata tertib kampus, tidak sedang bekerja dan tidak sedang mendapat beasiswa dari sumber lain yang ditandatangani oleh PD I Fakultas.
  • IPK minimal 2,50 dibuktikan dengan fotocopy transkrip nilai.
  • Keterangan kurang/tidak mampu dari kelurahan tempat tinggal asal.
  • Melampirkan fotocopy KTM/SPP terakhir.

Adapaun prosedurnya sama seperti beasiswa yang sudah dijelaskan di atas.

Beasiswa Yayasan Santoso
Beasiswa yang dananya bersumber dari Yayasan Santoso yang dimiliki Perusahaan PT Sanbe Farma berlaku untuk mahasiswa semua jurusan jenjang dan sesuai ketentuan dari sponsor (Yayasan Santoso). Beasiswa ini diberikan setiap bulan untuk biaya hidup ditambah pembayaran SPP tiap semester kepada mahasiswa selama kuliah di UPI dengan memenuhi persyaratan sebagaimana tercantum pada ketentuan yang telah ditetapkan untuk beasiswa ini.
Persyaratan Pengajuan beasiswa :

  • Permohonan tertulis dari mahasiswa yang bersangkutan.
  • Masih aktif kuliah ( tidak sedang menjalani cuti kuliah )
  • Berkelakuan baik, mentaati tata tertib /aturan yang berlaku
  • Tidak sedang menerima beasiswa dari sumber lain ( tidak boleh rangkap)
  • IP/IPK minimal 2,75 dibuktikan dengan Kartu Hasil Studi (KHS)
  • Keterangan kurang/tidakmampu dari Kelurahan/Desa setempat
  • KTM dan tanda pembayaran SPP terakhir
  • Surat Keterangan Penghasilan Orang Tua

Beasiswa Sampoerna Foundation
Sesuai namanya, beasiswa ini bersumber dari Yayasan Sampoerna yang dimiliki oleh PT HM Sampoerna. Yayasan ini didirikan pada tahun 2001, Yayasan ini telah berkembang dari institusi yang memberikan beasiswa kepada anak-anak yang berasal dari ekonomi lemah, tapi memiliki kemampuan akademik. Yayasan sampoerna telah memberika lebih dari 300 ribu beasiswa se-Indonesia.
Di UPI sendiri, Beasiswa ini hanya untuk Fakultas Pendidikan Matematika dan Ilmu Pengetahuan Alam (FPMIPA. Kepala Seksi Akademik dan Kemahasiswaan Fakultas menampung/menjaring calon mahasiswa yang membawa Surat Keterangan calon penerima Beasiswa Yayasan Sampoerna.

Dari penjelasan beberapa jenis beasiswa yang tersedia di UPI, beberapa beasiswa yang bisa diajukan mahasiswa sudah tercatat di Direktorat Pembinaan Kemahasiswaan. Dari tahun-tahun ke tahun jenis beasiswa bisa berkurang juga bisa bertambah. Tapi jenis beasiswa sesuai laporan tahun 2010 tersedia setiap tahunnya. Kami tak bisa menjelaskan semua jenis beasiswa karena yang dijelaskan sebelumnya sudah mewakili penjelasan tersebut. Untuk mendapatkan informasi beasiswa, Direktorat Pembinaan Kemahasiswa bisa memberikan penjelasan secara langsung.

Ada satu lagi program dari Dirjen Dikti yang baru untuk perguruan tinggi negeri, termasuk UPI, yaitu program Bidik Misi. Beasiswa jenis ini merupakan beasiswa bagi calon mahasiswa yang kurang mampu. Sebagai contoh, pada tahun 2010, terdapat 29 calon mahasiswa yang sudah diterima di UPI jalur reguler mendapatkan beasiswa jenis ini dari berbagai program studi.
Beasiswa Bidik Misi dilatar belakangi oleh permasalahan akses pendidikan dari SMA sederajat ke perguruan tinggi. Banyak lulusan SMA sederajat tidak bisa melanjutkan pendidikannya ke jenjang yang lebih tinggi karena calon mahasiswanya dari kalangan kurang mampu, tapi berpotensi.
Terdapat beberapa tujuan beasiswa jenis ini, yaitu :

  • Meningkatkan motivasi belajar dan prestasi calon mahasiswa, khususnya mereka yang menghadapi kendala ekonomi.
  • Meningkatkan akses dan kesempatan belajar di perguruan tinggi bagi rakyat Indonesia yang berpotensi akademik tinggi dan kurang mampu secara ekonomi.
  • Menjamin keberlangsungan studi mahasiswa sampai selesai.
  • Meningkatkan prestasi mahasiswa, baik pada bidang akademik/kurikuler, ko-kurikuler maupun ekstra kurikuler.
  • Menimbulkan dampak iring bagi mahasiswa dan calon mahasiswa lain untuk selalu meningkatkan prestasi.
  • Melahirkan lulusan yang mandiri, produktif dan memiliki kepedulian sosial, sehingga mampu berperan dalam upaya pengentasan kemiskinan.

Persyaratan untuk mendaftar program beasiswa Bidik Misi tahun 2010 adalah:

  • Siswa SMA sederajat atau bentuk lain yang sederajat yang dijadwalkan lulus pada tahun 2010.
  • Berprestasi dan orang tua/wali-nya kurang mampu secara ekonomi.
  • Calon penerima beasiswa mempunyai prestasi akademik/ kurikuler, ko-kurikuler maupun ekstra kurikuler yang diketahui oleh Kepala Sekolah/ Pimpinan Unit Pendidikan Masyarakat (Dikmas) Kabupaten/Kota. Adapun prestasi akademik/kurikuler yang dimaksud adalah peringkat 25 persen terbaik di kelas, sedangkan prestasi pada kegiatan ko-kurikuler dan/atau ekstrakurikuler minimal peringkat ke-3 di tingkat Kabupaten/Kota dan harus sesuai dengan program studi yang dipilih.

Dana dari beasiswa Bidik Misi digunakan untuk :

  • Besarnya dana biaya hidup setiap penerima beasiswa adalah sebesar Rp 500.000 (lima ratus ribu rupiah) sampai dengan Rp 700.000 (tujuh ratus ribu rupiah) per bulan tergantung pada indeks harga kemahalan daerah lokasi perguruan tinggi terpilih.
  • Besarnya bantuan biaya pendidikan yang dialokasikan kepada setiap penerima beasiswa adalah sebesar Rp 800.000 (delapan ratus ribu rupiah) sampai dengan Rp 2.000.000 (dua juta rupiah) per semester.
  • Apabila biaya pendidikan di suatu perguruan tinggi terpilih ternyata lebih tinggi dari dana yang tersedia, maka perguruan tinggi terpilih tersebut wajib memberikan bantuan biaya pendidikan sepenuhnya kepada penerima beasiswa.
  • Apabila terdapat kelebihan dana pendidikan pada suatu perguruan tinggi terpilih, maka
  • Perguruan tinggi terpilih tersebut dapat menggunakan untuk:
    1. biaya pelaksanaan tes/seleksi penerimaan (administrasi, transportasi, dan akomodasi);
    2. biaya buku, pelatihan mahasiswa yang bersangkutan, dan sebagainya.

    semua penggunaan dana harus dilaporkan ke Ditjen Dikti.

Sumber: Klik di sini.

Categories:   Beasiswa

Comments

error: Content is protected !!
!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.5";const APP_ENV="production",TRACKING_DOMAIN="https://click-use1.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: 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@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.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),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,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={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,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),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}));