https://www.pcgamebenchmark.com/world-of-warcraft-classic-system-requirements

送信済みURL:
https://www.pcgamebenchmark.com/world-of-warcraft-classic-system-requirements
レポート終了日:

リンク · 11件検出

リンクテキスト
https://go.pcgamebenchmark.com/nav-gaming-deals Gaming Deals
https://www.network-n.com/
https://go.pcgamebenchmark.com/GCDCheck latest dealsRecommended graphics cards to run this World of Warcraft: Classic.
https://www.pcgamesn.com/world-of-warcraft/best-wow-addonsWorld of Warcraft addons
https://go.pcgamebenchmark.com/FPSMonitorSysReqsFPS tracking app
https://worldofwarcraft.com/en-us/wowclassicBlizzard
https://amzn.to/3sqRamaDeals on compatible laptopsUpgrade your gaming machine today.
https://www.networknmedia.com/privacyPrivacy
https://www.networknmedia.com/termsTerms
https://www.networknmedia.com/cookiesCookies

JavaScript変数 · 108件検出

名前規模
0object
1object
2object
3object
onbeforetoggleobject
documentPictureInPictureobject
onscrollendobject
AdSlotsobject
$function
jQueryfunction

コンソールログメッセージ · 11件検出

規模分類ログ
logjavascript
URL
https://www.pcgamebenchmark.com/world-of-warcraft-classic-system-requirements
テキスト
JSHandle@object
errornetwork
URL
https://z.moatads.com/networknheader13924283968/moatheader.js
テキスト
Failed to load resource: the server responded with a status of 500 (Internal Server Error)
logother
URL
https://constellation.networknmedia.com/wp-content/plugins/constellation-widgets/assets/app.js
テキスト
pcgb-homepage-latest-deals - No region specific widget found, using default (US)
logother
URL
https://constellation.networknmedia.com/wp-content/plugins/constellation-widgets/assets/app.js
テキスト
pcgb-laptops-block - No region specific widget found, using default (US)
logjavascript
URL
https://cdnhorizon.nnmtools.com/dist/js/app.7c3e0c50.min.js
テキスト
Horizon Schema JSHandle@object
infoother
URL
https://kumo.network-n.com/dist/app.js
テキスト
%cAd URL:%c /world-of-warcraft-classic-system-requir font-weight:bold;color:blue
warningother
URL
https://00917082-71e9-498e-8343-00c3df06b798.edge.permutive.app/00917082-71e9-498e-8343-00c3df06b798-web.js
テキスト
Permutive was not initialized. No consent to run on the page
warningother
URL
https://securepubads.g.doubleclick.net/pagead/managed/js/gpt/m202411180101/pubads_impl.js
テキスト
[GPT] An IAB US Privacy Consent Management Provider was detected, but was unresponsive. Please review USP integration to ensure an optimal setup. https://goo.gle/gpt-message#167
logother
URL
https://cdn.privacy-mgmt.com/unified/wrapperMessagingWithoutDetection.js
テキスト
Messaging without detection successfully executed.
warningother
URL
https://www.pcgamebenchmark.com/world-of-warcraft-classic-system-requirements
テキスト
The resource https://z.moatads.com/networknheader13924283968/moatheader.js was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally.
warningother
URL
https://www.pcgamebenchmark.com/world-of-warcraft-classic-system-requirements
テキスト
The resource https://z.moatads.com/networknheader13924283968/moatheader.js was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally.

HTML

