1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1552],{14844:(e,t,r)=>{r.d(t,{Y:()=>n});var s=r(42333),i=r(70334);class n extends s.S{context;isMemoryMonitoringSupported;scheduleUserAgentMemoryTimeout;isUserAgentSpecificMemorySupported;constructor(e){super(),this.context=e,this.supportedTags.add("FPS"),this.isMemoryMonitoringSupported="memory"in e.performance,this.isMemoryMonitoringSupported&&(this.supportedTags.add("MEMORY"),this.supportedTags.add("MEMORY_LIMIT"),this.performMemoryMeasurement=this.performMemoryMeasurement.bind(this)),this.isUserAgentSpecificMemorySupported=this.context.crossOriginIsolated&&"function"==typeof this.context.performance.measureUserAgentSpecificMemory,this.isUserAgentSpecificMemorySupported&&(this.measureUserAgentMemory=this.measureUserAgentMemory.bind(this),this.supportedTags.add("USER_AGENT_SPECIFIC_MEMORY"))}nativeStartMonitoring(){let e=(0,i.Cu)(this.telemetryLog),t=this.startUsedMemoryMonitoring();return()=>{e(),t()}}startUsedMemoryMonitoring(){let e;return this.isMemoryMonitoringSupported&&(e=setInterval(this.performMemoryMeasurement,1e3)),this.isUserAgentSpecificMemorySupported&&this.performUserAgentMemoryMeasurement(),()=>{clearInterval(e),clearTimeout(this.scheduleUserAgentMemoryTimeout),this.scheduleUserAgentMemoryTimeout=void 0}}performMemoryMeasurement(){let{usedJSHeapSize:e,jsHeapSizeLimit:t}=this.context.performance.memory;this.telemetryLog.measure("TELEMETRY","MEMORY",e),this.telemetryLog.measure("TELEMETRY","MEMORY_LIMIT",t)}performUserAgentMemoryMeasurement(){this.scheduleUserAgentMemoryTimeout=setTimeout(this.measureUserAgentMemory,1e3)}async measureUserAgentMemory(){let e=await this.context.performance.measureUserAgentSpecificMemory();this.telemetryLog.measure("TELEMETRY","USER_AGENT_SPECIFIC_MEMORY",e.bytes),this.scheduleUserAgentMemoryTimeout&&this.performUserAgentMemoryMeasurement()}}},15752:(e,t,r)=>{r.d(t,{Km:()=>s,_o:()=>i});let s={SD:{minHeight:1,minWidth:1},HD:{minHeight:720,minWidth:1280},UHD:{minHeight:2160,minWidth:3840}};function i(e){return e.width>=s.UHD.minWidth&&e.height>=s.UHD.minHeight}},21890:(e,t,r)=>{r.d(t,{V:()=>n});var s=r(71673);let i="CTV_FRAMEWORK_DEVICE_ID";class n{cache;deviceBrand="";deviceManufacturer="";deviceFirmware="";deviceModel="";deviceFullModel="";deviceType="Unknown";deviceVersion="";deviceFullVersion="";partnerId="";operatingSystemName="";operatingSystemVersion="";browserName="";browserVersion="";userFriendlyName="";frameworkName="";frameworkVersion="";containerVersion="";deviceChipset="";cachedDeviceId="";constructor(e){this.cache=e}initialise(){return this.cache.getItem(i).then(e=>this.cacheDeviceId(e))}get uniqueDeviceId(){return this.cachedDeviceId}set uniqueDeviceId(e){this.cachedDeviceId=e,this.cache.setItem(i,e)}cacheDeviceId(e){return e?this.cachedDeviceId=e:(this.cachedDeviceId=(0,s.D)(20),this.cache.setItem(i,this.cachedDeviceId)),this.cachedDeviceId}}},32307:(e,t,r)=>{r.d(t,{p:()=>n});var s=r(94657),i=r(97571);class n{keyCodeMap={};preventDefault=new Set([-1]);keyUpObservable=new i.c;keyDownObservable=new i.c;constructor(e){e.onkeydown=e=>{this.handleKeyDown(e)},e.onkeyup=e=>{this.handleKeyUp(e)}}onKeyUp(e){this.keyUpObservable.registerObserver(e,this)}onKeyDown(e){this.keyDownObservable.registerObserver(e,this)}removeKeyUpListener(e){this.keyUpObservable.unregisterObserver(e)}removeKeyDownListener(e){this.keyDownObservable.unregisterObserver(e)}removeAllKeyUpListeners(){this.keyUpObservable.unregisterObservers(this)}removeAllKeyDownListeners(){this.keyDownObservable.unregisterObservers(this)}removeAllListeners(){this.keyUpObservable.unregisterObservers(this),this.keyDownObservable.unregisterObservers(this)}handleKeyDown(e){this.handleKeyEvent(this.keyDownObservable,e)}handleKeyUp(e){this.handleKeyEvent(this.keyUpObservable,e)}handleKeyEvent(e,t){this.preventDefault.has(t.keyCode)&&t.preventDefault&&t.preventDefault();let r=(0,s.t)(this.keyCodeMap,t.keyCode),[i,n,...o]=r,a={key:i,keyCode:t.keyCode};r.length>1&&(a.secondaryKey=n,a.otherKeys=[n,...o]),e.notifyObservers(a)}}},34240:(e,t,r)=>{r.d(t,{H:()=>i,i:()=>s});let s="N/A",i="UNKNOWN"},37831:(e,t,r)=>{r.d(t,{P:()=>i,v:()=>
1o});var s,i,n=r(97571);(s=i||(i={})).Fullscreen="fullscreen",s.Resume="resume",s.Suspend="suspend";class o{observables={};on(e,t){(this.observables[e]||=new n.c).registerObserver(t,this)}off(e,t){let r=this.observables[e];r&&r.unregisterObserver(t)}notify(e,t){let r=this.observables[e];r&&r.notifyObservers(t)}isAppBackgrounded(){return!1}onResuming(e){this.on("resume",e)}unregisterResuming(e){this.off("resume",e)}onSuspending(e){this.on("suspend",e)}unregisterSuspending(e){this.off("suspend",e)}onFullscreenChanged(e){this.on("fullscreen",e)}unregisterFullscreenChanged(e){this.off("fullscreen",e)}}},42333:(e,t,r)=>{r.d(t,{S:()=>n});var s=r(54013),i=r(70334);class n{supportedTags=new Set;measurementsStore;telemetryLog;stopMonitoring=null;constructor(){this.telemetryLog=new i.FU,this.measurementsStore=(0,i.FY)(),this.telemetryLog.registerHandler(this.measurementsStore.metricsHandler)}getMeasurementsStore(){return this.measurementsStore}getPerformanceTags(){return this.supportedTags}startMonitoring(){this.stopMonitoring&&(s.k.warn("Tried to start monitoring without stopping the previous session"),this.stopMonitoring(),this.stopMonitoring=null);let e=this.nativeStartMonitoring(),t=()=>{e(),this.stopMonitoring=null};return this.stopMonitoring=t,t}getMemoryData(e,t){let r={usage:e.filter(e=>"MEMORY"===e.tag).map(e=>({time:e.t.currentTime,value:e.value}))};if(t.has("MEMORY_LIMIT")){let t=e.find(e=>"MEMORY_LIMIT"===e.tag);r.memoryLimit=t?.value}if(t.has("USER_AGENT_SPECIFIC_MEMORY")){let t=e.find(e=>"USER_AGENT_SPECIFIC_MEMORY"===e.tag);r.userAgentSpecificMemory=t?.value}return r}}},48658:(e,t,r)=>{r.d(t,{A:()=>s});function s(e,t){return"1000"===e?1:"1001"===e&&"COMCAST"===t||"1003"===e?3:"1001"===e&&"XGLOBAL"===t?2:void 0}},57147:(e,t,r)=>{r.d(t,{XfinityRdkDeviceFactory:()=>b});var s=r(63438),i=r(71653),n=r(14844),o=r(62988),a=r(16232);class h{isVoiceGuideOn(){return a.hH.voiceGuidanceSettings().then(e=>e.enabled).catch(()=>!1)}}class u{adsId;consent;initialise(){return a.XF.advertisingId().then(e=>{this.adsId=e.ifa,this.consent="0"===e.lmt}).catch(()=>{})}deviceAdsId(){return this.adsId}trackingConsent(){return this.consent}}var c=r(37831),d=r(59105);class l extends c.v{isBackgrounded=!1;constructor(){super(),a.v0.listen("background",()=>{this.isBackgrounded=!0,this.notify("suspend")}),a.v0.listen("foreground",()=>{this.isBackgrounded=!1,this.notify("resume")})}isAppBackgrounded(){return this.isBackgrounded}dismissSplashScreen(){a.v0.ready().catch(d.l)}}var m=r(72158);class p extends m.pT{status;type;constructor(){super(),a.pF.listen("networkChanged",e=>{this.update(e),this.notifyConnectionStatusChanged(this.status)})}initialise(){return a.pF.network().then(this.update.bind(this)).catch(d.l)}getNetworkConnectionType(){return"hybrid"===this.type?"mixed":this.type}getNetworkConnectionStatus(){return this.status}update(e){this.status=+("connected"===e.state),this.type=e.type}}var g=r(82763),v=r(13383),y=r(98224),S=r(15752),T=r(9778);class E{hasLowerEndSpecs(){return!0}requiresLicensingSigning(){return!1}hasThumbnailScrubbingSupport(){return!0}hasExtendedDvrSupport(){return!0}supportsExtendedDvrOnIsp(){return!0}prefersHttp(){return!0}getHardwareCapabilities(){return Promise.all([a.pF.videoResolution().then(([e,t])=>(0,S._o)({width:e,height:t})?y.T4.UHD:y.T4.HD),a.pF.hdr().then(e=>
1{let t=[y.K1.SDR];return e.hdr10&&t.push(y.K1.HDR10),e.dolbyVision&&t.push(y.K1.DV),t}),a.pF.hdcp().then(e=>e["hdcp2.2"]?y.GC.V2_2:e["hdcp1.4"]?y.GC.V1_4:y.GC.Unknown)]).then(([e,t,r])=>({audioFormats:[v.S.Stereo],colourSpaces:t,hdcpLevel:r,videoFormat:e}))}getPlayoutCapabilities(){return{default:T.bS}}}var M=r(21890),f=r(48658),U=r(34240);let w=/PERF\d+/i,O=/WPE (.*?) /,I=/partnerId:(\w+)/i;class R extends M.V{context;xfinityVariant;constructor(e,t){super(e),this.context=t}initialise(){this.deviceBrand="Comcast",this.deviceType="Settop",this.deviceManufacturer="Comcast",this.browserName=this.context.navigator.userAgent,this.userFriendlyName="Xfinity",this.deviceVersion=this.getRegexMatchingString(w,0).toUpperCase(),this.browserVersion=this.getRegexMatchingString(O,1);let e=a.pF.distributor().catch(()=>this.getRegexMatchingString(I,1)).then(e=>{this.partnerId=e.toUpperCase()}),t=a.pF.uid().then(e=>{this.uniqueDeviceId=e}).catch(()=>super.initialise()),r=a.pF.sku().catch(()=>U.i).then(e=>{this.deviceModel=this.deviceFullModel=e||U.H});return Promise.all([a.WV.flags().catch(()=>({})),e,t,r,this.setFirmwareVersionInformation()]).then(([e])=>{this.xfinityVariant=(0,f.A)(e.userExperience,this.partnerId),e.userExperience&&(this.deviceFullModel+=`:${e.userExperience}`)})}getRegexMatchingString(e,t){let r=this.context.navigator.userAgent.match(e);return r&&r.length>0?r[t]:U.i}setFirmwareVersionInformation(){return Promise.all([a.pF.make(),a.pF.model(),a.pF.version()]).then(([e,t,r])=>{let s=r.firmware.readable.replace("RDK v",""),i=`${e}_${t}_${s}`;this.operatingSystemVersion=s,this.operatingSystemName=this.deviceFirmware=i}).catch(()=>{this.operatingSystemName=this.operatingSystemVersion=this.deviceFirmware=U.i})}}class b{initialise(){let e=new E,t=new g.v(self),r=new o.s(self),a=new i.v(self),c=new n.Y(self),d=new h,m=new u,v=new l,y=new p,S=new R(a,self);return Promise.all([S.initialise(),m.initialise(),y.initialise()]).then(()=>({type:s.b.Xfinity,accessibility:d,advertising:m,input:r,capabilities:e,deeplink:t,deviceInfo:S,lifecycle:v,networkStatus:y,storage:a,telemetry:c}))}}},59105:(e,t,r)=>{r.d(t,{l:()=>s});function s(){}},62988:(e,t,r)=>{r.d(t,{s:()=>a});var s=r(32307),i=r(94657);let n={[i.w.UP]:[38],[i.w.DOWN]:[40],[i.w.LEFT]:[37],[i.w.RIGHT]:[39],[i.w.ENTER]:[13],[i.w.BACK]:[8],[i.w.RW]:[227],[i.w.FF]:[228],[i.w.PLAY_PAUSE]:[179],[i.w.INFO]:[73],[i.w[1]]:[49],[i.w[2]]:[50],[i.w[3]]:[51],[i.w[4]]:[52],[i.w[5]]:[53],[i.w[6]]:[54],[i.w[7]]:[55],[i.w[8]]:[56],[i.w[9]]:[57],[i.w[0]]:[48],[i.w.CHANNEL_UP]:[176],[i.w.CHANNEL_DOWN]:[177],[i.w.SHORTCUT_9]:[49]},o=new Set([8,13,37,38,39,40]);class a extends s.p{keyCodeMap=n;preventDefault=o}},71653:(e,t,r)=>{r.d(t,{v:()=>i});var s=r(77995);class i{storage;setSecureItem=this.setItem;getSecureItem=this.getItem;removeSecureItem=this.removeItem;getAllSecureKeys=this.getAllKeys;constructor(e){this.storage=e.localStorage}setItem(e,t){return null===t?(this.storage.removeItem(e),Promise.resolve()):(0,s.j)(()=>this.storage.setItem(e,t))}getItem(e){return(0,s.j)(()=>this.storage.getItem(e))}removeItem(e){return(0,s.j)(()=>this.storage.removeItem(e))}clear(){return(0,s.j)(()=>this.storage.clear())}getAllKeys(){return(0,s.j)(()=>Object.keys(this.storage))}}},71673:(e,t,r)=>{r.d(t,{D:()=>i,y:()=>n});let s="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";function i(e){let t="";for(let r=0;r<e;r++)t+=s[Math.floor(Math.random()*s.length)];return t}function n(e,t){return e.substring(0,3)===t?e.substring(3):e}},77995:(e,t,r)=>{r.d(t,{j:()=>s});function s(e){return new Promise(t=>t(e()))}},82763:(e,t,r)=>{r.d(t,{h:()=>o,v:()=>n});var s=r(54013),i=r(89759);class n{data="";constructor(e=self,t=!0,r=i.b){t&&(this.data=o(e.location.href,r))}onDeeplink(e){}}let o=(e,t=i.b)=>{if(e)try{let r=decodeURIComponent(e.replace(/\+/g,"%20")),s=t.exec(r);if(s&&s.length>0)return s[1]}catch(t){s.k.error("Unable to decode deeplink",e,t)}return""}},89759:(e,t,r)=>{r.d(t,{b:()=>s,p:()=>i});let s=/deeplinkData=([^&]+)/,i=/([^&]+)/},94657:(e,t,r)=>{r.d(t,{t:()=>i,w:()=>s});let s={0:"0",1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",AD:"AD",BACK:"BACK",BLUE:"BLUE",CHANNEL_DOWN:"CHANNEL_DOWN",CHANNEL_PREV:"CHANNEL_PREV",CHANNEL_UP:"CHANNEL_UP",DELET
1E:"DELETE",DOWN:"DOWN",ENTER:"ENTER",EXIT:"EXIT",FF:"FF",GREEN:"GREEN",HELP:"HELP",INFO:"INFO",INSTANT_REPLAY:"INSTANT_REPLAY",L3:"L3",LEFT:"LEFT",PAUSE:"PAUSE",PLAY:"PLAY",PLAY_PAUSE:"PLAY_PAUSE",RED:"RED",RIGHT:"RIGHT",RW:"RW",SEARCH:"SEARCH",SHORTCUT_1:"SHORTCUT_1",SHORTCUT_2:"SHORTCUT_2",SHORTCUT_3:"SHORTCUT_3",SHORTCUT_4:"SHORTCUT_4",SHORTCUT_5:"SHORTCUT_5",SHORTCUT_6:"SHORTCUT_6",SHORTCUT_7:"SHORTCUT_7",SHORTCUT_8:"SHORTCUT_8",SHORTCUT_9:"SHORTCUT_9",SKIP_NEXT:"SKIP_NEXT",SKIP_PREV:"SKIP_PREV",START:"START",STOP:"STOP",SUBTITLES:"SUBTITLES",UNKNOWN:"UNKNOWN",UP:"UP",Y:"Y",YELLOW:"YELLOW"};function i(e,t){let r=[];for(let s in e)-1!==e[s].indexOf(t)&&r.push(s);return 0===r.length&&r.push(s.UNKNOWN),r}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.