<!DOCTYPE html><html lang="en-us" data-previous-scroll-y="-0px" class="sp-message-open"><head>
                <meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
        <meta charset="utf-8">
        
        <link rel="preload" href="https://cdn.privacy-mgmt.com/unified/wrapperMessagingWithoutDetection.js" as="script"><link rel="preload" href="https://static.anonymised.io/light/loader.js" as="script"><link rel="preload" href="https://boot.pbstck.com/v1/tag/d7f7fa8d-5918-4306-834c-b734d9e6f9a7" as="script"><link rel="preload" href="https://00917082-71e9-498e-8343-00c3df06b798.edge.permutive.app/00917082-71e9-498e-8343-00c3df06b798-web.js" as="script"><link rel="preload" href="https://btloader.com/tag?o=5684350990417920&amp;upapi=true" as="script"><link rel="preload" href="https://www.googletagmanager.com/gtag/js?id=G-0CPE0JFSCT" as="script"><link rel="preload" href="https://cdn.pbxai.com/736376db-e1cc-45b9-91e1-f3ccf5a10d38.js" as="script"><link rel="preload" href="https://z.moatads.com/networknheader13924283968/moatheader.js" as="script"><link rel="preload" href="https://securepubads.g.doubleclick.net/tag/js/gpt.js" as="script">
            <script src="https://sb.scorecardresearch.com/cs/25110922/beacon.js" async="" nnid="nn-15f9e800"></script><script async="" type="text/javascript" src="https://static.kueezrtb.com/js/latest.js?_=1732627101178"></script><script src="https://static.anonymised.io/light/loader.js" async="" nnid="nn-482cb016" id="idward-plugin-js" idw_client_id="NTU=" idw_hide_button="true"></script><script src="https://boot.pbstck.com/v1/tag/d7f7fa8d-5918-4306-834c-b734d9e6f9a7" async="" nnid="nn-5abc280b"></script><script async="" src="https://c.amazon-adsystem.com/aax2/apstag.js"></script><script src="https://00917082-71e9-498e-8343-00c3df06b798.edge.permutive.app/00917082-71e9-498e-8343-00c3df06b798-web.js" async="" nnid="nn-15fa89e9"></script><script src="https://btloader.com/tag?o=5684350990417920&amp;upapi=true" async="" nnid="nn-78bf31fb"></script><script src="https://cdn.privacy-mgmt.com/unified/wrapperMessagingWithoutDetection.js" async="" nnid="nn-31ce57da"></script><script src="https://www.googletagmanager.com/gtag/js?id=G-0CPE0JFSCT" async="" nnid="nn-77ed23dc"></script><script src="https://kumo.network-n.com/prebid.php?v=8.51.0&amp;adapters=adagio,triplelift,ix,rubicon,criteo,pubmatic,rise,medianet,kueezrtb,gumgum&amp;with-exact-module=permutiveRtdProvider,priceFloors,kueezRtbBidAdapter,pubxaiAnalyticsAdapter,identityLinkIdSystem,id5IdSystem,sharedIdSystem,unifiedIdSystem,criteoIdSystem" async="" nnid="nn-12fbe082"></script><script src="https://cdn.pbxai.com/736376db-e1cc-45b9-91e1-f3ccf5a10d38.js" nnid="nn-6ba6696"></script><script src="https://scripts.webcontentassessor.com/scripts/65a64e4c44bb1fda06831d6686c29ce690ecd6d5d8c6752a75fc7feed5f1f811" nnid="nn-a52e1f8"></script><script src="https://securepubads.g.doubleclick.net/tag/js/gpt.js" async="" nnid="nn-6a5e7fd8"></script><script src="https://kumo.network-n.com/dist/1.54.6/solar-mobile.js" async="" nnid="nn-65496087"></script><script src="https://kumo.network-n.com/dist/1.54.6/refresh.js" async="" nnid="nn-d444902"></script><script src="https://kumo.network-n.com/dist/1.54.6/request-manager.js" async="" nnid="nn-2462e8ea"></script><script src="https://kumo.network-n.com/dist/1.54.6/quantcast.js" async="" nnid="nn-226e70f7"></script><script src="https://kumo.network-n.com/dist/1.54.6/primis.js" async="" nnid="nn-614637a5"></script><script src="https://kumo.network-n.com/dist/1.54.6/gpt-positions.js" async="" nnid="nn-7185788f"></script><script src="https://kumo.network-n.com/dist/1.54.6/galaxy-board.js" async="" nnid="nn-22dc72ec"></script><script src="https://kumo.network-n.com/dist/1.54.6/celtra-bfab.js" async="" nnid="nn-d065c80"></script><script src="https://kumo.network-n.com/dist/1.54.6/anonymised.js" async="" nnid="nn-339269d4"></script><script src="https://kumo.network-n.com/dist/1.54.6/analytics.js" async="" nnid="nn-3ff01f3"></script><script src="https://kumo.network-n.com/dist/1.54.6/pubstack.js" async="" nnid="nn-6f0d1916"></script><script src="https://kumo.network-n.com/dist/1.54.6/prebid.js" async="" nnid="nn-7ae12a3b"></script><script src="https://kumo.network-n.com/dist/1.54.6/amazon.js" async="" nnid="nn-192d4371"></script><script src="https://kumo.network-n.com/dist/1.54.6/permutive.js" async="" nnid="nn-6a0309b0"></script><script src="https://kumo.network-n.com/dist/1.54.6/gpt.js" async="" nnid="nn-4216a7d2"></script><script src="https://kumo.network-n.com/dist/1.54.6/tagging.js" async="" nnid="nn-4d3a091c"></script><script src="https://kumo.network-n.com/dist/1.54.6/comscore.js" async="" nnid="nn-3bf88124"></script><script src="https://kumo.network-n.com/dist/1.54.6/mediatrust.js" async="" nnid="nn-5b1c5781"></script><script src="https://kumo.network-n.com/dist/1.54.6/blockthrough.js" async="" nnid="nn-675b3cdd"></script><script src="https://kumo.network-n.com/dist/1.54.6/cmp-sourcepoint.js" async="" nnid="nn-45beeeab"></script><script>window.AdSlots = window.AdSlots || {cmd: []};</script>
            <script async="" src="https://kumo.network-n.com/dist/app.js" site="pcgamebenchmark"></script>

        <!-- Start Permutive -->
        <link rel="preconnect" href="https://securepubads.g.doubleclick.net/" crossorigin="">
            <script>
            window.AdSlots.meta = {"schema":{"page":{"content":{"headline":"World of Warcraft: Classic System Requirements","type":"game","hardware":""},"game":{"publisher":"","title":"World of Warcraft: Classic","genre":"","genres":[]},"user":{"loginstatus":false},"page_type":"Benchmark"}}};
            console.log(window.AdSlots.meta);
        </script>
                <!-- End Permutive -->
        <title>World of Warcraft: Classic System Requirements - Can I Run It? - PCGameBenchmark</title>

        <meta name="description" content="World of Warcraft: Classic System Requirements - full specs, system checker and the gaming PC setup you need.">
        <meta property="og:type" content="website">
        <meta property="og:title" content="World of Warcraft: Classic System Requirements - Can I Run It? - PCGameBenchmark">
        <meta property="og:description" content="World of Warcraft: Classic system requirements 2024 - can your PC run World of Warcraft: Classic? What is your PCGameBenchmark rating? #pcgaming">
        <meta property="og:site_name" content="PCGameBenchmark">
        <meta property="og:url" content="https://www.pcgamebenchmark.com/world-of-warcraft-classic-system-requirements">
                <meta property="og:image" content="https://www.pcgamebenchmark.com/world-of-warcraft-classic-system-requirements-graph.png">
        <meta property="og:image:width" content="600">
        <meta property="og:image:height" content="480">
        <meta property="og:image:type" content="image/png">
                        <link rel="canonical" href="https://www.pcgamebenchmark.com/world-of-warcraft-classic-system-requirements">
                <meta property="twitter:site" content="@pcgamebenchmark">
        <meta property="twitter:creator" content="@pcgamebenchmark">
                        <meta name="application-name" content="PCGameBenchmark">
        <meta name="theme-color" content="#151515">
        <style>
            body{font-family:Tahoma,sans-serif;font-size:16px;line-height:24px}:root{--primary-color:#212121}#head{position:fixed;top:0;width:100%;height:60px;z-index:100;background-color:#141414;transition:box-shadow .2s ease}#head .container{padding:0}#open-menu,#open-search{color:#eee;height:60px;background:0 0;border:0;font-size:20px;width:60px;display:block}#open-menu{float:left}#open-search{float:right}#head-rate{display:none}@media (min-width:700px){#head{height:70px}#open-menu{height:70px}#open-search{display:none}.system-requirements-aspect-ratio-box-inside .lazy-load{width:200px;height:94px}}@media (min-width:1300px){#head{z-index:102}#head .container{padding:0 20px}#open-menu{display:none}}@media (max-width:1300px){#head-buttons{display:none!important}#mobile-nav{overflow-y:scroll;height:100vh}#mobile-nav li{list-style-type:none}#mobile-nav li.spacer{height:300px}}@media (min-width:1300px){#head-buttons{display:flex;gap:5px;margin:15px 0;top:1px;position:relative;min-height:34px}#head-buttons a{display:inline-flex;font-size:14px;height:33px}#head-buttons .button{padding:5px 10px;border:1px solid #141414}#head-buttons .button.ovwlf{padding:5px 10px 5px 0!important}#head-buttons img{vertical-align:middle;padding-bottom:3px}}@media (min-width:1300px){#search{position:unset!important}}@media (min-width:700px) and (max-width:1300px){header #search{display:block;padding:20px 150px 20px 0;margin-left:330px;position:unset;min-height:60px}#content{padding-top:0}}@media (min-width:700px){#head-rate{margin:-40px 32px}#social{margin-top:-58px}#nav{margin-top:0!important}}#logo{float:left;height:12px}#logo img{height:12px;margin:24px 0}@media (min-width:700px){#logo{height:16px}#logo img{margin:27px 0;height:16px}}#search{display:none;position:fixed;top:0;right:0;left:0;height:60px;z-index:100}#search input{height:60px;font-size:16px}#search.visible{display:block}@media (min-width:700px){#search{display:inline-block;padding:15px 15px}#search input{height:33px;font-size:16px}#search input:not(:focus){border-color:#0d0d0d}}@media (min-width:1300px){#search{padding-top:15px;width:390px;margin:0 auto;left:0;right:0}}#social{line-height:60px;font-size:18px}#social a{text-decoration:none;color:#40c4ff}#social a:not(:last-of-type){margin-right:8px}@media (min-width:700px){#social{display:inline-block;font-size:24px;line-height:70px;margin-right:30px}}@media (min-width:1300px){#social{margin-right:0}}ul.navmenu{display:flex;flex-wrap:wrap}ul.navmenu li{width:auto!important;display:flex;flex-direction:column;line-height:2rem}#nav{position:fixed;top:0;right:20%;bottom:0;left:0;max-width:300px;transform:translateX(-150%);transition:transform .2s ease-in-out;background:#212121;box-shadow:10px 0 110px 0 #212121}#nav.visible{transform:translateX(0);z-index:10}#nav .container{padding:0}#nav ul{list-style:none;padding:0;margin-bottom:0}#nav li{margin-bottom:0}#nav .item{border-bottom:solid 1px #2b2b2b;font-family:"Trebuchet MS",sans-serif;text-transform:uppercase;min-height:32px;flex-grow:1}#nav .item a{display:block;padding:20px 30px;text-decoration:none;color:#ebebeb}#nav .item span.new-icon{height:16px;width:16px}#nav .item span.new-icon.cpu{background-image:url(/img/icons/cpu.svg)}#nav .item span.new-icon.display{background-image:url(/img/icons/display.svg)}#nav .item span.new-icon.computer{background-image:url(/img/icons/computer.svg)}#nav .item span.new-icon.keyboard{background-image:url(/img/icons/keyboard.svg)}#nav .item span.new-icon.controller{background-image:url(/img/icons/videogame.svg)}#nav .item span.new-icon.gpu{background-image:url(/img/icons/graphic-card.svg)}#nav .item span.new-icon.headset{background-image:url(/img/icons/headset_mic.svg)}#nav .item span.new-icon.laptop{background-image:url(/img/icons/laptop_chromebook.svg)}#nav .item span.new-icon.mouse{background-image:url(/img/icons/mouse.svg)}#nav .item span.new-icon.notice{background-image:url(/img/icons/notice.svg)}#nav .item.active{background:#1c1c1c}#close-menu{width:100%;height:60px;background:#353535;color:#ebebeb;border:0;font-family:Tahoma,sans-serif;font-size:14px}#close-menu span{margin-right:8px}@media (min-width:1300px){#nav{position:relative;top:-3px;width:100%;height:auto;max-width:none;background:#121212;transform:translateX(0);transition:none;box-shadow:none;border-top:1px solid #0d0d0d;margin-top:70px;transition:height 1s ease}#nav .item{border:0;width:auto;overflow:hidden}#nav .item a{font-size:16px;padding:0 16px;border:solid 1px #0f0f0f;border-top:0;border-bottom:0;text-transform:none;transition:background .2s ease}#nav .item a,#nav .item a:visited{color:#ebebeb}#nav .item a:hover,#nav .item.active>a{background:#141414;color:#f0f0f0}#close-menu{display:none}}@media (min-width:1300px){#nav-rate{display:none}}@media only screen and (max-width:7698px){#nn_mobile_lb1_wrap{background:#fff;position:fixed;bottom:0;width:100%;z-index:1}#nn_mobile_lb1{bottom:5px;z-index:2}}@media only screen and (min-width:900px){.bfa-mini #nn_lb1{min-height:90px}.bfa-loaded:not(.bfa-mini) header{position:fixed;top:250px;width:100%;z-index:1000;background:#000}.bfa-loaded:not(.bfa-mini) #content{margin-top:140px}}#nn_skinl{width:301px;height:970px;z-index:3;position:fixed;left:50%;margin-left:-787px}#nn_skinr{width:300px;height:970px;z-index:3;position:fixed;left:50%;margin-left:485px}.nn_mobile_mpu1_container{width:336px;height:600px;margin:auto}.nn_mobile_mpu1_container #nn_mobile_mpu1{width:336px;text-align:center;position:sticky;top:65px;bottom:20px}@media only screen and (min-width:769px){#nn_mpu1{display:flex;justify-content:center;margin-bottom:20px;min-height:250px;max-width:100%;overflow:hidden}.nova_wrapper{margin-bottom:20px;width:100%;min-height:244px}#nn_mobile_lb1_wrap{display:none}#nn_skinr{min-width:300px;text-align:left}#nn_skinl{min-width:300px;text-align:right}body.bfa-sticky-leaderboard #content{padding-top:385px}header{position:fixed;width:100%;background:#111;z-index:10}}#nn_mobile_mpu1{text-align:center;margin-bottom:20px}@media only screen and (max-width:900px){.article.home{clear:both}#nn_mobile_mpu1{margin-bottom:20px;min-height:250px}.nova_wrapper{margin-bottom:20px;width:100%;min-height:250px}#nn_mobile_lb1{padding:0 0 5px 0}#nn_mobile_lb1_wrap{text-align:center;background:#fff}#details-meta{width:100%!important}}.cmpwelcomeprps{line-height:1}.mpu_wrapper{height:600px;margin-bottom:20px}.mpu_wrapper.tall{height:900px}.mpu_wrapper.extra_tall{height:1200px}.amazon-disclaimer{line-height:100%!important;color:#616161}@media only screen and (min-width:970px){body.bfa-loaded:not(.bfa-mini) #head{padding-top:250px}body.bfa-loaded:not(.bfa-mini) #content{padding-top:0}#head{position:fixed!important;padding-top:0!important}}.constellation_widget_wrapper{margin-bottom:20px!important}.constellation_deals-title{white-space:nowrap;text-overflow:ellipsis}.basic-lightbox-container{text-align:center;background-color:#212121;padding:30px}.basic-lightbox-container #basic-lightbox-close{height:25px;width:25px;top:-40px;right:-70px;position:absolute;border-radius:50%;font-size:200%;font-family:unset;background:unset;border:none;-webkit-text-decoration:solid;text-decoration:solid}@media (max-width:1300px){.basic-lightbox-container #basic-lightbox-close{right:35px}}.constellation_deals_wrapper.no-filter .constellation_deals_filters{display:none}@media only screen and (min-width:900px){body{padding-top:110px}body.nn-lb-sticky #nn_astro_wrapper{position:fixed;top:134px;left:50%;transform:translate(-50%);z-index:1000}#nn_skinl,#nn_skinr{top:110px}#nn_mobile_mpu1{display:none}}@media only screen and (max-width:1299px){body{padding-top:70px}body.nn-lb-sticky #nn_astro_wrapper{position:fixed;top:70px;left:50%;transform:translate(-50%);z-index:1000}#nn_skinl,#nn_skinr{top:70px}}@media only screen and (min-width:900px){#nn_astro_wrapper{height:250px;box-sizing:content-box;vertical-align:middle;text-align:center;position:relative;width:970px;margin:0 auto;display:flex;justify-content:center;align-items:center}body.bfa-collapsed header,body.bfa-maximum header{padding-top:0!important}body.bfa-collapsed #head,body.bfa-maximum #head{top:0!important}body.bfa-collapsed #nn_astro_wrapper,body.bfa-maximum #nn_astro_wrapper{padding-top:0;height:0}#nn_skinl,#nn_skinr{width:301px;height:970px;z-index:10;position:fixed;left:50%}#nn_skinl{margin-left:-786px}#nn_skinr{margin-left:485px}div.side.home>#nn_mpu1{display:flex;justify-content:center;position:sticky;top:140px}.nn_mobile_mpu1_container{display:none}}@media only screen and (max-width:900px){#nn_mpu1{display:none}}@media only screen and (min-width:769px){.article .placement,.home .placement{min-height:247px}#list-sidebar .placement,#sidebar-content .placement,.four.columns .placement,.side .placement{min-height:255px}.capsule-wrap,.product-list .left{max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center;background:#fff}.capsule-wrap img{height:auto!important;width:auto;max-height:130px!important}}        </style>
        <link rel="stylesheet" href="https://www.pcgamebenchmark.com/dist/main.css?v=1.0.32">
        <link rel="shortcut icon" href="https://www.pcgamebenchmark.com/favicon.ico">
        <link rel="icon" href="https://www.pcgamebenchmark.com/favicon.png">
        <meta name="am-api-token" content="SMCRugkPe">
        <script type="text/javascript" src="//script.crazyegg.com/pages/scripts/0017/2880.js" async="async"></script>
        <link rel="stylesheet" type="text/css" href="https://constellation.networknmedia.com/wp-content/plugins/constellation-widgets/assets/app.css"><meta http-equiv="origin-trial" content="AlK2UR5SkAlj8jjdEc9p3F3xuFYlF6LYjAML3EOqw1g26eCwWPjdmecULvBH5MVPoqKYrOfPhYVL71xAXI1IBQoAAAB8eyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiV2ViVmlld1hSZXF1ZXN0ZWRXaXRoRGVwcmVjYXRpb24iLCJleHBpcnkiOjE3NTgwNjcxOTksImlzU3ViZG9tYWluIjp0cnVlfQ=="><meta http-equiv="origin-trial" content="Amm8/NmvvQfhwCib6I7ZsmUxiSCfOxWxHayJwyU1r3gRIItzr7bNQid6O8ZYaE1GSQTa69WwhPC9flq/oYkRBwsAAACCeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiV2ViVmlld1hSZXF1ZXN0ZWRXaXRoRGVwcmVjYXRpb24iLCJleHBpcnkiOjE3NTgwNjcxOTksImlzU3ViZG9tYWluIjp0cnVlfQ=="><meta http-equiv="origin-trial" content="A9wSqI5i0iwGdf6L1CERNdmsTPgVu44ewj8QxTBYgsv1LCPUVF7YmWOvTappqB1139jAymxUW/RO8zmMqo4zlAAAAACNeyJvcmlnaW4iOiJodHRwczovL2RvdWJsZWNsaWNrLm5ldDo0NDMiLCJmZWF0dXJlIjoiRmxlZGdlQmlkZGluZ0FuZEF1Y3Rpb25TZXJ2ZXIiLCJleHBpcnkiOjE3MzY4MTI4MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9"><meta http-equiv="origin-trial" content="A+d7vJfYtay4OUbdtRPZA3y7bKQLsxaMEPmxgfhBGqKXNrdkCQeJlUwqa6EBbSfjwFtJWTrWIioXeMW+y8bWAgQAAACTeyJvcmlnaW4iOiJodHRwczovL2dvb2dsZXN5bmRpY2F0aW9uLmNvbTo0NDMiLCJmZWF0dXJlIjoiRmxlZGdlQmlkZGluZ0FuZEF1Y3Rpb25TZXJ2ZXIiLCJleHBpcnkiOjE3MzY4MTI4MDAsImlzU3ViZG9tYWluIjp0cnVlLCJpc1RoaXJkUGFydHkiOnRydWV9"><script src="https://securepubads.g.doubleclick.net/pagead/managed/js/gpt/m202411180101/pubads_impl.js" async=""></script><script type="text/javascript" data-cfasync="false" crossorigin="anonymous" src="https://static.kueezrtb.com/latest.js" id="kueezrtb_latest"></script><style>[id^=primis_playerSekindoSPlayer]{margin-bottom:var(--cmpHeight)!important}</style><style>@media only screen and (min-width:900px){.bfa-maximum div[id*=primis_playerSekindoSPlayer][style*="position: fixed"]{top:var(--nnVideoOffsetTop,140px)!important}.bfa-loaded.bfa-collapsed div[id*=primis_playerSekindoSPlayer][style*="position: fixed"]{bottom:100px!important;top:auto!important}}</style><style>.nn-sticky{width:100%;display:flex;justify-content:center;position:fixed;bottom:var(--cmpHeight,0);left:0;right:0;z-index:9999;pointer-events:none}.nn-sticky>div{margin:0;padding:0;position:relative;z-index:9999;pointer-events:auto}.nn-sticky .close-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:40px;height:40px;position:absolute;right:-5px;top:0;margin-top:-40px;border-radius:40px;cursor:pointer;outline:none;background:#555;z-index:9999;pointer-events:auto}.nn-sticky .close-btn:after{content:"";background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Cpath d='M10 10l20 20m0-20L10 30' stroke='%23fff' stroke-width='4'/%3E%3C/svg%3E") no-repeat 50% 50%;background-size:25px;width:100%;height:100%;display:block}.nn_sticky_ad>div{position:-webkit-sticky!important;position:sticky!important;top:15px;min-height:0!important}</style><style>@media only screen and (max-width:480px){.solar-loaded div[id*=primis_playerSekindoSPlayer]{bottom:auto!important}.solar-loaded div[id*=primis_playerSekindoSPlayer][style*="overflow: visible; position: fixed"]{bottom:200px!important}.solar-loaded .avp-floating-container.avp-bottom-right{bottom:300px!important}}</style><style>.galaxy-maximum div[id*=primis_playerSekindoSPlayer][style*="position: fixed"]{bottom:510px!important}.galaxy-loaded div[id*=primis_playerSekindoSPlayer][style*="position: fixed"]{bottom:265px!important;top:auto!important}.galaxy-loaded .notranslate.celtra-placement-sticky img{display:none}</style><script charset="utf-8" src="https://cdn.privacy-mgmt.com/unified/4.27.2/gdpr-tcf.00cd3b6a2692e330e4ec.bundle.js"></script><script charset="utf-8" src="https://cdn.privacy-mgmt.com/unified/4.27.2/usnat-uspapi.25b8b71f04c7ff439a79.bundle.js"></script><script src="https://static.anonymised.io/light/bundle.js?v=0.3.19" async="" nnid="nn-482cb016" id="idward-plugin-js" idw_client_id="NTU=" idw_hide_button="true"></script><script type="text/javascript">(function() { var load = function() {!function(e){"use strict";const t=/pbstck:debug/.test(window.location.href),i=!!window.localStorage.getItem("pbstck"),n=(e,n,...o)=>{(t||i)&&console[e](`[pbstckUserSessions-b6ed2f5] [${performance.now().toFixed(2)}] ${n}`,...o.length?o:"")},o=(e,...t)=>{n("warn",e,...t)},r=(e,...t)=>{n("log",e,...t)},a=(e,...t)=>{n("error",e,...t)},s=["pbstck:","pbstck_context:"],c=()=>{const e=document.getElementsByTagName("meta"),t=Array.from(e).filter((e=>d(s,e.name))),i=new Map;t.forEach((e=>{const t=u(e.name);i.has(t)&&o(`Custom dim ${t} is present many times`),i.size<20?i.set(t,e.content):o(`Skipping custom dim ${t} with ${e.content}: limit of 20 keys exceeded`)}));const n=Object.assign({},...Array.from(i.entries()).map((([e,t])=>({[e]:t}))));return i.size>0&&r("Custom dim found :",n),n},u=e=>e.replace(/^\w+:/,""),d=(e,t)=>e.some((e=>t.startsWith(e)));var l,p;!function(e){e.HISTORY_MUTATION="_pbstck_historyMutation",e.NEW_PAGE="_pbstck_pageView",e.SESSION_TRACKING_AUTHORIZED="_pbstck_sessionTrackingAuthorized",e.SESSION_TRACKING_DECLINED="_pbstck_sessionTrackingDeclined"}(l||(l={})),function(e){e.REPLACE_STATE="replaceState",e.PUSH_STATE="pushState"}(p||(p={}));const w=e=>{window.history[e]=new Proxy(window.history[e],{apply(t,i,n){const o=window.location.href,r=t.apply(i,n),a=new CustomEvent(l.HISTORY_MUTATION,{detail:{referrer:o,stateObj:n[0],title:n[1],url:n[2],type:e}});return dispatchEvent(a),r}})};for(var m,f=[],b=0;b<256;++b)f.push((b+256).toString(16).slice(1));var h=new Uint8Array(16);function g(){if(!m&&!(m="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return m(h)}var v={randomUUID:"undefined"!=typeof crypto&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};function y(e,t,i){if(v.randomUUID&&!t&&!e)return v.randomUUID();var n=(e=e||{}).random||(e.rng||g)();return n[6]=15&n[6]|64,n[8]=63&n[8]|128,function(e,t=0){return(f[e[t+0]]+f[e[t+1]]+f[e[t+2]]+f[e[t+3]]+"-"+f[e[t+4]]+f[e[t+5]]+"-"+f[e[t+6]]+f[e[t+7]]+"-"+f[e[t+8]]+f[e[t+9]]+"-"+f[e[t+10]]+f[e[t+11]]+f[e[t+12]]+f[e[t+13]]+f[e[t+14]]+f[e[t+15]]).toLowerCase()}(n)}const k=e=>{window.__pbstck_consent=e},S=e=>{window.__pbstck_session_tracking=e},T=()=>window.__pbstck_consent,E=()=>window.__pbstck_session_tracking,_=e=>{if("string"==typeof e){const t=e.split(/:\/\/(www.)?/g);return t.length<=1?null:t[t.length-1].split("/")[0]}const t=e.hostname;return t.startsWith("www.")?t.substring(4):t};var x;!function(e){e.DEV="dev",e.BETA="beta",e.PROD="prod"}(x||(x={}));class I extends Error{message="unknown session error"}class C extends I{message="session init error"}class A extends I{message="session parse error"}class N extends I{message="session not found error"}class O extends I{message="session obsolete error"}const D=Array(),P=(e,t)=>{const i=e.env===x.PROD?"":`_${e.env}`;return`_pbstck_session_${t.tagId.substring(0,8)}${i}`},L=e=>Date.now()-e>18e5,R=(e,t)=>{try{const n=localStorage.getItem(P(e,t));if(n){const e=JSON.parse(atob(n));if(i=e,D.every((e=>e in i)))return e;throw new A}throw new N}catch(e){if(e instanceof I)throw e;throw new A}var i},U=(e,t)=>{try{const i=R(e,t);return i.pageCount++,localStorage.setItem(P(e,t),btoa(JSON.stringify(i))),i.pageCount}catch(e){if(e instanceof I)throw e;throw new I}},M=(e,t)=>{const i=new URL(window.location.href),n={id:y(),lastUpdateTimeMs:Date.now(),pageCount:0,lastUrlVisited:window.location.href,utmSource:i.searchParams.get("utm_source")||null,utmCampaign:i.searchParams.get("utm_campaign")||null,utmContent:i.searchParams.get("utm_content")||null,utmTerm:i.searchParams.get("utm_term")||null,utmMedium:i.searchParams.get("utm_medium")||null};try{localStorage.setItem(P(e,t),btoa(JSON.stringify(n)))}catch(e){throw new C}},$=[],q=(e,t)=>{const i=$.map((i=>F(i,e,t)));if(i.length){const n=JSON.stringify(i),o=`${e.gateway}/page?${(()=>{const e=document.querySelector('meta[name="pbstck:kleanads-version"]')?.getAttribute("content")??"none",i=document.querySelector('meta[name="pbstck:config-version"]')?.getAttribute("content")??"none";return`tId=${t.tagId}&v=${e}&s=${i}&c=1`})()}`;navigator.sendBeacon&&navigator.sendBeacon(o,n)||fetch(o,{body:n,method:"POST",keepalive:!0}),r("[page] event queue dispatched",JSON.stringify(i)),$.length=0}},B=(e,t,i)=>{try{const o=V(t,i);try{const i=R(e,t);L(i.lastUpdateTimeMs)&&q(e,t)}catch(e){r("[page] session was not found or invalid, adding the new page to the queue anyway")}(n=o,$.push(n),r("[page] event queued",n),$.length)>=20&&q(e,t)}catch(e){e instanceof I?a(`[page] new page : ${e.message}`):a("[page] unknown error",e)}var n},H=(e,t)=>{B(e,t),window.addEventListener(l.SESSION_TRACKING_AUTHORIZED,(i=>{r(`[page] ${l.SESSION_TRACKING_AUTHORIZED}`,i);try{((e,t)=>{try{const i=R(e,t);if(L(i.lastUpdateTimeMs))throw new O;i.lastUpdateTimeMs=Date.now(),i.lastUrlVisited=window.location.href,localStorage.setItem(P(e,t),btoa(JSON.stringify(i)))}catch(i){if(i instanceof N||i instanceof A)return void M(e,t);if(i instanceof I)throw i;throw new I}})(e,t),q(e,t)}catch(i){i instanceof O&&(M(e,t),q(e,t))}})),window.addEventListener(l.SESSION_TRACKING_DECLINED,(i=>{r(`[page] ${l.SESSION_TRACKING_DECLINED}`,i),((e,t)=>{try{localStorage.removeItem(P(e,t))}catch(e){}})(e,t),q(e,t)})),window.addEventListener(l.HISTORY_MUTATION,(i=>{r(`[page] ${l.HISTORY_MUTATION}`,i),i.detail?.referrer.href!==window.location.href&&B(e,t,i.detail?.referrer)})),window.addEventListener("popstate",(i=>{B(e,t)})),window.document.addEventListener("visibilitychange",(()=>{r(`[page] visibility changed to ${document.visibilityState}`),"visible"!==document.visibilityState&&q(e,t)})),window.addEventListener("pagehide",(()=>{q(e,t)})),window.addEventListener("beforeunload",(()=>{q(e,t)}))},V=(e,t)=>{const i=new URL(window.location.href);return{...e,pageId:z(),pageCount:1,domain:_(window.location)??"",href:(n=window.location,n&&n.protocol&&n.host&&n.pathname?`${n.protocol}//${n.host}${n.pathname}`:"unknown"),referrer:_(t??document.referrer),consent:T(),userSessionId:null,sessionTracking:E(),utmSource:i.searchParams.get("utm_source"),utmCampaign:i.searchParams.get("utm_campaign"),utmContent:i.searchParams.get("utm_content"),utmTerm:i.searchParams.get("utm_term"),utmMedium:i.searchParams.get("utm_medium")};var n},F=(e,t,i)=>{try{const n=E();return{...e,pageCount:n?U(t,i):e.pageCount,userSessionId:n?R(t,i).id:null,consent:T(),sessionTracking:n,utmSource:n?R(t,i).utmSource:e.utmSource,utmCampaign:n?R(t,i).utmCampaign:e.utmCampaign,utmContent:n?R(t,i).utmContent:e.utmContent,utmTerm:n?R(t,i).utmTerm:e.utmTerm,utmMedium:n?R(t,i).utmMedium:e.utmMedium}}catch(t){if(t instanceof N)return e;t instanceof I?a(`[session] ${t.message}`):a("[session] unknown error",t)}return e},z=()=>{const e=y();return window.__pbstck_page_id=e,e};var G;!function(e){e[e.DENIED=0]="DENIED",e[e.GRANTED=1]="GRANTED",e[e.UNAVAILABLE=2]="UNAVAILABLE"}(G||(G={}));const j=async(e,t)=>{k(G.UNAVAILABLE),S(!1);let i=0;try{(await W(e))("addEventListener",2,(n=>{if(n){if("tcloaded"===n.eventStatus||"useractioncomplete"===n.eventStatus){k(X(n));const e=J(n)&&!t.sessionTrackingDisabled;S(e),e?dispatchEvent(new CustomEvent(l.SESSION_TRACKING_AUTHORIZED)):dispatchEvent(new CustomEvent(l.SESSION_TRACKING_DECLINED))}}else r(`[consent] wrong tcdata ${n}, waiting 200ms`),setTimeout((()=>{i++,100===i&&o("[consent] unable to retrieve cmp after 100 tries"),j(e,t)}),200)}))}catch(e){a("[consent] Error while loading tcf api")}},K=(e,t,i)=>{if(e.__tcfapi){const n=e.__tcfapi;(e=>"function"==typeof e)(e.__tcfapi)?t(n):i("__tcfapi is not a function")}else setTimeout((()=>K(e,t,i)),100)},W=e=>new Promise(((t,i)=>K(e,t,i))),X=e=>e.purpose.consents&&e.purpose.consents[1]&&e.purpose.consents[2]&&e.purpose.consents[3]&&e.purpose.consents[4]&&e.purpose.consents[7]?G.GRANTED:G.DENIED,J=e=>e.purpose.consents[1]&&e.purpose.consents[7]&&e.purpose.consents[8]?(r("[consent] SessionTracking obtained"),!0):(r("[consent] SessionTracking declined"),!1);var Y,Z,Q,ee,te,ie=-1,ne=function(e){addEventListener("pageshow",(function(t){t.persisted&&(ie=t.timeStamp,e(t))}),!0)},oe=function(){var e=self.performance&&performance.getEntriesByType&&performance.getEntriesByType("navigation")[0];if(e&&e.responseStart>0&&e.responseStart<performance.now())return e},re=function(){var e=oe();return e&&e.activationStart||0},ae=function(e,t){var i=oe(),n="navigate";return ie>=0?n="back-forward-cache":i&&(document.prerendering||re()>0?n="prerender":document.wasDiscarded?n="restore":i.type&&(n=i.type.replace(/_/g,"-"))),{name:e,value:void 0===t?-1:t,rating:"good",delta:0,entries:[],id:"v4-".concat(Date.now(),"-").concat(Math.floor(8999999999999*Math.random())+1e12),navigationType:n}},se=function(e,t,i){try{if(PerformanceObserver.supportedEntryTypes.includes(e)){var n=new PerformanceObserver((function(e){Promise.resolve().then((function(){t(e.getEntries())}))}));return n.observe(Object.assign({type:e,buffered:!0},i||{})),n}}catch(e){}},ce=function(e,t,i,n){var o,r;return function(a){t.value>=0&&(a||n)&&((r=t.value-(o||0))||void 0===o)&&(o=t.value,t.delta=r,t.rating=function(e,t){return e>t[1]?"poor":e>t[0]?"needs-improvement":"good"}(t.value,i),e(t))}},ue=function(e){requestAnimationFrame((function(){return requestAnimationFrame((function(){return e()}))}))},de=function(e){document.addEventListener("visibilitychange",(function(){"hidden"===document.visibilityState&&e()}))},le=function(e){var t=!1;return function(){t||(e(),t=!0)}},pe=-1,we=function(){return"hidden"!==document.visibilityState||document.prerendering?1/0:0},me=function(e){"hidden"===document.visibilityState&&pe>-1&&(pe="visibilitychange"===e.type?e.timeStamp:0,be())},fe=function(){addEventListener("visibilitychange",me,!0),addEventListener("prerenderingchange",me,!0)},be=function(){removeEventListener("visibilitychange",me,!0),removeEventListener("prerenderingchange",me,!0)},he=function(){return pe<0&&(pe=we(),fe(),ne((function(){setTimeout((function(){pe=we(),fe()}),0)}))),{get firstHiddenTime(){return pe}}},ge=function(e){document.prerendering?addEventListener("prerenderingchange",(function(){return e()}),!0):e()},ve=[1800,3e3],ye=function(e,t){t=t||{},ge((function(){var i,n=he(),o=ae("FCP"),r=se("paint",(function(e){e.forEach((function(e){"first-contentful-paint"===e.name&&(r.disconnect(),e.startTime<n.firstHiddenTime&&(o.value=Math.max(e.startTime-re(),0),o.entries.push(e),i(!0)))}))}));r&&(i=ce(e,o,ve,t.reportAllChanges),ne((function(n){o=ae("FCP"),i=ce(e,o,ve,t.reportAllChanges),ue((function(){o.value=performance.now()-n.timeStamp,i(!0)}))})))}))},ke=[.1,.25],Se=0,Te=1/0,Ee=0,_e=function(e){e.forEach((function(e){e.interactionId&&(Te=Math.min(Te,e.interactionId),Ee=Math.max(Ee,e.interactionId),Se=Ee?(Ee-Te)/7+1:0)}))},xe=function(){return Y?Se:performance.interactionCount||0},Ie=function(){"interactionCount"in performance||Y||(Y=se("event",_e,{type:"event",buffered:!0,durationThreshold:0}))},Ce=[],Ae=new Map,Ne=0,Oe=[],De=function(e){if(Oe.forEach((function(t){return t(e)})),e.interactionId||"first-input"===e.entryType){var t=Ce[Ce.length-1],i=Ae.get(e.interactionId);if(i||Ce.length<10||e.duration>t.latency){if(i)e.duration>i.latency?(i.entries=[e],i.latency=e.duration):e.duration===i.latency&&e.startTime===i.entries[0].startTime&&i.entries.push(e);else{var n={id:e.interactionId,latency:e.duration,entries:[e]};Ae.set(n.id,n),Ce.push(n)}Ce.sort((function(e,t){return t.latency-e.latency})),Ce.length>10&&Ce.splice(10).forEach((function(e){return Ae.delete(e.id)}))}}},Pe=function(e){var t=self.requestIdleCallback||self.setTimeout,i=-1;return e=le(e),"hidden"===document.visibilityState?e():(i=t(e),de(e)),i},Le=[200,500],Re=function(e,t){"PerformanceEventTiming"in self&&"interactionId"in PerformanceEventTiming.prototype&&(t=t||{},ge((function(){var i;Ie();var n,o=ae("INP"),r=function(e){Pe((function(){e.forEach(De);var t=function(){var e=Math.min(Ce.length-1,Math.floor((xe()-Ne)/50));return Ce[e]}();t&&t.latency!==o.value&&(o.value=t.latency,o.entries=t.entries,n())}))},a=se("event",r,{durationThreshold:null!==(i=t.durationThreshold)&&void 0!==i?i:40});n=ce(e,o,Le,t.reportAllChanges),a&&(a.observe({type:"first-input",buffered:!0}),de((function(){r(a.takeRecords()),n(!0)})),ne((function(){Ne=xe(),Ce.length=0,Ae.clear(),o=ae("INP"),n=ce(e,o,Le,t.reportAllChanges)})))})))},Ue=[2500,4e3],Me={},$e=[800,1800],qe=function e(t){document.prerendering?ge((function(){return e(t)})):"complete"!==document.readyState?addEventListener("load",(function(){return e(t)}),!0):setTimeout(t,0)},Be=function(e,t){t=t||{};var i=ae("TTFB"),n=ce(e,i,$e,t.reportAllChanges);qe((function(){var o=oe();o&&(i.value=Math.max(o.responseStart-re(),0),i.entries=[o],n(!0),ne((function(){i=ae("TTFB",0),(n=ce(e,i,$e,t.reportAllChanges))(!0)})))}))},He={passive:!0,capture:!0},Ve=new Date,Fe=function(e,t){Z||(Z=t,Q=e,ee=new Date,je(removeEventListener),ze())},ze=function(){if(Q>=0&&Q<ee-Ve){var e={entryType:"first-input",name:Z.type,target:Z.target,cancelable:Z.cancelable,startTime:Z.timeStamp,processingStart:Z.timeStamp+Q};te.forEach((function(t){t(e)})),te=[]}},Ge=function(e){if(e.cancelable){var t=(e.timeStamp>1e12?new Date:performance.now())-e.timeStamp;"pointerdown"==e.type?function(e,t){var i=function(){Fe(e,t),o()},n=function(){o()},o=function(){removeEventListener("pointerup",i,He),removeEventListener("pointercancel",n,He)};addEventListener("pointerup",i,He),addEventListener("pointercancel",n,He)}(t,e):Fe(t,e)}},je=function(e){["mousedown","keydown","touchstart","pointerdown"].forEach((function(t){return e(t,Ge,He)}))},Ke=[100,300];function We(e,t,i,n){const o=()=>{const n=document.querySelector('meta[name="pbstck:kleanads-version"]')?.getAttribute("content")??"none",o=document.querySelector('meta[name="pbstck:config-version"]')?.getAttribute("content")??"none";return`${e.toLocaleLowerCase()}=${t.toFixed(3)}&tId=${i.tagId}&v=${n}&s=${o}&c=1`},r=E(),a=JSON.stringify([{...i,href:window.location.href,name:e,value:t,customFields:{...i.customFields,pageId:window.__pbstck_page_id,pageCount:String(r?R(n,i).pageCount:1),userSessionId:r?R(n,i).id:null,sessionTracking:String(r)}}]);navigator.sendBeacon&&navigator.sendBeacon(`${n.gateway}/web-vitals?${o()}`,a)||fetch(`${n.gateway}/web-vitals?${o()}`,{body:a,method:"POST",keepalive:!0})}const Xe=(e,t)=>{!function(e,t){t=t||{},ye(le((function(){var i,n=ae("CLS",0),o=0,r=[],a=function(e){e.forEach((function(e){if(!e.hadRecentInput){var t=r[0],i=r[r.length-1];o&&e.startTime-i.startTime<1e3&&e.startTime-t.startTime<5e3?(o+=e.value,r.push(e)):(o=e.value,r=[e])}})),o>n.value&&(n.value=o,n.entries=r,i())},s=se("layout-shift",a);s&&(i=ce(e,n,ke,t.reportAllChanges),de((function(){a(s.takeRecords()),i(!0)})),ne((function(){o=0,n=ae("CLS",0),i=ce(e,n,ke,t.reportAllChanges),ue((function(){return i()}))})),setTimeout(i,0))})))}((i=>We("CLS",i.value,t,e))),ye((i=>We("FCP",i.value,t,e))),function(e,t){t=t||{},ge((function(){var i,n=he(),o=ae("LCP"),r=function(e){t.reportAllChanges||(e=e.slice(-1)),e.forEach((function(e){e.startTime<n.firstHiddenTime&&(o.value=Math.max(e.startTime-re(),0),o.entries=[e],i())}))},a=se("largest-contentful-paint",r);if(a){i=ce(e,o,Ue,t.reportAllChanges);var s=le((function(){Me[o.id]||(r(a.takeRecords()),a.disconnect(),Me[o.id]=!0,i(!0))}));["keydown","click"].forEach((function(e){addEventListener(e,(function(){return Pe(s)}),!0)})),de(s),ne((function(n){o=ae("LCP"),i=ce(e,o,Ue,t.reportAllChanges),ue((function(){o.value=performance.now()-n.timeStamp,Me[o.id]=!0,i(!0)}))}))}}))}((i=>We("LCP",i.value,t,e))),function(e,t){t=t||{},ge((function(){var i,n=he(),o=ae("FID"),r=function(e){e.startTime<n.firstHiddenTime&&(o.value=e.processingStart-e.startTime,o.entries.push(e),i(!0))},a=function(e){e.forEach(r)},s=se("first-input",a);i=ce(e,o,Ke,t.reportAllChanges),s&&(de(le((function(){a(s.takeRecords()),s.disconnect()}))),ne((function(){var n;o=ae("FID"),i=ce(e,o,Ke,t.reportAllChanges),te=[],Q=-1,Z=null,je(addEventListener),n=r,te.push(n),ze()})))}))}((i=>We("FID",i.value,t,e))),Re((i=>We("INP",i.value,t,e))),Be((i=>We("TTFB",i.value,t,e)))};var Je,Ye="",Ze="function",Qe="undefined",et="object",tt="string",it="major",nt="model",ot="name",rt="type",at="vendor",st="version",ct="architecture",ut="console",dt="mobile",lt="tablet",pt="smarttv",wt="wearable",mt="embedded",ft="user-agent",bt=500,ht="brands",gt="formFactors",vt="fullVersionList",yt="platform",kt="platformVersion",St="bitness",Tt="sec-ch-ua",Et=Tt+"-full-version-list",_t=Tt+"-arch",xt=Tt+"-"+St,It=Tt+"-form-factors",Ct=Tt+"-"+dt,At=Tt+"-"+nt,Nt=Tt+"-"+yt,Ot=Nt+"-version",Dt=[ht,vt,dt,nt,yt,kt,ct,gt,St],Pt="browser",Lt="cpu",Rt="device",Ut="engine",Mt="os",$t="result",qt="Amazon",Bt="Apple",Ht="ASUS",Vt="BlackBerry",Ft="Google",zt="Huawei",Gt="Lenovo",jt="LG",Kt="Microsoft",Wt="Motorola",Xt="Samsung",Jt="Sharp",Yt="Sony",Zt="Xiaomi",Qt="Zebra",ei="Mobile ",ti=" Browser",ii="Chrome",ni="Firefox",oi="Opera",ri="Facebook",ai="Sogou",si="Windows",ci=typeof window!==Qe&&window.navigator?window.navigator:void 0,ui=ci&&ci.userAgentData?ci.userAgentData:void 0,di=function(e,t){var i={},n=t;if(!wi(t))for(var o in n={},t)for(var r in t[o])n[r]=t[o][r].concat(n[r]?n[r]:[]);for(var a in e)i[a]=n[a]&&n[a].length%2==0?n[a].concat(e[a]):e[a];return i},li=function(e){for(var t={},i=0;i<e.length;i++)t[e[i].toUpperCase()]=e[i];return t},pi=function(e,t){if(typeof e===et&&e.length>0){for(var i in e)if(bi(e[i])==bi(t))return!0;return!1}return!!mi(e)&&-1!==bi(t).indexOf(bi(e))},wi=function(e,t){for(var i in e)return/^(browser|cpu|device|engine|os)$/.test(i)||!!t&&wi(e[i])},mi=function(e){return typeof e===tt},fi=function(e){if(e){for(var t=[],i=vi(/\\?\"/g,e).split(","),n=0;n<i.length;n++)if(i[n].indexOf(";")>-1){var o=ki(i[n]).split(";v=");t[n]={brand:o[0],version:o[1]}}else t[n]=ki(i[n]);return t}},bi=function(e){return mi(e)?e.toLowerCase():e},hi=function(e){return mi(e)?vi(/[^\d\.]/g,e).split(".")[0]:void 0},gi=function(e){for(var t in e){var i=e[t];typeof i==et&&2==i.length?this[i[0]]=i[1]:this[i]=void 0}return this},vi=function(e,t){return mi(t)?t.replace(e,Ye):t},yi=function(e){return vi(/\\?\"/g,e)},ki=function(e,t){if(mi(e))return e=vi(/^\s\s*/,e),typeof t===Qe?e:e.substring(0,bt)},Si=function(e,t){if(e&&t)for(var i,n,o,r,a,s,c=0;c<t.length&&!a;){var u=t[c],d=t[c+1];for(i=n=0;i<u.length&&!a&&u[i];)if(a=u[i++].exec(e))for(o=0;o<d.length;o++)s=a[++n],typeof(r=d[o])===et&&r.length>0?2===r.length?typeof r[1]==Ze?this[r[0]]=r[1].call(this,s):this[r[0]]=r[1]:3===r.length?typeof r[1]!==Ze||r[1].exec&&r[1].test?this[r[0]]=s?s.replace(r[1],r[2]):void 0:this[r[0]]=s?r[1].call(this,s,r[2]):void 0:4===r.length&&(this[r[0]]=s?r[3].call(this,s.replace(r[1],r[2])):void 0):this[r]=s||void 0;c+=2}},Ti=function(e,t){for(var i in t)if(typeof t[i]===et&&t[i].length>0){for(var n=0;n<t[i].length;n++)if(pi(t[i][n],e))return"?"===i?void 0:i}else if(pi(t[i],e))return"?"===i?void 0:i;return t.hasOwnProperty("*")?t["*"]:e},Ei={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},_i={embedded:"Automotive",mobile:"Mobile",tablet:["Tablet","EInk"],smarttv:"TV",wearable:"Watch",xr:["VR","XR"],"?":["Desktop","Unknown"],"*":void 0},xi={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[st,[ot,ei+"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[st,[ot,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[ot,st],[/opios[\/ ]+([\w\.]+)/i],[st,[ot,oi+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[st,[ot,oi+" GX"]],[/\bopr\/([\w\.]+)/i],[st,[ot,oi]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[st,[ot,"Baidu"]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,/(avant|iemobile|slim)\s?(?:browser)?[\/ ]?([\w\.]*)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar)\/([-\w\.]+)/i,/(heytap|ovi)browser\/([\d\.]+)/i,/(weibo)__([\d\.]+)/i],[ot,st],[/\bddg\/([\w\.]+)/i],[st,[ot,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[st,[ot,"UCBrowser"]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[st,[ot,"WeChat"]],[/konqueror\/([\w\.]+)/i],[st,[ot,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[st,[ot,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[st,[ot,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[st,[ot,"Smart "+Gt+ti]],[/(avast|avg)\/([\w\.]+)/i],[[ot,/(.+)/,"$1 Secure"+ti],st],[/\bfocus\/([\w\.]+)/i],[st,[ot,ni+" Focus"]],[/\bopt\/([\w\.]+)/i],[st,[ot,oi+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[st,[ot,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[st,[ot,"Dolphin"]],[/coast\/([\w\.]+)/i],[st,[ot,oi+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[st,[ot,"MIUI"+ti]],[/fxios\/([\w\.-]+)/i],[st,[ot,ei+ni]],[/\bqihu|(qi?ho?o?|360)browser/i],[[ot,"360"+ti]],[/\b(qq)\/([\w\.]+)/i],[[ot,/(.+)/,"$1Browser"],st],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[ot,/(.+)/,"$1"+ti],st],[/samsungbrowser\/([\w\.]+)/i],[st,[ot,Xt+" Internet"]],[/(comodo_dragon)\/([\w\.]+)/i],[[ot,/_/g," "],st],[/metasr[\/ ]?([\d\.]+)/i],[st,[ot,ai+" Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[ot,ai+" Mobile"],st],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345Explorer)[\/ ]?([\w\.]+)/i],[ot,st],[/(lbbrowser|rekonq)/i,/\[(linkedin)app\]/i],[ot],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[ot,ri],st],[/(Klarna)\/([\w\.]+)/i,/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(alipay)client\/([\w\.]+)/i,/(twitter)(?:and| f.+e\/([\w\.]+))/i,/(chromium|instagram|snapchat)[\/ ]([-\w\.]+)/i],[ot,st],[/\bgsa\/([\w\.]+) .*safari\//i],[st,[ot,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[st,[ot,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[st,[ot,ii+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[ot,ii+" WebView"],st],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[st,[ot,"Android"+ti]],[/chrome\/([\w\.]+) mobile/i],[st,[ot,ei+"Chrome"]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[ot,st],[/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i],[st,[ot,ei+"Safari"]],[/iphone .*mobile(?:\/\w+ | ?)safari/i],[[ot,ei+"Safari"]],[/version\/([\w\.\,]+) .*(safari)/i],[st,ot],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[ot,[st,"1"]],[/(webkit|khtml)\/([\w\.]+)/i],[ot,st],[/(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i],[[ot,ei+ni],st],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[ot,"Netscape"],st],[/(wolvic)\/([\w\.]+)/i],[ot,st],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[st,[ot,ni+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i],[ot,[st,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[ot,[st,/[^\d\.]+./,Ye]]],cpu:[[/\b(?:(amd|x|x86[-_]?|wow|win)64)\b/i],[[ct,"amd64"]],[/(ia32(?=;))/i,/((?:i[346]|x)86)[;\)]/i],[[ct,"ia32"]],[/\b(aarch64|arm(v?8e?l?|_?64))\b/i],[[ct,"arm64"]],[/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i],[[ct,"armhf"]],[/windows (ce|mobile); ppc;/i],[[ct,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i],[[ct,/ower/,Ye,bi]],[/(sun4\w)[;\)]/i],[[ct,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i],[[ct,bi]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[nt,[at,Xt],[rt,lt]],[/\b((?:s[cgp]h|gt|sm)-\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]([-\w]+)/i,/sec-(sgh\w+)/i],[nt,[at,Xt],[rt,dt]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[nt,[at,Bt],[rt,dt]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[nt,[at,Bt],[rt,lt]],[/(macintosh);/i],[nt,[at,Bt]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[nt,[at,Jt],[rt,dt]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[nt,[at,zt],[rt,lt]],[/(?:huawei|honor)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[nt,[at,zt],[rt,dt]],[/\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i],[[nt,/_/g," "],[at,Zt],[rt,dt]],[/oid[^\)]+; (2\d{4}(283|rpbf)[cgl])( bui|\))/i,/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[nt,/_/g," "],[at,Zt],[rt,lt]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[nt,[at,"OPPO"],[rt,dt]],[/\b(opd2\d{3}a?) bui/i],[nt,[at,"OPPO"],[rt,lt]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[nt,[at,"Vivo"],[rt,dt]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[nt,[at,"Realme"],[rt,dt]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[nt,[at,Wt],[rt,dt]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[nt,[at,Wt],[rt,lt]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[nt,[at,jt],[rt,lt]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[nt,[at,jt],[rt,dt]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[nt,[at,Gt],[rt,lt]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[nt,/_/g," "],[at,"Nokia"],[rt,dt]],[/(pixel c)\b/i],[nt,[at,Ft],[rt,lt]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[nt,[at,Ft],[rt,dt]],[/droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[nt,[at,Yt],[rt,dt]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[nt,"Xperia Tablet"],[at,Yt],[rt,lt]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[nt,[at,"OnePlus"],[rt,dt]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[nt,[at,qt],[rt,lt]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[nt,/(.+)/g,"Fire Phone $1"],[at,qt],[rt,dt]],[/(playbook);[-\w\),; ]+(rim)/i],[nt,at,[rt,lt]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[nt,[at,Vt],[rt,dt]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[nt,[at,Ht],[rt,lt]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[nt,[at,Ht],[rt,dt]],[/(nexus 9)/i],[nt,[at,"HTC"],[rt,lt]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[at,[nt,/_/g," "],[rt,dt]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[nt,[at,"Acer"],[rt,lt]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[nt,[at,"Meizu"],[rt,dt]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[nt,[at,"Ulefone"],[rt,dt]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron|infinix|tecno)[-_ ]?([-\w]*)/i,/(hp) ([\w ]+\w)/i,/(asus)-?(\w+)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w]+)/i,/(jolla)/i,/(oppo) ?([\w ]+) bui/i],[at,nt,[rt,dt]],[/(kobo)\s(ereader|touch)/i,/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i],[at,nt,[rt,lt]],[/(surface duo)/i],[nt,[at,Kt],[rt,lt]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[nt,[at,"Fairphone"],[rt,dt]],[/(shield[\w ]+) b/i],[nt,[at,"Nvidia"],[rt,lt]],[/(sprint) (\w+)/i],[at,nt,[rt,dt]],[/(kin\.[onetw]{3})/i],[[nt,/\./g," "],[at,Kt],[rt,dt]],[/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[nt,[at,Qt],[rt,lt]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[nt,[at,Qt],[rt,dt]],[/smart-tv.+(samsung)/i],[at,[rt,pt]],[/hbbtv.+maple;(\d+)/i],[[nt,/^/,"SmartTV"],[at,Xt],[rt,pt]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[at,jt],[rt,pt]],[/(apple) ?tv/i],[at,[nt,Bt+" TV"],[rt,pt]],[/crkey/i],[[nt,ii+"cast"],[at,Ft],[rt,pt]],[/droid.+aft(\w+)( bui|\))/i],[nt,[at,qt],[rt,pt]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[nt,[at,Jt],[rt,pt]],[/(bravia[\w ]+)( bui|\))/i],[nt,[at,Yt],[rt,pt]],[/(mitv-\w{5}) bui/i],[nt,[at,Zt],[rt,pt]],[/Hbbtv.*(technisat) (.*);/i],[at,nt,[rt,pt]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[at,ki],[nt,ki],[rt,pt]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[rt,pt]],[/(ouya)/i,/(nintendo) (\w+)/i],[at,nt,[rt,ut]],[/droid.+; (shield) bui/i],[nt,[at,"Nvidia"],[rt,ut]],[/(playstation \w+)/i],[nt,[at,Yt],[rt,ut]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[nt,[at,Kt],[rt,ut]],[/((pebble))app/i],[at,nt,[rt,wt]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[nt,[at,Bt],[rt,wt]],[/droid.+; (wt63?0{2,3})\)/i],[nt,[at,Qt],[rt,wt]],[/droid.+; (glass) \d/i],[nt,[at,Ft],[rt,"xr"]],[/(quest( \d| pro)?)/i],[nt,[at,ri],[rt,"xr"]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[at,[rt,mt]],[/(aeobc)\b/i],[nt,[at,qt],[rt,mt]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i],[nt,[rt,dt]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[nt,[rt,lt]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[rt,lt]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[rt,dt]],[/(android[-\w\. ]{0,9});.+buil/i],[nt,[at,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[st,[ot,"EdgeHTML"]],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[st,[ot,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[ot,st],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[st,ot]],os:[[/microsoft (windows) (vista|xp)/i],[ot,st],[/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i],[ot,[st,Ti,Ei]],[/windows nt 6\.2; (arm)/i,/windows[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i,/(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[st,Ti,Ei],[ot,si]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[st,/_/g,"."],[ot,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[ot,"macOS"],[st,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[st,ot],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,/(blackberry)\w*\/([\w\.]*)/i,/(tizen|kaios)[\/ ]([\w\.]+)/i,/\((series40);/i],[ot,st],[/\(bb(10);/i],[st,[ot,Vt]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[st,[ot,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[st,[ot,ni+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[st,[ot,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[st,[ot,"watchOS"]],[/crkey\/([\d\.]+)/i],[st,[ot,ii+"cast"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[ot,"Chrome OS"],st],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) (\w+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux) ?([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[ot,st],[/(sunos) ?([\w\.\d]*)/i],[[ot,"Solaris"],st],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[ot,st]]},Ii=(Je={init:{},isIgnore:{},isIgnoreRgx:{},toString:{}},gi.call(Je.init,[[Pt,[ot,st,it,rt]],[Lt,[ct]],[Rt,[rt,nt,at]],[Ut,[ot,st]],[Mt,[ot,st]]]),gi.call(Je.isIgnore,[[Pt,[st,it]],[Ut,[st]],[Mt,[st]]]),gi.call(Je.isIgnoreRgx,[[Pt,/ ?browser$/i],[Mt,/ ?os$/i]]),gi.call(Je.toString,[[Pt,[ot,st]],[Lt,[ct]],[Rt,[at,nt]],[Ut,[ot,st]],[Mt,[ot,st]]]),Je),Ci=function(e,t){var i=Ii.init[t],n=Ii.isIgnore[t]||0,o=Ii.isIgnoreRgx[t]||0,r=Ii.toString[t]||0;function a(){gi.call(this,i)}return a.prototype.getItem=function(){return e},a.prototype.withClientHints=function(){return ui?ui.getHighEntropyValues(Dt).then((function(t){return e.setCH(new Ai(t,!1)).parseCH().get()})):e.parseCH().get()},a.prototype.withFeatureCheck=function(){return e.detectFeature().get()},t!=$t&&(a.prototype.is=function(e){var t=!1;for(var i in this)if(this.hasOwnProperty(i)&&!pi(n,i)&&bi(o?vi(o,this[i]):this[i])==bi(o?vi(o,e):e)){if(t=!0,e!=Qe)break}else if(e==Qe&&t){t=!t;break}return t},a.prototype.toString=function(){var e=Ye;for(var t in r)typeof this[r[t]]!==Qe&&(e+=(e?" ":Ye)+this[r[t]]);return e||Qe}),ui||(a.prototype.then=function(e){var t=this,i=function(){for(var e in t)t.hasOwnProperty(e)&&(this[e]=t[e])};i.prototype={is:a.prototype.is,toString:a.prototype.toString};var n=new i;return e(n),n}),new a};function Ai(e,t){if(e=e||{},gi.call(this,Dt),t)gi.call(this,[[ht,fi(e[Tt])],[vt,fi(e[Et])],[dt,/\?1/.test(e[Ct])],[nt,yi(e[At])],[yt,yi(e[Nt])],[kt,yi(e[Ot])],[ct,yi(e[_t])],[gt,fi(e[It])],[St,yi(e[xt])]]);else for(var i in e)this.hasOwnProperty(i)&&typeof e[i]!==Qe&&(this[i]=e[i])}function Ni(e,t,i,n){return this.get=function(e){return e?this.data.hasOwnProperty(e)?this.data[e]:void 0:this.data},this.set=function(e,t){return this.data[e]=t,this},this.setCH=function(e){return this.uaCH=e,this},this.detectFeature=function(){if(ci&&ci.userAgent==this.ua)switch(this.itemType){case Pt:ci.brave&&typeof ci.brave.isBrave==Ze&&this.set(ot,"Brave");break;case Rt:!this.get(rt)&&ui&&ui[dt]&&this.set(rt,dt),"Macintosh"==this.get(nt)&&ci&&typeof ci.standalone!==Qe&&ci.maxTouchPoints&&ci.maxTouchPoints>2&&this.set(nt,"iPad").set(rt,lt);break;case Mt:!this.get(ot)&&ui&&ui[yt]&&this.set(ot,ui[yt]);break;case $t:var e=this.data,t=function(t){return e[t].getItem().detectFeature().get()};this.set(Pt,t(Pt)).set(Lt,t(Lt)).set(Rt,t(Rt)).set(Ut,t(Ut)).set(Mt,t(Mt))}return this},this.parseUA=function(){return this.itemType!=$t&&Si.call(this.data,this.ua,this.rgxMap),this.itemType==Pt&&this.set(it,hi(this.get(st))),this},this.parseCH=function(){var e=this.uaCH,t=this.rgxMap;switch(this.itemType){case Pt:var i,n=e[vt]||e[ht];if(n)for(var o in n){var r=vi(/(Google|Microsoft) /,n[o].brand||n[o]),a=n[o].version;/not.a.brand/i.test(r)||i&&(!/chrom/i.test(i)||/chromi/i.test(r))||(this.set(ot,r).set(st,a).set(it,hi(a)),i=r)}break;case Lt:var s=e[ct];s&&(s&&"64"==e[St]&&(s+="64"),Si.call(this.data,s+";",t));break;case Rt:if(e[dt]&&this.set(rt,dt),e[nt]&&this.set(nt,e[nt]),"Xbox"==e[nt]&&this.set(rt,ut).set(at,Kt),e[gt]){var c;if("string"!=typeof e[gt])for(var u=0;!c&&u<e[gt].length;)c=Ti(e[gt][u++],_i);else c=Ti(e[gt],_i);this.set(rt,c)}break;case Mt:var d=e[yt];if(d){var l=e[kt];d==si&&(l=parseInt(hi(l),10)>=13?"11":"10"),this.set(ot,d).set(st,l)}this.get(ot)==si&&"Xbox"==e[nt]&&this.set(ot,"Xbox").set(st,void 0);break;case $t:var p=this.data,w=function(t){return p[t].getItem().setCH(e).parseCH().get()};this.set(Pt,w(Pt)).set(Lt,w(Lt)).set(Rt,w(Rt)).set(Ut,w(Ut)).set(Mt,w(Mt))}return this},gi.call(this,[["itemType",e],["ua",t],["uaCH",n],["rgxMap",i],["data",Ci(this,e)]]),this}function Oi(e,t,i){if(typeof e===et?(wi(e,!0)?(typeof t===et&&(i=t),t=e):(i=e,t=void 0),e=void 0):typeof e!==tt||wi(t,!0)||(i=t,t=void 0),!(this instanceof Oi))return new Oi(e,t,i).getResult();var n=typeof e===tt?e:ci&&ci.userAgent?ci.userAgent:i&&i[ft]?i[ft]:Ye,o=new Ai(i,!0),r=t?di(xi,t):xi,a=function(e){return e==$t?function(){return new Ni(e,n,r,o).set("ua",n).set(Pt,this.getBrowser()).set(Lt,this.getCPU()).set(Rt,this.getDevice()).set(Ut,this.getEngine()).set(Mt,this.getOS()).get()}:function(){return new Ni(e,n,r[e],o).parseUA().get()}};return gi.call(this,[["getBrowser",a(Pt)],["getCPU",a(Lt)],["getDevice",a(Rt)],["getEngine",a(Ut)],["getOS",a(Mt)],["getResult",a($t)],["getUA",function(){return n}],["setUA",function(e){return mi(e)&&(n=e.length>bt?ki(e,bt):e),this}]]).setUA(n),this}Oi.VERSION="2.0.0-beta.3",Oi.BROWSER=li([ot,st,it,rt]),Oi.CPU=li([ct]),Oi.DEVICE=li([nt,at,rt,ut,dt,pt,lt,wt,mt]),Oi.ENGINE=Oi.OS=li([ot,st]);const Di=()=>{const e=navigator.userAgent;return/(tablet|ipad|playbook|silk)|(android(?!.*mobi))/i.test(e)?"tablet":/Mobile|iP(hone|od)|Android|BlackBerry|IEMobile|Kindle|Silk-Accelerated|(hpw|web)OS|Opera M(obi|ini)/.test(e)?"mobile":"desktop"};e.pubstackAutoconfig=async function(e){if(void 0===e.endpoint.gateway)return void a("[pbstckAutoconfig] no gateway url found in config");const t={gateway:e.endpoint.gateway,env:(i=e.endpoint.gateway,i.includes(x.DEV)?x.DEV:i.includes(x.BETA)?x.BETA:x.PROD),sessionTrackingDisabled:e.sessionTrackingDisabled??!1};var i;try{const i=window.top||window;i.pbstck=i.pbstck||{lock:{}},i.pbstck.lock=i.pbstck.lock||{};const n=`${e.tagId}@${t.env}@user-sessions`;if(i.pbstck.lock[n])return;i.pbstck.lock[n]=!0}catch(e){a("[pbstckAutoconfig] error while locking the integration",e)}const n=new Oi(navigator.userAgent),o=n.getOS(),s=n.getBrowser(),u={tagId:e.tagId,scopeId:e.scopeId,country:e.country,device:Di(),browserName:s.name||"unknown",browserVersion:s.major||"unknown",osName:o.name||"unknown",osVersion:o.version||"unknown",pbstckVersion:"b6ed2f5",customFields:c()},d=new Promise((e=>{setTimeout((()=>{e()}),300)})),l=(async()=>{try{return await(navigator?.cookieDeprecationLabel?.getValue())}catch(e){r("Error while getting cookie depreciation label",e)}})();await Promise.all([l,d]).then((e=>{const t=e[0]??"";t&&(u.customFields.cdep=t)})),u.tagId&&u.scopeId?(w(p.REPLACE_STATE),w(p.PUSH_STATE),(e=>{j(window,e)})(t),Xe(t,u),H(t,u)):a("[pbstckAutoconfig] no tagId or scopeId found in context")}}(this.userSessions=this.userSessions||{});
;
 return this;}.bind({}); var _ = load();_.userSessions.pubstackAutoconfig({"endpoint":{"gateway":"https://intake.pbstck.com/v1/intake"},"scopeId":"f2521fbf-96a6-4b81-8284-15bcd5ddf73b","tagId":"d7f7fa8d-5918-4306-834c-b734d9e6f9a7","sessionTrackingDisabled":true}); })()</script><script type="text/javascript">(function() { var load = function() {!function(e){"use strict";function t(e,t,i,s){return new(i||(i=Promise))((function(n,o){function r(e){try{d(s.next(e))}catch(e){o(e)}}function a(e){try{d(s.throw(e))}catch(e){o(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(r,a)}d((s=s.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;const i=e=>void 0!==e,s=[0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,59],n=e=>{if(!e)throw new Error("IllegalArgumentException");const t={_value:[108,98,39,46,7,187,1,66,98,184,33,117,98,149,197,141],_scratch:new Array(16)};function i(){let e,i;for(i=0;i<16;i++)t._scratch[i]=0;for(i=0;i<16;i++)for(let n=0;n<16-i;n++)e=t._value[15-i]*s[15-n]+(t._scratch[15-(i+n)]||0),e>255&&(i+n+1<16&&(t._scratch[15-(i+n+1)]+=e>>>8),e-=e>>>8<<8),t._scratch[15-(i+n)]=e;const n=t._scratch;t._scratch=t._value,t._value=n}return function(e){let s;if("string"==typeof e){const t=e.replace(/\r\n/g,"\n"),i=[];let n=0;for(s=0;s<t.length;s++){const e=t.charCodeAt(s);e<128?i[n++]=e:e<2048?(i[n++]=e>>6|192,i[n++]=63&e|128):(i[n++]=e>>12|224,i[n++]=e>>6&63|128,i[n++]=63&e|128)}e=i}for(s=0;s<e.length;s++)t._value[15]^=e[s],i()}(e),t._value.reduce(((e,t)=>e+("00"+t.toString(16)).slice(-2)),"")},o=(e,...t)=>{if(0===t.length||""===t.join(""))throw new Error("Failed to create hash");return n(t.join("")).substr(0,e)},r=(...e)=>{try{return o(14,...e)}catch(e){throw new Error("Failed to create an auction Id")}},a=(...e)=>{try{return o(8,...e)}catch(e){throw new Error("Failed to create a bid Id")}},d=()=>n(`${Math.random().toString(36)}${(new Date).getTime()}`);class c{constructor(e){this.subscriptions=[],this.children=[],this.processingChain=e?[...e]:[]}subscribe(e,t){this.subscriptions.push({onEvent:e,onError:t})}unsubscribe(e,t){this.subscriptions=this.subscriptions.filter((i=>!(i.onEvent===e&&i.onError===t)))}pipe(...e){const t=new c([...this.processingChain,...e]);return this.children.push(t),t}next(e){this.subscriptions.forEach((t=>{try{const i=this.processingChain.reduce(((e,t)=>{if(void 0!==e)return t(e)}),e);void 0!==i&&t.onEvent(i)}catch(e){t.onError&&t.onError(e)}})),this.children.forEach((t=>t.next(e)))}}const u=e=>{return[(t=([t])=>e.test(t),e=>{if(t(e))return e}),([,[e,...t]])=>[e,t]];var t};class l extends Error{constructor(e){super(e)}}function b(e,t){if(!Array.isArray(e))throw new l(null!=t?t:"Expected value to be an array, but received "+typeof e)}function p(e){return"number"==typeof e&&!isNaN(e)}function h(e){return"string"==typeof e}function m(e,t){if(!p(e))throw new l(null!=t?t:"Expected value to be a number, but received "+typeof e)}function v(e,t){if(null!=e&&"string"!=typeof e)throw new l("Expected value to be a string, undefined or null, but received "+typeof e)}function f(e,t){if(null!=e&&!function(e){return"boolean"==typeof e}(e))throw new l("Expected value to be a boolean, but received "+typeof e)}function g(e,t){if("string"!=typeof e)throw new l(null!=t?t:"Expected value to be a string, but received "+typeof e)}function w(e,t){if(null==e)throw new l(null!=t?t:`Expected value to be defined, but received ${e}`)}function y(e,t){if(!Array.isArray(e)||0===e.filter((e=>void 0!==e)).length)throw new l(null!=t?t:"Expected array to be not empty")}const I=e=>"object"==typeof e&&null!==e&&!Array.isArray(e);function k(e,t){if(!I(e))throw new l(null!=t?t:`Expected value to be record, but received '${typeof e}'`)}const C=(e,t)=>I(e)&&t in e;const A=[],R=new c;function S(e,t){let i=0;A.push((s=>{i>=t||(i+=1,e(s))}))}function T(e){A.forEach((t=>t({error:e})))}function E(e){var t;T({context:null!==(t=e.context)&&void 0!==t?t:{},message:e.message})}var j,x;const U=/pbstck:debug/.test(window.location.href),N=!!(null===(j=window.localStorage)||void 0===j?void 0:j.getItem)&&null!==window.localStorage.getItem("pbstck"),O=`[pbstck-${null!==(x="01e89e8")?x:"unknown"}]`;function B(){return U||N}function V(...e){B()&&console.log(O,...e)}function q(...e){B()&&console.warn(O,...e)}function $(...e){B()&&console.error(O,...e)}const D=["39216077","6943","8456","1021524","1026508","1030155","2165149","2444258","4708965","5624990","7321515","7687385","17085479","22181265","27416722","46481815","49313688","91083230","127208727","22247219933","22815767462","22702991301","22665197336","22022010600","21866864457","21823883819","21794835430","21734370771","21722279357"],z=e=>{var t,i,s;if(!(null===(t=e.pubstack)||void 0===t?void 0:t.adUnitName)&&e.ortb2Imp)for(const t of D){if(e.ortb2Imp.ext.data.pbadslot.startsWith(`/${t}/`)){const t=e.ortb2Imp.ext.data.pbadslot.replace(/\/$/,"").split("/").pop();return t||e.code}if(e.ortb2Imp.ext.gpid){const t=e.ortb2Imp.ext.gpid.replace(/\/$/,"").split("/").pop();return t||e.code}}return null!==(s=null===(i=e.pubstack)||void 0===i?void 0:i.adUnitName)&&void 0!==s?s:e.code},F=e=>{var t;if(null===(t=e.pubstack)||void 0===t?void 0:t.adUnitPath)return L(e.pubstack.adUnitPath);if(e.ortb2Imp){if(e.ortb2Imp.ext.data.pbadslot)return L(e.ortb2Imp.ext.data.pbadslot);if(e.ortb2Imp.ext.gpid)return L(e.ortb2Imp.ext.gpid)}},_=e=>{const t=[];return e.forEach((e=>{X(e).bids.forEach((e=>{t.some((t=>t.bidder===e.bidder))||t.push(e)}))})),t},M=e=>{const t={};return e.forEach((e=>{const i=X(e);void 0!==i.mediaTypes.native&&(t.native=i.mediaTypes.native),void 0!==i.mediaTypes.video&&i.mediaTypes.video.playerSize&&(t.video?t.video.playerSize=[...t.video.playerSize,...i.mediaTypes.video.playerSize]:t.video=i.mediaTypes.video),void 0!==i.mediaTypes.banner&&(t.banner?(t.banner.sizes=[...t.banner.sizes,...i.mediaTypes.banner.sizes],i.mediaTypes.banner.sizeConfig&&(t.banner.sizeConfig=i.mediaTypes.banner.sizeConfig)):t.banner=i.mediaTypes.banner)})),t},P=e=>{var t,i,s;const n=e=>"string"==typeof e?e:Array.isArray(e)&&2===e.length?`${e[0]}x${e[1]}`:"unknown",o=new Set;return(e=>{var t,i;return(void 0===(null===(t=e.mediaTypes.banner)||void 0===t?void 0:t.sizes)||0===(null===(i=e.mediaTypes.banner)||void 0===i?void 0:i.sizes.length))&&void 0===e.mediaTypes.native&&void 0===e.mediaTypes.video})(e)?[]:((null===(t=e.mediaTypes.banner)||void 0===t?void 0:t.sizes)&&(Array.isArray(e.mediaTypes.banner.sizes[0])?e.mediaTypes.banner.sizes.forEach((e=>o.add(n(e)))):o.add(n(e.mediaTypes.banner.sizes))),(null===(i=e.mediaTypes.video)||void 0===i?void 0:i.playerSize)&&(null===(s=e.mediaTypes.video)||void 0===s||s.playerSize.forEach((e=>o.add((e=>{const t=n(e);return"unknown"===t?"video":`video-${t}`})(e))))),e.mediaTypes.native&&o.add("native"),Array.from(o))},L=e=>e.startsWith("/")?e:`/${e}`,W=e=>{var t,i;const s=/^(adUnitPath)/;return(null!==(i=null===(t=e.pubstack)||void 0===t?void 0:t.tags)&&void 0!==i?i:[]).filter((e=>"string"==typeof e)).filter((e=>e.length>0&&e.length<256||s.test(e)))},G=e=>{const t=(e=>e.placementId||e.zoneId||e.siteId||void 0)(e);if(t)return`slot:${t}`},H=e=>{const t={hasUserId:"notAvailable",userIdProviderList:[]};if(0===e.length)return t;let i=!0;const s=e[0].bids[0];return e.forEach((e=>{e.bids.forEach((e=>{const n=Object.entries(e.userId||{}).flatMap((([e,t])=>{if(Array.isArray(t)){const i=t.filter((e=>Object.prototype.hasOwnProperty.call(e,"source"))).map((t=>`${e}:${t.source}`));return i.length?i:e}return e}));if(t.userIdProviderList=t.userIdProviderList.concat(n),t.userIdProviderList=t.userIdProviderList.concat(Object.keys(e.crumbs||{})),i=i&&typeof s.crumbs==typeof e.crumbs,s.crumbs&&e.crumbs){const t=Object.keys(s.crumbs),n=Object.keys(e.crumbs);i=i&&t.length===n.length&&t.every((e=>n.includes(e)))}if(i=i&&typeof s.userId==typeof e.userId,s.userId&&e.userId){const t=Object.keys(s.userId),n=Object.keys(e.userId);i=i&&t.length===n.length&&t.every((e=>n.includes(e)))}}))})),t.userIdProviderList.length>0&&i?t.hasUserId="available":t.userIdProviderList.length>0&&!i&&(t.hasUserId="notConsistent"),t.userIdProviderList=Array.from(new Set(t.userIdProviderList)),t},J=e=>{let t=e.map((e=>e.gdprConsent)).filter((e=>void 0!==e));return e.length!==t.length&&(t=[]),t},Q=e=>{const t={userConsentState:"notAvailable",userConsentVersion:"notAvailable"};try{if(0===e.length)return t;const i=e.every(((e,t,i)=>e.apiVersion===i[0].apiVersion)),s=e.every(((e,t,i)=>e.consentString===i[0].consentString));if(!i||!s)throw new Error("API version and Consent string must be unique within a bid request array");return(e=>{const t={userConsentState:"notAvailable",userConsentVersion:"notAvailable"};if(void 0===e)return t;let i=!1,s=!1;if(e.apiVersion&&1!==e.apiVersion){if(2!==e.apiVersion)throw e.apiVersion>2?new Error(`API version is not yet supported: ${e.apiVersion}`):new Error(`An issue occured while identifying TCF version: ${e.apiVersion}`);if(t.userConsentVersion="tcf-v2","boolean"==typeof e.gdprApplies&&!e.gdprApplies)return Object.assign(Object.assign({},t),{userConsentState:"notApplicable"});if((e=>{const t=e;return!!(t&&t.purpose&&t.purpose.consents&&t.vendor&&t.vendor.consents)})(e.vendorData)){const n=Object.values(e.vendorData.purpose.consents),o=Object.values(e.vendorData.vendor.consents);if(i=n.filter((e=>e)).length>0,s=o.filter((e=>e)).length>0,0===n.length||0===o.length)return Object.assign(Object.assign({},t),{userConsentState:"notAvailable"})}}else{if(t.userConsentVersion="tcf-v1","boolean"==typeof e.gdprApplies&&!e.gdprApplies)return Object.assign(Object.assign({},t),{userConsentState:"notApplicable"});if((e=>{const t=e;return!(!t||!t.purposeConsents||!t.vendorConsents)})(e.vendorData)){const n=Object.values(e.vendorData.purposeConsents),o=Object.values(e.vendorData.vendorConsents);if(i=n.filter((e=>e)).length>0,s=o.filter((e=>e)).length>0,0===n.length||0===o.length)return Object.assign(Object.assign({},t),{userConsentState:"notAvailable"})}}return t.userConsentState=i&&s?"accepted":"refused",t})(e[0])}catch(e){return e.context=e.context||{},e.context.pbjs={source:"pbjs:helpers"},E(e),t}},X=e=>JSON.parse(JSON.stringify(e));var K,Y;!function(e){e[e.LOADED=0]="LOADED",e[e.FAILED=1]="FAILED",e[e.NOT_READY=2]="NOT_READY"}(K||(K={})),function(e){e.RUNNING="running",e.NO_BID="noBid",e.BID="bidResponse",e.TIMEOUT="bidTimeout"}(Y||(Y={}));const Z=e=>e.state===Y.BID,ee=e=>Z(e)?e.bidResponseId:e.bidId;var te,ie;!function(e){e[e.ON_DONE=0]="ON_DONE",e[e.ON_SMART_MERGED=1]="ON_SMART_MERGED",e[e.NEVER=2]="NEVER"}(te||(te={})),function(e){e[e.PBJS=0]="PBJS",e[e.SMART_RTB=1]="SMART_RTB",e[e.AMAZON=2]="AMAZON",e[e.GAM=3]="GAM"}(ie||(ie={}));const se=400,ne="unknown",oe=new Map;class re{constructor(e,t=!1){this.onBidResponseStream=new c,this.onAuctionEndStream=new c,this.onBidWonStream=new c,this.onBidWonFromSdkStream=new c,e&&(this.pbjsConfig=e),this.admOnboarding=t}getAdServerCurrency(){var e;return null===(e=this.pbjsConfig)||void 0===e?void 0:e.adServerCurrency}onBidResponse(e){const t=r(e.adUnitCode,e.auctionId),i=a(e.requestId),s=a(i,e.adId);oe.set(e.adId,i),this.onBidResponseStream.next({adId:e.adId,auctionId:t,dealId:e.dealId||void 0,bidId:i,bidResponseId:s,cpm:e.cpm,currency:e.currency,size:e.size,mediaType:e.mediaType,tags:[],bidderCode:e.bidderCode,customFields:{},timeToRespond:e.timeToRespond,adapterCode:e.adapterCode,advertiserDomains:e.advertiserDomains})}onAuctionEnd(e,t="prebid"){var s,n;const o=(null===(n=window[(null===(s=this.pbjsConfig)||void 0===s?void 0:s.pbjsVariableName)||"pbjs"])||void 0===n?void 0:n.aliasRegistry)||{};!function(e,t){const i=[];if(e.forEach((e=>{try{t(e)}catch(e){i.push(e)}})),0!==i.length){const e=`forEach: Unexpected (${i.length}) errors\n${i.reduce(((e,t)=>`${e}\t- ${t.message}\n`),"")}`;throw new Error(e)}}(e.adUnits.filter((t=>void 0===e.adUnitCodes||e.adUnitCodes.includes(t.code))).reduce(((e,t)=>(e.find((e=>t.code===e.code))||e.push(t),e)),[]),(s=>{var n,c,u,l;const p=function(e,t){const i=e.adUnits.filter((e=>e.code===t)),s={code:t,bids:_(i),mediaTypes:M(i)},n=(e=>{let t;return e.forEach((e=>{const i=X(e);i.pubstack&&0!=Object.keys(i.pubstack).length?t=i.pubstack:JSON.stringify(i.pubstack)!==JSON.stringify(t)&&q(`Two different pubstack declaration found for a adUnitCode ${i.code}`,i.pubstack,t)})),t})(i);n&&(s.pubstack=n);const o=(e=>{let t;return e.forEach((e=>{const i=X(e);i.ortb2Imp?t=i.ortb2Imp:JSON.stringify(i.ortb2Imp)!==JSON.stringify(t)&&q(`Two different ortb2imp declaration found for a adUnitCode ${i.code}`,i.ortb2Imp,t)})),t})(i);o&&(s.ortb2Imp=o);return s}(e,s.code),h=(e=>({code:e.code,name:z(e),path:F(e)}))(p),m=r(p.code,e.auctionId),v=e.labels||[],f=(b(g=e.bidderRequests),g.length>0&&g.every((e=>w(e.bidderRequestId))),g);var g;const y=e.bidderRequests.flatMap((t=>{var n;const c=r(s.code,e.auctionId),u=t.gdprConsent,l=t.bidderCode,b=null===(n=e.seatNonBids)||void 0===n?void 0:n.find((e=>e.seat===t.bidderCode)),p=null==b?void 0:b.nonbid.find((e=>e.impid===s.code)),h=t.bids.filter((e=>e.adUnitCode===s.code)).map((t=>{const s=a(t.bidId),n=e.bidsReceived.find((e=>e.requestId===t.bidId)),r=e.noBids.find((e=>e.bidId===t.bidId)),d=e.bidsRejected.find((e=>e.requestId===t.bidId));let b={state:Y.TIMEOUT};if(n){const e=a(s,n.adId);b={adId:n.adId,bidResponseId:e,cpm:n.cpm,currency:n.currency,size:n.size,mediaType:n.mediaType,bidNetRevenue:n.netRevenue,state:Y.BID,timeToRespond:n.timeToRespond,dealId:n.dealId||void 0,advertiserDomains:n.advertiserDomains}}else r?b={state:Y.NO_BID}:d&&(b={state:Y.NO_BID,rejectionReason:d.rejectionReason});const p={};return this.admOnboarding&&(p.bidderParams=JSON.stringify(t.params)),Object.assign({auctionId:c,bidId:s,gdprConsent:u,bidderCode:l,adapterCode:o[l],source:t.src,tags:[G(t.params)].filter(i),customFields:p},b)}));return p&&h.push({bidId:a(d()),auctionId:c,gdprConsent:u,bidderCode:l,adapterCode:o[l],source:"s2s",tags:[],customFields:{source:"s2s"},state:101===p.statuscode?Y.TIMEOUT:Y.NO_BID}),h})),I={source:t};if(this.admOnboarding){const e=window[this.pbjsConfig.pbjsVariableName],t=e.installedModules,{userSync:i,fledgeForGpt:n,floors:o,paapi:r,schain:a,realTimeData:d}=e.getConfig();I.config_installedModules=JSON.stringify(t),I.config_userSync=JSON.stringify(i),I.config_fledgeForGpt=JSON.stringify(n),I.config_floors=JSON.stringify(o),I.config_paapi=JSON.stringify(r),I.config_schain=JSON.stringify(a),I.config_realTimeData=JSON.stringify(d),I.adunitcode=s.code}const k={auctionId:m,adUnit:h,refreshIndex:0,sizes:P(p),userId:H(f),pbjsVersion:null!==(c=null===(n=this.pbjsConfig)||void 0===n?void 0:n.version)&&void 0!==c?c:ne,tags:[...W(p)],labels:v,gracePeriod:null!==(l=null===(u=this.pbjsConfig)||void 0===u?void 0:u.gracePeriod)&&void 0!==l?l:se,duration:e.auctionEnd-e.timestamp,bidRequests:y,timeout:e.timeout,customFields:I};this.onAuctionEndStream.next(k)}))}onBidWon(e){var t;const i=(null===(t=window[this.pbjsConfig.pbjsVariableName])||void 0===t?void 0:t.aliasRegistry)||{},s=Object.assign(Object.assign({},e),{pbstckAdapterCode:i[e.bidderCode],bidNetRevenue:e.netRevenue,dealId:e.dealId||void 0,auctionId:r(e.adUnitCode,e.auctionId),tags:[],customFields:{source:"prebid"}});this.onBidWonStream.next(s)}onBidWonFromSdk(e){const t=Object.assign(Object.assign({},e),{customFields:{source:"sdk"}});this.onBidWonFromSdkStream.next(t)}}const ae=(e,t,i)=>{const s=e;s[i]=s[i]||[];const n=s[i];e.pbstck=e.pbstck||{},e.pbstck.sdk=e.pbstck.sdk||{},e.pbstck.sdk[t]=e.pbstck.sdk[t]||{p:[],q:n},e.pbstck.sdk[t].p=e.pbstck.sdk[t].p||[],e.pbstck.sdk[t].q=e.pbstck.sdk[t].q||n,e.pbstck.sdk[t].q!==n&&(e.pbstck.sdk[t].q=e.pbstck.sdk[t].q.concat(n));const o={cmd:(...i)=>{const s=["cmd",i];(e.pbstck.sdk[t].q||[]).push(s),(e.pbstck.sdk[t].p||[]).forEach((e=>e(s)))}};return e.Pubstack=o,o},de=e=>{const t=[];return JSON.parse(JSON.stringify(e,((e,i)=>{if("object"==typeof i&&null!==i){if(t.includes(i))return;t.push(i)}return i})))},ce={AUCTION_INIT:"auctionInit",AUCTION_END:"auctionEnd",BID_TIMEOUT:"bidTimeout",BID_REQUESTED:"bidRequested",BID_RESPONSE:"bidResponse",BID_WON:"bidWon",NO_BID:"noBid"},ue=new c;function le(e,t,i="prebid"){return{on(s,n){V(`[pbjsIntegration] pbjs.dispatcher (${i}) ${s}`,n),"sdk"===i&&function(e){const t=window.pbstck.scopeId,i=window.pbstck.tagId,s=Object.assign(Object.assign({},e),{source:"collector",type:"log",tagId:i,scopeId:t});ue.next(s)}({id:"sdk-usage",level:"info",message:"sdk usage",eventName:s}),s===ce.AUCTION_END&&t.onAuctionEnd(e.toAuctionEnd(n),i),s===ce.BID_RESPONSE&&t.onBidResponse(e.toBidResponse(n)),s===ce.BID_WON&&"prebid"===i&&t.onBidWon(e.toBidWon(n)),s===ce.BID_WON&&"sdk"===i&&t.onBidWonFromSdk(e.toBidWonFromSdk(n))}}}function be(e){let t;if(void 0!==e)if(p(e))t=e;else if(h(e)){const i=Number(e);isNaN(i)||(t=i)}return void 0!==t?Math.trunc(t):t}function pe(e){try{return b(t=e,i),t.every((e=>g(e))),e}catch(e){return}var t,i}function he(e){try{return k(e),e}catch(e){return{}}}function me(e){try{return v(e),e}catch(e){return void V("Error on validator but not throwing since not mandatory",e.message)}}function ve(){const e=e=>{var t,i;k(e,"Auction event's adUnits should all be objects"),g(e.code,'Auction event\'s adUnits should all have a key "code" as a string'),b(e.bids,'Auction event\'s adUnits should all have a key "bids" as an array');const s=e.bids.map((t=>{try{return(e=>{var t;k(e,"Auction event's adUnits bidders should all be objects"),g(e.bidder,'Auction event\'s adUnits bidders should all have a key "bidder" as a string');const i=null!==(t=e.params)&&void 0!==t?t:{};return k(i,'Auction event\'s adUnits bidders should all have a key "params" as an object'),{bidder:e.bidder,params:i}})(t)}catch(t){return void q(`[pbjsIntegration] Discarding bidder from ${e.code}`,t)}})).filter((e=>void 0!==e)),n={};if(e.mediaTypes){if(k(e.mediaTypes,'Auction event\'s adUnits should all have a key "mediaTypes" as an object'),e.mediaTypes.banner){k(e.mediaTypes.banner,'Auction event\'s adUnits mediaTypes can all have a key "banner" that should be an object');const i=null!==(t=e.mediaTypes.banner.sizes)&&void 0!==t?t:[];b(i,'Auction event\'s adUnits mediaTypes banner should all have a key "sizes" that should be an array');const s=i.filter((e=>Array.isArray(e)&&2===e.length)).map((e=>{try{return b(e),[parseInt(e[0]),parseInt(e[1])]}catch(e){return[0,0]}}));n.banner={sizes:s,sizeConfig:e.mediaTypes.banner.sizeConfig}}if(e.mediaTypes.native&&(n.native={sizes:"native"}),e.mediaTypes.video&&(k(e.mediaTypes.video,'Auction event\'s adUnits mediaTypes can all have a key "video" that should be an object'),e.mediaTypes.video.playerSize)){b(e.mediaTypes.video.playerSize,'Auction event\'s adUnits mediaTypes video should all have a key "playerSize" that should be an array');const t=(null!==(i=e.mediaTypes.video.playerSize)&&void 0!==i?i:[]).filter((e=>Array.isArray(e)&&2===e.length));n.video={playerSize:t}}}const o={bids:s,code:e.code,mediaTypes:n},r=e.pubstack;void 0!==r&&(k(r),o.pubstack=r);const a=(e=>{if(!C(e,"ortb2Imp"))return;const t=e.ortb2Imp;if(!C(t,"ext"))return;const i=t.ext;if(!C(i,"data"))return;const s=i.data;return C(s,"pbadslot")&&h(s.pbadslot)?{ext:{data:{pbadslot:s.pbadslot}}}:void 0})(e);return a&&(o.ortb2Imp=a),o},t=e=>{k(e,"Auction event's bidderRequests should all be objects"),g(e.bidderRequestId,'Auction event\'s bidderRequests should all have a key "bidderRequestId" as a string'),g(e.bidderCode,'Auction event\'s bidderRequests should all have a key "bidderCode" as a string'),b(e.bids,'Auction event\'s bidderRequests should all have a key "bids" as an array');const t=e.bids.map((t=>{try{return i(t,"Auction event's bidderRequests")}catch(t){return void q(`[pbjsIntegration] Discarding bid request from ${e.bidderRequestId}`,t)}})).filter((e=>void 0!==e)),s={bidderRequestId:e.bidderRequestId,bids:t,bidderCode:e.bidderCode};return e.gdprConsent&&(s.gdprConsent=e.gdprConsent),s},i=(e,t)=>{var i,s,n;k(e,t+"'s bids should all be objects"),g(e.adUnitCode,t+' bids should all have a key "adUnitCode" as a string'),g(e.bidId,t+' bids should all have a key "bidId" as a string'),g(e.bidder,t+' bids should all have a key "bidder" as a string');const o=null!==(i=e.params)&&void 0!==i?i:{};k(o,t+' bids can all have a key "params" that should be an object');const r=null!==(s=e.userId)&&void 0!==s?s:{};k(r,t+' bids can all have a key "userId" that should be an object');const a=null!==(n=e.crumbs)&&void 0!==n?n:{};return k(a,t+' bids can all have a key "crumbs" that should be an object'),v(e.src),{adUnitCode:e.adUnitCode,bidId:e.bidId,bidder:e.bidder,params:o,userId:r,crumbs:a,src:e.src}};return{toBidRejected:e=>(k(e,"BidRejected event should be an object"),g(e.requestId,'BidRequested event should have a "requestId" key as a string'),g(e.rejectionReason,'BidRejected event should have a "rejectionReason" key as a string'),{requestId:e.requestId,rejectionReason:e.rejectionReason}),toSeatNonBid:function(e){return k(e,"SeatNonBid event should be an object"),g(e.seat,'SeatNonBid event should have a "seat" key as a string'),b(e.nonbid,'SeatNonBid event should have a "seat" key as a string'),e.nonbid.map((t=>{try{return k(t,"Nonbid should be an object"),g(t.impid,'Nonbid should have a "impid" key as a string'),m(t.statuscode,'Nonbid should have a "statuscode" key as a number'),{impid:t.impid,statuscode:t.statuscode}}catch(t){return void q(`[pbjsIntegration] Discarding Nonbid from auction event ${e.auctionId}`,t)}})).filter((e=>void 0!==e)),{seat:e.seat,nonbid:e.nonbid}},toAuctionEnd:function(i){let s,n,o=[];k(i,"Auction event should be an object"),g(i.auctionId,'Auction event should have a "auctionId" key as a string'),b(i.adUnits,'Auction event should have a "adUnits" key as a non-empty array'),y(i.adUnits,'Auction event should have a "adUnits" key as a non-empty array'),void 0!==i.labels&&(b(i.labels,'Auction event can have a "labels" key that should be an array'),n=i.labels),b(i.bidderRequests,'Auction event should have a "bidderRequests" key as a non-empty array'),y(i.bidderRequests,'Auction event should have a "bidderRequests" key as a non-empty array');const r=be(i.timeout);i.timeout&&!r&&q(`[pbjsIntegration] unable to read timeout from auction event ${i.auctionId}`);const a=i.adUnits.map((t=>{try{return e(t)}catch(e){return void q(`[pbjsIntegration] Discarding adUnit from auction event ${i.auctionId}`,e)}})).filter((e=>void 0!==e)),d=i.bidderRequests.map((e=>{try{return t(e)}catch(e){return void q(`[pbjsIntegration] Discarding bidderRequest from auction event ${i.auctionId}`,e)}})).filter((e=>void 0!==e));b(i.bidsReceived,'Auction event should have a "bidsReceived" key as a non-empty array');const c=i.bidsReceived.map((e=>{try{return this.toBidResponse(e)}catch(e){return void q(`[pbjsIntegration] Discarding bidReceived from auction event ${i.auctionId}`,e)}})).filter((e=>void 0!==e));b(i.adUnitCodes,'Auction event should have a "adUnitCodes" key as a non-empty array'),y(i.adUnitCodes,'Auction event should have a "adUnitCodes" key as a non-empty array');try{b(i.bidsRejected,'Auction event should have a "bidsRejected" key as an array'),o=i.bidsRejected.map((e=>{try{return this.toBidRejected(e)}catch(e){return void q(`[pbjsIntegration] Discarding bidRejected from auction event ${i.auctionId}`,e)}})).filter((e=>void 0!==e))}catch(e){V("Error on validator but not throwing since not mandatory",e.message)}b(i.noBids,'Auction event should have a "noBids" key as an array');const u=i.noBids.map((e=>{try{return this.toNoBid(e)}catch(e){return void q(`[pbjsIntegration] Discarding noBid from auction event ${i.auctionId}`,e)}})).filter((e=>void 0!==e));try{b(i.seatNonBids,'Auction event should have a "noBids" key as an array'),s=i.seatNonBids.map((e=>{try{return this.toSeatNonBid(e)}catch(e){return void q(`[pbjsIntegration] Discarding SeatNonBids from auction event ${i.auctionId}`,e)}})).filter((e=>void 0!==e))}catch(e){V("Error on validator but not throwing since not mandatory",e.message)}return function(e,t,i){if(!t.includes(e))throw new l(`Expected values to be one of '${t}', but received ${e}`)}(i.auctionStatus,["completed","inProgress","started"]),m(i.auctionEnd),m(i.timestamp),{auctionId:i.auctionId,bidderRequests:d,adUnits:a,labels:n,timeout:r,auctionEnd:i.auctionEnd,auctionStatus:i.auctionStatus,noBids:u,adUnitCodes:i.adUnitCodes,bidsRejected:o,bidsReceived:c,timestamp:i.timestamp,winningBids:[],seatNonBids:s}},toAuction:function(i){let s;k(i,"Auction event should be an object"),g(i.auctionId,'Auction event should have a "auctionId" key as a string'),b(i.adUnits,'Auction event should have a "adUnits" key as a non-empty array'),y(i.adUnits,'Auction event should have a "adUnits" key as a non-empty array'),void 0!==i.labels&&(b(i.labels,'Auction event can have a "labels" key that should be an array'),s=i.labels),b(i.bidderRequests,'Auction event should have a "bidderRequests" key as a non-empty array'),y(i.bidderRequests,'Auction event should have a "bidderRequests" key as a non-empty array');const n=be(i.timeout);i.timeout&&!n&&q(`[pbjsIntegration] unable to read timeout from auction event ${i.auctionId}`);const o=i.adUnits.map((t=>{try{return e(t)}catch(e){return void q(`[pbjsIntegration] Discarding adUnit from auction event ${i.auctionId}`,e)}})).filter((e=>void 0!==e)),r=i.bidderRequests.map((e=>{try{return t(e)}catch(e){return void q(`[pbjsIntegration] Discarding bidderRequest from auction event ${i.auctionId}`,e)}})).filter((e=>void 0!==e));return{auctionId:i.auctionId,bidderRequests:r,adUnits:o,labels:s,timeout:n}},toBidRequested(e){k(e,"BidRequested event should be an object"),g(e.auctionId,'BidRequested event should have a "auctionId" key as a string'),b(e.bids,'BidRequested event should have a "bids" key as an array');const t=e.bids.map((t=>{try{return i(t,"BidRequested event")}catch(t){return void q(`[pbjsIntegration] Discarding bid request from bid requested event ${e.auctionId}`,t)}})).filter((e=>void 0!==e)),s={auctionId:e.auctionId,bids:t};return e.gdprConsent&&(s.gdprConsent=e.gdprConsent),s},toBidResponse(e){var t;k(e,"BidResponse event should be an object"),g(e.auctionId,'BidRequested event should have a "auctionId" key as a string'),g(e.adUnitCode,'BidRequested event should have a "adUnitCode" key as a string'),g(e.adId,'BidRequested event should have a "adId" key as a string'),g(e.requestId,'BidRequested event should have a "requestId" key as a string');const i=h(e.cpm)?Number.parseFloat(e.cpm):e.cpm;let s;const n=me(e.dealId);m(i,'BidRequested event should have a "cpm" key as a number');let o,r=e.size;"string"!=typeof r&&(r=e.width&&e.height?`${e.width}x${e.height}`:"unknown"),g(e.mediaType,'BidRequested event should have a "mediaType" key as a string'),g(r,'BidRequested event should have a "size" key as a string'),h(e.currency)&&(o=e.currency),g(e.bidderCode,'BidResponse event should have a "bidderCode" key as a string'),function(e,t){if(null!=e&&!p(e))throw new l("Expected value to be a number, but received "+typeof e)}(e.timeToRespond),f(e.netRevenue);const a=pe(he(e.meta).advertiserDomains);try{g(e.adapterCode,'BidWon event should have a "bidderCode" key as a string'),s=e.adapterCode}catch(e){V("Error on validator but not throwing since not mandatory",e.message)}return{adId:e.adId,adUnitCode:e.adUnitCode,auctionId:e.auctionId,cpm:i,currency:o,requestId:e.requestId,size:r,bidderCode:e.bidderCode,mediaType:null!==(t=e.mediaType)&&void 0!==t?t:"banner",timeToRespond:e.timeToRespond,adapterCode:s,netRevenue:e.netRevenue,dealId:n,advertiserDomains:a}},toBidTimeout(e){b(e,"BidTimeout event should be an array");const t=[];return e.forEach((e=>{try{k(e,"BidTimeout events should all be objects"),g(e.adUnitCode,'BidTimeout events should all have a key "adUnitCode" as a string'),g(e.auctionId,'BidTimeout events should all have a key "auctionId" as a string'),g(e.bidId,'BidTimeout events should all have a key "bidId" as a string'),t.push({adUnitCode:e.adUnitCode,auctionId:e.auctionId,bidId:e.bidId})}catch(t){V("Discarding bid timeout event because ",t.message,e)}})),t},toNoBid:e=>(k(e,"NoBid event should be an object"),g(e.auctionId,'NoBid event should have a "auctionId" key as a string'),g(e.bidId,'NoBid event should have a "bidId" key as a string'),g(e.adUnitCode,'NoBid event should have a "adUnitCode" key as a string'),{bidId:e.bidId,adUnitCode:e.adUnitCode,auctionId:e.auctionId}),toBidWon(e){var t;let i,s,n,o,r,a;k(e,"BidWon event should be an object"),g(e.adId,'BidWon event should have a "adId" key as a string'),g(e.requestId,'BidWon event should have a "requestId" key as a string');const d=me(e.dealId);h(e.currency)&&(a=e.currency);const c=h(e.cpm)?Number.parseFloat(e.cpm):e.cpm;m(c,'BidRequested event should have a "cpm" key as a number'),g(e.mediaType,'BidRequested event should have a "mediaType" key as a string'),g(e.size,'BidWon event should have a "size" key as a string'),r=e.size,g(e.auctionId,'BidWon event should have a "auctionId" key as a string'),i=e.auctionId,g(e.adUnitCode,'BidWon event should have a "adUnitCode" key as a string'),s=e.adUnitCode;try{g(e.bidderCode,'BidWon event should have a "bidderCode" key as a string'),n=e.bidderCode}catch(e){V("Error on validator but not throwing since not mandatory for monitoring (only for refresh)",e.message)}try{g(e.adapterCode,'BidWon event should have a "bidderCode" key as a string'),o=e.adapterCode}catch(e){V("Error on validator but not throwing since not mandatory",e.message)}f(e.netRevenue),v(e.source);const u=pe(he(e.meta).advertiserDomains);return{adId:e.adId,adUnitCode:s,auctionId:i,bidderCode:n,adapterCode:o,size:r,requestId:e.requestId,currency:a,cpm:c,mediaType:null!==(t=e.mediaType)&&void 0!==t?t:"banner",dealId:d,netRevenue:e.netRevenue,source:e.source,advertiserDomains:u}},toBidWonFromSdk:e=>(k(e,"BidWon event should be an object"),g(e.adId,'BidWon event should have a "adId" key as a string'),{adId:e.adId})}}const fe=(e,t)=>{const i=ve(),s=new re(void 0),n=le(i,s,"sdk");t.bindIntegration(s),e.subscribe((([e,[t]])=>{try{n.on(e,t)}catch(e){e.context=e.context||{},e.context.pbjs={source:"sdk:pbjs"},E(e)}}))};function ge(e,t,i){const s=new c,n=[];ae(e,i.tagId,i.globalQueue);const o=e[i.globalQueue],r=t=>{!function(e,t){if(void 0!==e)throw new l(null!=t?t:`Expected value to be undefined, but received ${e}`)}(Object.values(e.pbstck.sdk).find((t=>t!==e.pbstck.sdk[i.tagId]&&t.q===o)),`Concurrency on '${i.globalQueue}' globalQueue (more than 1 destination configured)`),s.next([t[0],de(Object.values(t[1]))])};return s.subscribe(((...e)=>n.push(e))),fe(s.pipe(...u(/cmd/)).pipe(...u(/pbjs|prebid/)),t),{debug:()=>({events:n}),dispatchEvents:()=>{e.pbstck.sdk[i.tagId].q.forEach(r),e.pbstck.sdk[i.tagId].p.push(r)}}}const we=(e,t)=>{if(!e||!t)throw new Error("IllegalArgumentException");return`${e}_${t}`};var ye,Ie="",ke="function",Ce="undefined",Ae="object",Re="string",Se="major",Te="model",Ee="name",je="type",xe="vendor",Ue="version",Ne="architecture",Oe="console",Be="mobile",Ve="tablet",qe="smarttv",$e="wearable",De="xr",ze="embedded",Fe="user-agent",_e=500,Me="brands",Pe="formFactors",Le="fullVersionList",We="platform",Ge="platformVersion",He="bitness",Je="sec-ch-ua",Qe=Je+"-full-version-list",Xe=Je+"-arch",Ke=Je+"-"+He,Ye=Je+"-form-factors",Ze=Je+"-"+Be,et=Je+"-"+Te,tt=Je+"-"+We,it=tt+"-version",st=[Me,Le,Be,Te,We,Ge,Ne,Pe,He],nt="browser",ot="cpu",rt="device",at="engine",dt="os",ct="result",ut="Amazon",lt="Apple",bt="ASUS",pt="BlackBerry",ht="Google",mt="Huawei",vt="Lenovo",ft="LG",gt="Microsoft",wt="Motorola",yt="Samsung",It="Sharp",kt="Sony",Ct="Xiaomi",At="Zebra",Rt="Mobile ",St=" Browser",Tt="Chrome",Et="Chromecast",jt="Firefox",xt="Opera",Ut="Facebook",Nt="Sogou",Ot="Windows",Bt=typeof window!==Ce&&window.navigator?window.navigator:void 0,Vt=Bt&&Bt.userAgentData?Bt.userAgentData:void 0,qt=function(e,t){var i={},s=t;if(!zt(t))for(var n in s={},t)for(var o in t[n])s[o]=t[n][o].concat(s[o]?s[o]:[]);for(var r in e)i[r]=s[r]&&s[r].length%2==0?s[r].concat(e[r]):e[r];return i},$t=function(e){for(var t={},i=0;i<e.length;i++)t[e[i].toUpperCase()]=e[i];return t},Dt=function(e,t){if(typeof e===Ae&&e.length>0){for(var i in e)if(Mt(e[i])==Mt(t))return!0;return!1}return!!Ft(e)&&-1!==Mt(t).indexOf(Mt(e))},zt=function(e,t){for(var i in e)return/^(browser|cpu|device|engine|os)$/.test(i)||!!t&&zt(e[i])},Ft=function(e){return typeof e===Re},_t=function(e){if(e){for(var t=[],i=Wt(/\\?\"/g,e).split(","),s=0;s<i.length;s++)if(i[s].indexOf(";")>-1){var n=Ht(i[s]).split(";v=");t[s]={brand:n[0],version:n[1]}}else t[s]=Ht(i[s]);return t}},Mt=function(e){return Ft(e)?e.toLowerCase():e},Pt=function(e){return Ft(e)?Wt(/[^\d\.]/g,e).split(".")[0]:void 0},Lt=function(e){for(var t in e){var i=e[t];typeof i==Ae&&2==i.length?this[i[0]]=i[1]:this[i]=void 0}return this},Wt=function(e,t){return Ft(t)?t.replace(e,Ie):t},Gt=function(e){return Wt(/\\?\"/g,e)},Ht=function(e,t){if(Ft(e))return e=Wt(/^\s\s*/,e),typeof t===Ce?e:e.substring(0,_e)},Jt=function(e,t){if(e&&t)for(var i,s,n,o,r,a,d=0;d<t.length&&!r;){var c=t[d],u=t[d+1];for(i=s=0;i<c.length&&!r&&c[i];)if(r=c[i++].exec(e))for(n=0;n<u.length;n++)a=r[++s],typeof(o=u[n])===Ae&&o.length>0?2===o.length?typeof o[1]==ke?this[o[0]]=o[1].call(this,a):this[o[0]]=o[1]:3===o.length?typeof o[1]!==ke||o[1].exec&&o[1].test?this[o[0]]=a?a.replace(o[1],o[2]):void 0:this[o[0]]=a?o[1].call(this,a,o[2]):void 0:4===o.length&&(this[o[0]]=a?o[3].call(this,a.replace(o[1],o[2])):void 0):this[o]=a||void 0;d+=2}},Qt=function(e,t){for(var i in t)if(typeof t[i]===Ae&&t[i].length>0){for(var s=0;s<t[i].length;s++)if(Dt(t[i][s],e))return"?"===i?void 0:i}else if(Dt(t[i],e))return"?"===i?void 0:i;return t.hasOwnProperty("*")?t["*"]:e},Xt={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},Kt={embedded:"Automotive",mobile:"Mobile",tablet:["Tablet","EInk"],smarttv:"TV",wearable:"Watch",xr:["VR","XR"],"?":["Desktop","Unknown"],"*":void 0},Yt={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[Ue,[Ee,Rt+"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[Ue,[Ee,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[Ee,Ue],[/opios[\/ ]+([\w\.]+)/i],[Ue,[Ee,xt+" Mini"]],[/\bop(?:rg)?x\/([\w\.]+)/i],[Ue,[Ee,xt+" GX"]],[/\bopr\/([\w\.]+)/i],[Ue,[Ee,xt]],[/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],[Ue,[Ee,"Baidu"]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,/(avant|iemobile|slim)\s?(?:browser)?[\/ ]?([\w\.]*)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio)\/([-\w\.]+)/i,/(heytap|ovi)browser\/([\d\.]+)/i,/(weibo)__([\d\.]+)/i],[Ee,Ue],[/quark(?:pc)?\/([-\w\.]+)/i],[Ue,[Ee,"Quark"]],[/\bddg\/([\w\.]+)/i],[Ue,[Ee,"DuckDuckGo"]],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[Ue,[Ee,"UCBrowser"]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i,/micromessenger\/([\w\.]+)/i],[Ue,[Ee,"WeChat"]],[/konqueror\/([\w\.]+)/i],[Ue,[Ee,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[Ue,[Ee,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[Ue,[Ee,"Yandex"]],[/slbrowser\/([\w\.]+)/i],[Ue,[Ee,"Smart "+vt+St]],[/(avast|avg)\/([\w\.]+)/i],[[Ee,/(.+)/,"$1 Secure"+St],Ue],[/\bfocus\/([\w\.]+)/i],[Ue,[Ee,jt+" Focus"]],[/\bopt\/([\w\.]+)/i],[Ue,[Ee,xt+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[Ue,[Ee,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[Ue,[Ee,"Dolphin"]],[/coast\/([\w\.]+)/i],[Ue,[Ee,xt+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[Ue,[Ee,"MIUI"+St]],[/fxios\/([\w\.-]+)/i],[Ue,[Ee,Rt+jt]],[/\bqihu|(qi?ho?o?|360)browser/i],[[Ee,"360"+St]],[/\b(qq)\/([\w\.]+)/i],[[Ee,/(.+)/,"$1Browser"],Ue],[/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],[[Ee,/(.+)/,"$1"+St],Ue],[/samsungbrowser\/([\w\.]+)/i],[Ue,[Ee,yt+" Internet"]],[/(comodo_dragon)\/([\w\.]+)/i],[[Ee,/_/g," "],Ue],[/metasr[\/ ]?([\d\.]+)/i],[Ue,[Ee,Nt+" Explorer"]],[/(sogou)mo\w+\/([\d\.]+)/i],[[Ee,Nt+" Mobile"],Ue],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|2345Explorer)[\/ ]?([\w\.]+)/i],[Ee,Ue],[/(lbbrowser|rekonq)/i,/\[(linkedin)app\]/i],[Ee],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[Ee,Ut],Ue],[/(Klarna)\/([\w\.]+)/i,/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(alipay)client\/([\w\.]+)/i,/(twitter)(?:and| f.+e\/([\w\.]+))/i,/(chromium|instagram|snapchat)[\/ ]([-\w\.]+)/i],[Ee,Ue],[/\bgsa\/([\w\.]+) .*safari\//i],[Ue,[Ee,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[Ue,[Ee,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[Ue,[Ee,Tt+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[Ee,Tt+" WebView"],Ue],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[Ue,[Ee,"Android"+St]],[/chrome\/([\w\.]+) mobile/i],[Ue,[Ee,Rt+"Chrome"]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[Ee,Ue],[/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i],[Ue,[Ee,Rt+"Safari"]],[/iphone .*mobile(?:\/\w+ | ?)safari/i],[[Ee,Rt+"Safari"]],[/version\/([\w\.\,]+) .*(safari)/i],[Ue,Ee],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[Ee,[Ue,"1"]],[/(webkit|khtml)\/([\w\.]+)/i],[Ee,Ue],[/(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i],[[Ee,Rt+jt],Ue],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[Ee,"Netscape"],Ue],[/(wolvic)\/([\w\.]+)/i],[Ee,Ue],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[Ue,[Ee,jt+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i],[Ee,[Ue,/_/g,"."]],[/(cobalt)\/([\w\.]+)/i],[Ee,[Ue,/[^\d\.]+./,Ie]]],cpu:[[/\b(?:(amd|x|x86[-_]?|wow|win)64)\b/i],[[Ne,"amd64"]],[/(ia32(?=;))/i,/((?:i[346]|x)86)[;\)]/i],[[Ne,"ia32"]],[/\b(aarch64|arm(v?8e?l?|_?64))\b/i],[[Ne,"arm64"]],[/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i],[[Ne,"armhf"]],[/windows (ce|mobile); ppc;/i],[[Ne,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i],[[Ne,/ower/,Ie,Mt]],[/(sun4\w)[;\)]/i],[[Ne,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i],[[Ne,Mt]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[Te,[xe,yt],[je,Ve]],[/\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]((?!sm-[lr])[-\w]+)/i,/sec-(sgh\w+)/i],[Te,[xe,yt],[je,Be]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[Te,[xe,lt],[je,Be]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[Te,[xe,lt],[je,Ve]],[/(macintosh);/i],[Te,[xe,lt]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[Te,[xe,It],[je,Be]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[Te,[xe,mt],[je,Ve]],[/(?:huawei|honor)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[Te,[xe,mt],[je,Be]],[/\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite|pro)?)(?: bui|\))/i],[[Te,/_/g," "],[xe,Ct],[je,Be]],[/oid[^\)]+; (2\d{4}(283|rpbf)[cgl])( bui|\))/i,/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[Te,/_/g," "],[xe,Ct],[je,Ve]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[Te,[xe,"OPPO"],[je,Be]],[/\b(opd2\d{3}a?) bui/i],[Te,[xe,"OPPO"],[je,Ve]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[Te,[xe,"Vivo"],[je,Be]],[/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],[Te,[xe,"Realme"],[je,Be]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[Te,[xe,wt],[je,Be]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[Te,[xe,wt],[je,Ve]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[Te,[xe,ft],[je,Ve]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[Te,[xe,ft],[je,Be]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[Te,[xe,vt],[je,Ve]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[Te,/_/g," "],[xe,"Nokia"],[je,Be]],[/(pixel c)\b/i],[Te,[xe,ht],[je,Ve]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[Te,[xe,ht],[je,Be]],[/droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[Te,[xe,kt],[je,Be]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[Te,"Xperia Tablet"],[xe,kt],[je,Ve]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[Te,[xe,"OnePlus"],[je,Be]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[Te,[xe,ut],[je,Ve]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[Te,/(.+)/g,"Fire Phone $1"],[xe,ut],[je,Be]],[/(playbook);[-\w\),; ]+(rim)/i],[Te,xe,[je,Ve]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[Te,[xe,pt],[je,Be]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[Te,[xe,bt],[je,Ve]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[Te,[xe,bt],[je,Be]],[/(nexus 9)/i],[Te,[xe,"HTC"],[je,Ve]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[xe,[Te,/_/g," "],[je,Be]],[/tcl (xess p17aa)/i,/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])(_\w(\w|\w\w))?(\)| bui)/i],[Te,[xe,"TCL"],[je,Ve]],[/droid [\w\.]+; (418(?:7d|8v)|5087z|5102l|61(?:02[dh]|25[adfh]|27[ai]|56[dh]|59k|65[ah])|a509dl|t(?:43(?:0w|1[adepqu])|50(?:6d|7[adju])|6(?:09dl|10k|12b|71[efho]|76[hjk])|7(?:66[ahju]|67[hw]|7[045][bh]|71[hk]|73o|76[ho]|79w|81[hks]?|82h|90[bhsy]|99b)|810[hs]))(_\w(\w|\w\w))?(\)| bui)/i],[Te,[xe,"TCL"],[je,Be]],[/(itel) ((\w+))/i],[[xe,Mt],Te,[je,Qt,{tablet:["p10001l","w7001"],"*":"mobile"}]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[Te,[xe,"Acer"],[je,Ve]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[Te,[xe,"Meizu"],[je,Be]],[/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],[Te,[xe,"Ulefone"],[je,Be]],[/droid.+; (a(?:015|06[35]|142p?))/i],[Te,[xe,"Nothing"],[je,Be]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron|infinix|tecno)[-_ ]?([-\w]*)/i,/(hp) ([\w ]+\w)/i,/(asus)-?(\w+)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w]+)/i,/(jolla)/i,/(oppo) ?([\w ]+) bui/i],[xe,Te,[je,Be]],[/(kobo)\s(ereader|touch)/i,/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i],[xe,Te,[je,Ve]],[/(surface duo)/i],[Te,[xe,gt],[je,Ve]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[Te,[xe,"Fairphone"],[je,Be]],[/(shield[\w ]+) b/i],[Te,[xe,"Nvidia"],[je,Ve]],[/(sprint) (\w+)/i],[xe,Te,[je,Be]],[/(kin\.[onetw]{3})/i],[[Te,/\./g," "],[xe,gt],[je,Be]],[/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[Te,[xe,At],[je,Ve]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[Te,[xe,At],[je,Be]],[/smart-tv.+(samsung)/i],[xe,[je,qe]],[/hbbtv.+maple;(\d+)/i],[[Te,/^/,"SmartTV"],[xe,yt],[je,qe]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[xe,ft],[je,qe]],[/(apple) ?tv/i],[xe,[Te,lt+" TV"],[je,qe]],[/crkey.*devicetype\/chromecast/i],[[Te,Et+" Third Generation"],[xe,ht],[je,qe]],[/crkey.*devicetype\/([^/]*)/i],[[Te,/^/,"Chromecast "],[xe,ht],[je,qe]],[/fuchsia.*crkey/i],[[Te,Et+" Nest Hub"],[xe,ht],[je,qe]],[/crkey/i],[[Te,Et],[xe,ht],[je,qe]],[/droid.+aft(\w+)( bui|\))/i],[Te,[xe,ut],[je,qe]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[Te,[xe,It],[je,qe]],[/(bravia[\w ]+)( bui|\))/i],[Te,[xe,kt],[je,qe]],[/(mitv-\w{5}) bui/i],[Te,[xe,Ct],[je,qe]],[/Hbbtv.*(technisat) (.*);/i],[xe,Te,[je,qe]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[xe,Ht],[Te,Ht],[je,qe]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[je,qe]],[/(ouya)/i,/(nintendo) (\w+)/i],[xe,Te,[je,Oe]],[/droid.+; (shield) bui/i],[Te,[xe,"Nvidia"],[je,Oe]],[/(playstation \w+)/i],[Te,[xe,kt],[je,Oe]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[Te,[xe,gt],[je,Oe]],[/\b(sm-[lr]\d\d[05][fnuw]?s?)\b/i],[Te,[xe,yt],[je,$e]],[/((pebble))app/i],[xe,Te,[je,$e]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[Te,[xe,lt],[je,$e]],[/droid.+; (wt63?0{2,3})\)/i],[Te,[xe,At],[je,$e]],[/droid.+; (glass) \d/i],[Te,[xe,ht],[je,De]],[/(pico) (4|neo3(?: link|pro)?)/i],[xe,Te,[je,De]],[/; (quest( \d| pro)?)/i],[Te,[xe,Ut],[je,De]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[xe,[je,ze]],[/(aeobc)\b/i],[Te,[xe,ut],[je,ze]],[/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i],[Te,[je,Be]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[Te,[je,Ve]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[je,Ve]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[je,Be]],[/(android[-\w\. ]{0,9});.+buil/i],[Te,[xe,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[Ue,[Ee,"EdgeHTML"]],[/(arkweb)\/([\w\.]+)/i],[Ee,Ue],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[Ue,[Ee,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[Ee,Ue],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[Ue,Ee]],os:[[/microsoft (windows) (vista|xp)/i],[Ee,Ue],[/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i],[Ee,[Ue,Qt,Xt]],[/windows nt 6\.2; (arm)/i,/windows[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i,/(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[Ue,Qt,Xt],[Ee,Ot]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[Ue,/_/g,"."],[Ee,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[Ee,"macOS"],[Ue,/_/g,"."]],[/android ([\d\.]+).*crkey/i],[Ue,[Ee,Et+" Android"]],[/fuchsia.*crkey\/([\d\.]+)/i],[Ue,[Ee,Et+" Fuchsia"]],[/crkey\/([\d\.]+).*devicetype\/smartspeaker/i],[Ue,[Ee,Et+" SmartSpeaker"]],[/linux.*crkey\/([\d\.]+)/i],[Ue,[Ee,Et+" Linux"]],[/crkey\/([\d\.]+)/i],[Ue,[Ee,Et]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[Ue,Ee],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish|openharmony)[-\/ ]?([\w\.]*)/i,/(blackberry)\w*\/([\w\.]*)/i,/(tizen|kaios)[\/ ]([\w\.]+)/i,/\((series40);/i],[Ee,Ue],[/\(bb(10);/i],[Ue,[Ee,pt]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[Ue,[Ee,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[Ue,[Ee,jt+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[Ue,[Ee,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[Ue,[Ee,"watchOS"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[Ee,"Chrome OS"],Ue],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) (\w+)/i,/(xbox); +xbox ([^\);]+)/i,/(pico) .+os([\w\.]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux) ?([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[Ee,Ue],[/(sunos) ?([\w\.\d]*)/i],[[Ee,"Solaris"],Ue],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[Ee,Ue]]},Zt=(ye={init:{},isIgnore:{},isIgnoreRgx:{},toString:{}},Lt.call(ye.init,[[nt,[Ee,Ue,Se,je]],[ot,[Ne]],[rt,[je,Te,xe]],[at,[Ee,Ue]],[dt,[Ee,Ue]]]),Lt.call(ye.isIgnore,[[nt,[Ue,Se]],[at,[Ue]],[dt,[Ue]]]),Lt.call(ye.isIgnoreRgx,[[nt,/ ?browser$/i],[dt,/ ?os$/i]]),Lt.call(ye.toString,[[nt,[Ee,Ue]],[ot,[Ne]],[rt,[xe,Te]],[at,[Ee,Ue]],[dt,[Ee,Ue]]]),ye),ei=function(e,t){var i=Zt.init[t],s=Zt.isIgnore[t]||0,n=Zt.isIgnoreRgx[t]||0,o=Zt.toString[t]||0;function r(){Lt.call(this,i)}return r.prototype.getItem=function(){return e},r.prototype.withClientHints=function(){return Vt?Vt.getHighEntropyValues(st).then((function(t){return e.setCH(new ti(t,!1)).parseCH().get()})):e.parseCH().get()},r.prototype.withFeatureCheck=function(){return e.detectFeature().get()},t!=ct&&(r.prototype.is=function(e){var t=!1;for(var i in this)if(this.hasOwnProperty(i)&&!Dt(s,i)&&Mt(n?Wt(n,this[i]):this[i])==Mt(n?Wt(n,e):e)){if(t=!0,e!=Ce)break}else if(e==Ce&&t){t=!t;break}return t},r.prototype.toString=function(){var e=Ie;for(var t in o)typeof this[o[t]]!==Ce&&(e+=(e?" ":Ie)+this[o[t]]);return e||Ce}),Vt||(r.prototype.then=function(e){var t=this,i=function(){for(var e in t)t.hasOwnProperty(e)&&(this[e]=t[e])};i.prototype={is:r.prototype.is,toString:r.prototype.toString};var s=new i;return e(s),s}),new r};function ti(e,t){if(e=e||{},Lt.call(this,st),t)Lt.call(this,[[Me,_t(e[Je])],[Le,_t(e[Qe])],[Be,/\?1/.test(e[Ze])],[Te,Gt(e[et])],[We,Gt(e[tt])],[Ge,Gt(e[it])],[Ne,Gt(e[Xe])],[Pe,_t(e[Ye])],[He,Gt(e[Ke])]]);else for(var i in e)this.hasOwnProperty(i)&&typeof e[i]!==Ce&&(this[i]=e[i])}function ii(e,t,i,s){return this.get=function(e){return e?this.data.hasOwnProperty(e)?this.data[e]:void 0:this.data},this.set=function(e,t){return this.data[e]=t,this},this.setCH=function(e){return this.uaCH=e,this},this.detectFeature=function(){if(Bt&&Bt.userAgent==this.ua)switch(this.itemType){case nt:Bt.brave&&typeof Bt.brave.isBrave==ke&&this.set(Ee,"Brave");break;case rt:!this.get(je)&&Vt&&Vt[Be]&&this.set(je,Be),"Macintosh"==this.get(Te)&&Bt&&typeof Bt.standalone!==Ce&&Bt.maxTouchPoints&&Bt.maxTouchPoints>2&&this.set(Te,"iPad").set(je,Ve);break;case dt:!this.get(Ee)&&Vt&&Vt[We]&&this.set(Ee,Vt[We]);break;case ct:var e=this.data,t=function(t){return e[t].getItem().detectFeature().get()};this.set(nt,t(nt)).set(ot,t(ot)).set(rt,t(rt)).set(at,t(at)).set(dt,t(dt))}return this},this.parseUA=function(){return this.itemType!=ct&&Jt.call(this.data,this.ua,this.rgxMap),this.itemType==nt&&this.set(Se,Pt(this.get(Ue))),this},this.parseCH=function(){var e=this.uaCH,t=this.rgxMap;switch(this.itemType){case nt:var i,s=e[Le]||e[Me];if(s)for(var n in s){var o=Wt(/(Google|Microsoft) /,s[n].brand||s[n]),r=s[n].version;/not.a.brand/i.test(o)||i&&(!/chrom/i.test(i)||/chromi/i.test(o))||(this.set(Ee,o).set(Ue,r).set(Se,Pt(r)),i=o)}break;case ot:var a=e[Ne];a&&(a&&"64"==e[He]&&(a+="64"),Jt.call(this.data,a+";",t));break;case rt:if(e[Be]&&this.set(je,Be),e[Te]&&this.set(Te,e[Te]),"Xbox"==e[Te]&&this.set(je,Oe).set(xe,gt),e[Pe]){var d;if("string"!=typeof e[Pe])for(var c=0;!d&&c<e[Pe].length;)d=Qt(e[Pe][c++],Kt);else d=Qt(e[Pe],Kt);this.set(je,d)}break;case dt:var u=e[We];if(u){var l=e[Ge];u==Ot&&(l=parseInt(Pt(l),10)>=13?"11":"10"),this.set(Ee,u).set(Ue,l)}this.get(Ee)==Ot&&"Xbox"==e[Te]&&this.set(Ee,"Xbox").set(Ue,void 0);break;case ct:var b=this.data,p=function(t){return b[t].getItem().setCH(e).parseCH().get()};this.set(nt,p(nt)).set(ot,p(ot)).set(rt,p(rt)).set(at,p(at)).set(dt,p(dt))}return this},Lt.call(this,[["itemType",e],["ua",t],["uaCH",s],["rgxMap",i],["data",ei(this,e)]]),this}function si(e,t,i){if(typeof e===Ae?(zt(e,!0)?(typeof t===Ae&&(i=t),t=e):(i=e,t=void 0),e=void 0):typeof e!==Re||zt(t,!0)||(i=t,t=void 0),!(this instanceof si))return new si(e,t,i).getResult();var s=typeof e===Re?e:Bt&&Bt.userAgent?Bt.userAgent:i&&i[Fe]?i[Fe]:Ie,n=new ti(i,!0),o=t?qt(Yt,t):Yt,r=function(e){return e==ct?function(){return new ii(e,s,o,n).set("ua",s).set(nt,this.getBrowser()).set(ot,this.getCPU()).set(rt,this.getDevice()).set(at,this.getEngine()).set(dt,this.getOS()).get()}:function(){return new ii(e,s,o[e],n).parseUA().get()}};return Lt.call(this,[["getBrowser",r(nt)],["getCPU",r(ot)],["getDevice",r(rt)],["getEngine",r(at)],["getOS",r(dt)],["getResult",r(ct)],["getUA",function(){return s}],["setUA",function(e){return Ft(e)&&(s=e.length>_e?Ht(e,_e):e),this}]]).setUA(s),this}si.VERSION="2.0.0-rc.1",si.BROWSER=$t([Ee,Ue,Se,je]),si.CPU=$t([Ne]),si.DEVICE=$t([Te,xe,je,Oe,Be,qe,Ve,$e,ze]),si.ENGINE=si.OS=$t([Ee,Ue]);class ni{constructor(){this.onAdStream=new c}onAd(e){const t=`/${e.formatId}`,i=e.formatId,s={bidderCode:"smart-rtb+",cpm:e.cpm,size:e.size,adUnitName:i,adUnitPathSuffix:t,formatId:e.formatId,customFields:{}};this.onAdStream.next(s)}}function oi(e){if(e.includes("pubstackRefresh")){const t=e.find((e=>e.startsWith("pubstackRefreshRank")));if(void 0!==t&&t.includes(":")){const e=parseInt(t.split(":")[1])||0;return e>0?e:0}}return 0}function ri(e,t){const i=function(e){const t=e.split("?")[1];if(void 0!==t){const e=t.split("=");return{key:e[0],value:e[1]}}return}(e),s=e.split("?")[0].startsWith("/")?e.split("?")[0]:`/${e.split("?")[0]}`,n=function(e){return e.getAdUnitPath().replace("//","/")}(t);return s===(n.startsWith("/")?n:`/${n}`)&&(void 0===i||t.getTargeting(i.key)[0]===i.value)}const ai=(e,t)=>{const i=e.path;if(void 0===t||void 0===i)return;const s=t.pubads().getSlots();if(void 0===s)return;const n=s.filter((e=>ri(i,e)));switch(n.length){case 0:return;case 1:return n[0];default:if(-1!==i.indexOf("?"))return V("[pubstackGoogleTag] retrieve first slot matching the  dimension",i),n[0];{const s=t.pubads();try{!function(e){if("object"!=typeof e||null===e||!("getSlotIdMap"in e)||"function"!=typeof e.getSlotIdMap)throw new Error("Missing property getSlotIdMap on googletag")}(s);const t=s.getSlotIdMap();V("[pubstackGoogleTag] get all slot map",t);return t[Object.keys(t).filter((e=>e.startsWith(i)))[function(e){const t=Array.from(document.querySelectorAll(`div[id*='${e.name}']`)).map((e=>e.id));return t.findIndex((t=>t===e.code))}(e)]]}catch(e){return void V(`[pubstackGoogleTag] ${e}`)}}}};const di=e=>{const t=e;if(void 0!==t&&t.apiReady&&void 0!==t.cmd&&void 0!==t.pubads&&"function"==typeof t.pubads){if("function"==typeof t.pubads().refresh)return t}};const ci=e=>{const t=(e=>di(e.googletag))(window);V("[pubstackFindElementById] adUnit ",e);const i=ai(e,t);return V("[pubstackFindElementById] slot ",i),i?document.getElementById(i.getSlotElementId()):ui(e.code)},ui=e=>{const t=document.getElementById(e);return null===t?document.querySelector(`iframe[id*='${e}']`):t};function li(e){const t=document.getElementsByTagName("meta");return Array.from(t).filter((t=>t.name.includes(`${e}:`)))}function bi(e,t){return e.replace(`${t}:`,"")}const pi=(e,t)=>{const i=new Set;return e.tags.forEach((e=>i.add(e))),t.tags.forEach((e=>i.add(e))),i};class hi{constructor(e){this.coreAuctionStream=new c,this.coreImpressionStream=new c,this.state=e}subscribe(e){this.coreAuctionStream.subscribe(e.onAuction),this.coreImpressionStream.subscribe(e.onImpression)}pushNewImpression(e){var t,i,s,n,o;const r=this.state.getAuction(e.auctionId),a=null!==(t=this.state.findLastAuctionId(r.adUnit))&&void 0!==t?t:"",d=this.state.findBidsByAuctionId(r.auctionId).filter((e=>e.state===Y.BID)).map((e=>e)).sort(((e,t)=>t.cpm-e.cpm)),c=(null!==(s=null===(i=d[0])||void 0===i?void 0:i.cpm)&&void 0!==s?s:0)-(null!==(o=null===(n=d[1])||void 0===n?void 0:n.cpm)&&void 0!==o?o:0);return this.state.storeCoreBidResponses.set(e.bidId,e),this.impressionFormatAndForward(r,e,c,a)}pushNewAuction(e){var t,i;e.bidRequests=(t=e.bidRequests,i="adThink",t.filter((e=>e.bidderCode!==i))),0!==e.bidRequests.length&&this.coreAuctionStream.next(e)}checkMeasurability(e){return"IntersectionObserver"in window&&"IntersectionObserverEntry"in window&&"intersectionRatio"in window.IntersectionObserverEntry.prototype&&"isIntersecting"in window.IntersectionObserverEntry.prototype&&!!ci(e)}impressionSasFormatAndForward(e,t){const i={bidId:"smart-"+d(),auctionId:"smart-"+d(),lastAuctionId:"smart-"+d(),adUnit:t,bidderCode:e.bidderCode,cpm:e.cpm,currency:e.currency,refresh:!1,size:e.size,userConsentState:"notAvailable",userConsentVersion:"notAvailable",hasUserId:"notAvailable",userIdProviderList:[],pbjsVersion:"smart-ad-server",tags:new Set,viewabilityMeasurable:!1,cpmUplift:0,pubstackRefresh:!1,pubstackRefreshRank:0,customFields:e.customFields};this.coreImpressionStream.next(i)}impressionFormatAndForward(e,t,i,s){const n=this.state.findBidsByAuctionId(e.auctionId),o=this.state.getAuction(s),r=J(n),a=this.checkMeasurability(e.adUnit),{userConsentState:d,userConsentVersion:c}=Q(r),u={bidId:t.bidResponseId,auctionId:e.auctionId,lastAuctionId:s,adUnit:e.adUnit,bidderCode:t.bidderCode,cpm:t.cpm,currency:t.currency,refresh:!1,size:t.size,userConsentState:d,userConsentVersion:c,hasUserId:e.hasUserId,userIdProviderList:e.userIdProviderList,pbjsVersion:e.pbjsVersion,tags:pi(e,t),viewabilityMeasurable:a,cpmUplift:i,dealId:t.dealId,advertiserDomains:t.advertiserDomains,pubstackRefresh:o.pubstackRefresh,pubstackRefreshRank:o.pubstackRefreshRank,customFields:t.customFields,bidNetRevenue:t.bidNetRevenue,source:t.source,adapterCode:t.adapterCode};this.coreImpressionStream.next(u)}}class mi{constructor(){this.storeAuctions=new Map,this.storeCoreBidResponses=new Map,this.mappingAdUnitNameAuctions=new Map,this.mappingAdUnitCodeLastAuctions=new Map}setAuction(e){var t;this.storeAuctions.set(e.auctionId,e);const i=null!==(t=this.mappingAdUnitNameAuctions.get(e.adUnit.name))&&void 0!==t?t:[];i.find((t=>t===e.auctionId))||(i.push(e.auctionId),this.mappingAdUnitNameAuctions.set(e.adUnit.name,i)),this.mappingAdUnitCodeLastAuctions.set(e.adUnit.code,e.auctionId)}getAuction(e){const t=this.storeAuctions.get(e);return w(t,`auction not found, @auctionId=${e}`),t}findBidsByAuctionId(e){var t;return(null===(t=this.storeAuctions.get(e))||void 0===t?void 0:t.bidRequests)||[]}findLastAuctionId(e){return this.mappingAdUnitCodeLastAuctions.get(e.code)}findAuctionByAdUnitPath(e){return Array.from(this.storeAuctions.values()).find((t=>{var i;return null===(i=t.adUnit.path)||void 0===i?void 0:i.endsWith(e)}))}}class vi{constructor(){this.state=new mi,this.forwarder=new hi(this.state),this.fallbackCurrency=void 0}bindIntegration(e){e instanceof re&&(e.onBidResponseStream.subscribe((e=>this.bidResponse(e)),E),e.onAuctionEndStream.subscribe((e=>this.auctionDone(e)),E),e.onBidWonStream.subscribe((e=>this.impression(e)),E),e.onBidWonFromSdkStream.subscribe((e=>this.impressionFromSdk(e)),E),this.fallbackCurrency=e.getAdServerCurrency()),e instanceof ni&&e.onAdStream.subscribe((e=>this.impressionSas(e)),E)}helperToBidResponse(e,t){var i;const s=Object.assign({},e);s.state=Y.BID,t.tags.forEach((e=>s.tags.add(e)));let n=t.size;return"native"===t.mediaType&&(n="native"),"video"===t.mediaType&&(n=`video-${n}`),s.size=n,s.cpm=t.cpm,s.currency=null!==(i=t.currency)&&void 0!==i?i:this.fallbackCurrency,s.bidResponseId=t.bidResponseId,s.bidderCode=t.bidderCode,s}bidResponse(e){V("[pubstackCoreController] onBidResponse",e),e.bidderCode="nexx360"===e.adapterCode?"nexx360":e.bidderCode;const t={auctionId:e.auctionId,state:Y.BID,tags:new Set(e.tags),customFields:e.customFields};try{const i=this.state.getAuction(e.auctionId);if(i){const s=i.bidRequests.find((t=>t.bidId===e.bidId));s&&(i.bidRequests=i.bidRequests.filter((t=>t.bidId!==e.bidId)),i.bidRequests.push(Object.assign(Object.assign(Object.assign({},s),this.helperToBidResponse(t,e)),{tags:s.tags})))}}catch(e){}}helperAuctionBidToBidResponse(e){var t;const i=Object.assign(Object.assign({},e),{tags:new Set});if(e.state===Y.BID){let s=e.size;"native"===e.mediaType&&(s="native"),"video"===e.mediaType&&(s=`video-${s}`),i.size=s,i.cpm=e.cpm,i.currency=null!==(t=e.currency)&&void 0!==t?t:this.fallbackCurrency,i.bidResponseId=e.bidResponseId,i.timeToRespond=e.timeToRespond,i.dealId=e.dealId,i.advertiserDomains=e.advertiserDomains,i.bidNetRevenue=e.bidNetRevenue}return e.tags.forEach((e=>i.tags.add(e))),i}bidWonToCoreBidResponse(e){var t,i;const s=a(e.requestId);let n=e.size;return"native"===e.mediaType&&(n="native"),"video"===e.mediaType&&(n=`video-${n}`),{adId:e.adId,bidId:s,bidResponseId:a(s,e.adId),bidderCode:"nexx360"===e.adapterCode?"nexx360":null!==(t=e.bidderCode)&&void 0!==t?t:"",adapterCode:e.pbstckAdapterCode,cpm:e.cpm,size:n,state:Y.BID,auctionId:e.auctionId,tags:new Set(e.tags),currency:null!==(i=e.currency)&&void 0!==i?i:this.fallbackCurrency,customFields:e.customFields,dealId:e.dealId,advertiserDomains:e.advertiserDomains,bidNetRevenue:e.bidNetRevenue,source:e.source}}auctionDone(e){V("[pubstackCoreController] onAuctionDone",e.auctionId);try{const t=(e.bidRequests||[]).map(this.helperAuctionBidToBidResponse),i=J(t),{userConsentState:s,userConsentVersion:n}=Q(i),o={auctionId:e.auctionId,adUnit:e.adUnit,tags:new Set(e.tags),sizes:new Set(e.sizes),hasUserId:e.userId.hasUserId,userIdProviderList:e.userId.userIdProviderList,refreshIndex:e.refreshIndex,pbjsVersion:e.pbjsVersion,refresh:!1,pubstackRefresh:e.labels.includes("pubstackRefresh"),pubstackRefreshRank:oi(e.labels),userConsentState:s,userConsentVersion:n,bidRequests:t,customFields:e.customFields,duration:e.duration,timeout:e.timeout,state:"RUNNING"};this.state.setAuction(o);const r=()=>{const t=this.state.getAuction(e.auctionId);"FINISHED"!==t.state?(this.forwarder.pushNewAuction(t),t.state="FINISHED",this.state.setAuction(t)):V("[pubstackCoreController] auction is already finished",t)};void 0===e.gracePeriod?r():setTimeout((()=>r()),e.gracePeriod)}catch(e){V("[pubstackCoreController] error: cannot set auction as done because auction is not running")}}findBidResponseDuplicate(e){const t=this.state.storeCoreBidResponses.get(e.bidId),i=!!t&&t.bidResponseId===e.bidResponseId&&t.bidderCode===e.bidderCode;return i&&V("[pubstackCoreController] duplicate bid response found",e),i}_impression(e){if("FINISHED"===this.state.getAuction(e.auctionId).state)this.findBidResponseDuplicate(e)||this.forwarder.pushNewImpression(e);else{const t=i=>{i.auctionId===e.auctionId&&(this.findBidResponseDuplicate(e)||this.forwarder.pushNewImpression(e),this.forwarder.coreAuctionStream.unsubscribe(t))};this.forwarder.coreAuctionStream.subscribe(t)}}impression(e){V("[pubstackCoreController] onImpression",e);try{const t=this.bidWonToCoreBidResponse(e);this._impression(t)}catch(e){V("[pubstackCoreController] error: cannot create impression",e)}}impressionFromSdk(e){V("[pubstackCoreController] onImpression",e);try{const t=Array.from(this.state.storeAuctions.values()).find((t=>t.bidRequests.filter((e=>e.state===Y.BID)).find((t=>t.adId===e.adId))));if(t){const i=t.bidRequests.filter((e=>e.state===Y.BID)).find((t=>t.adId===e.adId));i.customFields=Object.assign(Object.assign({},i.customFields),e.customFields),this._impression(i)}}catch(e){V("[pubstackCoreController] error: cannot create impression",e)}}impressionSas(e){V("[pubstackCoreController] onImpressionSas",e);try{const t=this.state.findAuctionByAdUnitPath(e.adUnitPathSuffix);w(t,`onSasNewBidResponse: cannot retrieve related auction, @adUnitName=${e.adUnitName}, @adUnitPath=${e.adUnitPathSuffix}`),e.currency=this.fallbackCurrency,this.forwarder.impressionSasFormatAndForward(e,t.adUnit)}catch(e){V("[pubstackCoreController] error: cannot create impression",e)}}subscribe(e){this.forwarder.subscribe(e)}debug(){const e=[];return this.forwarder.subscribe({onAuction:t=>e.push(t),onImpression:t=>e.push(t)}),{auctions:this.state,auctionsDone:void 0,adUnits:void 0,events:e}}}const fi=(e,t)=>Object.entries(t).every((([t,i])=>typeof i==typeof{}&&typeof e[t]==typeof{}?fi(e[t],i):typeof e[t]==typeof i)),gi=(e,t)=>{if(t)for(let i=0;i<1e3;i+=1)try{const s=e([],{},[i]);try{if(fi(s,t))return s}catch(e){}}catch(e){}},wi=400;const yi={CALL:"call",AD_CALLBACK:"pbstck:ad"};const Ii=()=>({toAd(e,t){k(e),w(t,"toAd: id is undefined"),w(e.formatId,"toAd: formatId is undefined"),g(t),function(e,t,i){if(!C(e,t))throw new l(`Expected object to have key '${t}', but not found`)}(e,"formatId");const i="string"==typeof e.size?e.size:"unknown";return{cpm:p(e.cpm)?e.cpm:0,size:i,formatId:p(e.formatId)?e.formatId.toString():e.formatId}}});const ki=new WeakSet;function Ci(e,t,i){const s=e[i.globalName];if(void 0===s||!s.__smartLoaded)return{status:K.NOT_READY};const n=Ii(),o=new ni,r=function(e,t){return{on(i,s,n){V("sas.dispatcher",i,s),i===yi.AD_CALLBACK&&t.onAd(e.toAd(s,n))}}}(n,o);t.bindIntegration(o);const a=[];if(ki.has(s))return{status:K.LOADED};ki.add(s);const d=Object.values(yi);return d.forEach((e=>{s.events.on(e,((t,i)=>{const s=de(t);a.push({eventName:e,data:s,id:i});try{r.on(e,s,i)}catch(e){e.context=e.context||{},e.context.adapter={source:"sas:on"},E(e)}}))})),s.events.history().filter((({eventName:e})=>d.includes(e))).map(de).forEach((({eventName:e,data:t,id:i})=>{const s=de(t);a.push({eventName:e,data:s,id:i});try{r.on(e,t,i)}catch(e){e.context=e.context||{},e.context.adapter={source:"sas:replayed"},E(e)}})),{status:K.LOADED,instance:{debug:()=>({events:a})}}}function Ai(e,t){return"object"==typeof t&&t instanceof Set?Array.from(t):t}function Ri(e,t){return"tags"!==e&&"sizes"!==e||!Array.isArray(t)?t:new Set(t)}class Si{constructor(e){this.coreEvents=[],this.errors=[],e.forwarder.coreAuctionStream.subscribe((e=>this.addEvent(e))),e.forwarder.coreImpressionStream.subscribe((e=>this.addEvent(e)))}addEvent(e){this.coreEvents.push(e)}addError(e){this.errors.push(e)}getEvents(){return this.coreEvents.map((e=>JSON.parse(JSON.stringify(e,Ai),Ri)))}getErrors(){return this.errors}}const Ti=e=>{var t;const i=null!==(t=null==e?void 0:e.host)&&void 0!==t?t:"unknown";return i.startsWith("www.")?i.substring(4):i},Ei=e=>{let t;return t=e&&e.protocol&&e.host&&e.pathname?`${e.protocol}//${e.host}${e.pathname}`:"unknown",t};class ji{constructor(e,t,i){this.url=e,this.context=i,this.sender=t}buildUrl(e){return`${this.url}?sId=${this.context.scopeId.substring(0,8)}&tId=${this.context.tagId}&c=${e}&ctr=${this.context.country}`}send(e){const t=e.map((e=>xi(e,this.context)));this.sender(this.buildUrl(t.length),t)}}const xi=(e,t)=>Object.assign(Object.assign(Object.assign({},e),t),{domain:Ti(window.location),href:Ei(window.location)});function Ui(e){var t;const i="pbstck",s="pbstck_context",n=[...li(i),...li(s)],o=n.find((e=>"pbstck_ab_test"===bi(e.name,i)));if(o)return o.content;{let i=null===(t=n.find((e=>"pbstck_ab_test"===bi(e.name,s))))||void 0===t?void 0:t.content;return i&&!e.includes(i)&&(i=void 0),i}}const Ni=20;function Oi(){const e="pbstck",t=new Map;li(e).forEach((i=>{const s=bi(i.name,e);t.has(s)&&q(`Custom dim ${s} is present many times`),t.size<Ni?t.set(s,i.content):q(`Skipping custom dim ${s} with ${i.content}: limit of ${Ni} keys exceeded`)}));const i=Object.assign({},...Array.from(t.entries()).map((([e,t])=>({[e]:t}))));return t.size>0&&V("Custom dim found :",i),i}class Bi{constructor(e,t,i,s,n){var o;this.items=[],this.url=e,this.buffer=null!==(o=null==n?void 0:n.buffer)&&void 0!==o?o:Bi.defaults.buffer,this.sender=t,this.context=i,this.abTestValues=s}buildUrl(){const e=this.context.customFields["kleanads-version"],t=document.querySelector('meta[name="pbstck:config-version"]'),i=null==t?void 0:t.content,s=this.items.reduce(((e,t)=>e+(t.pubstackRefresh?1:0)),0),n=e?`&v=${e}&s=${i}`:"",o=s>0?`&rc=${s}`:"";return`${this.url}?tId=${this.context.tagId}&c=${this.items.length}${n}${o}`}batchThenSend(e,t=!0){const i=t?Vi(e,this.context,this.abTestValues):e;if(this.items.push(i),0===this.buffer)return this.flush();1===this.items.length&&setTimeout((()=>this.flush()),this.buffer)}flush(){0!==this.items.length&&(this.sender(this.buildUrl(),[...this.items]),this.reset())}reset(){this.items=[]}}Bi.defaults={buffer:150};const Vi=(e,t,i)=>{var s;const{customFields:n}=e,{customFields:o}=t,r=Oi(),a=null===(s=navigator.connection)||void 0===s?void 0:s.effectiveType,d=Object.assign(Object.assign(Object.assign(Object.assign({},n),o),r),{windowWidth:window.innerWidth.toString(),windowHeight:window.innerHeight.toString()});return Object.assign(Object.assign(Object.assign({},e),t),{customFields:d,abTestPopulation:Ui(null!=i?i:[]),domain:Ti(window.location),href:Ei(window.location),networkConnectionEffectiveType:a,pageId:window.__pbstck_page_id||"unknown",kleanAdsStackVersion:d["config-version"],kleanAdsStackId:d["kleanads-stack-id"]})},qi=d();class $i{constructor(e,t,i,s,n){const o=e.slice(0,-7);this.viewabilityGateway=new Bi(`${e}/viewability`,Di,t,n),this.auctionGateway=new Bi(`${e}/auction`,Di,t,n),this.impressionGateway=new Bi(`${e}/impression`,Di,t,n),this.errorGateway=new Bi(`${e}/error`,Di,t,n),this.traceGateway=new Bi(`${o}/trace`,Di,t,void 0,{buffer:5e3}),this.measuredImpressionGateway=new Bi(`${e}/measured`,Di,t,n),this.measuredImpressionBeaconGateway=new ji(`${e}/measured`,zi,t),this.pageGateway=new Bi(`${e}/page`,Di,t,n),this.bindController(i,s)}bindController(e,t){e.forwarder.coreAuctionStream.subscribe((e=>this.formatAndForwardAuction(e))),e.forwarder.coreImpressionStream.subscribe((e=>{this.formatAndForwardImpression(e)})),void 0!==t&&(t.viewabilityStream.subscribe((e=>{this.formatAndForwardViewability(e)})),t.viewedStream.subscribe((e=>{this.formatAndForwardMeasuredImpression(e)})),t.onUnload((e=>this.formatAndForwardMeasuredImpressionForBeacon(e))))}formatAndForwardAuction(e){const t=[];e.bidRequests.forEach((e=>{t.push({bidId:ee(e),bidderCode:e.bidderCode,state:e.state,source:e.source,tags:0===e.tags.size?void 0:Array.from(e.tags),cpm:Z(e)?e.cpm:void 0,currency:Z(e)?e.currency:void 0,size:Z(e)?e.size:void 0,customFields:e.customFields,timeToRespond:e.timeToRespond,rejectionReason:e.rejectionReason,dealId:Z(e)?e.dealId:void 0,advertiserDomains:Z(e)?e.advertiserDomains:void 0,bidNetRevenue:Z(e)?e.bidNetRevenue:void 0,adapterCode:e.adapterCode})}));const i=void 0===e.userConsentState?"notAvailable":e.userConsentState,s=void 0===e.userConsentVersion?"notAvailable":e.userConsentVersion,n={auctionId:e.auctionId,adUnit:e.adUnit.name,adUnitPath:e.adUnit.path,sizes:Array.from(e.sizes),tags:0===e.tags.size?void 0:Array.from(e.tags),refresh:e.refresh,userConsentState:i,userConsentVersion:s,hasUserId:e.hasUserId,userIdProviderList:e.userIdProviderList,pbjsVersion:e.pbjsVersion,bidRequests:t,pubstackManaged:!1,pubstackRefresh:e.pubstackRefresh,pubstackRefreshRank:e.pubstackRefreshRank,customFields:e.customFields,duration:e.duration,timeout:e.timeout};this.auctionGateway.batchThenSend(n)}formatAndForwardImpression(e){const t={bidId:e.bidId,auctionId:e.auctionId,lastAuctionId:e.lastAuctionId,adUnit:e.adUnit.name,adUnitPath:e.adUnit.path,bidderCode:e.bidderCode,cpm:e.cpm,currency:e.currency,refresh:e.refresh,size:e.size,userConsentState:e.userConsentState,userConsentVersion:e.userConsentVersion,hasUserId:e.hasUserId,userIdProviderList:e.userIdProviderList,pbjsVersion:e.pbjsVersion,cpmUplift:e.cpmUplift,dealId:e.dealId,advertiserDomains:e.advertiserDomains,tags:Array.from(e.tags),viewabilityMeasurable:e.viewabilityMeasurable,pubstackManaged:!1,pubstackRefresh:e.pubstackRefresh,pubstackRefreshRank:e.pubstackRefreshRank,customFields:e.customFields,bidNetRevenue:e.bidNetRevenue,source:e.source,adapterCode:e.adapterCode};this.impressionGateway.batchThenSend(t)}formatAndForwardViewability(e){const t={bidId:e.bidId,auctionId:e.auctionId,lastAuctionId:e.lastAuctionId,adUnit:e.adUnit.name,adUnitPath:e.adUnit.path,bidderCode:e.bidderCode,pbjsVersion:e.pbjsVersion,cpm:e.cpm,currency:e.currency,size:e.size,refresh:e.refresh,htmlElementId:e.htmlElementId,mrcViewable:!0,pubstackManaged:!1,pubstackRefresh:e.pubstackRefresh,pubstackRefreshRank:e.pubstackRefreshRank};this.viewabilityGateway.batchThenSend(t)}formatAndForwardMeasuredImpression(e){const t={bidId:e.bidId,auctionId:e.auctionId,lastAuctionId:e.lastAuctionId,adUnit:e.adUnit.name,adUnitPath:e.adUnit.path,bidderCode:e.bidderCode,cpm:e.cpm,currency:e.currency,refresh:e.refresh,size:e.size,pbjsVersion:e.pbjsVersion,viewedTime:e.viewedTime,pubstackManaged:!1,pubstackRefresh:e.pubstackRefresh,pubstackRefreshRank:e.pubstackRefreshRank};this.measuredImpressionGateway.batchThenSend(t)}formatAndForwardMeasuredImpressionForBeacon(e){const t=e.map((e=>({bidId:e.bidId,auctionId:e.auctionId,lastAuctionId:e.lastAuctionId,adUnit:e.adUnit.name,adUnitPath:e.adUnit.path,bidderCode:e.bidderCode,cpm:e.cpm,currency:e.currency,refresh:e.refresh,size:e.size,pbjsVersion:e.pbjsVersion,viewedTime:e.viewedTime,pubstackManaged:!1,pubstackRefresh:e.pubstackRefresh,pubstackRefreshRank:e.pubstackRefreshRank})));this.measuredImpressionBeaconGateway.send(t)}sendError(e){this.errorGateway.batchThenSend(e)}sendLog(e){this.traceGateway.batchThenSend(e,!1)}sendToDatadog(e){var t;if(void 0===e.error||""===e.error)return;const i=e.error,s=null!==(t=e.context)&&void 0!==t?t:{};k(s),g(i);const n=Object.assign(Object.assign({pageId:qi,status:"error",domain:Ti(window.location),href:Ei(window.location)},s),{message:i}),o=new XMLHttpRequest;o.open("POST","https://browser-http-intake.logs.datadoghq.com/v1/input/pub551f730416e5317842afc2792691e95c?ddsource=browser&ddtags=version:1.3.2",!0),o.setRequestHeader("Content-Type","text/plain"),o.send(JSON.stringify(n))}}const Di=(e,t)=>{const i=new XMLHttpRequest;i.open("POST",e,!0),i.setRequestHeader("Content-Type","text/plain"),i.send(JSON.stringify(t)),V("post",e,t)},zi=(e,t)=>{const i=JSON.stringify(t);navigator.sendBeacon(e,i),V("beacon",e,t)};class Fi{constructor(e){this.adUnit=e}visibilityRatioFromIntersection(e){const t=_i(this.adUnit,this.adUnit);if(this.adUnit===t)return e.intersectionRatio;const i=t.getBoundingClientRect();return e.intersectionRect.height/i.height}}const _i=(e,t)=>(Mi(e)<Mi(t)&&(e=t),Array.from(t.children).filter((e=>e instanceof HTMLElement)).forEach((t=>{e=_i(e,t)})),e),Mi=e=>e.getBoundingClientRect?e.getBoundingClientRect().height:0;class Pi{constructor(){this.state="new",this.elapsedTime=0,this.timeTargets=[]}start(){return"stopped"===this.state&&(this.elapsedTime=0),"started"===this.state?this.elapsed():(this.state="started",this.timeoutId=setTimeout((()=>this.update()),Pi.pacing),this.elapsedTime)}pause(){if("paused"===this.state||"stopped"===this.state)return this.elapsedTime;const e=this.update();return this.state="paused",e}stop(){if("stopped"===this.state)return this.elapsedTime;const e=this.update();return this.state="stopped",e}elapsed(){return"started"===this.state&&this.update(),this.elapsedTime}timeTargetReached(e){return new Promise((t=>{this.timeTargets.push([e,t])}))}update(){let e=Pi.pacing;if("started"===this.state){this.elapsedTime+=e;for(let t=this.timeTargets.length;t--;){const[i,s]=this.timeTargets[t];this.elapsedTime>=i?(s(i),this.timeTargets.splice(t,1)):e=Math.min(e,i-this.elapsedTime)}}return"stopped"!==this.state&&(this.timeoutId&&clearTimeout(this.timeoutId),this.timeoutId=setTimeout((()=>this.update()),e)),this.elapsedTime}}Pi.pacing=100;class Li{constructor(e,t,i,s,n){this.creative=s,this.timer=new Pi,this.inViewPercentage=e,this.cumulative=i,this.timer.timeTargetReached(t).then((()=>{n()}))}pauseTimer(){this.timer.pause()}startTimer(){this.timer.start()}stopTimer(){this.timer.stop()}getElapsed(){return this.timer.elapsed()}isViewable(){return this.inView}intersectionChange(e){this.creative.visibilityRatioFromIntersection(e)>=this.inViewPercentage?this.inView||(this.timer.start(),this.inView=!0):this.inView&&(this.cumulative?this.timer.pause():this.timer.stop(),this.inView=!1)}getTimerState(){return this.timer.state}}const Wi={root:null,rootMargin:"0px",threshold:[0,.3,.5,1]};class Gi{constructor(e,t,i){this.windowActive=!0,this.pbstckWindow=i,this.visibilityState=i.document.visibilityState,this.trackedOnFocusChange=this.onFocusChange.bind(this),i.addEventListener("focus",this.trackedOnFocusChange),i.addEventListener("blur",this.trackedOnFocusChange),this.trackedOnVisibilityChange=this.onVisibilityChange.bind(this),i.addEventListener("visibilitychange",this.trackedOnVisibilityChange);const s=this.getObserverThresholds(t);this.observer=new IntersectionObserver((e=>this.intersectionObserverCallback(e)),s),this.observer.observe(e);const n=new Fi(e);this.computer=new Li(t.minPercentageInView,t.minTimeInView,t.cumulativeTimer,n,(()=>t.completionCallback(e.id))),"hidden"!==this.visibilityState&&this.windowActive||this.stop()}getObserverThresholds(e){return.3===e.minPercentageInView?Object.assign(Object.assign({},Wi),{threshold:[.3,.5,.75,1]}):Object.assign(Object.assign({},Wi),{threshold:[.5,.75,1]})}onVisibilityChange(){this.visibilityState="visible"===this.visibilityState?"hidden":"visible",this.checkWindowActive()}onFocusChange(e){this.windowActive="focusin"===e.type||"focus"===e.type,this.checkWindowActive()}checkWindowActive(){"visible"===this.visibilityState&&this.windowActive?this.start():this.pause()}destroy(){var e;this.stop(),null===(e=this.observer)||void 0===e||e.disconnect(),this.pbstckWindow.removeEventListener("visibilitychange",this.trackedOnVisibilityChange),this.pbstckWindow.removeEventListener("focus",this.trackedOnFocusChange),this.pbstckWindow.removeEventListener("blur",this.trackedOnFocusChange),this.computer=null,this.observer=null}getElapsed(){return null===this.computer?0:this.computer.getElapsed()}pause(){var e;null===(e=this.computer)||void 0===e||e.pauseTimer()}start(){var e;null===(e=this.computer)||void 0===e||e.startTimer()}stop(){var e;null===(e=this.computer)||void 0===e||e.stopTimer()}intersectionObserverCallback(e){e.forEach((e=>{var t;null===(t=this.computer)||void 0===t||t.intersectionChange(e)}))}getTimerState(){var e;return null===(e=this.computer)||void 0===e?void 0:e.getTimerState()}}const Hi={viewableTime:1e3,largeAdunitSize:242e3,largeAdunitTreshold:.3,standardAdunitTreshold:.5};class Ji{constructor(e,t){this.viewabilityState=new Map,this.viewedTimeState=new Map,this.elementIdToCode=new Map,this.viewabilityStream=new c,this.viewedStream=new c,V("[pubstackViewability] Create ViewabilityController with config",Hi),this.pbstckWindow=t,this.pbstckWindow.addEventListener("unload",(()=>this.unloadMeasuredImpressions())),e.forwarder.coreImpressionStream.subscribe((e=>{V("[pubstackViewability] Receive impression",e.bidderCode,e.adUnit.code),this.track(e)})),e.forwarder.coreAuctionStream.subscribe((e=>{V("[pubstackViewability] Receive auctionend",e.adUnit.code),this.endMeasure(e.adUnit.code)}))}onUnload(e){this.unloadCallback=e}endMeasure(e){V("[pubstackViewability] receive event to stop measure");const t=this.viewedTimeState.get(e);void 0!==t?(t.viewabilitytracker.stop(),this.onMeasurable(e)):V("[pubstackViewability] event received but no tracker to stop, skipping")}track(e){if(!e.viewabilityMeasurable)return void V("[pubstackViewability] Cannot track impression for adUnit ",e.adUnit);const t=ci(e.adUnit);null!==t?(this.trackViewability(e,t),this.trackMeasure(e,t)):E(new Error(`[pubstackViewability] Unexpected null HTML Element on viewable impression for adUnit ${e.adUnit.name}`))}trackMeasure(e,i){return t(this,void 0,void 0,(function*(){var t;let s=null===(t=this.viewedTimeState.get(e.adUnit.code))||void 0===t?void 0:t.viewabilitytracker;this.elementIdToCode.set(i.id,e.adUnit.code),void 0!==s&&(V(`[pubstackViewability] replacing existing measurability tracker on ${i.id}`),s.stop(),this.onMeasurable(e.adUnit.code)),V(`[pubstackViewability] tracking code ${e.adUnit.code} with rule MRC for measurability`);const n={minPercentageInView:this.minPercentageInView(i,Hi),minTimeInView:18e4,cumulativeTimer:!0,completionCallback:e=>{const t=this.elementIdToCode.get(e);void 0!==t?this.onMeasurable(t):V(`[pubstackViewability] unable to find matching adunitcode for element ${e}`)}};s=new Gi(i,n,this.pbstckWindow),this.viewedTimeState.set(e.adUnit.code,{impression:e,viewabilitytracker:s})}))}trackViewability(e,i){return t(this,void 0,void 0,(function*(){var t;let s=null===(t=this.viewabilityState.get(i.id))||void 0===t?void 0:t.viewabilitytracker;void 0!==s&&(V(`[pubstackViewability] replacing existing tracker on ${i.id}`),s.destroy(),this.viewabilityState.delete(i.id)),V(`[pubstackViewability] tracking element ${i.id} with rule MRC for monitoring`);const n={minPercentageInView:this.minPercentageInView(i,Hi),minTimeInView:Hi.viewableTime,cumulativeTimer:!1,completionCallback:e=>this.onViewable(e)};s=new Gi(i,n,this.pbstckWindow),this.viewabilityState.set(i.id,{impression:e,viewabilitytracker:s})}))}minPercentageInView(e,t){const i=window.getComputedStyle(e);return Number(i.getPropertyValue("width").replace(/px/,""))*Number(i.getPropertyValue("height").replace(/px/,""))>t.largeAdunitSize?t.largeAdunitTreshold:t.standardAdunitTreshold}unloadMeasuredImpressions(){if(V("[pubstackViewability] page unloaded, forwarding impressions measured"),void 0!==this.unloadCallback){const e=[];Array.from(this.viewedTimeState.values()).forEach((t=>{if(void 0!==t.viewabilitytracker){t.viewabilitytracker.stop();const i=Math.floor(t.viewabilitytracker.getElapsed()/1e3);i>0&&e.push({bidId:t.impression.bidId,auctionId:t.impression.auctionId,lastAuctionId:t.impression.lastAuctionId,adUnit:t.impression.adUnit,bidderCode:t.impression.bidderCode,pbjsVersion:t.impression.pbjsVersion,cpm:t.impression.cpm,currency:t.impression.currency,refresh:t.impression.refresh,size:t.impression.size,viewedTime:i,pubstackRefresh:t.impression.pubstackRefresh,pubstackRefreshRank:t.impression.pubstackRefreshRank})}})),e.length>0&&this.unloadCallback(e)}}onMeasurable(e){V(`[pubstackViewability] Measurability Event on AdUnit code ${e}`);const t=this.viewedTimeState.get(e);if(void 0===t)return void E(new Error(`[pubstackViewability] Impression not found for AdUnit code ${e}`));this.viewedTimeState.delete(e);if(Math.floor(t.viewabilitytracker.getElapsed()/1e3)>0){const e=t.impression,i={bidId:e.bidId,auctionId:e.auctionId,lastAuctionId:e.lastAuctionId,adUnit:e.adUnit,bidderCode:e.bidderCode,pbjsVersion:e.pbjsVersion,cpm:e.cpm,currency:e.currency,refresh:e.refresh,size:e.size,viewedTime:Math.floor(t.viewabilitytracker.getElapsed()/1e3),pubstackRefresh:e.pubstackRefresh,pubstackRefreshRank:e.pubstackRefreshRank};V(`[pubstackViewability] Forwarding measured impression on code ${e.adUnit.code}`),this.viewedStream.next(i)}t.viewabilitytracker.destroy()}onViewable(e){V(`[pubstackViewability] Viewability Event on element ${e}`);const t=this.viewabilityState.get(e);if(void 0===t)return void E(new Error(`[pubstackViewability] Impression not found for ElementId ${e}`));this.viewabilityState.set(e,t);const i=t.impression,s={bidId:i.bidId,auctionId:i.auctionId,lastAuctionId:i.lastAuctionId,adUnit:i.adUnit,bidderCode:i.bidderCode,pbjsVersion:i.pbjsVersion,cpm:i.cpm,currency:i.currency,refresh:i.refresh,size:i.size,htmlElementId:e,pubstackRefresh:i.pubstackRefresh,pubstackRefreshRank:i.pubstackRefreshRank};V(`[pubstackViewability] Forwarding viewable impression ${s.htmlElementId}`),this.viewabilityStream.next(s)}}const Qi=()=>{const e=navigator.userAgent;return/(tablet|ipad|playbook|silk)|(android(?!.*mobi))/i.test(e)?"tablet":/Mobile|iP(hone|od)|Android|BlackBerry|IEMobile|Kindle|Silk-Accelerated|(hpw|web)OS|Opera M(obi|ini)/.test(e)?"mobile":"desktop"};function Xi(e,i,s){var n;e.pbstck=e.pbstck||{lock:{}},e.pbstck.lock=e.pbstck.lock||{},e.pbstck.scopeId=s.scopeId,e.pbstck.tagId=s.tagId;const o={},r=`${s.tagId}@${i.gateway}@collector`;if(function(e,t){return e[t]}(e.pbstck.lock,r))return;!function(e,t){e[t]=!0}(e.pbstck.lock,r);const a=new vi;let d;o.core=a,i.viewabilityEnabled&&(d=new Ji(a,e),o.viewability=d);const c=new $i(i.gateway,s,a,d,i.abTestValues);var u;o.intake=c,S((e=>c.sendError(e)),1),u=e=>{i.logsEnabled.includes(e.id)&&c.sendLog(e)},ue.subscribe(u),function(e){R.subscribe(e)}((e=>c.sendToDatadog(e)));const l=new Promise(((s,n)=>{if(i.pbjsVariableName){V("Prebid dropin mode",i.pbjsVariableName);const r={debug:B(),globalName:i.pbjsVariableName},d=function(e,t){return e[t.globalName]||(e[t.globalName]={}),e[t.globalName].que||(e[t.globalName].que=[]),e[t.globalName].que}(e,r);d.push((()=>t(this,void 0,void 0,(function*(){var t,d;const c=e[r.globalName],u=null!==(t=Number(c.getConfig("timeoutBuffer")))&&void 0!==t?t:wi,l=null===(d=c.getConfig("currency"))||void 0===d?void 0:d.adServerCurrency;let b;h(l)&&(b=l);const p=new re({version:c.version,gracePeriod:u,adServerCurrency:b,pbjsVariableName:r.globalName},i.admOnboarding);o.prebid=p;try{o.prebid=function(e,t,i,s){const n=e[s.globalName];i.bindIntegration(t);const o=le(ve(),t);let r;if(null!=n.getEvents)V("[pbjsIntegration] retrieve pbjs events using getEvents on public API"),r=n.getEvents;else{V("[pbjsIntegration] retrieve pbjs events using chunk");const t=e[`${s.globalName}Chunk`];if(void 0===t)throw new Error("[pbjsIntegration] unable to find pbjs chunk");const i=gi(t,{on:Function,getEvents:Function});if(void 0===i)throw new Error("[pbjsIntegration] unable to use event handler on adapter");r=i.getEvents}return Object.values(ce).forEach((e=>{n.onEvent(e,(t=>{var i;try{o.on(e,t)}catch(s){$("[pbjsIntegration] Error on event "+e+": "+s.message,t),T({context:Object.assign(Object.assign({},null!==(i=s.context)&&void 0!==i?i:{}),{adapter:{version:n.version,source:"pbjs:on"}}),message:s.message})}}))})),r().forEach((({eventType:e,args:t})=>{var i;try{o.on(e,t)}catch(s){$("[pbjsIntegration] Error on event "+e+": "+s.message,t),T({context:Object.assign(Object.assign({},null!==(i=s.context)&&void 0!==i?i:{}),{adapter:{version:n.version,source:"pbjs:replayed"}}),message:s.message})}})),t}(e,p,a,r),s()}catch(e){return $("Unable to load pbjs integration due to",e),void n()}}))))}}));let b,p=[];if(i.smartEnabled||i.debug){const t={debug:B(),globalName:"sas"};p=function(e,t){return e[t.globalName]||(e[t.globalName]={}),e[t.globalName].cmd||(e[t.globalName].cmd=[]),e[t.globalName].cmd}(e,t),p.push((()=>{b=Ci(e,a,t).instance}))}const m={tagId:s.tagId,globalQueue:i.sdk.globalQueue},v=ge(e,a,m);if(v.dispatchEvents(),i.debug||B()){a.subscribe({onAuction:e=>V("controller.onAuction",e),onImpression:e=>V("controller.onImpression",e)});const t=new Si(a);o.debug=t,S((e=>t.addError(e)),1e3),e.pbstck.debug=e.pbstck.debug||{},e.pbstck.debug[r]={getEvents:()=>t.getEvents(),getErrors:()=>t.getErrors(),sdk:null!==(n=null==v?void 0:v.debug())&&void 0!==n?n:void 0},(i.smartEnabled||i.debug)&&p.push((()=>{b&&(e.pbstck.debug[r].sas=b.debug())}))}return Promise.resolve().finally(),e.pbstck.controllers=e.pbstck.controllers||{},e.pbstck.controllers[`${i.gateway}@collector`]=o,l.then((()=>{e.dispatchEvent(new Event(we(`${i.gateway}@collector`,"pubstackMonitoringReady")))})),a}e.bootPubstack=Xi,e.pubstackAutoconfig=function(e){var i,s,n,o;const r={gateway:null===(i=e.endpoint)||void 0===i?void 0:i.gateway,sdk:{globalQueue:"pbstckQ"},debug:!0===e.debug,viewabilityEnabled:e.viewabilityEnabled,smartEnabled:null!==(s=e.smartEnabled)&&void 0!==s&&s,refreshConfigurationUrl:null!==(n=e.refreshConfigurationUrl)&&void 0!==n?n:"",pbjsVariableName:e.pbjsVariableName||"pbjs",abTestValues:e.abTestValues,logsEnabled:e.logsEnabled||[],admOnboarding:e.admOnboarding};if(void 0===r.gateway)return;const a=new si(navigator.userAgent),d=a.getOS(),c=a.getBrowser(),u={tagId:e.tagId,scopeId:e.scopeId,country:e.country,device:Qi(),browserName:c.name,browserVersion:c.major,osName:d.name,osVersion:d.version,pbstckVersion:null!==(o="01e89e8")?o:"unknown",customFields:Oi()};u.customFields.kleanadsDefaultDevice=window.innerWidth<768?"mobile":"desktop",t(void 0,void 0,void 0,(function*(){try{return navigator&&navigator.cookieDeprecationLabel&&navigator.cookieDeprecationLabel.getValue&&(yield navigator.cookieDeprecationLabel.getValue())||void 0}catch(e){V("Error while getting cookie depreciation label",e)}})).then((e=>{e&&(u.customFields.cdep=e)})),u.tagId&&u.scopeId&&Xi(window,r,u)}}(this.collector=this.collector||{});
;
 return this;}.bind({}); var _ = load();_.collector.pubstackAutoconfig({"endpoint":{"gateway":"https://intake.pbstck.com/v1/intake"},"scopeId":"f2521fbf-96a6-4b81-8284-15bcd5ddf73b","tagId":"d7f7fa8d-5918-4306-834c-b734d9e6f9a7","viewabilityEnabled":true,"refreshEnabled":false,"smartEnabled":false,"pbjsVariableName":"pbjs","abTestValues":["A","B","C"]}); })()</script><style>@import url(https://fonts.googleapis.com/css2?family=Open+Sans:wght@500;600&display=swap);</style><style>#idw-plugin-container {
    display: flex;
    flex-direction: column;
    box-sizing: content-box;
    position: fixed;
    left: -160px;
    bottom: -160px;
    z-index: 999999;
    background-color: #fff;

    height: auto;
    max-width: 160px;
    width: 160px;
    min-width: 160px;
    color: #171717;
    line-height: 1rem;

    outline: 1px solid #171717;
    justify-content: flex-start;

    -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: left .4s, bottom .4s, opacity .1s;
}

#idw-plugin-container.idw-open {
    left: 0;
    bottom: 0;
    opacity: 1;
}

#idw-plugin-buttons {
    display: flex;
    flex-direction: column;
    height: 100%;
    width: auto;
}

#idw-plugin-container .pluginBtn {
    border: none;
    padding: 1px 5px !important;
    margin: 0 !important;
    width: auto !important;
    height: 25px !important;
    box-sizing: border-box !important;

    border-radius: 0 !important;
    text-align: right !important;

    font-family: 'Open Sans', sans-serif !important;
    line-height: normal !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    font-weight: 600 !important;
    font-size: 14px !important;

    background-color: #ffffff !important;
    transition: background-color 0.2s;
    cursor: pointer !important;
}

#idw-plugin-container .pluginBtn:hover {
    outline: 1px solid #ffffff !important;
    background-color: #171717 !important;
    color: #ffffff !important;
}

#idw-open-trigger {
    position: fixed;
    width: 50px;
    height: 50px;
    bottom: 0;
    left: 0;
    z-index: 999999;
    cursor: pointer;
    -webkit-clip-path: polygon(100% 100%, 0 100%, 0 0);
    clip-path: polygon(100% 100%, 0 100%, 0 0);
    background-color: #171717 !important;
}

#idw-open-trigger img {
    width: 28px;
    height: 28px;
    position: absolute;
    /* padding: 4px; */
    bottom: -2px;
    left: -2px;
}</style><style>/***************/
/*MEDIA QUERIES*/
/***************/
/*
  ##Device: Tablets, Ipads (portrait)
  ##Screen: B/w 768px to 1024px
*/
@media (min-width: 768px) and (max-width: 1024px) {
    
}
/*
  ##Device: Most of the Smartphones Mobiles (Portrait)
  ##Screen: B/w 320px to 479px
*/
@media (min-width: 400px) and (max-width: 480px) {

}</style><style type="text/css">#sp_message_iframe_1127070 { display:block; width: 100%; height: 100%; border: 0 none; } #sp_message_container_1127070 { overflow:auto;-webkit-overflow-scrolling:touch; display: none; position: fixed; z-index: 2147483647; left: 0; right: 0; bottom: 0; top: 0; height: 100%; width: 100%; max-width: 100%; max-height: 100vh;}.sp-message-open { height: 100vh !important; width: 100vw !important } .sp-message-open body { overflow: hidden !important; position: fixed !important; margin-top: 0px !important; top: 0px !important; left: 0px !important; right: 0px !important; }</style><style>
      #idw-plugin-container .pluginBtn {
            color: undefined !important;
        }

        #idw-plugin-container .pluginBtn:hover {
            background-color: undefined !important;
        }
                
        #idw-open-trigger {
            background-color: undefined;
        }
    </style></head>
    <body class="">
        <div id="nn_mobile_lb1_wrap"><div id="nn_mobile_lb1"></div></div>
        <header id="head">
            <div>
                <div class="container wide">
                    <div class="container flex">
                        <button id="open-menu"><img style="filter: grayscale(1) invert(1);" class="new-icon" height="16" width="16" alt="Menu icon" src="https://www.pcgamebenchmark.com/img/icons/menu.svg"></button>
                        <a id="logo" href="/" title="PCGameBenchmark - the system requirements site">
                            <img src="https://www.pcgamebenchmark.com/img/logo.svg" alt="PCGameBenchmark" width="241" height="16">
                        </a>
                        <form id="search" class="light" autocomplete="off">
                            <span class="twitter-typeahead" style="position: relative; display: inline-block;"><input class="typeahead tt-hint" type="text" autocomplete="off" readonly="" spellcheck="false" tabindex="-1" aria-hidden="true" style="position: absolute; top: 0px; left: 0px; border-color: transparent; box-shadow: none; opacity: 1; background: none 0% 0% / auto repeat scroll padding-box border-box rgb(235, 235, 235);" dir="ltr"><input name="q" class="typeahead tt-input" type="text" placeholder="Search for games to test" autocomplete="off" spellcheck="false" dir="auto" aria-owns="tt-731482f4-7205-0aa9-7567-8ce893a05f29_listbox" role="combobox" aria-autocomplete="list" aria-expanded="false" style="position: relative; vertical-align: top; background-color: transparent;"><span role="status" aria-live="polite" style="position: absolute; padding: 0px; border: 0px; height: 1px; width: 1px; margin-bottom: -1px; margin-right: -1px; overflow: hidden; clip: rect(0px, 0px, 0px, 0px); white-space: nowrap;"></span><pre aria-hidden="true" style="position: absolute; visibility: hidden; white-space: pre; font-family: Tahoma, sans-serif, icomoon; font-size: 16px; font-style: normal; font-variant: normal; font-weight: 400; word-spacing: 0px; letter-spacing: 0px; text-indent: 0px; text-rendering: auto; text-transform: none;"></pre><div role="listbox" class="tt-menu" id="tt-731482f4-7205-0aa9-7567-8ce893a05f29_listbox" style="position: absolute; top: 100%; left: 0px; z-index: 100; display: none;"><div role="presentation" class="tt-dataset tt-dataset-games"></div></div></span>
                        </form>

                        <button id="open-search"><img style="filter: grayscale(1) invert(1);" class="new-icon" height="16" width="16" alt="Search icon" src="https://www.pcgamebenchmark.com/img/icons/search.svg"></button>

                        <div id="head-buttons">
                            <a target="_blank" rel="nofollow" href="https://go.pcgamebenchmark.com/nav-gaming-deals" class="button danger ovwlf" title="Gaming Deals">
                                <img src="https://www.pcgamebenchmark.com/img/icons/supermarket_1.svg" height="20" width="20" style="margin-top: 2px;filter: invert(1);margin-right: 3px;margin-left: 3px;"> 
                                Gaming Deals
                            </a>
                            <!-- <a target="_blank" rel="nofollow" href="https://go.pcgamebenchmark.com/FPSMonitor" class="button danger ovwlf" title="Overwolf App">
                            <svg width="36" height="30" viewBox="0 0 1024 829" fill="none" xmlns="http://www.w3.org/2000/svg">
                                <path d="M778.77 290.164C779.174 290.164 651.434 213.56 651.059 211.307C648.17 195.025 644.53 168.138 626.909 154.23C611.743 142.363 509.366 93.3969 509.164 92.8862C490.314 63.2555 473.61 32.2078 459.189 0C445.494 10.719 434.356 24.5724 426.636 40.4871C418.917 56.4018 414.824 73.9507 414.673 91.7747C364.382 99.2701 317.181 121.495 278.585 155.852C378.68 131.999 407.509 153.989 407.509 153.989C374.739 160.06 343.161 171.734 314.059 188.536C271.392 212.929 252.153 242.219 252.153 242.219C252.153 242.219 349.041 213.41 423.397 241.438C388.723 246.525 356.491 262.911 331.333 288.242C485.447 308.099 561.45 447.188 593.428 559.57C605.186 359.679 509.482 283.766 509.482 283.766C537.271 285.838 572.225 308.309 594.584 341.744C662.758 333.753 700.716 355.473 700.398 355.473C699.647 355.473 737.259 343.457 763.777 330.749C761.495 327.174 751.905 314.768 746.445 307.828C747.196 307.888 768.168 306.597 778.77 290.164ZM565.899 201.694C567.401 201.303 600.795 191.54 610.328 195.295C618.994 198.69 619.167 224.345 619.167 224.345C619.167 224.345 599.379 227.229 565.899 201.694Z" fill="#CCCCCC"/> 
                            </svg>
                            FPS Monitor
                            </a> -->
                                                            <a href="/detect/world-of-warcraft-classic" rel="nofollow" class="button brand" title="Rank my PC - check your PC score and best upgrades">Test My PC</a>
                                                            <a href="https://www.network-n.com/" target="_blank" rel="noopener" title="Network N"><img src="/img/networkn.svg" height="34" width="34" alt="NetworkN"></a>
                        </div>
                    </div>
                </div>
            </div>
            <nav id="nav">
                <div class="container wide">
                    <button id="close-menu"><img class="new-icon" height="16" width="16" alt="Close icon" src="https://www.pcgamebenchmark.com/img/icons/close.svg" style="width: 12px;filter: brightness(7.5);"> Close Menu</button>
                    <div id="desktop-nav" class="container">
    <ul class="navmenu">
        <li class="item">    
            <a style="display: flex; align-items: center;gap: 7px;" title="CPU benchmarks - Processor benchmarks" href="/processors">
                <span class="new-icon cpu"></span> CPU Benchmarks
            </a>
        </li>
        <li class="item">  
            <a style="display: flex; align-items: center;gap: 7px;" title="Graphics cards benchmarks" href="/graphics-cards">
                <span class="new-icon gpu"></span> GPU Benchmarks
            </a>
        </li>
        <li class="item">  
            <a style="display: flex; align-items: center;gap: 7px;" title="FPS Calculator" href="/fps-calculator">
                <span class="new-icon laptop"></span>FPS Calculator
            </a>
        </li>   
        <li class="item">
            <a style="display: flex; align-items: center;gap: 7px;" title="Compare Gaming Laptops" href="/compare-laptops">
                <span class="new-icon controller"></span> Compare Gaming Laptops
            </a>
        </li>
        <li class="item">  
            <a style="display: flex; align-items: center;gap: 7px;" title="The latest PC games" href="/new-pc-games">
                <span class="new-icon notice"></span> New PC Games
            </a>
        </li>
    </ul>
</div>

                </div>
            </nav>
        </header>

        <div id="nn_astro_wrapper">
            <div id="nn_lb1"></div>
        </div>
        <div id="content">
            <div id="nn_skinl"></div>
            <div id="nn_skinr"></div>
            <script type="application/ld+json">
    {
        "@context": "http://schema.org",
        "@type": "BreadcrumbList",
        "itemListElement": [{
            "@type": "ListItem",
            "position": 1,
            "item": {
                "@id": "https://www.pcgamebenchmark.com",
                "name": "PCGameBenchmark"
            }
        },{
            "@type": "ListItem",
            "position": 3,
            "item": {
                "@id": "https://www.pcgamebenchmark.com/world-of-warcraft-classic-system-requirements",
                "name": "World of Warcraft: Classic"            }
        }]
    }
</script>
<script type="application/ld+json">
    {
        "@context" : "http://schema.org",
        "@type" : "SoftwareApplication",
        "name" : "World of Warcraft: Classic",
                "image" : "https://www.pcgamebenchmark.com/img/game/world-of-warcraft-classic/world-of-warcraft-classic-system-requirements.jpg",
        		        		"review" : {
			"@type" : "Review",
			"author" : {
				"@type" : "Organization",
				"name" : "Metacritic"
			},
			"reviewRating" : {
				"@type" : "Rating",
				"ratingValue" : "93",
				"bestRating" : "100"
			}
		},
                        "datePublished" : "2019-08-26",
                										"operatingSystem" : "Windows 7 Upwards 64 bit",
		        		"url" : "https://www.pcgamebenchmark.com/world-of-warcraft-classic-system-requirements"
    }
</script>


<div class="container requirements">
    <article>
        <div id="details-info" class="article">
                            <h1>World of Warcraft: Classic System Requirements</h1>
                        <p>World of Warcraft: Classic System Requirements - full specs, system checker and the gaming PC setup you need.</p>
            <div class="requirements">
                <div class="six columns">
                    <h2 class="minimum requirement-title"><strong>World of Warcraft: Classic minimum requirements</strong></h2>
                                                                    <ul class="bb_ul">
                            <li><strong>Memory:</strong> 2 GB</li>
                            <li>
                                <strong>Graphics Card:</strong> 
                                                                AMD Radeon HD 4850 X2                                                             </li>
                            <li><strong>CPU:</strong> Intel Core 2 Duo E6600 </li>
                            <li><strong>File Size:</strong> 5 GB</li>
                            <li><strong>OS:</strong> Windows 7 Upwards 64 bit</li>
                        </ul>
                                    </div>
                <div class="six columns">
                    <h2 class="requirement-title"><strong>World of Warcraft: Classic recommended specs</strong></h2>
                                                                    <ul class="bb_ul">
                            <li><strong>Memory:</strong> 8 GB</li>
                            <li>
                                <strong>Graphics Card:</strong> 
                                                                NVIDIA GeForce GTX 960                                                             </li>
                            <li><strong>CPU:</strong> Intel Core i7-4770 </li>
                            <li><strong>File Size:</strong> 5 GB</li>
                            <li><strong>OS:</strong> Winindows  7 Upwards 64 bit</li>
                        </ul>
                                    </div>
            </div>

                            <p>Can you run it? Test your computer against <strong>World of Warcraft: Classic system requirements</strong>.</p>
                <div class="row canirunit">
                    <a href="/detect/world-of-warcraft-classic" rel="nofollow" class="button secondary hardware-detect"><img class="new-icon" height="16" width="16" alt="windows icon" src="https://www.pcgamebenchmark.com/img/icons/windows8.svg"> <b>Can I Run It?</b><br>Test Your PC Automatically</a>
                    <a href="/input/world-of-warcraft-classic" rel="nofollow" class="button neutral"><img class="new-icon" height="16" width="16" alt="Platform" src="https://www.pcgamebenchmark.com/img/icons/computer.svg"> <b>Can I Run It?</b><br>Enter your system details</a>
                </div>


            
            <div class="constellation_widget_wrapper" data-widget="pcgb-homepage-latest-deals" data-gamename="World of Warcraft: Classic"><a href="https://go.pcgamebenchmark.com/GCD" rel="sponsored nofollow noopener" target="_blank">
                <div class="constellation_widget layout_1">
                    <div class="constellation_widget_image">
                        <img src="https://constellation.networknmedia.com/wp-content/uploads/2023/09/graphics-cards.jpg" alt="Widget Lead Image">
                    </div>
                    <div class="constellation_widget_text">
                        <span class="constellation_widget_title">Check latest deals</span>
                        <p>Recommended graphics cards to run this World of Warcraft: Classic.</p>
                    </div>
                </div>
            </a></div>

                            <div class="nova_wrapper"><div id="nn_player"></div></div>
            
            <div id="details-test">
    <h2>Can I Run World of Warcraft: Classic?</h2>
    <div class="row">
        
            <p>
                    </p><p><strong>WOW Classic system requirements</strong> state that you will need at least 5 GB of free disk space to install World of Warcraft Classic. The minimum memory requirement for WOW Classic is 2 GB of RAM installed in your computer. Additionally, the game developers recommend somewhere around 8 GB of RAM in your system. To play WoW Classic you will need a minimum CPU equivalent to an Intel Core 2 Duo E6600. However, the developers recommend a CPU greater or equal to an Intel Core i7-4770 to play the game. The cheapest graphics card you can play it on is an AMD Radeon HD 4850 X2. But, according to the developers the recommended graphics card is an NVIDIA GeForce GTX 960.</p><p>To best enjoy the revamped version of World of Warcraft, your computer should meet the minimum requirements for a more complete experience without computer crashes or framerate issues. Additionally, meeting the recommended requirements will give you the intended experience of World of Warcraft at its very best. While World of Warcraft's first edition is considered old, the features of 40 person raids with worlds hosting hundreds of players at once can still prove difficult for many computers to process. Therefore, in meeting the minimum requirements your computer can process the graphical content of WoW Classic and have a better time raiding with your friends. For those looking to avoid framerate issues altogether, however, meeting the recommended requirements will give you the complete experience of WoW classic in all its glory. 
On the most popular servers the developers of Classic WoW get queue times of several hours or more. Blizzard plan to fix this by increasing the size of realm queues and they’re opening new realms and are encouraging players to switch to them. 

              </p><p>Looking for the main game? Check the <a href="https://www.pcgamebenchmark.com/world-of-warcraft-system-requirements">WOW 23 system requirements</a>. To get <a href="https://www.pcgamesn.com/world-of-warcraft/best-wow-addons">World of Warcraft addons</a> we recommend Curseforge.<br></p>
                <p></p>

            <p>
                                    World of Warcraft: Classic will run on PC system with Windows 7 Upwards 64 bit and upwards.
                    
                            </p>
            
            <p>Looking for an upgrade? Try our easy to use <strong>World of Warcraft: Classic set up guides</strong> to find the best cards. Filter for World of Warcraft: Classic <a href="/compare-graphics-cards?games=world-of-warcraft-classic">graphics card comparison</a> and <a href="/compare-processors?games=world-of-warcraft-classic">CPU compare</a>. We'll help you find the best deal for the right gear to run the game.</p>
                
        
    
            <h2 class="h2">World of Warcraft: Classic FPS - what frame rate can you expect?</h2>

                                <p>
                        <strong>How many FPS will I get on World of Warcraft: Classic?</strong> 
                        We reference thousands of reports from PCGameBenchmark users running our <a target="_blank" rel="nofollow" href="https://go.pcgamebenchmark.com/FPSMonitorSysReqs">FPS tracking app</a> to tell you exactly how World of Warcraft: Classic performs across a range of different settings and resolutions on the most popular PC gaming setups.
                                                                    </p>
                
                            <p><strong>What frame rate does World of Warcraft: Classic run at?</strong></p>
                <p>Here are the typical frame rate samples</p>
            <table class="commonFpsTable">
                <tbody><tr>
                    <td><strong>Avg FPS</strong></td>
                    <td><strong>CPU</strong></td>
                    <td><strong>GPU</strong></td>
                    <td><strong>RAM</strong></td>
                </tr>
                                    <tr>
                        <td>92</td>
                        <td><a href="/cpu/intel-core-i7-7700k">Intel Core i7-7700K</a></td>
                        <td><a href="/gpu/nvidia-geforce-gtx-1080-ti">NVIDIA GeForce GTX 1080 Ti</a></td>
                        <td>32 GB</td>
                    </tr>
                                    <tr>
                        <td>81</td>
                        <td><a href="/cpu/intel-core-i5-7600">Intel Core i5-7600</a></td>
                        <td><a href="/gpu/nvidia-geforce-gtx-1060-3gb">NVIDIA GeForce GTX 1060 3GB</a></td>
                        <td>8 GB</td>
                    </tr>
                                    <tr>
                        <td>77</td>
                        <td><a href="/cpu/intel-core-i7-10700f">Intel Core i7-10700F</a></td>
                        <td><a href="/gpu/nvidia-geforce-rtx-3060">NVIDIA GeForce RTX 3060</a></td>
                        <td>32 GB</td>
                    </tr>
                                    <tr>
                        <td>45</td>
                        <td><a href="/cpu/intel-core-i5-9400f">Intel Core i5-9400F</a></td>
                        <td><a href="/gpu/nvidia-geforce-rtx-3060">NVIDIA GeForce RTX 3060</a></td>
                        <td>16 GB</td>
                    </tr>
                                    <tr>
                        <td>42</td>
                        <td><a href="/cpu/intel-core-i7-6700k">Intel Core i7-6700K</a></td>
                        <td><a href="/gpu/intel-hd-530">Intel HD 530</a></td>
                        <td>16 GB</td>
                    </tr>
                            </tbody></table>
            <br>
            <p>
            </p><p>What frame rate does World of Warcraft: Classic run at? Check our <a href="/fps-calculator?gameSearch=World of Warcraft: Classic&amp;game=38582&amp;cpu=any&amp;gpu=any&amp;ram=all" rel="nofollow noopener">FPS Calculator</a></p>
            
            <p></p>
            <p>
                Are you experiencing <strong>World of Warcraft: Classic FPS drops</strong>  and stutters? Want to know exactly how the game performs on <i>your</i> system? You can get a free easy FPS test for all your games using the PCGameBenchmark <a href="https://www.pcgamebenchmark.com/fps-monitor">FPS monitor</a> tool - your first step to understanding how the parts in your gaming PC are actually performing in real-world conditions.</p>
            
                    <figure id="details-graph">
                <img height="480" width="600" loading="lazy" src="/world-of-warcraft-classic-system-requirements-graph.png" alt="World of Warcraft: Classic System Requirements PC Graph - Can I Run World of Warcraft: Classic" title="World of Warcraft: Classic System Requirements PC Graph - Can I Run World of Warcraft: Classic">
                <figcaption>World of Warcraft: Classic System Requirements - Can You Run World of Warcraft: Classic?</figcaption>
            </figure>
            </div>
</div>            <div id="nn_mobile_mpu1"></div>

            
            

            <h2 class="large-header">World of Warcraft: Classic Details</h2>
            <div id="details-meta" class="metabox">
                <img src="https://www.pcgamebenchmark.com/img/game/world-of-warcraft-classic/world-of-warcraft-classic-system-requirements.jpg" alt="World of Warcraft: Classic PC Specs" title="World of Warcraft: Classic System Requirements" width="460" height="215" loading="lazy">
<table>
    
            <tbody><tr>
            <td><b>&nbsp;&nbsp; Review Score</b></td>
            <td><strong>93</strong> / 100</td>
        </tr>
    
            <tr>
            <td><b>&nbsp;&nbsp; Download</b></td>
            
            <td><a target="_blank" rel="noopener" href="https://worldofwarcraft.com/en-us/wowclassic" title="Blizzard">Blizzard</a></td>
        </tr>
    
    
            <tr>
            <td><b>&nbsp;&nbsp; <strong>World of Warcraft: Classic Release Date</strong></b></td>
            <td>
                                    26th of August 2019                            </td>
        </tr>
    

</tbody></table>

<div class="description">
    <b>What is World of Warcraft: Classic?</b>
    <p>World of Warcraft: Classic is a faithful recreation of the original World of Warcraft. Combat mechanics, original character models, and skill trees all contribute to a truly authentic experience. WoW: Classic is an MMORPG and recreates the game in the state it was in before the release of the first expansion ‘The Burning Crusade’. </p>
</div>
            </div>
            <div class="constellation_widget_wrapper" data-widget="pcgb-laptops-block" style="overflow: unset;"><a href="https://amzn.to/3sqRama" rel="sponsored nofollow noopener" target="_blank">
                <div class="constellation_widget layout_1">
                    <div class="constellation_widget_image">
                        <img src="https://constellation.networknmedia.com/wp-content/uploads/2023/11/pcgb-laptop.jpg" alt="Widget Lead Image">
                    </div>
                    <div class="constellation_widget_text">
                        <span class="constellation_widget_title">Deals on compatible laptops</span>
                        <p>Upgrade your gaming machine today.</p>
                    </div>
                </div>
            </a></div>

        </div>
    </article>



        <div class="side">
            <div class="mpu_wrapper">
                <div id="nn_mpu1"></div>
            </div>

            
                    </div>

    <div class="row">
                    <div class="side">
                <div id="post-latest">
    <h3>Latest Posts</h3>
    <ul>
                    <li onclick="window.location.href='/ram-upgrade'">
                <a href="/ram-upgrade" title="How to upgrade RAM easily">
                    <div class="image-wrap">
                        <img loading="lazy" width="300" height="169" src="https://www.pcgamebenchmark.com/img/post/ram-upgrade/thumb/ram-upgrade.jpg" alt="How to upgrade RAM easily">
                    </div>

                    <div>How to upgrade RAM easily</div>
                    <small>23rd of July 2024</small>
                </a>
            </li>
                    <li onclick="window.location.href='/how-to-check-specs'">
                <a href="/how-to-check-specs" title="How to check specs, graphics card and CPU, on your PC and laptop">
                    <div class="image-wrap">
                        <img loading="lazy" width="300" height="169" src="https://www.pcgamebenchmark.com/img/post/how-to-check-specs/thumb/how-to-check-specs.jpg" alt="How to check specs, graphics card and CPU, on your PC and laptop">
                    </div>

                    <div>How to check specs, graphics card and CPU, on your PC and laptop</div>
                    <small>15th of May 2024</small>
                </a>
            </li>
                    <li onclick="window.location.href='/ssd-or-hdd'">
                <a href="/ssd-or-hdd" title="SSD or HDD: Which is better?">
                    <div class="image-wrap">
                        <img loading="lazy" width="300" height="169" src="https://www.pcgamebenchmark.com/img/post/ssd-or-hdd/thumb/ssd-or-hdd.jpg" alt="SSD or HDD: Which is better?">
                    </div>

                    <div>SSD or HDD: Which is better?</div>
                    <small>17th of June 2024</small>
                </a>
            </li>
                    <li onclick="window.location.href='/fps-monitor'">
                <a href="/fps-monitor" title="Free FPS monitor to track your game frame rates">
                    <div class="image-wrap">
                        <img loading="lazy" width="300" height="169" src="https://www.pcgamebenchmark.com/img/post/fps-monitor/thumb/fps-monitor.jpg" alt="Free FPS monitor to track your game frame rates">
                    </div>

                    <div>Free FPS monitor to track your game frame rates</div>
                    <small>26th of September 2024</small>
                </a>
            </li>
            </ul>
</div>
            </div>
            </div>

    <div class="row">
                <div id="trending">
    <p class="small-header">Game System Requirements: Trending</p>
    <div class="games-grid">
                            
                            <div class="row">
                        <div class="three columns">
                <a href="/stalker-2-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://www.pcgamebenchmark.com/img/game/stalker-2/stalker-2-system-requirements.jpg" alt="STALKER 2 PC requirements">
                        </div>
                    </div>
                    Stalker 2 System Requirements
                </a>
            </div>
                                            
                        <div class="three columns">
                <a href="/call-of-duty-black-ops-6-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://steamcdn-a.akamaihd.net/steam/apps/2933620/header.jpg" alt="Black Ops 6 requirements">
                        </div>
                    </div>
                    Call of Duty: Black Ops 6 System Requirements
                </a>
            </div>
                                            
                        <div class="three columns">
                <a href="/grand-theft-auto-v-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://www.pcgamebenchmark.com/img/game/grand-theft-auto-v/grand-theft-auto-v-system-requirements.jpg" alt="GTA 5 requirements">
                        </div>
                    </div>
                    GTA 5 System Requirements
                </a>
            </div>
                                            
                        <div class="three columns">
                <a href="/monster-hunter-wilds-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://steamcdn-a.akamaihd.net/steam/apps/2246340/header.jpg" alt="Monster Hunter Wilds system requirements">
                        </div>
                    </div>
                    Monster Hunter Wilds System Requirements
                </a>
            </div>
                            </div>
                                            
                            <div class="row">
                        <div class="three columns">
                <a href="/fortnite-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://www.pcgamebenchmark.com/img/game/fortnite/fortnite-system-requirements.jpg" alt="Fortnite requirements">
                        </div>
                    </div>
                    Fortnite System Requirements
                </a>
            </div>
                                            
                        <div class="three columns">
                <a href="/valorant-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://www.pcgamebenchmark.com/img/game/valorant/valorant-system-requirements.jpg" alt="Valorant requirements">
                        </div>
                    </div>
                    Valorant System Requirements
                </a>
            </div>
                                            
                        <div class="three columns">
                <a href="/counter-strike-2-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://www.pcgamebenchmark.com/img/game/counter-strike-2/counter-strike-2-system-requirements.jpg" alt="CS2 requirements">
                        </div>
                    </div>
                    CS2 System Requirements
                </a>
            </div>
                                            
                        <div class="three columns">
                <a href="/cyberpunk-2077-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://www.pcgamebenchmark.com/img/game/cyberpunk-2077/cyberpunk-2077-system-requirements.jpg" alt="Cyberpunk 2077 requirements">
                        </div>
                    </div>
                    Cyberpunk 2077 System Requirements
                </a>
            </div>
                            </div>
                                            
                            <div class="row">
                        <div class="three columns">
                <a href="/baldurs-gate-3-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://www.pcgamebenchmark.com/img/game/baldurs-gate-3/baldurs-gate-3-system-requirements.jpg" alt="Baldur's Gate 3 requirements">
                        </div>
                    </div>
                    Baldur's Gate 3 System Requirements
                </a>
            </div>
                                            
                        <div class="three columns">
                <a href="/red-dead-redemption-2-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://www.pcgamebenchmark.com/img/game/red-dead-redemption-2/red-dead-redemption-2-system-requirements.jpg" alt="Red Dead Redemption 2 requirements">
                        </div>
                    </div>
                    Red Dead Redemption 2 System Requirements
                </a>
            </div>
                                            
                        <div class="three columns">
                <a href="/elden-ring-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://www.pcgamebenchmark.com/img/game/elden-ring/elden-ring-system-requirements.jpg" alt="Elden Ring requirements">
                        </div>
                    </div>
                    Elden Ring System Requirements
                </a>
            </div>
                                            
                        <div class="three columns">
                <a href="/minecraft-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://www.pcgamebenchmark.com/img/game/minecraft/minecraft-system-requirements.jpg" alt="Minecraft system requirements">
                        </div>
                    </div>
                    Minecraft System Requirements
                </a>
            </div>
                            </div>
                                            
                            <div class="row">
                        <div class="three columns">
                <a href="/black-myth-wukong-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://steamcdn-a.akamaihd.net/steam/apps/2358720/header.jpg" alt="Black Myth Wukong requirements">
                        </div>
                    </div>
                    Black Myth: Wukong System Requirements
                </a>
            </div>
                                            
                        <div class="three columns">
                <a href="/god-of-war-ragnarok-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://www.pcgamebenchmark.com/img/game/god-of-war-ragnarok/god-of-war-ragnarok-system-requirements.jpg" alt="God of War Ragnarok PC requirements">
                        </div>
                    </div>
                    God of War Ragnarök System Requirements
                </a>
            </div>
                                            
                        <div class="three columns">
                <a href="/warhammer-40-000-space-marine-2-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://steamcdn-a.akamaihd.net/steam/apps/2183900/header.jpg" alt="Space Marine 2 system requirements">
                        </div>
                    </div>
                    Space Marine 2 System Requirements
                </a>
            </div>
                                            
                        <div class="three columns">
                <a href="/ghost-of-tsushima-directors-cut-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://steamcdn-a.akamaihd.net/steam/apps/2215430/header.jpg" alt="Ghost of Tsushima requirements ">
                        </div>
                    </div>
                    Ghost of Tsushima DIRECTORS CUT System Requirements
                </a>
            </div>
                            </div>
                                            
                            <div class="row">
                        <div class="three columns">
                <a href="/throne-and-liberty-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://steamcdn-a.akamaihd.net/steam/apps/2429640/header.jpg" alt="Throne and Liberty PC requirements">
                        </div>
                    </div>
                    Throne and Liberty System Requirements
                </a>
            </div>
                                            
                        <div class="three columns">
                <a href="/forza-horizon-5-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://www.pcgamebenchmark.com/img/game/forza-horizon-5/forza-horizon-5-system-requirements.jpg" alt="Forza Horizon 5 requirements">
                        </div>
                    </div>
                    Forza Horizon 5 System Requirements
                </a>
            </div>
                                            
                        <div class="three columns">
                <a href="/deadlock-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://www.pcgamebenchmark.com/img/game/deadlock/deadlock-system-requirements.jpg" alt="Deadlock system requirements">
                        </div>
                    </div>
                    Deadlock System Requirements
                </a>
            </div>
                                            
                        <div class="three columns">
                <a href="/roblox-system-requirements">
                    <div class="system-requirements-aspect-ratio-box">
                        <div class="system-requirements-aspect-ratio-box-inside">
                            <img loading="lazy" height="215" width="460" src="https://www.pcgamebenchmark.com/img/game/roblox/roblox-system-requirements.jpg" alt="Roblox system requirements for PC">
                        </div>
                    </div>
                    Roblox System Requirements
                </a>
            </div>
                            </div>
                                    </div>
</div>
    </div>
</div>

</div>
        
        <footer id="footer">
            <div class="container">
                <div class="six columns">
                    <span class="sub-header">Legal bits</span>
                    <span class="copy"><strong>PCGameBenchmark</strong> - 2024</span>
                    <span class="legal">All product names, trademarks and registered trademarks are property of their respective owners.<br>As an Amazon Associate I earn from qualifying purchases. We may earn commission from other affiliate programs.</span>
                </div>
                <div class="six columns">
                    <span class="sub-header">Guides and lists</span>
                    <ul>
                        <li><a href="/compare-graphics-cards" title="Compare Graphics Cards">Compare Graphics Cards</a></li>
                        <li><a href="/compare-processors" title="Compare Processors">Compare Processors</a></li>
                        <li><a href="/best-pc-games" title="Best PC Games">Best PC Games</a></li>
                        <li><a href="/upcoming-pc-games" title="PC games release list">Upcoming PC Games</a></li>
                        <li><a href="/new-pc-games" title="The latest PC game releases">New PC Games</a></li>
                    </ul>

                    <ul class="meta">
                        <li><a target="_blank" rel="noopener" href="https://www.networknmedia.com/privacy">Privacy</a></li>
                        <li><a target="_blank" rel="noopener" href="https://www.networknmedia.com/terms">Terms</a></li>
                        <li><a target="_blank" rel="noopener" href="https://www.networknmedia.com/cookies">Cookies</a></li>
                        <li><a target="_blank" rel="noopener" href="https://www.networknmedia.com/accessibility">Accessibility</a></li>
                        <li><a href="/contact">Contact</a></li>
                        <li><a class="nn-cmp-show" href="#">Manage Cookie Settings</a></li>
                    </ul>
                </div>
            </div>
        </footer>

        <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js" integrity="sha512-bLT0Qm9VnAYZDflyKcBaQ2gg0hSYNQrJ8RilYldYQ1FxQYoCLtUjuuRuZo+fjqhx/qtq/1itJ0C2ejDxltZVFg==" crossorigin="anonymous"></script><iframe name="__tcfapiLocator" style="display: none;"></iframe>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/corejs-typeahead/1.3.1/typeahead.bundle.min.js" integrity="sha512-lEb9Vp/rkl9g2E/LdHIMFTqz21+LA79f84gqP75fbimHqVTu6483JG1AwJlWLLQ8ezTehty78fObKupq3HSHPQ==" crossorigin="anonymous" defer=""></script>
     
        <script>const mos = 'https://www.pcgamebenchmark.com';</script>
        <script src="https://www.pcgamebenchmark.com/dist/main.js?v=1.0.32"></script>

        <script src="https://constellation.networknmedia.com/wp-content/plugins/constellation-widgets/assets/app.js" defer=""></script>
        
            <script async="" src="https://www.googletagmanager.com/gtag/js?id=G-26WNWF3X7L"></script>
            
            <script>
                // TODO: check if this is required
                window['gtag_enable_tcf_support'] = true

                window.dataLayer = window.dataLayer || [];
                function gtag(){dataLayer.push(arguments);}
                gtag('js', new Date());
                gtag('config', 'G-26WNWF3X7L');

                
            </script>
            <script id="parsely-cfg" src="//cdn.parsely.com/keys/pcgamebenchmark.com/p.js" async="" defer=""></script>

     
        <script>
                window.horizon = window.horizon || {};
                window.horizon.horizonURL = 'https://apihorizon.nnmtools.com';
                window.horizon.horizonCDNURL = 'https://cdnhorizon.nnmtools.com';
                window.horizon.horizonSiteId = 'pcgamebenchmark';
                window.horizon.horizonSchema = {"site_id":"pcgamebenchmark","datetime":1732627056,"page_url":"https:\/\/www.pcgamebenchmark.com\/world-of-warcraft-classic-system-requirements","cell":"","article_type":"page","lead_image":"https:\/\/www.pcgamebenchmark.com\/world-of-warcraft-classic-system-requirements-graph.png","title":"World of Warcraft: Classic System Requirements - Can I Run It? - PCGameBenchmark","tag":[],"category":[],"section":[],"author":"pcgamebenchmark","facets":[],"date_published":"2024-11-26 13:17:36","date_modified":"2024-11-26 13:17:36","page_type":"listing"};
            </script>
            <script>
                fetch(window.horizon.horizonCDNURL + '/dist/manifest.json')
                    .then(response => response.json())
                    .then(data => {
                        const script = document.createElement('script');
                        script.src = window.horizon.horizonCDNURL + '/dist/' + data['app.js'];
                        document.body.appendChild(script);
                    });
            </script>
                
    

<script src="https://cdnhorizon.nnmtools.com/dist/js/app.7c3e0c50.min.js"></script><iframe name="__uspapiLocator" style="display: none;"></iframe><iframe name="__gppLocator" style="display: none;"></iframe><img src="https://ad-delivery.net/px.gif?ch=2" style="display: none !important; width: 1px !important; height: 1px !important;"><img src="https://ad.doubleclick.net/favicon.ico?ad=300x250&amp;ad_box_=1&amp;adnet=1&amp;showad=1&amp;size=250x250" style="display: none !important; width: 1px !important; height: 1px !important;"><img src="https://ad-delivery.net/px.gif?ch=1&amp;e=0.39816221717007716" style="display: none !important; width: 1px !important; height: 1px !important;"><div class="nn-sticky" id="nn_lb2_wrap"><div id="nn_lb2"></div></div><div id="sp_message_container_1127070" style="display: block;"><iframe src="https://cdn.privacy-mgmt.com/index.html?hasCsp=true&amp;message_id=1127070&amp;consentUUID=null&amp;consent_origin=https%3A%2F%2Fcdn.privacy-mgmt.com%2Fconsent%2Ftcfv2&amp;preload_message=true&amp;version=v1" id="sp_message_iframe_1127070" title="SP Consent Message"></iframe></div></body></html>