@mux/mux-player 2.4.0 → 2.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
- "use strict";(()=>{var q1=Object.create;var Cv=Object.defineProperty;var Y1=Object.getOwnPropertyDescriptor;var j1=Object.getOwnPropertyNames;var z1=Object.getPrototypeOf,X1=Object.prototype.hasOwnProperty;var Q1=(i,e)=>()=>(e||i((e={exports:{}}).exports,e),e.exports);var Z1=(i,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of j1(e))!X1.call(i,s)&&s!==t&&Cv(i,s,{get:()=>e[s],enumerable:!(r=Y1(e,s))||r.enumerable});return i};var J1=(i,e,t)=>(t=i!=null?q1(z1(i)):{},Z1(e||!i||!i.__esModule?Cv(t,"default",{value:i,enumerable:!0}):t,i));var Ih=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)};var Be=(i,e,t)=>(Ih(i,e,"read from private field"),t?t.call(i):e.get(i)),Tt=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},vi=(i,e,t,r)=>(Ih(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t);var _t=(i,e,t)=>(Ih(i,e,"access private method"),t);var wy=Q1((Wc,Tp)=>{(function(){var i,e;i=this,e=function(){return function(){var t={80:function(n,a,o){n.exports=o(728).default},728:function(n,a,o){"use strict";o.d(a,{default:function(){return H1}});var l=o(48),d=o.n(l),c=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(v){var m=16*Math.random()|0;return(v==="x"?m:3&m|8).toString(16)})},u=function(){return("000000"+(Math.random()*Math.pow(36,6)<<0).toString(36)).slice(-6)},h=function(v){var m,p;if(v&&v.nodeName!==void 0)return v.muxId||(v.muxId=u()),v.muxId;try{p=document.querySelector(v)}catch{}return p&&!p.muxId&&(p.muxId=v),((m=p)===null||m===void 0?void 0:m.muxId)||v},f=function(v){var m;v&&v.nodeName!==void 0?v=h(m=v):m=document.querySelector(v);var p=m&&m.nodeName?m.nodeName.toLowerCase():"";return[m,v,p]},g=o(640),E=o.n(g),y=E().methodFactory;E().methodFactory=function(v,m,p){var T=y(v,m,p);return function(){for(var _=["[mux]"],I=0;I<arguments.length;I++)_.push(arguments[I]);T.apply(void 0,_)}},E().setLevel(E().getLevel());var S=E();function w(){return(d().doNotTrack||d().navigator&&d().navigator.doNotTrack)==="1"}var L={now:function(){var v=d().performance,m=v&&v.timing,p=m&&m.navigationStart,T=typeof p=="number"&&typeof v.now=="function"?p+v.now():Date.now();return Math.round(T)}},F=function(v){return R(v)[0]},R=function(v){if(typeof v!="string"||v==="")return["localhost"];var m,p=(v.match(/^(([^:\/?#]+):)?(\/\/([^\/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/)||[])[4];return p&&(m=(p.match(/[^\.]+\.[^\.]+$/)||[])[0]),[p,m]},B={exists:function(){var v=d().performance;return(v&&v.timing)!==void 0},domContentLoadedEventEnd:function(){var v=d().performance,m=v&&v.timing;return m&&m.domContentLoadedEventEnd},navigationStart:function(){var v=d().performance,m=v&&v.timing;return m&&m.navigationStart}};function P(v,m,p){p=p===void 0?1:p,v[m]=v[m]||0,v[m]+=p}var $=["x-request-id","cf-ray","x-amz-cf-id","x-akamai-request-id"],K=["x-cdn","content-type"].concat($);function N(v){var m={};return(v=v||"").trim().split(/[\r\n]+/).forEach(function(p){if(p){var T=p.split(": "),_=T.shift();_&&(K.indexOf(_.toLowerCase())>=0||_.toLowerCase().indexOf("x-litix-")===0)&&(m[_]=T.join(": "))}}),m}function z(v){if(v){var m=$.find(function(p){return v[p]!==void 0});return m?v[m]:void 0}}var Y=function(v){var m={};for(var p in v){var T=v[p];T["DATA-ID"].search("io.litix.data.")!==-1&&(m[T["DATA-ID"].replace("io.litix.data.","")]=T.VALUE)}return m};function ge(v,m){var p=Object.keys(v);if(Object.getOwnPropertySymbols){var T=Object.getOwnPropertySymbols(v);m&&(T=T.filter(function(_){return Object.getOwnPropertyDescriptor(v,_).enumerable})),p.push.apply(p,T)}return p}function me(v){for(var m=1;m<arguments.length;m++){var p=arguments[m]!=null?arguments[m]:{};m%2?ge(Object(p),!0).forEach(function(T){Ee(v,T,p[T])}):Object.getOwnPropertyDescriptors?Object.defineProperties(v,Object.getOwnPropertyDescriptors(p)):ge(Object(p)).forEach(function(T){Object.defineProperty(v,T,Object.getOwnPropertyDescriptor(p,T))})}return v}function Ee(v,m,p){return m in v?Object.defineProperty(v,m,{value:p,enumerable:!0,configurable:!0,writable:!0}):v[m]=p,v}var De=function(v){if(!v)return{};var m=B.navigationStart(),p=v.loading,T=p?p.start:v.trequest,_=p?p.first:v.tfirst,I=p?p.end:v.tload;return{bytesLoaded:v.total,requestStart:Math.round(m+T),responseStart:Math.round(m+_),responseEnd:Math.round(m+I)}},Le=function(v){if(v&&typeof v.getAllResponseHeaders=="function")return N(v.getAllResponseHeaders())};function Z(v,m){var p=Object.keys(v);if(Object.getOwnPropertySymbols){var T=Object.getOwnPropertySymbols(v);m&&(T=T.filter(function(_){return Object.getOwnPropertyDescriptor(v,_).enumerable})),p.push.apply(p,T)}return p}function te(v){for(var m=1;m<arguments.length;m++){var p=arguments[m]!=null?arguments[m]:{};m%2?Z(Object(p),!0).forEach(function(T){ie(v,T,p[T])}):Object.getOwnPropertyDescriptors?Object.defineProperties(v,Object.getOwnPropertyDescriptors(p)):Z(Object(p)).forEach(function(T){Object.defineProperty(v,T,Object.getOwnPropertyDescriptor(p,T))})}return v}function ie(v,m,p){return m in v?Object.defineProperty(v,m,{value:p,enumerable:!0,configurable:!0,writable:!0}):v[m]=p,v}var _e=function(v,m){if(!v||!v.requestEndDate)return{};var p,T=F(v.url),_=v.url,I=v.bytesLoaded,x=new Date(v.requestStartDate).getTime(),C=new Date(v.firstByteDate).getTime(),U=new Date(v.requestEndDate).getTime(),G=isNaN(v.duration)?0:v.duration,D=typeof m.getMetricsFor=="function"?m.getMetricsFor(v.mediaType).HttpList:m.getDashMetrics().getHttpRequests(v.mediaType);return D.length>0&&(p=N(D[D.length-1]._responseHeaders||"")),{requestStart:x,requestResponseStart:C,requestResponseEnd:U,requestBytesLoaded:I,requestResponseHeaders:p,requestMediaDuration:G,requestHostname:T,requestUrl:_,requestId:p?z(p):void 0}},Ae=function(v,m){var p=m.getQualityFor(v),T=m.getCurrentTrackFor(v).bitrateList;return T?{currentLevel:p,renditionWidth:T[p].width||null,renditionHeight:T[p].height||null,renditionBitrate:T[p].bandwidth}:{}},Je=function(v){var m;return(m=v.match(/.*codecs\*?="(.*)"/))===null||m===void 0?void 0:m[1]},Pt=function(v){try{var m,p;return(m=v.getVersion)===null||m===void 0||(p=m.call(v))===null||p===void 0?void 0:p.split(".").map(function(T){return parseInt(T)})[0]}catch{return!1}};function Ot(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var kt=0,mi=function(){function v(){(function(_,I){if(!(_ instanceof I))throw new TypeError("Cannot call a class as a function")})(this,v)}var m,p,T;return m=v,p=[{key:"on",value:function(_,I,x){return I._eventEmitterGuid=I._eventEmitterGuid||++kt,this._listeners=this._listeners||{},this._listeners[_]=this._listeners[_]||[],x&&(I=I.bind(x)),this._listeners[_].push(I),I}},{key:"off",value:function(_,I){var x=this._listeners&&this._listeners[_];x&&x.forEach(function(C,U){C._eventEmitterGuid===I._eventEmitterGuid&&x.splice(U,1)})}},{key:"one",value:function(_,I,x){var C=this;I._eventEmitterGuid=I._eventEmitterGuid||++kt;var U=function G(){C.off(_,G),I.apply(x||this,arguments)};U._eventEmitterGuid=I._eventEmitterGuid,this.on(_,U)}},{key:"emit",value:function(_,I){var x=this;if(this._listeners){I=I||{};var C=this._listeners["before*"]||[],U=this._listeners[_]||[],G=this._listeners["after"+_]||[],D=function(ye,ne){(ye=ye.slice()).forEach(function(ue){ue.call(x,{type:_},ne)})};D(C,I),D(U,I),D(G,I)}}}],p&&Ot(m.prototype,p),T&&Ot(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}(),Nr=mi;function ma(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var al=function(){function v(_){var I=this;(function(x,C){if(!(x instanceof C))throw new TypeError("Cannot call a class as a function")})(this,v),this.pm=_,this._playbackHeartbeatInterval=null,this._playheadShouldBeProgressing=!1,_.on("playing",function(){I._playheadShouldBeProgressing=!0}),_.on("play",this._startPlaybackHeartbeatInterval.bind(this)),_.on("playing",this._startPlaybackHeartbeatInterval.bind(this)),_.on("adbreakstart",this._startPlaybackHeartbeatInterval.bind(this)),_.on("adplay",this._startPlaybackHeartbeatInterval.bind(this)),_.on("adplaying",this._startPlaybackHeartbeatInterval.bind(this)),_.on("seeking",this._startPlaybackHeartbeatInterval.bind(this)),_.on("devicewake",this._startPlaybackHeartbeatInterval.bind(this)),_.on("viewstart",this._startPlaybackHeartbeatInterval.bind(this)),_.on("rebufferstart",this._startPlaybackHeartbeatInterval.bind(this)),_.on("pause",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("ended",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("viewend",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("error",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("aderror",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("adpause",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("adended",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("adbreakend",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("seeked",function(){_.data.player_is_paused?I._stopPlaybackHeartbeatInterval():I._startPlaybackHeartbeatInterval()}),_.on("timeupdate",function(){I._playbackHeartbeatInterval!==null&&_.emit("playbackheartbeat")}),_.on("devicesleep",function(x,C){I._playbackHeartbeatInterval!==null&&(d().clearInterval(I._playbackHeartbeatInterval),_.emit("playbackheartbeatend",{viewer_time:C.viewer_time}),I._playbackHeartbeatInterval=null)})}var m,p,T;return m=v,(p=[{key:"_startPlaybackHeartbeatInterval",value:function(){var _=this;this._playbackHeartbeatInterval===null&&(this.pm.emit("playbackheartbeat"),this._playbackHeartbeatInterval=d().setInterval(function(){_.pm.emit("playbackheartbeat")},this.pm.playbackHeartbeatTime))}},{key:"_stopPlaybackHeartbeatInterval",value:function(){this._playheadShouldBeProgressing=!1,this._playbackHeartbeatInterval!==null&&(d().clearInterval(this._playbackHeartbeatInterval),this.pm.emit("playbackheartbeatend"),this._playbackHeartbeatInterval=null)}}])&&ma(m.prototype,p),T&&ma(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}();function pa(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function Ur(v,m,p){return m&&pa(v.prototype,m),p&&pa(v,p),Object.defineProperty(v,"prototype",{writable:!1}),v}var ol=Ur(function v(m){var p=this;(function(T,_){if(!(T instanceof _))throw new TypeError("Cannot call a class as a function")})(this,v),m.on("viewinit",function(){p.viewErrored=!1}),m.on("error",function(T,_){try{var I=m.errorTranslator({player_error_code:_.player_error_code,player_error_message:_.player_error_message,player_error_context:_.player_error_context});I?(m.data.player_error_code=I.player_error_code||_.player_error_code,m.data.player_error_message=I.player_error_message||_.player_error_message,m.data.player_error_context=I.player_error_context||_.player_error_context,p.viewErrored=!0):(delete m.data.player_error_code,delete m.data.player_error_message,delete m.data.player_error_context)}catch(x){m.mux.log.warn("Exception in error translator callback.",x),p.viewErrored=!0}})});function ga(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var ll=function(){function v(_){(function(I,x){if(!(I instanceof x))throw new TypeError("Cannot call a class as a function")})(this,v),this.pm=_,this._watchTimeTrackerLastCheckedTime=null,_.on("playbackheartbeat",this._updateWatchTime.bind(this)),_.on("playbackheartbeatend",this._clearWatchTimeState.bind(this))}var m,p,T;return m=v,(p=[{key:"_updateWatchTime",value:function(_,I){var x=I.viewer_time;this._watchTimeTrackerLastCheckedTime===null&&(this._watchTimeTrackerLastCheckedTime=x),P(this.pm.data,"view_watch_time",x-this._watchTimeTrackerLastCheckedTime),this._watchTimeTrackerLastCheckedTime=x}},{key:"_clearWatchTimeState",value:function(_,I){this._updateWatchTime(_,I),this._watchTimeTrackerLastCheckedTime=null}}])&&ga(m.prototype,p),T&&ga(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}();function va(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var dl=function(){function v(_){var I=this;(function(U,G){if(!(U instanceof G))throw new TypeError("Cannot call a class as a function")})(this,v),this.pm=_,this._playbackTimeTrackerLastPlayheadPosition=-1,this._lastTime=L.now(),this._isAdPlaying=!1,this._callbackUpdatePlaybackTime=null;var x=this._startPlaybackTimeTracking.bind(this);_.on("playing",x),_.on("adplaying",x),_.on("seeked",x);var C=this._stopPlaybackTimeTracking.bind(this);_.on("playbackheartbeatend",C),_.on("seeking",C),_.on("adplaying",function(){I._isAdPlaying=!0}),_.on("adended",function(){I._isAdPlaying=!1}),_.on("adpause",function(){I._isAdPlaying=!1}),_.on("adbreakstart",function(){I._isAdPlaying=!1}),_.on("adbreakend",function(){I._isAdPlaying=!1}),_.on("adplay",function(){I._isAdPlaying=!1}),_.on("viewinit",function(){I._playbackTimeTrackerLastPlayheadPosition=-1,I._lastTime=L.now(),I._isAdPlaying=!1,I._callbackUpdatePlaybackTime=null})}var m,p,T;return m=v,(p=[{key:"_startPlaybackTimeTracking",value:function(){this._callbackUpdatePlaybackTime===null&&(this._callbackUpdatePlaybackTime=this._updatePlaybackTime.bind(this),this._playbackTimeTrackerLastPlayheadPosition=this.pm.data.player_playhead_time,this.pm.on("playbackheartbeat",this._callbackUpdatePlaybackTime))}},{key:"_stopPlaybackTimeTracking",value:function(){this._callbackUpdatePlaybackTime&&(this._updatePlaybackTime(),this.pm.off("playbackheartbeat",this._callbackUpdatePlaybackTime),this._callbackUpdatePlaybackTime=null,this._playbackTimeTrackerLastPlayheadPosition=-1)}},{key:"_updatePlaybackTime",value:function(){var _=this.pm.data.player_playhead_time,I=L.now(),x=-1;this._playbackTimeTrackerLastPlayheadPosition>=0&&_>this._playbackTimeTrackerLastPlayheadPosition?x=_-this._playbackTimeTrackerLastPlayheadPosition:this._isAdPlaying&&(x=I-this._lastTime),x>0&&x<=1e3&&P(this.pm.data,"view_content_playback_time",x),this._playbackTimeTrackerLastPlayheadPosition=_,this._lastTime=I}}])&&va(m.prototype,p),T&&va(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}();function Ea(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var cl=function(){function v(_){(function(x,C){if(!(x instanceof C))throw new TypeError("Cannot call a class as a function")})(this,v),this.pm=_;var I=this._updatePlayheadTime.bind(this);_.on("playbackheartbeat",I),_.on("playbackheartbeatend",I),_.on("timeupdate",I),_.on("destroy",function(){_.off("timeupdate",I)})}var m,p,T;return m=v,(p=[{key:"_updateMaxPlayheadPosition",value:function(){this.pm.data.view_max_playhead_position=this.pm.data.view_max_playhead_position===void 0?this.pm.data.player_playhead_time:Math.max(this.pm.data.view_max_playhead_position,this.pm.data.player_playhead_time)}},{key:"_updatePlayheadTime",value:function(_,I){var x=this,C=function(){x.pm.currentFragmentPDT&&x.pm.currentFragmentStart&&(x.pm.data.player_program_time=x.pm.currentFragmentPDT+x.pm.data.player_playhead_time-x.pm.currentFragmentStart)};if(I&&I.player_playhead_time)this.pm.data.player_playhead_time=I.player_playhead_time,C(),this._updateMaxPlayheadPosition();else if(this.pm.getPlayheadTime){var U=this.pm.getPlayheadTime();U!==void 0&&(this.pm.data.player_playhead_time=U,C(),this._updateMaxPlayheadPosition())}}}])&&Ea(m.prototype,p),T&&Ea(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}();function fh(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function je(v,m,p){return m&&fh(v.prototype,m),p&&fh(v,p),Object.defineProperty(v,"prototype",{writable:!1}),v}var Fr=3e5,mh=je(function v(m){if(function(I,x){if(!(I instanceof x))throw new TypeError("Cannot call a class as a function")}(this,v),!m.disableRebufferTracking){var p,T=function(I,x){_(x),p=void 0},_=function(I){if(p){var x=I.viewer_time-p;P(m.data,"view_rebuffer_duration",x),p=I.viewer_time,m.data.view_rebuffer_duration>Fr&&(m.emit("viewend"),m.send("viewend"),m.mux.log.warn("Ending view after rebuffering for longer than ".concat(Fr,"ms, future events will be ignored unless a programchange or videochange occurs.")))}m.data.view_watch_time>=0&&m.data.view_rebuffer_count>0&&(m.data.view_rebuffer_frequency=m.data.view_rebuffer_count/m.data.view_watch_time,m.data.view_rebuffer_percentage=m.data.view_rebuffer_duration/m.data.view_watch_time)};m.on("playbackheartbeat",function(I,x){return _(x)}),m.on("rebufferstart",function(I,x){p||(P(m.data,"view_rebuffer_count",1),p=x.viewer_time,m.one("rebufferend",T))}),m.on("viewinit",function(){p=void 0,m.off("rebufferend",T)})}});function ul(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var ph=function(){function v(_){var I=this;(function(x,C){if(!(x instanceof C))throw new TypeError("Cannot call a class as a function")})(this,v),this.pm=_,_.disableRebufferTracking||_.disablePlayheadRebufferTracking||(this._lastCheckedTime=null,this._lastPlayheadTime=null,this._lastPlayheadTimeUpdatedTime=null,_.on("playbackheartbeat",this._checkIfRebuffering.bind(this)),_.on("playbackheartbeatend",this._cleanupRebufferTracker.bind(this)),_.on("seeking",function(){I._cleanupRebufferTracker(null,{viewer_time:L.now()})}))}var m,p,T;return m=v,p=[{key:"_checkIfRebuffering",value:function(_,I){if(this.pm.seekingTracker.isSeeking||this.pm.adTracker.isAdBreak||!this.pm.playbackHeartbeat._playheadShouldBeProgressing)this._cleanupRebufferTracker(_,I);else if(this._lastCheckedTime!==null)if(this._lastPlayheadTime===this.pm.data.player_playhead_time){var x=I.viewer_time-this._lastPlayheadTimeUpdatedTime;typeof this.pm.sustainedRebufferThreshold=="number"&&x>=this.pm.sustainedRebufferThreshold&&(this._rebuffering||(this._rebuffering=!0,this.pm.emit("rebufferstart",{viewer_time:this._lastPlayheadTimeUpdatedTime}))),this._lastCheckedTime=I.viewer_time}else this._cleanupRebufferTracker(_,I,!0);else this._prepareRebufferTrackerState(I.viewer_time)}},{key:"_clearRebufferTrackerState",value:function(){this._lastCheckedTime=null,this._lastPlayheadTime=null,this._lastPlayheadTimeUpdatedTime=null}},{key:"_prepareRebufferTrackerState",value:function(_){this._lastCheckedTime=_,this._lastPlayheadTime=this.pm.data.player_playhead_time,this._lastPlayheadTimeUpdatedTime=_}},{key:"_cleanupRebufferTracker",value:function(_,I){var x=arguments.length>2&&arguments[2]!==void 0&&arguments[2];if(this._rebuffering)this._rebuffering=!1,this.pm.emit("rebufferend",{viewer_time:I.viewer_time});else{if(this._lastCheckedTime===null)return;var C=this.pm.data.player_playhead_time-this._lastPlayheadTime,U=I.viewer_time-this._lastPlayheadTimeUpdatedTime;typeof this.pm.minimumRebufferDuration=="number"&&C>0&&U-C>this.pm.minimumRebufferDuration&&(this._lastCheckedTime=null,this.pm.emit("rebufferstart",{viewer_time:this._lastPlayheadTimeUpdatedTime}),this.pm.emit("rebufferend",{viewer_time:this._lastPlayheadTimeUpdatedTime+U-C}))}x?this._prepareRebufferTrackerState(I.viewer_time):this._clearRebufferTrackerState()}}],p&&ul(m.prototype,p),T&&ul(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}(),gh=ph;function hl(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var vh=function(){function v(_){var I=this;(function(x,C){if(!(x instanceof C))throw new TypeError("Cannot call a class as a function")})(this,v),this.pm=_,_.on("viewinit",function(){var x=_.data,C=x.view_id;if(!x.view_program_changed){var U=function(G,D){var ye=D.viewer_time;G.type==="playing"&&_.data.view_time_to_first_frame===void 0?I.calculateTimeToFirstFrame(ye||L.now(),C):G.type!=="adplaying"||_.data.view_time_to_first_frame!==void 0&&!I._inPrerollPosition()||I.calculateTimeToFirstFrame(ye||L.now(),C)};_.one("playing",U),_.one("adplaying",U),_.one("viewend",function(){_.off("playing",U),_.off("adplaying",U)})}})}var m,p,T;return m=v,(p=[{key:"_inPrerollPosition",value:function(){return this.pm.data.view_content_playback_time===void 0||this.pm.data.view_content_playback_time<=1e3}},{key:"calculateTimeToFirstFrame",value:function(_,I){I===this.pm.data.view_id&&(this.pm.watchTimeTracker._updateWatchTime(null,{viewer_time:_}),this.pm.data.view_time_to_first_frame=this.pm.data.view_watch_time,(this.pm.data.player_autoplay_on||this.pm.data.video_is_autoplay)&&this.NAVIGATION_START&&(this.pm.data.view_aggregate_startup_time=this.pm.data.view_start+this.pm.data.view_watch_time-this.NAVIGATION_START))}}])&&hl(m.prototype,p),T&&hl(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}();function fl(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function zt(v,m,p){return m&&fl(v.prototype,m),p&&fl(v,p),Object.defineProperty(v,"prototype",{writable:!1}),v}var yt=zt(function v(m){var p=this;(function(T,_){if(!(T instanceof _))throw new TypeError("Cannot call a class as a function")})(this,v),m.on("viewinit",function(){p._lastPlayheadPosition=-1}),["pause","rebufferstart","seeking","error","adbreakstart","hb"].forEach(function(T){m.on(T,function(){if(p._lastPlayheadPosition>=0&&m.data.player_playhead_time>=0&&p._lastPlayerWidth>=0&&p._lastSourceWidth>0&&p._lastPlayerHeight>=0&&p._lastSourceHeight>0){var _=m.data.player_playhead_time-p._lastPlayheadPosition;if(_<0)return void(p._lastPlayheadPosition=-1);var I=Math.min(p._lastPlayerWidth/p._lastSourceWidth,p._lastPlayerHeight/p._lastSourceHeight),x=Math.max(0,I-1),C=Math.max(0,1-I);m.data.view_max_upscale_percentage=Math.max(m.data.view_max_upscale_percentage||0,x),m.data.view_max_downscale_percentage=Math.max(m.data.view_max_downscale_percentage||0,C),P(m.data,"view_total_content_playback_time",_),P(m.data,"view_total_upscaling",x*_),P(m.data,"view_total_downscaling",C*_)}p._lastPlayheadPosition=-1})}),["playing","hb"].forEach(function(T){m.on(T,function(){p._lastPlayheadPosition=m.data.player_playhead_time,p._lastPlayerWidth=m.data.player_width,p._lastPlayerHeight=m.data.player_height,p._lastSourceWidth=m.data.video_source_width,p._lastSourceHeight=m.data.video_source_height})})});function ba(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function ot(v,m,p){return m&&ba(v.prototype,m),p&&ba(v,p),Object.defineProperty(v,"prototype",{writable:!1}),v}var Xt=ot(function v(m){var p=this;(function(I,x){if(!(I instanceof x))throw new TypeError("Cannot call a class as a function")})(this,v),this.isSeeking=!1;var T=-1,_=function(){var I=L.now(),x=(m.data.viewer_time||I)-(T||I);P(m.data,"view_seek_duration",x),m.data.view_max_seek_time=Math.max(m.data.view_max_seek_time||0,x),p.isSeeking=!1,T=-1};m.on("seeking",function(I,x){Object.assign(m.data,x),p.isSeeking&&x.viewer_time-T<=2e3?T=x.viewer_time:(p.isSeeking&&_(),p.isSeeking=!0,T=x.viewer_time,P(m.data,"view_seek_count",1),m.send("seeking"))}),m.on("seeked",function(){_()}),m.on("viewend",function(){p.isSeeking&&(_(),m.send("seeked")),p.isSeeking=!1,T=-1})});function ti(v,m){return function(p){if(Array.isArray(p))return p}(v)||function(p,T){var _=p==null?null:typeof Symbol!="undefined"&&p[Symbol.iterator]||p["@@iterator"];if(_!=null){var I,x,C=[],U=!0,G=!1;try{for(_=_.call(p);!(U=(I=_.next()).done)&&(C.push(I.value),!T||C.length!==T);U=!0);}catch(D){G=!0,x=D}finally{try{U||_.return==null||_.return()}finally{if(G)throw x}}return C}}(v,m)||function(p,T){if(p){if(typeof p=="string")return nv(p,T);var _=Object.prototype.toString.call(p).slice(8,-1);return _==="Object"&&p.constructor&&(_=p.constructor.name),_==="Map"||_==="Set"?Array.from(p):_==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(_)?nv(p,T):void 0}}(v,m)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function nv(v,m){(m==null||m>v.length)&&(m=v.length);for(var p=0,T=new Array(m);p<m;p++)T[p]=v[p];return T}function av(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var ov=function(v,m){v.push(m),v.sort(function(p,T){return p.viewer_time-T.viewer_time})},GA=["adbreakstart","adrequest","adresponse","adplay","adplaying","adpause","adended","adbreakend","aderror","adclicked","adskipped"],WA=function(){function v(_){var I=this;(function(C,U){if(!(C instanceof U))throw new TypeError("Cannot call a class as a function")})(this,v),this.pm=_,_.on("viewinit",function(){I.isAdBreak=!1,I._currentAdRequestNumber=0,I._currentAdResponseNumber=0,I._adRequests=[],I._adResponses=[],I._adHasPlayed=!1,I._wouldBeNewAdPlay=!0,I._prerollPlayTime=void 0}),GA.forEach(function(C){return _.on(C,I._updateAdData.bind(I))});var x=function(){I.isAdBreak=!1};_.on("adbreakstart",function(){I.isAdBreak=!0}),_.on("play",x),_.on("playing",x),_.on("viewend",x),_.on("adrequest",function(C,U){U=Object.assign({ad_request_id:"generatedAdRequestId"+I._currentAdRequestNumber++},U),ov(I._adRequests,U),P(_.data,"view_ad_request_count"),I.inPrerollPosition()&&(_.data.view_preroll_requested=!0,I._adHasPlayed||P(_.data,"view_preroll_request_count"))}),_.on("adresponse",function(C,U){U=Object.assign({ad_request_id:"generatedAdRequestId"+I._currentAdResponseNumber++},U),ov(I._adResponses,U);var G=I.findAdRequest(U.ad_request_id);G&&P(_.data,"view_ad_request_time",Math.max(0,U.viewer_time-G.viewer_time))}),_.on("adplay",function(C,U){I._adHasPlayed=!0,I._wouldBeNewAdPlay&&(I._wouldBeNewAdPlay=!1,P(_.data,"view_ad_played_count")),I.inPrerollPosition()&&!_.data.view_preroll_played&&(_.data.view_preroll_played=!0,I._adRequests.length>0&&(_.data.view_preroll_request_time=Math.max(0,U.viewer_time-I._adRequests[0].viewer_time)),_.data.view_start&&(_.data.view_startup_preroll_request_time=Math.max(0,U.viewer_time-_.data.view_start)),I._prerollPlayTime=U.viewer_time)}),_.on("adplaying",function(C,U){I.inPrerollPosition()&&_.data.view_preroll_load_time===void 0&&I._prerollPlayTime!==void 0&&(_.data.view_preroll_load_time=U.viewer_time-I._prerollPlayTime,_.data.view_startup_preroll_load_time=U.viewer_time-I._prerollPlayTime)}),_.on("adclicked",function(C,U){I._wouldBeNewAdPlay||P(_.data,"view_ad_clicked_count")}),_.on("adskipped",function(C,U){I._wouldBeNewAdPlay||P(_.data,"view_ad_skipped_count")}),_.on("adended",function(){I._wouldBeNewAdPlay=!0}),_.on("aderror",function(){I._wouldBeNewAdPlay=!0})}var m,p,T;return m=v,(p=[{key:"inPrerollPosition",value:function(){return this.pm.data.view_content_playback_time===void 0||this.pm.data.view_content_playback_time<=1e3}},{key:"findAdRequest",value:function(_){for(var I=0;I<this._adRequests.length;I++)if(this._adRequests[I].ad_request_id===_)return this._adRequests[I]}},{key:"_updateAdData",value:function(_,I){if(this.inPrerollPosition()){if(!this.pm.data.view_preroll_ad_tag_hostname&&I.ad_tag_url){var x=ti(R(I.ad_tag_url),2),C=x[0],U=x[1];this.pm.data.view_preroll_ad_tag_domain=U,this.pm.data.view_preroll_ad_tag_hostname=C}if(!this.pm.data.view_preroll_ad_asset_hostname&&I.ad_asset_url){var G=ti(R(I.ad_asset_url),2),D=G[0],ye=G[1];this.pm.data.view_preroll_ad_asset_domain=ye,this.pm.data.view_preroll_ad_asset_hostname=D}}this.pm.data.ad_asset_url=I==null?void 0:I.ad_asset_url,this.pm.data.ad_tag_url=I==null?void 0:I.ad_tag_url,this.pm.data.ad_creative_id=I==null?void 0:I.ad_creative_id,this.pm.data.ad_id=I==null?void 0:I.ad_id,this.pm.data.ad_universal_id=I==null?void 0:I.ad_universal_id}}])&&av(m.prototype,p),T&&av(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}();function lv(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function KA(v,m,p){return m&&lv(v.prototype,m),p&&lv(v,p),Object.defineProperty(v,"prototype",{writable:!1}),v}var VA=KA(function v(m){var p,T;(function(C,U){if(!(C instanceof U))throw new TypeError("Cannot call a class as a function")})(this,v);var _=function(){m.disableRebufferTracking||p&&(P(m.data,"view_waiting_rebuffer_duration",L.now()-p),p=!1,d().clearInterval(T))},I=!1,x=function(){I=!1,_()};m.on("waiting",function(){I&&(m.disableRebufferTracking||(P(m.data,"view_waiting_rebuffer_count",1),p=L.now(),T=d().setInterval(function(){if(p){var C=L.now();P(m.data,"view_waiting_rebuffer_duration",C-p),p=C}},250)))}),m.on("playing",function(){_(),I=!0}),m.on("pause",x),m.on("seeking",x)});function dv(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function qA(v,m,p){return m&&dv(v.prototype,m),p&&dv(v,p),Object.defineProperty(v,"prototype",{writable:!1}),v}var YA=qA(function v(m){var p=this;(function(I,x){if(!(I instanceof x))throw new TypeError("Cannot call a class as a function")})(this,v);var T=function(){p.lastWallClockTime=L.now(),m.on("before*",_)},_=function(I){var x=L.now(),C=p.lastWallClockTime;p.lastWallClockTime=x,x-C>3e4&&(m.emit("devicesleep",{viewer_time:C}),Object.assign(m.data,{viewer_time:C}),m.send("devicesleep"),m.emit("devicewake",{viewer_time:x}),Object.assign(m.data,{viewer_time:x}),m.send("devicewake"))};m.one("playbackheartbeat",T),m.on("playbackheartbeatend",function(){m.off("before*",_),m.one("playbackheartbeat",T)})}),cv=o(375),jA=o(655),uv=o.n(jA),hv="muxData",fv=function(){var v;try{v=cv.parse(uv().get(hv)||"")}catch{v={}}return v},mv=function(v){try{uv().set(hv,cv.stringify(v),{expires:365})}catch{}},zA=function(){var v=fv();return v.mux_viewer_id=v.mux_viewer_id||c(),v.msn=v.msn||Math.random(),mv(v),{mux_viewer_id:v.mux_viewer_id,mux_sample_number:v.msn}};function XA(v,m){var p=m.beaconCollectionDomain,T=m.beaconDomain;if(p)return"https://"+p;var _=T||"litix.io";return(v=v||"inferred").match(/^[a-z0-9]+$/)?"https://"+v+"."+_:"https://img.litix.io/a.gif"}var pv=function(){var v;switch(gv()){case"cellular":v="cellular";break;case"ethernet":v="wired";break;case"wifi":v="wifi";break;case void 0:break;default:v="other"}return v},gv=function(){var v=d().navigator,m=v&&(v.connection||v.mozConnection||v.webkitConnection);return m&&m.type};pv.getConnectionFromAPI=gv;var QA=pv,ZA=Ev({a:"env",b:"beacon",c:"custom",d:"ad",e:"event",f:"experiment",i:"internal",m:"mux",n:"response",p:"player",q:"request",r:"retry",s:"session",t:"timestamp",u:"viewer",v:"video",w:"page",x:"view",y:"sub"}),vv=Ev({ad:"ad",ag:"aggregate",ap:"api",al:"application",ar:"architecture",as:"asset",au:"autoplay",av:"average",bi:"bitrate",br:"break",bw:"browser",by:"bytes",ca:"cached",cb:"cancel",cc:"codec",cd:"code",cg:"category",ch:"changed",ck:"clicked",cl:"canceled",cn:"config",co:"count",ce:"counter",cp:"complete",cr:"creative",ct:"content",cu:"current",cx:"connection",cz:"context",dg:"downscaling",dm:"domain",dn:"cdn",do:"downscale",dr:"drm",dp:"dropped",du:"duration",dv:"device",ec:"encoding",ed:"edge",en:"end",eg:"engine",em:"embed",er:"error",es:"errorcode",et:"errortext",ee:"event",ev:"events",ex:"expires",ep:"experiments",fa:"failed",fi:"first",fm:"family",ft:"format",fp:"fps",fq:"frequency",fr:"frame",fs:"fullscreen",ha:"has",hb:"holdback",he:"headers",ho:"host",hn:"hostname",ht:"height",id:"id",ii:"init",in:"instance",ip:"ip",is:"is",ke:"key",la:"language",lb:"labeled",le:"level",li:"live",ld:"loaded",lo:"load",ls:"lists",lt:"latency",ma:"max",md:"media",me:"message",mf:"manifest",mi:"mime",ml:"midroll",mm:"min",mn:"manufacturer",mo:"model",mx:"mux",ne:"newest",nm:"name",no:"number",on:"on",os:"os",pa:"paused",pb:"playback",pd:"producer",pe:"percentage",pf:"played",pg:"program",ph:"playhead",pi:"plugin",pl:"preroll",pn:"playing",po:"poster",pr:"preload",ps:"position",pt:"part",py:"property",ra:"rate",rd:"requested",re:"rebuffer",rf:"rendition",rm:"remote",ro:"ratio",rp:"response",rq:"request",rs:"requests",sa:"sample",sd:"skipped",se:"session",sk:"seek",sm:"stream",so:"source",sq:"sequence",sr:"series",st:"start",su:"startup",sv:"server",sw:"software",ta:"tag",tc:"tech",te:"text",tg:"target",th:"throughput",ti:"time",tl:"total",to:"to",tt:"title",ty:"type",ug:"upscaling",un:"universal",up:"upscale",ur:"url",us:"user",va:"variant",vd:"viewed",vi:"video",ve:"version",vw:"view",vr:"viewer",wd:"width",wa:"watch",wt:"waiting"});function Ev(v){var m={};for(var p in v)v.hasOwnProperty(p)&&(m[v[p]]=p);return m}function Eh(v){var m={},p={};return Object.keys(v).forEach(function(T){var _=!1;if(v.hasOwnProperty(T)&&v[T]!==void 0){var I=T.split("_"),x=I[0],C=ZA[x];C||(S.info("Data key word `"+I[0]+"` not expected in "+T),C=x+"_"),I.splice(1).forEach(function(U){U==="url"&&(_=!0),vv[U]?C+=vv[U]:Number(U)&&Math.floor(Number(U))===Number(U)?C+=U:(S.info("Data key word `"+U+"` not expected in "+T),C+="_"+U+"_")}),_?p[C]=v[T]:m[C]=v[T]}}),Object.assign(m,p)}var JA={maxBeaconSize:300,maxQueueLength:3600,baseTimeBetweenBeacons:1e4,maxPayloadKBSize:500},e1=["hb","requestcompleted","requestfailed","requestcanceled"],t1="https://img.litix.io",Tr=function(v){var m=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this._beaconUrl=v||t1,this._eventQueue=[],this._postInFlight=!1,this._failureCount=0,this._sendTimeout=!1,this._options=Object.assign({},JA,m)};Tr.prototype.queueEvent=function(v,m){var p=Object.assign({},m);return(this._eventQueue.length<=this._options.maxQueueLength||v==="eventrateexceeded")&&(this._eventQueue.push(p),this._sendTimeout||this._startBeaconSending(),this._eventQueue.length<=this._options.maxQueueLength)},Tr.prototype.flushEvents=function(){var v=arguments.length>0&&arguments[0]!==void 0&&arguments[0];v&&this._eventQueue.length===1?this._eventQueue.pop():(this._eventQueue.length&&this._sendBeaconQueue(),this._startBeaconSending())},Tr.prototype.destroy=function(){var v=arguments.length>0&&arguments[0]!==void 0&&arguments[0];this.destroyed=!0,v?this._clearBeaconQueue():this.flushEvents(),d().clearTimeout(this._sendTimeout)},Tr.prototype._clearBeaconQueue=function(){var v=this._eventQueue.length>this._options.maxBeaconSize?this._eventQueue.length-this._options.maxBeaconSize:0,m=this._eventQueue.slice(v);v>0&&Object.assign(m[m.length-1],Eh({mux_view_message:"event queue truncated"}));var p=this._createPayload(m);bv(this._beaconUrl,p,!0,function(){})},Tr.prototype._sendBeaconQueue=function(){var v=this;if(!this._postInFlight){var m=this._eventQueue.slice(0,this._options.maxBeaconSize);this._eventQueue=this._eventQueue.slice(this._options.maxBeaconSize),this._postInFlight=!0;var p=this._createPayload(m),T=L.now();bv(this._beaconUrl,p,!1,function(_,I){I?(v._eventQueue=m.concat(v._eventQueue),v._failureCount+=1,S.info("Error sending beacon: "+I)):v._failureCount=0,v._roundTripTime=L.now()-T,v._postInFlight=!1})}},Tr.prototype._getNextBeaconTime=function(){if(!this._failureCount)return this._options.baseTimeBetweenBeacons;var v=Math.pow(2,this._failureCount-1);return(1+(v*=Math.random()))*this._options.baseTimeBetweenBeacons},Tr.prototype._startBeaconSending=function(){var v=this;d().clearTimeout(this._sendTimeout),this.destroyed||(this._sendTimeout=d().setTimeout(function(){v._eventQueue.length&&v._sendBeaconQueue(),v._startBeaconSending()},this._getNextBeaconTime()))},Tr.prototype._createPayload=function(v){var m,p,T,_=this,I={transmission_timestamp:Math.round(L.now())};this._roundTripTime&&(I.rtt_ms=Math.round(this._roundTripTime));var x=function(){m=JSON.stringify({metadata:I,events:p||v}),T=m.length/1024},C=function(){return T<=_._options.maxPayloadKBSize};return x(),C()||(S.info("Payload size is too big ("+T+" kb). Removing unnecessary events."),p=v.filter(function(U){return e1.indexOf(U.e)===-1}),x()),C()||(S.info("Payload size still too big ("+T+" kb). Cropping fields.."),p.forEach(function(U){for(var G in U){var D=U[G];typeof D=="string"&&D.length>51200&&(U[G]=D.substring(0,51200))}}),x()),m};var i1=function(v){return v.length<=57344},bv=function(v,m,p,T){if(p&&navigator&&navigator.sendBeacon&&navigator.sendBeacon(v,m))T();else if(d().fetch)d().fetch(v,{method:"POST",body:m,headers:{"Content-Type":"text/plain"},keepalive:i1(m)}).then(function(I){return T(null,I.ok?null:"Error")}).catch(function(I){return T(null,I)});else{if(d().XMLHttpRequest){var _=new(d()).XMLHttpRequest;return _.onreadystatechange=function(){if(_.readyState===4)return T(null,_.status!==200?"error":void 0)},_.open("POST",v),_.setRequestHeader("Content-Type","text/plain"),void _.send(m)}T()}},r1=Tr;function s1(v,m){return function(p){if(Array.isArray(p))return p}(v)||function(p,T){var _=p==null?null:typeof Symbol!="undefined"&&p[Symbol.iterator]||p["@@iterator"];if(_!=null){var I,x,C=[],U=!0,G=!1;try{for(_=_.call(p);!(U=(I=_.next()).done)&&(C.push(I.value),!T||C.length!==T);U=!0);}catch(D){G=!0,x=D}finally{try{U||_.return==null||_.return()}finally{if(G)throw x}}return C}}(v,m)||function(p,T){if(p){if(typeof p=="string")return yv(p,T);var _=Object.prototype.toString.call(p).slice(8,-1);return _==="Object"&&p.constructor&&(_=p.constructor.name),_==="Map"||_==="Set"?Array.from(p):_==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(_)?yv(p,T):void 0}}(v,m)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
1
+ "use strict";(()=>{var q1=Object.create;var Cv=Object.defineProperty;var Y1=Object.getOwnPropertyDescriptor;var j1=Object.getOwnPropertyNames;var z1=Object.getPrototypeOf,X1=Object.prototype.hasOwnProperty;var Q1=(i,e)=>()=>(e||i((e={exports:{}}).exports,e),e.exports);var Z1=(i,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of j1(e))!X1.call(i,s)&&s!==t&&Cv(i,s,{get:()=>e[s],enumerable:!(r=Y1(e,s))||r.enumerable});return i};var J1=(i,e,t)=>(t=i!=null?q1(z1(i)):{},Z1(e||!i||!i.__esModule?Cv(t,"default",{value:i,enumerable:!0}):t,i));var Ih=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)};var Be=(i,e,t)=>(Ih(i,e,"read from private field"),t?t.call(i):e.get(i)),Tt=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},vi=(i,e,t,r)=>(Ih(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t);var _t=(i,e,t)=>(Ih(i,e,"access private method"),t);var wy=Q1((Wc,Tp)=>{(function(){var i,e;i=this,e=function(){return function(){var t={80:function(n,a,o){n.exports=o(728).default},728:function(n,a,o){"use strict";o.d(a,{default:function(){return H1}});var l=o(48),d=o.n(l),c=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(v){var m=16*Math.random()|0;return(v==="x"?m:3&m|8).toString(16)})},u=function(){return("000000"+(Math.random()*Math.pow(36,6)<<0).toString(36)).slice(-6)},h=function(v){var m,p;if(v&&v.nodeName!==void 0)return v.muxId||(v.muxId=u()),v.muxId;try{p=document.querySelector(v)}catch{}return p&&!p.muxId&&(p.muxId=v),((m=p)===null||m===void 0?void 0:m.muxId)||v},f=function(v){var m;v&&v.nodeName!==void 0?v=h(m=v):m=document.querySelector(v);var p=m&&m.nodeName?m.nodeName.toLowerCase():"";return[m,v,p]},g=o(640),E=o.n(g),y=E().methodFactory;E().methodFactory=function(v,m,p){var T=y(v,m,p);return function(){for(var _=["[mux]"],I=0;I<arguments.length;I++)_.push(arguments[I]);T.apply(void 0,_)}},E().setLevel(E().getLevel());var S=E();function w(){return(d().doNotTrack||d().navigator&&d().navigator.doNotTrack)==="1"}var L={now:function(){var v=d().performance,m=v&&v.timing,p=m&&m.navigationStart,T=typeof p=="number"&&typeof v.now=="function"?p+v.now():Date.now();return Math.round(T)}},F=function(v){return R(v)[0]},R=function(v){if(typeof v!="string"||v==="")return["localhost"];var m,p=(v.match(/^(([^:\/?#]+):)?(\/\/([^\/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/)||[])[4];return p&&(m=(p.match(/[^\.]+\.[^\.]+$/)||[])[0]),[p,m]},B={exists:function(){var v=d().performance;return(v&&v.timing)!==void 0},domContentLoadedEventEnd:function(){var v=d().performance,m=v&&v.timing;return m&&m.domContentLoadedEventEnd},navigationStart:function(){var v=d().performance,m=v&&v.timing;return m&&m.navigationStart}};function P(v,m,p){p=p===void 0?1:p,v[m]=v[m]||0,v[m]+=p}var $=["x-request-id","cf-ray","x-amz-cf-id","x-akamai-request-id"],K=["x-cdn","content-type"].concat($);function N(v){var m={};return(v=v||"").trim().split(/[\r\n]+/).forEach(function(p){if(p){var T=p.split(": "),_=T.shift();_&&(K.indexOf(_.toLowerCase())>=0||_.toLowerCase().indexOf("x-litix-")===0)&&(m[_]=T.join(": "))}}),m}function z(v){if(v){var m=$.find(function(p){return v[p]!==void 0});return m?v[m]:void 0}}var Y=function(v){var m={};for(var p in v){var T=v[p];T["DATA-ID"].search("io.litix.data.")!==-1&&(m[T["DATA-ID"].replace("io.litix.data.","")]=T.VALUE)}return m};function ge(v,m){var p=Object.keys(v);if(Object.getOwnPropertySymbols){var T=Object.getOwnPropertySymbols(v);m&&(T=T.filter(function(_){return Object.getOwnPropertyDescriptor(v,_).enumerable})),p.push.apply(p,T)}return p}function me(v){for(var m=1;m<arguments.length;m++){var p=arguments[m]!=null?arguments[m]:{};m%2?ge(Object(p),!0).forEach(function(T){Ee(v,T,p[T])}):Object.getOwnPropertyDescriptors?Object.defineProperties(v,Object.getOwnPropertyDescriptors(p)):ge(Object(p)).forEach(function(T){Object.defineProperty(v,T,Object.getOwnPropertyDescriptor(p,T))})}return v}function Ee(v,m,p){return m in v?Object.defineProperty(v,m,{value:p,enumerable:!0,configurable:!0,writable:!0}):v[m]=p,v}var De=function(v){if(!v)return{};var m=B.navigationStart(),p=v.loading,T=p?p.start:v.trequest,_=p?p.first:v.tfirst,I=p?p.end:v.tload;return{bytesLoaded:v.total,requestStart:Math.round(m+T),responseStart:Math.round(m+_),responseEnd:Math.round(m+I)}},Le=function(v){if(v&&typeof v.getAllResponseHeaders=="function")return N(v.getAllResponseHeaders())};function Z(v,m){var p=Object.keys(v);if(Object.getOwnPropertySymbols){var T=Object.getOwnPropertySymbols(v);m&&(T=T.filter(function(_){return Object.getOwnPropertyDescriptor(v,_).enumerable})),p.push.apply(p,T)}return p}function te(v){for(var m=1;m<arguments.length;m++){var p=arguments[m]!=null?arguments[m]:{};m%2?Z(Object(p),!0).forEach(function(T){ie(v,T,p[T])}):Object.getOwnPropertyDescriptors?Object.defineProperties(v,Object.getOwnPropertyDescriptors(p)):Z(Object(p)).forEach(function(T){Object.defineProperty(v,T,Object.getOwnPropertyDescriptor(p,T))})}return v}function ie(v,m,p){return m in v?Object.defineProperty(v,m,{value:p,enumerable:!0,configurable:!0,writable:!0}):v[m]=p,v}var _e=function(v,m){if(!v||!v.requestEndDate)return{};var p,T=F(v.url),_=v.url,I=v.bytesLoaded,x=new Date(v.requestStartDate).getTime(),C=new Date(v.firstByteDate).getTime(),U=new Date(v.requestEndDate).getTime(),G=isNaN(v.duration)?0:v.duration,D=typeof m.getMetricsFor=="function"?m.getMetricsFor(v.mediaType).HttpList:m.getDashMetrics().getHttpRequests(v.mediaType);return D.length>0&&(p=N(D[D.length-1]._responseHeaders||"")),{requestStart:x,requestResponseStart:C,requestResponseEnd:U,requestBytesLoaded:I,requestResponseHeaders:p,requestMediaDuration:G,requestHostname:T,requestUrl:_,requestId:p?z(p):void 0}},Ae=function(v,m){var p=m.getQualityFor(v),T=m.getCurrentTrackFor(v).bitrateList;return T?{currentLevel:p,renditionWidth:T[p].width||null,renditionHeight:T[p].height||null,renditionBitrate:T[p].bandwidth}:{}},Je=function(v){var m;return(m=v.match(/.*codecs\*?="(.*)"/))===null||m===void 0?void 0:m[1]},Pt=function(v){try{var m,p;return(m=v.getVersion)===null||m===void 0||(p=m.call(v))===null||p===void 0?void 0:p.split(".").map(function(T){return parseInt(T)})[0]}catch{return!1}};function Ot(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var kt=0,mi=function(){function v(){(function(_,I){if(!(_ instanceof I))throw new TypeError("Cannot call a class as a function")})(this,v)}var m,p,T;return m=v,p=[{key:"on",value:function(_,I,x){return I._eventEmitterGuid=I._eventEmitterGuid||++kt,this._listeners=this._listeners||{},this._listeners[_]=this._listeners[_]||[],x&&(I=I.bind(x)),this._listeners[_].push(I),I}},{key:"off",value:function(_,I){var x=this._listeners&&this._listeners[_];x&&x.forEach(function(C,U){C._eventEmitterGuid===I._eventEmitterGuid&&x.splice(U,1)})}},{key:"one",value:function(_,I,x){var C=this;I._eventEmitterGuid=I._eventEmitterGuid||++kt;var U=function G(){C.off(_,G),I.apply(x||this,arguments)};U._eventEmitterGuid=I._eventEmitterGuid,this.on(_,U)}},{key:"emit",value:function(_,I){var x=this;if(this._listeners){I=I||{};var C=this._listeners["before*"]||[],U=this._listeners[_]||[],G=this._listeners["after"+_]||[],D=function(ye,ne){(ye=ye.slice()).forEach(function(ue){ue.call(x,{type:_},ne)})};D(C,I),D(U,I),D(G,I)}}}],p&&Ot(m.prototype,p),T&&Ot(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}(),Nr=mi;function ma(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var al=function(){function v(_){var I=this;(function(x,C){if(!(x instanceof C))throw new TypeError("Cannot call a class as a function")})(this,v),this.pm=_,this._playbackHeartbeatInterval=null,this._playheadShouldBeProgressing=!1,_.on("playing",function(){I._playheadShouldBeProgressing=!0}),_.on("play",this._startPlaybackHeartbeatInterval.bind(this)),_.on("playing",this._startPlaybackHeartbeatInterval.bind(this)),_.on("adbreakstart",this._startPlaybackHeartbeatInterval.bind(this)),_.on("adplay",this._startPlaybackHeartbeatInterval.bind(this)),_.on("adplaying",this._startPlaybackHeartbeatInterval.bind(this)),_.on("seeking",this._startPlaybackHeartbeatInterval.bind(this)),_.on("devicewake",this._startPlaybackHeartbeatInterval.bind(this)),_.on("viewstart",this._startPlaybackHeartbeatInterval.bind(this)),_.on("rebufferstart",this._startPlaybackHeartbeatInterval.bind(this)),_.on("pause",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("ended",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("viewend",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("error",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("aderror",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("adpause",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("adended",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("adbreakend",this._stopPlaybackHeartbeatInterval.bind(this)),_.on("seeked",function(){_.data.player_is_paused?I._stopPlaybackHeartbeatInterval():I._startPlaybackHeartbeatInterval()}),_.on("timeupdate",function(){I._playbackHeartbeatInterval!==null&&_.emit("playbackheartbeat")}),_.on("devicesleep",function(x,C){I._playbackHeartbeatInterval!==null&&(d().clearInterval(I._playbackHeartbeatInterval),_.emit("playbackheartbeatend",{viewer_time:C.viewer_time}),I._playbackHeartbeatInterval=null)})}var m,p,T;return m=v,(p=[{key:"_startPlaybackHeartbeatInterval",value:function(){var _=this;this._playbackHeartbeatInterval===null&&(this.pm.emit("playbackheartbeat"),this._playbackHeartbeatInterval=d().setInterval(function(){_.pm.emit("playbackheartbeat")},this.pm.playbackHeartbeatTime))}},{key:"_stopPlaybackHeartbeatInterval",value:function(){this._playheadShouldBeProgressing=!1,this._playbackHeartbeatInterval!==null&&(d().clearInterval(this._playbackHeartbeatInterval),this.pm.emit("playbackheartbeatend"),this._playbackHeartbeatInterval=null)}}])&&ma(m.prototype,p),T&&ma(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}();function pa(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function Ur(v,m,p){return m&&pa(v.prototype,m),p&&pa(v,p),Object.defineProperty(v,"prototype",{writable:!1}),v}var ol=Ur(function v(m){var p=this;(function(T,_){if(!(T instanceof _))throw new TypeError("Cannot call a class as a function")})(this,v),m.on("viewinit",function(){p.viewErrored=!1}),m.on("error",function(T,_){try{var I=m.errorTranslator({player_error_code:_.player_error_code,player_error_message:_.player_error_message,player_error_context:_.player_error_context});I?(m.data.player_error_code=I.player_error_code||_.player_error_code,m.data.player_error_message=I.player_error_message||_.player_error_message,m.data.player_error_context=I.player_error_context||_.player_error_context,p.viewErrored=!0):(delete m.data.player_error_code,delete m.data.player_error_message,delete m.data.player_error_context)}catch(x){m.mux.log.warn("Exception in error translator callback.",x),p.viewErrored=!0}})});function ga(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var ll=function(){function v(_){(function(I,x){if(!(I instanceof x))throw new TypeError("Cannot call a class as a function")})(this,v),this.pm=_,this._watchTimeTrackerLastCheckedTime=null,_.on("playbackheartbeat",this._updateWatchTime.bind(this)),_.on("playbackheartbeatend",this._clearWatchTimeState.bind(this))}var m,p,T;return m=v,(p=[{key:"_updateWatchTime",value:function(_,I){var x=I.viewer_time;this._watchTimeTrackerLastCheckedTime===null&&(this._watchTimeTrackerLastCheckedTime=x),P(this.pm.data,"view_watch_time",x-this._watchTimeTrackerLastCheckedTime),this._watchTimeTrackerLastCheckedTime=x}},{key:"_clearWatchTimeState",value:function(_,I){this._updateWatchTime(_,I),this._watchTimeTrackerLastCheckedTime=null}}])&&ga(m.prototype,p),T&&ga(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}();function va(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var dl=function(){function v(_){var I=this;(function(U,G){if(!(U instanceof G))throw new TypeError("Cannot call a class as a function")})(this,v),this.pm=_,this._playbackTimeTrackerLastPlayheadPosition=-1,this._lastTime=L.now(),this._isAdPlaying=!1,this._callbackUpdatePlaybackTime=null;var x=this._startPlaybackTimeTracking.bind(this);_.on("playing",x),_.on("adplaying",x),_.on("seeked",x);var C=this._stopPlaybackTimeTracking.bind(this);_.on("playbackheartbeatend",C),_.on("seeking",C),_.on("adplaying",function(){I._isAdPlaying=!0}),_.on("adended",function(){I._isAdPlaying=!1}),_.on("adpause",function(){I._isAdPlaying=!1}),_.on("adbreakstart",function(){I._isAdPlaying=!1}),_.on("adbreakend",function(){I._isAdPlaying=!1}),_.on("adplay",function(){I._isAdPlaying=!1}),_.on("viewinit",function(){I._playbackTimeTrackerLastPlayheadPosition=-1,I._lastTime=L.now(),I._isAdPlaying=!1,I._callbackUpdatePlaybackTime=null})}var m,p,T;return m=v,(p=[{key:"_startPlaybackTimeTracking",value:function(){this._callbackUpdatePlaybackTime===null&&(this._callbackUpdatePlaybackTime=this._updatePlaybackTime.bind(this),this._playbackTimeTrackerLastPlayheadPosition=this.pm.data.player_playhead_time,this.pm.on("playbackheartbeat",this._callbackUpdatePlaybackTime))}},{key:"_stopPlaybackTimeTracking",value:function(){this._callbackUpdatePlaybackTime&&(this._updatePlaybackTime(),this.pm.off("playbackheartbeat",this._callbackUpdatePlaybackTime),this._callbackUpdatePlaybackTime=null,this._playbackTimeTrackerLastPlayheadPosition=-1)}},{key:"_updatePlaybackTime",value:function(){var _=this.pm.data.player_playhead_time,I=L.now(),x=-1;this._playbackTimeTrackerLastPlayheadPosition>=0&&_>this._playbackTimeTrackerLastPlayheadPosition?x=_-this._playbackTimeTrackerLastPlayheadPosition:this._isAdPlaying&&(x=I-this._lastTime),x>0&&x<=1e3&&P(this.pm.data,"view_content_playback_time",x),this._playbackTimeTrackerLastPlayheadPosition=_,this._lastTime=I}}])&&va(m.prototype,p),T&&va(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}();function Ea(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var cl=function(){function v(_){(function(x,C){if(!(x instanceof C))throw new TypeError("Cannot call a class as a function")})(this,v),this.pm=_;var I=this._updatePlayheadTime.bind(this);_.on("playbackheartbeat",I),_.on("playbackheartbeatend",I),_.on("timeupdate",I),_.on("destroy",function(){_.off("timeupdate",I)})}var m,p,T;return m=v,(p=[{key:"_updateMaxPlayheadPosition",value:function(){this.pm.data.view_max_playhead_position=this.pm.data.view_max_playhead_position===void 0?this.pm.data.player_playhead_time:Math.max(this.pm.data.view_max_playhead_position,this.pm.data.player_playhead_time)}},{key:"_updatePlayheadTime",value:function(_,I){var x=this,C=function(){x.pm.currentFragmentPDT&&x.pm.currentFragmentStart&&(x.pm.data.player_program_time=x.pm.currentFragmentPDT+x.pm.data.player_playhead_time-x.pm.currentFragmentStart)};if(I&&I.player_playhead_time)this.pm.data.player_playhead_time=I.player_playhead_time,C(),this._updateMaxPlayheadPosition();else if(this.pm.getPlayheadTime){var U=this.pm.getPlayheadTime();U!==void 0&&(this.pm.data.player_playhead_time=U,C(),this._updateMaxPlayheadPosition())}}}])&&Ea(m.prototype,p),T&&Ea(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}();function fh(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function je(v,m,p){return m&&fh(v.prototype,m),p&&fh(v,p),Object.defineProperty(v,"prototype",{writable:!1}),v}var Fr=3e5,mh=je(function v(m){if(function(I,x){if(!(I instanceof x))throw new TypeError("Cannot call a class as a function")}(this,v),!m.disableRebufferTracking){var p,T=function(I,x){_(x),p=void 0},_=function(I){if(p){var x=I.viewer_time-p;P(m.data,"view_rebuffer_duration",x),p=I.viewer_time,m.data.view_rebuffer_duration>Fr&&(m.emit("viewend"),m.send("viewend"),m.mux.log.warn("Ending view after rebuffering for longer than ".concat(Fr,"ms, future events will be ignored unless a programchange or videochange occurs.")))}m.data.view_watch_time>=0&&m.data.view_rebuffer_count>0&&(m.data.view_rebuffer_frequency=m.data.view_rebuffer_count/m.data.view_watch_time,m.data.view_rebuffer_percentage=m.data.view_rebuffer_duration/m.data.view_watch_time)};m.on("playbackheartbeat",function(I,x){return _(x)}),m.on("rebufferstart",function(I,x){p||(P(m.data,"view_rebuffer_count",1),p=x.viewer_time,m.one("rebufferend",T))}),m.on("viewinit",function(){p=void 0,m.off("rebufferend",T)})}});function ul(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var ph=function(){function v(_){var I=this;(function(x,C){if(!(x instanceof C))throw new TypeError("Cannot call a class as a function")})(this,v),this.pm=_,_.disableRebufferTracking||_.disablePlayheadRebufferTracking||(this._lastCheckedTime=null,this._lastPlayheadTime=null,this._lastPlayheadTimeUpdatedTime=null,_.on("playbackheartbeat",this._checkIfRebuffering.bind(this)),_.on("playbackheartbeatend",this._cleanupRebufferTracker.bind(this)),_.on("seeking",function(){I._cleanupRebufferTracker(null,{viewer_time:L.now()})}))}var m,p,T;return m=v,p=[{key:"_checkIfRebuffering",value:function(_,I){if(this.pm.seekingTracker.isSeeking||this.pm.adTracker.isAdBreak||!this.pm.playbackHeartbeat._playheadShouldBeProgressing)this._cleanupRebufferTracker(_,I);else if(this._lastCheckedTime!==null)if(this._lastPlayheadTime===this.pm.data.player_playhead_time){var x=I.viewer_time-this._lastPlayheadTimeUpdatedTime;typeof this.pm.sustainedRebufferThreshold=="number"&&x>=this.pm.sustainedRebufferThreshold&&(this._rebuffering||(this._rebuffering=!0,this.pm.emit("rebufferstart",{viewer_time:this._lastPlayheadTimeUpdatedTime}))),this._lastCheckedTime=I.viewer_time}else this._cleanupRebufferTracker(_,I,!0);else this._prepareRebufferTrackerState(I.viewer_time)}},{key:"_clearRebufferTrackerState",value:function(){this._lastCheckedTime=null,this._lastPlayheadTime=null,this._lastPlayheadTimeUpdatedTime=null}},{key:"_prepareRebufferTrackerState",value:function(_){this._lastCheckedTime=_,this._lastPlayheadTime=this.pm.data.player_playhead_time,this._lastPlayheadTimeUpdatedTime=_}},{key:"_cleanupRebufferTracker",value:function(_,I){var x=arguments.length>2&&arguments[2]!==void 0&&arguments[2];if(this._rebuffering)this._rebuffering=!1,this.pm.emit("rebufferend",{viewer_time:I.viewer_time});else{if(this._lastCheckedTime===null)return;var C=this.pm.data.player_playhead_time-this._lastPlayheadTime,U=I.viewer_time-this._lastPlayheadTimeUpdatedTime;typeof this.pm.minimumRebufferDuration=="number"&&C>0&&U-C>this.pm.minimumRebufferDuration&&(this._lastCheckedTime=null,this.pm.emit("rebufferstart",{viewer_time:this._lastPlayheadTimeUpdatedTime}),this.pm.emit("rebufferend",{viewer_time:this._lastPlayheadTimeUpdatedTime+U-C}))}x?this._prepareRebufferTrackerState(I.viewer_time):this._clearRebufferTrackerState()}}],p&&ul(m.prototype,p),T&&ul(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}(),gh=ph;function hl(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var vh=function(){function v(_){var I=this;(function(x,C){if(!(x instanceof C))throw new TypeError("Cannot call a class as a function")})(this,v),this.pm=_,_.on("viewinit",function(){var x=_.data,C=x.view_id;if(!x.view_program_changed){var U=function(G,D){var ye=D.viewer_time;G.type==="playing"&&_.data.view_time_to_first_frame===void 0?I.calculateTimeToFirstFrame(ye||L.now(),C):G.type!=="adplaying"||_.data.view_time_to_first_frame!==void 0&&!I._inPrerollPosition()||I.calculateTimeToFirstFrame(ye||L.now(),C)};_.one("playing",U),_.one("adplaying",U),_.one("viewend",function(){_.off("playing",U),_.off("adplaying",U)})}})}var m,p,T;return m=v,(p=[{key:"_inPrerollPosition",value:function(){return this.pm.data.view_content_playback_time===void 0||this.pm.data.view_content_playback_time<=1e3}},{key:"calculateTimeToFirstFrame",value:function(_,I){I===this.pm.data.view_id&&(this.pm.watchTimeTracker._updateWatchTime(null,{viewer_time:_}),this.pm.data.view_time_to_first_frame=this.pm.data.view_watch_time,(this.pm.data.player_autoplay_on||this.pm.data.video_is_autoplay)&&this.NAVIGATION_START&&(this.pm.data.view_aggregate_startup_time=this.pm.data.view_start+this.pm.data.view_watch_time-this.NAVIGATION_START))}}])&&hl(m.prototype,p),T&&hl(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}();function fl(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function zt(v,m,p){return m&&fl(v.prototype,m),p&&fl(v,p),Object.defineProperty(v,"prototype",{writable:!1}),v}var yt=zt(function v(m){var p=this;(function(T,_){if(!(T instanceof _))throw new TypeError("Cannot call a class as a function")})(this,v),m.on("viewinit",function(){p._lastPlayheadPosition=-1}),["pause","rebufferstart","seeking","error","adbreakstart","hb"].forEach(function(T){m.on(T,function(){if(p._lastPlayheadPosition>=0&&m.data.player_playhead_time>=0&&p._lastPlayerWidth>=0&&p._lastSourceWidth>0&&p._lastPlayerHeight>=0&&p._lastSourceHeight>0){var _=m.data.player_playhead_time-p._lastPlayheadPosition;if(_<0)return void(p._lastPlayheadPosition=-1);var I=Math.min(p._lastPlayerWidth/p._lastSourceWidth,p._lastPlayerHeight/p._lastSourceHeight),x=Math.max(0,I-1),C=Math.max(0,1-I);m.data.view_max_upscale_percentage=Math.max(m.data.view_max_upscale_percentage||0,x),m.data.view_max_downscale_percentage=Math.max(m.data.view_max_downscale_percentage||0,C),P(m.data,"view_total_content_playback_time",_),P(m.data,"view_total_upscaling",x*_),P(m.data,"view_total_downscaling",C*_)}p._lastPlayheadPosition=-1})}),["playing","hb"].forEach(function(T){m.on(T,function(){p._lastPlayheadPosition=m.data.player_playhead_time,p._lastPlayerWidth=m.data.player_width,p._lastPlayerHeight=m.data.player_height,p._lastSourceWidth=m.data.video_source_width,p._lastSourceHeight=m.data.video_source_height})})});function ba(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function ot(v,m,p){return m&&ba(v.prototype,m),p&&ba(v,p),Object.defineProperty(v,"prototype",{writable:!1}),v}var Xt=ot(function v(m){var p=this;(function(I,x){if(!(I instanceof x))throw new TypeError("Cannot call a class as a function")})(this,v),this.isSeeking=!1;var T=-1,_=function(){var I=L.now(),x=(m.data.viewer_time||I)-(T||I);P(m.data,"view_seek_duration",x),m.data.view_max_seek_time=Math.max(m.data.view_max_seek_time||0,x),p.isSeeking=!1,T=-1};m.on("seeking",function(I,x){Object.assign(m.data,x),p.isSeeking&&x.viewer_time-T<=2e3?T=x.viewer_time:(p.isSeeking&&_(),p.isSeeking=!0,T=x.viewer_time,P(m.data,"view_seek_count",1),m.send("seeking"))}),m.on("seeked",function(){_()}),m.on("viewend",function(){p.isSeeking&&(_(),m.send("seeked")),p.isSeeking=!1,T=-1})});function ii(v,m){return function(p){if(Array.isArray(p))return p}(v)||function(p,T){var _=p==null?null:typeof Symbol!="undefined"&&p[Symbol.iterator]||p["@@iterator"];if(_!=null){var I,x,C=[],U=!0,G=!1;try{for(_=_.call(p);!(U=(I=_.next()).done)&&(C.push(I.value),!T||C.length!==T);U=!0);}catch(D){G=!0,x=D}finally{try{U||_.return==null||_.return()}finally{if(G)throw x}}return C}}(v,m)||function(p,T){if(p){if(typeof p=="string")return nv(p,T);var _=Object.prototype.toString.call(p).slice(8,-1);return _==="Object"&&p.constructor&&(_=p.constructor.name),_==="Map"||_==="Set"?Array.from(p):_==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(_)?nv(p,T):void 0}}(v,m)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function nv(v,m){(m==null||m>v.length)&&(m=v.length);for(var p=0,T=new Array(m);p<m;p++)T[p]=v[p];return T}function av(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}var ov=function(v,m){v.push(m),v.sort(function(p,T){return p.viewer_time-T.viewer_time})},GA=["adbreakstart","adrequest","adresponse","adplay","adplaying","adpause","adended","adbreakend","aderror","adclicked","adskipped"],WA=function(){function v(_){var I=this;(function(C,U){if(!(C instanceof U))throw new TypeError("Cannot call a class as a function")})(this,v),this.pm=_,_.on("viewinit",function(){I.isAdBreak=!1,I._currentAdRequestNumber=0,I._currentAdResponseNumber=0,I._adRequests=[],I._adResponses=[],I._adHasPlayed=!1,I._wouldBeNewAdPlay=!0,I._prerollPlayTime=void 0}),GA.forEach(function(C){return _.on(C,I._updateAdData.bind(I))});var x=function(){I.isAdBreak=!1};_.on("adbreakstart",function(){I.isAdBreak=!0}),_.on("play",x),_.on("playing",x),_.on("viewend",x),_.on("adrequest",function(C,U){U=Object.assign({ad_request_id:"generatedAdRequestId"+I._currentAdRequestNumber++},U),ov(I._adRequests,U),P(_.data,"view_ad_request_count"),I.inPrerollPosition()&&(_.data.view_preroll_requested=!0,I._adHasPlayed||P(_.data,"view_preroll_request_count"))}),_.on("adresponse",function(C,U){U=Object.assign({ad_request_id:"generatedAdRequestId"+I._currentAdResponseNumber++},U),ov(I._adResponses,U);var G=I.findAdRequest(U.ad_request_id);G&&P(_.data,"view_ad_request_time",Math.max(0,U.viewer_time-G.viewer_time))}),_.on("adplay",function(C,U){I._adHasPlayed=!0,I._wouldBeNewAdPlay&&(I._wouldBeNewAdPlay=!1,P(_.data,"view_ad_played_count")),I.inPrerollPosition()&&!_.data.view_preroll_played&&(_.data.view_preroll_played=!0,I._adRequests.length>0&&(_.data.view_preroll_request_time=Math.max(0,U.viewer_time-I._adRequests[0].viewer_time)),_.data.view_start&&(_.data.view_startup_preroll_request_time=Math.max(0,U.viewer_time-_.data.view_start)),I._prerollPlayTime=U.viewer_time)}),_.on("adplaying",function(C,U){I.inPrerollPosition()&&_.data.view_preroll_load_time===void 0&&I._prerollPlayTime!==void 0&&(_.data.view_preroll_load_time=U.viewer_time-I._prerollPlayTime,_.data.view_startup_preroll_load_time=U.viewer_time-I._prerollPlayTime)}),_.on("adclicked",function(C,U){I._wouldBeNewAdPlay||P(_.data,"view_ad_clicked_count")}),_.on("adskipped",function(C,U){I._wouldBeNewAdPlay||P(_.data,"view_ad_skipped_count")}),_.on("adended",function(){I._wouldBeNewAdPlay=!0}),_.on("aderror",function(){I._wouldBeNewAdPlay=!0})}var m,p,T;return m=v,(p=[{key:"inPrerollPosition",value:function(){return this.pm.data.view_content_playback_time===void 0||this.pm.data.view_content_playback_time<=1e3}},{key:"findAdRequest",value:function(_){for(var I=0;I<this._adRequests.length;I++)if(this._adRequests[I].ad_request_id===_)return this._adRequests[I]}},{key:"_updateAdData",value:function(_,I){if(this.inPrerollPosition()){if(!this.pm.data.view_preroll_ad_tag_hostname&&I.ad_tag_url){var x=ii(R(I.ad_tag_url),2),C=x[0],U=x[1];this.pm.data.view_preroll_ad_tag_domain=U,this.pm.data.view_preroll_ad_tag_hostname=C}if(!this.pm.data.view_preroll_ad_asset_hostname&&I.ad_asset_url){var G=ii(R(I.ad_asset_url),2),D=G[0],ye=G[1];this.pm.data.view_preroll_ad_asset_domain=ye,this.pm.data.view_preroll_ad_asset_hostname=D}}this.pm.data.ad_asset_url=I==null?void 0:I.ad_asset_url,this.pm.data.ad_tag_url=I==null?void 0:I.ad_tag_url,this.pm.data.ad_creative_id=I==null?void 0:I.ad_creative_id,this.pm.data.ad_id=I==null?void 0:I.ad_id,this.pm.data.ad_universal_id=I==null?void 0:I.ad_universal_id}}])&&av(m.prototype,p),T&&av(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}();function lv(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function KA(v,m,p){return m&&lv(v.prototype,m),p&&lv(v,p),Object.defineProperty(v,"prototype",{writable:!1}),v}var VA=KA(function v(m){var p,T;(function(C,U){if(!(C instanceof U))throw new TypeError("Cannot call a class as a function")})(this,v);var _=function(){m.disableRebufferTracking||p&&(P(m.data,"view_waiting_rebuffer_duration",L.now()-p),p=!1,d().clearInterval(T))},I=!1,x=function(){I=!1,_()};m.on("waiting",function(){I&&(m.disableRebufferTracking||(P(m.data,"view_waiting_rebuffer_count",1),p=L.now(),T=d().setInterval(function(){if(p){var C=L.now();P(m.data,"view_waiting_rebuffer_duration",C-p),p=C}},250)))}),m.on("playing",function(){_(),I=!0}),m.on("pause",x),m.on("seeking",x)});function dv(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function qA(v,m,p){return m&&dv(v.prototype,m),p&&dv(v,p),Object.defineProperty(v,"prototype",{writable:!1}),v}var YA=qA(function v(m){var p=this;(function(I,x){if(!(I instanceof x))throw new TypeError("Cannot call a class as a function")})(this,v);var T=function(){p.lastWallClockTime=L.now(),m.on("before*",_)},_=function(I){var x=L.now(),C=p.lastWallClockTime;p.lastWallClockTime=x,x-C>3e4&&(m.emit("devicesleep",{viewer_time:C}),Object.assign(m.data,{viewer_time:C}),m.send("devicesleep"),m.emit("devicewake",{viewer_time:x}),Object.assign(m.data,{viewer_time:x}),m.send("devicewake"))};m.one("playbackheartbeat",T),m.on("playbackheartbeatend",function(){m.off("before*",_),m.one("playbackheartbeat",T)})}),cv=o(375),jA=o(655),uv=o.n(jA),hv="muxData",fv=function(){var v;try{v=cv.parse(uv().get(hv)||"")}catch{v={}}return v},mv=function(v){try{uv().set(hv,cv.stringify(v),{expires:365})}catch{}},zA=function(){var v=fv();return v.mux_viewer_id=v.mux_viewer_id||c(),v.msn=v.msn||Math.random(),mv(v),{mux_viewer_id:v.mux_viewer_id,mux_sample_number:v.msn}};function XA(v,m){var p=m.beaconCollectionDomain,T=m.beaconDomain;if(p)return"https://"+p;var _=T||"litix.io";return(v=v||"inferred").match(/^[a-z0-9]+$/)?"https://"+v+"."+_:"https://img.litix.io/a.gif"}var pv=function(){var v;switch(gv()){case"cellular":v="cellular";break;case"ethernet":v="wired";break;case"wifi":v="wifi";break;case void 0:break;default:v="other"}return v},gv=function(){var v=d().navigator,m=v&&(v.connection||v.mozConnection||v.webkitConnection);return m&&m.type};pv.getConnectionFromAPI=gv;var QA=pv,ZA=Ev({a:"env",b:"beacon",c:"custom",d:"ad",e:"event",f:"experiment",i:"internal",m:"mux",n:"response",p:"player",q:"request",r:"retry",s:"session",t:"timestamp",u:"viewer",v:"video",w:"page",x:"view",y:"sub"}),vv=Ev({ad:"ad",ag:"aggregate",ap:"api",al:"application",ar:"architecture",as:"asset",au:"autoplay",av:"average",bi:"bitrate",br:"break",bw:"browser",by:"bytes",ca:"cached",cb:"cancel",cc:"codec",cd:"code",cg:"category",ch:"changed",ck:"clicked",cl:"canceled",cn:"config",co:"count",ce:"counter",cp:"complete",cr:"creative",ct:"content",cu:"current",cx:"connection",cz:"context",dg:"downscaling",dm:"domain",dn:"cdn",do:"downscale",dr:"drm",dp:"dropped",du:"duration",dv:"device",ec:"encoding",ed:"edge",en:"end",eg:"engine",em:"embed",er:"error",es:"errorcode",et:"errortext",ee:"event",ev:"events",ex:"expires",ep:"experiments",fa:"failed",fi:"first",fm:"family",ft:"format",fp:"fps",fq:"frequency",fr:"frame",fs:"fullscreen",ha:"has",hb:"holdback",he:"headers",ho:"host",hn:"hostname",ht:"height",id:"id",ii:"init",in:"instance",ip:"ip",is:"is",ke:"key",la:"language",lb:"labeled",le:"level",li:"live",ld:"loaded",lo:"load",ls:"lists",lt:"latency",ma:"max",md:"media",me:"message",mf:"manifest",mi:"mime",ml:"midroll",mm:"min",mn:"manufacturer",mo:"model",mx:"mux",ne:"newest",nm:"name",no:"number",on:"on",os:"os",pa:"paused",pb:"playback",pd:"producer",pe:"percentage",pf:"played",pg:"program",ph:"playhead",pi:"plugin",pl:"preroll",pn:"playing",po:"poster",pr:"preload",ps:"position",pt:"part",py:"property",ra:"rate",rd:"requested",re:"rebuffer",rf:"rendition",rm:"remote",ro:"ratio",rp:"response",rq:"request",rs:"requests",sa:"sample",sd:"skipped",se:"session",sk:"seek",sm:"stream",so:"source",sq:"sequence",sr:"series",st:"start",su:"startup",sv:"server",sw:"software",ta:"tag",tc:"tech",te:"text",tg:"target",th:"throughput",ti:"time",tl:"total",to:"to",tt:"title",ty:"type",ug:"upscaling",un:"universal",up:"upscale",ur:"url",us:"user",va:"variant",vd:"viewed",vi:"video",ve:"version",vw:"view",vr:"viewer",wd:"width",wa:"watch",wt:"waiting"});function Ev(v){var m={};for(var p in v)v.hasOwnProperty(p)&&(m[v[p]]=p);return m}function Eh(v){var m={},p={};return Object.keys(v).forEach(function(T){var _=!1;if(v.hasOwnProperty(T)&&v[T]!==void 0){var I=T.split("_"),x=I[0],C=ZA[x];C||(S.info("Data key word `"+I[0]+"` not expected in "+T),C=x+"_"),I.splice(1).forEach(function(U){U==="url"&&(_=!0),vv[U]?C+=vv[U]:Number(U)&&Math.floor(Number(U))===Number(U)?C+=U:(S.info("Data key word `"+U+"` not expected in "+T),C+="_"+U+"_")}),_?p[C]=v[T]:m[C]=v[T]}}),Object.assign(m,p)}var JA={maxBeaconSize:300,maxQueueLength:3600,baseTimeBetweenBeacons:1e4,maxPayloadKBSize:500},e1=["hb","requestcompleted","requestfailed","requestcanceled"],t1="https://img.litix.io",Tr=function(v){var m=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this._beaconUrl=v||t1,this._eventQueue=[],this._postInFlight=!1,this._failureCount=0,this._sendTimeout=!1,this._options=Object.assign({},JA,m)};Tr.prototype.queueEvent=function(v,m){var p=Object.assign({},m);return(this._eventQueue.length<=this._options.maxQueueLength||v==="eventrateexceeded")&&(this._eventQueue.push(p),this._sendTimeout||this._startBeaconSending(),this._eventQueue.length<=this._options.maxQueueLength)},Tr.prototype.flushEvents=function(){var v=arguments.length>0&&arguments[0]!==void 0&&arguments[0];v&&this._eventQueue.length===1?this._eventQueue.pop():(this._eventQueue.length&&this._sendBeaconQueue(),this._startBeaconSending())},Tr.prototype.destroy=function(){var v=arguments.length>0&&arguments[0]!==void 0&&arguments[0];this.destroyed=!0,v?this._clearBeaconQueue():this.flushEvents(),d().clearTimeout(this._sendTimeout)},Tr.prototype._clearBeaconQueue=function(){var v=this._eventQueue.length>this._options.maxBeaconSize?this._eventQueue.length-this._options.maxBeaconSize:0,m=this._eventQueue.slice(v);v>0&&Object.assign(m[m.length-1],Eh({mux_view_message:"event queue truncated"}));var p=this._createPayload(m);bv(this._beaconUrl,p,!0,function(){})},Tr.prototype._sendBeaconQueue=function(){var v=this;if(!this._postInFlight){var m=this._eventQueue.slice(0,this._options.maxBeaconSize);this._eventQueue=this._eventQueue.slice(this._options.maxBeaconSize),this._postInFlight=!0;var p=this._createPayload(m),T=L.now();bv(this._beaconUrl,p,!1,function(_,I){I?(v._eventQueue=m.concat(v._eventQueue),v._failureCount+=1,S.info("Error sending beacon: "+I)):v._failureCount=0,v._roundTripTime=L.now()-T,v._postInFlight=!1})}},Tr.prototype._getNextBeaconTime=function(){if(!this._failureCount)return this._options.baseTimeBetweenBeacons;var v=Math.pow(2,this._failureCount-1);return(1+(v*=Math.random()))*this._options.baseTimeBetweenBeacons},Tr.prototype._startBeaconSending=function(){var v=this;d().clearTimeout(this._sendTimeout),this.destroyed||(this._sendTimeout=d().setTimeout(function(){v._eventQueue.length&&v._sendBeaconQueue(),v._startBeaconSending()},this._getNextBeaconTime()))},Tr.prototype._createPayload=function(v){var m,p,T,_=this,I={transmission_timestamp:Math.round(L.now())};this._roundTripTime&&(I.rtt_ms=Math.round(this._roundTripTime));var x=function(){m=JSON.stringify({metadata:I,events:p||v}),T=m.length/1024},C=function(){return T<=_._options.maxPayloadKBSize};return x(),C()||(S.info("Payload size is too big ("+T+" kb). Removing unnecessary events."),p=v.filter(function(U){return e1.indexOf(U.e)===-1}),x()),C()||(S.info("Payload size still too big ("+T+" kb). Cropping fields.."),p.forEach(function(U){for(var G in U){var D=U[G];typeof D=="string"&&D.length>51200&&(U[G]=D.substring(0,51200))}}),x()),m};var i1=function(v){return v.length<=57344},bv=function(v,m,p,T){if(p&&navigator&&navigator.sendBeacon&&navigator.sendBeacon(v,m))T();else if(d().fetch)d().fetch(v,{method:"POST",body:m,headers:{"Content-Type":"text/plain"},keepalive:i1(m)}).then(function(I){return T(null,I.ok?null:"Error")}).catch(function(I){return T(null,I)});else{if(d().XMLHttpRequest){var _=new(d()).XMLHttpRequest;return _.onreadystatechange=function(){if(_.readyState===4)return T(null,_.status!==200?"error":void 0)},_.open("POST",v),_.setRequestHeader("Content-Type","text/plain"),void _.send(m)}T()}},r1=Tr;function s1(v,m){return function(p){if(Array.isArray(p))return p}(v)||function(p,T){var _=p==null?null:typeof Symbol!="undefined"&&p[Symbol.iterator]||p["@@iterator"];if(_!=null){var I,x,C=[],U=!0,G=!1;try{for(_=_.call(p);!(U=(I=_.next()).done)&&(C.push(I.value),!T||C.length!==T);U=!0);}catch(D){G=!0,x=D}finally{try{U||_.return==null||_.return()}finally{if(G)throw x}}return C}}(v,m)||function(p,T){if(p){if(typeof p=="string")return yv(p,T);var _=Object.prototype.toString.call(p).slice(8,-1);return _==="Object"&&p.constructor&&(_=p.constructor.name),_==="Map"||_==="Set"?Array.from(p):_==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(_)?yv(p,T):void 0}}(v,m)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
3
3
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function yv(v,m){(m==null||m>v.length)&&(m=v.length);for(var p=0,T=new Array(m);p<m;p++)T[p]=v[p];return T}function Tv(v,m){var p=Object.keys(v);if(Object.getOwnPropertySymbols){var T=Object.getOwnPropertySymbols(v);m&&(T=T.filter(function(_){return Object.getOwnPropertyDescriptor(v,_).enumerable})),p.push.apply(p,T)}return p}function vn(v){for(var m=1;m<arguments.length;m++){var p=arguments[m]!=null?arguments[m]:{};m%2?Tv(Object(p),!0).forEach(function(T){ml(v,T,p[T])}):Object.getOwnPropertyDescriptors?Object.defineProperties(v,Object.getOwnPropertyDescriptors(p)):Tv(Object(p)).forEach(function(T){Object.defineProperty(v,T,Object.getOwnPropertyDescriptor(p,T))})}return v}function ya(v){return ya=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(m){return typeof m}:function(m){return m&&typeof Symbol=="function"&&m.constructor===Symbol&&m!==Symbol.prototype?"symbol":typeof m},ya(v)}function n1(v,m){if(!(v instanceof m))throw new TypeError("Cannot call a class as a function")}function _v(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function ml(v,m,p){return m in v?Object.defineProperty(v,m,{value:p,enumerable:!0,configurable:!0,writable:!0}):v[m]=p,v}var a1=["env_key","view_id","view_sequence_number","player_sequence_number","beacon_domain","player_playhead_time","viewer_time","mux_api_version","event","video_id","player_instance_id"],o1=["adplay","adplaying","adpause","adfirstquartile","admidpoint","adthirdquartile","adended","adresponse","adrequest"],l1=["ad_id","ad_creative_id","ad_universal_id"],d1=["viewstart","error","ended","viewend"],c1=function(){function v(_,I){var x,C,U,G,D,ye,ne,ue,Se,le,Te,bt,Ht,Qt,nt,Br=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};n1(this,v),ml(this,"previousBeaconData",null),ml(this,"lastEventTime",0),ml(this,"rateLimited",!1),this.mux=_,this.envKey=I,this.options=Br,this.eventQueue=new r1(XA(this.envKey,this.options)),this.sampleRate=(x=this.options.sampleRate)!==null&&x!==void 0?x:1,this.disableCookies=(C=this.options.disableCookies)!==null&&C!==void 0&&C,this.respectDoNotTrack=(U=this.options.respectDoNotTrack)!==null&&U!==void 0&&U,this.previousBeaconData=null,this.lastEventTime=0,this.rateLimited=!1,this.pageLevelData={mux_api_version:this.mux.API_VERSION,mux_embed:this.mux.NAME,mux_embed_version:this.mux.VERSION,viewer_application_name:(G=this.options.platform)===null||G===void 0?void 0:G.name,viewer_application_version:(D=this.options.platform)===null||D===void 0?void 0:D.version,viewer_application_engine:(ye=this.options.platform)===null||ye===void 0?void 0:ye.layout,viewer_device_name:(ne=this.options.platform)===null||ne===void 0?void 0:ne.product,viewer_device_category:"",viewer_device_manufacturer:(ue=this.options.platform)===null||ue===void 0?void 0:ue.manufacturer,viewer_os_family:(Se=this.options.platform)===null||Se===void 0||(le=Se.os)===null||le===void 0?void 0:le.family,viewer_os_architecture:(Te=this.options.platform)===null||Te===void 0||(bt=Te.os)===null||bt===void 0?void 0:bt.architecture,viewer_os_version:(Ht=this.options.platform)===null||Ht===void 0||(Qt=Ht.os)===null||Qt===void 0?void 0:Qt.version,viewer_connection_type:QA(),page_url:d()===null||d()===void 0||(nt=d().location)===null||nt===void 0?void 0:nt.href},this.viewerData=this.disableCookies?{}:zA()}var m,p,T;return m=v,(p=[{key:"send",value:function(_,I){var x;if(_&&I!=null&&I.view_id){if(this.respectDoNotTrack&&w())return S.info("Not sending `"+_+"` because Do Not Track is enabled");if(!I||ya(I)!=="object")return S.error("A data object was expected in send() but was not provided");var C,U,G=this.disableCookies?{}:(C=fv(),U=L.now(),C.session_start&&(C.sst=C.session_start,delete C.session_start),C.session_id&&(C.sid=C.session_id,delete C.session_id),C.session_expires&&(C.sex=C.session_expires,delete C.session_expires),(!C.sex||C.sex<U)&&(C.sid=c(),C.sst=U),C.sex=U+15e5,mv(C),{session_id:C.sid,session_start:C.sst,session_expires:C.sex}),D=vn(vn(vn(vn(vn({},this.pageLevelData),I),G),this.viewerData),{},{event:_,env_key:this.envKey});D.user_id&&(D.viewer_user_id=D.user_id,delete D.user_id);var ye=((x=D.mux_sample_number)!==null&&x!==void 0?x:0)>=this.sampleRate,ne=Eh(this._deduplicateBeaconData(_,D));if(this.lastEventTime=this.mux.utils.now(),ye)return S.info("Not sending event due to sample rate restriction",_,D,ne);if(this.envKey||S.info("Missing environment key (envKey) - beacons will be dropped if the video source is not a valid mux video URL",_,D,ne),!this.rateLimited){if(S.info("Sending event",_,D,ne),this.rateLimited=!this.eventQueue.queueEvent(_,ne),this.mux.WINDOW_UNLOADING&&_==="viewend")this.eventQueue.destroy(!0);else if(this.mux.WINDOW_HIDDEN&&_==="hb"?this.eventQueue.flushEvents(!0):d1.indexOf(_)>=0&&this.eventQueue.flushEvents(),this.rateLimited)return D.event="eventrateexceeded",ne=Eh(D),this.eventQueue.queueEvent(D.event,ne),S.error("Beaconing disabled due to rate limit.")}}}},{key:"destroy",value:function(){this.eventQueue.destroy(!1)}},{key:"_deduplicateBeaconData",value:function(_,I){var x=this,C={},U=I.view_id;if(U==="-1"||_==="viewstart"||_==="viewend"||!this.previousBeaconData||this.mux.utils.now()-this.lastEventTime>=6e5)C=vn({},I),U&&(this.previousBeaconData=C),U&&_==="viewend"&&(this.previousBeaconData=null);else{var G=_.indexOf("request")===0;Object.entries(I).forEach(function(D){var ye=s1(D,2),ne=ye[0],ue=ye[1];x.previousBeaconData&&(ue!==x.previousBeaconData[ne]||a1.indexOf(ne)>-1||x.objectHasChanged(G,ne,ue,x.previousBeaconData[ne])||x.eventRequiresKey(_,ne))&&(C[ne]=ue,x.previousBeaconData[ne]=ue)})}return C}},{key:"objectHasChanged",value:function(_,I,x,C){return!(!_||I.indexOf("request_")!==0||I!=="request_response_headers"&&ya(x)==="object"&&ya(C)==="object"&&Object.keys(x||{}).length===Object.keys(C||{}).length)}},{key:"eventRequiresKey",value:function(_,I){return _==="renditionchange"&&I.indexOf("video_source_")===0||!(!l1.includes(I)||!o1.includes(_))}}])&&_v(m.prototype,p),T&&_v(m,T),Object.defineProperty(m,"prototype",{writable:!1}),v}();function Av(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function u1(v,m,p){return m&&Av(v.prototype,m),p&&Av(v,p),Object.defineProperty(v,"prototype",{writable:!1}),v}var h1=u1(function v(m){(function(G,D){if(!(G instanceof D))throw new TypeError("Cannot call a class as a function")})(this,v);var p=0,T=0,_=0,I=0,x=0,C=0,U=0;m.on("requestcompleted",function(G,D){var ye,ne,ue=D.request_start,Se=D.request_response_start,le=D.request_response_end,Te=D.request_bytes_loaded;if(I++,Se?(ye=Se-(ue!=null?ue:0),ne=(le!=null?le:0)-Se):ne=(le!=null?le:0)-(ue!=null?ue:0),ne>0&&Te&&Te>0){var bt=Te/ne*8e3;x++,T+=Te,_+=ne,m.data.view_min_request_throughput=Math.min(m.data.view_min_request_throughput||1/0,bt),m.data.view_average_request_throughput=T/_*8e3,m.data.view_request_count=I,ye>0&&(p+=ye,m.data.view_max_request_latency=Math.max(m.data.view_max_request_latency||0,ye),m.data.view_average_request_latency=p/x)}}),m.on("requestfailed",function(G,D){I++,C++,m.data.view_request_count=I,m.data.view_request_failed_count=C}),m.on("requestcanceled",function(G,D){I++,U++,m.data.view_request_count=I,m.data.view_request_canceled_count=U})});function Sv(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function f1(v,m,p){return m&&Sv(v.prototype,m),p&&Sv(v,p),Object.defineProperty(v,"prototype",{writable:!1}),v}var m1=f1(function v(m){var p=this;(function(T,_){if(!(T instanceof _))throw new TypeError("Cannot call a class as a function")})(this,v),m.on("before*",function(T,_){var I=_.viewer_time,x=L.now(),C=p._lastEventTime;if(p._lastEventTime=x,C&&x-C>36e5){var U=Object.keys(m.data).reduce(function(G,D){return D.indexOf("video_")===0?Object.assign(G,function(ye,ne,ue){return ne in ye?Object.defineProperty(ye,ne,{value:ue,enumerable:!0,configurable:!0,writable:!0}):ye[ne]=ue,ye}({},D,m.data[D])):G},{});m.mux.log.info("Received event after at least an hour inactivity, creating a new view"),m.emit("viewinit",Object.assign({viewer_time:I},U)),m.playbackHeartbeat._playheadShouldBeProgressing&&T.type!=="play"&&T.type!=="adbreakstart"&&(m.emit("play",{viewer_time:I}),T.type!=="playing"&&m.emit("playing",{viewer_time:I}))}})});function bh(v){return bh=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(m){return typeof m}:function(m){return m&&typeof Symbol=="function"&&m.constructor===Symbol&&m!==Symbol.prototype?"symbol":typeof m},bh(v)}function p1(v,m){return function(p){if(Array.isArray(p))return p}(v)||function(p,T){var _=p==null?null:typeof Symbol!="undefined"&&p[Symbol.iterator]||p["@@iterator"];if(_!=null){var I,x,C=[],U=!0,G=!1;try{for(_=_.call(p);!(U=(I=_.next()).done)&&(C.push(I.value),!T||C.length!==T);U=!0);}catch(D){G=!0,x=D}finally{try{U||_.return==null||_.return()}finally{if(G)throw x}}return C}}(v,m)||function(p,T){if(p){if(typeof p=="string")return xv(p,T);var _=Object.prototype.toString.call(p).slice(8,-1);return _==="Object"&&p.constructor&&(_=p.constructor.name),_==="Map"||_==="Set"?Array.from(p):_==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(_)?xv(p,T):void 0}}(v,m)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
4
4
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function xv(v,m){(m==null||m>v.length)&&(m=v.length);for(var p=0,T=new Array(m);p<m;p++)T[p]=v[p];return T}function Iv(v,m){for(var p=0;p<m.length;p++){var T=m[p];T.enumerable=T.enumerable||!1,T.configurable=!0,"value"in T&&(T.writable=!0),Object.defineProperty(v,T.key,T)}}function yh(v,m){return yh=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(p,T){return p.__proto__=T,p},yh(v,m)}function g1(v){var m=function(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}();return function(){var p,T=pl(v);if(m){var _=pl(this).constructor;p=Reflect.construct(T,arguments,_)}else p=T.apply(this,arguments);return v1(this,p)}}function v1(v,m){if(m&&(bh(m)==="object"||typeof m=="function"))return m;if(m!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Lt(v)}function Lt(v){if(v===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return v}function pl(v){return pl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(m){return m.__proto__||Object.getPrototypeOf(m)},pl(v)}var E1=["viewstart","ended","loadstart","pause","play","playing","ratechange","waiting","adplay","adpause","adended","aderror","adplaying","adrequest","adresponse","adbreakstart","adbreakend","adfirstquartile","admidpoint","adthirdquartile","rebufferstart","rebufferend","seeked","error","hb","requestcompleted","requestfailed","requestcanceled","renditionchange"],b1=function(v){(function(x,C){if(typeof C!="function"&&C!==null)throw new TypeError("Super expression must either be null or a function");x.prototype=Object.create(C&&C.prototype,{constructor:{value:x,writable:!0,configurable:!0}}),Object.defineProperty(x,"prototype",{writable:!1}),C&&yh(x,C)})(I,v);var m,p,T,_=g1(I);function I(x,C,U){var G,D;(function(le,Te){if(!(le instanceof Te))throw new TypeError("Cannot call a class as a function")})(this,I),(D=_.call(this)).DOM_CONTENT_LOADED_EVENT_END=B.domContentLoadedEventEnd(),D.NAVIGATION_START=B.navigationStart(),D.mux=x,D.id=C,(G=U)!==null&&G!==void 0&&G.beaconDomain&&D.mux.log.warn("The `beaconDomain` setting has been deprecated in favor of `beaconCollectionDomain`. Please change your integration to use `beaconCollectionDomain` instead of `beaconDomain`."),(U=Object.assign({debug:!1,minimumRebufferDuration:250,sustainedRebufferThreshold:1e3,playbackHeartbeatTime:25,beaconDomain:"litix.io",sampleRate:1,disableCookies:!1,respectDoNotTrack:!1,disableRebufferTracking:!1,disablePlayheadRebufferTracking:!1,errorTranslator:function(le){return le}},U)).data=U.data||{},U.data.property_key&&(U.data.env_key=U.data.property_key,delete U.data.property_key),S.setLevel(U.debug?"debug":"warn"),D.getPlayheadTime=U.getPlayheadTime,D.getStateData=U.getStateData||function(){return{}},D.getAdData=U.getAdData||function(){},D.minimumRebufferDuration=U.minimumRebufferDuration,D.sustainedRebufferThreshold=U.sustainedRebufferThreshold,D.playbackHeartbeatTime=U.playbackHeartbeatTime,D.disableRebufferTracking=U.disableRebufferTracking,D.disableRebufferTracking&&D.mux.log.warn("Disabling rebuffer tracking. This should only be used in specific circumstances as a last resort when your player is known to unreliably track rebuffering."),D.disablePlayheadRebufferTracking=U.disablePlayheadRebufferTracking,D.errorTranslator=U.errorTranslator,D.playbackEventDispatcher=new c1(x,U.data.env_key,U),D.data={player_instance_id:c(),mux_sample_rate:U.sampleRate,beacon_domain:U.beaconCollectionDomain||U.beaconDomain},D.data.view_sequence_number=1,D.data.player_sequence_number=1,D.oldEmit=D.emit,D.emit=function(le,Te){Te=Object.assign({viewer_time:this.mux.utils.now()},Te),this.oldEmit(le,Te)};var ye=function(){this.data.view_start===void 0&&(this.data.view_start=this.mux.utils.now(),this.emit("viewstart"))}.bind(Lt(D));D.on("viewinit",function(le,Te){this._resetVideoData(),this._resetViewData(),this._resetErrorData(),this._updateStateData(),Object.assign(this.data,Te),this._initializeViewData(),this.one("play",ye),this.one("adbreakstart",ye)});var ne=function(le){this.emit("viewend"),this.send("viewend"),this.emit("viewinit",le)}.bind(Lt(D));if(D.on("videochange",function(le,Te){ne(Te)}),D.on("programchange",function(le,Te){this.data.player_is_paused&&this.mux.log.warn("The `programchange` event is intended to be used when the content changes mid playback without the video source changing, however the video is not currently playing. If the video source is changing please use the videochange event otherwise you will lose startup time information."),ne(Object.assign(Te,{view_program_changed:!0})),ye(),this.emit("play"),this.emit("playing")}),D.on("fragmentchange",function(le,Te){this.currentFragmentPDT=Te.currentFragmentPDT,this.currentFragmentStart=Te.currentFragmentStart}),D.on("destroy",D.destroy),typeof window!="undefined"&&typeof window.addEventListener=="function"&&typeof window.removeEventListener=="function"){var ue=function(){var le=D.data.view_start!==void 0;D.mux.WINDOW_HIDDEN=document.visibilityState==="hidden",le&&D.mux.WINDOW_HIDDEN&&(D.data.player_is_paused||D.emit("hb"))};window.addEventListener("visibilitychange",ue,!1);var Se=function(le){le.persisted||D.destroy()};window.addEventListener("pagehide",Se,!1),D.on("destroy",function(){window.removeEventListener("visibilitychange",ue),window.removeEventListener("pagehide",Se)})}return D.on("playerready",function(le,Te){Object.assign(this.data,Te)}),E1.forEach(function(le){D.on(le,function(Te,bt){le.indexOf("ad")!==0&&this._updateStateData(),Object.assign(this.data,bt),this._sanitizeData()}),D.on("after"+le,function(){(le!=="error"||this.errorTracker.viewErrored)&&this.send(le)})}),D.on("viewend",function(le,Te){Object.assign(D.data,Te)}),D.one("playerready",function(le){var Te=this.mux.utils.now();this.data.player_init_time&&(this.data.player_startup_time=Te-this.data.player_init_time),!this.mux.PLAYER_TRACKED&&this.NAVIGATION_START&&(this.mux.PLAYER_TRACKED=!0,(this.data.player_init_time||this.DOM_CONTENT_LOADED_EVENT_END)&&(this.data.page_load_time=Math.min(this.data.player_init_time||1/0,this.DOM_CONTENT_LOADED_EVENT_END||1/0)-this.NAVIGATION_START)),this.send("playerready"),delete this.data.player_startup_time,delete this.data.page_load_time}),D.longResumeTracker=new m1(Lt(D)),D.errorTracker=new ol(Lt(D)),new YA(Lt(D)),D.seekingTracker=new Xt(Lt(D)),D.playheadTime=new cl(Lt(D)),D.playbackHeartbeat=new al(Lt(D)),new yt(Lt(D)),D.watchTimeTracker=new ll(Lt(D)),new dl(Lt(D)),D.adTracker=new WA(Lt(D)),new gh(Lt(D)),new mh(Lt(D)),new vh(Lt(D)),new VA(Lt(D)),new h1(Lt(D)),U.hlsjs&&D.addHLSJS(U),U.dashjs&&D.addDashJS(U),D.emit("viewinit",U.data),D}return m=I,p=[{key:"destroy",value:function(){this._destroyed||(this._destroyed=!0,this.data.view_start!==void 0&&(this.emit("viewend"),this.send("viewend")),this.playbackEventDispatcher.destroy(),this.removeHLSJS(),this.removeDashJS(),window.clearTimeout(this._heartBeatTimeout))}},{key:"send",value:function(x){if(this.data.view_id){var C=Object.assign({},this.data);if(C.video_source_is_live===void 0&&(C.player_source_duration===1/0||C.video_source_duration===1/0?C.video_source_is_live=!0:(C.player_source_duration>0||C.video_source_duration>0)&&(C.video_source_is_live=!1)),C.video_source_is_live||["player_program_time","player_manifest_newest_program_time","player_live_edge_program_time","player_program_time","video_holdback","video_part_holdback","video_target_duration","video_part_target_duration"].forEach(function(ye){C[ye]=void 0}),C.video_source_url=C.video_source_url||C.player_source_url,C.video_source_url){var U=p1(R(C.video_source_url),2),G=U[0],D=U[1];C.video_source_domain=D,C.video_source_hostname=G}delete C.ad_request_id,this.playbackEventDispatcher.send(x,C),this.data.view_sequence_number++,this.data.player_sequence_number++,this._restartHeartBeat(),x==="viewend"&&delete this.data.view_id}}},{key:"_updateStateData",value:function(){Object.assign(this.data,this.getStateData()),this.playheadTime._updatePlayheadTime(),this._sanitizeData()}},{key:"_sanitizeData",value:function(){var x=this;["player_width","player_height","video_source_width","video_source_height","player_playhead_time","video_source_bitrate"].forEach(function(C){var U=parseInt(x.data[C],10);x.data[C]=isNaN(U)?void 0:U}),["player_source_url","video_source_url"].forEach(function(C){if(x.data[C]){var U=x.data[C].toLowerCase();U.indexOf("data:")!==0&&U.indexOf("blob:")!==0||(x.data[C]="MSE style URL")}})}},{key:"_resetVideoData",value:function(x,C){var U=this;Object.keys(this.data).forEach(function(G){G.indexOf("video_")===0&&delete U.data[G]})}},{key:"_resetViewData",value:function(){var x=this;Object.keys(this.data).forEach(function(C){C.indexOf("view_")===0&&delete x.data[C]}),this.data.view_sequence_number=1}},{key:"_resetErrorData",value:function(x,C){delete this.data.player_error_code,delete this.data.player_error_message}},{key:"_initializeViewData",value:function(){var x=this,C=this.data.view_id=c(),U=function(){C===x.data.view_id&&P(x.data,"player_view_count",1)};this.data.player_is_paused?this.one("play",U):U()}},{key:"_restartHeartBeat",value:function(){var x=this;window.clearTimeout(this._heartBeatTimeout),this.errorTracker.viewErrored||(this._heartBeatTimeout=window.setTimeout(function(){x.data.player_is_paused||x.emit("hb")},1e4))}},{key:"addHLSJS",value:function(x){x.hlsjs?this.hlsjs?this.mux.log.warn("An instance of HLS.js is already being monitored for this player."):(this.hlsjs=x.hlsjs,function(C,U,G){var D=arguments.length>4?arguments[4]:void 0,ye=C.log,ne=C.utils.secondsToMs,ue=function(mt){var ae,J=parseInt(D.version);return J===1&&mt.programDateTime!==null&&(ae=mt.programDateTime),J===0&&mt.pdt!==null&&(ae=mt.pdt),ae};if(B.exists()){var Se=function(mt,ae){return C.emit(U,mt,ae)},le=function(mt,ae){var J=ae.levels,Q=ae.audioTracks,pe=ae.url,be=ae.stats,xe=ae.networkDetails,Ge=ae.sessionData,pt={},lt={};J.forEach(function(gi,ps){pt[ps]={width:gi.width,height:gi.height,bitrate:gi.bitrate,attrs:gi.attrs}}),Q.forEach(function(gi,ps){lt[ps]={name:gi.name,language:gi.lang,bitrate:gi.bitrate}});var Oe=De(be),Rt=Oe.bytesLoaded,$r=Oe.requestStart,Sa=Oe.responseStart,xa=Oe.responseEnd;Se("requestcompleted",me(me({},Y(Ge)),{},{request_event_type:mt,request_bytes_loaded:Rt,request_start:$r,request_response_start:Sa,request_response_end:xa,request_type:"manifest",request_hostname:F(pe),request_response_headers:Le(xe),request_rendition_lists:{media:pt,audio:lt,video:{}}}))};G.on(D.Events.MANIFEST_LOADED,le);var Te=function(mt,ae){var J=ae.details,Q=ae.level,pe=ae.networkDetails,be=ae.stats,xe=De(be),Ge=xe.bytesLoaded,pt=xe.requestStart,lt=xe.responseStart,Oe=xe.responseEnd,Rt=J.fragments[J.fragments.length-1],$r=ue(Rt)+ne(Rt.duration);Se("requestcompleted",{request_event_type:mt,request_bytes_loaded:Ge,request_start:pt,request_response_start:lt,request_response_end:Oe,request_current_level:Q,request_type:"manifest",request_hostname:F(J.url),request_response_headers:Le(pe),video_holdback:J.holdBack&&ne(J.holdBack),video_part_holdback:J.partHoldBack&&ne(J.partHoldBack),video_part_target_duration:J.partTarget&&ne(J.partTarget),video_target_duration:J.targetduration&&ne(J.targetduration),video_source_is_live:J.live,player_manifest_newest_program_time:isNaN($r)?void 0:$r})};G.on(D.Events.LEVEL_LOADED,Te);var bt=function(mt,ae){var J=ae.details,Q=ae.networkDetails,pe=ae.stats,be=De(pe),xe=be.bytesLoaded,Ge=be.requestStart,pt=be.responseStart,lt=be.responseEnd;Se("requestcompleted",{request_event_type:mt,request_bytes_loaded:xe,request_start:Ge,request_response_start:pt,request_response_end:lt,request_type:"manifest",request_hostname:F(J.url),request_response_headers:Le(Q)})};G.on(D.Events.AUDIO_TRACK_LOADED,bt);var Ht=function(mt,ae){var J=ae.stats,Q=ae.networkDetails,pe=ae.frag;J=J||pe.stats;var be=De(J),xe=be.bytesLoaded,Ge=be.requestStart,pt=be.responseStart,lt=be.responseEnd,Oe=Q?Le(Q):void 0,Rt={request_event_type:mt,request_bytes_loaded:xe,request_start:Ge,request_response_start:pt,request_response_end:lt,request_hostname:Q?F(Q.responseURL):void 0,request_id:Oe?z(Oe):void 0,request_response_headers:Oe,request_media_duration:pe.duration,request_url:Q==null?void 0:Q.responseURL};pe.type==="main"?(Rt.request_type="media",Rt.request_current_level=pe.level,Rt.request_video_width=(G.levels[pe.level]||{}).width,Rt.request_video_height=(G.levels[pe.level]||{}).height,Rt.request_labeled_bitrate=(G.levels[pe.level]||{}).bitrate):Rt.request_type=pe.type,Se("requestcompleted",Rt)};G.on(D.Events.FRAG_LOADED,Ht);var Qt=function(mt,ae){var J=ae.frag,Q=J.start,pe={currentFragmentPDT:ue(J),currentFragmentStart:ne(Q)};Se("fragmentchange",pe)};G.on(D.Events.FRAG_CHANGED,Qt);var nt=function(mt,ae){var J=ae.type,Q=ae.details,pe=ae.response,be=ae.fatal,xe=ae.frag,Ge=ae.networkDetails,pt=(xe==null?void 0:xe.url)||ae.url||"",lt=Ge?Le(Ge):void 0;if(Q!==D.ErrorDetails.MANIFEST_LOAD_ERROR&&Q!==D.ErrorDetails.MANIFEST_LOAD_TIMEOUT&&Q!==D.ErrorDetails.FRAG_LOAD_ERROR&&Q!==D.ErrorDetails.FRAG_LOAD_TIMEOUT&&Q!==D.ErrorDetails.LEVEL_LOAD_ERROR&&Q!==D.ErrorDetails.LEVEL_LOAD_TIMEOUT&&Q!==D.ErrorDetails.AUDIO_TRACK_LOAD_ERROR&&Q!==D.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT&&Q!==D.ErrorDetails.SUBTITLE_LOAD_ERROR&&Q!==D.ErrorDetails.SUBTITLE_LOAD_TIMEOUT&&Q!==D.ErrorDetails.KEY_LOAD_ERROR&&Q!==D.ErrorDetails.KEY_LOAD_TIMEOUT||Se("requestfailed",{request_error:Q,request_url:pt,request_hostname:F(pt),request_id:lt?z(lt):void 0,request_type:Q===D.ErrorDetails.FRAG_LOAD_ERROR||Q===D.ErrorDetails.FRAG_LOAD_TIMEOUT?"media":Q===D.ErrorDetails.AUDIO_TRACK_LOAD_ERROR||Q===D.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT?"audio":Q===D.ErrorDetails.SUBTITLE_LOAD_ERROR||Q===D.ErrorDetails.SUBTITLE_LOAD_TIMEOUT?"subtitle":Q===D.ErrorDetails.KEY_LOAD_ERROR||Q===D.ErrorDetails.KEY_LOAD_TIMEOUT?"encryption":"manifest",request_error_code:pe==null?void 0:pe.code,request_error_text:pe==null?void 0:pe.text}),be){var Oe,Rt="".concat(pt?"url: ".concat(pt,`
5
5
  `):"")+"".concat(pe&&(pe.code||pe.text)?"response: ".concat(pe.code,", ").concat(pe.text,`
@@ -16,14 +16,14 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
16
16
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function Lv(v,m){(m==null||m>v.length)&&(m=v.length);for(var p=0,T=new Array(m);p<m;p++)T[p]=v[p];return T}var En,_1=["loadstart","pause","play","playing","seeking","seeked","timeupdate","ratechange","stalled","waiting","error","ended"],A1={1:"MEDIA_ERR_ABORTED",2:"MEDIA_ERR_NETWORK",3:"MEDIA_ERR_DECODE",4:"MEDIA_ERR_SRC_NOT_SUPPORTED"};d()&&d().WeakMap&&(En=new WeakMap);var S1="#EXT-X-TARGETDURATION",x1="#EXT-X-PART-INF",I1="#EXT-X-SERVER-CONTROL",k1="#EXTINF",L1="#EXT-X-PROGRAM-DATE-TIME",R1="#EXT-X-VERSION",w1="#EXT-X-SESSION-DATA",gl=function(v){return this.buffer="",this.manifest={segments:[],serverControl:{},sessionData:{}},this.currentUri={},this.process(v),this.manifest};gl.prototype.process=function(v){var m;for(this.buffer+=v,m=this.buffer.indexOf(`
17
17
  `);m>-1;m=this.buffer.indexOf(`
18
18
  `))this.processLine(this.buffer.substring(0,m)),this.buffer=this.buffer.substring(m+1)},gl.prototype.processLine=function(v){var m=v.indexOf(":"),p=P1(v,m),T=p[0],_=p.length===2?Ah(p[1]):void 0;if(T[0]!=="#")this.currentUri.uri=T,this.manifest.segments.push(this.currentUri),this.manifest.targetDuration&&!("duration"in this.currentUri)&&(this.currentUri.duration=this.manifest.targetDuration),this.currentUri={};else switch(T){case S1:if(!isFinite(_)||_<0)return;this.manifest.targetDuration=_,this.setHoldBack();break;case x1:_h(this.manifest,p),this.manifest.partInf.partTarget&&(this.manifest.partTargetDuration=this.manifest.partInf.partTarget),this.setHoldBack();break;case I1:_h(this.manifest,p),this.setHoldBack();break;case k1:_===0?this.currentUri.duration=.01:_>0&&(this.currentUri.duration=_);break;case L1:var I=_,x=new Date(I);this.manifest.dateTimeString||(this.manifest.dateTimeString=I,this.manifest.dateTimeObject=x),this.currentUri.dateTimeString=I,this.currentUri.dateTimeObject=x;break;case R1:_h(this.manifest,p);break;case w1:var C=O1(p[1]),U=Y(C);Object.assign(this.manifest.sessionData,U)}},gl.prototype.setHoldBack=function(){var v=this.manifest,m=v.serverControl,p=v.targetDuration,T=v.partTargetDuration;if(m){var _="holdBack",I="partHoldBack",x=p&&3*p,C=T&&2*T;p&&!m.hasOwnProperty(_)&&(m[_]=x),x&&m[_]<x&&(m[_]=x),T&&!m.hasOwnProperty(I)&&(m[I]=3*T),T&&m[I]<C&&(m[I]=C)}};var _h=function(v,m){var p,T=Rv(m[0].replace("#EXT-X-",""));M1(m[1])?(p={},p=Object.assign(D1(m[1]),p)):p=Ah(m[1]),v[T]=p},Rv=function(v){return v.toLowerCase().replace(/-(\w)/g,function(m){return m[1].toUpperCase()})},Ah=function(v){if(v.toLowerCase()==="yes"||v.toLowerCase()==="no")return v.toLowerCase()==="yes";var m=v.indexOf(":")!==-1?v:parseFloat(v);return isNaN(m)?v:m},C1=function(v){var m={},p=v.split("=");return p.length>1&&(m[Rv(p[0])]=Ah(p[1])),m},D1=function(v){for(var m=v.split(","),p={},T=0;m.length>T;T++){var _=m[T],I=C1(_);p=Object.assign(I,p)}return p},M1=function(v){return v.indexOf("=")>-1},P1=function(v,m){return m===-1?[v]:[v.substring(0,m),v.substring(m+1)]},O1=function(v){var m={};if(v){var p=v.search(",");return[v.slice(0,p),v.slice(p+1)].forEach(function(T,_){for(var I=T.replace(/['"]+/g,"").split("="),x=0;x<I.length;x++)I[x]==="DATA-ID"&&(m["DATA-ID"]=I[1-x]),I[x]==="VALUE"&&(m.VALUE=I[1-x])}),{data:m}}},N1=gl,U1={safeCall:function(v,m,p,T){var _=T;if(v&&typeof v[m]=="function")try{_=v[m].apply(v,p)}catch(I){S.info("safeCall error",I)}return _},safeIncrement:P,getComputedStyle:function(v,m){var p;if(v&&m&&d()&&typeof d().getComputedStyle=="function")return En&&En.has(v)&&(p=En.get(v)),p||(p=d().getComputedStyle(v,null),En&&En.set(v,p)),p.getPropertyValue(m)},secondsToMs:function(v){return Math.floor(1e3*v)},assign:Object.assign,headersStringToObject:N,cdnHeadersToRequestId:z,extractHostnameAndDomain:R,extractHostname:F,manifestParser:N1,generateShortID:u,generateUUID:c,now:L.now},F1={PLAYER_READY:"playerready",VIEW_INIT:"viewinit",VIDEO_CHANGE:"videochange",PLAY:"play",PAUSE:"pause",PLAYING:"playing",TIME_UPDATE:"timeupdate",SEEKING:"seeking",SEEKED:"seeked",REBUFFER_START:"rebufferstart",REBUFFER_END:"rebufferend",ERROR:"error",ENDED:"ended",RENDITION_CHANGE:"renditionchange",ORIENTATION_CHANGE:"orientationchange",AD_REQUEST:"adrequest",AD_RESPONSE:"adresponse",AD_BREAK_START:"adbreakstart",AD_PLAY:"adplay",AD_PLAYING:"adplaying",AD_PAUSE:"adpause",AD_FIRST_QUARTILE:"adfirstquartile",AD_MID_POINT:"admidpoint",AD_THIRD_QUARTILE:"adthirdquartile",AD_ENDED:"adended",AD_BREAK_END:"adbreakend",AD_ERROR:"aderror",REQUEST_COMPLETED:"requestcompleted",REQUEST_FAILED:"requestfailed",REQUEST_CANCELLED:"requestcanceled"};function B1(v,m){return function(p){if(Array.isArray(p))return p}(v)||function(p,T){var _=p==null?null:typeof Symbol!="undefined"&&p[Symbol.iterator]||p["@@iterator"];if(_!=null){var I,x,C=[],U=!0,G=!1;try{for(_=_.call(p);!(U=(I=_.next()).done)&&(C.push(I.value),!T||C.length!==T);U=!0);}catch(D){G=!0,x=D}finally{try{U||_.return==null||_.return()}finally{if(G)throw x}}return C}}(v,m)||function(p,T){if(p){if(typeof p=="string")return wv(p,T);var _=Object.prototype.toString.call(p).slice(8,-1);return _==="Object"&&p.constructor&&(_=p.constructor.name),_==="Map"||_==="Set"?Array.from(p):_==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(_)?wv(p,T):void 0}}(v,m)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
19
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function wv(v,m){(m==null||m>v.length)&&(m=v.length);for(var p=0,T=new Array(m);p<m;p++)T[p]=v[p];return T}var pi={},_a=function v(m){var p=arguments;typeof m=="string"?v.hasOwnProperty(m)?d().setTimeout(function(){p=Array.prototype.splice.call(p,1),v[m].apply(null,p)},0):S.warn("`"+m+"` is an unknown task"):typeof m=="function"?d().setTimeout(function(){m(v)},0):S.warn("`"+m+"` is invalid.")},$1={loaded:L.now(),NAME:"mux-embed",VERSION:"4.30.0",API_VERSION:"2.1",PLAYER_TRACKED:!1,monitor:function(v,m){return function(p,T,_){var I=kv(f(T),3),x=I[0],C=I[1],U=I[2],G=p.log,D=p.utils.getComputedStyle,ye=p.utils.secondsToMs;if(!x)return G.error("No element was found with the `"+C+"` query selector.");if(U!=="video"&&U!=="audio")return G.error("The element of `"+C+"` was not a media element.");x.mux&&(x.mux.destroy(),delete x.mux,G.warn("Already monitoring this video element, replacing existing event listeners")),(_=Object.assign({automaticErrorTracking:!0},_)).data=Object.assign({player_software:"HTML5 Video Element",player_mux_plugin_name:"VideoElementMonitor",player_mux_plugin_version:p.VERSION},_.data),_.getPlayheadTime=function(){return ye(x.currentTime)},_.getStateData=function(){var ue,Se,le=this.hlsjs&&this.hlsjs.url,Te=this.dashjs&&Th(this.dashjs.getSource==="function")&&this.dashjs.getSource(),bt={player_is_paused:x.paused,player_playhead_time:ye(x.currentTime),player_width:parseInt(D(x,"width")),player_height:parseInt(D(x,"height")),player_autoplay_on:x.autoplay,player_preload_on:x.preload,player_language_code:x.lang,player_is_fullscreen:Ta()&&!!(Ta().fullscreenElement||Ta().webkitFullscreenElement||Ta().mozFullScreenElement||Ta().msFullscreenElement),video_poster_url:x.poster,video_source_url:le||Te||x.currentSrc,video_source_duration:ye(x.duration),video_source_height:x.videoHeight,video_source_width:x.videoWidth,view_dropped_frame_count:(ue=x)===null||ue===void 0||(Se=ue.getVideoPlaybackQuality)===null||Se===void 0?void 0:Se.call(ue).droppedVideoFrames},Ht=_.getPlayheadTime();if(x.getStartDate&&Ht>0){var Qt=x.getStartDate();if(Qt&&typeof Qt.getTime=="function"&&Qt.getTime()){var nt=Qt.getTime();if(bt.player_program_time=nt+Ht,x.seekable.length>0){var Br=nt+x.seekable.end(x.seekable.length-1);bt.player_live_edge_program_time=Br}}}return bt},x.mux=x.mux||{},x.mux.deleted=!1,x.mux.emit=function(ue,Se){p.emit(C,ue,Se)};var ne=function(){G.error("The monitor for this video element has already been destroyed.")};x.mux.destroy=function(){Object.keys(x.mux.listeners).forEach(function(ue){x.removeEventListener(ue,x.mux.listeners[ue],!1)}),delete x.mux.listeners,x.mux.destroy=ne,x.mux.swapElement=ne,x.mux.emit=ne,x.mux.addHLSJS=ne,x.mux.addDashJS=ne,x.mux.removeHLSJS=ne,x.mux.removeDashJS=ne,x.mux.deleted=!0,p.emit(C,"destroy")},x.mux.swapElement=function(ue){var Se=kv(f(ue),3),le=Se[0],Te=Se[1],bt=Se[2];return le?bt!=="video"&&bt!=="audio"?p.log.error("The element of `"+Te+"` was not a media element."):(le.muxId=x.muxId,delete x.muxId,le.mux=le.mux||{},le.mux.listeners=Object.assign({},x.mux.listeners),delete x.mux.listeners,Object.keys(le.mux.listeners).forEach(function(Ht){x.removeEventListener(Ht,le.mux.listeners[Ht],!1),le.addEventListener(Ht,le.mux.listeners[Ht],!1)}),le.mux.swapElement=x.mux.swapElement,le.mux.destroy=x.mux.destroy,delete x.mux,void(x=le)):p.log.error("No element was found with the `"+Te+"` query selector.")},x.mux.addHLSJS=function(ue){p.addHLSJS(C,ue)},x.mux.addDashJS=function(ue){p.addDashJS(C,ue)},x.mux.removeHLSJS=function(){p.removeHLSJS(C)},x.mux.removeDashJS=function(){p.removeDashJS(C)},p.init(C,_),p.emit(C,"playerready"),x.paused||(p.emit(C,"play"),x.readyState>2&&p.emit(C,"playing")),x.mux.listeners={},_1.forEach(function(ue){(ue!=="error"||_.automaticErrorTracking)&&(x.mux.listeners[ue]=function(){var Se={};if(ue==="error"){if(!x.error||x.error.code===1)return;Se.player_error_code=x.error.code,Se.player_error_message=A1[x.error.code]||x.error.message}p.emit(C,ue,Se)},x.addEventListener(ue,x.mux.listeners[ue],!1))})}(_a,v,m)},destroyMonitor:function(v){var m=B1(f(v),1)[0];m&&m.mux&&typeof m.mux.destroy=="function"?m.mux.destroy():S.error("A video element monitor for `"+v+"` has not been initialized via `mux.monitor`.")},addHLSJS:function(v,m){var p=h(v);pi[p]?pi[p].addHLSJS(m):S.error("A monitor for `"+p+"` has not been initialized.")},addDashJS:function(v,m){var p=h(v);pi[p]?pi[p].addDashJS(m):S.error("A monitor for `"+p+"` has not been initialized.")},removeHLSJS:function(v){var m=h(v);pi[m]?pi[m].removeHLSJS():S.error("A monitor for `"+m+"` has not been initialized.")},removeDashJS:function(v){var m=h(v);pi[m]?pi[m].removeDashJS():S.error("A monitor for `"+m+"` has not been initialized.")},init:function(v,m){w()&&m&&m.respectDoNotTrack&&S.info("The browser's Do Not Track flag is enabled - Mux beaconing is disabled.");var p=h(v);pi[p]=new y1(_a,p,m)},emit:function(v,m,p){var T=h(v);pi[T]?(pi[T].emit(m,p),m==="destroy"&&delete pi[T]):S.error("A monitor for `"+T+"` has not been initialized.")},checkDoNotTrack:w,log:S,utils:U1,events:F1,WINDOW_HIDDEN:!1,WINDOW_UNLOADING:!1};Object.assign(_a,$1),d()!==void 0&&typeof d().addEventListener=="function"&&d().addEventListener("pagehide",function(v){v.persisted||(_a.WINDOW_UNLOADING=!0)},!1);var H1=_a},655:function(n,a,o){var l,d;function c(u){return c=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(h){return typeof h}:function(h){return h&&typeof Symbol=="function"&&h.constructor===Symbol&&h!==Symbol.prototype?"symbol":typeof h},c(u);}(function(u){var h=!1;if((d=typeof(l=u)=="function"?l.call(a,o,a,n):l)===void 0||(n.exports=d),h=!0,c(a)==="object"&&(n.exports=u(),h=!0),!h){var f=window.Cookies,g=window.Cookies=u();g.noConflict=function(){return window.Cookies=f,g}}})(function(){var u=function(){for(var h=0,f={};h<arguments.length;h++){var g=arguments[h];for(var E in g)f[E]=g[E]}return f};return function h(f){function g(E,y,S){var w;if(typeof document!="undefined"){if(arguments.length>1){if(typeof(S=u({path:"/"},g.defaults,S)).expires=="number"){var L=new Date;L.setMilliseconds(L.getMilliseconds()+864e5*S.expires),S.expires=L}try{w=JSON.stringify(y),/^[\{\[]/.test(w)&&(y=w)}catch{}return y=f.write?f.write(y,E):encodeURIComponent(String(y)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),E=(E=(E=encodeURIComponent(String(E))).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent)).replace(/[\(\)]/g,escape),document.cookie=[E,"=",y,S.expires?"; expires="+S.expires.toUTCString():"",S.path?"; path="+S.path:"",S.domain?"; domain="+S.domain:"",S.secure?"; secure":""].join("")}E||(w={});for(var F=document.cookie?document.cookie.split("; "):[],R=/(%[0-9A-Z]{2})+/g,B=0;B<F.length;B++){var P=F[B].split("="),$=P.slice(1).join("=");$.charAt(0)==='"'&&($=$.slice(1,-1));try{var K=P[0].replace(R,decodeURIComponent);if($=f.read?f.read($,K):f($,K)||$.replace(R,decodeURIComponent),this.json)try{$=JSON.parse($)}catch{}if(E===K){w=$;break}E||(w[K]=$)}catch{}}return w}}return g.set=g,g.get=function(E){return g.call(g,E)},g.getJSON=function(){return g.apply({json:!0},[].slice.call(arguments))},g.defaults={},g.remove=function(E,y){g(E,"",u(y,{expires:-1}))},g.withConverter=h,g}(function(){})})},153:function(n,a,o){var l,d=o.g!==void 0?o.g:typeof window!="undefined"?window:{},c=o(558);typeof document!="undefined"?l=document:(l=d["__GLOBAL_DOCUMENT_CACHE@4"])||(l=d["__GLOBAL_DOCUMENT_CACHE@4"]=c),n.exports=l},48:function(n,a,o){var l;l=typeof window!="undefined"?window:o.g!==void 0?o.g:typeof self!="undefined"?self:{},n.exports=l},640:function(n,a,o){var l,d;(function(c,u){"use strict";l=function(){var h=function(){},f="undefined",g=typeof window!==f&&typeof window.navigator!==f&&/Trident\/|MSIE /.test(window.navigator.userAgent),E=["trace","debug","info","warn","error"];function y(N,z){var Y=N[z];if(typeof Y.bind=="function")return Y.bind(N);try{return Function.prototype.bind.call(Y,N)}catch{return function(){return Function.prototype.apply.apply(Y,[N,arguments])}}}function S(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function w(N){return N==="debug"&&(N="log"),typeof console!==f&&(N==="trace"&&g?S:console[N]!==void 0?y(console,N):console.log!==void 0?y(console,"log"):h)}function L(N,z){for(var Y=0;Y<E.length;Y++){var ge=E[Y];this[ge]=Y<N?h:this.methodFactory(ge,N,z)}this.log=this.debug}function F(N,z,Y){return function(){typeof console!==f&&(L.call(this,z,Y),this[N].apply(this,arguments))}}function R(N,z,Y){return w(N)||F.apply(this,arguments)}function B(N,z,Y){var ge,me=this;z=z==null?"WARN":z;var Ee="loglevel";function De(ie){var _e=(E[ie]||"silent").toUpperCase();if(typeof window!==f&&Ee){try{return void(window.localStorage[Ee]=_e)}catch{}try{window.document.cookie=encodeURIComponent(Ee)+"="+_e+";"}catch{}}}function Le(){var ie;if(typeof window!==f&&Ee){try{ie=window.localStorage[Ee]}catch{}if(typeof ie===f)try{var _e=window.document.cookie,Ae=_e.indexOf(encodeURIComponent(Ee)+"=");Ae!==-1&&(ie=/^([^;]+)/.exec(_e.slice(Ae))[1])}catch{}return me.levels[ie]===void 0&&(ie=void 0),ie}}function Z(){if(typeof window!==f&&Ee){try{return void window.localStorage.removeItem(Ee)}catch{}try{window.document.cookie=encodeURIComponent(Ee)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch{}}}typeof N=="string"?Ee+=":"+N:typeof N=="symbol"&&(Ee=void 0),me.name=N,me.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},me.methodFactory=Y||R,me.getLevel=function(){return ge},me.setLevel=function(ie,_e){if(typeof ie=="string"&&me.levels[ie.toUpperCase()]!==void 0&&(ie=me.levels[ie.toUpperCase()]),!(typeof ie=="number"&&ie>=0&&ie<=me.levels.SILENT))throw"log.setLevel() called with invalid level: "+ie;if(ge=ie,_e!==!1&&De(ie),L.call(me,ie,N),typeof console===f&&ie<me.levels.SILENT)return"No console available for logging"},me.setDefaultLevel=function(ie){z=ie,Le()||me.setLevel(ie,!1)},me.resetLevel=function(){me.setLevel(z,!1),Z()},me.enableAll=function(ie){me.setLevel(me.levels.TRACE,ie)},me.disableAll=function(ie){me.setLevel(me.levels.SILENT,ie)};var te=Le();te==null&&(te=z),me.setLevel(te,!1)}var P=new B,$={};P.getLogger=function(N){if(typeof N!="symbol"&&typeof N!="string"||N==="")throw new TypeError("You must supply a name when creating a logger.");var z=$[N];return z||(z=$[N]=new B(N,P.getLevel(),P.methodFactory)),z};var K=typeof window!==f?window.log:void 0;return P.noConflict=function(){return typeof window!==f&&window.log===P&&(window.log=K),P},P.getLoggers=function(){return $},P.default=P,P},(d=typeof l=="function"?l.call(a,o,a,n):l)===void 0||(n.exports=d)})()},375:function(n,a){"use strict";var o=Object.prototype.hasOwnProperty;function l(c){try{return decodeURIComponent(c.replace(/\+/g," "))}catch{return null}}function d(c){try{return encodeURIComponent(c)}catch{return null}}a.stringify=function(c,u){u=u||"";var h,f,g=[];for(f in typeof u!="string"&&(u="?"),c)if(o.call(c,f)){if((h=c[f])||h!=null&&!isNaN(h)||(h=""),f=d(f),h=d(h),f===null||h===null)continue;g.push(f+"="+h)}return g.length?u+g.join("&"):""},a.parse=function(c){for(var u,h=/([^=?#&]+)=?([^&]*)/g,f={};u=h.exec(c);){var g=l(u[1]),E=l(u[2]);g===null||E===null||g in f||(f[g]=E)}return f}},558:function(){}},r={};function s(n){var a=r[n];if(a!==void 0)return a.exports;var o=r[n]={exports:{}};return t[n].call(o.exports,o,o.exports,s),o.exports}return s.n=function(n){var a=n&&n.__esModule?function(){return n.default}:function(){return n};return s.d(a,{a}),a},s.d=function(n,a){for(var o in a)s.o(a,o)&&!s.o(n,o)&&Object.defineProperty(n,o,{enumerable:!0,get:a[o]})},s.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),s.o=function(n,a){return Object.prototype.hasOwnProperty.call(n,a)},s(80)}()},typeof Wc=="object"&&typeof Tp=="object"?Tp.exports=e():typeof Wc=="object"?Wc.mux=e():i.mux=e()})()});var bn=class{addEventListener(){}removeEventListener(){}dispatchEvent(e){return!0}};if(typeof DocumentFragment=="undefined"){class i extends bn{}globalThis.DocumentFragment=i}var ka=class extends bn{},kh=class extends bn{},eS={get(i){},define(i,e,t){},upgrade(i){},whenDefined(i){return Promise.resolve(ka)}},La,Lh=class{constructor(e,t={}){Tt(this,La,void 0);vi(this,La,t==null?void 0:t.detail)}get detail(){return Be(this,La)}initCustomEvent(){}};La=new WeakMap;function tS(i,e){return new ka}var Dv={document:{createElement:tS},DocumentFragment,customElements:eS,CustomEvent:Lh,EventTarget:bn,HTMLElement:ka,HTMLVideoElement:kh},Mv=typeof window=="undefined"||typeof globalThis.customElements=="undefined",dt=Mv?Dv:globalThis,di=Mv?Dv.document:globalThis.document;var j={MEDIA_PLAY_REQUEST:"mediaplayrequest",MEDIA_PAUSE_REQUEST:"mediapauserequest",MEDIA_MUTE_REQUEST:"mediamuterequest",MEDIA_UNMUTE_REQUEST:"mediaunmuterequest",MEDIA_VOLUME_REQUEST:"mediavolumerequest",MEDIA_SEEK_REQUEST:"mediaseekrequest",MEDIA_AIRPLAY_REQUEST:"mediaairplayrequest",MEDIA_ENTER_FULLSCREEN_REQUEST:"mediaenterfullscreenrequest",MEDIA_EXIT_FULLSCREEN_REQUEST:"mediaexitfullscreenrequest",MEDIA_PREVIEW_REQUEST:"mediapreviewrequest",MEDIA_ENTER_PIP_REQUEST:"mediaenterpiprequest",MEDIA_EXIT_PIP_REQUEST:"mediaexitpiprequest",MEDIA_ENTER_CAST_REQUEST:"mediaentercastrequest",MEDIA_EXIT_CAST_REQUEST:"mediaexitcastrequest",MEDIA_SHOW_TEXT_TRACKS_REQUEST:"mediashowtexttracksrequest",MEDIA_HIDE_TEXT_TRACKS_REQUEST:"mediahidetexttracksrequest",MEDIA_SHOW_SUBTITLES_REQUEST:"mediashowsubtitlesrequest",MEDIA_DISABLE_SUBTITLES_REQUEST:"mediadisablesubtitlesrequest",MEDIA_TOGGLE_SUBTITLES_REQUEST:"mediatogglesubtitlesrequest",MEDIA_PLAYBACK_RATE_REQUEST:"mediaplaybackraterequest",MEDIA_RENDITION_REQUEST:"mediarenditionrequest",MEDIA_AUDIO_TRACK_REQUEST:"mediaaudiotrackrequest",MEDIA_SEEK_TO_LIVE_REQUEST:"mediaseektoliverequest",REGISTER_MEDIA_STATE_RECEIVER:"registermediastatereceiver",UNREGISTER_MEDIA_STATE_RECEIVER:"unregistermediastatereceiver"},ce={MEDIA_CHROME_ATTRIBUTES:"mediachromeattributes",MEDIA_CONTROLLER:"mediacontroller"},Rh={MEDIA_AIRPLAY_UNAVAILABLE:"mediaAirplayUnavailable",MEDIA_FULLSCREEN_UNAVAILABLE:"mediaFullscreenUnavailable",MEDIA_PIP_UNAVAILABLE:"mediaPipUnavailable",MEDIA_CAST_UNAVAILABLE:"mediaCastUnavailable",MEDIA_RENDITION_UNAVAILABLE:"mediaRenditionUnavailable",MEDIA_AUDIO_TRACK_UNAVAILABLE:"mediaAudioTrackUnavailable",MEDIA_PAUSED:"mediaPaused",MEDIA_HAS_PLAYED:"mediaHasPlayed",MEDIA_ENDED:"mediaEnded",MEDIA_MUTED:"mediaMuted",MEDIA_VOLUME_LEVEL:"mediaVolumeLevel",MEDIA_VOLUME:"mediaVolume",MEDIA_VOLUME_UNAVAILABLE:"mediaVolumeUnavailable",MEDIA_IS_PIP:"mediaIsPip",MEDIA_IS_CASTING:"mediaIsCasting",MEDIA_IS_AIRPLAYING:"mediaIsAirplaying",MEDIA_SUBTITLES_LIST:"mediaSubtitlesList",MEDIA_SUBTITLES_SHOWING:"mediaSubtitlesShowing",MEDIA_IS_FULLSCREEN:"mediaIsFullscreen",MEDIA_PLAYBACK_RATE:"mediaPlaybackRate",MEDIA_CURRENT_TIME:"mediaCurrentTime",MEDIA_DURATION:"mediaDuration",MEDIA_SEEKABLE:"mediaSeekable",MEDIA_PREVIEW_TIME:"mediaPreviewTime",MEDIA_PREVIEW_IMAGE:"mediaPreviewImage",MEDIA_PREVIEW_COORDS:"mediaPreviewCoords",MEDIA_PREVIEW_CHAPTER:"mediaPreviewChapter",MEDIA_LOADING:"mediaLoading",MEDIA_BUFFERED:"mediaBuffered",MEDIA_STREAM_TYPE:"mediaStreamType",MEDIA_TARGET_LIVE_WINDOW:"mediaTargetLiveWindow",MEDIA_TIME_IS_LIVE:"mediaTimeIsLive",MEDIA_RENDITION_LIST:"mediaRenditionList",MEDIA_RENDITION_SELECTED:"mediaRenditionSelected",MEDIA_AUDIO_TRACK_LIST:"mediaAudioTrackList",MEDIA_AUDIO_TRACK_ENABLED:"mediaAudioTrackEnabled",MEDIA_CHAPTERS_CUES:"mediaChaptersCues"},Pv=Object.entries(Rh),A=Pv.reduce((i,[e,t])=>(i[e]=`${t.toLowerCase()}`,i),{}),_r=Pv.reduce((i,[e,t])=>(i[e]=`${t.toLowerCase()}`,i),{USER_INACTIVE:"userinactivechange",BREAKPOINTS_CHANGE:"breakpointchange",BREAKPOINTS_COMPUTED:"breakpointscomputed"}),lC=Object.entries(_r).reduce((i,[e,t])=>{let r=A[e];return r&&(i[t]=r),i},{userinactivechange:"userinactive"}),Ov=Object.entries(A).reduce((i,[e,t])=>{let r=_r[e];return r&&(i[t]=r),i},{userinactive:"userinactivechange"}),Ri={SUBTITLES:"subtitles",CAPTIONS:"captions",DESCRIPTIONS:"descriptions",CHAPTERS:"chapters",METADATA:"metadata"},Hr={DISABLED:"disabled",HIDDEN:"hidden",SHOWING:"showing"};var wh={MOUSE:"mouse",PEN:"pen",TOUCH:"touch"},ci={UNAVAILABLE:"unavailable",UNSUPPORTED:"unsupported"},wi={LIVE:"live",ON_DEMAND:"on-demand",UNKNOWN:"unknown"},Nv={INLINE:"inline",FULLSCREEN:"fullscreen",PICTURE_IN_PICTURE:"picture-in-picture"};var et={AUDIO_PLAYER:()=>"audio player",VIDEO_PLAYER:()=>"video player",VOLUME:()=>"volume",SEEK:()=>"seek",CLOSED_CAPTIONS:()=>"closed captions",PLAYBACK_RATE:({playbackRate:i=1}={})=>`current playback rate ${i}`,PLAYBACK_TIME:()=>"playback time",MEDIA_LOADING:()=>"media loading",SETTINGS:()=>"settings",AUDIO_TRACKS:()=>"audio tracks",QUALITY:()=>"quality"},tt={PLAY:()=>"play",PAUSE:()=>"pause",MUTE:()=>"mute",UNMUTE:()=>"unmute",ENTER_AIRPLAY:()=>"start airplay",EXIT_AIRPLAY:()=>"stop airplay",ENTER_CAST:()=>"start casting",EXIT_CAST:()=>"stop casting",ENTER_FULLSCREEN:()=>"enter fullscreen mode",EXIT_FULLSCREEN:()=>"exit fullscreen mode",ENTER_PIP:()=>"enter picture in picture mode",EXIT_PIP:()=>"exit picture in picture mode",SEEK_FORWARD_N_SECS:({seekOffset:i=30}={})=>`seek forward ${i} seconds`,SEEK_BACK_N_SECS:({seekOffset:i=30}={})=>`seek back ${i} seconds`,SEEK_LIVE:()=>"seek to live",PLAYING_LIVE:()=>"playing live"},rS={...et,...tt};function Uv(i){return i==null?void 0:i.map(sS).join(" ")}function vl(i){return i==null?void 0:i.split(/\s+/).map(nS)}function sS(i){if(i){let{id:e,width:t,height:r}=i;return[e,t,r].filter(s=>s!=null).join(":")}}function nS(i){if(i){let[e,t,r]=i.split(":");return{id:e,width:t,height:r}}}function Fv(i){return i==null?void 0:i.map(aS).join(" ")}function El(i){return i==null?void 0:i.split(/\s+/).map(oS)}function aS(i){if(i){let{id:e,kind:t,language:r,label:s}=i;return[e,t,r,s].filter(n=>n!=null).join(":")}}function oS(i){if(i){let[e,t,r,s]=i.split(":");return{id:e,kind:t,language:r,label:s}}}function Bv(i){return i.replace(/[-_]([a-z])/g,(e,t)=>t.toUpperCase())}function $v(i){return typeof i=="number"&&!Number.isNaN(i)&&Number.isFinite(i)}function bl(i){return typeof i!="string"?!1:!isNaN(i)&&!isNaN(parseFloat(i))}var yl=i=>new Promise(e=>setTimeout(e,i));var Hv=[{singular:"hour",plural:"hours"},{singular:"minute",plural:"minutes"},{singular:"second",plural:"seconds"}],lS=(i,e)=>{let t=i===1?Hv[e].singular:Hv[e].plural;return`${i} ${t}`},gs=i=>{if(!$v(i))return"";let e=Math.abs(i),t=e!==i,r=new Date(0,0,0,0,0,e,0);return`${[r.getHours(),r.getMinutes(),r.getSeconds()].map((o,l)=>o&&lS(o,l)).filter(o=>o).join(", ")}${t?" remaining":""}`};function Yi(i,e){let t=!1;i<0&&(t=!0,i=0-i),i=i<0?0:i;let r=Math.floor(i%60),s=Math.floor(i/60%60),n=Math.floor(i/3600),a=Math.floor(e/60%60),o=Math.floor(e/3600);return(isNaN(i)||i===1/0)&&(n=s=r="0"),n=n>0||o>0?n+":":"",s=((n||a>=10)&&s<10?"0"+s:s)+":",r=r<10?"0"+r:r,(t?"-":"")+n+s+r}var hC=Object.freeze({length:0,start(i){let e=i>>>0;if(e>=this.length)throw new DOMException(`Failed to execute 'start' on 'TimeRanges': The index provided (${e}) is greater than or equal to the maximum bound (${this.length}).`);return 0},end(i){let e=i>>>0;if(e>=this.length)throw new DOMException(`Failed to execute 'end' on 'TimeRanges': The index provided (${e}) is greater than or equal to the maximum bound (${this.length}).`);return 0}});var Tl=class{addEventListener(){}removeEventListener(){}dispatchEvent(){return!0}},_l=class extends Tl{},Ch=class{observe(){}unobserve(){}disconnect(){}},Gv={createElement:function(){return new Al.HTMLElement},createElementNS:function(){return new Al.HTMLElement},addEventListener(){},removeEventListener(){},dispatchEvent(i){return!1}},Al={ResizeObserver:Ch,document:Gv,Node:_l,HTMLElement:class extends _l{},DocumentFragment:class extends Tl{},customElements:{get:function(){},define:function(){},whenDefined:function(){}},localStorage:{getItem(i){return null},setItem(i,e){},removeItem(i){}},CustomEvent:function(){},getComputedStyle:function(){},navigator:{languages:[],get userAgent(){return""}},matchMedia(i){return{matches:!1,media:i}}},Wv=typeof window=="undefined"||typeof window.customElements=="undefined",Kv=Object.keys(Al).every(i=>i in globalThis),k=Wv&&!Kv?Al:globalThis,W=Wv&&!Kv?Gv:globalThis.document;var Vv=new WeakMap,Dh=i=>{let e=Vv.get(i);return e||Vv.set(i,e=new Set),e},qv=new k.ResizeObserver(i=>{for(let e of i)for(let t of Dh(e.target))t(e)});function Ei(i,e){Dh(i).add(e),qv.observe(i)}function ji(i,e){let t=Dh(i);t.delete(e),t.size||qv.unobserve(i)}function gt(i){var e;return(e=Sl(i))!=null?e:Ci(i,"media-controller")}function Sl(i){var e;let{MEDIA_CONTROLLER:t}=ce,r=i.getAttribute(t);if(r)return(e=Es(i))==null?void 0:e.getElementById(r)}var xl=(i,e,t=".value")=>{let r=i.querySelector(t);r&&(r.textContent=e)},cS=(i,e)=>{let t=`slot[name="${e}"]`,r=i.shadowRoot.querySelector(t);return r?r.children:[]},Il=(i,e)=>cS(i,e)[0],Gt=(i,e)=>!i||!e?!1:i!=null&&i.contains(e)?!0:Gt(i,e.getRootNode().host),Ci=(i,e)=>{if(!i)return null;let t=i.closest(e);return t||Ci(i.getRootNode().host,e)};function vs(i=document){var e;let t=i==null?void 0:i.activeElement;return t?(e=vs(t.shadowRoot))!=null?e:t:null}function Es(i){var e;let t=(e=i==null?void 0:i.getRootNode)==null?void 0:e.call(i);return t instanceof ShadowRoot||t instanceof Document?t:null}function Yv(i,e=3){if(i.checkVisibility)return i.checkVisibility({checkOpacity:!0,checkVisibilityCSS:!0});let t=i;for(;t&&e>0;){let r=getComputedStyle(t);if(r.opacity==="0"||r.visibility==="hidden"||r.display==="none")return!1;t=t.parentElement,e--}return!0}function jv(i,e,t,r){let s=Mh(t,r),n=Mh(t,{x:i,y:e}),a=Mh(r,{x:i,y:e});return n>s||a>s?n>a?1:0:n/s}function Mh(i,e){return Math.sqrt(Math.pow(e.x-i.x,2)+Math.pow(e.y-i.y,2))}function We(i,e){let t=uS(i,r=>r===e);return t||Ph(i,e)}function uS(i,e){var t;let r;for(r of i.querySelectorAll("style")){let s;try{s=(t=r.sheet)==null?void 0:t.cssRules}catch{continue}for(let n of s!=null?s:[])if(e(n.selectorText))return n}}function Ph(i,e){var t,r;let s=(t=i.querySelectorAll("style"))!=null?t:[],n=s==null?void 0:s[s.length-1];return n!=null&&n.sheet?(n==null||n.sheet.insertRule(`${e}{}`,n.sheet.cssRules.length),(r=n.sheet.cssRules)==null?void 0:r[n.sheet.cssRules.length-1]):(console.warn("Media Chrome: No style sheet found on style tag of",i),{style:{setProperty:()=>{},removeProperty:()=>"",getPropertyValue:()=>""}})}function Ne(i,e,t=Number.NaN){let r=i.getAttribute(e);return r!=null?+r:t}function Ke(i,e,t){let r=+t;if(t==null||Number.isNaN(r)){i.hasAttribute(e)&&i.removeAttribute(e);return}Ne(i,e,void 0)!==r&&i.setAttribute(e,`${r}`)}function ze(i,e){return i.hasAttribute(e)}function Ve(i,e,t){if(t==null){i.hasAttribute(e)&&i.removeAttribute(e);return}ze(i,e)!=t&&i.toggleAttribute(e,t)}function Re(i,e,t=null){var r;return(r=i.getAttribute(e))!=null?r:t}function Ie(i,e,t){if(t==null){i.hasAttribute(e)&&i.removeAttribute(e);return}let r=`${t}`;Re(i,e,void 0)!==r&&i.setAttribute(e,r)}var zv=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},Gr=(i,e,t)=>(zv(i,e,"read from private field"),t?t.call(i):e.get(i)),hS=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},kl=(i,e,t,r)=>(zv(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),ii,Xv=W.createElement("template");Xv.innerHTML=`
19
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function wv(v,m){(m==null||m>v.length)&&(m=v.length);for(var p=0,T=new Array(m);p<m;p++)T[p]=v[p];return T}var pi={},_a=function v(m){var p=arguments;typeof m=="string"?v.hasOwnProperty(m)?d().setTimeout(function(){p=Array.prototype.splice.call(p,1),v[m].apply(null,p)},0):S.warn("`"+m+"` is an unknown task"):typeof m=="function"?d().setTimeout(function(){m(v)},0):S.warn("`"+m+"` is invalid.")},$1={loaded:L.now(),NAME:"mux-embed",VERSION:"4.30.0",API_VERSION:"2.1",PLAYER_TRACKED:!1,monitor:function(v,m){return function(p,T,_){var I=kv(f(T),3),x=I[0],C=I[1],U=I[2],G=p.log,D=p.utils.getComputedStyle,ye=p.utils.secondsToMs;if(!x)return G.error("No element was found with the `"+C+"` query selector.");if(U!=="video"&&U!=="audio")return G.error("The element of `"+C+"` was not a media element.");x.mux&&(x.mux.destroy(),delete x.mux,G.warn("Already monitoring this video element, replacing existing event listeners")),(_=Object.assign({automaticErrorTracking:!0},_)).data=Object.assign({player_software:"HTML5 Video Element",player_mux_plugin_name:"VideoElementMonitor",player_mux_plugin_version:p.VERSION},_.data),_.getPlayheadTime=function(){return ye(x.currentTime)},_.getStateData=function(){var ue,Se,le=this.hlsjs&&this.hlsjs.url,Te=this.dashjs&&Th(this.dashjs.getSource==="function")&&this.dashjs.getSource(),bt={player_is_paused:x.paused,player_playhead_time:ye(x.currentTime),player_width:parseInt(D(x,"width")),player_height:parseInt(D(x,"height")),player_autoplay_on:x.autoplay,player_preload_on:x.preload,player_language_code:x.lang,player_is_fullscreen:Ta()&&!!(Ta().fullscreenElement||Ta().webkitFullscreenElement||Ta().mozFullScreenElement||Ta().msFullscreenElement),video_poster_url:x.poster,video_source_url:le||Te||x.currentSrc,video_source_duration:ye(x.duration),video_source_height:x.videoHeight,video_source_width:x.videoWidth,view_dropped_frame_count:(ue=x)===null||ue===void 0||(Se=ue.getVideoPlaybackQuality)===null||Se===void 0?void 0:Se.call(ue).droppedVideoFrames},Ht=_.getPlayheadTime();if(x.getStartDate&&Ht>0){var Qt=x.getStartDate();if(Qt&&typeof Qt.getTime=="function"&&Qt.getTime()){var nt=Qt.getTime();if(bt.player_program_time=nt+Ht,x.seekable.length>0){var Br=nt+x.seekable.end(x.seekable.length-1);bt.player_live_edge_program_time=Br}}}return bt},x.mux=x.mux||{},x.mux.deleted=!1,x.mux.emit=function(ue,Se){p.emit(C,ue,Se)};var ne=function(){G.error("The monitor for this video element has already been destroyed.")};x.mux.destroy=function(){Object.keys(x.mux.listeners).forEach(function(ue){x.removeEventListener(ue,x.mux.listeners[ue],!1)}),delete x.mux.listeners,x.mux.destroy=ne,x.mux.swapElement=ne,x.mux.emit=ne,x.mux.addHLSJS=ne,x.mux.addDashJS=ne,x.mux.removeHLSJS=ne,x.mux.removeDashJS=ne,x.mux.deleted=!0,p.emit(C,"destroy")},x.mux.swapElement=function(ue){var Se=kv(f(ue),3),le=Se[0],Te=Se[1],bt=Se[2];return le?bt!=="video"&&bt!=="audio"?p.log.error("The element of `"+Te+"` was not a media element."):(le.muxId=x.muxId,delete x.muxId,le.mux=le.mux||{},le.mux.listeners=Object.assign({},x.mux.listeners),delete x.mux.listeners,Object.keys(le.mux.listeners).forEach(function(Ht){x.removeEventListener(Ht,le.mux.listeners[Ht],!1),le.addEventListener(Ht,le.mux.listeners[Ht],!1)}),le.mux.swapElement=x.mux.swapElement,le.mux.destroy=x.mux.destroy,delete x.mux,void(x=le)):p.log.error("No element was found with the `"+Te+"` query selector.")},x.mux.addHLSJS=function(ue){p.addHLSJS(C,ue)},x.mux.addDashJS=function(ue){p.addDashJS(C,ue)},x.mux.removeHLSJS=function(){p.removeHLSJS(C)},x.mux.removeDashJS=function(){p.removeDashJS(C)},p.init(C,_),p.emit(C,"playerready"),x.paused||(p.emit(C,"play"),x.readyState>2&&p.emit(C,"playing")),x.mux.listeners={},_1.forEach(function(ue){(ue!=="error"||_.automaticErrorTracking)&&(x.mux.listeners[ue]=function(){var Se={};if(ue==="error"){if(!x.error||x.error.code===1)return;Se.player_error_code=x.error.code,Se.player_error_message=A1[x.error.code]||x.error.message}p.emit(C,ue,Se)},x.addEventListener(ue,x.mux.listeners[ue],!1))})}(_a,v,m)},destroyMonitor:function(v){var m=B1(f(v),1)[0];m&&m.mux&&typeof m.mux.destroy=="function"?m.mux.destroy():S.error("A video element monitor for `"+v+"` has not been initialized via `mux.monitor`.")},addHLSJS:function(v,m){var p=h(v);pi[p]?pi[p].addHLSJS(m):S.error("A monitor for `"+p+"` has not been initialized.")},addDashJS:function(v,m){var p=h(v);pi[p]?pi[p].addDashJS(m):S.error("A monitor for `"+p+"` has not been initialized.")},removeHLSJS:function(v){var m=h(v);pi[m]?pi[m].removeHLSJS():S.error("A monitor for `"+m+"` has not been initialized.")},removeDashJS:function(v){var m=h(v);pi[m]?pi[m].removeDashJS():S.error("A monitor for `"+m+"` has not been initialized.")},init:function(v,m){w()&&m&&m.respectDoNotTrack&&S.info("The browser's Do Not Track flag is enabled - Mux beaconing is disabled.");var p=h(v);pi[p]=new y1(_a,p,m)},emit:function(v,m,p){var T=h(v);pi[T]?(pi[T].emit(m,p),m==="destroy"&&delete pi[T]):S.error("A monitor for `"+T+"` has not been initialized.")},checkDoNotTrack:w,log:S,utils:U1,events:F1,WINDOW_HIDDEN:!1,WINDOW_UNLOADING:!1};Object.assign(_a,$1),d()!==void 0&&typeof d().addEventListener=="function"&&d().addEventListener("pagehide",function(v){v.persisted||(_a.WINDOW_UNLOADING=!0)},!1);var H1=_a},655:function(n,a,o){var l,d;function c(u){return c=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(h){return typeof h}:function(h){return h&&typeof Symbol=="function"&&h.constructor===Symbol&&h!==Symbol.prototype?"symbol":typeof h},c(u);}(function(u){var h=!1;if((d=typeof(l=u)=="function"?l.call(a,o,a,n):l)===void 0||(n.exports=d),h=!0,c(a)==="object"&&(n.exports=u(),h=!0),!h){var f=window.Cookies,g=window.Cookies=u();g.noConflict=function(){return window.Cookies=f,g}}})(function(){var u=function(){for(var h=0,f={};h<arguments.length;h++){var g=arguments[h];for(var E in g)f[E]=g[E]}return f};return function h(f){function g(E,y,S){var w;if(typeof document!="undefined"){if(arguments.length>1){if(typeof(S=u({path:"/"},g.defaults,S)).expires=="number"){var L=new Date;L.setMilliseconds(L.getMilliseconds()+864e5*S.expires),S.expires=L}try{w=JSON.stringify(y),/^[\{\[]/.test(w)&&(y=w)}catch{}return y=f.write?f.write(y,E):encodeURIComponent(String(y)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),E=(E=(E=encodeURIComponent(String(E))).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent)).replace(/[\(\)]/g,escape),document.cookie=[E,"=",y,S.expires?"; expires="+S.expires.toUTCString():"",S.path?"; path="+S.path:"",S.domain?"; domain="+S.domain:"",S.secure?"; secure":""].join("")}E||(w={});for(var F=document.cookie?document.cookie.split("; "):[],R=/(%[0-9A-Z]{2})+/g,B=0;B<F.length;B++){var P=F[B].split("="),$=P.slice(1).join("=");$.charAt(0)==='"'&&($=$.slice(1,-1));try{var K=P[0].replace(R,decodeURIComponent);if($=f.read?f.read($,K):f($,K)||$.replace(R,decodeURIComponent),this.json)try{$=JSON.parse($)}catch{}if(E===K){w=$;break}E||(w[K]=$)}catch{}}return w}}return g.set=g,g.get=function(E){return g.call(g,E)},g.getJSON=function(){return g.apply({json:!0},[].slice.call(arguments))},g.defaults={},g.remove=function(E,y){g(E,"",u(y,{expires:-1}))},g.withConverter=h,g}(function(){})})},153:function(n,a,o){var l,d=o.g!==void 0?o.g:typeof window!="undefined"?window:{},c=o(558);typeof document!="undefined"?l=document:(l=d["__GLOBAL_DOCUMENT_CACHE@4"])||(l=d["__GLOBAL_DOCUMENT_CACHE@4"]=c),n.exports=l},48:function(n,a,o){var l;l=typeof window!="undefined"?window:o.g!==void 0?o.g:typeof self!="undefined"?self:{},n.exports=l},640:function(n,a,o){var l,d;(function(c,u){"use strict";l=function(){var h=function(){},f="undefined",g=typeof window!==f&&typeof window.navigator!==f&&/Trident\/|MSIE /.test(window.navigator.userAgent),E=["trace","debug","info","warn","error"];function y(N,z){var Y=N[z];if(typeof Y.bind=="function")return Y.bind(N);try{return Function.prototype.bind.call(Y,N)}catch{return function(){return Function.prototype.apply.apply(Y,[N,arguments])}}}function S(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function w(N){return N==="debug"&&(N="log"),typeof console!==f&&(N==="trace"&&g?S:console[N]!==void 0?y(console,N):console.log!==void 0?y(console,"log"):h)}function L(N,z){for(var Y=0;Y<E.length;Y++){var ge=E[Y];this[ge]=Y<N?h:this.methodFactory(ge,N,z)}this.log=this.debug}function F(N,z,Y){return function(){typeof console!==f&&(L.call(this,z,Y),this[N].apply(this,arguments))}}function R(N,z,Y){return w(N)||F.apply(this,arguments)}function B(N,z,Y){var ge,me=this;z=z==null?"WARN":z;var Ee="loglevel";function De(ie){var _e=(E[ie]||"silent").toUpperCase();if(typeof window!==f&&Ee){try{return void(window.localStorage[Ee]=_e)}catch{}try{window.document.cookie=encodeURIComponent(Ee)+"="+_e+";"}catch{}}}function Le(){var ie;if(typeof window!==f&&Ee){try{ie=window.localStorage[Ee]}catch{}if(typeof ie===f)try{var _e=window.document.cookie,Ae=_e.indexOf(encodeURIComponent(Ee)+"=");Ae!==-1&&(ie=/^([^;]+)/.exec(_e.slice(Ae))[1])}catch{}return me.levels[ie]===void 0&&(ie=void 0),ie}}function Z(){if(typeof window!==f&&Ee){try{return void window.localStorage.removeItem(Ee)}catch{}try{window.document.cookie=encodeURIComponent(Ee)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch{}}}typeof N=="string"?Ee+=":"+N:typeof N=="symbol"&&(Ee=void 0),me.name=N,me.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},me.methodFactory=Y||R,me.getLevel=function(){return ge},me.setLevel=function(ie,_e){if(typeof ie=="string"&&me.levels[ie.toUpperCase()]!==void 0&&(ie=me.levels[ie.toUpperCase()]),!(typeof ie=="number"&&ie>=0&&ie<=me.levels.SILENT))throw"log.setLevel() called with invalid level: "+ie;if(ge=ie,_e!==!1&&De(ie),L.call(me,ie,N),typeof console===f&&ie<me.levels.SILENT)return"No console available for logging"},me.setDefaultLevel=function(ie){z=ie,Le()||me.setLevel(ie,!1)},me.resetLevel=function(){me.setLevel(z,!1),Z()},me.enableAll=function(ie){me.setLevel(me.levels.TRACE,ie)},me.disableAll=function(ie){me.setLevel(me.levels.SILENT,ie)};var te=Le();te==null&&(te=z),me.setLevel(te,!1)}var P=new B,$={};P.getLogger=function(N){if(typeof N!="symbol"&&typeof N!="string"||N==="")throw new TypeError("You must supply a name when creating a logger.");var z=$[N];return z||(z=$[N]=new B(N,P.getLevel(),P.methodFactory)),z};var K=typeof window!==f?window.log:void 0;return P.noConflict=function(){return typeof window!==f&&window.log===P&&(window.log=K),P},P.getLoggers=function(){return $},P.default=P,P},(d=typeof l=="function"?l.call(a,o,a,n):l)===void 0||(n.exports=d)})()},375:function(n,a){"use strict";var o=Object.prototype.hasOwnProperty;function l(c){try{return decodeURIComponent(c.replace(/\+/g," "))}catch{return null}}function d(c){try{return encodeURIComponent(c)}catch{return null}}a.stringify=function(c,u){u=u||"";var h,f,g=[];for(f in typeof u!="string"&&(u="?"),c)if(o.call(c,f)){if((h=c[f])||h!=null&&!isNaN(h)||(h=""),f=d(f),h=d(h),f===null||h===null)continue;g.push(f+"="+h)}return g.length?u+g.join("&"):""},a.parse=function(c){for(var u,h=/([^=?#&]+)=?([^&]*)/g,f={};u=h.exec(c);){var g=l(u[1]),E=l(u[2]);g===null||E===null||g in f||(f[g]=E)}return f}},558:function(){}},r={};function s(n){var a=r[n];if(a!==void 0)return a.exports;var o=r[n]={exports:{}};return t[n].call(o.exports,o,o.exports,s),o.exports}return s.n=function(n){var a=n&&n.__esModule?function(){return n.default}:function(){return n};return s.d(a,{a}),a},s.d=function(n,a){for(var o in a)s.o(a,o)&&!s.o(n,o)&&Object.defineProperty(n,o,{enumerable:!0,get:a[o]})},s.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),s.o=function(n,a){return Object.prototype.hasOwnProperty.call(n,a)},s(80)}()},typeof Wc=="object"&&typeof Tp=="object"?Tp.exports=e():typeof Wc=="object"?Wc.mux=e():i.mux=e()})()});var bn=class{addEventListener(){}removeEventListener(){}dispatchEvent(e){return!0}};if(typeof DocumentFragment=="undefined"){class i extends bn{}globalThis.DocumentFragment=i}var ka=class extends bn{},kh=class extends bn{},eS={get(i){},define(i,e,t){},upgrade(i){},whenDefined(i){return Promise.resolve(ka)}},La,Lh=class{constructor(e,t={}){Tt(this,La,void 0);vi(this,La,t==null?void 0:t.detail)}get detail(){return Be(this,La)}initCustomEvent(){}};La=new WeakMap;function tS(i,e){return new ka}var Dv={document:{createElement:tS},DocumentFragment,customElements:eS,CustomEvent:Lh,EventTarget:bn,HTMLElement:ka,HTMLVideoElement:kh},Mv=typeof window=="undefined"||typeof globalThis.customElements=="undefined",dt=Mv?Dv:globalThis,di=Mv?Dv.document:globalThis.document;var j={MEDIA_PLAY_REQUEST:"mediaplayrequest",MEDIA_PAUSE_REQUEST:"mediapauserequest",MEDIA_MUTE_REQUEST:"mediamuterequest",MEDIA_UNMUTE_REQUEST:"mediaunmuterequest",MEDIA_VOLUME_REQUEST:"mediavolumerequest",MEDIA_SEEK_REQUEST:"mediaseekrequest",MEDIA_AIRPLAY_REQUEST:"mediaairplayrequest",MEDIA_ENTER_FULLSCREEN_REQUEST:"mediaenterfullscreenrequest",MEDIA_EXIT_FULLSCREEN_REQUEST:"mediaexitfullscreenrequest",MEDIA_PREVIEW_REQUEST:"mediapreviewrequest",MEDIA_ENTER_PIP_REQUEST:"mediaenterpiprequest",MEDIA_EXIT_PIP_REQUEST:"mediaexitpiprequest",MEDIA_ENTER_CAST_REQUEST:"mediaentercastrequest",MEDIA_EXIT_CAST_REQUEST:"mediaexitcastrequest",MEDIA_SHOW_TEXT_TRACKS_REQUEST:"mediashowtexttracksrequest",MEDIA_HIDE_TEXT_TRACKS_REQUEST:"mediahidetexttracksrequest",MEDIA_SHOW_SUBTITLES_REQUEST:"mediashowsubtitlesrequest",MEDIA_DISABLE_SUBTITLES_REQUEST:"mediadisablesubtitlesrequest",MEDIA_TOGGLE_SUBTITLES_REQUEST:"mediatogglesubtitlesrequest",MEDIA_PLAYBACK_RATE_REQUEST:"mediaplaybackraterequest",MEDIA_RENDITION_REQUEST:"mediarenditionrequest",MEDIA_AUDIO_TRACK_REQUEST:"mediaaudiotrackrequest",MEDIA_SEEK_TO_LIVE_REQUEST:"mediaseektoliverequest",REGISTER_MEDIA_STATE_RECEIVER:"registermediastatereceiver",UNREGISTER_MEDIA_STATE_RECEIVER:"unregistermediastatereceiver"},ce={MEDIA_CHROME_ATTRIBUTES:"mediachromeattributes",MEDIA_CONTROLLER:"mediacontroller"},Rh={MEDIA_AIRPLAY_UNAVAILABLE:"mediaAirplayUnavailable",MEDIA_FULLSCREEN_UNAVAILABLE:"mediaFullscreenUnavailable",MEDIA_PIP_UNAVAILABLE:"mediaPipUnavailable",MEDIA_CAST_UNAVAILABLE:"mediaCastUnavailable",MEDIA_RENDITION_UNAVAILABLE:"mediaRenditionUnavailable",MEDIA_AUDIO_TRACK_UNAVAILABLE:"mediaAudioTrackUnavailable",MEDIA_PAUSED:"mediaPaused",MEDIA_HAS_PLAYED:"mediaHasPlayed",MEDIA_ENDED:"mediaEnded",MEDIA_MUTED:"mediaMuted",MEDIA_VOLUME_LEVEL:"mediaVolumeLevel",MEDIA_VOLUME:"mediaVolume",MEDIA_VOLUME_UNAVAILABLE:"mediaVolumeUnavailable",MEDIA_IS_PIP:"mediaIsPip",MEDIA_IS_CASTING:"mediaIsCasting",MEDIA_IS_AIRPLAYING:"mediaIsAirplaying",MEDIA_SUBTITLES_LIST:"mediaSubtitlesList",MEDIA_SUBTITLES_SHOWING:"mediaSubtitlesShowing",MEDIA_IS_FULLSCREEN:"mediaIsFullscreen",MEDIA_PLAYBACK_RATE:"mediaPlaybackRate",MEDIA_CURRENT_TIME:"mediaCurrentTime",MEDIA_DURATION:"mediaDuration",MEDIA_SEEKABLE:"mediaSeekable",MEDIA_PREVIEW_TIME:"mediaPreviewTime",MEDIA_PREVIEW_IMAGE:"mediaPreviewImage",MEDIA_PREVIEW_COORDS:"mediaPreviewCoords",MEDIA_PREVIEW_CHAPTER:"mediaPreviewChapter",MEDIA_LOADING:"mediaLoading",MEDIA_BUFFERED:"mediaBuffered",MEDIA_STREAM_TYPE:"mediaStreamType",MEDIA_TARGET_LIVE_WINDOW:"mediaTargetLiveWindow",MEDIA_TIME_IS_LIVE:"mediaTimeIsLive",MEDIA_RENDITION_LIST:"mediaRenditionList",MEDIA_RENDITION_SELECTED:"mediaRenditionSelected",MEDIA_AUDIO_TRACK_LIST:"mediaAudioTrackList",MEDIA_AUDIO_TRACK_ENABLED:"mediaAudioTrackEnabled",MEDIA_CHAPTERS_CUES:"mediaChaptersCues"},Pv=Object.entries(Rh),A=Pv.reduce((i,[e,t])=>(i[e]=`${t.toLowerCase()}`,i),{}),_r=Pv.reduce((i,[e,t])=>(i[e]=`${t.toLowerCase()}`,i),{USER_INACTIVE:"userinactivechange",BREAKPOINTS_CHANGE:"breakpointchange",BREAKPOINTS_COMPUTED:"breakpointscomputed"}),lC=Object.entries(_r).reduce((i,[e,t])=>{let r=A[e];return r&&(i[t]=r),i},{userinactivechange:"userinactive"}),Ov=Object.entries(A).reduce((i,[e,t])=>{let r=_r[e];return r&&(i[t]=r),i},{userinactive:"userinactivechange"}),Ri={SUBTITLES:"subtitles",CAPTIONS:"captions",DESCRIPTIONS:"descriptions",CHAPTERS:"chapters",METADATA:"metadata"},Hr={DISABLED:"disabled",HIDDEN:"hidden",SHOWING:"showing"};var wh={MOUSE:"mouse",PEN:"pen",TOUCH:"touch"},ci={UNAVAILABLE:"unavailable",UNSUPPORTED:"unsupported"},wi={LIVE:"live",ON_DEMAND:"on-demand",UNKNOWN:"unknown"},Nv={INLINE:"inline",FULLSCREEN:"fullscreen",PICTURE_IN_PICTURE:"picture-in-picture"};var et={AUDIO_PLAYER:()=>"audio player",VIDEO_PLAYER:()=>"video player",VOLUME:()=>"volume",SEEK:()=>"seek",CLOSED_CAPTIONS:()=>"closed captions",PLAYBACK_RATE:({playbackRate:i=1}={})=>`current playback rate ${i}`,PLAYBACK_TIME:()=>"playback time",MEDIA_LOADING:()=>"media loading",SETTINGS:()=>"settings",AUDIO_TRACKS:()=>"audio tracks",QUALITY:()=>"quality"},tt={PLAY:()=>"play",PAUSE:()=>"pause",MUTE:()=>"mute",UNMUTE:()=>"unmute",ENTER_AIRPLAY:()=>"start airplay",EXIT_AIRPLAY:()=>"stop airplay",ENTER_CAST:()=>"start casting",EXIT_CAST:()=>"stop casting",ENTER_FULLSCREEN:()=>"enter fullscreen mode",EXIT_FULLSCREEN:()=>"exit fullscreen mode",ENTER_PIP:()=>"enter picture in picture mode",EXIT_PIP:()=>"exit picture in picture mode",SEEK_FORWARD_N_SECS:({seekOffset:i=30}={})=>`seek forward ${i} seconds`,SEEK_BACK_N_SECS:({seekOffset:i=30}={})=>`seek back ${i} seconds`,SEEK_LIVE:()=>"seek to live",PLAYING_LIVE:()=>"playing live"},rS={...et,...tt};function Uv(i){return i==null?void 0:i.map(sS).join(" ")}function vl(i){return i==null?void 0:i.split(/\s+/).map(nS)}function sS(i){if(i){let{id:e,width:t,height:r}=i;return[e,t,r].filter(s=>s!=null).join(":")}}function nS(i){if(i){let[e,t,r]=i.split(":");return{id:e,width:t,height:r}}}function Fv(i){return i==null?void 0:i.map(aS).join(" ")}function El(i){return i==null?void 0:i.split(/\s+/).map(oS)}function aS(i){if(i){let{id:e,kind:t,language:r,label:s}=i;return[e,t,r,s].filter(n=>n!=null).join(":")}}function oS(i){if(i){let[e,t,r,s]=i.split(":");return{id:e,kind:t,language:r,label:s}}}function Bv(i){return i.replace(/[-_]([a-z])/g,(e,t)=>t.toUpperCase())}function $v(i){return typeof i=="number"&&!Number.isNaN(i)&&Number.isFinite(i)}function bl(i){return typeof i!="string"?!1:!isNaN(i)&&!isNaN(parseFloat(i))}var yl=i=>new Promise(e=>setTimeout(e,i));var Hv=[{singular:"hour",plural:"hours"},{singular:"minute",plural:"minutes"},{singular:"second",plural:"seconds"}],lS=(i,e)=>{let t=i===1?Hv[e].singular:Hv[e].plural;return`${i} ${t}`},gs=i=>{if(!$v(i))return"";let e=Math.abs(i),t=e!==i,r=new Date(0,0,0,0,0,e,0);return`${[r.getHours(),r.getMinutes(),r.getSeconds()].map((o,l)=>o&&lS(o,l)).filter(o=>o).join(", ")}${t?" remaining":""}`};function Yi(i,e){let t=!1;i<0&&(t=!0,i=0-i),i=i<0?0:i;let r=Math.floor(i%60),s=Math.floor(i/60%60),n=Math.floor(i/3600),a=Math.floor(e/60%60),o=Math.floor(e/3600);return(isNaN(i)||i===1/0)&&(n=s=r="0"),n=n>0||o>0?n+":":"",s=((n||a>=10)&&s<10?"0"+s:s)+":",r=r<10?"0"+r:r,(t?"-":"")+n+s+r}var hC=Object.freeze({length:0,start(i){let e=i>>>0;if(e>=this.length)throw new DOMException(`Failed to execute 'start' on 'TimeRanges': The index provided (${e}) is greater than or equal to the maximum bound (${this.length}).`);return 0},end(i){let e=i>>>0;if(e>=this.length)throw new DOMException(`Failed to execute 'end' on 'TimeRanges': The index provided (${e}) is greater than or equal to the maximum bound (${this.length}).`);return 0}});var Tl=class{addEventListener(){}removeEventListener(){}dispatchEvent(){return!0}},_l=class extends Tl{},Ch=class{observe(){}unobserve(){}disconnect(){}},Gv={createElement:function(){return new Al.HTMLElement},createElementNS:function(){return new Al.HTMLElement},addEventListener(){},removeEventListener(){},dispatchEvent(i){return!1}},Al={ResizeObserver:Ch,document:Gv,Node:_l,HTMLElement:class extends _l{},DocumentFragment:class extends Tl{},customElements:{get:function(){},define:function(){},whenDefined:function(){}},localStorage:{getItem(i){return null},setItem(i,e){},removeItem(i){}},CustomEvent:function(){},getComputedStyle:function(){},navigator:{languages:[],get userAgent(){return""}},matchMedia(i){return{matches:!1,media:i}}},Wv=typeof window=="undefined"||typeof window.customElements=="undefined",Kv=Object.keys(Al).every(i=>i in globalThis),k=Wv&&!Kv?Al:globalThis,W=Wv&&!Kv?Gv:globalThis.document;var Vv=new WeakMap,Dh=i=>{let e=Vv.get(i);return e||Vv.set(i,e=new Set),e},qv=new k.ResizeObserver(i=>{for(let e of i)for(let t of Dh(e.target))t(e)});function Ei(i,e){Dh(i).add(e),qv.observe(i)}function ji(i,e){let t=Dh(i);t.delete(e),t.size||qv.unobserve(i)}function gt(i){var e;return(e=Sl(i))!=null?e:Ci(i,"media-controller")}function Sl(i){var e;let{MEDIA_CONTROLLER:t}=ce,r=i.getAttribute(t);if(r)return(e=Es(i))==null?void 0:e.getElementById(r)}var xl=(i,e,t=".value")=>{let r=i.querySelector(t);r&&(r.textContent=e)},cS=(i,e)=>{let t=`slot[name="${e}"]`,r=i.shadowRoot.querySelector(t);return r?r.children:[]},Il=(i,e)=>cS(i,e)[0],Gt=(i,e)=>!i||!e?!1:i!=null&&i.contains(e)?!0:Gt(i,e.getRootNode().host),Ci=(i,e)=>{if(!i)return null;let t=i.closest(e);return t||Ci(i.getRootNode().host,e)};function vs(i=document){var e;let t=i==null?void 0:i.activeElement;return t?(e=vs(t.shadowRoot))!=null?e:t:null}function Es(i){var e;let t=(e=i==null?void 0:i.getRootNode)==null?void 0:e.call(i);return t instanceof ShadowRoot||t instanceof Document?t:null}function Yv(i,e=3){if(i.checkVisibility)return i.checkVisibility({checkOpacity:!0,checkVisibilityCSS:!0});let t=i;for(;t&&e>0;){let r=getComputedStyle(t);if(r.opacity==="0"||r.visibility==="hidden"||r.display==="none")return!1;t=t.parentElement,e--}return!0}function jv(i,e,t,r){let s=Mh(t,r),n=Mh(t,{x:i,y:e}),a=Mh(r,{x:i,y:e});return n>s||a>s?n>a?1:0:n/s}function Mh(i,e){return Math.sqrt(Math.pow(e.x-i.x,2)+Math.pow(e.y-i.y,2))}function We(i,e){let t=uS(i,r=>r===e);return t||Ph(i,e)}function uS(i,e){var t;let r;for(r of i.querySelectorAll("style")){let s;try{s=(t=r.sheet)==null?void 0:t.cssRules}catch{continue}for(let n of s!=null?s:[])if(e(n.selectorText))return n}}function Ph(i,e){var t,r;let s=(t=i.querySelectorAll("style"))!=null?t:[],n=s==null?void 0:s[s.length-1];return n!=null&&n.sheet?(n==null||n.sheet.insertRule(`${e}{}`,n.sheet.cssRules.length),(r=n.sheet.cssRules)==null?void 0:r[n.sheet.cssRules.length-1]):(console.warn("Media Chrome: No style sheet found on style tag of",i),{style:{setProperty:()=>{},removeProperty:()=>"",getPropertyValue:()=>""}})}function Ne(i,e,t=Number.NaN){let r=i.getAttribute(e);return r!=null?+r:t}function Ke(i,e,t){let r=+t;if(t==null||Number.isNaN(r)){i.hasAttribute(e)&&i.removeAttribute(e);return}Ne(i,e,void 0)!==r&&i.setAttribute(e,`${r}`)}function ze(i,e){return i.hasAttribute(e)}function Ve(i,e,t){if(t==null){i.hasAttribute(e)&&i.removeAttribute(e);return}ze(i,e)!=t&&i.toggleAttribute(e,t)}function Re(i,e,t=null){var r;return(r=i.getAttribute(e))!=null?r:t}function Ie(i,e,t){if(t==null){i.hasAttribute(e)&&i.removeAttribute(e);return}let r=`${t}`;Re(i,e,void 0)!==r&&i.setAttribute(e,r)}var zv=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},Gr=(i,e,t)=>(zv(i,e,"read from private field"),t?t.call(i):e.get(i)),hS=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},kl=(i,e,t,r)=>(zv(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),ri,Xv=W.createElement("template");Xv.innerHTML=`
20
20
  <style>
21
21
  :host {
22
22
  display: var(--media-control-display, var(--media-gesture-receiver-display, inline-block));
23
23
  box-sizing: border-box;
24
24
  }
25
25
  </style>
26
- `;var Oh=class extends k.HTMLElement{constructor(e={}){if(super(),hS(this,ii,void 0),!this.shadowRoot){let t=this.attachShadow({mode:"open"}),r=Xv.content.cloneNode(!0);this.nativeEl=r;let s=e.slotTemplate;s||(s=W.createElement("template"),s.innerHTML=`<slot>${e.defaultContent||""}</slot>`),this.nativeEl.appendChild(s.content.cloneNode(!0)),t.appendChild(r)}}static get observedAttributes(){return[ce.MEDIA_CONTROLLER,A.MEDIA_PAUSED]}attributeChangedCallback(e,t,r){var s,n,a,o,l;e===ce.MEDIA_CONTROLLER&&(t&&((n=(s=Gr(this,ii))==null?void 0:s.unassociateElement)==null||n.call(s,this),kl(this,ii,null)),r&&this.isConnected&&(kl(this,ii,(a=this.getRootNode())==null?void 0:a.getElementById(r)),(l=(o=Gr(this,ii))==null?void 0:o.associateElement)==null||l.call(o,this)))}connectedCallback(){var e,t,r,s;this.tabIndex=-1,this.setAttribute("aria-hidden","true"),kl(this,ii,fS(this)),this.getAttribute(ce.MEDIA_CONTROLLER)&&((t=(e=Gr(this,ii))==null?void 0:e.associateElement)==null||t.call(e,this)),(r=Gr(this,ii))==null||r.addEventListener("pointerdown",this),(s=Gr(this,ii))==null||s.addEventListener("click",this)}disconnectedCallback(){var e,t,r,s;this.getAttribute(ce.MEDIA_CONTROLLER)&&((t=(e=Gr(this,ii))==null?void 0:e.unassociateElement)==null||t.call(e,this)),(r=Gr(this,ii))==null||r.removeEventListener("pointerdown",this),(s=Gr(this,ii))==null||s.removeEventListener("click",this),kl(this,ii,null)}handleEvent(e){var t;let r=(t=e.composedPath())==null?void 0:t[0];if(["video","media-controller"].includes(r==null?void 0:r.localName)){if(e.type==="pointerdown")this._pointerType=e.pointerType;else if(e.type==="click"){let{clientX:n,clientY:a}=e,{left:o,top:l,width:d,height:c}=this.getBoundingClientRect(),u=n-o,h=a-l;if(u<0||h<0||u>d||h>c||d===0&&c===0)return;let{pointerType:f=this._pointerType}=e;if(this._pointerType=void 0,f===wh.TOUCH){this.handleTap(e);return}else if(f===wh.MOUSE){this.handleMouseClick(e);return}}}}get mediaPaused(){return ze(this,A.MEDIA_PAUSED)}set mediaPaused(e){Ve(this,A.MEDIA_PAUSED,e)}handleTap(e){}handleMouseClick(e){let t=this.mediaPaused?j.MEDIA_PLAY_REQUEST:j.MEDIA_PAUSE_REQUEST;this.dispatchEvent(new k.CustomEvent(t,{composed:!0,bubbles:!0}))}};ii=new WeakMap;function fS(i){var e;let t=i.getAttribute(ce.MEDIA_CONTROLLER);return t?(e=i.getRootNode())==null?void 0:e.getElementById(t):Ci(i,"media-controller")}k.customElements.get("media-gesture-receiver")||k.customElements.define("media-gesture-receiver",Oh);var mS=Object.defineProperty,pS=(i,e,t)=>e in i?mS(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,gS=(i,e,t)=>(pS(i,typeof e!="symbol"?e+"":e,t),t),$h=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},Uh=(i,e,t)=>($h(i,e,"read from private field"),t?t.call(i):e.get(i)),bs=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},Nh=(i,e,t,r)=>($h(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),Di=(i,e,t)=>($h(i,e,"access private method"),t),Ll,yn,Fh,Qv,Bh,Zv,Ra,Rl,wl,Hh,Tn,wa,Me={AUDIO:"audio",AUTOHIDE:"autohide",BREAKPOINTS:"breakpoints",GESTURES_DISABLED:"gesturesdisabled",KEYBOARD_CONTROL:"keyboardcontrol",NO_AUTOHIDE:"noautohide",USER_INACTIVE:"userinactive"},Jv=W.createElement("template");Jv.innerHTML=`
26
+ `;var Oh=class extends k.HTMLElement{constructor(e={}){if(super(),hS(this,ri,void 0),!this.shadowRoot){let t=this.attachShadow({mode:"open"}),r=Xv.content.cloneNode(!0);this.nativeEl=r;let s=e.slotTemplate;s||(s=W.createElement("template"),s.innerHTML=`<slot>${e.defaultContent||""}</slot>`),this.nativeEl.appendChild(s.content.cloneNode(!0)),t.appendChild(r)}}static get observedAttributes(){return[ce.MEDIA_CONTROLLER,A.MEDIA_PAUSED]}attributeChangedCallback(e,t,r){var s,n,a,o,l;e===ce.MEDIA_CONTROLLER&&(t&&((n=(s=Gr(this,ri))==null?void 0:s.unassociateElement)==null||n.call(s,this),kl(this,ri,null)),r&&this.isConnected&&(kl(this,ri,(a=this.getRootNode())==null?void 0:a.getElementById(r)),(l=(o=Gr(this,ri))==null?void 0:o.associateElement)==null||l.call(o,this)))}connectedCallback(){var e,t,r,s;this.tabIndex=-1,this.setAttribute("aria-hidden","true"),kl(this,ri,fS(this)),this.getAttribute(ce.MEDIA_CONTROLLER)&&((t=(e=Gr(this,ri))==null?void 0:e.associateElement)==null||t.call(e,this)),(r=Gr(this,ri))==null||r.addEventListener("pointerdown",this),(s=Gr(this,ri))==null||s.addEventListener("click",this)}disconnectedCallback(){var e,t,r,s;this.getAttribute(ce.MEDIA_CONTROLLER)&&((t=(e=Gr(this,ri))==null?void 0:e.unassociateElement)==null||t.call(e,this)),(r=Gr(this,ri))==null||r.removeEventListener("pointerdown",this),(s=Gr(this,ri))==null||s.removeEventListener("click",this),kl(this,ri,null)}handleEvent(e){var t;let r=(t=e.composedPath())==null?void 0:t[0];if(["video","media-controller"].includes(r==null?void 0:r.localName)){if(e.type==="pointerdown")this._pointerType=e.pointerType;else if(e.type==="click"){let{clientX:n,clientY:a}=e,{left:o,top:l,width:d,height:c}=this.getBoundingClientRect(),u=n-o,h=a-l;if(u<0||h<0||u>d||h>c||d===0&&c===0)return;let{pointerType:f=this._pointerType}=e;if(this._pointerType=void 0,f===wh.TOUCH){this.handleTap(e);return}else if(f===wh.MOUSE){this.handleMouseClick(e);return}}}}get mediaPaused(){return ze(this,A.MEDIA_PAUSED)}set mediaPaused(e){Ve(this,A.MEDIA_PAUSED,e)}handleTap(e){}handleMouseClick(e){let t=this.mediaPaused?j.MEDIA_PLAY_REQUEST:j.MEDIA_PAUSE_REQUEST;this.dispatchEvent(new k.CustomEvent(t,{composed:!0,bubbles:!0}))}};ri=new WeakMap;function fS(i){var e;let t=i.getAttribute(ce.MEDIA_CONTROLLER);return t?(e=i.getRootNode())==null?void 0:e.getElementById(t):Ci(i,"media-controller")}k.customElements.get("media-gesture-receiver")||k.customElements.define("media-gesture-receiver",Oh);var mS=Object.defineProperty,pS=(i,e,t)=>e in i?mS(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,gS=(i,e,t)=>(pS(i,typeof e!="symbol"?e+"":e,t),t),$h=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},Uh=(i,e,t)=>($h(i,e,"read from private field"),t?t.call(i):e.get(i)),bs=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},Nh=(i,e,t,r)=>($h(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),Di=(i,e,t)=>($h(i,e,"access private method"),t),Ll,yn,Fh,Qv,Bh,Zv,Ra,Rl,wl,Hh,Tn,wa,Me={AUDIO:"audio",AUTOHIDE:"autohide",BREAKPOINTS:"breakpoints",GESTURES_DISABLED:"gesturesdisabled",KEYBOARD_CONTROL:"keyboardcontrol",NO_AUTOHIDE:"noautohide",USER_INACTIVE:"userinactive"},Jv=W.createElement("template");Jv.innerHTML=`
27
27
  <style>
28
28
 
29
29
  :host([${A.MEDIA_IS_FULLSCREEN}]) ::slotted([slot=media]) {
@@ -160,7 +160,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
160
160
 
161
161
  <slot part="bottom chrome"></slot>
162
162
  </span>
163
- `;var vS=Object.values(A),ES="sm:384 md:576 lg:768 xl:960";function bS(i){yS(i.target,i.contentRect.width)}function yS(i,e){var t;if(!i.isConnected)return;let r=(t=i.getAttribute(Me.BREAKPOINTS))!=null?t:ES,s=TS(r),n=_S(s,e),a=!1;if(Object.keys(s).forEach(o=>{if(n.includes(o)){i.hasAttribute(`breakpoint${o}`)||(i.setAttribute(`breakpoint${o}`,""),a=!0);return}i.hasAttribute(`breakpoint${o}`)&&(i.removeAttribute(`breakpoint${o}`),a=!0)}),a){let o=new CustomEvent(_r.BREAKPOINTS_CHANGE,{detail:n});i.dispatchEvent(o)}}function TS(i){let e=i.split(/\s+/);return Object.fromEntries(e.map(t=>t.split(":")))}function _S(i,e){return Object.keys(i).filter(t=>e>=i[t])}var Ca=class extends k.HTMLElement{constructor(){super(),bs(this,Fh),bs(this,Bh),bs(this,Ra),bs(this,wl),bs(this,Tn),bs(this,Ll,0),bs(this,yn,void 0),gS(this,"breakpointsComputed",!1),this.shadowRoot||(this.attachShadow({mode:"open"}),this.shadowRoot.appendChild(Jv.content.cloneNode(!0)));let e=a=>{let o=this.media;for(let l of a)l.type==="childList"&&(l.removedNodes.forEach(d=>{if(d.slot=="media"&&l.target==this){let c=l.previousSibling&&l.previousSibling.previousElementSibling;if(!c||!o)this.mediaUnsetCallback(d);else{let u=c.slot!=="media";for(;(c=c.previousSibling)!==null;)c.slot=="media"&&(u=!1);u&&this.mediaUnsetCallback(d)}}}),o&&l.addedNodes.forEach(d=>{d===o&&this.handleMediaUpdated(o)}))};new MutationObserver(e).observe(this,{childList:!0,subtree:!0});let r=!1;Ei(this,a=>{r||(setTimeout(()=>{bS(a),r=!1,this.breakpointsComputed||(this.breakpointsComputed=!0,this.dispatchEvent(new CustomEvent(_r.BREAKPOINTS_COMPUTED,{bubbles:!0,composed:!0})))},0),r=!0)});let n=this.querySelector(":scope > slot[slot=media]");n&&n.addEventListener("slotchange",()=>{if(!n.assignedElements({flatten:!0}).length){Uh(this,yn)&&this.mediaUnsetCallback(Uh(this,yn));return}this.handleMediaUpdated(this.media)})}static get observedAttributes(){return[Me.AUTOHIDE,Me.GESTURES_DISABLED].concat(vS).filter(e=>![A.MEDIA_RENDITION_LIST,A.MEDIA_AUDIO_TRACK_LIST,A.MEDIA_CHAPTERS_CUES].includes(e))}attributeChangedCallback(e,t,r){e.toLowerCase()==Me.AUTOHIDE&&(this.autohide=r)}get media(){let e=this.querySelector(":scope > [slot=media]");return(e==null?void 0:e.nodeName)=="SLOT"&&(e=e.assignedElements({flatten:!0})[0]),e}async handleMediaUpdated(e){e&&(Nh(this,yn,e),e.localName.includes("-")&&await k.customElements.whenDefined(e.localName),this.mediaSetCallback(e))}connectedCallback(){var e;let r=this.getAttribute(Me.AUDIO)!=null?et.AUDIO_PLAYER():et.VIDEO_PLAYER();this.setAttribute("role","region"),this.setAttribute("aria-label",r),this.handleMediaUpdated(this.media),this.setAttribute(Me.USER_INACTIVE,""),this.addEventListener("pointerdown",this),this.addEventListener("pointermove",this),this.addEventListener("pointerup",this),this.addEventListener("mouseleave",this),this.addEventListener("keyup",this),(e=k.window)==null||e.addEventListener("mouseup",this)}disconnectedCallback(){var e;this.media&&this.mediaUnsetCallback(this.media),(e=k.window)==null||e.removeEventListener("mouseup",this)}mediaSetCallback(e){}mediaUnsetCallback(e){Nh(this,yn,null)}handleEvent(e){switch(e.type){case"pointerdown":Nh(this,Ll,e.timeStamp);break;case"pointermove":Di(this,Fh,Qv).call(this,e);break;case"pointerup":Di(this,Bh,Zv).call(this,e);break;case"mouseleave":Di(this,Ra,Rl).call(this);break;case"mouseup":this.removeAttribute(Me.KEYBOARD_CONTROL);break;case"keyup":Di(this,Tn,wa).call(this),this.setAttribute(Me.KEYBOARD_CONTROL,"");break}}set autohide(e){e=Number(e),this._autohide=isNaN(e)?0:e}get autohide(){return this._autohide===void 0?2:this._autohide}};Ll=new WeakMap;yn=new WeakMap;Fh=new WeakSet;Qv=function(i){i.pointerType!=="mouse"&&i.timeStamp-Uh(this,Ll)<250||(Di(this,wl,Hh).call(this),clearTimeout(this._inactiveTimeout),[this,this.media].includes(i.target)&&Di(this,Tn,wa).call(this))};Bh=new WeakSet;Zv=function(i){if(i.pointerType==="touch"){let e=!this.hasAttribute(Me.USER_INACTIVE);[this,this.media].includes(i.target)&&e?Di(this,Ra,Rl).call(this):Di(this,Tn,wa).call(this)}else i.composedPath().some(e=>["media-play-button","media-fullscreen-button"].includes(e==null?void 0:e.localName))&&Di(this,Tn,wa).call(this)};Ra=new WeakSet;Rl=function(){if(this.autohide<0||this.hasAttribute(Me.USER_INACTIVE))return;this.setAttribute(Me.USER_INACTIVE,"");let i=new k.CustomEvent(_r.USER_INACTIVE,{composed:!0,bubbles:!0,detail:!0});this.dispatchEvent(i)};wl=new WeakSet;Hh=function(){if(!this.hasAttribute(Me.USER_INACTIVE))return;this.removeAttribute(Me.USER_INACTIVE);let i=new k.CustomEvent(_r.USER_INACTIVE,{composed:!0,bubbles:!0,detail:!1});this.dispatchEvent(i)};Tn=new WeakSet;wa=function(){Di(this,wl,Hh).call(this),clearTimeout(this._inactiveTimeout),!(this.autohide<0)&&(this._inactiveTimeout=setTimeout(()=>{Di(this,Ra,Rl).call(this)},this.autohide*1e3))};k.customElements.get("media-container")||k.customElements.define("media-container",Ca);var eE=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},wt=(i,e,t)=>(eE(i,e,"read from private field"),t?t.call(i):e.get(i)),Da=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},Cl=(i,e,t,r)=>(eE(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),_n,An,Dl,ys,Ar,Wr,bi=class{constructor(e,t,{defaultValue:r}={defaultValue:void 0}){Da(this,Ar),Da(this,_n,void 0),Da(this,An,void 0),Da(this,Dl,void 0),Da(this,ys,new Set),Cl(this,_n,e),Cl(this,An,t),Cl(this,Dl,new Set(r))}[Symbol.iterator](){return wt(this,Ar,Wr).values()}get length(){return wt(this,Ar,Wr).size}get value(){var e;return(e=[...wt(this,Ar,Wr)].join(" "))!=null?e:""}set value(e){var t;e!==this.value&&(Cl(this,ys,new Set),this.add(...(t=e==null?void 0:e.split(" "))!=null?t:[]))}toString(){return this.value}item(e){return[...wt(this,Ar,Wr)][e]}values(){return wt(this,Ar,Wr).values()}forEach(e){wt(this,Ar,Wr).forEach(e)}add(...e){var t,r;e.forEach(s=>wt(this,ys).add(s)),!(this.value===""&&!((t=wt(this,_n))!=null&&t.hasAttribute(`${wt(this,An)}`)))&&((r=wt(this,_n))==null||r.setAttribute(`${wt(this,An)}`,`${this.value}`))}remove(...e){var t;e.forEach(r=>wt(this,ys).delete(r)),(t=wt(this,_n))==null||t.setAttribute(`${wt(this,An)}`,`${this.value}`)}contains(e){return wt(this,Ar,Wr).has(e)}toggle(e,t){return typeof t!="undefined"?t?(this.add(e),!0):(this.remove(e),!1):this.contains(e)?(this.remove(e),!1):(this.add(e),!0)}replace(e,t){return this.remove(e),this.add(t),e===t}};_n=new WeakMap;An=new WeakMap;Dl=new WeakMap;ys=new WeakMap;Ar=new WeakSet;Wr=function(){return wt(this,ys).size?wt(this,ys):wt(this,Dl)};var AS=(i="")=>i.split(/\s+/),tE=(i="")=>{let[e,t,r]=i.split(":"),s=r?decodeURIComponent(r):void 0;return e=e==="cc"?"captions":"subtitles",{kind:e,language:t,label:s}},Sr=(i="",e={})=>AS(i).map(t=>{let r=tE(t);return{...e,...r}}),Gh=i=>i?Array.isArray(i)?i.map(e=>typeof e=="string"?tE(e):e):typeof i=="string"?Sr(i):[i]:[],Ts=({kind:i,label:e,language:t}={kind:"subtitles"})=>e?`${i==="captions"?"cc":"sb"}:${t}:${encodeURIComponent(e)}`:t,Mi=(i=[])=>Array.prototype.map.call(i,Ts).join(" "),SS=(i,e)=>t=>t[i]===e,iE=i=>{let e=Object.entries(i).map(([t,r])=>SS(t,r));return t=>e.every(r=>r(t))},_s=(i,e=[],t=[])=>{let r=Gh(t).map(iE),s=n=>r.some(a=>a(n));Array.from(e).filter(s).forEach(n=>{n.mode=i})},As=(i,e=()=>!0)=>{if(!(i!=null&&i.textTracks))return[];let t=typeof e=="function"?e:iE(e);return Array.from(i.textTracks).filter(t)},Ml=i=>{var e;return!!((e=i.mediaSubtitlesShowing)!=null&&e.length)||i.hasAttribute(A.MEDIA_SUBTITLES_SHOWING)};var rt={enter:"requestFullscreen",exit:"exitFullscreen",rootEvents:["fullscreenchange"],mediaEvents:[],element:"fullscreenElement",error:"fullscreenerror",enabled:"fullscreenEnabled"};W.fullscreenElement===void 0&&(rt.enter="webkitRequestFullScreen",rt.exit=W.webkitExitFullscreen!=null?"webkitExitFullscreen":"webkitCancelFullScreen",rt.rootEvents=["webkitfullscreenchange"],rt.mediaEvents=["webkitbeginfullscreen","webkitendfullscreen"],rt.element="webkitFullscreenElement",rt.error="webkitfullscreenerror",rt.enabled="webkitFullscreenEnabled");var Pl,Wh=()=>{var i,e;return Pl||(Pl=(e=(i=W)==null?void 0:i.createElement)==null?void 0:e.call(i,"video"),Pl)},rE=async(i=Wh())=>{if(!i)return!1;let e=i.volume;return i.volume=e/2+.1,await yl(0),i.volume!==e},xS=/.*Version\/.*Safari\/.*/.test(k.navigator.userAgent),Kh=(i=Wh())=>k.matchMedia("(display-mode: standalone)").matches&&xS?!1:typeof(i==null?void 0:i.requestPictureInPicture)=="function",Vh=(i=Wh())=>{let e=W[rt.enabled];return!e&&i&&(e="webkitSupportsFullscreen"in i),e},sE=Vh(),nE=Kh(),aE=!!k.WebKitPlaybackTargetAvailabilityEvent,oE=!!k.chrome;var Sn=i=>As(i.media,e=>[Ri.SUBTITLES,Ri.CAPTIONS].includes(e.kind)).sort((e,t)=>e.kind>=t.kind?1:-1),qh=i=>As(i.media,e=>e.mode===Hr.SHOWING&&[Ri.SUBTITLES,Ri.CAPTIONS].includes(e.kind)),Ol=(i,e)=>{let t=Sn(i),r=qh(i),s=!!r.length;if(t.length){if(e===!1||s&&e!==!0)_s(Hr.DISABLED,t,r);else if(e===!0||!s&&e!==!1){let n=t[0],{options:a}=i;if(!(a!=null&&a.noSubtitlesLangPref)){let c=globalThis.localStorage.getItem("media-chrome-pref-subtitles-lang"),u=c?[c,...globalThis.navigator.languages]:globalThis.navigator.languages,h=t.filter(f=>u.some(g=>f.language.toLowerCase().startsWith(g.split("-")[0]))).sort((f,g)=>{let E=u.findIndex(S=>f.language.toLowerCase().startsWith(S.split("-")[0])),y=u.findIndex(S=>g.language.toLowerCase().startsWith(S.split("-")[0]));return E-y});h[0]&&(n=h[0])}let{language:o,label:l,kind:d}=n;_s(Hr.DISABLED,t,r),_s(Hr.SHOWING,t,[{language:o,label:l,kind:d}])}}},Nl=(i,e)=>i===e?!0:typeof i!=typeof e?!1:typeof i=="number"&&Number.isNaN(i)&&Number.isNaN(e)?!0:typeof i!="object"?!1:Array.isArray(i)?IS(i,e):Object.entries(i).every(([t,r])=>t in e&&Nl(r,e[t])),IS=(i,e)=>{let t=Array.isArray(i),r=Array.isArray(e);return t!==r?!1:t||r?i.length!==e.length?!1:i.every((s,n)=>Nl(s,e[n])):!0};var kS=Object.values(wi),Ul,LS=rE().then(i=>(Ul=i,Ul)),lE=async(...i)=>{await i.filter(e=>e).forEach(async e=>{if(!("localName"in e&&e instanceof k.HTMLElement))return;let t=e.localName;if(!t.includes("-"))return;let r=k.customElements.get(t);r&&e instanceof r||(await k.customElements.whenDefined(t),k.customElements.upgrade(e))})},Ma={mediaPaused:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.paused)!=null?e:!0},set(i,e){let{media:t}=e;t&&(i?t.pause():t.play().catch(()=>{}))},mediaEvents:["play","playing","pause","emptied"]},mediaHasPlayed:{get(i,e){let{media:t}=i;return t?e?e.type==="playing":!t.paused:!1},mediaEvents:["playing","emptied"]},mediaEnded:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.ended)!=null?e:!1},mediaEvents:["seeked","ended","emptied"]},mediaPlaybackRate:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.playbackRate)!=null?e:1},set(i,e){let{media:t}=e;t&&Number.isFinite(+i)&&(t.playbackRate=+i)},mediaEvents:["ratechange","loadstart"]},mediaMuted:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.muted)!=null?e:!1},set(i,e){let{media:t}=e;t&&(t.muted=i)},mediaEvents:["volumechange"]},mediaVolume:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.volume)!=null?e:1},set(i,e){let{media:t}=e;if(t){try{i==null?k.localStorage.removeItem("media-chrome-pref-volume"):k.localStorage.setItem("media-chrome-pref-volume",i.toString())}catch{}Number.isFinite(+i)&&(t.volume=+i)}},mediaEvents:["volumechange"],stateOwnersUpdateHandlers:[(i,e)=>{let{options:{noVolumePref:t}}=e;if(!t)try{let r=k.localStorage.getItem("media-chrome-pref-volume");if(r==null)return;Ma.mediaVolume.set(+r,e),i(r)}catch(r){console.debug("Error getting volume pref",r)}}]},mediaVolumeLevel:{get(i){let{media:e}=i;return typeof(e==null?void 0:e.volume)=="undefined"?"high":e.muted||e.volume===0?"off":e.volume<.5?"low":e.volume<.75?"medium":"high"},mediaEvents:["volumechange"]},mediaCurrentTime:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.currentTime)!=null?e:0},set(i,e){let{media:t}=e;t!=null&&t.readyState&&(t.currentTime=i)},mediaEvents:["timeupdate","loadedmetadata"]},mediaDuration:{get(i){let{media:e,options:{defaultDuration:t}={}}=i;return t&&(!e||!e.duration||Number.isNaN(e.duration)||!Number.isFinite(e.duration))?t:Number.isFinite(e==null?void 0:e.duration)?e.duration:Number.NaN},mediaEvents:["durationchange","loadedmetadata","emptied"]},mediaLoading:{get(i){let{media:e}=i;return(e==null?void 0:e.readyState)<3},mediaEvents:["waiting","playing","emptied"]},mediaSeekable:{get(i){var e;let{media:t}=i;if(!((e=t==null?void 0:t.seekable)!=null&&e.length))return;let r=t.seekable.start(0),s=t.seekable.end(t.seekable.length-1);if(!(!r&&!s))return[Number(r.toFixed(3)),Number(s.toFixed(3))]},mediaEvents:["loadedmetadata","emptied","progress","seekablechange"]},mediaBuffered:{get(i){var e;let{media:t}=i,r=(e=t==null?void 0:t.buffered)!=null?e:[];return Array.from(r).map((s,n)=>[Number(r.start(n).toFixed(3)),Number(r.end(n).toFixed(3))])},mediaEvents:["progress","emptied"]},mediaStreamType:{get(i){let{media:e,options:{defaultStreamType:t}={}}=i,r=[wi.LIVE,wi.ON_DEMAND].includes(t)?t:void 0;if(!e)return r;let{streamType:s}=e;if(kS.includes(s))return s===wi.UNKNOWN?r:s;let n=e.duration;return n===1/0?wi.LIVE:Number.isFinite(n)?wi.ON_DEMAND:r},mediaEvents:["emptied","durationchange","loadedmetadata","streamtypechange"]},mediaTargetLiveWindow:{get(i){let{media:e}=i;if(!e)return Number.NaN;let{targetLiveWindow:t}=e,r=Ma.mediaStreamType.get(i);return(t==null||Number.isNaN(t))&&r===wi.LIVE?0:t},mediaEvents:["emptied","durationchange","loadedmetadata","streamtypechange","targetlivewindowchange"]},mediaTimeIsLive:{get(i){let{media:e,options:{liveEdgeOffset:t=10}={}}=i;if(!e)return!1;if(typeof e.liveEdgeStart=="number")return Number.isNaN(e.liveEdgeStart)?!1:e.currentTime>=e.liveEdgeStart;if(!(Ma.mediaStreamType.get(i)===wi.LIVE))return!1;let s=e.seekable;if(!s)return!0;if(!s.length)return!1;let n=s.end(s.length-1)-t;return e.currentTime>=n},mediaEvents:["playing","timeupdate","progress","waiting","emptied"]},mediaSubtitlesList:{get(i){return Sn(i).map(({kind:e,label:t,language:r})=>({kind:e,label:t,language:r}))},mediaEvents:["loadstart"],textTracksEvents:["addtrack","removetrack"]},mediaSubtitlesShowing:{get(i){return qh(i).map(({kind:e,label:t,language:r})=>({kind:e,label:t,language:r}))},mediaEvents:["loadstart"],textTracksEvents:["addtrack","removetrack","change"],stateOwnersUpdateHandlers:[(i,e)=>{var t,r;let{media:s,options:n}=e;if(!s)return;let a=o=>{var l;!n.defaultSubtitles||o&&![Ri.CAPTIONS,Ri.SUBTITLES].includes((l=o==null?void 0:o.track)==null?void 0:l.kind)||Ol(e,!0)};return(t=s.textTracks)==null||t.addEventListener("addtrack",a),(r=s.textTracks)==null||r.addEventListener("removetrack",a),a(),()=>{var o,l;(o=s.textTracks)==null||o.removeEventListener("addtrack",a),(l=s.textTracks)==null||l.removeEventListener("removetrack",a)}}]},mediaChaptersCues:{get(i){var e;let{media:t}=i;if(!t)return[];let[r]=As(t,{kind:Ri.CHAPTERS});return Array.from((e=r==null?void 0:r.cues)!=null?e:[]).map(({text:s,startTime:n,endTime:a})=>({text:s,startTime:n,endTime:a}))},mediaEvents:["loadstart","loadedmetadata"],textTracksEvents:["addtrack","removetrack","change"],stateOwnersUpdateHandlers:[(i,e)=>{let{media:t}=e;if(!t)return;let r=t.querySelector('track[kind="chapters"][default][src]');return r==null||r.addEventListener("load",i),()=>{r==null||r.removeEventListener("load",i)}}]},mediaIsPip:{get(i){var e,t;let{media:r,documentElement:s}=i;if(!r||!s||!s.pictureInPictureElement)return!1;if(s.pictureInPictureElement===r)return!0;if(s.pictureInPictureElement instanceof HTMLMediaElement)return(e=r.localName)!=null&&e.includes("-")?Gt(r,s.pictureInPictureElement):!1;if(s.pictureInPictureElement.localName.includes("-")){let n=s.pictureInPictureElement.shadowRoot;for(;n!=null&&n.pictureInPictureElement;){if(n.pictureInPictureElement===r)return!0;n=(t=n.pictureInPictureElement)==null?void 0:t.shadowRoot}}return!1},set(i,e){let{media:t}=e;if(t)if(i){if(!W.pictureInPictureEnabled){console.warn("MediaChrome: Picture-in-picture is not enabled");return}if(!t.requestPictureInPicture){console.warn("MediaChrome: The current media does not support picture-in-picture");return}let r=()=>{console.warn("MediaChrome: The media is not ready for picture-in-picture. It must have a readyState > 0.")};t.requestPictureInPicture().catch(s=>{if(s.code===11){if(!t.src){console.warn("MediaChrome: The media is not ready for picture-in-picture. It must have a src set.");return}if(t.readyState===0&&t.preload==="none"){let n=()=>{t.removeEventListener("loadedmetadata",a),t.preload="none"},a=()=>{t.requestPictureInPicture().catch(r),n()};t.addEventListener("loadedmetadata",a),t.preload="metadata",setTimeout(()=>{t.readyState===0&&r(),n()},1e3)}else throw s}else throw s})}else W.pictureInPictureElement&&W.exitPictureInPicture()},mediaEvents:["enterpictureinpicture","leavepictureinpicture"]},mediaRenditionList:{get(i){var e;let{media:t}=i;return[...(e=t==null?void 0:t.videoRenditions)!=null?e:[]].map(r=>({...r}))},mediaEvents:["emptied","loadstart"],videoRenditionsEvents:["addrendition","removerendition"]},mediaRenditionSelected:{get(i){var e,t,r;let{media:s}=i;return(r=(t=s==null?void 0:s.videoRenditions)==null?void 0:t[(e=s.videoRenditions)==null?void 0:e.selectedIndex])==null?void 0:r.id},set(i,e){let{media:t}=e;if(!(t!=null&&t.videoRenditions)){console.warn("MediaController: Rendition selection not supported by this media.");return}let r=i,s=Array.prototype.findIndex.call(t.videoRenditions,n=>n.id==r);t.videoRenditions.selectedIndex!=s&&(t.videoRenditions.selectedIndex=s)},mediaEvents:["emptied"],videoRenditionsEvents:["addrendition","removerendition","change"]},mediaAudioTrackList:{get(i){var e;let{media:t}=i;return[...(e=t==null?void 0:t.audioTracks)!=null?e:[]]},mediaEvents:["emptied","loadstart"],audioTracksEvents:["addtrack","removetrack"]},mediaAudioTrackEnabled:{get(i){var e,t;let{media:r}=i;return(t=[...(e=r==null?void 0:r.audioTracks)!=null?e:[]].find(s=>s.enabled))==null?void 0:t.id},set(i,e){let{media:t}=e;if(!(t!=null&&t.audioTracks)){console.warn("MediaChrome: Audio track selection not supported by this media.");return}let r=i;for(let s of t.audioTracks)s.enabled=r==s.id},mediaEvents:["emptied"],audioTracksEvents:["addtrack","removetrack","change"]},mediaIsFullscreen:{get(i){var e;let{media:t,documentElement:r,fullscreenElement:s=t}=i;if(!t||!r)return!1;if(!r[rt.element])return"webkitDisplayingFullscreen"in t&&"webkitPresentationMode"in t?t.webkitDisplayingFullscreen&&t.webkitPresentationMode===Nv.FULLSCREEN:!1;if(r[rt.element]===s)return!0;if(r[rt.element].localName.includes("-")){let n=r[rt.element].shadowRoot;if(!(rt.element in n))return Gt(r[rt.element],s);for(;n!=null&&n[rt.element];){if(n[rt.element]===s)return!0;n=(e=n[rt.element])==null?void 0:e.shadowRoot}}return!1},set(i,e){var t,r;let{media:s,fullscreenElement:n,documentElement:a}=e;if(!i&&(a!=null&&a[rt.exit])){let o=(t=a==null?void 0:a[rt.exit])==null?void 0:t.call(a);o instanceof Promise&&o.catch(()=>{});return}if(n!=null&&n[rt.enter]){let o=(r=n[rt.enter])==null?void 0:r.call(n);o instanceof Promise&&o.catch(()=>{})}else s!=null&&s.webkitEnterFullscreen?s.webkitEnterFullscreen():s!=null&&s.requestFullscreen&&s.requestFullscreen()},rootEvents:rt.rootEvents,mediaEvents:rt.mediaEvents},mediaIsCasting:{get(i){var e;let{media:t}=i;return!(t!=null&&t.remote)||((e=t.remote)==null?void 0:e.state)==="disconnected"?!1:!!t.remote.state},set(i,e){var t,r;let{media:s}=e;if(s&&!(i&&((t=s.remote)==null?void 0:t.state)!=="disconnected")&&!(!i&&((r=s.remote)==null?void 0:r.state)!=="connected")){if(typeof s.remote.prompt!="function"){console.warn("MediaChrome: Casting is not supported in this environment");return}s.remote.prompt().catch(()=>{})}},remoteEvents:["connect","connecting","disconnect"]},mediaIsAirplaying:{get(){return!1},set(i,e){let{media:t}=e;if(t){if(!(t.webkitShowPlaybackTargetPicker&&k.WebKitPlaybackTargetAvailabilityEvent)){console.warn("MediaChrome: received a request to select AirPlay but AirPlay is not supported in this environment");return}t.webkitShowPlaybackTargetPicker()}},mediaEvents:["webkitcurrentplaybacktargetiswirelesschanged"]},mediaFullscreenUnavailable:{get(i){let{media:e}=i;if(!sE||!Vh(e))return ci.UNSUPPORTED}},mediaPipUnavailable:{get(i){let{media:e}=i;if(!nE||!Kh(e))return ci.UNSUPPORTED}},mediaVolumeUnavailable:{get(i){let{media:e}=i;if(Ul===!1||(e==null?void 0:e.volume)==null)return ci.UNSUPPORTED},stateOwnersUpdateHandlers:[i=>{Ul==null&&LS.then(e=>i(e?void 0:ci.UNSUPPORTED))}]},mediaCastUnavailable:{get(i,{availability:e="not-available"}={}){var t;let{media:r}=i;if(!oE||!((t=r==null?void 0:r.remote)!=null&&t.state))return ci.UNSUPPORTED;if(!(e==null||e==="available"))return ci.UNAVAILABLE},stateOwnersUpdateHandlers:[(i,e)=>{var t;let{media:r}=e;return r?(r.disableRemotePlayback||r.hasAttribute("disableremoteplayback")||(t=r==null?void 0:r.remote)==null||t.watchAvailability(n=>{i({availability:n?"available":"not-available"})}).catch(n=>{n.name==="NotSupportedError"?i({availability:null}):i({availability:"not-available"})}),()=>{var n;(n=r==null?void 0:r.remote)==null||n.cancelWatchAvailability()}):void 0}]},mediaAirplayUnavailable:{get(i,e){if(!aE)return ci.UNSUPPORTED;if((e==null?void 0:e.availability)==="not-available")return ci.UNAVAILABLE},mediaEvents:["webkitplaybacktargetavailabilitychanged"],stateOwnersUpdateHandlers:[(i,e)=>{var t;let{media:r}=e;return r?(r.disableRemotePlayback||r.hasAttribute("disableremoteplayback")||(t=r==null?void 0:r.remote)==null||t.watchAvailability(n=>{i({availability:n?"available":"not-available"})}).catch(n=>{n.name==="NotSupportedError"?i({availability:null}):i({availability:"not-available"})}),()=>{var n;(n=r==null?void 0:r.remote)==null||n.cancelWatchAvailability()}):void 0}]},mediaRenditionUnavailable:{get(i){var e;let{media:t}=i;if(!(t!=null&&t.videoRenditions))return ci.UNSUPPORTED;if(!((e=t.videoRenditions)!=null&&e.length))return ci.UNAVAILABLE},mediaEvents:["emptied","loadstart"],videoRenditionsEvents:["addrendition","removerendition"]},mediaAudioTrackUnavailable:{get(i){var e,t;let{media:r}=i;if(!(r!=null&&r.audioTracks))return ci.UNSUPPORTED;if(((t=(e=r.audioTracks)==null?void 0:e.length)!=null?t:0)<=1)return ci.UNAVAILABLE},mediaEvents:["emptied","loadstart"],audioTracksEvents:["addtrack","removetrack"]}};var dE={[j.MEDIA_PREVIEW_REQUEST](i,e,{detail:t}){var r,s,n;let{media:a}=e,o=t!=null?t:void 0,l,d;if(a&&o!=null){let[f]=As(a,{kind:Ri.METADATA,label:"thumbnails"}),g=Array.prototype.find.call((r=f==null?void 0:f.cues)!=null?r:[],(E,y,S)=>y===0?E.endTime>o:y===S.length-1?E.startTime<=o:E.startTime<=o&&E.endTime>o);if(g){let E=/'^(?:[a-z]+:)?\/\//i.test(g.text)||(s=a==null?void 0:a.querySelector('track[label="thumbnails"]'))==null?void 0:s.src,y=new URL(g.text,E);d=new URLSearchParams(y.hash).get("#xywh").split(","),l=y.href}}let c=i.mediaDuration.get(e),h=(n=i.mediaChaptersCues.get(e).find((f,g,E)=>g===E.length-1&&c===f.endTime?f.startTime<=o&&f.endTime>=o:f.startTime<=o&&f.endTime>o))==null?void 0:n.text;return t!=null&&h==null&&(h=""),{mediaPreviewTime:o,mediaPreviewImage:l,mediaPreviewCoords:d,mediaPreviewChapter:h}},[j.MEDIA_PAUSE_REQUEST](i,e){i["mediaPaused"].set(!0,e)},[j.MEDIA_PLAY_REQUEST](i,e){var t;let r="mediaPaused";if(i.mediaStreamType.get(e)===wi.LIVE){let a=!(i.mediaTargetLiveWindow.get(e)>0),o=(t=i.mediaSeekable.get(e))==null?void 0:t[1];a&&o&&i.mediaCurrentTime.set(o,e)}i[r].set(!1,e)},[j.MEDIA_PLAYBACK_RATE_REQUEST](i,e,{detail:t}){let r="mediaPlaybackRate",s=t;i[r].set(s,e)},[j.MEDIA_MUTE_REQUEST](i,e){i["mediaMuted"].set(!0,e)},[j.MEDIA_UNMUTE_REQUEST](i,e){let t="mediaMuted";i.mediaVolume.get(e)||i.mediaVolume.set(.25,e),i[t].set(!1,e)},[j.MEDIA_VOLUME_REQUEST](i,e,{detail:t}){let r="mediaVolume",s=t;s&&i.mediaMuted.get(e)&&i.mediaMuted.set(!1,e),i[r].set(s,e)},[j.MEDIA_SEEK_REQUEST](i,e,{detail:t}){let r="mediaCurrentTime",s=t;i[r].set(s,e)},[j.MEDIA_SEEK_TO_LIVE_REQUEST](i,e){var t;let r="mediaCurrentTime",s=(t=i.mediaSeekable.get(e))==null?void 0:t[1];Number.isNaN(Number(s))&&i[r].set(s,e)},[j.MEDIA_SHOW_SUBTITLES_REQUEST](i,e,{detail:t}){var r;let{options:s}=e,n=Sn(e),a=Gh(t),o=(r=a[0])==null?void 0:r.language;o&&!s.noSubtitlesLangPref&&k.localStorage.setItem("media-chrome-pref-subtitles-lang",o),_s(Hr.SHOWING,n,a)},[j.MEDIA_DISABLE_SUBTITLES_REQUEST](i,e,{detail:t}){let r=Sn(e),s=t!=null?t:[];_s(Hr.DISABLED,r,s)},[j.MEDIA_TOGGLE_SUBTITLES_REQUEST](i,e,{detail:t}){Ol(e,t)},[j.MEDIA_RENDITION_REQUEST](i,e,{detail:t}){let r="mediaRenditionSelected",s=t;i[r].set(s,e)},[j.MEDIA_AUDIO_TRACK_REQUEST](i,e,{detail:t}){let r="mediaAudioTrackEnabled",s=t;i[r].set(s,e)},[j.MEDIA_ENTER_PIP_REQUEST](i,e){let t="mediaIsPip";i.mediaIsFullscreen.get(e)&&i.mediaIsFullscreen.set(!1,e),i[t].set(!0,e)},[j.MEDIA_EXIT_PIP_REQUEST](i,e){i["mediaIsPip"].set(!1,e)},[j.MEDIA_ENTER_FULLSCREEN_REQUEST](i,e){let t="mediaIsFullscreen";i.mediaIsPip.get(e)&&i.mediaIsPip.set(!1,e),i[t].set(!0,e)},[j.MEDIA_EXIT_FULLSCREEN_REQUEST](i,e){i["mediaIsFullscreen"].set(!1,e)},[j.MEDIA_ENTER_CAST_REQUEST](i,e){let t="mediaIsCasting";i.mediaIsFullscreen.get(e)&&i.mediaIsFullscreen.set(!1,e),i[t].set(!0,e)},[j.MEDIA_EXIT_CAST_REQUEST](i,e){i["mediaIsCasting"].set(!1,e)},[j.MEDIA_AIRPLAY_REQUEST](i,e){i["mediaIsAirplaying"].set(!0,e)}};var RS=({media:i,fullscreenElement:e,documentElement:t,stateMediator:r=Ma,requestMap:s=dE,options:n={},monitorStateOwnersOnlyWithSubscriptions:a=!0})=>{let o=[],l={options:{...n}},d=Object.freeze({mediaPreviewTime:void 0,mediaPreviewImage:void 0,mediaPreviewCoords:void 0,mediaPreviewChapter:void 0}),c=E=>{E!=null&&(Nl(E,d)||(d=Object.freeze({...d,...E}),o.forEach(y=>y(d))))},u=()=>{let E=Object.entries(r).reduce((y,[S,{get:w}])=>(y[S]=w(l),y),{});c(E)},h={},f,g=async(E,y)=>{var S,w,L,F,R,B,P,$,K,N,z,Y,ge,me,Ee,De;let Le=!!f;if(f={...l,...f!=null?f:{},...E},Le)return;await lE(...Object.values(E));let Z=o.length>0&&y===0&&a,te=l.media!==f.media,ie=((S=l.media)==null?void 0:S.textTracks)!==((w=f.media)==null?void 0:w.textTracks),_e=((L=l.media)==null?void 0:L.videoRenditions)!==((F=f.media)==null?void 0:F.videoRenditions),Ae=((R=l.media)==null?void 0:R.audioTracks)!==((B=f.media)==null?void 0:B.audioTracks),Je=((P=l.media)==null?void 0:P.remote)!==(($=f.media)==null?void 0:$.remote),Pt=l.documentElement!==f.documentElement,Ot=!!l.media&&(te||Z),kt=!!((K=l.media)!=null&&K.textTracks)&&(ie||Z),mi=!!((N=l.media)!=null&&N.videoRenditions)&&(_e||Z),Nr=!!((z=l.media)!=null&&z.audioTracks)&&(Ae||Z),ma=!!((Y=l.media)!=null&&Y.remote)&&(Je||Z),al=!!l.documentElement&&(Pt||Z),pa=Ot||kt||mi||Nr||ma||al,Ur=o.length===0&&y===1&&a,ol=!!f.media&&(te||Ur),ga=!!((ge=f.media)!=null&&ge.textTracks)&&(ie||Ur),ll=!!((me=f.media)!=null&&me.videoRenditions)&&(_e||Ur),va=!!((Ee=f.media)!=null&&Ee.audioTracks)&&(Ae||Ur),dl=!!((De=f.media)!=null&&De.remote)&&(Je||Ur),Ea=!!f.documentElement&&(Pt||Ur),cl=ol||ga||ll||va||dl||Ea;if(!(pa||cl)){Object.entries(f).forEach(([je,Fr])=>{l[je]=Fr}),u(),f=void 0;return}Object.entries(r).forEach(([je,{get:Fr,mediaEvents:mh=[],textTracksEvents:ul=[],videoRenditionsEvents:ph=[],audioTracksEvents:gh=[],remoteEvents:hl=[],rootEvents:vh=[],stateOwnersUpdateHandlers:fl=[]}])=>{h[je]||(h[je]={});let zt=ot=>{let Xt=Fr(l,ot);c({[je]:Xt})},yt;yt=h[je].mediaEvents,mh.forEach(ot=>{yt&&Ot&&(l.media.removeEventListener(ot,yt),h[je].mediaEvents=void 0),ol&&(f.media.addEventListener(ot,zt),h[je].mediaEvents=zt)}),yt=h[je].textTracksEvents,ul.forEach(ot=>{var Xt,ti;yt&&kt&&((Xt=l.media.textTracks)==null||Xt.removeEventListener(ot,yt),h[je].textTracksEvents=void 0),ga&&((ti=f.media.textTracks)==null||ti.addEventListener(ot,zt),h[je].textTracksEvents=zt)}),yt=h[je].videoRenditionsEvents,ph.forEach(ot=>{var Xt,ti;yt&&mi&&((Xt=l.media.videoRenditions)==null||Xt.removeEventListener(ot,yt),h[je].videoRenditionsEvents=void 0),ll&&((ti=f.media.videoRenditions)==null||ti.addEventListener(ot,zt),h[je].videoRenditionsEvents=zt)}),yt=h[je].audioTracksEvents,gh.forEach(ot=>{var Xt,ti;yt&&Nr&&((Xt=l.media.audioTracks)==null||Xt.removeEventListener(ot,yt),h[je].audioTracksEvents=void 0),va&&((ti=f.media.audioTracks)==null||ti.addEventListener(ot,zt),h[je].audioTracksEvents=zt)}),yt=h[je].remoteEvents,hl.forEach(ot=>{var Xt,ti;yt&&ma&&((Xt=l.media.remote)==null||Xt.removeEventListener(ot,yt),h[je].remoteEvents=void 0),dl&&((ti=f.media.remote)==null||ti.addEventListener(ot,zt),h[je].remoteEvents=zt)}),yt=h[je].rootEvents,vh.forEach(ot=>{yt&&al&&(l.documentElement.removeEventListener(ot,yt),h[je].rootEvents=void 0),Ea&&(f.documentElement.addEventListener(ot,zt),h[je].rootEvents=zt)});let ba=h[je].stateOwnersUpdateHandlers;fl.forEach(ot=>{ba&&pa&&ba(),cl&&(h[je].stateOwnersUpdateHandlers=ot(zt,f))})}),Object.entries(f).forEach(([je,Fr])=>{l[je]=Fr}),u(),f=void 0};return g({media:i,fullscreenElement:e,documentElement:t,options:n}),{dispatch(E){let{type:y,detail:S}=E;if(s[y]){c(s[y](r,l,E));return}y==="mediaelementchangerequest"?g({media:S}):y==="fullscreenelementchangerequest"?g({fullscreenElement:S}):y==="documentelementchangerequest"?g({documentElement:S}):y==="optionschangerequest"&&Object.entries(S!=null?S:{}).forEach(([w,L])=>{l.options[w]=L})},getState(){return d},subscribe(E){return g({},o.length+1),o.push(E),E(d),()=>{let y=o.indexOf(E);y>=0&&(g({},o.length-1),o.splice(y,1))}}}},cE=RS;var Xh=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},Ce=(i,e,t)=>(Xh(i,e,"read from private field"),t?t.call(i):e.get(i)),xr=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},Kr=(i,e,t,r)=>(Xh(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),Vr=(i,e,t)=>(Xh(i,e,"access private method"),t),qr,Pa,st,Oa,zi,Fl,Bl,Yh,xn,Na,$l,jh,pE=["ArrowLeft","ArrowRight","Enter"," ","f","m","k","c"],uE=10,Pe={DEFAULT_SUBTITLES:"defaultsubtitles",DEFAULT_STREAM_TYPE:"defaultstreamtype",DEFAULT_DURATION:"defaultduration",FULLSCREEN_ELEMENT:"fullscreenelement",HOTKEYS:"hotkeys",KEYS_USED:"keysused",LIVE_EDGE_OFFSET:"liveedgeoffset",NO_AUTO_SEEK_TO_LIVE:"noautoseektolive",NO_HOTKEYS:"nohotkeys",NO_VOLUME_PREF:"novolumepref",NO_SUBTITLES_LANG_PREF:"nosubtitleslangpref",NO_DEFAULT_STORE:"nodefaultstore",KEYBOARD_FORWARD_SEEK_OFFSET:"keyboardforwardseekoffset",KEYBOARD_BACKWARD_SEEK_OFFSET:"keyboardbackwardseekoffset"},Hl=class extends Ca{constructor(){super(),xr(this,Bl),xr(this,xn),xr(this,$l),xr(this,qr,new bi(this,Pe.HOTKEYS)),xr(this,Pa,void 0),xr(this,st,void 0),xr(this,Oa,void 0),xr(this,zi,void 0),xr(this,Fl,t=>{var r;(r=Ce(this,st))==null||r.dispatch(t)}),this.mediaStateReceivers=[],this.associatedElementSubscriptions=new Map,this.associateElement(this);let e={};Kr(this,Oa,t=>{Object.entries(t).forEach(([r,s])=>{if(r in e&&e[r]===s)return;this.propagateMediaState(r,s);let n=r.toLowerCase(),a=new k.CustomEvent(Ov[n],{composed:!0,detail:s});this.dispatchEvent(a)}),e=t}),this.enableHotkeys()}static get observedAttributes(){return super.observedAttributes.concat(Pe.NO_HOTKEYS,Pe.HOTKEYS,Pe.DEFAULT_STREAM_TYPE,Pe.DEFAULT_SUBTITLES,Pe.DEFAULT_DURATION)}get mediaStore(){return Ce(this,st)}set mediaStore(e){var t,r;if(Ce(this,st)&&((t=Ce(this,zi))==null||t.call(this),Kr(this,zi,void 0)),Kr(this,st,e),!Ce(this,st)&&!this.hasAttribute(Pe.NO_DEFAULT_STORE)){Vr(this,Bl,Yh).call(this);return}Kr(this,zi,(r=Ce(this,st))==null?void 0:r.subscribe(Ce(this,Oa)))}get fullscreenElement(){var e;return(e=Ce(this,Pa))!=null?e:this}set fullscreenElement(e){var t;this.hasAttribute(Pe.FULLSCREEN_ELEMENT)&&this.removeAttribute(Pe.FULLSCREEN_ELEMENT),Kr(this,Pa,e),(t=Ce(this,st))==null||t.dispatch({type:"fullscreenelementchangerequest",detail:this.fullscreenElement})}attributeChangedCallback(e,t,r){var s,n,a,o,l,d;if(super.attributeChangedCallback(e,t,r),e===Pe.NO_HOTKEYS)r!==t&&r===""?(this.hasAttribute(Pe.HOTKEYS)&&console.warn("Media Chrome: Both `hotkeys` and `nohotkeys` have been set. All hotkeys will be disabled."),this.disableHotkeys()):r!==t&&r===null&&this.enableHotkeys();else if(e===Pe.HOTKEYS)Ce(this,qr).value=r;else if(e===Pe.DEFAULT_SUBTITLES&&r!==t)(s=Ce(this,st))==null||s.dispatch({type:"optionschangerequest",detail:{defaultSubtitles:this.hasAttribute(Pe.DEFAULT_SUBTITLES)}});else if(e===Pe.DEFAULT_STREAM_TYPE)(a=Ce(this,st))==null||a.dispatch({type:"optionschangerequest",detail:{defaultStreamType:(n=this.getAttribute(Pe.DEFAULT_STREAM_TYPE))!=null?n:void 0}});else if(e===Pe.LIVE_EDGE_OFFSET)(o=Ce(this,st))==null||o.dispatch({type:"optionschangerequest",detail:{liveEdgeOffset:this.hasAttribute(Pe.LIVE_EDGE_OFFSET)?+this.getAttribute(Pe.LIVE_EDGE_OFFSET):void 0}});else if(e===Pe.FULLSCREEN_ELEMENT){let c=r?(l=this.getRootNode())==null?void 0:l.getElementById(r):void 0;Kr(this,Pa,c),(d=Ce(this,st))==null||d.dispatch({type:"fullscreenelementchangerequest",detail:this.fullscreenElement})}}connectedCallback(){var e,t;!Ce(this,st)&&!this.hasAttribute(Pe.NO_DEFAULT_STORE)&&Vr(this,Bl,Yh).call(this),(e=Ce(this,st))==null||e.dispatch({type:"documentelementchangerequest",detail:W}),super.connectedCallback(),Ce(this,st)&&!Ce(this,zi)&&Kr(this,zi,(t=Ce(this,st))==null?void 0:t.subscribe(Ce(this,Oa))),this.enableHotkeys()}disconnectedCallback(){var e,t,r,s;(e=super.disconnectedCallback)==null||e.call(this),Ce(this,st)&&((t=Ce(this,st))==null||t.dispatch({type:"documentelementchangerequest",detail:void 0}),(r=Ce(this,st))==null||r.dispatch({type:j.MEDIA_TOGGLE_SUBTITLES_REQUEST,detail:!1})),Ce(this,zi)&&((s=Ce(this,zi))==null||s.call(this),Kr(this,zi,void 0))}mediaSetCallback(e){var t;super.mediaSetCallback(e),(t=Ce(this,st))==null||t.dispatch({type:"mediaelementchangerequest",detail:e}),e.hasAttribute("tabindex")||(e.tabIndex=-1)}mediaUnsetCallback(e){var t;super.mediaUnsetCallback(e),(t=Ce(this,st))==null||t.dispatch({type:"mediaelementchangerequest",detail:void 0})}propagateMediaState(e,t){mE(this.mediaStateReceivers,e,t)}associateElement(e){if(!e)return;let{associatedElementSubscriptions:t}=this;if(t.has(e))return;let r=this.registerMediaStateReceiver.bind(this),s=this.unregisterMediaStateReceiver.bind(this),n=OS(e,r,s);Object.values(j).forEach(a=>{e.addEventListener(a,Ce(this,Fl))}),t.set(e,n)}unassociateElement(e){if(!e)return;let{associatedElementSubscriptions:t}=this;if(!t.has(e))return;t.get(e)(),t.delete(e),Object.values(j).forEach(s=>{e.removeEventListener(s,Ce(this,Fl))})}registerMediaStateReceiver(e){if(!e)return;let t=this.mediaStateReceivers;t.indexOf(e)>-1||(t.push(e),Ce(this,st)&&Object.entries(Ce(this,st).getState()).forEach(([s,n])=>{mE([e],s,n)}))}unregisterMediaStateReceiver(e){let t=this.mediaStateReceivers,r=t.indexOf(e);r<0||t.splice(r,1)}enableHotkeys(){this.addEventListener("keydown",Vr(this,$l,jh))}disableHotkeys(){this.removeEventListener("keydown",Vr(this,$l,jh)),this.removeEventListener("keyup",Vr(this,xn,Na))}get hotkeys(){return Ce(this,qr)}keyboardShortcutHandler(e){var t,r,s,n,a,o;if(((n=(s=(t=e.target.getAttribute(Pe.KEYS_USED))==null?void 0:t.split(" "))!=null?s:(r=e.target)==null?void 0:r.keysUsed)!=null?n:[]).map(h=>h==="Space"?" ":h).filter(Boolean).includes(e.key))return;let d,c,u;if(!Ce(this,qr).contains(`no${e.key.toLowerCase()}`)&&!(e.key===" "&&Ce(this,qr).contains("nospace")))switch(e.key){case" ":case"k":d=Ce(this,st).getState().mediaPaused?j.MEDIA_PLAY_REQUEST:j.MEDIA_PAUSE_REQUEST,this.dispatchEvent(new k.CustomEvent(d,{composed:!0,bubbles:!0}));break;case"m":d=this.mediaStore.getState().mediaVolumeLevel==="off"?j.MEDIA_UNMUTE_REQUEST:j.MEDIA_MUTE_REQUEST,this.dispatchEvent(new k.CustomEvent(d,{composed:!0,bubbles:!0}));break;case"f":d=this.mediaStore.getState().mediaIsFullscreen?j.MEDIA_EXIT_FULLSCREEN_REQUEST:j.MEDIA_ENTER_FULLSCREEN_REQUEST,this.dispatchEvent(new k.CustomEvent(d,{composed:!0,bubbles:!0}));break;case"c":this.dispatchEvent(new k.CustomEvent(j.MEDIA_TOGGLE_SUBTITLES_REQUEST,{composed:!0,bubbles:!0}));break;case"ArrowLeft":{let h=this.hasAttribute(Pe.KEYBOARD_BACKWARD_SEEK_OFFSET)?+this.getAttribute(Pe.KEYBOARD_BACKWARD_SEEK_OFFSET):uE;c=Math.max(((a=this.mediaStore.getState().mediaCurrentTime)!=null?a:0)-h,0),u=new k.CustomEvent(j.MEDIA_SEEK_REQUEST,{composed:!0,bubbles:!0,detail:c}),this.dispatchEvent(u);break}case"ArrowRight":{let h=this.hasAttribute(Pe.KEYBOARD_FORWARD_SEEK_OFFSET)?+this.getAttribute(Pe.KEYBOARD_FORWARD_SEEK_OFFSET):uE;c=Math.max(((o=this.mediaStore.getState().mediaCurrentTime)!=null?o:0)+h,0),u=new k.CustomEvent(j.MEDIA_SEEK_REQUEST,{composed:!0,bubbles:!0,detail:c}),this.dispatchEvent(u);break}default:break}}};qr=new WeakMap;Pa=new WeakMap;st=new WeakMap;Oa=new WeakMap;zi=new WeakMap;Fl=new WeakMap;Bl=new WeakSet;Yh=function(){var i;this.mediaStore=cE({media:this.media,fullscreenElement:this.fullscreenElement,options:{defaultSubtitles:this.hasAttribute(Pe.DEFAULT_SUBTITLES),defaultDuration:this.hasAttribute(Pe.DEFAULT_DURATION)?+this.getAttribute(Pe.DEFAULT_DURATION):void 0,defaultStreamType:(i=this.getAttribute(Pe.DEFAULT_STREAM_TYPE))!=null?i:void 0,liveEdgeOffset:this.hasAttribute(Pe.LIVE_EDGE_OFFSET)?+this.getAttribute(Pe.LIVE_EDGE_OFFSET):void 0,noVolumePref:this.hasAttribute(Pe.NO_VOLUME_PREF),noSubtitlesLangPref:this.hasAttribute(Pe.NO_SUBTITLES_LANG_PREF)}})};xn=new WeakSet;Na=function(i){let{key:e}=i;if(!pE.includes(e)){this.removeEventListener("keyup",Vr(this,xn,Na));return}this.keyboardShortcutHandler(i)};$l=new WeakSet;jh=function(i){let{metaKey:e,altKey:t,key:r}=i;if(e||t||!pE.includes(r)){this.removeEventListener("keyup",Vr(this,xn,Na));return}[" ","ArrowLeft","ArrowRight"].includes(r)&&!(Ce(this,qr).contains(`no${r.toLowerCase()}`)||r===" "&&Ce(this,qr).contains("nospace"))&&i.preventDefault(),this.addEventListener("keyup",Vr(this,xn,Na),{once:!0})};var wS=Object.values(A),CS=Object.values(Rh),gE=i=>{var e,t,r,s;let{observedAttributes:n}=i.constructor;!n&&((e=i.nodeName)!=null&&e.includes("-"))&&(k.customElements.upgrade(i),{observedAttributes:n}=i.constructor);let a=(s=(r=(t=i==null?void 0:i.getAttribute)==null?void 0:t.call(i,ce.MEDIA_CHROME_ATTRIBUTES))==null?void 0:r.split)==null?void 0:s.call(r,/\s+/);return Array.isArray(n||a)?(n||a).filter(o=>wS.includes(o)):[]},DS=i=>{var e,t;return(e=i.nodeName)!=null&&e.includes("-")&&k.customElements.get((t=i.nodeName)==null?void 0:t.toLowerCase())&&!(i instanceof k.customElements.get(i.nodeName.toLowerCase()))&&k.customElements.upgrade(i),CS.some(r=>r in i)},zh=i=>DS(i)||!!gE(i).length,hE=i=>{var e;return(e=i==null?void 0:i.join)==null?void 0:e.call(i,":")},fE={[A.MEDIA_SUBTITLES_LIST]:Mi,[A.MEDIA_SUBTITLES_SHOWING]:Mi,[A.MEDIA_SEEKABLE]:hE,[A.MEDIA_BUFFERED]:i=>i==null?void 0:i.map(hE).join(" "),[A.MEDIA_PREVIEW_COORDS]:i=>i==null?void 0:i.join(" "),[A.MEDIA_RENDITION_LIST]:Uv,[A.MEDIA_AUDIO_TRACK_LIST]:Fv},MS=async(i,e,t)=>{var r,s;if(i.isConnected||await yl(0),typeof t=="boolean"||t==null)return Ve(i,e,t);if(typeof t=="number")return Ke(i,e,t);if(typeof t=="string")return Ie(i,e,t);if(Array.isArray(t)&&!t.length)return i.removeAttribute(e);let n=(s=(r=fE[e])==null?void 0:r.call(fE,t))!=null?s:t;return i.setAttribute(e,n)},PS=i=>{var e;return!!((e=i.closest)!=null&&e.call(i,'*[slot="media"]'))},Ss=(i,e)=>{if(PS(i))return;let t=(s,n)=>{var a,o;zh(s)&&n(s);let{children:l=[]}=s!=null?s:{},d=(o=(a=s==null?void 0:s.shadowRoot)==null?void 0:a.children)!=null?o:[];[...l,...d].forEach(u=>Ss(u,n))},r=i==null?void 0:i.nodeName.toLowerCase();if(r.includes("-")&&!zh(i)){k.customElements.whenDefined(r).then(()=>{t(i,e)});return}t(i,e)},mE=(i,e,t)=>{i.forEach(r=>{if(e in r){r[e]=t;return}let s=gE(r),n=e.toLowerCase();s.includes(n)&&MS(r,n,t)})},OS=(i,e,t)=>{Ss(i,e);let r=c=>{var u;let h=(u=c==null?void 0:c.composedPath()[0])!=null?u:c.target;e(h)},s=c=>{var u;let h=(u=c==null?void 0:c.composedPath()[0])!=null?u:c.target;t(h)};i.addEventListener(j.REGISTER_MEDIA_STATE_RECEIVER,r),i.addEventListener(j.UNREGISTER_MEDIA_STATE_RECEIVER,s);let n=c=>{c.forEach(u=>{let{addedNodes:h=[],removedNodes:f=[],type:g,target:E,attributeName:y}=u;g==="childList"?(Array.prototype.forEach.call(h,S=>Ss(S,e)),Array.prototype.forEach.call(f,S=>Ss(S,t))):g==="attributes"&&y===ce.MEDIA_CHROME_ATTRIBUTES&&(zh(E)?e(E):t(E))})},a=[],o=c=>{let u=c.target;u.name!=="media"&&(a.forEach(h=>Ss(h,t)),a=[...u.assignedElements({flatten:!0})],a.forEach(h=>Ss(h,e)))};i.addEventListener("slotchange",o);let l=new MutationObserver(n);return l.observe(i,{childList:!0,attributes:!0,subtree:!0}),()=>{Ss(i,t),i.removeEventListener("slotchange",o),l.disconnect(),i.removeEventListener(j.REGISTER_MEDIA_STATE_RECEIVER,r),i.removeEventListener(j.UNREGISTER_MEDIA_STATE_RECEIVER,s)}};k.customElements.get("media-controller")||k.customElements.define("media-controller",Hl);var Qh=Hl;var NS=Object.defineProperty,US=(i,e,t)=>e in i?NS(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,FS=(i,e,t)=>(US(i,typeof e!="symbol"?e+"":e,t),t),vE=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},yi=(i,e,t)=>(vE(i,e,"read from private field"),t?t.call(i):e.get(i)),Gl=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},Wl=(i,e,t,r)=>(vE(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),Xi,Kl,In,Vl,EE=W.createElement("template");EE.innerHTML=`
163
+ `;var vS=Object.values(A),ES="sm:384 md:576 lg:768 xl:960";function bS(i){yS(i.target,i.contentRect.width)}function yS(i,e){var t;if(!i.isConnected)return;let r=(t=i.getAttribute(Me.BREAKPOINTS))!=null?t:ES,s=TS(r),n=_S(s,e),a=!1;if(Object.keys(s).forEach(o=>{if(n.includes(o)){i.hasAttribute(`breakpoint${o}`)||(i.setAttribute(`breakpoint${o}`,""),a=!0);return}i.hasAttribute(`breakpoint${o}`)&&(i.removeAttribute(`breakpoint${o}`),a=!0)}),a){let o=new CustomEvent(_r.BREAKPOINTS_CHANGE,{detail:n});i.dispatchEvent(o)}}function TS(i){let e=i.split(/\s+/);return Object.fromEntries(e.map(t=>t.split(":")))}function _S(i,e){return Object.keys(i).filter(t=>e>=i[t])}var Ca=class extends k.HTMLElement{constructor(){super(),bs(this,Fh),bs(this,Bh),bs(this,Ra),bs(this,wl),bs(this,Tn),bs(this,Ll,0),bs(this,yn,void 0),gS(this,"breakpointsComputed",!1),this.shadowRoot||(this.attachShadow({mode:"open"}),this.shadowRoot.appendChild(Jv.content.cloneNode(!0)));let e=a=>{let o=this.media;for(let l of a)l.type==="childList"&&(l.removedNodes.forEach(d=>{if(d.slot=="media"&&l.target==this){let c=l.previousSibling&&l.previousSibling.previousElementSibling;if(!c||!o)this.mediaUnsetCallback(d);else{let u=c.slot!=="media";for(;(c=c.previousSibling)!==null;)c.slot=="media"&&(u=!1);u&&this.mediaUnsetCallback(d)}}}),o&&l.addedNodes.forEach(d=>{d===o&&this.handleMediaUpdated(o)}))};new MutationObserver(e).observe(this,{childList:!0,subtree:!0});let r=!1;Ei(this,a=>{r||(setTimeout(()=>{bS(a),r=!1,this.breakpointsComputed||(this.breakpointsComputed=!0,this.dispatchEvent(new CustomEvent(_r.BREAKPOINTS_COMPUTED,{bubbles:!0,composed:!0})))},0),r=!0)});let n=this.querySelector(":scope > slot[slot=media]");n&&n.addEventListener("slotchange",()=>{if(!n.assignedElements({flatten:!0}).length){Uh(this,yn)&&this.mediaUnsetCallback(Uh(this,yn));return}this.handleMediaUpdated(this.media)})}static get observedAttributes(){return[Me.AUTOHIDE,Me.GESTURES_DISABLED].concat(vS).filter(e=>![A.MEDIA_RENDITION_LIST,A.MEDIA_AUDIO_TRACK_LIST,A.MEDIA_CHAPTERS_CUES].includes(e))}attributeChangedCallback(e,t,r){e.toLowerCase()==Me.AUTOHIDE&&(this.autohide=r)}get media(){let e=this.querySelector(":scope > [slot=media]");return(e==null?void 0:e.nodeName)=="SLOT"&&(e=e.assignedElements({flatten:!0})[0]),e}async handleMediaUpdated(e){e&&(Nh(this,yn,e),e.localName.includes("-")&&await k.customElements.whenDefined(e.localName),this.mediaSetCallback(e))}connectedCallback(){var e;let r=this.getAttribute(Me.AUDIO)!=null?et.AUDIO_PLAYER():et.VIDEO_PLAYER();this.setAttribute("role","region"),this.setAttribute("aria-label",r),this.handleMediaUpdated(this.media),this.setAttribute(Me.USER_INACTIVE,""),this.addEventListener("pointerdown",this),this.addEventListener("pointermove",this),this.addEventListener("pointerup",this),this.addEventListener("mouseleave",this),this.addEventListener("keyup",this),(e=k.window)==null||e.addEventListener("mouseup",this)}disconnectedCallback(){var e;this.media&&this.mediaUnsetCallback(this.media),(e=k.window)==null||e.removeEventListener("mouseup",this)}mediaSetCallback(e){}mediaUnsetCallback(e){Nh(this,yn,null)}handleEvent(e){switch(e.type){case"pointerdown":Nh(this,Ll,e.timeStamp);break;case"pointermove":Di(this,Fh,Qv).call(this,e);break;case"pointerup":Di(this,Bh,Zv).call(this,e);break;case"mouseleave":Di(this,Ra,Rl).call(this);break;case"mouseup":this.removeAttribute(Me.KEYBOARD_CONTROL);break;case"keyup":Di(this,Tn,wa).call(this),this.setAttribute(Me.KEYBOARD_CONTROL,"");break}}set autohide(e){e=Number(e),this._autohide=isNaN(e)?0:e}get autohide(){return this._autohide===void 0?2:this._autohide}};Ll=new WeakMap;yn=new WeakMap;Fh=new WeakSet;Qv=function(i){i.pointerType!=="mouse"&&i.timeStamp-Uh(this,Ll)<250||(Di(this,wl,Hh).call(this),clearTimeout(this._inactiveTimeout),[this,this.media].includes(i.target)&&Di(this,Tn,wa).call(this))};Bh=new WeakSet;Zv=function(i){if(i.pointerType==="touch"){let e=!this.hasAttribute(Me.USER_INACTIVE);[this,this.media].includes(i.target)&&e?Di(this,Ra,Rl).call(this):Di(this,Tn,wa).call(this)}else i.composedPath().some(e=>["media-play-button","media-fullscreen-button"].includes(e==null?void 0:e.localName))&&Di(this,Tn,wa).call(this)};Ra=new WeakSet;Rl=function(){if(this.autohide<0||this.hasAttribute(Me.USER_INACTIVE))return;this.setAttribute(Me.USER_INACTIVE,"");let i=new k.CustomEvent(_r.USER_INACTIVE,{composed:!0,bubbles:!0,detail:!0});this.dispatchEvent(i)};wl=new WeakSet;Hh=function(){if(!this.hasAttribute(Me.USER_INACTIVE))return;this.removeAttribute(Me.USER_INACTIVE);let i=new k.CustomEvent(_r.USER_INACTIVE,{composed:!0,bubbles:!0,detail:!1});this.dispatchEvent(i)};Tn=new WeakSet;wa=function(){Di(this,wl,Hh).call(this),clearTimeout(this._inactiveTimeout),!(this.autohide<0)&&(this._inactiveTimeout=setTimeout(()=>{Di(this,Ra,Rl).call(this)},this.autohide*1e3))};k.customElements.get("media-container")||k.customElements.define("media-container",Ca);var eE=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},wt=(i,e,t)=>(eE(i,e,"read from private field"),t?t.call(i):e.get(i)),Da=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},Cl=(i,e,t,r)=>(eE(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),_n,An,Dl,ys,Ar,Wr,bi=class{constructor(e,t,{defaultValue:r}={defaultValue:void 0}){Da(this,Ar),Da(this,_n,void 0),Da(this,An,void 0),Da(this,Dl,void 0),Da(this,ys,new Set),Cl(this,_n,e),Cl(this,An,t),Cl(this,Dl,new Set(r))}[Symbol.iterator](){return wt(this,Ar,Wr).values()}get length(){return wt(this,Ar,Wr).size}get value(){var e;return(e=[...wt(this,Ar,Wr)].join(" "))!=null?e:""}set value(e){var t;e!==this.value&&(Cl(this,ys,new Set),this.add(...(t=e==null?void 0:e.split(" "))!=null?t:[]))}toString(){return this.value}item(e){return[...wt(this,Ar,Wr)][e]}values(){return wt(this,Ar,Wr).values()}forEach(e){wt(this,Ar,Wr).forEach(e)}add(...e){var t,r;e.forEach(s=>wt(this,ys).add(s)),!(this.value===""&&!((t=wt(this,_n))!=null&&t.hasAttribute(`${wt(this,An)}`)))&&((r=wt(this,_n))==null||r.setAttribute(`${wt(this,An)}`,`${this.value}`))}remove(...e){var t;e.forEach(r=>wt(this,ys).delete(r)),(t=wt(this,_n))==null||t.setAttribute(`${wt(this,An)}`,`${this.value}`)}contains(e){return wt(this,Ar,Wr).has(e)}toggle(e,t){return typeof t!="undefined"?t?(this.add(e),!0):(this.remove(e),!1):this.contains(e)?(this.remove(e),!1):(this.add(e),!0)}replace(e,t){return this.remove(e),this.add(t),e===t}};_n=new WeakMap;An=new WeakMap;Dl=new WeakMap;ys=new WeakMap;Ar=new WeakSet;Wr=function(){return wt(this,ys).size?wt(this,ys):wt(this,Dl)};var AS=(i="")=>i.split(/\s+/),tE=(i="")=>{let[e,t,r]=i.split(":"),s=r?decodeURIComponent(r):void 0;return e=e==="cc"?"captions":"subtitles",{kind:e,language:t,label:s}},Sr=(i="",e={})=>AS(i).map(t=>{let r=tE(t);return{...e,...r}}),Gh=i=>i?Array.isArray(i)?i.map(e=>typeof e=="string"?tE(e):e):typeof i=="string"?Sr(i):[i]:[],Ts=({kind:i,label:e,language:t}={kind:"subtitles"})=>e?`${i==="captions"?"cc":"sb"}:${t}:${encodeURIComponent(e)}`:t,Mi=(i=[])=>Array.prototype.map.call(i,Ts).join(" "),SS=(i,e)=>t=>t[i]===e,iE=i=>{let e=Object.entries(i).map(([t,r])=>SS(t,r));return t=>e.every(r=>r(t))},_s=(i,e=[],t=[])=>{let r=Gh(t).map(iE),s=n=>r.some(a=>a(n));Array.from(e).filter(s).forEach(n=>{n.mode=i})},As=(i,e=()=>!0)=>{if(!(i!=null&&i.textTracks))return[];let t=typeof e=="function"?e:iE(e);return Array.from(i.textTracks).filter(t)},Ml=i=>{var e;return!!((e=i.mediaSubtitlesShowing)!=null&&e.length)||i.hasAttribute(A.MEDIA_SUBTITLES_SHOWING)};var rt={enter:"requestFullscreen",exit:"exitFullscreen",rootEvents:["fullscreenchange"],mediaEvents:[],element:"fullscreenElement",error:"fullscreenerror",enabled:"fullscreenEnabled"};W.fullscreenElement===void 0&&(rt.enter="webkitRequestFullScreen",rt.exit=W.webkitExitFullscreen!=null?"webkitExitFullscreen":"webkitCancelFullScreen",rt.rootEvents=["webkitfullscreenchange"],rt.mediaEvents=["webkitbeginfullscreen","webkitendfullscreen"],rt.element="webkitFullscreenElement",rt.error="webkitfullscreenerror",rt.enabled="webkitFullscreenEnabled");var Pl,Wh=()=>{var i,e;return Pl||(Pl=(e=(i=W)==null?void 0:i.createElement)==null?void 0:e.call(i,"video"),Pl)},rE=async(i=Wh())=>{if(!i)return!1;let e=i.volume;return i.volume=e/2+.1,await yl(0),i.volume!==e},xS=/.*Version\/.*Safari\/.*/.test(k.navigator.userAgent),Kh=(i=Wh())=>k.matchMedia("(display-mode: standalone)").matches&&xS?!1:typeof(i==null?void 0:i.requestPictureInPicture)=="function",Vh=(i=Wh())=>{let e=W[rt.enabled];return!e&&i&&(e="webkitSupportsFullscreen"in i),e},sE=Vh(),nE=Kh(),aE=!!k.WebKitPlaybackTargetAvailabilityEvent,oE=!!k.chrome;var Sn=i=>As(i.media,e=>[Ri.SUBTITLES,Ri.CAPTIONS].includes(e.kind)).sort((e,t)=>e.kind>=t.kind?1:-1),qh=i=>As(i.media,e=>e.mode===Hr.SHOWING&&[Ri.SUBTITLES,Ri.CAPTIONS].includes(e.kind)),Ol=(i,e)=>{let t=Sn(i),r=qh(i),s=!!r.length;if(t.length){if(e===!1||s&&e!==!0)_s(Hr.DISABLED,t,r);else if(e===!0||!s&&e!==!1){let n=t[0],{options:a}=i;if(!(a!=null&&a.noSubtitlesLangPref)){let c=globalThis.localStorage.getItem("media-chrome-pref-subtitles-lang"),u=c?[c,...globalThis.navigator.languages]:globalThis.navigator.languages,h=t.filter(f=>u.some(g=>f.language.toLowerCase().startsWith(g.split("-")[0]))).sort((f,g)=>{let E=u.findIndex(S=>f.language.toLowerCase().startsWith(S.split("-")[0])),y=u.findIndex(S=>g.language.toLowerCase().startsWith(S.split("-")[0]));return E-y});h[0]&&(n=h[0])}let{language:o,label:l,kind:d}=n;_s(Hr.DISABLED,t,r),_s(Hr.SHOWING,t,[{language:o,label:l,kind:d}])}}},Nl=(i,e)=>i===e?!0:typeof i!=typeof e?!1:typeof i=="number"&&Number.isNaN(i)&&Number.isNaN(e)?!0:typeof i!="object"?!1:Array.isArray(i)?IS(i,e):Object.entries(i).every(([t,r])=>t in e&&Nl(r,e[t])),IS=(i,e)=>{let t=Array.isArray(i),r=Array.isArray(e);return t!==r?!1:t||r?i.length!==e.length?!1:i.every((s,n)=>Nl(s,e[n])):!0};var kS=Object.values(wi),Ul,LS=rE().then(i=>(Ul=i,Ul)),lE=async(...i)=>{await i.filter(e=>e).forEach(async e=>{if(!("localName"in e&&e instanceof k.HTMLElement))return;let t=e.localName;if(!t.includes("-"))return;let r=k.customElements.get(t);r&&e instanceof r||(await k.customElements.whenDefined(t),k.customElements.upgrade(e))})},Ma={mediaPaused:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.paused)!=null?e:!0},set(i,e){let{media:t}=e;t&&(i?t.pause():t.play().catch(()=>{}))},mediaEvents:["play","playing","pause","emptied"]},mediaHasPlayed:{get(i,e){let{media:t}=i;return t?e?e.type==="playing":!t.paused:!1},mediaEvents:["playing","emptied"]},mediaEnded:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.ended)!=null?e:!1},mediaEvents:["seeked","ended","emptied"]},mediaPlaybackRate:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.playbackRate)!=null?e:1},set(i,e){let{media:t}=e;t&&Number.isFinite(+i)&&(t.playbackRate=+i)},mediaEvents:["ratechange","loadstart"]},mediaMuted:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.muted)!=null?e:!1},set(i,e){let{media:t}=e;t&&(t.muted=i)},mediaEvents:["volumechange"]},mediaVolume:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.volume)!=null?e:1},set(i,e){let{media:t}=e;if(t){try{i==null?k.localStorage.removeItem("media-chrome-pref-volume"):k.localStorage.setItem("media-chrome-pref-volume",i.toString())}catch{}Number.isFinite(+i)&&(t.volume=+i)}},mediaEvents:["volumechange"],stateOwnersUpdateHandlers:[(i,e)=>{let{options:{noVolumePref:t}}=e;if(!t)try{let r=k.localStorage.getItem("media-chrome-pref-volume");if(r==null)return;Ma.mediaVolume.set(+r,e),i(r)}catch(r){console.debug("Error getting volume pref",r)}}]},mediaVolumeLevel:{get(i){let{media:e}=i;return typeof(e==null?void 0:e.volume)=="undefined"?"high":e.muted||e.volume===0?"off":e.volume<.5?"low":e.volume<.75?"medium":"high"},mediaEvents:["volumechange"]},mediaCurrentTime:{get(i){var e;let{media:t}=i;return(e=t==null?void 0:t.currentTime)!=null?e:0},set(i,e){let{media:t}=e;t!=null&&t.readyState&&(t.currentTime=i)},mediaEvents:["timeupdate","loadedmetadata"]},mediaDuration:{get(i){let{media:e,options:{defaultDuration:t}={}}=i;return t&&(!e||!e.duration||Number.isNaN(e.duration)||!Number.isFinite(e.duration))?t:Number.isFinite(e==null?void 0:e.duration)?e.duration:Number.NaN},mediaEvents:["durationchange","loadedmetadata","emptied"]},mediaLoading:{get(i){let{media:e}=i;return(e==null?void 0:e.readyState)<3},mediaEvents:["waiting","playing","emptied"]},mediaSeekable:{get(i){var e;let{media:t}=i;if(!((e=t==null?void 0:t.seekable)!=null&&e.length))return;let r=t.seekable.start(0),s=t.seekable.end(t.seekable.length-1);if(!(!r&&!s))return[Number(r.toFixed(3)),Number(s.toFixed(3))]},mediaEvents:["loadedmetadata","emptied","progress","seekablechange"]},mediaBuffered:{get(i){var e;let{media:t}=i,r=(e=t==null?void 0:t.buffered)!=null?e:[];return Array.from(r).map((s,n)=>[Number(r.start(n).toFixed(3)),Number(r.end(n).toFixed(3))])},mediaEvents:["progress","emptied"]},mediaStreamType:{get(i){let{media:e,options:{defaultStreamType:t}={}}=i,r=[wi.LIVE,wi.ON_DEMAND].includes(t)?t:void 0;if(!e)return r;let{streamType:s}=e;if(kS.includes(s))return s===wi.UNKNOWN?r:s;let n=e.duration;return n===1/0?wi.LIVE:Number.isFinite(n)?wi.ON_DEMAND:r},mediaEvents:["emptied","durationchange","loadedmetadata","streamtypechange"]},mediaTargetLiveWindow:{get(i){let{media:e}=i;if(!e)return Number.NaN;let{targetLiveWindow:t}=e,r=Ma.mediaStreamType.get(i);return(t==null||Number.isNaN(t))&&r===wi.LIVE?0:t},mediaEvents:["emptied","durationchange","loadedmetadata","streamtypechange","targetlivewindowchange"]},mediaTimeIsLive:{get(i){let{media:e,options:{liveEdgeOffset:t=10}={}}=i;if(!e)return!1;if(typeof e.liveEdgeStart=="number")return Number.isNaN(e.liveEdgeStart)?!1:e.currentTime>=e.liveEdgeStart;if(!(Ma.mediaStreamType.get(i)===wi.LIVE))return!1;let s=e.seekable;if(!s)return!0;if(!s.length)return!1;let n=s.end(s.length-1)-t;return e.currentTime>=n},mediaEvents:["playing","timeupdate","progress","waiting","emptied"]},mediaSubtitlesList:{get(i){return Sn(i).map(({kind:e,label:t,language:r})=>({kind:e,label:t,language:r}))},mediaEvents:["loadstart"],textTracksEvents:["addtrack","removetrack"]},mediaSubtitlesShowing:{get(i){return qh(i).map(({kind:e,label:t,language:r})=>({kind:e,label:t,language:r}))},mediaEvents:["loadstart"],textTracksEvents:["addtrack","removetrack","change"],stateOwnersUpdateHandlers:[(i,e)=>{var t,r;let{media:s,options:n}=e;if(!s)return;let a=o=>{var l;!n.defaultSubtitles||o&&![Ri.CAPTIONS,Ri.SUBTITLES].includes((l=o==null?void 0:o.track)==null?void 0:l.kind)||Ol(e,!0)};return(t=s.textTracks)==null||t.addEventListener("addtrack",a),(r=s.textTracks)==null||r.addEventListener("removetrack",a),a(),()=>{var o,l;(o=s.textTracks)==null||o.removeEventListener("addtrack",a),(l=s.textTracks)==null||l.removeEventListener("removetrack",a)}}]},mediaChaptersCues:{get(i){var e;let{media:t}=i;if(!t)return[];let[r]=As(t,{kind:Ri.CHAPTERS});return Array.from((e=r==null?void 0:r.cues)!=null?e:[]).map(({text:s,startTime:n,endTime:a})=>({text:s,startTime:n,endTime:a}))},mediaEvents:["loadstart","loadedmetadata"],textTracksEvents:["addtrack","removetrack","change"],stateOwnersUpdateHandlers:[(i,e)=>{let{media:t}=e;if(!t)return;let r=t.querySelector('track[kind="chapters"][default][src]');return r==null||r.addEventListener("load",i),()=>{r==null||r.removeEventListener("load",i)}}]},mediaIsPip:{get(i){var e,t;let{media:r,documentElement:s}=i;if(!r||!s||!s.pictureInPictureElement)return!1;if(s.pictureInPictureElement===r)return!0;if(s.pictureInPictureElement instanceof HTMLMediaElement)return(e=r.localName)!=null&&e.includes("-")?Gt(r,s.pictureInPictureElement):!1;if(s.pictureInPictureElement.localName.includes("-")){let n=s.pictureInPictureElement.shadowRoot;for(;n!=null&&n.pictureInPictureElement;){if(n.pictureInPictureElement===r)return!0;n=(t=n.pictureInPictureElement)==null?void 0:t.shadowRoot}}return!1},set(i,e){let{media:t}=e;if(t)if(i){if(!W.pictureInPictureEnabled){console.warn("MediaChrome: Picture-in-picture is not enabled");return}if(!t.requestPictureInPicture){console.warn("MediaChrome: The current media does not support picture-in-picture");return}let r=()=>{console.warn("MediaChrome: The media is not ready for picture-in-picture. It must have a readyState > 0.")};t.requestPictureInPicture().catch(s=>{if(s.code===11){if(!t.src){console.warn("MediaChrome: The media is not ready for picture-in-picture. It must have a src set.");return}if(t.readyState===0&&t.preload==="none"){let n=()=>{t.removeEventListener("loadedmetadata",a),t.preload="none"},a=()=>{t.requestPictureInPicture().catch(r),n()};t.addEventListener("loadedmetadata",a),t.preload="metadata",setTimeout(()=>{t.readyState===0&&r(),n()},1e3)}else throw s}else throw s})}else W.pictureInPictureElement&&W.exitPictureInPicture()},mediaEvents:["enterpictureinpicture","leavepictureinpicture"]},mediaRenditionList:{get(i){var e;let{media:t}=i;return[...(e=t==null?void 0:t.videoRenditions)!=null?e:[]].map(r=>({...r}))},mediaEvents:["emptied","loadstart"],videoRenditionsEvents:["addrendition","removerendition"]},mediaRenditionSelected:{get(i){var e,t,r;let{media:s}=i;return(r=(t=s==null?void 0:s.videoRenditions)==null?void 0:t[(e=s.videoRenditions)==null?void 0:e.selectedIndex])==null?void 0:r.id},set(i,e){let{media:t}=e;if(!(t!=null&&t.videoRenditions)){console.warn("MediaController: Rendition selection not supported by this media.");return}let r=i,s=Array.prototype.findIndex.call(t.videoRenditions,n=>n.id==r);t.videoRenditions.selectedIndex!=s&&(t.videoRenditions.selectedIndex=s)},mediaEvents:["emptied"],videoRenditionsEvents:["addrendition","removerendition","change"]},mediaAudioTrackList:{get(i){var e;let{media:t}=i;return[...(e=t==null?void 0:t.audioTracks)!=null?e:[]]},mediaEvents:["emptied","loadstart"],audioTracksEvents:["addtrack","removetrack"]},mediaAudioTrackEnabled:{get(i){var e,t;let{media:r}=i;return(t=[...(e=r==null?void 0:r.audioTracks)!=null?e:[]].find(s=>s.enabled))==null?void 0:t.id},set(i,e){let{media:t}=e;if(!(t!=null&&t.audioTracks)){console.warn("MediaChrome: Audio track selection not supported by this media.");return}let r=i;for(let s of t.audioTracks)s.enabled=r==s.id},mediaEvents:["emptied"],audioTracksEvents:["addtrack","removetrack","change"]},mediaIsFullscreen:{get(i){var e;let{media:t,documentElement:r,fullscreenElement:s=t}=i;if(!t||!r)return!1;if(!r[rt.element])return"webkitDisplayingFullscreen"in t&&"webkitPresentationMode"in t?t.webkitDisplayingFullscreen&&t.webkitPresentationMode===Nv.FULLSCREEN:!1;if(r[rt.element]===s)return!0;if(r[rt.element].localName.includes("-")){let n=r[rt.element].shadowRoot;if(!(rt.element in n))return Gt(r[rt.element],s);for(;n!=null&&n[rt.element];){if(n[rt.element]===s)return!0;n=(e=n[rt.element])==null?void 0:e.shadowRoot}}return!1},set(i,e){var t,r;let{media:s,fullscreenElement:n,documentElement:a}=e;if(!i&&(a!=null&&a[rt.exit])){let o=(t=a==null?void 0:a[rt.exit])==null?void 0:t.call(a);o instanceof Promise&&o.catch(()=>{});return}if(n!=null&&n[rt.enter]){let o=(r=n[rt.enter])==null?void 0:r.call(n);o instanceof Promise&&o.catch(()=>{})}else s!=null&&s.webkitEnterFullscreen?s.webkitEnterFullscreen():s!=null&&s.requestFullscreen&&s.requestFullscreen()},rootEvents:rt.rootEvents,mediaEvents:rt.mediaEvents},mediaIsCasting:{get(i){var e;let{media:t}=i;return!(t!=null&&t.remote)||((e=t.remote)==null?void 0:e.state)==="disconnected"?!1:!!t.remote.state},set(i,e){var t,r;let{media:s}=e;if(s&&!(i&&((t=s.remote)==null?void 0:t.state)!=="disconnected")&&!(!i&&((r=s.remote)==null?void 0:r.state)!=="connected")){if(typeof s.remote.prompt!="function"){console.warn("MediaChrome: Casting is not supported in this environment");return}s.remote.prompt().catch(()=>{})}},remoteEvents:["connect","connecting","disconnect"]},mediaIsAirplaying:{get(){return!1},set(i,e){let{media:t}=e;if(t){if(!(t.webkitShowPlaybackTargetPicker&&k.WebKitPlaybackTargetAvailabilityEvent)){console.warn("MediaChrome: received a request to select AirPlay but AirPlay is not supported in this environment");return}t.webkitShowPlaybackTargetPicker()}},mediaEvents:["webkitcurrentplaybacktargetiswirelesschanged"]},mediaFullscreenUnavailable:{get(i){let{media:e}=i;if(!sE||!Vh(e))return ci.UNSUPPORTED}},mediaPipUnavailable:{get(i){let{media:e}=i;if(!nE||!Kh(e))return ci.UNSUPPORTED}},mediaVolumeUnavailable:{get(i){let{media:e}=i;if(Ul===!1||(e==null?void 0:e.volume)==null)return ci.UNSUPPORTED},stateOwnersUpdateHandlers:[i=>{Ul==null&&LS.then(e=>i(e?void 0:ci.UNSUPPORTED))}]},mediaCastUnavailable:{get(i,{availability:e="not-available"}={}){var t;let{media:r}=i;if(!oE||!((t=r==null?void 0:r.remote)!=null&&t.state))return ci.UNSUPPORTED;if(!(e==null||e==="available"))return ci.UNAVAILABLE},stateOwnersUpdateHandlers:[(i,e)=>{var t;let{media:r}=e;return r?(r.disableRemotePlayback||r.hasAttribute("disableremoteplayback")||(t=r==null?void 0:r.remote)==null||t.watchAvailability(n=>{i({availability:n?"available":"not-available"})}).catch(n=>{n.name==="NotSupportedError"?i({availability:null}):i({availability:"not-available"})}),()=>{var n;(n=r==null?void 0:r.remote)==null||n.cancelWatchAvailability()}):void 0}]},mediaAirplayUnavailable:{get(i,e){if(!aE)return ci.UNSUPPORTED;if((e==null?void 0:e.availability)==="not-available")return ci.UNAVAILABLE},mediaEvents:["webkitplaybacktargetavailabilitychanged"],stateOwnersUpdateHandlers:[(i,e)=>{var t;let{media:r}=e;return r?(r.disableRemotePlayback||r.hasAttribute("disableremoteplayback")||(t=r==null?void 0:r.remote)==null||t.watchAvailability(n=>{i({availability:n?"available":"not-available"})}).catch(n=>{n.name==="NotSupportedError"?i({availability:null}):i({availability:"not-available"})}),()=>{var n;(n=r==null?void 0:r.remote)==null||n.cancelWatchAvailability()}):void 0}]},mediaRenditionUnavailable:{get(i){var e;let{media:t}=i;if(!(t!=null&&t.videoRenditions))return ci.UNSUPPORTED;if(!((e=t.videoRenditions)!=null&&e.length))return ci.UNAVAILABLE},mediaEvents:["emptied","loadstart"],videoRenditionsEvents:["addrendition","removerendition"]},mediaAudioTrackUnavailable:{get(i){var e,t;let{media:r}=i;if(!(r!=null&&r.audioTracks))return ci.UNSUPPORTED;if(((t=(e=r.audioTracks)==null?void 0:e.length)!=null?t:0)<=1)return ci.UNAVAILABLE},mediaEvents:["emptied","loadstart"],audioTracksEvents:["addtrack","removetrack"]}};var dE={[j.MEDIA_PREVIEW_REQUEST](i,e,{detail:t}){var r,s,n;let{media:a}=e,o=t!=null?t:void 0,l,d;if(a&&o!=null){let[f]=As(a,{kind:Ri.METADATA,label:"thumbnails"}),g=Array.prototype.find.call((r=f==null?void 0:f.cues)!=null?r:[],(E,y,S)=>y===0?E.endTime>o:y===S.length-1?E.startTime<=o:E.startTime<=o&&E.endTime>o);if(g){let E=/'^(?:[a-z]+:)?\/\//i.test(g.text)||(s=a==null?void 0:a.querySelector('track[label="thumbnails"]'))==null?void 0:s.src,y=new URL(g.text,E);d=new URLSearchParams(y.hash).get("#xywh").split(","),l=y.href}}let c=i.mediaDuration.get(e),h=(n=i.mediaChaptersCues.get(e).find((f,g,E)=>g===E.length-1&&c===f.endTime?f.startTime<=o&&f.endTime>=o:f.startTime<=o&&f.endTime>o))==null?void 0:n.text;return t!=null&&h==null&&(h=""),{mediaPreviewTime:o,mediaPreviewImage:l,mediaPreviewCoords:d,mediaPreviewChapter:h}},[j.MEDIA_PAUSE_REQUEST](i,e){i["mediaPaused"].set(!0,e)},[j.MEDIA_PLAY_REQUEST](i,e){var t;let r="mediaPaused";if(i.mediaStreamType.get(e)===wi.LIVE){let a=!(i.mediaTargetLiveWindow.get(e)>0),o=(t=i.mediaSeekable.get(e))==null?void 0:t[1];a&&o&&i.mediaCurrentTime.set(o,e)}i[r].set(!1,e)},[j.MEDIA_PLAYBACK_RATE_REQUEST](i,e,{detail:t}){let r="mediaPlaybackRate",s=t;i[r].set(s,e)},[j.MEDIA_MUTE_REQUEST](i,e){i["mediaMuted"].set(!0,e)},[j.MEDIA_UNMUTE_REQUEST](i,e){let t="mediaMuted";i.mediaVolume.get(e)||i.mediaVolume.set(.25,e),i[t].set(!1,e)},[j.MEDIA_VOLUME_REQUEST](i,e,{detail:t}){let r="mediaVolume",s=t;s&&i.mediaMuted.get(e)&&i.mediaMuted.set(!1,e),i[r].set(s,e)},[j.MEDIA_SEEK_REQUEST](i,e,{detail:t}){let r="mediaCurrentTime",s=t;i[r].set(s,e)},[j.MEDIA_SEEK_TO_LIVE_REQUEST](i,e){var t;let r="mediaCurrentTime",s=(t=i.mediaSeekable.get(e))==null?void 0:t[1];Number.isNaN(Number(s))&&i[r].set(s,e)},[j.MEDIA_SHOW_SUBTITLES_REQUEST](i,e,{detail:t}){var r;let{options:s}=e,n=Sn(e),a=Gh(t),o=(r=a[0])==null?void 0:r.language;o&&!s.noSubtitlesLangPref&&k.localStorage.setItem("media-chrome-pref-subtitles-lang",o),_s(Hr.SHOWING,n,a)},[j.MEDIA_DISABLE_SUBTITLES_REQUEST](i,e,{detail:t}){let r=Sn(e),s=t!=null?t:[];_s(Hr.DISABLED,r,s)},[j.MEDIA_TOGGLE_SUBTITLES_REQUEST](i,e,{detail:t}){Ol(e,t)},[j.MEDIA_RENDITION_REQUEST](i,e,{detail:t}){let r="mediaRenditionSelected",s=t;i[r].set(s,e)},[j.MEDIA_AUDIO_TRACK_REQUEST](i,e,{detail:t}){let r="mediaAudioTrackEnabled",s=t;i[r].set(s,e)},[j.MEDIA_ENTER_PIP_REQUEST](i,e){let t="mediaIsPip";i.mediaIsFullscreen.get(e)&&i.mediaIsFullscreen.set(!1,e),i[t].set(!0,e)},[j.MEDIA_EXIT_PIP_REQUEST](i,e){i["mediaIsPip"].set(!1,e)},[j.MEDIA_ENTER_FULLSCREEN_REQUEST](i,e){let t="mediaIsFullscreen";i.mediaIsPip.get(e)&&i.mediaIsPip.set(!1,e),i[t].set(!0,e)},[j.MEDIA_EXIT_FULLSCREEN_REQUEST](i,e){i["mediaIsFullscreen"].set(!1,e)},[j.MEDIA_ENTER_CAST_REQUEST](i,e){let t="mediaIsCasting";i.mediaIsFullscreen.get(e)&&i.mediaIsFullscreen.set(!1,e),i[t].set(!0,e)},[j.MEDIA_EXIT_CAST_REQUEST](i,e){i["mediaIsCasting"].set(!1,e)},[j.MEDIA_AIRPLAY_REQUEST](i,e){i["mediaIsAirplaying"].set(!0,e)}};var RS=({media:i,fullscreenElement:e,documentElement:t,stateMediator:r=Ma,requestMap:s=dE,options:n={},monitorStateOwnersOnlyWithSubscriptions:a=!0})=>{let o=[],l={options:{...n}},d=Object.freeze({mediaPreviewTime:void 0,mediaPreviewImage:void 0,mediaPreviewCoords:void 0,mediaPreviewChapter:void 0}),c=E=>{E!=null&&(Nl(E,d)||(d=Object.freeze({...d,...E}),o.forEach(y=>y(d))))},u=()=>{let E=Object.entries(r).reduce((y,[S,{get:w}])=>(y[S]=w(l),y),{});c(E)},h={},f,g=async(E,y)=>{var S,w,L,F,R,B,P,$,K,N,z,Y,ge,me,Ee,De;let Le=!!f;if(f={...l,...f!=null?f:{},...E},Le)return;await lE(...Object.values(E));let Z=o.length>0&&y===0&&a,te=l.media!==f.media,ie=((S=l.media)==null?void 0:S.textTracks)!==((w=f.media)==null?void 0:w.textTracks),_e=((L=l.media)==null?void 0:L.videoRenditions)!==((F=f.media)==null?void 0:F.videoRenditions),Ae=((R=l.media)==null?void 0:R.audioTracks)!==((B=f.media)==null?void 0:B.audioTracks),Je=((P=l.media)==null?void 0:P.remote)!==(($=f.media)==null?void 0:$.remote),Pt=l.documentElement!==f.documentElement,Ot=!!l.media&&(te||Z),kt=!!((K=l.media)!=null&&K.textTracks)&&(ie||Z),mi=!!((N=l.media)!=null&&N.videoRenditions)&&(_e||Z),Nr=!!((z=l.media)!=null&&z.audioTracks)&&(Ae||Z),ma=!!((Y=l.media)!=null&&Y.remote)&&(Je||Z),al=!!l.documentElement&&(Pt||Z),pa=Ot||kt||mi||Nr||ma||al,Ur=o.length===0&&y===1&&a,ol=!!f.media&&(te||Ur),ga=!!((ge=f.media)!=null&&ge.textTracks)&&(ie||Ur),ll=!!((me=f.media)!=null&&me.videoRenditions)&&(_e||Ur),va=!!((Ee=f.media)!=null&&Ee.audioTracks)&&(Ae||Ur),dl=!!((De=f.media)!=null&&De.remote)&&(Je||Ur),Ea=!!f.documentElement&&(Pt||Ur),cl=ol||ga||ll||va||dl||Ea;if(!(pa||cl)){Object.entries(f).forEach(([je,Fr])=>{l[je]=Fr}),u(),f=void 0;return}Object.entries(r).forEach(([je,{get:Fr,mediaEvents:mh=[],textTracksEvents:ul=[],videoRenditionsEvents:ph=[],audioTracksEvents:gh=[],remoteEvents:hl=[],rootEvents:vh=[],stateOwnersUpdateHandlers:fl=[]}])=>{h[je]||(h[je]={});let zt=ot=>{let Xt=Fr(l,ot);c({[je]:Xt})},yt;yt=h[je].mediaEvents,mh.forEach(ot=>{yt&&Ot&&(l.media.removeEventListener(ot,yt),h[je].mediaEvents=void 0),ol&&(f.media.addEventListener(ot,zt),h[je].mediaEvents=zt)}),yt=h[je].textTracksEvents,ul.forEach(ot=>{var Xt,ii;yt&&kt&&((Xt=l.media.textTracks)==null||Xt.removeEventListener(ot,yt),h[je].textTracksEvents=void 0),ga&&((ii=f.media.textTracks)==null||ii.addEventListener(ot,zt),h[je].textTracksEvents=zt)}),yt=h[je].videoRenditionsEvents,ph.forEach(ot=>{var Xt,ii;yt&&mi&&((Xt=l.media.videoRenditions)==null||Xt.removeEventListener(ot,yt),h[je].videoRenditionsEvents=void 0),ll&&((ii=f.media.videoRenditions)==null||ii.addEventListener(ot,zt),h[je].videoRenditionsEvents=zt)}),yt=h[je].audioTracksEvents,gh.forEach(ot=>{var Xt,ii;yt&&Nr&&((Xt=l.media.audioTracks)==null||Xt.removeEventListener(ot,yt),h[je].audioTracksEvents=void 0),va&&((ii=f.media.audioTracks)==null||ii.addEventListener(ot,zt),h[je].audioTracksEvents=zt)}),yt=h[je].remoteEvents,hl.forEach(ot=>{var Xt,ii;yt&&ma&&((Xt=l.media.remote)==null||Xt.removeEventListener(ot,yt),h[je].remoteEvents=void 0),dl&&((ii=f.media.remote)==null||ii.addEventListener(ot,zt),h[je].remoteEvents=zt)}),yt=h[je].rootEvents,vh.forEach(ot=>{yt&&al&&(l.documentElement.removeEventListener(ot,yt),h[je].rootEvents=void 0),Ea&&(f.documentElement.addEventListener(ot,zt),h[je].rootEvents=zt)});let ba=h[je].stateOwnersUpdateHandlers;fl.forEach(ot=>{ba&&pa&&ba(),cl&&(h[je].stateOwnersUpdateHandlers=ot(zt,f))})}),Object.entries(f).forEach(([je,Fr])=>{l[je]=Fr}),u(),f=void 0};return g({media:i,fullscreenElement:e,documentElement:t,options:n}),{dispatch(E){let{type:y,detail:S}=E;if(s[y]){c(s[y](r,l,E));return}y==="mediaelementchangerequest"?g({media:S}):y==="fullscreenelementchangerequest"?g({fullscreenElement:S}):y==="documentelementchangerequest"?g({documentElement:S}):y==="optionschangerequest"&&Object.entries(S!=null?S:{}).forEach(([w,L])=>{l.options[w]=L})},getState(){return d},subscribe(E){return g({},o.length+1),o.push(E),E(d),()=>{let y=o.indexOf(E);y>=0&&(g({},o.length-1),o.splice(y,1))}}}},cE=RS;var Xh=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},Ce=(i,e,t)=>(Xh(i,e,"read from private field"),t?t.call(i):e.get(i)),xr=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},Kr=(i,e,t,r)=>(Xh(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),Vr=(i,e,t)=>(Xh(i,e,"access private method"),t),qr,Pa,st,Oa,zi,Fl,Bl,Yh,xn,Na,$l,jh,pE=["ArrowLeft","ArrowRight","Enter"," ","f","m","k","c"],uE=10,Pe={DEFAULT_SUBTITLES:"defaultsubtitles",DEFAULT_STREAM_TYPE:"defaultstreamtype",DEFAULT_DURATION:"defaultduration",FULLSCREEN_ELEMENT:"fullscreenelement",HOTKEYS:"hotkeys",KEYS_USED:"keysused",LIVE_EDGE_OFFSET:"liveedgeoffset",NO_AUTO_SEEK_TO_LIVE:"noautoseektolive",NO_HOTKEYS:"nohotkeys",NO_VOLUME_PREF:"novolumepref",NO_SUBTITLES_LANG_PREF:"nosubtitleslangpref",NO_DEFAULT_STORE:"nodefaultstore",KEYBOARD_FORWARD_SEEK_OFFSET:"keyboardforwardseekoffset",KEYBOARD_BACKWARD_SEEK_OFFSET:"keyboardbackwardseekoffset"},Hl=class extends Ca{constructor(){super(),xr(this,Bl),xr(this,xn),xr(this,$l),xr(this,qr,new bi(this,Pe.HOTKEYS)),xr(this,Pa,void 0),xr(this,st,void 0),xr(this,Oa,void 0),xr(this,zi,void 0),xr(this,Fl,t=>{var r;(r=Ce(this,st))==null||r.dispatch(t)}),this.mediaStateReceivers=[],this.associatedElementSubscriptions=new Map,this.associateElement(this);let e={};Kr(this,Oa,t=>{Object.entries(t).forEach(([r,s])=>{if(r in e&&e[r]===s)return;this.propagateMediaState(r,s);let n=r.toLowerCase(),a=new k.CustomEvent(Ov[n],{composed:!0,detail:s});this.dispatchEvent(a)}),e=t}),this.enableHotkeys()}static get observedAttributes(){return super.observedAttributes.concat(Pe.NO_HOTKEYS,Pe.HOTKEYS,Pe.DEFAULT_STREAM_TYPE,Pe.DEFAULT_SUBTITLES,Pe.DEFAULT_DURATION)}get mediaStore(){return Ce(this,st)}set mediaStore(e){var t,r;if(Ce(this,st)&&((t=Ce(this,zi))==null||t.call(this),Kr(this,zi,void 0)),Kr(this,st,e),!Ce(this,st)&&!this.hasAttribute(Pe.NO_DEFAULT_STORE)){Vr(this,Bl,Yh).call(this);return}Kr(this,zi,(r=Ce(this,st))==null?void 0:r.subscribe(Ce(this,Oa)))}get fullscreenElement(){var e;return(e=Ce(this,Pa))!=null?e:this}set fullscreenElement(e){var t;this.hasAttribute(Pe.FULLSCREEN_ELEMENT)&&this.removeAttribute(Pe.FULLSCREEN_ELEMENT),Kr(this,Pa,e),(t=Ce(this,st))==null||t.dispatch({type:"fullscreenelementchangerequest",detail:this.fullscreenElement})}attributeChangedCallback(e,t,r){var s,n,a,o,l,d;if(super.attributeChangedCallback(e,t,r),e===Pe.NO_HOTKEYS)r!==t&&r===""?(this.hasAttribute(Pe.HOTKEYS)&&console.warn("Media Chrome: Both `hotkeys` and `nohotkeys` have been set. All hotkeys will be disabled."),this.disableHotkeys()):r!==t&&r===null&&this.enableHotkeys();else if(e===Pe.HOTKEYS)Ce(this,qr).value=r;else if(e===Pe.DEFAULT_SUBTITLES&&r!==t)(s=Ce(this,st))==null||s.dispatch({type:"optionschangerequest",detail:{defaultSubtitles:this.hasAttribute(Pe.DEFAULT_SUBTITLES)}});else if(e===Pe.DEFAULT_STREAM_TYPE)(a=Ce(this,st))==null||a.dispatch({type:"optionschangerequest",detail:{defaultStreamType:(n=this.getAttribute(Pe.DEFAULT_STREAM_TYPE))!=null?n:void 0}});else if(e===Pe.LIVE_EDGE_OFFSET)(o=Ce(this,st))==null||o.dispatch({type:"optionschangerequest",detail:{liveEdgeOffset:this.hasAttribute(Pe.LIVE_EDGE_OFFSET)?+this.getAttribute(Pe.LIVE_EDGE_OFFSET):void 0}});else if(e===Pe.FULLSCREEN_ELEMENT){let c=r?(l=this.getRootNode())==null?void 0:l.getElementById(r):void 0;Kr(this,Pa,c),(d=Ce(this,st))==null||d.dispatch({type:"fullscreenelementchangerequest",detail:this.fullscreenElement})}}connectedCallback(){var e,t;!Ce(this,st)&&!this.hasAttribute(Pe.NO_DEFAULT_STORE)&&Vr(this,Bl,Yh).call(this),(e=Ce(this,st))==null||e.dispatch({type:"documentelementchangerequest",detail:W}),super.connectedCallback(),Ce(this,st)&&!Ce(this,zi)&&Kr(this,zi,(t=Ce(this,st))==null?void 0:t.subscribe(Ce(this,Oa))),this.enableHotkeys()}disconnectedCallback(){var e,t,r,s;(e=super.disconnectedCallback)==null||e.call(this),Ce(this,st)&&((t=Ce(this,st))==null||t.dispatch({type:"documentelementchangerequest",detail:void 0}),(r=Ce(this,st))==null||r.dispatch({type:j.MEDIA_TOGGLE_SUBTITLES_REQUEST,detail:!1})),Ce(this,zi)&&((s=Ce(this,zi))==null||s.call(this),Kr(this,zi,void 0))}mediaSetCallback(e){var t;super.mediaSetCallback(e),(t=Ce(this,st))==null||t.dispatch({type:"mediaelementchangerequest",detail:e}),e.hasAttribute("tabindex")||(e.tabIndex=-1)}mediaUnsetCallback(e){var t;super.mediaUnsetCallback(e),(t=Ce(this,st))==null||t.dispatch({type:"mediaelementchangerequest",detail:void 0})}propagateMediaState(e,t){mE(this.mediaStateReceivers,e,t)}associateElement(e){if(!e)return;let{associatedElementSubscriptions:t}=this;if(t.has(e))return;let r=this.registerMediaStateReceiver.bind(this),s=this.unregisterMediaStateReceiver.bind(this),n=OS(e,r,s);Object.values(j).forEach(a=>{e.addEventListener(a,Ce(this,Fl))}),t.set(e,n)}unassociateElement(e){if(!e)return;let{associatedElementSubscriptions:t}=this;if(!t.has(e))return;t.get(e)(),t.delete(e),Object.values(j).forEach(s=>{e.removeEventListener(s,Ce(this,Fl))})}registerMediaStateReceiver(e){if(!e)return;let t=this.mediaStateReceivers;t.indexOf(e)>-1||(t.push(e),Ce(this,st)&&Object.entries(Ce(this,st).getState()).forEach(([s,n])=>{mE([e],s,n)}))}unregisterMediaStateReceiver(e){let t=this.mediaStateReceivers,r=t.indexOf(e);r<0||t.splice(r,1)}enableHotkeys(){this.addEventListener("keydown",Vr(this,$l,jh))}disableHotkeys(){this.removeEventListener("keydown",Vr(this,$l,jh)),this.removeEventListener("keyup",Vr(this,xn,Na))}get hotkeys(){return Ce(this,qr)}keyboardShortcutHandler(e){var t,r,s,n,a,o;if(((n=(s=(t=e.target.getAttribute(Pe.KEYS_USED))==null?void 0:t.split(" "))!=null?s:(r=e.target)==null?void 0:r.keysUsed)!=null?n:[]).map(h=>h==="Space"?" ":h).filter(Boolean).includes(e.key))return;let d,c,u;if(!Ce(this,qr).contains(`no${e.key.toLowerCase()}`)&&!(e.key===" "&&Ce(this,qr).contains("nospace")))switch(e.key){case" ":case"k":d=Ce(this,st).getState().mediaPaused?j.MEDIA_PLAY_REQUEST:j.MEDIA_PAUSE_REQUEST,this.dispatchEvent(new k.CustomEvent(d,{composed:!0,bubbles:!0}));break;case"m":d=this.mediaStore.getState().mediaVolumeLevel==="off"?j.MEDIA_UNMUTE_REQUEST:j.MEDIA_MUTE_REQUEST,this.dispatchEvent(new k.CustomEvent(d,{composed:!0,bubbles:!0}));break;case"f":d=this.mediaStore.getState().mediaIsFullscreen?j.MEDIA_EXIT_FULLSCREEN_REQUEST:j.MEDIA_ENTER_FULLSCREEN_REQUEST,this.dispatchEvent(new k.CustomEvent(d,{composed:!0,bubbles:!0}));break;case"c":this.dispatchEvent(new k.CustomEvent(j.MEDIA_TOGGLE_SUBTITLES_REQUEST,{composed:!0,bubbles:!0}));break;case"ArrowLeft":{let h=this.hasAttribute(Pe.KEYBOARD_BACKWARD_SEEK_OFFSET)?+this.getAttribute(Pe.KEYBOARD_BACKWARD_SEEK_OFFSET):uE;c=Math.max(((a=this.mediaStore.getState().mediaCurrentTime)!=null?a:0)-h,0),u=new k.CustomEvent(j.MEDIA_SEEK_REQUEST,{composed:!0,bubbles:!0,detail:c}),this.dispatchEvent(u);break}case"ArrowRight":{let h=this.hasAttribute(Pe.KEYBOARD_FORWARD_SEEK_OFFSET)?+this.getAttribute(Pe.KEYBOARD_FORWARD_SEEK_OFFSET):uE;c=Math.max(((o=this.mediaStore.getState().mediaCurrentTime)!=null?o:0)+h,0),u=new k.CustomEvent(j.MEDIA_SEEK_REQUEST,{composed:!0,bubbles:!0,detail:c}),this.dispatchEvent(u);break}default:break}}};qr=new WeakMap;Pa=new WeakMap;st=new WeakMap;Oa=new WeakMap;zi=new WeakMap;Fl=new WeakMap;Bl=new WeakSet;Yh=function(){var i;this.mediaStore=cE({media:this.media,fullscreenElement:this.fullscreenElement,options:{defaultSubtitles:this.hasAttribute(Pe.DEFAULT_SUBTITLES),defaultDuration:this.hasAttribute(Pe.DEFAULT_DURATION)?+this.getAttribute(Pe.DEFAULT_DURATION):void 0,defaultStreamType:(i=this.getAttribute(Pe.DEFAULT_STREAM_TYPE))!=null?i:void 0,liveEdgeOffset:this.hasAttribute(Pe.LIVE_EDGE_OFFSET)?+this.getAttribute(Pe.LIVE_EDGE_OFFSET):void 0,noVolumePref:this.hasAttribute(Pe.NO_VOLUME_PREF),noSubtitlesLangPref:this.hasAttribute(Pe.NO_SUBTITLES_LANG_PREF)}})};xn=new WeakSet;Na=function(i){let{key:e}=i;if(!pE.includes(e)){this.removeEventListener("keyup",Vr(this,xn,Na));return}this.keyboardShortcutHandler(i)};$l=new WeakSet;jh=function(i){let{metaKey:e,altKey:t,key:r}=i;if(e||t||!pE.includes(r)){this.removeEventListener("keyup",Vr(this,xn,Na));return}[" ","ArrowLeft","ArrowRight"].includes(r)&&!(Ce(this,qr).contains(`no${r.toLowerCase()}`)||r===" "&&Ce(this,qr).contains("nospace"))&&i.preventDefault(),this.addEventListener("keyup",Vr(this,xn,Na),{once:!0})};var wS=Object.values(A),CS=Object.values(Rh),gE=i=>{var e,t,r,s;let{observedAttributes:n}=i.constructor;!n&&((e=i.nodeName)!=null&&e.includes("-"))&&(k.customElements.upgrade(i),{observedAttributes:n}=i.constructor);let a=(s=(r=(t=i==null?void 0:i.getAttribute)==null?void 0:t.call(i,ce.MEDIA_CHROME_ATTRIBUTES))==null?void 0:r.split)==null?void 0:s.call(r,/\s+/);return Array.isArray(n||a)?(n||a).filter(o=>wS.includes(o)):[]},DS=i=>{var e,t;return(e=i.nodeName)!=null&&e.includes("-")&&k.customElements.get((t=i.nodeName)==null?void 0:t.toLowerCase())&&!(i instanceof k.customElements.get(i.nodeName.toLowerCase()))&&k.customElements.upgrade(i),CS.some(r=>r in i)},zh=i=>DS(i)||!!gE(i).length,hE=i=>{var e;return(e=i==null?void 0:i.join)==null?void 0:e.call(i,":")},fE={[A.MEDIA_SUBTITLES_LIST]:Mi,[A.MEDIA_SUBTITLES_SHOWING]:Mi,[A.MEDIA_SEEKABLE]:hE,[A.MEDIA_BUFFERED]:i=>i==null?void 0:i.map(hE).join(" "),[A.MEDIA_PREVIEW_COORDS]:i=>i==null?void 0:i.join(" "),[A.MEDIA_RENDITION_LIST]:Uv,[A.MEDIA_AUDIO_TRACK_LIST]:Fv},MS=async(i,e,t)=>{var r,s;if(i.isConnected||await yl(0),typeof t=="boolean"||t==null)return Ve(i,e,t);if(typeof t=="number")return Ke(i,e,t);if(typeof t=="string")return Ie(i,e,t);if(Array.isArray(t)&&!t.length)return i.removeAttribute(e);let n=(s=(r=fE[e])==null?void 0:r.call(fE,t))!=null?s:t;return i.setAttribute(e,n)},PS=i=>{var e;return!!((e=i.closest)!=null&&e.call(i,'*[slot="media"]'))},Ss=(i,e)=>{if(PS(i))return;let t=(s,n)=>{var a,o;zh(s)&&n(s);let{children:l=[]}=s!=null?s:{},d=(o=(a=s==null?void 0:s.shadowRoot)==null?void 0:a.children)!=null?o:[];[...l,...d].forEach(u=>Ss(u,n))},r=i==null?void 0:i.nodeName.toLowerCase();if(r.includes("-")&&!zh(i)){k.customElements.whenDefined(r).then(()=>{t(i,e)});return}t(i,e)},mE=(i,e,t)=>{i.forEach(r=>{if(e in r){r[e]=t;return}let s=gE(r),n=e.toLowerCase();s.includes(n)&&MS(r,n,t)})},OS=(i,e,t)=>{Ss(i,e);let r=c=>{var u;let h=(u=c==null?void 0:c.composedPath()[0])!=null?u:c.target;e(h)},s=c=>{var u;let h=(u=c==null?void 0:c.composedPath()[0])!=null?u:c.target;t(h)};i.addEventListener(j.REGISTER_MEDIA_STATE_RECEIVER,r),i.addEventListener(j.UNREGISTER_MEDIA_STATE_RECEIVER,s);let n=c=>{c.forEach(u=>{let{addedNodes:h=[],removedNodes:f=[],type:g,target:E,attributeName:y}=u;g==="childList"?(Array.prototype.forEach.call(h,S=>Ss(S,e)),Array.prototype.forEach.call(f,S=>Ss(S,t))):g==="attributes"&&y===ce.MEDIA_CHROME_ATTRIBUTES&&(zh(E)?e(E):t(E))})},a=[],o=c=>{let u=c.target;u.name!=="media"&&(a.forEach(h=>Ss(h,t)),a=[...u.assignedElements({flatten:!0})],a.forEach(h=>Ss(h,e)))};i.addEventListener("slotchange",o);let l=new MutationObserver(n);return l.observe(i,{childList:!0,attributes:!0,subtree:!0}),()=>{Ss(i,t),i.removeEventListener("slotchange",o),l.disconnect(),i.removeEventListener(j.REGISTER_MEDIA_STATE_RECEIVER,r),i.removeEventListener(j.UNREGISTER_MEDIA_STATE_RECEIVER,s)}};k.customElements.get("media-controller")||k.customElements.define("media-controller",Hl);var Qh=Hl;var NS=Object.defineProperty,US=(i,e,t)=>e in i?NS(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,FS=(i,e,t)=>(US(i,typeof e!="symbol"?e+"":e,t),t),vE=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},yi=(i,e,t)=>(vE(i,e,"read from private field"),t?t.call(i):e.get(i)),Gl=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},Wl=(i,e,t,r)=>(vE(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),Xi,Kl,In,Vl,EE=W.createElement("template");EE.innerHTML=`
164
164
  <style>
165
165
  :host {
166
166
  font: var(--media-font,
@@ -1514,7 +1514,7 @@ svg, img, ::slotted(svg), ::slotted(img) {
1514
1514
  }
1515
1515
  </style>
1516
1516
  <slot></slot>
1517
- `;var Zr={VALUE:"value",SELECTED:"selected",DISABLED:"disabled"},mc=class extends k.HTMLElement{constructor(){super(),jm(this,fc),jm(this,hc,!1),jm(this,qn,void 0),this.shadowRoot||(this.attachShadow({mode:"open"}),this.shadowRoot.appendChild(Ey.content.cloneNode(!0)))}static get observedAttributes(){return[Zr.DISABLED,Zr.SELECTED,Zr.VALUE]}get value(){var e;return(e=this.getAttribute(Zr.VALUE))!=null?e:this.text}set value(e){this.setAttribute(Zr.VALUE,e)}get text(){var e;return((e=this.textContent)!=null?e:"").trim()}get selected(){return this.getAttribute("aria-selected")==="true"}set selected(e){zm(this,hc,!0),this.setAttribute("aria-selected",e?"true":"false"),e?this.part.add("option-selected"):this.part.remove("option-selected")}enable(){this.hasAttribute("tabindex")||this.setAttribute("tabindex",-1),this.hasAttribute("aria-selected")||this.setAttribute("aria-selected","false")}disable(){this.removeAttribute("tabindex")}attributeChangedCallback(e,t,r){e===Zr.SELECTED&&!Xm(this,hc)?this.setAttribute("aria-selected",r!=null?"true":"false"):e===Zr.DISABLED&&r!==t&&(r==null?this.enable():this.disable())}connectedCallback(){this.hasAttribute(Zr.DISABLED)||this.enable(),this.setAttribute("role","option"),zm(this,qn,Zm(this,this.parentNode)),vy(this,fc,Qm).call(this)}disconnectedCallback(){this.disable(),vy(this,fc,Qm).call(this),zm(this,qn,null)}handleClick(){}};hc=new WeakMap;qn=new WeakMap;fc=new WeakSet;Qm=function(){var i;let e=(i=Xm(this,qn))==null?void 0:i.options;if(!e)return;let t=e.filter(r=>r.getAttribute("aria-selected")==="true").pop();t||(t=e[0]),Xm(this,qn).getAttribute("aria-multiselectable")!=="true"&&e.forEach(r=>{r.setAttribute("tabindex","-1"),r.setAttribute("aria-selected","false")}),t==null||t.setAttribute("tabindex","0"),t==null||t.setAttribute("aria-selected","true")};function Zm(i,e){if(!i)return null;let{host:t}=i.getRootNode();return!e&&t?Zm(i,t):e!=null&&e.options?e:Zm(e,e==null?void 0:e.parentNode)}k.customElements.get("media-chrome-option")||k.customElements.define("media-chrome-option",mc);var tp=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},re=(i,e,t)=>(tp(i,e,"read from private field"),t?t.call(i):e.get(i)),ri=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},fr=(i,e,t,r)=>(tp(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),Os=(i,e,t)=>(tp(i,e,"access private method"),t),mr,Vt,uo,vt,Hi,Yn,pc,gc,vc,Ec,bc,ep,ip,by,jn,ho,Ns,yy=W.createElement("template");yy.innerHTML=`
1517
+ `;var Zr={VALUE:"value",SELECTED:"selected",DISABLED:"disabled"},mc=class extends k.HTMLElement{constructor(){super(),jm(this,fc),jm(this,hc,!1),jm(this,qn,void 0),this.shadowRoot||(this.attachShadow({mode:"open"}),this.shadowRoot.appendChild(Ey.content.cloneNode(!0)))}static get observedAttributes(){return[Zr.DISABLED,Zr.SELECTED,Zr.VALUE]}get value(){var e;return(e=this.getAttribute(Zr.VALUE))!=null?e:this.text}set value(e){this.setAttribute(Zr.VALUE,e)}get text(){var e;return((e=this.textContent)!=null?e:"").trim()}get selected(){return this.getAttribute("aria-selected")==="true"}set selected(e){zm(this,hc,!0),this.setAttribute("aria-selected",e?"true":"false"),e?this.part.add("option-selected"):this.part.remove("option-selected")}enable(){this.hasAttribute("tabindex")||this.setAttribute("tabindex",-1),this.hasAttribute("aria-selected")||this.setAttribute("aria-selected","false")}disable(){this.removeAttribute("tabindex")}attributeChangedCallback(e,t,r){e===Zr.SELECTED&&!Xm(this,hc)?this.setAttribute("aria-selected",r!=null?"true":"false"):e===Zr.DISABLED&&r!==t&&(r==null?this.enable():this.disable())}connectedCallback(){this.hasAttribute(Zr.DISABLED)||this.enable(),this.setAttribute("role","option"),zm(this,qn,Zm(this,this.parentNode)),vy(this,fc,Qm).call(this)}disconnectedCallback(){this.disable(),vy(this,fc,Qm).call(this),zm(this,qn,null)}handleClick(){}};hc=new WeakMap;qn=new WeakMap;fc=new WeakSet;Qm=function(){var i;let e=(i=Xm(this,qn))==null?void 0:i.options;if(!e)return;let t=e.filter(r=>r.getAttribute("aria-selected")==="true").pop();t||(t=e[0]),Xm(this,qn).getAttribute("aria-multiselectable")!=="true"&&e.forEach(r=>{r.setAttribute("tabindex","-1"),r.setAttribute("aria-selected","false")}),t==null||t.setAttribute("tabindex","0"),t==null||t.setAttribute("aria-selected","true")};function Zm(i,e){if(!i)return null;let{host:t}=i.getRootNode();return!e&&t?Zm(i,t):e!=null&&e.options?e:Zm(e,e==null?void 0:e.parentNode)}k.customElements.get("media-chrome-option")||k.customElements.define("media-chrome-option",mc);var tp=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},re=(i,e,t)=>(tp(i,e,"read from private field"),t?t.call(i):e.get(i)),si=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},fr=(i,e,t,r)=>(tp(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),Os=(i,e,t)=>(tp(i,e,"access private method"),t),mr,Vt,uo,vt,Hi,Yn,pc,gc,vc,Ec,bc,ep,ip,by,jn,ho,Ns,yy=W.createElement("template");yy.innerHTML=`
1518
1518
  <style>
1519
1519
  :host {
1520
1520
  font: var(--media-font,
@@ -1565,7 +1565,7 @@ svg, img, ::slotted(svg), ::slotted(img) {
1565
1565
  <slot></slot>
1566
1566
  </media-chrome-listbox>
1567
1567
  </slot>
1568
- `;var Ai=class extends k.HTMLElement{constructor(){var e;super(),ri(this,bc),ri(this,ip),ri(this,jn),ri(this,mr,void 0),ri(this,Vt,void 0),ri(this,uo,void 0),ri(this,vt,void 0),ri(this,Hi,void 0),ri(this,Yn,t=>{let{key:r}=t;if(!this.keysUsed.includes(r)){this.removeEventListener("keyup",re(this,Yn));return}t.composedPath().includes(re(this,Vt))&&(r==="Enter"||r===" ")?Os(this,bc,ep).call(this):r==="Escape"&&Os(this,jn,ho).call(this)}),ri(this,pc,t=>{let{metaKey:r,altKey:s,key:n}=t;if(r||s||!this.keysUsed.includes(n)){this.removeEventListener("keyup",re(this,Yn));return}t.preventDefault(),this.addEventListener("keyup",re(this,Yn),{once:!0})}),ri(this,gc,t=>{t.composedPath().includes(this)||Os(this,jn,ho).call(this)}),ri(this,vc,t=>{t.composedPath().includes(re(this,Vt))&&Os(this,bc,ep).call(this)}),ri(this,Ec,()=>{Os(this,jn,ho).call(this)}),ri(this,Ns,()=>{if(re(this,vt).offsetWidth===0)return;let t=re(this,vt).offsetWidth,r=re(this,Vt).getBoundingClientRect();if(this.hasAttribute("mediacontroller")||re(this,Vt).hasAttribute("mediacontroller")||re(this,vt).hasAttribute("mediacontroller")){re(this,vt).style.zIndex="1",re(this,vt).style.bottom="unset",re(this,vt).style.right=null,re(this,vt).style.left="0",re(this,vt).style.top=`${r.height}px`;return}let n=fo(this).getBoundingClientRect(),a=r.x+t,o=Math.max(r.right-a,r.right-n.right);re(this,vt).style.left=null,re(this,vt).style.right=`${o}px`,re(this,vt).style.maxHeight=`${n.height-r.height}px`}),this.shadowRoot||(this.attachShadow({mode:"open"}),this.shadowRoot.appendChild(yy.content.cloneNode(!0))),(e=this.init)==null||e.call(this),fr(this,Vt,this.shadowRoot.querySelector("[part=button]")),fr(this,vt,this.shadowRoot.querySelector("[part=listbox]")),fr(this,uo,this.shadowRoot.querySelector("slot[name=button]")),re(this,uo).addEventListener("slotchange",()=>{let t=re(this,uo).assignedElements()[0];if(!t)return;fr(this,Vt,t),re(this,Vt).preventClick=!0,this.hasAttribute("disabled")||re(this,Vt).hasAttribute("disabled")?this.disable():(this.enable(),re(this,Vt).setAttribute("aria-haspopup","listbox"))}),fr(this,Hi,this.shadowRoot.querySelector("slot[name=listbox]")),re(this,Hi).addEventListener("slotchange",()=>{fr(this,vt,re(this,Hi).assignedElements()[0]||re(this,vt))})}static get observedAttributes(){return["disabled",ce.MEDIA_CONTROLLER]}enable(){re(this,Vt).toggleAttribute("disabled",!1),this.addEventListener("change",re(this,Ec)),this.addEventListener("keydown",re(this,pc)),this.addEventListener("click",re(this,vc)),W.addEventListener("click",re(this,gc))}disable(){re(this,Vt).toggleAttribute("disabled",!0),this.removeEventListener("change",re(this,Ec)),this.removeEventListener("keydown",re(this,pc)),this.removeEventListener("keyup",re(this,Yn)),this.removeEventListener("click",re(this,vc)),W.removeEventListener("click",re(this,gc))}attributeChangedCallback(e,t,r){var s,n,a,o,l;e===ce.MEDIA_CONTROLLER?(t&&((n=(s=re(this,mr))==null?void 0:s.unassociateElement)==null||n.call(s,this),fr(this,mr,null),re(this,vt).removeAttribute(ce.MEDIA_CONTROLLER)),r&&this.isConnected&&(fr(this,mr,(a=this.getRootNode())==null?void 0:a.getElementById(r)),(l=(o=re(this,mr))==null?void 0:o.associateElement)==null||l.call(o,this),re(this,vt).setAttribute(ce.MEDIA_CONTROLLER,r))):e==="disabled"&&r!==t&&(r==null?this.enable():this.disable())}connectedCallback(){var e,t,r;let{style:s}=We(this.shadowRoot,":host");s.setProperty("display",`var(--media-control-display, var(--${this.localName}-display, inline-flex))`);let n=this.getAttribute(ce.MEDIA_CONTROLLER);n&&(fr(this,mr,(e=this.getRootNode())==null?void 0:e.getElementById(n)),(r=(t=re(this,mr))==null?void 0:t.associateElement)==null||r.call(t,this),re(this,vt).setAttribute(ce.MEDIA_CONTROLLER,n)),this.hasAttribute("disabled")||this.enable(),re(this,Hi).hidden||Ei(fo(this),re(this,Ns))}disconnectedCallback(){var e,t;ji(fo(this),re(this,Ns)),this.disable(),(t=(e=re(this,mr))==null?void 0:e.unassociateElement)==null||t.call(e,this),fr(this,mr,null),re(this,vt).removeAttribute(ce.MEDIA_CONTROLLER)}get keysUsed(){return["Enter","Escape"," ","ArrowUp","ArrowDown","f","c","k","m"]}};mr=new WeakMap;Vt=new WeakMap;uo=new WeakMap;vt=new WeakMap;Hi=new WeakMap;Yn=new WeakMap;pc=new WeakMap;gc=new WeakMap;vc=new WeakMap;Ec=new WeakMap;bc=new WeakSet;ep=function(){re(this,Hi).hidden?Os(this,ip,by).call(this):Os(this,jn,ho).call(this)};ip=new WeakSet;by=function(){re(this,Hi).hidden&&(re(this,Hi).hidden=!1,re(this,Vt).setAttribute("aria-expanded","true"),re(this,Ns).call(this),re(this,vt).focus(),Ei(fo(this),re(this,Ns)))};jn=new WeakSet;ho=function(){if(re(this,Hi).hidden)return;ji(fo(this),re(this,Ns));let i=vs();re(this,Hi).hidden=!0,re(this,Vt).setAttribute("aria-expanded","false"),Gt(re(this,vt),i)&&re(this,Vt).focus()};Ns=new WeakMap;function fo(i){var e;return(e=i.getAttribute("bounds")?Ci(i,`#${i.getAttribute("bounds")}`):cI(i)||i.parentElement)!=null?e:i}function cI(i){var e;let t=i.getAttribute(ce.MEDIA_CONTROLLER);return t?(e=i.getRootNode())==null?void 0:e.getElementById(t):Ci(i,"media-controller")}k.customElements.get("media-chrome-selectmenu")||k.customElements.define("media-chrome-selectmenu",Ai);var op=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},uI=(i,e,t)=>(op(i,e,"read from private field"),t?t.call(i):e.get(i)),rp=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},hI=(i,e,t,r)=>(op(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),sp=(i,e,t)=>(op(i,e,"access private method"),t),Tc,np,Ay,yc,ap,fI=`
1568
+ `;var Ai=class extends k.HTMLElement{constructor(){var e;super(),si(this,bc),si(this,ip),si(this,jn),si(this,mr,void 0),si(this,Vt,void 0),si(this,uo,void 0),si(this,vt,void 0),si(this,Hi,void 0),si(this,Yn,t=>{let{key:r}=t;if(!this.keysUsed.includes(r)){this.removeEventListener("keyup",re(this,Yn));return}t.composedPath().includes(re(this,Vt))&&(r==="Enter"||r===" ")?Os(this,bc,ep).call(this):r==="Escape"&&Os(this,jn,ho).call(this)}),si(this,pc,t=>{let{metaKey:r,altKey:s,key:n}=t;if(r||s||!this.keysUsed.includes(n)){this.removeEventListener("keyup",re(this,Yn));return}t.preventDefault(),this.addEventListener("keyup",re(this,Yn),{once:!0})}),si(this,gc,t=>{t.composedPath().includes(this)||Os(this,jn,ho).call(this)}),si(this,vc,t=>{t.composedPath().includes(re(this,Vt))&&Os(this,bc,ep).call(this)}),si(this,Ec,()=>{Os(this,jn,ho).call(this)}),si(this,Ns,()=>{if(re(this,vt).offsetWidth===0)return;let t=re(this,vt).offsetWidth,r=re(this,Vt).getBoundingClientRect();if(this.hasAttribute("mediacontroller")||re(this,Vt).hasAttribute("mediacontroller")||re(this,vt).hasAttribute("mediacontroller")){re(this,vt).style.zIndex="1",re(this,vt).style.bottom="unset",re(this,vt).style.right=null,re(this,vt).style.left="0",re(this,vt).style.top=`${r.height}px`;return}let n=fo(this).getBoundingClientRect(),a=r.x+t,o=Math.max(r.right-a,r.right-n.right);re(this,vt).style.left=null,re(this,vt).style.right=`${o}px`,re(this,vt).style.maxHeight=`${n.height-r.height}px`}),this.shadowRoot||(this.attachShadow({mode:"open"}),this.shadowRoot.appendChild(yy.content.cloneNode(!0))),(e=this.init)==null||e.call(this),fr(this,Vt,this.shadowRoot.querySelector("[part=button]")),fr(this,vt,this.shadowRoot.querySelector("[part=listbox]")),fr(this,uo,this.shadowRoot.querySelector("slot[name=button]")),re(this,uo).addEventListener("slotchange",()=>{let t=re(this,uo).assignedElements()[0];if(!t)return;fr(this,Vt,t),re(this,Vt).preventClick=!0,this.hasAttribute("disabled")||re(this,Vt).hasAttribute("disabled")?this.disable():(this.enable(),re(this,Vt).setAttribute("aria-haspopup","listbox"))}),fr(this,Hi,this.shadowRoot.querySelector("slot[name=listbox]")),re(this,Hi).addEventListener("slotchange",()=>{fr(this,vt,re(this,Hi).assignedElements()[0]||re(this,vt))})}static get observedAttributes(){return["disabled",ce.MEDIA_CONTROLLER]}enable(){re(this,Vt).toggleAttribute("disabled",!1),this.addEventListener("change",re(this,Ec)),this.addEventListener("keydown",re(this,pc)),this.addEventListener("click",re(this,vc)),W.addEventListener("click",re(this,gc))}disable(){re(this,Vt).toggleAttribute("disabled",!0),this.removeEventListener("change",re(this,Ec)),this.removeEventListener("keydown",re(this,pc)),this.removeEventListener("keyup",re(this,Yn)),this.removeEventListener("click",re(this,vc)),W.removeEventListener("click",re(this,gc))}attributeChangedCallback(e,t,r){var s,n,a,o,l;e===ce.MEDIA_CONTROLLER?(t&&((n=(s=re(this,mr))==null?void 0:s.unassociateElement)==null||n.call(s,this),fr(this,mr,null),re(this,vt).removeAttribute(ce.MEDIA_CONTROLLER)),r&&this.isConnected&&(fr(this,mr,(a=this.getRootNode())==null?void 0:a.getElementById(r)),(l=(o=re(this,mr))==null?void 0:o.associateElement)==null||l.call(o,this),re(this,vt).setAttribute(ce.MEDIA_CONTROLLER,r))):e==="disabled"&&r!==t&&(r==null?this.enable():this.disable())}connectedCallback(){var e,t,r;let{style:s}=We(this.shadowRoot,":host");s.setProperty("display",`var(--media-control-display, var(--${this.localName}-display, inline-flex))`);let n=this.getAttribute(ce.MEDIA_CONTROLLER);n&&(fr(this,mr,(e=this.getRootNode())==null?void 0:e.getElementById(n)),(r=(t=re(this,mr))==null?void 0:t.associateElement)==null||r.call(t,this),re(this,vt).setAttribute(ce.MEDIA_CONTROLLER,n)),this.hasAttribute("disabled")||this.enable(),re(this,Hi).hidden||Ei(fo(this),re(this,Ns))}disconnectedCallback(){var e,t;ji(fo(this),re(this,Ns)),this.disable(),(t=(e=re(this,mr))==null?void 0:e.unassociateElement)==null||t.call(e,this),fr(this,mr,null),re(this,vt).removeAttribute(ce.MEDIA_CONTROLLER)}get keysUsed(){return["Enter","Escape"," ","ArrowUp","ArrowDown","f","c","k","m"]}};mr=new WeakMap;Vt=new WeakMap;uo=new WeakMap;vt=new WeakMap;Hi=new WeakMap;Yn=new WeakMap;pc=new WeakMap;gc=new WeakMap;vc=new WeakMap;Ec=new WeakMap;bc=new WeakSet;ep=function(){re(this,Hi).hidden?Os(this,ip,by).call(this):Os(this,jn,ho).call(this)};ip=new WeakSet;by=function(){re(this,Hi).hidden&&(re(this,Hi).hidden=!1,re(this,Vt).setAttribute("aria-expanded","true"),re(this,Ns).call(this),re(this,vt).focus(),Ei(fo(this),re(this,Ns)))};jn=new WeakSet;ho=function(){if(re(this,Hi).hidden)return;ji(fo(this),re(this,Ns));let i=vs();re(this,Hi).hidden=!0,re(this,Vt).setAttribute("aria-expanded","false"),Gt(re(this,vt),i)&&re(this,Vt).focus()};Ns=new WeakMap;function fo(i){var e;return(e=i.getAttribute("bounds")?Ci(i,`#${i.getAttribute("bounds")}`):cI(i)||i.parentElement)!=null?e:i}function cI(i){var e;let t=i.getAttribute(ce.MEDIA_CONTROLLER);return t?(e=i.getRootNode())==null?void 0:e.getElementById(t):Ci(i,"media-controller")}k.customElements.get("media-chrome-selectmenu")||k.customElements.define("media-chrome-selectmenu",Ai);var op=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},uI=(i,e,t)=>(op(i,e,"read from private field"),t?t.call(i):e.get(i)),rp=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},hI=(i,e,t,r)=>(op(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),sp=(i,e,t)=>(op(i,e,"access private method"),t),Tc,np,Ay,yc,ap,fI=`
1569
1569
  <svg aria-hidden="true" viewBox="0 0 26 24" part="captions-indicator indicator">
1570
1570
  <path d="M22.83 5.68a2.58 2.58 0 0 0-2.3-2.5c-3.62-.24-11.44-.24-15.06 0a2.58 2.58 0 0 0-2.3 2.5c-.23 4.21-.23 8.43 0 12.64a2.58 2.58 0 0 0 2.3 2.5c3.62.24 11.44.24 15.06 0a2.58 2.58 0 0 0 2.3-2.5c.23-4.21.23-8.43 0-12.64Zm-11.39 9.45a3.07 3.07 0 0 1-1.91.57 3.06 3.06 0 0 1-2.34-1 3.75 3.75 0 0 1-.92-2.67 3.92 3.92 0 0 1 .92-2.77 3.18 3.18 0 0 1 2.43-1 2.94 2.94 0 0 1 2.13.78c.364.359.62.813.74 1.31l-1.43.35a1.49 1.49 0 0 0-1.51-1.17 1.61 1.61 0 0 0-1.29.58 2.79 2.79 0 0 0-.5 1.89 3 3 0 0 0 .49 1.93 1.61 1.61 0 0 0 1.27.58 1.48 1.48 0 0 0 1-.37 2.1 2.1 0 0 0 .59-1.14l1.4.44a3.23 3.23 0 0 1-1.07 1.69Zm7.22 0a3.07 3.07 0 0 1-1.91.57 3.06 3.06 0 0 1-2.34-1 3.75 3.75 0 0 1-.92-2.67 3.88 3.88 0 0 1 .93-2.77 3.14 3.14 0 0 1 2.42-1 3 3 0 0 1 2.16.82 2.8 2.8 0 0 1 .73 1.31l-1.43.35a1.49 1.49 0 0 0-1.51-1.21 1.61 1.61 0 0 0-1.29.58A2.79 2.79 0 0 0 15 12a3 3 0 0 0 .49 1.93 1.61 1.61 0 0 0 1.27.58 1.44 1.44 0 0 0 1-.37 2.1 2.1 0 0 0 .6-1.15l1.4.44a3.17 3.17 0 0 1-1.1 1.7Z"/>
1571
1571
  </svg>`,Sy=W.createElement("template");Sy.innerHTML=`
@@ -1579,7 +1579,7 @@ svg, img, ::slotted(svg), ::slotted(img) {
1579
1579
  <path d="M22 12c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Zm-2 0a8 8 0 1 0-16 0 8 8 0 0 0 16 0Z"/>
1580
1580
  </svg>`,Ry=W.createElement("template");Ry.innerHTML=`
1581
1581
  <slot name="icon">${pI}</slot>
1582
- `;var yp=class extends $e{static get observedAttributes(){return[...super.observedAttributes,A.MEDIA_AUDIO_TRACK_ENABLED,A.MEDIA_AUDIO_TRACK_UNAVAILABLE]}constructor(){super({slotTemplate:Ry})}get mediaAudioTrackEnabled(){return Re(this,A.MEDIA_AUDIO_TRACK_ENABLED)}set mediaAudioTrackEnabled(e){Ie(this,A.MEDIA_AUDIO_TRACK_ENABLED,e)}};k.customElements.get("media-audio-track-button")||k.customElements.define("media-audio-track-button",yp);var Gc=class extends Ai{static get observedAttributes(){return[...super.observedAttributes,A.MEDIA_AUDIO_TRACK_ENABLED,A.MEDIA_AUDIO_TRACK_UNAVAILABLE]}init(){let e=W.createElement("media-audio-track-button");e.part.add("button"),e.preventClick=!0;let t=W.createElement("media-audio-track-listbox");t.part.add("listbox"),t.setAttribute("exportparts","option, option-selected, indicator");let r=this.shadowRoot.querySelector("slot[name=button]"),s=this.shadowRoot.querySelector("slot[name=listbox]");r.textContent="",s.textContent="",r.append(e),s.append(t)}};k.customElements.get("media-audio-track-selectmenu")||k.customElements.define("media-audio-track-selectmenu",Gc);var Iu=J1(wy(),1);function gI(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}var ET={exports:{}};(function(i,e){(function(t){var r=/^(?=((?:[a-zA-Z0-9+\-.]+:)?))\1(?=((?:\/\/[^\/?#]*)?))\2(?=((?:(?:[^?#\/]*\/)*[^;?#\/]*)?))\3((?:;[^?#]*)?)(\?[^#]*)?(#[^]*)?$/,s=/^(?=([^\/?#]*))\1([^]*)$/,n=/(?:\/|^)\.(?=\/)/g,a=/(?:\/|^)\.\.\/(?!\.\.\/)[^\/]*(?=\/)/g,o={buildAbsoluteURL:function(l,d,c){if(c=c||{},l=l.trim(),d=d.trim(),!d){if(!c.alwaysNormalize)return l;var u=o.parseURL(l);if(!u)throw new Error("Error trying to parse base URL.");return u.path=o.normalizePath(u.path),o.buildURLFromParts(u)}var h=o.parseURL(d);if(!h)throw new Error("Error trying to parse relative URL.");if(h.scheme)return c.alwaysNormalize?(h.path=o.normalizePath(h.path),o.buildURLFromParts(h)):d;var f=o.parseURL(l);if(!f)throw new Error("Error trying to parse base URL.");if(!f.netLoc&&f.path&&f.path[0]!=="/"){var g=s.exec(f.path);f.netLoc=g[1],f.path=g[2]}f.netLoc&&!f.path&&(f.path="/");var E={scheme:f.scheme,netLoc:h.netLoc,path:null,params:h.params,query:h.query,fragment:h.fragment};if(!h.netLoc&&(E.netLoc=f.netLoc,h.path[0]!=="/"))if(!h.path)E.path=f.path,h.params||(E.params=f.params,h.query||(E.query=f.query));else{var y=f.path,S=y.substring(0,y.lastIndexOf("/")+1)+h.path;E.path=o.normalizePath(S)}return E.path===null&&(E.path=c.alwaysNormalize?o.normalizePath(h.path):h.path),o.buildURLFromParts(E)},parseURL:function(l){var d=r.exec(l);return d?{scheme:d[1]||"",netLoc:d[2]||"",path:d[3]||"",params:d[4]||"",query:d[5]||"",fragment:d[6]||""}:null},normalizePath:function(l){for(l=l.split("").reverse().join("").replace(n,"");l.length!==(l=l.replace(a,"")).length;);return l.split("").reverse().join("")},buildURLFromParts:function(l){return l.scheme+l.netLoc+l.path+l.params+l.query+l.fragment}};i.exports=o})()})(ET);var Kg=ET.exports;function Cy(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(i);e&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(i,s).enumerable})),t.push.apply(t,r)}return t}function Zt(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Cy(Object(t),!0).forEach(function(r){vI(i,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Cy(Object(t)).forEach(function(r){Object.defineProperty(i,r,Object.getOwnPropertyDescriptor(t,r))})}return i}function vI(i,e,t){return e=bI(e),e in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function xt(){return xt=Object.assign?Object.assign.bind():function(i){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(i[r]=t[r])}return i},xt.apply(this,arguments)}function EI(i,e){if(typeof i!="object"||i===null)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var r=t.call(i,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function bI(i){var e=EI(i,"string");return typeof e=="symbol"?e:String(e)}var oe=Number.isFinite||function(i){return typeof i=="number"&&isFinite(i)},yI=Number.isSafeInteger||function(i){return typeof i=="number"&&Math.abs(i)<=TI},TI=Number.MAX_SAFE_INTEGER||9007199254740991,b=function(i){return i.MEDIA_ATTACHING="hlsMediaAttaching",i.MEDIA_ATTACHED="hlsMediaAttached",i.MEDIA_DETACHING="hlsMediaDetaching",i.MEDIA_DETACHED="hlsMediaDetached",i.BUFFER_RESET="hlsBufferReset",i.BUFFER_CODECS="hlsBufferCodecs",i.BUFFER_CREATED="hlsBufferCreated",i.BUFFER_APPENDING="hlsBufferAppending",i.BUFFER_APPENDED="hlsBufferAppended",i.BUFFER_EOS="hlsBufferEos",i.BUFFER_FLUSHING="hlsBufferFlushing",i.BUFFER_FLUSHED="hlsBufferFlushed",i.MANIFEST_LOADING="hlsManifestLoading",i.MANIFEST_LOADED="hlsManifestLoaded",i.MANIFEST_PARSED="hlsManifestParsed",i.LEVEL_SWITCHING="hlsLevelSwitching",i.LEVEL_SWITCHED="hlsLevelSwitched",i.LEVEL_LOADING="hlsLevelLoading",i.LEVEL_LOADED="hlsLevelLoaded",i.LEVEL_UPDATED="hlsLevelUpdated",i.LEVEL_PTS_UPDATED="hlsLevelPtsUpdated",i.LEVELS_UPDATED="hlsLevelsUpdated",i.AUDIO_TRACKS_UPDATED="hlsAudioTracksUpdated",i.AUDIO_TRACK_SWITCHING="hlsAudioTrackSwitching",i.AUDIO_TRACK_SWITCHED="hlsAudioTrackSwitched",i.AUDIO_TRACK_LOADING="hlsAudioTrackLoading",i.AUDIO_TRACK_LOADED="hlsAudioTrackLoaded",i.SUBTITLE_TRACKS_UPDATED="hlsSubtitleTracksUpdated",i.SUBTITLE_TRACKS_CLEARED="hlsSubtitleTracksCleared",i.SUBTITLE_TRACK_SWITCH="hlsSubtitleTrackSwitch",i.SUBTITLE_TRACK_LOADING="hlsSubtitleTrackLoading",i.SUBTITLE_TRACK_LOADED="hlsSubtitleTrackLoaded",i.SUBTITLE_FRAG_PROCESSED="hlsSubtitleFragProcessed",i.CUES_PARSED="hlsCuesParsed",i.NON_NATIVE_TEXT_TRACKS_FOUND="hlsNonNativeTextTracksFound",i.INIT_PTS_FOUND="hlsInitPtsFound",i.FRAG_LOADING="hlsFragLoading",i.FRAG_LOAD_EMERGENCY_ABORTED="hlsFragLoadEmergencyAborted",i.FRAG_LOADED="hlsFragLoaded",i.FRAG_DECRYPTED="hlsFragDecrypted",i.FRAG_PARSING_INIT_SEGMENT="hlsFragParsingInitSegment",i.FRAG_PARSING_USERDATA="hlsFragParsingUserdata",i.FRAG_PARSING_METADATA="hlsFragParsingMetadata",i.FRAG_PARSED="hlsFragParsed",i.FRAG_BUFFERED="hlsFragBuffered",i.FRAG_CHANGED="hlsFragChanged",i.FPS_DROP="hlsFpsDrop",i.FPS_DROP_LEVEL_CAPPING="hlsFpsDropLevelCapping",i.ERROR="hlsError",i.DESTROYING="hlsDestroying",i.KEY_LOADING="hlsKeyLoading",i.KEY_LOADED="hlsKeyLoaded",i.LIVE_BACK_BUFFER_REACHED="hlsLiveBackBufferReached",i.BACK_BUFFER_REACHED="hlsBackBufferReached",i}({}),he=function(i){return i.NETWORK_ERROR="networkError",i.MEDIA_ERROR="mediaError",i.KEY_SYSTEM_ERROR="keySystemError",i.MUX_ERROR="muxError",i.OTHER_ERROR="otherError",i}({}),H=function(i){return i.KEY_SYSTEM_NO_KEYS="keySystemNoKeys",i.KEY_SYSTEM_NO_ACCESS="keySystemNoAccess",i.KEY_SYSTEM_NO_SESSION="keySystemNoSession",i.KEY_SYSTEM_NO_CONFIGURED_LICENSE="keySystemNoConfiguredLicense",i.KEY_SYSTEM_LICENSE_REQUEST_FAILED="keySystemLicenseRequestFailed",i.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED="keySystemServerCertificateRequestFailed",i.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED="keySystemServerCertificateUpdateFailed",i.KEY_SYSTEM_SESSION_UPDATE_FAILED="keySystemSessionUpdateFailed",i.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED="keySystemStatusOutputRestricted",i.KEY_SYSTEM_STATUS_INTERNAL_ERROR="keySystemStatusInternalError",i.MANIFEST_LOAD_ERROR="manifestLoadError",i.MANIFEST_LOAD_TIMEOUT="manifestLoadTimeOut",i.MANIFEST_PARSING_ERROR="manifestParsingError",i.MANIFEST_INCOMPATIBLE_CODECS_ERROR="manifestIncompatibleCodecsError",i.LEVEL_EMPTY_ERROR="levelEmptyError",i.LEVEL_LOAD_ERROR="levelLoadError",i.LEVEL_LOAD_TIMEOUT="levelLoadTimeOut",i.LEVEL_PARSING_ERROR="levelParsingError",i.LEVEL_SWITCH_ERROR="levelSwitchError",i.AUDIO_TRACK_LOAD_ERROR="audioTrackLoadError",i.AUDIO_TRACK_LOAD_TIMEOUT="audioTrackLoadTimeOut",i.SUBTITLE_LOAD_ERROR="subtitleTrackLoadError",i.SUBTITLE_TRACK_LOAD_TIMEOUT="subtitleTrackLoadTimeOut",i.FRAG_LOAD_ERROR="fragLoadError",i.FRAG_LOAD_TIMEOUT="fragLoadTimeOut",i.FRAG_DECRYPT_ERROR="fragDecryptError",i.FRAG_PARSING_ERROR="fragParsingError",i.FRAG_GAP="fragGap",i.REMUX_ALLOC_ERROR="remuxAllocError",i.KEY_LOAD_ERROR="keyLoadError",i.KEY_LOAD_TIMEOUT="keyLoadTimeOut",i.BUFFER_ADD_CODEC_ERROR="bufferAddCodecError",i.BUFFER_INCOMPATIBLE_CODECS_ERROR="bufferIncompatibleCodecsError",i.BUFFER_APPEND_ERROR="bufferAppendError",i.BUFFER_APPENDING_ERROR="bufferAppendingError",i.BUFFER_STALLED_ERROR="bufferStalledError",i.BUFFER_FULL_ERROR="bufferFullError",i.BUFFER_SEEK_OVER_HOLE="bufferSeekOverHole",i.BUFFER_NUDGE_ON_STALL="bufferNudgeOnStall",i.INTERNAL_EXCEPTION="internalException",i.INTERNAL_ABORTED="aborted",i.UNKNOWN="unknown",i}({}),Fs=function(){},Gp={trace:Fs,debug:Fs,log:Fs,warn:Fs,info:Fs,error:Fs},yo=Gp;function _I(i){let e=self.console[i];return e?e.bind(self.console,`[${i}] >`):Fs}function AI(i,...e){e.forEach(function(t){yo[t]=i[t]?i[t].bind(i):_I(t)})}function SI(i,e){if(self.console&&i===!0||typeof i=="object"){AI(i,"debug","log","info","warn","error");try{yo.log(`Debug logs enabled for "${e}" in hls.js version 1.4.13`)}catch{yo=Gp}}else yo=Gp}var M=yo,xI=/^(\d+)x(\d+)$/,Dy=/(.+?)=(".*?"|.*?)(?:,|$)/g,ut=class i{constructor(e){typeof e=="string"&&(e=i.parseAttrList(e));for(let t in e)e.hasOwnProperty(t)&&(t.substring(0,2)==="X-"&&(this.clientAttrs=this.clientAttrs||[],this.clientAttrs.push(t)),this[t]=e[t])}decimalInteger(e){let t=parseInt(this[e],10);return t>Number.MAX_SAFE_INTEGER?1/0:t}hexadecimalInteger(e){if(this[e]){let t=(this[e]||"0x").slice(2);t=(t.length&1?"0":"")+t;let r=new Uint8Array(t.length/2);for(let s=0;s<t.length/2;s++)r[s]=parseInt(t.slice(s*2,s*2+2),16);return r}else return null}hexadecimalIntegerAsNumber(e){let t=parseInt(this[e],16);return t>Number.MAX_SAFE_INTEGER?1/0:t}decimalFloatingPoint(e){return parseFloat(this[e])}optionalFloat(e,t){let r=this[e];return r?parseFloat(r):t}enumeratedString(e){return this[e]}bool(e){return this[e]==="YES"}decimalResolution(e){let t=xI.exec(this[e]);if(t!==null)return{width:parseInt(t[1],10),height:parseInt(t[2],10)}}static parseAttrList(e){let t,r={},s='"';for(Dy.lastIndex=0;(t=Dy.exec(e))!==null;){let n=t[2];n.indexOf(s)===0&&n.lastIndexOf(s)===n.length-1&&(n=n.slice(1,-1));let a=t[1].trim();r[a]=n}return r}};function II(i){return i!=="ID"&&i!=="CLASS"&&i!=="START-DATE"&&i!=="DURATION"&&i!=="END-DATE"&&i!=="END-ON-NEXT"}function kI(i){return i==="SCTE35-OUT"||i==="SCTE35-IN"}var eu=class{constructor(e,t){if(this.attr=void 0,this._startDate=void 0,this._endDate=void 0,this._badValueForSameId=void 0,t){let r=t.attr;for(let s in r)if(Object.prototype.hasOwnProperty.call(e,s)&&e[s]!==r[s]){M.warn(`DATERANGE tag attribute: "${s}" does not match for tags with ID: "${e.ID}"`),this._badValueForSameId=s;break}e=xt(new ut({}),r,e)}if(this.attr=e,this._startDate=new Date(e["START-DATE"]),"END-DATE"in this.attr){let r=new Date(this.attr["END-DATE"]);oe(r.getTime())&&(this._endDate=r)}}get id(){return this.attr.ID}get class(){return this.attr.CLASS}get startDate(){return this._startDate}get endDate(){if(this._endDate)return this._endDate;let e=this.duration;return e!==null?new Date(this._startDate.getTime()+e*1e3):null}get duration(){if("DURATION"in this.attr){let e=this.attr.decimalFloatingPoint("DURATION");if(oe(e))return e}else if(this._endDate)return(this._endDate.getTime()-this._startDate.getTime())/1e3;return null}get plannedDuration(){return"PLANNED-DURATION"in this.attr?this.attr.decimalFloatingPoint("PLANNED-DURATION"):null}get endOnNext(){return this.attr.bool("END-ON-NEXT")}get isValid(){return!!this.id&&!this._badValueForSameId&&oe(this.startDate.getTime())&&(this.duration===null||this.duration>=0)&&(!this.endOnNext||!!this.class)}},ta=class{constructor(){this.aborted=!1,this.loaded=0,this.retry=0,this.total=0,this.chunkCount=0,this.bwEstimate=0,this.loading={start:0,first:0,end:0},this.parsing={start:0,end:0},this.buffering={start:0,first:0,end:0}}},Qe={AUDIO:"audio",VIDEO:"video",AUDIOVIDEO:"audiovideo"},tu=class{constructor(e){this._byteRange=null,this._url=null,this.baseurl=void 0,this.relurl=void 0,this.elementaryStreams={[Qe.AUDIO]:null,[Qe.VIDEO]:null,[Qe.AUDIOVIDEO]:null},this.baseurl=e}setByteRange(e,t){let r=e.split("@",2),s=[];r.length===1?s[0]=t?t.byteRangeEndOffset:0:s[0]=parseInt(r[1]),s[1]=parseInt(r[0])+s[0],this._byteRange=s}get byteRange(){return this._byteRange?this._byteRange:[]}get byteRangeStartOffset(){return this.byteRange[0]}get byteRangeEndOffset(){return this.byteRange[1]}get url(){return!this._url&&this.baseurl&&this.relurl&&(this._url=Kg.buildAbsoluteURL(this.baseurl,this.relurl,{alwaysNormalize:!0})),this._url||""}set url(e){this._url=e}},To=class extends tu{constructor(e,t){super(t),this._decryptdata=null,this.rawProgramDateTime=null,this.programDateTime=null,this.tagList=[],this.duration=0,this.sn=0,this.levelkeys=void 0,this.type=void 0,this.loader=null,this.keyLoader=null,this.level=-1,this.cc=0,this.startPTS=void 0,this.endPTS=void 0,this.startDTS=void 0,this.endDTS=void 0,this.start=0,this.deltaPTS=void 0,this.maxStartPTS=void 0,this.minEndPTS=void 0,this.stats=new ta,this.urlId=0,this.data=void 0,this.bitrateTest=!1,this.title=null,this.initSegment=null,this.endList=void 0,this.gap=void 0,this.type=e}get decryptdata(){let{levelkeys:e}=this;if(!e&&!this._decryptdata)return null;if(!this._decryptdata&&this.levelkeys&&!this.levelkeys.NONE){let t=this.levelkeys.identity;if(t)this._decryptdata=t.getDecryptData(this.sn);else{let r=Object.keys(this.levelkeys);if(r.length===1)return this._decryptdata=this.levelkeys[r[0]].getDecryptData(this.sn)}}return this._decryptdata}get end(){return this.start+this.duration}get endProgramDateTime(){if(this.programDateTime===null||!oe(this.programDateTime))return null;let e=oe(this.duration)?this.duration:0;return this.programDateTime+e*1e3}get encrypted(){var e;if((e=this._decryptdata)!=null&&e.encrypted)return!0;if(this.levelkeys){let t=Object.keys(this.levelkeys),r=t.length;if(r>1||r===1&&this.levelkeys[t[0]].encrypted)return!0}return!1}setKeyFormat(e){if(this.levelkeys){let t=this.levelkeys[e];t&&!this._decryptdata&&(this._decryptdata=t.getDecryptData(this.sn))}}abortRequests(){var e,t;(e=this.loader)==null||e.abort(),(t=this.keyLoader)==null||t.abort()}setElementaryStreamInfo(e,t,r,s,n,a=!1){let{elementaryStreams:o}=this,l=o[e];if(!l){o[e]={startPTS:t,endPTS:r,startDTS:s,endDTS:n,partial:a};return}l.startPTS=Math.min(l.startPTS,t),l.endPTS=Math.max(l.endPTS,r),l.startDTS=Math.min(l.startDTS,s),l.endDTS=Math.max(l.endDTS,n)}clearElementaryStreamInfo(){let{elementaryStreams:e}=this;e[Qe.AUDIO]=null,e[Qe.VIDEO]=null,e[Qe.AUDIOVIDEO]=null}},Wp=class extends tu{constructor(e,t,r,s,n){super(r),this.fragOffset=0,this.duration=0,this.gap=!1,this.independent=!1,this.relurl=void 0,this.fragment=void 0,this.index=void 0,this.stats=new ta,this.duration=e.decimalFloatingPoint("DURATION"),this.gap=e.bool("GAP"),this.independent=e.bool("INDEPENDENT"),this.relurl=e.enumeratedString("URI"),this.fragment=t,this.index=s;let a=e.enumeratedString("BYTERANGE");a&&this.setByteRange(a,n),n&&(this.fragOffset=n.fragOffset+n.duration)}get start(){return this.fragment.start+this.fragOffset}get end(){return this.start+this.duration}get loaded(){let{elementaryStreams:e}=this;return!!(e.audio||e.video||e.audiovideo)}},LI=10,Kp=class{constructor(e){this.PTSKnown=!1,this.alignedSliding=!1,this.averagetargetduration=void 0,this.endCC=0,this.endSN=0,this.fragments=void 0,this.fragmentHint=void 0,this.partList=null,this.dateRanges=void 0,this.live=!0,this.ageHeader=0,this.advancedDateTime=void 0,this.updated=!0,this.advanced=!0,this.availabilityDelay=void 0,this.misses=0,this.startCC=0,this.startSN=0,this.startTimeOffset=null,this.targetduration=0,this.totalduration=0,this.type=null,this.url=void 0,this.m3u8="",this.version=null,this.canBlockReload=!1,this.canSkipUntil=0,this.canSkipDateRanges=!1,this.skippedSegments=0,this.recentlyRemovedDateranges=void 0,this.partHoldBack=0,this.holdBack=0,this.partTarget=0,this.preloadHint=void 0,this.renditionReports=void 0,this.tuneInGoal=0,this.deltaUpdateFailed=void 0,this.driftStartTime=0,this.driftEndTime=0,this.driftStart=0,this.driftEnd=0,this.encryptedFragments=void 0,this.playlistParsingError=null,this.variableList=null,this.hasVariableRefs=!1,this.fragments=[],this.encryptedFragments=[],this.dateRanges={},this.url=e}reloaded(e){if(!e){this.advanced=!0,this.updated=!0;return}let t=this.lastPartSn-e.lastPartSn,r=this.lastPartIndex-e.lastPartIndex;this.updated=this.endSN!==e.endSN||!!r||!!t||!this.live,this.advanced=this.endSN>e.endSN||t>0||t===0&&r>0,this.updated||this.advanced?this.misses=Math.floor(e.misses*.6):this.misses=e.misses+1,this.availabilityDelay=e.availabilityDelay}get hasProgramDateTime(){return this.fragments.length?oe(this.fragments[this.fragments.length-1].programDateTime):!1}get levelTargetDuration(){return this.averagetargetduration||this.targetduration||LI}get drift(){let e=this.driftEndTime-this.driftStartTime;return e>0?(this.driftEnd-this.driftStart)*1e3/e:1}get edge(){return this.partEnd||this.fragmentEnd}get partEnd(){var e;return(e=this.partList)!=null&&e.length?this.partList[this.partList.length-1].end:this.fragmentEnd}get fragmentEnd(){var e;return(e=this.fragments)!=null&&e.length?this.fragments[this.fragments.length-1].end:0}get age(){return this.advancedDateTime?Math.max(Date.now()-this.advancedDateTime,0)/1e3:0}get lastPartIndex(){var e;return(e=this.partList)!=null&&e.length?this.partList[this.partList.length-1].index:-1}get lastPartSn(){var e;return(e=this.partList)!=null&&e.length?this.partList[this.partList.length-1].fragment.sn:this.endSN}};function Vg(i){return Uint8Array.from(atob(i),e=>e.charCodeAt(0))}function RI(i){let e=bT(i).subarray(0,16),t=new Uint8Array(16);return t.set(e,16-e.length),t}function wI(i){let e=function(r,s,n){let a=r[s];r[s]=r[n],r[n]=a};e(i,0,3),e(i,1,2),e(i,4,5),e(i,6,7)}function CI(i){let e=i.split(":"),t=null;if(e[0]==="data"&&e.length===2){let r=e[1].split(";"),s=r[r.length-1].split(",");if(s.length===2){let n=s[0]==="base64",a=s[1];n?(r.splice(-1,1),t=Vg(a)):t=RI(a)}}return t}function bT(i){return Uint8Array.from(unescape(encodeURIComponent(i)),e=>e.charCodeAt(0))}var ht={CLEARKEY:"org.w3.clearkey",FAIRPLAY:"com.apple.fps",PLAYREADY:"com.microsoft.playready",WIDEVINE:"com.widevine.alpha"},oi={CLEARKEY:"org.w3.clearkey",FAIRPLAY:"com.apple.streamingkeydelivery",PLAYREADY:"com.microsoft.playready",WIDEVINE:"urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed"};function My(i){switch(i){case oi.FAIRPLAY:return ht.FAIRPLAY;case oi.PLAYREADY:return ht.PLAYREADY;case oi.WIDEVINE:return ht.WIDEVINE;case oi.CLEARKEY:return ht.CLEARKEY}}var yT={WIDEVINE:"edef8ba979d64acea3c827dcd51d21ed"};function DI(i){if(i===yT.WIDEVINE)return ht.WIDEVINE}function Py(i){switch(i){case ht.FAIRPLAY:return oi.FAIRPLAY;case ht.PLAYREADY:return oi.PLAYREADY;case ht.WIDEVINE:return oi.WIDEVINE;case ht.CLEARKEY:return oi.CLEARKEY}}function _p(i){let{drmSystems:e,widevineLicenseUrl:t}=i,r=e?[ht.FAIRPLAY,ht.WIDEVINE,ht.PLAYREADY,ht.CLEARKEY].filter(s=>!!e[s]):[];return!r[ht.WIDEVINE]&&t&&r.push(ht.WIDEVINE),r}var TT=function(){return typeof self!="undefined"&&self.navigator&&self.navigator.requestMediaKeySystemAccess?self.navigator.requestMediaKeySystemAccess.bind(self.navigator):null}();function MI(i,e,t,r){let s;switch(i){case ht.FAIRPLAY:s=["cenc","sinf"];break;case ht.WIDEVINE:case ht.PLAYREADY:s=["cenc"];break;case ht.CLEARKEY:s=["cenc","keyids"];break;default:throw new Error(`Unknown key-system: ${i}`)}return PI(s,e,t,r)}function PI(i,e,t,r){return[{initDataTypes:i,persistentState:r.persistentState||"not-allowed",distinctiveIdentifier:r.distinctiveIdentifier||"not-allowed",sessionTypes:r.sessionTypes||[r.sessionType||"temporary"],audioCapabilities:e.map(n=>({contentType:`audio/mp4; codecs="${n}"`,robustness:r.audioRobustness||"",encryptionScheme:r.audioEncryptionScheme||null})),videoCapabilities:t.map(n=>({contentType:`video/mp4; codecs="${n}"`,robustness:r.videoRobustness||"",encryptionScheme:r.videoEncryptionScheme||null}))}]}function $s(i,e,t){return Uint8Array.prototype.slice?i.slice(e,t):new Uint8Array(Array.prototype.slice.call(i,e,t))}var qg=(i,e)=>e+10<=i.length&&i[e]===73&&i[e+1]===68&&i[e+2]===51&&i[e+3]<255&&i[e+4]<255&&i[e+6]<128&&i[e+7]<128&&i[e+8]<128&&i[e+9]<128,_T=(i,e)=>e+10<=i.length&&i[e]===51&&i[e+1]===68&&i[e+2]===73&&i[e+3]<255&&i[e+4]<255&&i[e+6]<128&&i[e+7]<128&&i[e+8]<128&&i[e+9]<128,iu=(i,e)=>{let t=e,r=0;for(;qg(i,e);){r+=10;let s=_u(i,e+6);r+=s,_T(i,e+10)&&(r+=10),e+=r}if(r>0)return i.subarray(t,t+r)},_u=(i,e)=>{let t=0;return t=(i[e]&127)<<21,t|=(i[e+1]&127)<<14,t|=(i[e+2]&127)<<7,t|=i[e+3]&127,t},OI=(i,e)=>qg(i,e)&&_u(i,e+6)+10<=i.length-e,NI=i=>{let e=ST(i);for(let t=0;t<e.length;t++){let r=e[t];if(AT(r))return GI(r)}},AT=i=>i&&i.key==="PRIV"&&i.info==="com.apple.streaming.transportStreamTimestamp",UI=i=>{let e=String.fromCharCode(i[0],i[1],i[2],i[3]),t=_u(i,4),r=10;return{type:e,size:t,data:i.subarray(r,r+t)}},ST=i=>{let e=0,t=[];for(;qg(i,e);){let r=_u(i,e+6);e+=10;let s=e+r;for(;e+8<s;){let n=UI(i.subarray(e)),a=FI(n);a&&t.push(a),e+=n.size+10}_T(i,e)&&(e+=10)}return t},FI=i=>i.type==="PRIV"?BI(i):i.type[0]==="W"?HI(i):$I(i),BI=i=>{if(i.size<2)return;let e=vr(i.data,!0),t=new Uint8Array(i.data.subarray(e.length+1));return{key:i.type,info:e,data:t.buffer}},$I=i=>{if(i.size<2)return;if(i.type==="TXXX"){let t=1,r=vr(i.data.subarray(t),!0);t+=r.length+1;let s=vr(i.data.subarray(t));return{key:i.type,info:r,data:s}}let e=vr(i.data.subarray(1));return{key:i.type,data:e}},HI=i=>{if(i.type==="WXXX"){if(i.size<2)return;let t=1,r=vr(i.data.subarray(t),!0);t+=r.length+1;let s=vr(i.data.subarray(t));return{key:i.type,info:r,data:s}}let e=vr(i.data);return{key:i.type,data:e}},GI=i=>{if(i.data.byteLength===8){let e=new Uint8Array(i.data),t=e[3]&1,r=(e[4]<<23)+(e[5]<<15)+(e[6]<<7)+e[7];return r/=45,t&&(r+=4772185884e-2),Math.round(r)}},vr=(i,e=!1)=>{let t=WI();if(t){let d=t.decode(i);if(e){let c=d.indexOf("\0");return c!==-1?d.substring(0,c):d}return d.replace(/\0/g,"")}let r=i.length,s,n,a,o="",l=0;for(;l<r;){if(s=i[l++],s===0&&e)return o;if(s===0||s===3)continue;switch(s>>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:o+=String.fromCharCode(s);break;case 12:case 13:n=i[l++],o+=String.fromCharCode((s&31)<<6|n&63);break;case 14:n=i[l++],a=i[l++],o+=String.fromCharCode((s&15)<<12|(n&63)<<6|(a&63)<<0);break}}return o},Ap;function WI(){return!Ap&&typeof self.TextDecoder!="undefined"&&(Ap=new self.TextDecoder("utf-8")),Ap}var pr={hexDump:function(i){let e="";for(let t=0;t<i.length;t++){let r=i[t].toString(16);r.length<2&&(r="0"+r),e+=r}return e}},ru=Math.pow(2,32)-1,KI=[].push,xT={video:1,audio:2,id3:3,text:4};function Ft(i){return String.fromCharCode.apply(null,i)}function IT(i,e){let t=i[e]<<8|i[e+1];return t<0?65536+t:t}function ve(i,e){let t=kT(i,e);return t<0?4294967296+t:t}function kT(i,e){return i[e]<<24|i[e+1]<<16|i[e+2]<<8|i[e+3]}function Sp(i,e,t){i[e]=t>>24,i[e+1]=t>>16&255,i[e+2]=t>>8&255,i[e+3]=t&255}function Ue(i,e){let t=[];if(!e.length)return t;let r=i.byteLength;for(let s=0;s<r;){let n=ve(i,s),a=Ft(i.subarray(s+4,s+8)),o=n>1?s+n:r;if(a===e[0])if(e.length===1)t.push(i.subarray(s+8,o));else{let l=Ue(i.subarray(s+8,o),e.slice(1));l.length&&KI.apply(t,l)}s=o}return t}function VI(i){let e=[],t=i[0],r=8,s=ve(i,r);r+=4;let n=0,a=0;t===0?r+=8:r+=16,r+=2;let o=i.length+a,l=IT(i,r);r+=2;for(let d=0;d<l;d++){let c=r,u=ve(i,c);c+=4;let h=u&2147483647;if((u&2147483648)>>>31===1)return M.warn("SIDX has hierarchical references (not supported)"),null;let g=ve(i,c);c+=4,e.push({referenceSize:h,subsegmentDuration:g,info:{duration:g/s,start:o,end:o+h-1}}),o+=h,c+=4,r=c}return{earliestPresentationTime:n,timescale:s,version:t,referencesCount:l,references:e}}function LT(i){let e=[],t=Ue(i,["moov","trak"]);for(let s=0;s<t.length;s++){let n=t[s],a=Ue(n,["tkhd"])[0];if(a){let o=a[0],l=o===0?12:20,d=ve(a,l),c=Ue(n,["mdia","mdhd"])[0];if(c){o=c[0],l=o===0?12:20;let u=ve(c,l),h=Ue(n,["mdia","hdlr"])[0];if(h){let f=Ft(h.subarray(8,12)),g={soun:Qe.AUDIO,vide:Qe.VIDEO}[f];if(g){let E=Ue(n,["mdia","minf","stbl","stsd"])[0],y;E&&(y=Ft(E.subarray(12,16))),e[d]={timescale:u,type:g},e[g]={timescale:u,id:d,codec:y}}}}}}return Ue(i,["moov","mvex","trex"]).forEach(s=>{let n=ve(s,4),a=e[n];a&&(a.default={duration:ve(s,12),flags:ve(s,20)})}),e}function qI(i,e){if(!i||!e)return i;let t=e.keyId;return t&&e.isCommonEncryption&&Ue(i,["moov","trak"]).forEach(s=>{let a=Ue(s,["mdia","minf","stbl","stsd"])[0].subarray(8),o=Ue(a,["enca"]),l=o.length>0;l||(o=Ue(a,["encv"])),o.forEach(d=>{let c=l?d.subarray(28):d.subarray(78);Ue(c,["sinf"]).forEach(h=>{let f=RT(h);if(f){let g=f.subarray(8,24);g.some(E=>E!==0)||(M.log(`[eme] Patching keyId in 'enc${l?"a":"v"}>sinf>>tenc' box: ${pr.hexDump(g)} -> ${pr.hexDump(t)}`),f.set(t,8))}})})}),i}function RT(i){let e=Ue(i,["schm"])[0];if(e){let t=Ft(e.subarray(4,8));if(t==="cbcs"||t==="cenc")return Ue(i,["schi","tenc"])[0]}return M.error("[eme] missing 'schm' box"),null}function YI(i,e){return Ue(e,["moof","traf"]).reduce((t,r)=>{let s=Ue(r,["tfdt"])[0],n=s[0],a=Ue(r,["tfhd"]).reduce((o,l)=>{let d=ve(l,4),c=i[d];if(c){let u=ve(s,4);if(n===1){if(u===ru)return M.warn("[mp4-demuxer]: Ignoring assumed invalid signed 64-bit track fragment decode time"),o;u*=ru+1,u+=ve(s,8)}let h=c.timescale||9e4,f=u/h;if(oe(f)&&(o===null||f<o))return f}return o},null);return a!==null&&oe(a)&&(t===null||a<t)?a:t},null)}function jI(i,e){let t=0,r=0,s=0,n=Ue(i,["moof","traf"]);for(let a=0;a<n.length;a++){let o=n[a],l=Ue(o,["tfhd"])[0],d=ve(l,4),c=e[d];if(!c)continue;let u=c.default,h=ve(l,0)|(u==null?void 0:u.flags),f=u==null?void 0:u.duration;h&8&&(h&2?f=ve(l,12):f=ve(l,8));let g=c.timescale||9e4,E=Ue(o,["trun"]);for(let y=0;y<E.length;y++){if(t=zI(E[y]),!t&&f){let S=ve(E[y],4);t=f*S}c.type===Qe.VIDEO?r+=t/g:c.type===Qe.AUDIO&&(s+=t/g)}}if(r===0&&s===0){let a=0,o=Ue(i,["sidx"]);for(let l=0;l<o.length;l++){let d=VI(o[l]);d!=null&&d.references&&(a+=d.references.reduce((c,u)=>c+u.info.duration||0,0))}return a}return r||s}function zI(i){let e=ve(i,0),t=8;e&1&&(t+=4),e&4&&(t+=4);let r=0,s=ve(i,4);for(let n=0;n<s;n++){if(e&256){let a=ve(i,t);r+=a,t+=4}e&512&&(t+=4),e&1024&&(t+=4),e&2048&&(t+=4)}return r}function XI(i,e,t){Ue(e,["moof","traf"]).forEach(r=>{Ue(r,["tfhd"]).forEach(s=>{let n=ve(s,4),a=i[n];if(!a)return;let o=a.timescale||9e4;Ue(r,["tfdt"]).forEach(l=>{let d=l[0],c=ve(l,4);if(d===0)c-=t*o,c=Math.max(c,0),Sp(l,4,c);else{c*=Math.pow(2,32),c+=ve(l,8),c-=t*o,c=Math.max(c,0);let u=Math.floor(c/(ru+1)),h=Math.floor(c%(ru+1));Sp(l,4,u),Sp(l,8,h)}})})})}function QI(i){let e={valid:null,remainder:null},t=Ue(i,["moof"]);if(t){if(t.length<2)return e.remainder=i,e}else return e;let r=t[t.length-1];return e.valid=$s(i,0,r.byteOffset-8),e.remainder=$s(i,r.byteOffset-8),e}function Hs(i,e){let t=new Uint8Array(i.length+e.length);return t.set(i),t.set(e,i.length),t}function Oy(i,e){let t=[],r=e.samples,s=e.timescale,n=e.id,a=!1;return Ue(r,["moof"]).map(l=>{let d=l.byteOffset-8;Ue(l,["traf"]).map(u=>{let h=Ue(u,["tfdt"]).map(f=>{let g=f[0],E=ve(f,4);return g===1&&(E*=Math.pow(2,32),E+=ve(f,8)),E/s})[0];return h!==void 0&&(i=h),Ue(u,["tfhd"]).map(f=>{let g=ve(f,4),E=ve(f,0)&16777215,y=(E&1)!==0,S=(E&2)!==0,w=(E&8)!==0,L=0,F=(E&16)!==0,R=0,B=(E&32)!==0,P=8;g===n&&(y&&(P+=8),S&&(P+=4),w&&(L=ve(f,P),P+=4),F&&(R=ve(f,P),P+=4),B&&(P+=4),e.type==="video"&&(a=ZI(e.codec)),Ue(u,["trun"]).map($=>{let K=$[0],N=ve($,0)&16777215,z=(N&1)!==0,Y=0,ge=(N&4)!==0,me=(N&256)!==0,Ee=0,De=(N&512)!==0,Le=0,Z=(N&1024)!==0,te=(N&2048)!==0,ie=0,_e=ve($,4),Ae=8;z&&(Y=ve($,Ae),Ae+=4),ge&&(Ae+=4);let Je=Y+d;for(let Pt=0;Pt<_e;Pt++){if(me?(Ee=ve($,Ae),Ae+=4):Ee=L,De?(Le=ve($,Ae),Ae+=4):Le=R,Z&&(Ae+=4),te&&(K===0?ie=ve($,Ae):ie=kT($,Ae),Ae+=4),e.type===Qe.VIDEO){let Ot=0;for(;Ot<Le;){let kt=ve(r,Je);if(Je+=4,JI(a,r[Je])){let mi=r.subarray(Je,Je+kt);wT(mi,a?2:1,i+ie/s,t)}Je+=kt,Ot+=kt+4}}i+=Ee/s}}))})})}),t}function ZI(i){if(!i)return!1;let e=i.indexOf("."),t=e<0?i:i.substring(0,e);return t==="hvc1"||t==="hev1"||t==="dvh1"||t==="dvhe"}function JI(i,e){if(i){let t=e>>1&63;return t===39||t===40}else return(e&31)===6}function wT(i,e,t,r){let s=CT(i),n=0;n+=e;let a=0,o=0,l=!1,d=0;for(;n<s.length;){a=0;do{if(n>=s.length)break;d=s[n++],a+=d}while(d===255);o=0;do{if(n>=s.length)break;d=s[n++],o+=d}while(d===255);let c=s.length-n;if(!l&&a===4&&n<s.length){if(l=!0,s[n++]===181){let h=IT(s,n);if(n+=2,h===49){let f=ve(s,n);if(n+=4,f===1195456820){let g=s[n++];if(g===3){let E=s[n++],y=31&E,S=64&E,w=S?2+y*3:0,L=new Uint8Array(w);if(S){L[0]=E;for(let F=1;F<w;F++)L[F]=s[n++]}r.push({type:g,payloadType:a,pts:t,bytes:L})}}}}}else if(a===5&&o<c){if(l=!0,o>16){let u=[];for(let g=0;g<16;g++){let E=s[n++].toString(16);u.push(E.length==1?"0"+E:E),(g===3||g===5||g===7||g===9)&&u.push("-")}let h=o-16,f=new Uint8Array(h);for(let g=0;g<h;g++)f[g]=s[n++];r.push({payloadType:a,pts:t,uuid:u.join(""),userData:vr(f),userDataBytes:f})}}else if(o<c)n+=o;else if(o>c)break}}function CT(i){let e=i.byteLength,t=[],r=1;for(;r<e-2;)i[r]===0&&i[r+1]===0&&i[r+2]===3?(t.push(r+2),r+=2):r++;if(t.length===0)return i;let s=e-t.length,n=new Uint8Array(s),a=0;for(r=0;r<s;a++,r++)a===t[0]&&(a++,t.shift()),n[r]=i[a];return n}function ek(i){let e=i[0],t="",r="",s=0,n=0,a=0,o=0,l=0,d=0;if(e===0){for(;Ft(i.subarray(d,d+1))!=="\0";)t+=Ft(i.subarray(d,d+1)),d+=1;for(t+=Ft(i.subarray(d,d+1)),d+=1;Ft(i.subarray(d,d+1))!=="\0";)r+=Ft(i.subarray(d,d+1)),d+=1;r+=Ft(i.subarray(d,d+1)),d+=1,s=ve(i,12),n=ve(i,16),o=ve(i,20),l=ve(i,24),d=28}else if(e===1){d+=4,s=ve(i,d),d+=4;let u=ve(i,d);d+=4;let h=ve(i,d);for(d+=4,a=2**32*u+h,yI(a)||(a=Number.MAX_SAFE_INTEGER,M.warn("Presentation time exceeds safe integer limit and wrapped to max safe integer in parsing emsg box")),o=ve(i,d),d+=4,l=ve(i,d),d+=4;Ft(i.subarray(d,d+1))!=="\0";)t+=Ft(i.subarray(d,d+1)),d+=1;for(t+=Ft(i.subarray(d,d+1)),d+=1;Ft(i.subarray(d,d+1))!=="\0";)r+=Ft(i.subarray(d,d+1)),d+=1;r+=Ft(i.subarray(d,d+1)),d+=1}let c=i.subarray(d,i.byteLength);return{schemeIdUri:t,value:r,timeScale:s,presentationTime:a,presentationTimeDelta:n,eventDuration:o,id:l,payload:c}}function tk(i,...e){let t=e.length,r=8,s=t;for(;s--;)r+=e[s].byteLength;let n=new Uint8Array(r);for(n[0]=r>>24&255,n[1]=r>>16&255,n[2]=r>>8&255,n[3]=r&255,n.set(i,4),s=0,r=8;s<t;s++)n.set(e[s],r),r+=e[s].byteLength;return n}function ik(i,e,t){if(i.byteLength!==16)throw new RangeError("Invalid system id");let r,s;if(e){r=1,s=new Uint8Array(e.length*16);for(let o=0;o<e.length;o++){let l=e[o];if(l.byteLength!==16)throw new RangeError("Invalid key");s.set(l,o*16)}}else r=0,s=new Uint8Array;let n;r>0?(n=new Uint8Array(4),e.length>0&&new DataView(n.buffer).setUint32(0,e.length,!1)):n=new Uint8Array;let a=new Uint8Array(4);return t&&t.byteLength>0&&new DataView(a.buffer).setUint32(0,t.byteLength,!1),tk([112,115,115,104],new Uint8Array([r,0,0,0]),i,n,s,a,t||new Uint8Array)}function rk(i){if(!(i instanceof ArrayBuffer)||i.byteLength<32)return null;let e={version:0,systemId:"",kids:null,data:null},t=new DataView(i),r=t.getUint32(0);if(i.byteLength!==r&&r>44||t.getUint32(4)!==1886614376||(e.version=t.getUint32(8)>>>24,e.version>1))return null;e.systemId=pr.hexDump(new Uint8Array(i,12,16));let n=t.getUint32(28);if(e.version===0){if(r-32<n)return null;e.data=new Uint8Array(i,32,n)}else if(e.version===1){e.kids=[];for(let a=0;a<n;a++)e.kids.push(new Uint8Array(i,32+a*16,16))}return e}var Kc={},xo=class i{static clearKeyUriToKeyIdMap(){Kc={}}constructor(e,t,r,s=[1],n=null){this.uri=void 0,this.method=void 0,this.keyFormat=void 0,this.keyFormatVersions=void 0,this.encrypted=void 0,this.isCommonEncryption=void 0,this.iv=null,this.key=null,this.keyId=null,this.pssh=null,this.method=e,this.uri=t,this.keyFormat=r,this.keyFormatVersions=s,this.iv=n,this.encrypted=e?e!=="NONE":!1,this.isCommonEncryption=this.encrypted&&e!=="AES-128"}isSupported(){if(this.method){if(this.method==="AES-128"||this.method==="NONE")return!0;if(this.keyFormat==="identity")return this.method==="SAMPLE-AES";switch(this.keyFormat){case oi.FAIRPLAY:case oi.WIDEVINE:case oi.PLAYREADY:case oi.CLEARKEY:return["ISO-23001-7","SAMPLE-AES","SAMPLE-AES-CENC","SAMPLE-AES-CTR"].indexOf(this.method)!==-1}}return!1}getDecryptData(e){if(!this.encrypted||!this.uri)return null;if(this.method==="AES-128"&&this.uri&&!this.iv){typeof e!="number"&&(this.method==="AES-128"&&!this.iv&&M.warn(`missing IV for initialization segment with method="${this.method}" - compliance issue`),e=0);let r=sk(e);return new i(this.method,this.uri,"identity",this.keyFormatVersions,r)}let t=CI(this.uri);if(t)switch(this.keyFormat){case oi.WIDEVINE:this.pssh=t,t.length>=22&&(this.keyId=t.subarray(t.length-22,t.length-6));break;case oi.PLAYREADY:{let r=new Uint8Array([154,4,240,121,152,64,66,134,171,146,230,91,224,136,95,149]);this.pssh=ik(r,null,t);let s=new Uint16Array(t.buffer,t.byteOffset,t.byteLength/2),n=String.fromCharCode.apply(null,Array.from(s)),a=n.substring(n.indexOf("<"),n.length),d=new DOMParser().parseFromString(a,"text/xml").getElementsByTagName("KID")[0];if(d){let c=d.childNodes[0]?d.childNodes[0].nodeValue:d.getAttribute("VALUE");if(c){let u=Vg(c).subarray(0,16);wI(u),this.keyId=u}}break}default:{let r=t.subarray(0,16);if(r.length!==16){let s=new Uint8Array(16);s.set(r,16-r.length),r=s}this.keyId=r;break}}if(!this.keyId||this.keyId.byteLength!==16){let r=Kc[this.uri];if(!r){let s=Object.keys(Kc).length%Number.MAX_SAFE_INTEGER;r=new Uint8Array(16),new DataView(r.buffer,12,4).setUint32(0,s),Kc[this.uri]=r}this.keyId=r}return this}};function sk(i){let e=new Uint8Array(16);for(let t=12;t<16;t++)e[t]=i>>8*(15-t)&255;return e}var DT=/\{\$([a-zA-Z0-9-_]+)\}/g;function Ny(i){return DT.test(i)}function ni(i,e,t){if(i.variableList!==null||i.hasVariableRefs)for(let r=t.length;r--;){let s=t[r],n=e[s];n&&(e[s]=Vp(i,n))}}function Vp(i,e){if(i.variableList!==null||i.hasVariableRefs){let t=i.variableList;return e.replace(DT,r=>{let s=r.substring(2,r.length-1),n=t==null?void 0:t[s];return n===void 0?(i.playlistParsingError||(i.playlistParsingError=new Error(`Missing preceding EXT-X-DEFINE tag for Variable Reference: "${s}"`)),r):n})}return e}function Uy(i,e,t){let r=i.variableList;r||(i.variableList=r={});let s,n;if("QUERYPARAM"in e){s=e.QUERYPARAM;try{let a=new self.URL(t).searchParams;if(a.has(s))n=a.get(s);else throw new Error(`"${s}" does not match any query parameter in URI: "${t}"`)}catch(a){i.playlistParsingError||(i.playlistParsingError=new Error(`EXT-X-DEFINE QUERYPARAM: ${a.message}`))}}else s=e.NAME,n=e.VALUE;s in r?i.playlistParsingError||(i.playlistParsingError=new Error(`EXT-X-DEFINE duplicate Variable Name declarations: "${s}"`)):r[s]=n||""}function nk(i,e,t){let r=e.IMPORT;if(t&&r in t){let s=i.variableList;s||(i.variableList=s={}),s[r]=t[r]}else i.playlistParsingError||(i.playlistParsingError=new Error(`EXT-X-DEFINE IMPORT attribute not found in Multivariant Playlist: "${r}"`))}function Au(){if(typeof self!="undefined")return self.MediaSource||self.WebKitMediaSource}var ak={audio:{a3ds:!0,"ac-3":!0,"ac-4":!0,alac:!0,alaw:!0,dra1:!0,"dts+":!0,"dts-":!0,dtsc:!0,dtse:!0,dtsh:!0,"ec-3":!0,enca:!0,g719:!0,g726:!0,m4ae:!0,mha1:!0,mha2:!0,mhm1:!0,mhm2:!0,mlpa:!0,mp4a:!0,"raw ":!0,Opus:!0,opus:!0,samr:!0,sawb:!0,sawp:!0,sevc:!0,sqcp:!0,ssmv:!0,twos:!0,ulaw:!0},video:{avc1:!0,avc2:!0,avc3:!0,avc4:!0,avcp:!0,av01:!0,drac:!0,dva1:!0,dvav:!0,dvh1:!0,dvhe:!0,encv:!0,hev1:!0,hvc1:!0,mjp2:!0,mp4v:!0,mvc1:!0,mvc2:!0,mvc3:!0,mvc4:!0,resv:!0,rv60:!0,s263:!0,svc1:!0,svc2:!0,"vc-1":!0,vp08:!0,vp09:!0},text:{stpp:!0,wvtt:!0}},Fy=Au();function ok(i,e){let t=ak[e];return!!t&&t[i.slice(0,4)]===!0}function xp(i,e){var t;return(t=Fy==null?void 0:Fy.isTypeSupported(`${e||"video"}/mp4;codecs="${i}"`))!=null?t:!1}var By=/#EXT-X-STREAM-INF:([^\r\n]*)(?:[\r\n](?:#[^\r\n]*)?)*([^\r\n]+)|#EXT-X-(SESSION-DATA|SESSION-KEY|DEFINE|CONTENT-STEERING|START):([^\r\n]*)[\r\n]+/g,$y=/#EXT-X-MEDIA:(.*)/g,lk=/^#EXT(?:INF|-X-TARGETDURATION):/m,Hy=new RegExp([/#EXTINF:\s*(\d*(?:\.\d+)?)(?:,(.*)\s+)?/.source,/(?!#) *(\S[\S ]*)/.source,/#EXT-X-BYTERANGE:*(.+)/.source,/#EXT-X-PROGRAM-DATE-TIME:(.+)/.source,/#.*/.source].join("|"),"g"),dk=new RegExp([/#(EXTM3U)/.source,/#EXT-X-(DATERANGE|DEFINE|KEY|MAP|PART|PART-INF|PLAYLIST-TYPE|PRELOAD-HINT|RENDITION-REPORT|SERVER-CONTROL|SKIP|START):(.+)/.source,/#EXT-X-(BITRATE|DISCONTINUITY-SEQUENCE|MEDIA-SEQUENCE|TARGETDURATION|VERSION): *(\d+)/.source,/#EXT-X-(DISCONTINUITY|ENDLIST|GAP)/.source,/(#)([^:]*):(.*)/.source,/(#)(.*)(?:.*)\r?\n?/.source].join("|")),Bs=class i{static findGroup(e,t){for(let r=0;r<e.length;r++){let s=e[r];if(s.id===t)return s}}static convertAVC1ToAVCOTI(e){let t=e.split(".");if(t.length>2){let r=t.shift()+".";return r+=parseInt(t.shift()).toString(16),r+=("000"+parseInt(t.shift()).toString(16)).slice(-4),r}return e}static resolve(e,t){return Kg.buildAbsoluteURL(t,e,{alwaysNormalize:!0})}static isMediaPlaylist(e){return lk.test(e)}static parseMasterPlaylist(e,t){let r=Ny(e),s={contentSteering:null,levels:[],playlistParsingError:null,sessionData:null,sessionKeys:null,startTimeOffset:null,variableList:null,hasVariableRefs:r},n=[];By.lastIndex=0;let a;for(;(a=By.exec(e))!=null;)if(a[1]){var o;let d=new ut(a[1]);ni(s,d,["CODECS","SUPPLEMENTAL-CODECS","ALLOWED-CPC","PATHWAY-ID","STABLE-VARIANT-ID","AUDIO","VIDEO","SUBTITLES","CLOSED-CAPTIONS","NAME"]);let c=Vp(s,a[2]),u={attrs:d,bitrate:d.decimalInteger("AVERAGE-BANDWIDTH")||d.decimalInteger("BANDWIDTH"),name:d.NAME,url:i.resolve(c,t)},h=d.decimalResolution("RESOLUTION");h&&(u.width=h.width,u.height=h.height),ck((d.CODECS||"").split(/[ ,]+/).filter(f=>f),u),u.videoCodec&&u.videoCodec.indexOf("avc1")!==-1&&(u.videoCodec=i.convertAVC1ToAVCOTI(u.videoCodec)),(o=u.unknownCodecs)!=null&&o.length||n.push(u),s.levels.push(u)}else if(a[3]){let d=a[3],c=a[4];switch(d){case"SESSION-DATA":{let u=new ut(c);ni(s,u,["DATA-ID","LANGUAGE","VALUE","URI"]);let h=u["DATA-ID"];h&&(s.sessionData===null&&(s.sessionData={}),s.sessionData[h]=u);break}case"SESSION-KEY":{let u=Gy(c,t,s);u.encrypted&&u.isSupported()?(s.sessionKeys===null&&(s.sessionKeys=[]),s.sessionKeys.push(u)):M.warn(`[Keys] Ignoring invalid EXT-X-SESSION-KEY tag: "${c}"`);break}case"DEFINE":{{let u=new ut(c);ni(s,u,["NAME","VALUE","QUERYPARAM"]),Uy(s,u,t)}break}case"CONTENT-STEERING":{let u=new ut(c);ni(s,u,["SERVER-URI","PATHWAY-ID"]),s.contentSteering={uri:i.resolve(u["SERVER-URI"],t),pathwayId:u["PATHWAY-ID"]||"."};break}case"START":{s.startTimeOffset=Wy(c);break}}}let l=n.length>0&&n.length<s.levels.length;return s.levels=l?n:s.levels,s.levels.length===0&&(s.playlistParsingError=new Error("no levels found in manifest")),s}static parseMasterPlaylistMedia(e,t,r){let s,n={},a=r.levels,o={AUDIO:a.map(d=>({id:d.attrs.AUDIO,audioCodec:d.audioCodec})),SUBTITLES:a.map(d=>({id:d.attrs.SUBTITLES,textCodec:d.textCodec})),"CLOSED-CAPTIONS":[]},l=0;for($y.lastIndex=0;(s=$y.exec(e))!==null;){let d=new ut(s[1]),c=d.TYPE;if(c){let u=o[c],h=n[c]||[];n[c]=h,ni(r,d,["URI","GROUP-ID","LANGUAGE","ASSOC-LANGUAGE","STABLE-RENDITION-ID","NAME","INSTREAM-ID","CHARACTERISTICS","CHANNELS"]);let f={attrs:d,bitrate:0,id:l++,groupId:d["GROUP-ID"]||"",instreamId:d["INSTREAM-ID"],name:d.NAME||d.LANGUAGE||"",type:c,default:d.bool("DEFAULT"),autoselect:d.bool("AUTOSELECT"),forced:d.bool("FORCED"),lang:d.LANGUAGE,url:d.URI?i.resolve(d.URI,t):""};if(u!=null&&u.length){let g=i.findGroup(u,f.groupId)||u[0];Ky(f,g,"audioCodec"),Ky(f,g,"textCodec")}h.push(f)}}return n}static parseLevelPlaylist(e,t,r,s,n,a){let o=new Kp(t),l=o.fragments,d=null,c=0,u=0,h=0,f=0,g=null,E=new To(s,t),y,S,w,L=-1,F=!1;for(Hy.lastIndex=0,o.m3u8=e,o.hasVariableRefs=Ny(e);(y=Hy.exec(e))!==null;){F&&(F=!1,E=new To(s,t),E.start=h,E.sn=c,E.cc=f,E.level=r,d&&(E.initSegment=d,E.rawProgramDateTime=d.rawProgramDateTime,d.rawProgramDateTime=null));let $=y[1];if($){E.duration=parseFloat($);let K=(" "+y[2]).slice(1);E.title=K||null,E.tagList.push(K?["INF",$,K]:["INF",$])}else if(y[3]){if(oe(E.duration)){E.start=h,w&&Yy(E,w,o),E.sn=c,E.level=r,E.cc=f,E.urlId=n,l.push(E);let K=(" "+y[3]).slice(1);E.relurl=Vp(o,K),Vy(E,g),g=E,h+=E.duration,c++,u=0,F=!0}}else if(y[4]){let K=(" "+y[4]).slice(1);g?E.setByteRange(K,g):E.setByteRange(K)}else if(y[5])E.rawProgramDateTime=(" "+y[5]).slice(1),E.tagList.push(["PROGRAM-DATE-TIME",E.rawProgramDateTime]),L===-1&&(L=l.length);else{if(y=y[0].match(dk),!y){M.warn("No matches on slow regex match for level playlist!");continue}for(S=1;S<y.length&&typeof y[S]=="undefined";S++);let K=(" "+y[S]).slice(1),N=(" "+y[S+1]).slice(1),z=y[S+2]?(" "+y[S+2]).slice(1):"";switch(K){case"PLAYLIST-TYPE":o.type=N.toUpperCase();break;case"MEDIA-SEQUENCE":c=o.startSN=parseInt(N);break;case"SKIP":{let Y=new ut(N);ni(o,Y,["RECENTLY-REMOVED-DATERANGES"]);let ge=Y.decimalInteger("SKIPPED-SEGMENTS");if(oe(ge)){o.skippedSegments=ge;for(let Ee=ge;Ee--;)l.unshift(null);c+=ge}let me=Y.enumeratedString("RECENTLY-REMOVED-DATERANGES");me&&(o.recentlyRemovedDateranges=me.split(" "));break}case"TARGETDURATION":o.targetduration=Math.max(parseInt(N),1);break;case"VERSION":o.version=parseInt(N);break;case"EXTM3U":break;case"ENDLIST":o.live=!1;break;case"#":(N||z)&&E.tagList.push(z?[N,z]:[N]);break;case"DISCONTINUITY":f++,E.tagList.push(["DIS"]);break;case"GAP":E.gap=!0,E.tagList.push([K]);break;case"BITRATE":E.tagList.push([K,N]);break;case"DATERANGE":{let Y=new ut(N);ni(o,Y,["ID","CLASS","START-DATE","END-DATE","SCTE35-CMD","SCTE35-OUT","SCTE35-IN"]),ni(o,Y,Y.clientAttrs);let ge=new eu(Y,o.dateRanges[Y.ID]);ge.isValid||o.skippedSegments?o.dateRanges[ge.id]=ge:M.warn(`Ignoring invalid DATERANGE tag: "${N}"`),E.tagList.push(["EXT-X-DATERANGE",N]);break}case"DEFINE":{{let Y=new ut(N);ni(o,Y,["NAME","VALUE","IMPORT","QUERYPARAM"]),"IMPORT"in Y?nk(o,Y,a):Uy(o,Y,t)}break}case"DISCONTINUITY-SEQUENCE":f=parseInt(N);break;case"KEY":{let Y=Gy(N,t,o);if(Y.isSupported()){if(Y.method==="NONE"){w=void 0;break}w||(w={}),w[Y.keyFormat]&&(w=xt({},w)),w[Y.keyFormat]=Y}else M.warn(`[Keys] Ignoring invalid EXT-X-KEY tag: "${N}"`);break}case"START":o.startTimeOffset=Wy(N);break;case"MAP":{let Y=new ut(N);if(ni(o,Y,["BYTERANGE","URI"]),E.duration){let ge=new To(s,t);qy(ge,Y,r,w),d=ge,E.initSegment=d,d.rawProgramDateTime&&!E.rawProgramDateTime&&(E.rawProgramDateTime=d.rawProgramDateTime)}else qy(E,Y,r,w),d=E,F=!0;break}case"SERVER-CONTROL":{let Y=new ut(N);o.canBlockReload=Y.bool("CAN-BLOCK-RELOAD"),o.canSkipUntil=Y.optionalFloat("CAN-SKIP-UNTIL",0),o.canSkipDateRanges=o.canSkipUntil>0&&Y.bool("CAN-SKIP-DATERANGES"),o.partHoldBack=Y.optionalFloat("PART-HOLD-BACK",0),o.holdBack=Y.optionalFloat("HOLD-BACK",0);break}case"PART-INF":{let Y=new ut(N);o.partTarget=Y.decimalFloatingPoint("PART-TARGET");break}case"PART":{let Y=o.partList;Y||(Y=o.partList=[]);let ge=u>0?Y[Y.length-1]:void 0,me=u++,Ee=new ut(N);ni(o,Ee,["BYTERANGE","URI"]);let De=new Wp(Ee,E,t,me,ge);Y.push(De),E.duration+=De.duration;break}case"PRELOAD-HINT":{let Y=new ut(N);ni(o,Y,["URI"]),o.preloadHint=Y;break}case"RENDITION-REPORT":{let Y=new ut(N);ni(o,Y,["URI"]),o.renditionReports=o.renditionReports||[],o.renditionReports.push(Y);break}default:M.warn(`line parsed but not handled: ${y}`);break}}}g&&!g.relurl?(l.pop(),h-=g.duration,o.partList&&(o.fragmentHint=g)):o.partList&&(Vy(E,g),E.cc=f,o.fragmentHint=E,w&&Yy(E,w,o));let R=l.length,B=l[0],P=l[R-1];if(h+=o.skippedSegments*o.targetduration,h>0&&R&&P){o.averagetargetduration=h/R;let $=P.sn;o.endSN=$!=="initSegment"?$:0,o.live||(P.endList=!0),B&&(o.startCC=B.cc)}else o.endSN=0,o.startCC=0;return o.fragmentHint&&(h+=o.fragmentHint.duration),o.totalduration=h,o.endCC=f,L>0&&uk(l,L),o}};function Gy(i,e,t){var r,s;let n=new ut(i);ni(t,n,["KEYFORMAT","KEYFORMATVERSIONS","URI","IV","URI"]);let a=(r=n.METHOD)!=null?r:"",o=n.URI,l=n.hexadecimalInteger("IV"),d=n.KEYFORMATVERSIONS,c=(s=n.KEYFORMAT)!=null?s:"identity";o&&n.IV&&!l&&M.error(`Invalid IV: ${n.IV}`);let u=o?Bs.resolve(o,e):"",h=(d||"1").split("/").map(Number).filter(Number.isFinite);return new xo(a,u,c,h,l)}function Wy(i){let t=new ut(i).decimalFloatingPoint("TIME-OFFSET");return oe(t)?t:null}function ck(i,e){["video","audio","text"].forEach(t=>{let r=i.filter(s=>ok(s,t));if(r.length){let s=r.filter(n=>n.lastIndexOf("avc1",0)===0||n.lastIndexOf("mp4a",0)===0);e[`${t}Codec`]=s.length>0?s[0]:r[0],i=i.filter(n=>r.indexOf(n)===-1)}}),e.unknownCodecs=i}function Ky(i,e,t){let r=e[t];r&&(i[t]=r)}function uk(i,e){let t=i[e];for(let r=e;r--;){let s=i[r];if(!s)return;s.programDateTime=t.programDateTime-s.duration*1e3,t=s}}function Vy(i,e){i.rawProgramDateTime?i.programDateTime=Date.parse(i.rawProgramDateTime):e!=null&&e.programDateTime&&(i.programDateTime=e.endProgramDateTime),oe(i.programDateTime)||(i.programDateTime=null,i.rawProgramDateTime=null)}function qy(i,e,t,r){i.relurl=e.URI,e.BYTERANGE&&i.setByteRange(e.BYTERANGE),i.level=t,i.sn="initSegment",r&&(i.levelkeys=r),i.initSegment=null}function Yy(i,e,t){i.levelkeys=e;let{encryptedFragments:r}=t;(!r.length||r[r.length-1].levelkeys!==e)&&Object.keys(e).some(s=>e[s].isCommonEncryption)&&r.push(i)}var Fe={MANIFEST:"manifest",LEVEL:"level",AUDIO_TRACK:"audioTrack",SUBTITLE_TRACK:"subtitleTrack"},fe={MAIN:"main",AUDIO:"audio",SUBTITLE:"subtitle"};function jy(i){let{type:e}=i;switch(e){case Fe.AUDIO_TRACK:return fe.AUDIO;case Fe.SUBTITLE_TRACK:return fe.SUBTITLE;default:return fe.MAIN}}function Ip(i,e){let t=i.url;return(t===void 0||t.indexOf("data:")===0)&&(t=e.url),t}var qp=class{constructor(e){this.hls=void 0,this.loaders=Object.create(null),this.variableList=null,this.hls=e,this.registerListeners()}startLoad(e){}stopLoad(){this.destroyInternalLoaders()}registerListeners(){let{hls:e}=this;e.on(b.MANIFEST_LOADING,this.onManifestLoading,this),e.on(b.LEVEL_LOADING,this.onLevelLoading,this),e.on(b.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),e.on(b.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this)}unregisterListeners(){let{hls:e}=this;e.off(b.MANIFEST_LOADING,this.onManifestLoading,this),e.off(b.LEVEL_LOADING,this.onLevelLoading,this),e.off(b.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),e.off(b.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this)}createInternalLoader(e){let t=this.hls.config,r=t.pLoader,s=t.loader,n=r||s,a=new n(t);return this.loaders[e.type]=a,a}getInternalLoader(e){return this.loaders[e.type]}resetInternalLoader(e){this.loaders[e]&&delete this.loaders[e]}destroyInternalLoaders(){for(let e in this.loaders){let t=this.loaders[e];t&&t.destroy(),this.resetInternalLoader(e)}}destroy(){this.variableList=null,this.unregisterListeners(),this.destroyInternalLoaders()}onManifestLoading(e,t){let{url:r}=t;this.variableList=null,this.load({id:null,level:0,responseType:"text",type:Fe.MANIFEST,url:r,deliveryDirectives:null})}onLevelLoading(e,t){let{id:r,level:s,url:n,deliveryDirectives:a}=t;this.load({id:r,level:s,responseType:"text",type:Fe.LEVEL,url:n,deliveryDirectives:a})}onAudioTrackLoading(e,t){let{id:r,groupId:s,url:n,deliveryDirectives:a}=t;this.load({id:r,groupId:s,level:null,responseType:"text",type:Fe.AUDIO_TRACK,url:n,deliveryDirectives:a})}onSubtitleTrackLoading(e,t){let{id:r,groupId:s,url:n,deliveryDirectives:a}=t;this.load({id:r,groupId:s,level:null,responseType:"text",type:Fe.SUBTITLE_TRACK,url:n,deliveryDirectives:a})}load(e){var t;let r=this.hls.config,s=this.getInternalLoader(e);if(s){let d=s.context;if(d&&d.url===e.url){M.trace("[playlist-loader]: playlist request ongoing");return}M.log(`[playlist-loader]: aborting previous loader for type: ${e.type}`),s.abort()}let n;if(e.type===Fe.MANIFEST?n=r.manifestLoadPolicy.default:n=xt({},r.playlistLoadPolicy.default,{timeoutRetry:null,errorRetry:null}),s=this.createInternalLoader(e),(t=e.deliveryDirectives)!=null&&t.part){let d;if(e.type===Fe.LEVEL&&e.level!==null?d=this.hls.levels[e.level].details:e.type===Fe.AUDIO_TRACK&&e.id!==null?d=this.hls.audioTracks[e.id].details:e.type===Fe.SUBTITLE_TRACK&&e.id!==null&&(d=this.hls.subtitleTracks[e.id].details),d){let c=d.partTarget,u=d.targetduration;if(c&&u){let h=Math.max(c*3,u*.8)*1e3;n=xt({},n,{maxTimeToFirstByteMs:Math.min(h,n.maxTimeToFirstByteMs),maxLoadTimeMs:Math.min(h,n.maxTimeToFirstByteMs)})}}}let a=n.errorRetry||n.timeoutRetry||{},o={loadPolicy:n,timeout:n.maxLoadTimeMs,maxRetry:a.maxNumRetry||0,retryDelay:a.retryDelayMs||0,maxRetryDelay:a.maxRetryDelayMs||0},l={onSuccess:(d,c,u,h)=>{let f=this.getInternalLoader(u);this.resetInternalLoader(u.type);let g=d.data;if(g.indexOf("#EXTM3U")!==0){this.handleManifestParsingError(d,u,new Error("no EXTM3U delimiter"),h||null,c);return}c.parsing.start=performance.now(),Bs.isMediaPlaylist(g)?this.handleTrackOrLevelPlaylist(d,c,u,h||null,f):this.handleMasterPlaylist(d,c,u,h)},onError:(d,c,u,h)=>{this.handleNetworkError(c,u,!1,d,h)},onTimeout:(d,c,u)=>{this.handleNetworkError(c,u,!0,void 0,d)}};s.load(e,o,l)}handleMasterPlaylist(e,t,r,s){let n=this.hls,a=e.data,o=Ip(e,r),l=Bs.parseMasterPlaylist(a,o);if(l.playlistParsingError){this.handleManifestParsingError(e,r,l.playlistParsingError,s,t);return}let{contentSteering:d,levels:c,sessionData:u,sessionKeys:h,startTimeOffset:f,variableList:g}=l;this.variableList=g;let{AUDIO:E=[],SUBTITLES:y,"CLOSED-CAPTIONS":S}=Bs.parseMasterPlaylistMedia(a,o,l);E.length&&!E.some(L=>!L.url)&&c[0].audioCodec&&!c[0].attrs.AUDIO&&(M.log("[playlist-loader]: audio codec signaled in quality level, but no embedded audio track signaled, create one"),E.unshift({type:"main",name:"main",groupId:"main",default:!1,autoselect:!1,forced:!1,id:-1,attrs:new ut({}),bitrate:0,url:""})),n.trigger(b.MANIFEST_LOADED,{levels:c,audioTracks:E,subtitles:y,captions:S,contentSteering:d,url:o,stats:t,networkDetails:s,sessionData:u,sessionKeys:h,startTimeOffset:f,variableList:g})}handleTrackOrLevelPlaylist(e,t,r,s,n){let a=this.hls,{id:o,level:l,type:d}=r,c=Ip(e,r),u=oe(o)?o:0,h=oe(l)?l:u,f=jy(r),g=Bs.parseLevelPlaylist(e.data,c,h,f,u,this.variableList);if(d===Fe.MANIFEST){let E={attrs:new ut({}),bitrate:0,details:g,name:"",url:c};a.trigger(b.MANIFEST_LOADED,{levels:[E],audioTracks:[],url:c,stats:t,networkDetails:s,sessionData:null,sessionKeys:null,contentSteering:null,startTimeOffset:null,variableList:null})}t.parsing.end=performance.now(),r.levelDetails=g,this.handlePlaylistLoaded(g,e,t,r,s,n)}handleManifestParsingError(e,t,r,s,n){this.hls.trigger(b.ERROR,{type:he.NETWORK_ERROR,details:H.MANIFEST_PARSING_ERROR,fatal:t.type===Fe.MANIFEST,url:e.url,err:r,error:r,reason:r.message,response:e,context:t,networkDetails:s,stats:n})}handleNetworkError(e,t,r=!1,s,n){let a=`A network ${r?"timeout":"error"+(s?" (status "+s.code+")":"")} occurred while loading ${e.type}`;e.type===Fe.LEVEL?a+=`: ${e.level} id: ${e.id}`:(e.type===Fe.AUDIO_TRACK||e.type===Fe.SUBTITLE_TRACK)&&(a+=` id: ${e.id} group-id: "${e.groupId}"`);let o=new Error(a);M.warn(`[playlist-loader]: ${a}`);let l=H.UNKNOWN,d=!1,c=this.getInternalLoader(e);switch(e.type){case Fe.MANIFEST:l=r?H.MANIFEST_LOAD_TIMEOUT:H.MANIFEST_LOAD_ERROR,d=!0;break;case Fe.LEVEL:l=r?H.LEVEL_LOAD_TIMEOUT:H.LEVEL_LOAD_ERROR,d=!1;break;case Fe.AUDIO_TRACK:l=r?H.AUDIO_TRACK_LOAD_TIMEOUT:H.AUDIO_TRACK_LOAD_ERROR,d=!1;break;case Fe.SUBTITLE_TRACK:l=r?H.SUBTITLE_TRACK_LOAD_TIMEOUT:H.SUBTITLE_LOAD_ERROR,d=!1;break}c&&this.resetInternalLoader(e.type);let u={type:he.NETWORK_ERROR,details:l,fatal:d,url:e.url,loader:c,context:e,error:o,networkDetails:t,stats:n};if(s){let h=(t==null?void 0:t.url)||e.url;u.response=Zt({url:h,data:void 0},s)}this.hls.trigger(b.ERROR,u)}handlePlaylistLoaded(e,t,r,s,n,a){let o=this.hls,{type:l,level:d,id:c,groupId:u,deliveryDirectives:h}=s,f=Ip(t,s),g=jy(s),E=typeof s.level=="number"&&g===fe.MAIN?d:void 0;if(!e.fragments.length){let S=new Error("No Segments found in Playlist");o.trigger(b.ERROR,{type:he.NETWORK_ERROR,details:H.LEVEL_EMPTY_ERROR,fatal:!1,url:f,error:S,reason:S.message,response:t,context:s,level:E,parent:g,networkDetails:n,stats:r});return}e.targetduration||(e.playlistParsingError=new Error("Missing Target Duration"));let y=e.playlistParsingError;if(y){o.trigger(b.ERROR,{type:he.NETWORK_ERROR,details:H.LEVEL_PARSING_ERROR,fatal:!1,url:f,error:y,reason:y.message,response:t,context:s,level:E,parent:g,networkDetails:n,stats:r});return}switch(e.live&&a&&(a.getCacheAge&&(e.ageHeader=a.getCacheAge()||0),(!a.getCacheAge||isNaN(e.ageHeader))&&(e.ageHeader=0)),l){case Fe.MANIFEST:case Fe.LEVEL:o.trigger(b.LEVEL_LOADED,{details:e,level:E||0,id:c||0,stats:r,networkDetails:n,deliveryDirectives:h});break;case Fe.AUDIO_TRACK:o.trigger(b.AUDIO_TRACK_LOADED,{details:e,id:c||0,groupId:u||"",stats:r,networkDetails:n,deliveryDirectives:h});break;case Fe.SUBTITLE_TRACK:o.trigger(b.SUBTITLE_TRACK_LOADED,{details:e,id:c||0,groupId:u||"",stats:r,networkDetails:n,deliveryDirectives:h});break}}};function MT(i,e){let t;try{t=new Event("addtrack")}catch{t=document.createEvent("Event"),t.initEvent("addtrack",!1,!1)}t.track=i,e.dispatchEvent(t)}function PT(i,e){let t=i.mode;if(t==="disabled"&&(i.mode="hidden"),i.cues&&!i.cues.getCueById(e.id))try{if(i.addCue(e),!i.cues.getCueById(e.id))throw new Error(`addCue is failed for: ${e}`)}catch(r){M.debug(`[texttrack-utils]: ${r}`);try{let s=new self.TextTrackCue(e.startTime,e.endTime,e.text);s.id=e.id,i.addCue(s)}catch(s){M.debug(`[texttrack-utils]: Legacy TextTrackCue fallback failed: ${s}`)}}t==="disabled"&&(i.mode=t)}function Jn(i){let e=i.mode;if(e==="disabled"&&(i.mode="hidden"),i.cues)for(let t=i.cues.length;t--;)i.removeCue(i.cues[t]);e==="disabled"&&(i.mode=e)}function Yp(i,e,t,r){let s=i.mode;if(s==="disabled"&&(i.mode="hidden"),i.cues&&i.cues.length>0){let n=fk(i.cues,e,t);for(let a=0;a<n.length;a++)(!r||r(n[a]))&&i.removeCue(n[a])}s==="disabled"&&(i.mode=s)}function hk(i,e){if(e<i[0].startTime)return 0;let t=i.length-1;if(e>i[t].endTime)return-1;let r=0,s=t;for(;r<=s;){let n=Math.floor((s+r)/2);if(e<i[n].startTime)s=n-1;else if(e>i[n].startTime&&r<t)r=n+1;else return n}return i[r].startTime-e<e-i[s].startTime?r:s}function fk(i,e,t){let r=[],s=hk(i,e);if(s>-1)for(let n=s,a=i.length;n<a;n++){let o=i[n];if(o.startTime>=e&&o.endTime<=t)r.push(o);else if(o.startTime>t)return r}return r}var Ki={audioId3:"org.id3",dateRange:"com.apple.quicktime.HLS",emsg:"https://aomedia.org/emsg/ID3"},mk=.25;function jp(){if(typeof self!="undefined")return self.VTTCue||self.TextTrackCue}function zy(i,e,t,r,s){let n=new i(e,t,"");try{n.value=r,s&&(n.type=s)}catch{n=new i(e,t,JSON.stringify(s?Zt({type:s},r):r))}return n}var Vc=(()=>{let i=jp();try{i&&new i(0,Number.POSITIVE_INFINITY,"")}catch{return Number.MAX_VALUE}return Number.POSITIVE_INFINITY})();function kp(i,e){return i.getTime()/1e3-e}function pk(i){return Uint8Array.from(i.replace(/^0x/,"").replace(/([\da-fA-F]{2}) ?/g,"0x$1 ").replace(/ +$/,"").split(" ")).buffer}var zp=class{constructor(e){this.hls=void 0,this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.hls=e,this._registerListeners()}destroy(){this._unregisterListeners(),this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.hls=null}_registerListeners(){let{hls:e}=this;e.on(b.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(b.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(b.MANIFEST_LOADING,this.onManifestLoading,this),e.on(b.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),e.on(b.BUFFER_FLUSHING,this.onBufferFlushing,this),e.on(b.LEVEL_UPDATED,this.onLevelUpdated,this)}_unregisterListeners(){let{hls:e}=this;e.off(b.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(b.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(b.MANIFEST_LOADING,this.onManifestLoading,this),e.off(b.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),e.off(b.BUFFER_FLUSHING,this.onBufferFlushing,this),e.off(b.LEVEL_UPDATED,this.onLevelUpdated,this)}onMediaAttached(e,t){this.media=t.media}onMediaDetaching(){this.id3Track&&(Jn(this.id3Track),this.id3Track=null,this.media=null,this.dateRangeCuesAppended={})}onManifestLoading(){this.dateRangeCuesAppended={}}createTrack(e){let t=this.getID3Track(e.textTracks);return t.mode="hidden",t}getID3Track(e){if(this.media){for(let t=0;t<e.length;t++){let r=e[t];if(r.kind==="metadata"&&r.label==="id3")return MT(r,this.media),r}return this.media.addTextTrack("metadata","id3")}}onFragParsingMetadata(e,t){if(!this.media)return;let{hls:{config:{enableEmsgMetadataCues:r,enableID3MetadataCues:s}}}=this;if(!r&&!s)return;let{samples:n}=t;this.id3Track||(this.id3Track=this.createTrack(this.media));let a=jp();if(a)for(let o=0;o<n.length;o++){let l=n[o].type;if(l===Ki.emsg&&!r||!s)continue;let d=ST(n[o].data);if(d){let c=n[o].pts,u=c+n[o].duration;u>Vc&&(u=Vc),u-c<=0&&(u=c+mk);for(let f=0;f<d.length;f++){let g=d[f];if(!AT(g)){this.updateId3CueEnds(c,l);let E=zy(a,c,u,g,l);E&&this.id3Track.addCue(E)}}}}}updateId3CueEnds(e,t){var r;let s=(r=this.id3Track)==null?void 0:r.cues;if(s)for(let n=s.length;n--;){let a=s[n];a.type===t&&a.startTime<e&&a.endTime===Vc&&(a.endTime=e)}}onBufferFlushing(e,{startOffset:t,endOffset:r,type:s}){let{id3Track:n,hls:a}=this;if(!a)return;let{config:{enableEmsgMetadataCues:o,enableID3MetadataCues:l}}=a;if(n&&(o||l)){let d;s==="audio"?d=c=>c.type===Ki.audioId3&&l:s==="video"?d=c=>c.type===Ki.emsg&&o:d=c=>c.type===Ki.audioId3&&l||c.type===Ki.emsg&&o,Yp(n,t,r,d)}}onLevelUpdated(e,{details:t}){if(!this.media||!t.hasProgramDateTime||!this.hls.config.enableDateRangeMetadataCues)return;let{dateRangeCuesAppended:r,id3Track:s}=this,{dateRanges:n}=t,a=Object.keys(n);if(s){let c=Object.keys(r).filter(u=>!a.includes(u));for(let u=c.length;u--;){let h=c[u];Object.keys(r[h].cues).forEach(f=>{s.removeCue(r[h].cues[f])}),delete r[h]}}let o=t.fragments[t.fragments.length-1];if(a.length===0||!oe(o==null?void 0:o.programDateTime))return;this.id3Track||(this.id3Track=this.createTrack(this.media));let l=o.programDateTime/1e3-o.start,d=jp();for(let c=0;c<a.length;c++){let u=a[c],h=n[u],f=r[u],g=(f==null?void 0:f.cues)||{},E=(f==null?void 0:f.durationKnown)||!1,y=kp(h.startDate,l),S=Vc,w=h.endDate;if(w)S=kp(w,l),E=!0;else if(h.endOnNext&&!E){let F=a.reduce((R,B)=>{let P=n[B];return P.class===h.class&&P.id!==B&&P.startDate>h.startDate&&R.push(P),R},[]).sort((R,B)=>R.startDate.getTime()-B.startDate.getTime())[0];F&&(S=kp(F.startDate,l),E=!0)}let L=Object.keys(h.attr);for(let F=0;F<L.length;F++){let R=L[F];if(!II(R))continue;let B=g[R];if(B)E&&!f.durationKnown&&(B.endTime=S);else if(d){let P=h.attr[R];kI(R)&&(P=pk(P));let $=zy(d,y,S,{key:R,data:P},Ki.dateRange);$&&($.id=u,this.id3Track.addCue($),g[R]=$)}}r[u]={cues:g,dateRange:h,durationKnown:E}}}},Xp=class{constructor(e){this.hls=void 0,this.config=void 0,this.media=null,this.levelDetails=null,this.currentTime=0,this.stallCount=0,this._latency=null,this.timeupdateHandler=()=>this.timeupdate(),this.hls=e,this.config=e.config,this.registerListeners()}get latency(){return this._latency||0}get maxLatency(){let{config:e,levelDetails:t}=this;return e.liveMaxLatencyDuration!==void 0?e.liveMaxLatencyDuration:t?e.liveMaxLatencyDurationCount*t.targetduration:0}get targetLatency(){let{levelDetails:e}=this;if(e===null)return null;let{holdBack:t,partHoldBack:r,targetduration:s}=e,{liveSyncDuration:n,liveSyncDurationCount:a,lowLatencyMode:o}=this.config,l=this.hls.userConfig,d=o&&r||t;(l.liveSyncDuration||l.liveSyncDurationCount||d===0)&&(d=n!==void 0?n:a*s);let c=s,u=1;return d+Math.min(this.stallCount*u,c)}get liveSyncPosition(){let e=this.estimateLiveEdge(),t=this.targetLatency,r=this.levelDetails;if(e===null||t===null||r===null)return null;let s=r.edge,n=e-t-this.edgeStalled,a=s-r.totalduration,o=s-(this.config.lowLatencyMode&&r.partTarget||r.targetduration);return Math.min(Math.max(a,n),o)}get drift(){let{levelDetails:e}=this;return e===null?1:e.drift}get edgeStalled(){let{levelDetails:e}=this;if(e===null)return 0;let t=(this.config.lowLatencyMode&&e.partTarget||e.targetduration)*3;return Math.max(e.age-t,0)}get forwardBufferLength(){let{media:e,levelDetails:t}=this;if(!e||!t)return 0;let r=e.buffered.length;return(r?e.buffered.end(r-1):t.edge)-this.currentTime}destroy(){this.unregisterListeners(),this.onMediaDetaching(),this.levelDetails=null,this.hls=this.timeupdateHandler=null}registerListeners(){this.hls.on(b.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.on(b.MEDIA_DETACHING,this.onMediaDetaching,this),this.hls.on(b.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.on(b.LEVEL_UPDATED,this.onLevelUpdated,this),this.hls.on(b.ERROR,this.onError,this)}unregisterListeners(){this.hls.off(b.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.off(b.MEDIA_DETACHING,this.onMediaDetaching,this),this.hls.off(b.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.off(b.LEVEL_UPDATED,this.onLevelUpdated,this),this.hls.off(b.ERROR,this.onError,this)}onMediaAttached(e,t){this.media=t.media,this.media.addEventListener("timeupdate",this.timeupdateHandler)}onMediaDetaching(){this.media&&(this.media.removeEventListener("timeupdate",this.timeupdateHandler),this.media=null)}onManifestLoading(){this.levelDetails=null,this._latency=null,this.stallCount=0}onLevelUpdated(e,{details:t}){this.levelDetails=t,t.advanced&&this.timeupdate(),!t.live&&this.media&&this.media.removeEventListener("timeupdate",this.timeupdateHandler)}onError(e,t){var r;t.details===H.BUFFER_STALLED_ERROR&&(this.stallCount++,(r=this.levelDetails)!=null&&r.live&&M.warn("[playback-rate-controller]: Stall detected, adjusting target latency"))}timeupdate(){let{media:e,levelDetails:t}=this;if(!e||!t)return;this.currentTime=e.currentTime;let r=this.computeLatency();if(r===null)return;this._latency=r;let{lowLatencyMode:s,maxLiveSyncPlaybackRate:n}=this.config;if(!s||n===1)return;let a=this.targetLatency;if(a===null)return;let o=r-a,l=Math.min(this.maxLatency,a+t.targetduration),d=o<l;if(t.live&&d&&o>.05&&this.forwardBufferLength>1){let c=Math.min(2,Math.max(1,n)),u=Math.round(2/(1+Math.exp(-.75*o-this.edgeStalled))*20)/20;e.playbackRate=Math.min(c,Math.max(1,u))}else e.playbackRate!==1&&e.playbackRate!==0&&(e.playbackRate=1)}estimateLiveEdge(){let{levelDetails:e}=this;return e===null?null:e.edge+e.age}computeLatency(){let e=this.estimateLiveEdge();return e===null?null:e-this.currentTime}},Qp=["NONE","TYPE-0","TYPE-1",null],_o={No:"",Yes:"YES",v2:"v2"};function gk(i,e){let{canSkipUntil:t,canSkipDateRanges:r,endSN:s}=i,n=e!==void 0?e-s:0;return t&&n<t?r?_o.v2:_o.Yes:_o.No}var su=class{constructor(e,t,r){this.msn=void 0,this.part=void 0,this.skip=void 0,this.msn=e,this.part=t,this.skip=r}addDirectives(e){let t=new self.URL(e);return this.msn!==void 0&&t.searchParams.set("_HLS_msn",this.msn.toString()),this.part!==void 0&&t.searchParams.set("_HLS_part",this.part.toString()),this.skip&&t.searchParams.set("_HLS_skip",this.skip),t.href}},Gs=class{constructor(e){this._attrs=void 0,this.audioCodec=void 0,this.bitrate=void 0,this.codecSet=void 0,this.height=void 0,this.id=void 0,this.name=void 0,this.videoCodec=void 0,this.width=void 0,this.unknownCodecs=void 0,this.audioGroupIds=void 0,this.details=void 0,this.fragmentError=0,this.loadError=0,this.loaded=void 0,this.realBitrate=0,this.textGroupIds=void 0,this.url=void 0,this._urlId=0,this.url=[e.url],this._attrs=[e.attrs],this.bitrate=e.bitrate,e.details&&(this.details=e.details),this.id=e.id||0,this.name=e.name,this.width=e.width||0,this.height=e.height||0,this.audioCodec=e.audioCodec,this.videoCodec=e.videoCodec,this.unknownCodecs=e.unknownCodecs,this.codecSet=[e.videoCodec,e.audioCodec].filter(t=>t).join(",").replace(/\.[^.,]+/g,"")}get maxBitrate(){return Math.max(this.realBitrate,this.bitrate)}get attrs(){return this._attrs[this._urlId]}get pathwayId(){return this.attrs["PATHWAY-ID"]||"."}get uri(){return this.url[this._urlId]||""}get urlId(){return this._urlId}set urlId(e){let t=e%this.url.length;this._urlId!==t&&(this.fragmentError=0,this.loadError=0,this.details=void 0,this._urlId=t)}get audioGroupId(){var e;return(e=this.audioGroupIds)==null?void 0:e[this.urlId]}get textGroupId(){var e;return(e=this.textGroupIds)==null?void 0:e[this.urlId]}addFallback(e){this.url.push(e.url),this._attrs.push(e.attrs)}};function Lp(i,e){let t=e.startPTS;if(oe(t)){let r=0,s;e.sn>i.sn?(r=t-i.start,s=i):(r=i.start-t,s=e),s.duration!==r&&(s.duration=r)}else e.sn>i.sn?i.cc===e.cc&&i.minEndPTS?e.start=i.start+(i.minEndPTS-i.start):e.start=i.start+i.duration:e.start=Math.max(i.start-e.duration,0)}function OT(i,e,t,r,s,n){r-t<=0&&(M.warn("Fragment should have a positive duration",e),r=t+e.duration,n=s+e.duration);let o=t,l=r,d=e.startPTS,c=e.endPTS;if(oe(d)){let y=Math.abs(d-t);oe(e.deltaPTS)?e.deltaPTS=Math.max(y,e.deltaPTS):e.deltaPTS=y,o=Math.max(t,d),t=Math.min(t,d),s=Math.min(s,e.startDTS),l=Math.min(r,c),r=Math.max(r,c),n=Math.max(n,e.endDTS)}let u=t-e.start;e.start!==0&&(e.start=t),e.duration=r-e.start,e.startPTS=t,e.maxStartPTS=o,e.startDTS=s,e.endPTS=r,e.minEndPTS=l,e.endDTS=n;let h=e.sn;if(!i||h<i.startSN||h>i.endSN)return 0;let f,g=h-i.startSN,E=i.fragments;for(E[g]=e,f=g;f>0;f--)Lp(E[f],E[f-1]);for(f=g;f<E.length-1;f++)Lp(E[f],E[f+1]);return i.fragmentHint&&Lp(E[E.length-1],i.fragmentHint),i.PTSKnown=i.alignedSliding=!0,u}function vk(i,e){let t=null,r=i.fragments;for(let l=r.length-1;l>=0;l--){let d=r[l].initSegment;if(d){t=d;break}}i.fragmentHint&&delete i.fragmentHint.endPTS;let s=0,n;if(yk(i,e,(l,d)=>{l.relurl&&(s=l.cc-d.cc),oe(l.startPTS)&&oe(l.endPTS)&&(d.start=d.startPTS=l.startPTS,d.startDTS=l.startDTS,d.maxStartPTS=l.maxStartPTS,d.endPTS=l.endPTS,d.endDTS=l.endDTS,d.minEndPTS=l.minEndPTS,d.duration=l.endPTS-l.startPTS,d.duration&&(n=d),e.PTSKnown=e.alignedSliding=!0),d.elementaryStreams=l.elementaryStreams,d.loader=l.loader,d.stats=l.stats,d.urlId=l.urlId,l.initSegment&&(d.initSegment=l.initSegment,t=l.initSegment)}),t&&(e.fragmentHint?e.fragments.concat(e.fragmentHint):e.fragments).forEach(d=>{var c;(!d.initSegment||d.initSegment.relurl===((c=t)==null?void 0:c.relurl))&&(d.initSegment=t)}),e.skippedSegments)if(e.deltaUpdateFailed=e.fragments.some(l=>!l),e.deltaUpdateFailed){M.warn("[level-helper] Previous playlist missing segments skipped in delta playlist");for(let l=e.skippedSegments;l--;)e.fragments.shift();e.startSN=e.fragments[0].sn,e.startCC=e.fragments[0].cc}else e.canSkipDateRanges&&(e.dateRanges=Ek(i.dateRanges,e.dateRanges,e.recentlyRemovedDateranges));let a=e.fragments;if(s){M.warn("discontinuity sliding from playlist, take drift into account");for(let l=0;l<a.length;l++)a[l].cc+=s}e.skippedSegments&&(e.startCC=e.fragments[0].cc),bk(i.partList,e.partList,(l,d)=>{d.elementaryStreams=l.elementaryStreams,d.stats=l.stats}),n?OT(e,n,n.startPTS,n.endPTS,n.startDTS,n.endDTS):NT(i,e),a.length&&(e.totalduration=e.edge-a[0].start),e.driftStartTime=i.driftStartTime,e.driftStart=i.driftStart;let o=e.advancedDateTime;if(e.advanced&&o){let l=e.edge;e.driftStart||(e.driftStartTime=o,e.driftStart=l),e.driftEndTime=o,e.driftEnd=l}else e.driftEndTime=i.driftEndTime,e.driftEnd=i.driftEnd,e.advancedDateTime=i.advancedDateTime}function Ek(i,e,t){let r=xt({},i);return t&&t.forEach(s=>{delete r[s]}),Object.keys(e).forEach(s=>{let n=new eu(e[s].attr,r[s]);n.isValid?r[s]=n:M.warn(`Ignoring invalid Playlist Delta Update DATERANGE tag: "${JSON.stringify(e[s].attr)}"`)}),r}function bk(i,e,t){if(i&&e){let r=0;for(let s=0,n=i.length;s<=n;s++){let a=i[s],o=e[s+r];a&&o&&a.index===o.index&&a.fragment.sn===o.fragment.sn?t(a,o):r--}}}function yk(i,e,t){let r=e.skippedSegments,s=Math.max(i.startSN,e.startSN)-e.startSN,n=(i.fragmentHint?1:0)+(r?e.endSN:Math.min(i.endSN,e.endSN))-e.startSN,a=e.startSN-i.startSN,o=e.fragmentHint?e.fragments.concat(e.fragmentHint):e.fragments,l=i.fragmentHint?i.fragments.concat(i.fragmentHint):i.fragments;for(let d=s;d<=n;d++){let c=l[a+d],u=o[d];r&&!u&&d<r&&(u=e.fragments[d]=c),c&&u&&t(c,u)}}function NT(i,e){let t=e.startSN+e.skippedSegments-i.startSN,r=i.fragments;t<0||t>=r.length||Zp(e,r[t].start)}function Zp(i,e){if(e){let t=i.fragments;for(let r=i.skippedSegments;r<t.length;r++)t[r].start+=e;i.fragmentHint&&(i.fragmentHint.start+=e)}}function Tk(i,e=1/0){let t=1e3*i.targetduration;if(i.updated){let r=i.fragments,s=4;if(r.length&&t*s>e){let n=r[r.length-1].duration*1e3;n<t&&(t=n)}}else t/=2;return Math.round(t)}function _k(i,e,t){if(!(i!=null&&i.details))return null;let r=i.details,s=r.fragments[e-r.startSN];return s||(s=r.fragmentHint,s&&s.sn===e)?s:e<r.startSN&&t&&t.sn===e?t:null}function Xy(i,e,t){var r;return i!=null&&i.details?UT((r=i.details)==null?void 0:r.partList,e,t):null}function UT(i,e,t){if(i)for(let r=i.length;r--;){let s=i[r];if(s.index===t&&s.fragment.sn===e)return s}return null}function nu(i){switch(i.details){case H.FRAG_LOAD_TIMEOUT:case H.KEY_LOAD_TIMEOUT:case H.LEVEL_LOAD_TIMEOUT:case H.MANIFEST_LOAD_TIMEOUT:return!0}return!1}function Qy(i,e){let t=nu(e);return i.default[`${t?"timeout":"error"}Retry`]}function Yg(i,e){let t=i.backoff==="linear"?1:Math.pow(2,e);return Math.min(t*i.retryDelayMs,i.maxRetryDelayMs)}function Zy(i){return Zt(Zt({},i),{errorRetry:null,timeoutRetry:null})}function au(i,e,t,r){return!!i&&e<i.maxNumRetry&&(Ak(r)||!!t)}function Ak(i){return i===0&&navigator.onLine===!1||!!i&&(i<400||i>499)}var FT={search:function(i,e){let t=0,r=i.length-1,s=null,n=null;for(;t<=r;){s=(t+r)/2|0,n=i[s];let a=e(n);if(a>0)t=s+1;else if(a<0)r=s-1;else return n}return null}};function Sk(i,e,t){if(e===null||!Array.isArray(i)||!i.length||!oe(e))return null;let r=i[0].programDateTime;if(e<(r||0))return null;let s=i[i.length-1].endProgramDateTime;if(e>=(s||0))return null;t=t||0;for(let n=0;n<i.length;++n){let a=i[n];if(xk(e,t,a))return a}return null}function Io(i,e,t=0,r=0){let s=null;if(i?s=e[i.sn-e[0].sn+1]||null:t===0&&e[0].start===0&&(s=e[0]),s&&Jp(t,r,s)===0)return s;let n=FT.search(e,Jp.bind(null,t,r));return n&&(n!==i||!s)?n:s}function Jp(i=0,e=0,t){if(t.start<=i&&t.start+t.duration>i)return 0;let r=Math.min(e,t.duration+(t.deltaPTS?t.deltaPTS:0));return t.start+t.duration-r<=i?1:t.start-r>i&&t.start?-1:0}function xk(i,e,t){let r=Math.min(e,t.duration+(t.deltaPTS?t.deltaPTS:0))*1e3;return(t.endProgramDateTime||0)-r>i}function Ik(i,e){return FT.search(i,t=>t.cc<e?1:t.cc>e?-1:0)}var kk=3e5,Yt={DoNothing:0,SendEndCallback:1,SendAlternateToPenaltyBox:2,RemoveAlternatePermanently:3,InsertDiscontinuity:4,RetryRequest:5},Si={None:0,MoveAllAlternatesMatchingHost:1,MoveAllAlternatesMatchingHDCP:2,SwitchToSDR:4},eg=class{constructor(e){this.hls=void 0,this.playlistError=0,this.penalizedRenditions={},this.log=void 0,this.warn=void 0,this.error=void 0,this.hls=e,this.log=M.log.bind(M,"[info]:"),this.warn=M.warn.bind(M,"[warning]:"),this.error=M.error.bind(M,"[error]:"),this.registerListeners()}registerListeners(){let e=this.hls;e.on(b.ERROR,this.onError,this),e.on(b.MANIFEST_LOADING,this.onManifestLoading,this),e.on(b.LEVEL_UPDATED,this.onLevelUpdated,this)}unregisterListeners(){let e=this.hls;e&&(e.off(b.ERROR,this.onError,this),e.off(b.ERROR,this.onErrorOut,this),e.off(b.MANIFEST_LOADING,this.onManifestLoading,this),e.off(b.LEVEL_UPDATED,this.onLevelUpdated,this))}destroy(){this.unregisterListeners(),this.hls=null,this.penalizedRenditions={}}startLoad(e){this.playlistError=0}stopLoad(){}getVariantLevelIndex(e){return(e==null?void 0:e.type)===fe.MAIN?e.level:this.hls.loadLevel}onManifestLoading(){this.playlistError=0,this.penalizedRenditions={}}onLevelUpdated(){this.playlistError=0}onError(e,t){var r,s;if(t.fatal)return;let n=this.hls,a=t.context;switch(t.details){case H.FRAG_LOAD_ERROR:case H.FRAG_LOAD_TIMEOUT:case H.KEY_LOAD_ERROR:case H.KEY_LOAD_TIMEOUT:t.errorAction=this.getFragRetryOrSwitchAction(t);return;case H.FRAG_PARSING_ERROR:if((r=t.frag)!=null&&r.gap){t.errorAction={action:Yt.DoNothing,flags:Si.None};return}case H.FRAG_GAP:case H.FRAG_DECRYPT_ERROR:{t.errorAction=this.getFragRetryOrSwitchAction(t),t.errorAction.action=Yt.SendAlternateToPenaltyBox;return}case H.LEVEL_EMPTY_ERROR:case H.LEVEL_PARSING_ERROR:{var o,l;let d=t.parent===fe.MAIN?t.level:n.loadLevel;t.details===H.LEVEL_EMPTY_ERROR&&((o=t.context)!=null&&(l=o.levelDetails)!=null&&l.live)?t.errorAction=this.getPlaylistRetryOrSwitchAction(t,d):(t.levelRetry=!1,t.errorAction=this.getLevelSwitchAction(t,d))}return;case H.LEVEL_LOAD_ERROR:case H.LEVEL_LOAD_TIMEOUT:typeof(a==null?void 0:a.level)=="number"&&(t.errorAction=this.getPlaylistRetryOrSwitchAction(t,a.level));return;case H.AUDIO_TRACK_LOAD_ERROR:case H.AUDIO_TRACK_LOAD_TIMEOUT:case H.SUBTITLE_LOAD_ERROR:case H.SUBTITLE_TRACK_LOAD_TIMEOUT:if(a){let d=n.levels[n.loadLevel];if(d&&(a.type===Fe.AUDIO_TRACK&&a.groupId===d.audioGroupId||a.type===Fe.SUBTITLE_TRACK&&a.groupId===d.textGroupId)){t.errorAction=this.getPlaylistRetryOrSwitchAction(t,n.loadLevel),t.errorAction.action=Yt.SendAlternateToPenaltyBox,t.errorAction.flags=Si.MoveAllAlternatesMatchingHost;return}}return;case H.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED:{let d=n.levels[n.loadLevel],c=d==null?void 0:d.attrs["HDCP-LEVEL"];c&&(t.errorAction={action:Yt.SendAlternateToPenaltyBox,flags:Si.MoveAllAlternatesMatchingHDCP,hdcpLevel:c})}return;case H.BUFFER_ADD_CODEC_ERROR:case H.REMUX_ALLOC_ERROR:t.errorAction=this.getLevelSwitchAction(t,(s=t.level)!=null?s:n.loadLevel);return;case H.INTERNAL_EXCEPTION:case H.BUFFER_APPENDING_ERROR:case H.BUFFER_APPEND_ERROR:case H.BUFFER_FULL_ERROR:case H.LEVEL_SWITCH_ERROR:case H.BUFFER_STALLED_ERROR:case H.BUFFER_SEEK_OVER_HOLE:case H.BUFFER_NUDGE_ON_STALL:t.errorAction={action:Yt.DoNothing,flags:Si.None};return}if(t.type===he.KEY_SYSTEM_ERROR){let d=this.getVariantLevelIndex(t.frag);t.levelRetry=!1,t.errorAction=this.getLevelSwitchAction(t,d);return}}getPlaylistRetryOrSwitchAction(e,t){var r;let s=this.hls,n=Qy(s.config.playlistLoadPolicy,e),a=this.playlistError++,o=(r=e.response)==null?void 0:r.code;if(au(n,a,nu(e),o))return{action:Yt.RetryRequest,flags:Si.None,retryConfig:n,retryCount:a};let d=this.getLevelSwitchAction(e,t);return n&&(d.retryConfig=n,d.retryCount=a),d}getFragRetryOrSwitchAction(e){let t=this.hls,r=this.getVariantLevelIndex(e.frag),s=t.levels[r],{fragLoadPolicy:n,keyLoadPolicy:a}=t.config,o=Qy(e.details.startsWith("key")?a:n,e),l=t.levels.reduce((u,h)=>u+h.fragmentError,0);if(s){var d;e.details!==H.FRAG_GAP&&s.fragmentError++;let u=(d=e.response)==null?void 0:d.code;if(au(o,l,nu(e),u))return{action:Yt.RetryRequest,flags:Si.None,retryConfig:o,retryCount:l}}let c=this.getLevelSwitchAction(e,r);return o&&(c.retryConfig=o,c.retryCount=l),c}getLevelSwitchAction(e,t){let r=this.hls;t==null&&(t=r.loadLevel);let s=this.hls.levels[t];if(s&&(s.loadError++,r.autoLevelEnabled)){var n,a;let o=-1,{levels:l,loadLevel:d,minAutoLevel:c,maxAutoLevel:u}=r,h=(n=e.frag)==null?void 0:n.type,{type:f,groupId:g}=(a=e.context)!=null?a:{};for(let E=l.length;E--;){let y=(E+d)%l.length;if(y!==d&&y>=c&&y<=u&&l[y].loadError===0){let S=l[y];if(e.details===H.FRAG_GAP&&e.frag){let w=l[y].details;if(w){let L=Io(e.frag,w.fragments,e.frag.start);if(L!=null&&L.gap)continue}}else{if(f===Fe.AUDIO_TRACK&&g===S.audioGroupId||f===Fe.SUBTITLE_TRACK&&g===S.textGroupId)continue;if(h===fe.AUDIO&&s.audioGroupId===S.audioGroupId||h===fe.SUBTITLE&&s.textGroupId===S.textGroupId)continue}o=y;break}}if(o>-1&&r.loadLevel!==o)return e.levelRetry=!0,this.playlistError=0,{action:Yt.SendAlternateToPenaltyBox,flags:Si.None,nextAutoLevel:o}}return{action:Yt.SendAlternateToPenaltyBox,flags:Si.MoveAllAlternatesMatchingHost}}onErrorOut(e,t){var r;switch((r=t.errorAction)==null?void 0:r.action){case Yt.DoNothing:break;case Yt.SendAlternateToPenaltyBox:this.sendAlternateToPenaltyBox(t),!t.errorAction.resolved&&t.details!==H.FRAG_GAP&&(t.fatal=!0);break}if(t.fatal){this.hls.stopLoad();return}}sendAlternateToPenaltyBox(e){let t=this.hls,r=e.errorAction;if(!r)return;let{flags:s,hdcpLevel:n,nextAutoLevel:a}=r;switch(s){case Si.None:this.switchLevel(e,a);break;case Si.MoveAllAlternatesMatchingHost:r.resolved||(r.resolved=this.redundantFailover(e));break;case Si.MoveAllAlternatesMatchingHDCP:n&&(t.maxHdcpLevel=Qp[Qp.indexOf(n)-1],r.resolved=!0),this.warn(`Restricting playback to HDCP-LEVEL of "${t.maxHdcpLevel}" or lower`);break}r.resolved||this.switchLevel(e,a)}switchLevel(e,t){t!==void 0&&e.errorAction&&(this.warn(`switching to level ${t} after ${e.details}`),this.hls.nextAutoLevel=t,e.errorAction.resolved=!0,this.hls.nextLoadLevel=this.hls.nextAutoLevel)}redundantFailover(e){let{hls:t,penalizedRenditions:r}=this,s=e.parent===fe.MAIN?e.level:t.loadLevel,n=t.levels[s],a=n.url.length,o=e.frag?e.frag.urlId:n.urlId;n.urlId===o&&(!e.frag||n.details)&&this.penalizeRendition(n,e);for(let l=1;l<a;l++){let d=(o+l)%a,c=r[d];if(!c||Lk(c,e,r[o]))return this.warn(`Switching to Redundant Stream ${d+1}/${a}: "${n.url[d]}" after ${e.details}`),this.playlistError=0,t.levels.forEach(u=>{u.urlId=d}),t.nextLoadLevel=s,!0}return!1}penalizeRendition(e,t){let{penalizedRenditions:r}=this,s=r[e.urlId]||{lastErrorPerfMs:0,errors:[],details:void 0};s.lastErrorPerfMs=performance.now(),s.errors.push(t),s.details=e.details,r[e.urlId]=s}};function Lk(i,e,t){if(performance.now()-i.lastErrorPerfMs>kk)return!0;let r=i.details;if(e.details===H.FRAG_GAP&&r&&e.frag){let s=e.frag.start,n=Io(null,r.fragments,s);if(n&&!n.gap)return!0}if(t&&i.errors.length<t.errors.length){let s=i.errors[i.errors.length-1];if(r&&s.frag&&e.frag&&Math.abs(s.frag.start-e.frag.start)>r.targetduration*3)return!0}return!1}var ko=class{constructor(e,t){this.hls=void 0,this.timer=-1,this.requestScheduled=-1,this.canLoad=!1,this.log=void 0,this.warn=void 0,this.log=M.log.bind(M,`${t}:`),this.warn=M.warn.bind(M,`${t}:`),this.hls=e}destroy(){this.clearTimer(),this.hls=this.log=this.warn=null}clearTimer(){clearTimeout(this.timer),this.timer=-1}startLoad(){this.canLoad=!0,this.requestScheduled=-1,this.loadPlaylist()}stopLoad(){this.canLoad=!1,this.clearTimer()}switchParams(e,t){let r=t==null?void 0:t.renditionReports;if(r){let s=-1;for(let n=0;n<r.length;n++){let a=r[n],o;try{o=new self.URL(a.URI,t.url).href}catch(l){M.warn(`Could not construct new URL for Rendition Report: ${l}`),o=a.URI||""}if(o===e){s=n;break}else o===e.substring(0,o.length)&&(s=n)}if(s!==-1){let n=r[s],a=parseInt(n["LAST-MSN"])||(t==null?void 0:t.lastPartSn),o=parseInt(n["LAST-PART"])||(t==null?void 0:t.lastPartIndex);if(this.hls.config.lowLatencyMode){let l=Math.min(t.age-t.partTarget,t.targetduration);o>=0&&l>t.partTarget&&(o+=1)}return new su(a,o>=0?o:void 0,_o.No)}}}loadPlaylist(e){this.requestScheduled===-1&&(this.requestScheduled=self.performance.now())}shouldLoadPlaylist(e){return this.canLoad&&!!e&&!!e.url&&(!e.details||e.details.live)}shouldReloadPlaylist(e){return this.timer===-1&&this.requestScheduled===-1&&this.shouldLoadPlaylist(e)}playlistLoaded(e,t,r){let{details:s,stats:n}=t,a=self.performance.now(),o=n.loading.first?Math.max(0,a-n.loading.first):0;if(s.advancedDateTime=Date.now()-o,s.live||r!=null&&r.live){if(s.reloaded(r),r&&this.log(`live playlist ${e} ${s.advanced?"REFRESHED "+s.lastPartSn+"-"+s.lastPartIndex:s.updated?"UPDATED":"MISSED"}`),r&&s.fragments.length>0&&vk(r,s),!this.canLoad||!s.live)return;let l,d,c;if(s.canBlockReload&&s.endSN&&s.advanced){let y=this.hls.config.lowLatencyMode,S=s.lastPartSn,w=s.endSN,L=s.lastPartIndex,F=L!==-1,R=S===w,B=y?0:L;F?(d=R?w+1:S,c=R?B:L+1):d=w+1;let P=s.age,$=P+s.ageHeader,K=Math.min($-s.partTarget,s.targetduration*1.5);if(K>0){if(r&&K>r.tuneInGoal)this.warn(`CDN Tune-in goal increased from: ${r.tuneInGoal} to: ${K} with playlist age: ${s.age}`),K=0;else{let N=Math.floor(K/s.targetduration);if(d+=N,c!==void 0){let z=Math.round(K%s.targetduration/s.partTarget);c+=z}this.log(`CDN Tune-in age: ${s.ageHeader}s last advanced ${P.toFixed(2)}s goal: ${K} skip sn ${N} to part ${c}`)}s.tuneInGoal=K}if(l=this.getDeliveryDirectives(s,t.deliveryDirectives,d,c),y||!R){this.loadPlaylist(l);return}}else(s.canBlockReload||s.canSkipUntil)&&(l=this.getDeliveryDirectives(s,t.deliveryDirectives,d,c));let u=this.hls.mainForwardBufferInfo,h=u?u.end-u.len:0,f=(s.edge-h)*1e3,g=Tk(s,f);s.updated&&a>this.requestScheduled+g&&(this.requestScheduled=n.loading.start),d!==void 0&&s.canBlockReload?this.requestScheduled=n.loading.first+g-(s.partTarget*1e3||1e3):this.requestScheduled===-1||this.requestScheduled+g<a?this.requestScheduled=a:this.requestScheduled-a<=0&&(this.requestScheduled+=g);let E=this.requestScheduled-a;E=Math.max(0,E),this.log(`reload live playlist ${e} in ${Math.round(E)} ms`),this.timer=self.setTimeout(()=>this.loadPlaylist(l),E)}else this.clearTimer()}getDeliveryDirectives(e,t,r,s){let n=gk(e,r);return t!=null&&t.skip&&e.deltaUpdateFailed&&(r=t.msn,s=t.part,n=_o.No),new su(r,s,n)}checkRetry(e){let t=e.details,r=nu(e),s=e.errorAction,{action:n,retryCount:a=0,retryConfig:o}=s||{},l=!!s&&!!o&&(n===Yt.RetryRequest||!s.resolved&&n===Yt.SendAlternateToPenaltyBox);if(l){var d;if(this.requestScheduled=-1,a>=o.maxNumRetry)return!1;if(r&&(d=e.context)!=null&&d.deliveryDirectives)this.warn(`Retrying playlist loading ${a+1}/${o.maxNumRetry} after "${t}" without delivery-directives`),this.loadPlaylist();else{let c=Yg(o,a);this.timer=self.setTimeout(()=>this.loadPlaylist(),c),this.warn(`Retrying playlist loading ${a+1}/${o.maxNumRetry} after "${t}" in ${c}ms`)}e.levelRetry=!0,s.resolved=!0}return l}},Rp,tg=class extends ko{constructor(e,t){super(e,"[level-controller]"),this._levels=[],this._firstLevel=-1,this._startLevel=void 0,this.currentLevel=null,this.currentLevelIndex=-1,this.manualLevelIndex=-1,this.steering=void 0,this.onParsedComplete=void 0,this.steering=t,this._registerListeners()}_registerListeners(){let{hls:e}=this;e.on(b.MANIFEST_LOADING,this.onManifestLoading,this),e.on(b.MANIFEST_LOADED,this.onManifestLoaded,this),e.on(b.LEVEL_LOADED,this.onLevelLoaded,this),e.on(b.LEVELS_UPDATED,this.onLevelsUpdated,this),e.on(b.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),e.on(b.FRAG_LOADED,this.onFragLoaded,this),e.on(b.ERROR,this.onError,this)}_unregisterListeners(){let{hls:e}=this;e.off(b.MANIFEST_LOADING,this.onManifestLoading,this),e.off(b.MANIFEST_LOADED,this.onManifestLoaded,this),e.off(b.LEVEL_LOADED,this.onLevelLoaded,this),e.off(b.LEVELS_UPDATED,this.onLevelsUpdated,this),e.off(b.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),e.off(b.FRAG_LOADED,this.onFragLoaded,this),e.off(b.ERROR,this.onError,this)}destroy(){this._unregisterListeners(),this.steering=null,this.resetLevels(),super.destroy()}startLoad(){this._levels.forEach(t=>{t.loadError=0,t.fragmentError=0}),super.startLoad()}resetLevels(){this._startLevel=void 0,this.manualLevelIndex=-1,this.currentLevelIndex=-1,this.currentLevel=null,this._levels=[]}onManifestLoading(e,t){this.resetLevels()}onManifestLoaded(e,t){let r=[],s={},n;t.levels.forEach(a=>{var o;let l=a.attrs;((o=a.audioCodec)==null?void 0:o.indexOf("mp4a.40.34"))!==-1&&(Rp||(Rp=/chrome|firefox/i.test(navigator.userAgent)),Rp&&(a.audioCodec=void 0));let{AUDIO:d,CODECS:c,"FRAME-RATE":u,"PATHWAY-ID":h,RESOLUTION:f,SUBTITLES:g}=l,y=`${`${h||"."}-`}${a.bitrate}-${f}-${u}-${c}`;n=s[y],n?n.addFallback(a):(n=new Gs(a),s[y]=n,r.push(n)),ou(n,"audio",d),ou(n,"text",g)}),this.filterAndSortMediaOptions(r,t)}filterAndSortMediaOptions(e,t){let r=[],s=[],n=!1,a=!1,o=!1,l=e.filter(({audioCodec:f,videoCodec:g,width:E,height:y,unknownCodecs:S})=>(n||(n=!!(E&&y)),a||(a=!!g),o||(o=!!f),!(S!=null&&S.length)&&(!f||xp(f,"audio"))&&(!g||xp(g,"video"))));if((n||a)&&o&&(l=l.filter(({videoCodec:f,width:g,height:E})=>!!f||!!(g&&E))),l.length===0){Promise.resolve().then(()=>{if(this.hls){let f=new Error("no level with compatible codecs found in manifest");this.hls.trigger(b.ERROR,{type:he.MEDIA_ERROR,details:H.MANIFEST_INCOMPATIBLE_CODECS_ERROR,fatal:!0,url:t.url,error:f,reason:f.message})}});return}t.audioTracks&&(r=t.audioTracks.filter(f=>!f.audioCodec||xp(f.audioCodec,"audio")),Jy(r)),t.subtitles&&(s=t.subtitles,Jy(s));let d=l.slice(0);l.sort((f,g)=>f.attrs["HDCP-LEVEL"]!==g.attrs["HDCP-LEVEL"]?(f.attrs["HDCP-LEVEL"]||"")>(g.attrs["HDCP-LEVEL"]||"")?1:-1:f.bitrate!==g.bitrate?f.bitrate-g.bitrate:f.attrs["FRAME-RATE"]!==g.attrs["FRAME-RATE"]?f.attrs.decimalFloatingPoint("FRAME-RATE")-g.attrs.decimalFloatingPoint("FRAME-RATE"):f.attrs.SCORE!==g.attrs.SCORE?f.attrs.decimalFloatingPoint("SCORE")-g.attrs.decimalFloatingPoint("SCORE"):n&&f.height!==g.height?f.height-g.height:0);let c=d[0];if(this.steering&&(l=this.steering.filterParsedLevels(l),l.length!==d.length)){for(let f=0;f<d.length;f++)if(d[f].pathwayId===l[0].pathwayId){c=d[f];break}}this._levels=l;for(let f=0;f<l.length;f++)if(l[f]===c){this._firstLevel=f,this.log(`manifest loaded, ${l.length} level(s) found, first bitrate: ${c.bitrate}`);break}let u=o&&!a,h={levels:l,audioTracks:r,subtitleTracks:s,sessionData:t.sessionData,sessionKeys:t.sessionKeys,firstLevel:this._firstLevel,stats:t.stats,audio:o,video:a,altAudio:!u&&r.some(f=>!!f.url)};this.hls.trigger(b.MANIFEST_PARSED,h),(this.hls.config.autoStartLoad||this.hls.forceStartLoad)&&this.hls.startLoad(this.hls.config.startPosition)}get levels(){return this._levels.length===0?null:this._levels}get level(){return this.currentLevelIndex}set level(e){let t=this._levels;if(t.length===0)return;if(e<0||e>=t.length){let c=new Error("invalid level idx"),u=e<0;if(this.hls.trigger(b.ERROR,{type:he.OTHER_ERROR,details:H.LEVEL_SWITCH_ERROR,level:e,fatal:u,error:c,reason:c.message}),u)return;e=Math.min(e,t.length-1)}let r=this.currentLevelIndex,s=this.currentLevel,n=s?s.attrs["PATHWAY-ID"]:void 0,a=t[e],o=a.attrs["PATHWAY-ID"];if(this.currentLevelIndex=e,this.currentLevel=a,r===e&&a.details&&s&&n===o)return;this.log(`Switching to level ${e}${o?" with Pathway "+o:""} from level ${r}${n?" with Pathway "+n:""}`);let l=xt({},a,{level:e,maxBitrate:a.maxBitrate,attrs:a.attrs,uri:a.uri,urlId:a.urlId});delete l._attrs,delete l._urlId,this.hls.trigger(b.LEVEL_SWITCHING,l);let d=a.details;if(!d||d.live){let c=this.switchParams(a.uri,s==null?void 0:s.details);this.loadPlaylist(c)}}get manualLevel(){return this.manualLevelIndex}set manualLevel(e){this.manualLevelIndex=e,this._startLevel===void 0&&(this._startLevel=e),e!==-1&&(this.level=e)}get firstLevel(){return this._firstLevel}set firstLevel(e){this._firstLevel=e}get startLevel(){if(this._startLevel===void 0){let e=this.hls.config.startLevel;return e!==void 0?e:this._firstLevel}else return this._startLevel}set startLevel(e){this._startLevel=e}onError(e,t){t.fatal||!t.context||t.context.type===Fe.LEVEL&&t.context.level===this.level&&this.checkRetry(t)}onFragLoaded(e,{frag:t}){if(t!==void 0&&t.type===fe.MAIN){let r=this._levels[t.level];r!==void 0&&(r.loadError=0)}}onLevelLoaded(e,t){var r;let{level:s,details:n}=t,a=this._levels[s];if(!a){var o;this.warn(`Invalid level index ${s}`),(o=t.deliveryDirectives)!=null&&o.skip&&(n.deltaUpdateFailed=!0);return}s===this.currentLevelIndex?(a.fragmentError===0&&(a.loadError=0),this.playlistLoaded(s,t,a.details)):(r=t.deliveryDirectives)!=null&&r.skip&&(n.deltaUpdateFailed=!0)}onAudioTrackSwitched(e,t){let r=this.currentLevel;if(!r)return;let s=this.hls.audioTracks[t.id].groupId;if(r.audioGroupIds&&r.audioGroupId!==s){let n=-1;for(let a=0;a<r.audioGroupIds.length;a++)if(r.audioGroupIds[a]===s){n=a;break}n!==-1&&n!==r.urlId&&(r.urlId=n,this.canLoad&&this.startLoad())}}loadPlaylist(e){super.loadPlaylist();let t=this.currentLevelIndex,r=this.currentLevel;if(r&&this.shouldLoadPlaylist(r)){let s=r.urlId,n=r.uri;if(e)try{n=e.addDirectives(n)}catch(o){this.warn(`Could not construct new URL with HLS Delivery Directives: ${o}`)}let a=r.attrs["PATHWAY-ID"];this.log(`Loading level index ${t}${(e==null?void 0:e.msn)!==void 0?" at sn "+e.msn+" part "+e.part:""} with${a?" Pathway "+a:""} URI ${s+1}/${r.url.length} ${n}`),this.clearTimer(),this.hls.trigger(b.LEVEL_LOADING,{url:n,level:t,id:s,deliveryDirectives:e||null})}}get nextLoadLevel(){return this.manualLevelIndex!==-1?this.manualLevelIndex:this.hls.nextAutoLevel}set nextLoadLevel(e){this.level=e,this.manualLevelIndex===-1&&(this.hls.nextAutoLevel=e)}removeLevel(e,t){let r=(n,a)=>a!==t,s=this._levels.filter((n,a)=>a!==e?!0:n.url.length>1&&t!==void 0?(n.url=n.url.filter(r),n.audioGroupIds&&(n.audioGroupIds=n.audioGroupIds.filter(r)),n.textGroupIds&&(n.textGroupIds=n.textGroupIds.filter(r)),n.urlId=0,!0):(this.steering&&this.steering.removeLevel(n),!1));this.hls.trigger(b.LEVELS_UPDATED,{levels:s})}onLevelsUpdated(e,{levels:t}){t.forEach((r,s)=>{let{details:n}=r;n!=null&&n.fragments&&n.fragments.forEach(a=>{a.level=s})}),this._levels=t}};function ou(i,e,t){t&&(e==="audio"?(i.audioGroupIds||(i.audioGroupIds=[]),i.audioGroupIds[i.url.length-1]=t):e==="text"&&(i.textGroupIds||(i.textGroupIds=[]),i.textGroupIds[i.url.length-1]=t))}function Jy(i){let e={};i.forEach(t=>{let r=t.groupId||"";t.id=e[r]=e[r]||0,e[r]++})}var Mt={NOT_LOADED:"NOT_LOADED",APPENDING:"APPENDING",PARTIAL:"PARTIAL",OK:"OK"},ig=class{constructor(e){this.activePartLists=Object.create(null),this.endListFragments=Object.create(null),this.fragments=Object.create(null),this.timeRanges=Object.create(null),this.bufferPadding=.2,this.hls=void 0,this.hasGaps=!1,this.hls=e,this._registerListeners()}_registerListeners(){let{hls:e}=this;e.on(b.BUFFER_APPENDED,this.onBufferAppended,this),e.on(b.FRAG_BUFFERED,this.onFragBuffered,this),e.on(b.FRAG_LOADED,this.onFragLoaded,this)}_unregisterListeners(){let{hls:e}=this;e.off(b.BUFFER_APPENDED,this.onBufferAppended,this),e.off(b.FRAG_BUFFERED,this.onFragBuffered,this),e.off(b.FRAG_LOADED,this.onFragLoaded,this)}destroy(){this._unregisterListeners(),this.fragments=this.activePartLists=this.endListFragments=this.timeRanges=null}getAppendedFrag(e,t){let r=this.activePartLists[t];if(r)for(let s=r.length;s--;){let n=r[s];if(!n)break;let a=n.end;if(n.start<=e&&a!==null&&e<=a)return n}return this.getBufferedFrag(e,t)}getBufferedFrag(e,t){let{fragments:r}=this,s=Object.keys(r);for(let n=s.length;n--;){let a=r[s[n]];if((a==null?void 0:a.body.type)===t&&a.buffered){let o=a.body;if(o.start<=e&&e<=o.end)return o}}return null}detectEvictedFragments(e,t,r,s){this.timeRanges&&(this.timeRanges[e]=t);let n=(s==null?void 0:s.fragment.sn)||-1;Object.keys(this.fragments).forEach(a=>{let o=this.fragments[a];if(!o||n>=o.body.sn)return;if(!o.buffered&&!o.loaded){o.body.type===r&&this.removeFragment(o.body);return}let l=o.range[e];l&&l.time.some(d=>{let c=!this.isTimeBuffered(d.startPTS,d.endPTS,t);return c&&this.removeFragment(o.body),c})})}detectPartialFragments(e){let t=this.timeRanges,{frag:r,part:s}=e;if(!t||r.sn==="initSegment")return;let n=Xn(r),a=this.fragments[n];if(!a||a.buffered&&r.gap)return;let o=!r.relurl;Object.keys(t).forEach(l=>{let d=r.elementaryStreams[l];if(!d)return;let c=t[l],u=o||d.partial===!0;a.range[l]=this.getBufferedTimes(r,s,u,c)}),a.loaded=null,Object.keys(a.range).length?(a.buffered=!0,(a.body.endList=r.endList||a.body.endList)&&(this.endListFragments[a.body.type]=a),qc(a)||this.removeParts(r.sn-1,r.type)):this.removeFragment(a.body)}removeParts(e,t){let r=this.activePartLists[t];r&&(this.activePartLists[t]=r.filter(s=>s.fragment.sn>=e))}fragBuffered(e,t){let r=Xn(e),s=this.fragments[r];!s&&t&&(s=this.fragments[r]={body:e,appendedPTS:null,loaded:null,buffered:!1,range:Object.create(null)},e.gap&&(this.hasGaps=!0)),s&&(s.loaded=null,s.buffered=!0)}getBufferedTimes(e,t,r,s){let n={time:[],partial:r},a=e.start,o=e.end,l=e.minEndPTS||o,d=e.maxStartPTS||a;for(let c=0;c<s.length;c++){let u=s.start(c)-this.bufferPadding,h=s.end(c)+this.bufferPadding;if(d>=u&&l<=h){n.time.push({startPTS:Math.max(a,s.start(c)),endPTS:Math.min(o,s.end(c))});break}else if(a<h&&o>u)n.partial=!0,n.time.push({startPTS:Math.max(a,s.start(c)),endPTS:Math.min(o,s.end(c))});else if(o<=u)break}return n}getPartialFragment(e){let t=null,r,s,n,a=0,{bufferPadding:o,fragments:l}=this;return Object.keys(l).forEach(d=>{let c=l[d];c&&qc(c)&&(s=c.body.start-o,n=c.body.end+o,e>=s&&e<=n&&(r=Math.min(e-s,n-e),a<=r&&(t=c.body,a=r)))}),t}isEndListAppended(e){let t=this.endListFragments[e];return t!==void 0&&(t.buffered||qc(t))}getState(e){let t=Xn(e),r=this.fragments[t];return r?r.buffered?qc(r)?Mt.PARTIAL:Mt.OK:Mt.APPENDING:Mt.NOT_LOADED}isTimeBuffered(e,t,r){let s,n;for(let a=0;a<r.length;a++){if(s=r.start(a)-this.bufferPadding,n=r.end(a)+this.bufferPadding,e>=s&&t<=n)return!0;if(t<=s)return!1}return!1}onFragLoaded(e,t){let{frag:r,part:s}=t;if(r.sn==="initSegment"||r.bitrateTest)return;let n=s?null:t,a=Xn(r);this.fragments[a]={body:r,appendedPTS:null,loaded:n,buffered:!1,range:Object.create(null)}}onBufferAppended(e,t){let{frag:r,part:s,timeRanges:n}=t;if(r.sn==="initSegment")return;let a=r.type;if(s){let o=this.activePartLists[a];o||(this.activePartLists[a]=o=[]),o.push(s)}this.timeRanges=n,Object.keys(n).forEach(o=>{let l=n[o];this.detectEvictedFragments(o,l,a,s)})}onFragBuffered(e,t){this.detectPartialFragments(t)}hasFragment(e){let t=Xn(e);return!!this.fragments[t]}hasParts(e){var t;return!!((t=this.activePartLists[e])!=null&&t.length)}removeFragmentsInRange(e,t,r,s,n){s&&!this.hasGaps||Object.keys(this.fragments).forEach(a=>{let o=this.fragments[a];if(!o)return;let l=o.body;l.type!==r||s&&!l.gap||l.start<t&&l.end>e&&(o.buffered||n)&&this.removeFragment(l)})}removeFragment(e){let t=Xn(e);e.stats.loaded=0,e.clearElementaryStreamInfo();let r=this.activePartLists[e.type];if(r){let s=e.sn;this.activePartLists[e.type]=r.filter(n=>n.fragment.sn!==s)}delete this.fragments[t],e.endList&&delete this.endListFragments[e.type]}removeAllFragments(){this.fragments=Object.create(null),this.endListFragments=Object.create(null),this.activePartLists=Object.create(null),this.hasGaps=!1}};function qc(i){var e,t,r;return i.buffered&&(i.body.gap||((e=i.range.video)==null?void 0:e.partial)||((t=i.range.audio)==null?void 0:t.partial)||((r=i.range.audiovideo)==null?void 0:r.partial))}function Xn(i){return`${i.type}_${i.level}_${i.urlId}_${i.sn}`}var eT=Math.pow(2,17),rg=class{constructor(e){this.config=void 0,this.loader=null,this.partLoadTimeout=-1,this.config=e}destroy(){this.loader&&(this.loader.destroy(),this.loader=null)}abort(){this.loader&&this.loader.abort()}load(e,t){let r=e.url;if(!r)return Promise.reject(new Wi({type:he.NETWORK_ERROR,details:H.FRAG_LOAD_ERROR,fatal:!1,frag:e,error:new Error(`Fragment does not have a ${r?"part list":"url"}`),networkDetails:null}));this.abort();let s=this.config,n=s.fLoader,a=s.loader;return new Promise((o,l)=>{if(this.loader&&this.loader.destroy(),e.gap)if(e.tagList.some(f=>f[0]==="GAP")){l(iT(e));return}else e.gap=!1;let d=this.loader=e.loader=n?new n(s):new a(s),c=tT(e),u=Zy(s.fragLoadPolicy.default),h={loadPolicy:u,timeout:u.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0,highWaterMark:e.sn==="initSegment"?1/0:eT};e.stats=d.stats,d.load(c,h,{onSuccess:(f,g,E,y)=>{this.resetLoader(e,d);let S=f.data;E.resetIV&&e.decryptdata&&(e.decryptdata.iv=new Uint8Array(S.slice(0,16)),S=S.slice(16)),o({frag:e,part:null,payload:S,networkDetails:y})},onError:(f,g,E,y)=>{this.resetLoader(e,d),l(new Wi({type:he.NETWORK_ERROR,details:H.FRAG_LOAD_ERROR,fatal:!1,frag:e,response:Zt({url:r,data:void 0},f),error:new Error(`HTTP Error ${f.code} ${f.text}`),networkDetails:E,stats:y}))},onAbort:(f,g,E)=>{this.resetLoader(e,d),l(new Wi({type:he.NETWORK_ERROR,details:H.INTERNAL_ABORTED,fatal:!1,frag:e,error:new Error("Aborted"),networkDetails:E,stats:f}))},onTimeout:(f,g,E)=>{this.resetLoader(e,d),l(new Wi({type:he.NETWORK_ERROR,details:H.FRAG_LOAD_TIMEOUT,fatal:!1,frag:e,error:new Error(`Timeout after ${h.timeout}ms`),networkDetails:E,stats:f}))},onProgress:(f,g,E,y)=>{t&&t({frag:e,part:null,payload:E,networkDetails:y})}})})}loadPart(e,t,r){this.abort();let s=this.config,n=s.fLoader,a=s.loader;return new Promise((o,l)=>{if(this.loader&&this.loader.destroy(),e.gap||t.gap){l(iT(e,t));return}let d=this.loader=e.loader=n?new n(s):new a(s),c=tT(e,t),u=Zy(s.fragLoadPolicy.default),h={loadPolicy:u,timeout:u.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0,highWaterMark:eT};t.stats=d.stats,d.load(c,h,{onSuccess:(f,g,E,y)=>{this.resetLoader(e,d),this.updateStatsFromPart(e,t);let S={frag:e,part:t,payload:f.data,networkDetails:y};r(S),o(S)},onError:(f,g,E,y)=>{this.resetLoader(e,d),l(new Wi({type:he.NETWORK_ERROR,details:H.FRAG_LOAD_ERROR,fatal:!1,frag:e,part:t,response:Zt({url:c.url,data:void 0},f),error:new Error(`HTTP Error ${f.code} ${f.text}`),networkDetails:E,stats:y}))},onAbort:(f,g,E)=>{e.stats.aborted=t.stats.aborted,this.resetLoader(e,d),l(new Wi({type:he.NETWORK_ERROR,details:H.INTERNAL_ABORTED,fatal:!1,frag:e,part:t,error:new Error("Aborted"),networkDetails:E,stats:f}))},onTimeout:(f,g,E)=>{this.resetLoader(e,d),l(new Wi({type:he.NETWORK_ERROR,details:H.FRAG_LOAD_TIMEOUT,fatal:!1,frag:e,part:t,error:new Error(`Timeout after ${h.timeout}ms`),networkDetails:E,stats:f}))}})})}updateStatsFromPart(e,t){let r=e.stats,s=t.stats,n=s.total;if(r.loaded+=s.loaded,n){let l=Math.round(e.duration/t.duration),d=Math.min(Math.round(r.loaded/n),l),u=(l-d)*Math.round(r.loaded/d);r.total=r.loaded+u}else r.total=Math.max(r.loaded,r.total);let a=r.loading,o=s.loading;a.start?a.first+=o.first-o.start:(a.start=o.start,a.first=o.first),a.end=o.end}resetLoader(e,t){e.loader=null,this.loader===t&&(self.clearTimeout(this.partLoadTimeout),this.loader=null),t.destroy()}};function tT(i,e=null){let t=e||i,r={frag:i,part:e,responseType:"arraybuffer",url:t.url,headers:{},rangeStart:0,rangeEnd:0},s=t.byteRangeStartOffset,n=t.byteRangeEndOffset;if(oe(s)&&oe(n)){var a;let o=s,l=n;if(i.sn==="initSegment"&&((a=i.decryptdata)==null?void 0:a.method)==="AES-128"){let d=n-s;d%16&&(l=n+(16-d%16)),s!==0&&(r.resetIV=!0,o=s-16)}r.rangeStart=o,r.rangeEnd=l}return r}function iT(i,e){let t=new Error(`GAP ${i.gap?"tag":"attribute"} found`),r={type:he.MEDIA_ERROR,details:H.FRAG_GAP,fatal:!1,frag:i,error:t,networkDetails:null};return e&&(r.part=e),(e||i).stats.aborted=!0,new Wi(r)}var Wi=class extends Error{constructor(e){super(e.error.message),this.data=void 0,this.data=e}},sg=class{constructor(e){this.config=void 0,this.keyUriToKeyInfo={},this.emeController=null,this.config=e}abort(e){for(let t in this.keyUriToKeyInfo){let r=this.keyUriToKeyInfo[t].loader;if(r){if(e&&e!==r.context.frag.type)return;r.abort()}}}detach(){for(let e in this.keyUriToKeyInfo){let t=this.keyUriToKeyInfo[e];(t.mediaKeySessionContext||t.decryptdata.isCommonEncryption)&&delete this.keyUriToKeyInfo[e]}}destroy(){this.detach();for(let e in this.keyUriToKeyInfo){let t=this.keyUriToKeyInfo[e].loader;t&&t.destroy()}this.keyUriToKeyInfo={}}createKeyLoadError(e,t=H.KEY_LOAD_ERROR,r,s,n){return new Wi({type:he.NETWORK_ERROR,details:t,fatal:!1,frag:e,response:n,error:r,networkDetails:s})}loadClear(e,t){if(this.emeController&&this.config.emeEnabled){let{sn:r,cc:s}=e;for(let n=0;n<t.length;n++){let a=t[n];if(s<=a.cc&&(r==="initSegment"||a.sn==="initSegment"||r<a.sn)){this.emeController.selectKeySystemFormat(a).then(o=>{a.setKeyFormat(o)});break}}}}load(e){return!e.decryptdata&&e.encrypted&&this.emeController?this.emeController.selectKeySystemFormat(e).then(t=>this.loadInternal(e,t)):this.loadInternal(e)}loadInternal(e,t){var r,s;t&&e.setKeyFormat(t);let n=e.decryptdata;if(!n){let d=new Error(t?`Expected frag.decryptdata to be defined after setting format ${t}`:"Missing decryption data on fragment in onKeyLoading");return Promise.reject(this.createKeyLoadError(e,H.KEY_LOAD_ERROR,d))}let a=n.uri;if(!a)return Promise.reject(this.createKeyLoadError(e,H.KEY_LOAD_ERROR,new Error(`Invalid key URI: "${a}"`)));let o=this.keyUriToKeyInfo[a];if((r=o)!=null&&r.decryptdata.key)return n.key=o.decryptdata.key,Promise.resolve({frag:e,keyInfo:o});if((s=o)!=null&&s.keyLoadPromise){var l;switch((l=o.mediaKeySessionContext)==null?void 0:l.keyStatus){case void 0:case"status-pending":case"usable":case"usable-in-future":return o.keyLoadPromise.then(d=>(n.key=d.keyInfo.decryptdata.key,{frag:e,keyInfo:o}))}}switch(o=this.keyUriToKeyInfo[a]={decryptdata:n,keyLoadPromise:null,loader:null,mediaKeySessionContext:null},n.method){case"ISO-23001-7":case"SAMPLE-AES":case"SAMPLE-AES-CENC":case"SAMPLE-AES-CTR":return n.keyFormat==="identity"?this.loadKeyHTTP(o,e):this.loadKeyEME(o,e);case"AES-128":return this.loadKeyHTTP(o,e);default:return Promise.reject(this.createKeyLoadError(e,H.KEY_LOAD_ERROR,new Error(`Key supplied with unsupported METHOD: "${n.method}"`)))}}loadKeyEME(e,t){let r={frag:t,keyInfo:e};if(this.emeController&&this.config.emeEnabled){let s=this.emeController.loadKey(r);if(s)return(e.keyLoadPromise=s.then(n=>(e.mediaKeySessionContext=n,r))).catch(n=>{throw e.keyLoadPromise=null,n})}return Promise.resolve(r)}loadKeyHTTP(e,t){let r=this.config,s=r.loader,n=new s(r);return t.keyLoader=e.loader=n,e.keyLoadPromise=new Promise((a,o)=>{let l={keyInfo:e,frag:t,responseType:"arraybuffer",url:e.decryptdata.uri},d=r.keyLoadPolicy.default,c={loadPolicy:d,timeout:d.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0},u={onSuccess:(h,f,g,E)=>{let{frag:y,keyInfo:S,url:w}=g;if(!y.decryptdata||S!==this.keyUriToKeyInfo[w])return o(this.createKeyLoadError(y,H.KEY_LOAD_ERROR,new Error("after key load, decryptdata unset or changed"),E));S.decryptdata.key=y.decryptdata.key=new Uint8Array(h.data),y.keyLoader=null,S.loader=null,a({frag:y,keyInfo:S})},onError:(h,f,g,E)=>{this.resetLoader(f),o(this.createKeyLoadError(t,H.KEY_LOAD_ERROR,new Error(`HTTP Error ${h.code} loading key ${h.text}`),g,Zt({url:l.url,data:void 0},h)))},onTimeout:(h,f,g)=>{this.resetLoader(f),o(this.createKeyLoadError(t,H.KEY_LOAD_TIMEOUT,new Error("key loading timed out"),g))},onAbort:(h,f,g)=>{this.resetLoader(f),o(this.createKeyLoadError(t,H.INTERNAL_ABORTED,new Error("key loading aborted"),g))}};n.load(l,c,u)})}resetLoader(e){let{frag:t,keyInfo:r,url:s}=e,n=r.loader;t.keyLoader===n&&(t.keyLoader=null,r.loader=null),delete this.keyUriToKeyInfo[s],n&&n.destroy()}},ng=class{constructor(){this._boundTick=void 0,this._tickTimer=null,this._tickInterval=null,this._tickCallCount=0,this._boundTick=this.tick.bind(this)}destroy(){this.onHandlerDestroying(),this.onHandlerDestroyed()}onHandlerDestroying(){this.clearNextTick(),this.clearInterval()}onHandlerDestroyed(){}hasInterval(){return!!this._tickInterval}hasNextTick(){return!!this._tickTimer}setInterval(e){return this._tickInterval?!1:(this._tickCallCount=0,this._tickInterval=self.setInterval(this._boundTick,e),!0)}clearInterval(){return this._tickInterval?(self.clearInterval(this._tickInterval),this._tickInterval=null,!0):!1}clearNextTick(){return this._tickTimer?(self.clearTimeout(this._tickTimer),this._tickTimer=null,!0):!1}tick(){this._tickCallCount++,this._tickCallCount===1&&(this.doTick(),this._tickCallCount>1&&this.tickImmediate(),this._tickCallCount=0)}tickImmediate(){this.clearNextTick(),this._tickTimer=self.setTimeout(this._boundTick,0)}doTick(){}},Rk={length:0,start:()=>0,end:()=>0},at=class i{static isBuffered(e,t){try{if(e){let r=i.getBuffered(e);for(let s=0;s<r.length;s++)if(t>=r.start(s)&&t<=r.end(s))return!0}}catch{}return!1}static bufferInfo(e,t,r){try{if(e){let s=i.getBuffered(e),n=[],a;for(a=0;a<s.length;a++)n.push({start:s.start(a),end:s.end(a)});return this.bufferedInfo(n,t,r)}}catch{}return{len:0,start:t,end:t,nextStart:void 0}}static bufferedInfo(e,t,r){t=Math.max(0,t),e.sort(function(d,c){let u=d.start-c.start;return u||c.end-d.end});let s=[];if(r)for(let d=0;d<e.length;d++){let c=s.length;if(c){let u=s[c-1].end;e[d].start-u<r?e[d].end>u&&(s[c-1].end=e[d].end):s.push(e[d])}else s.push(e[d])}else s=e;let n=0,a,o=t,l=t;for(let d=0;d<s.length;d++){let c=s[d].start,u=s[d].end;if(t+r>=c&&t<u)o=c,l=u,n=l-t;else if(t+r<c){a=c;break}}return{len:n,start:o||0,end:l||0,nextStart:a}}static getBuffered(e){try{return e.buffered}catch(t){return M.log("failed to get media.buffered",t),Rk}}},Lo=class{constructor(e,t,r,s=0,n=-1,a=!1){this.level=void 0,this.sn=void 0,this.part=void 0,this.id=void 0,this.size=void 0,this.partial=void 0,this.transmuxing=Yc(),this.buffering={audio:Yc(),video:Yc(),audiovideo:Yc()},this.level=e,this.sn=t,this.id=r,this.size=s,this.part=n,this.partial=a}};function Yc(){return{start:0,executeStart:0,executeEnd:0,end:0}}function BT(i,e){let t=null;for(let r=0,s=i.length;r<s;r++){let n=i[r];if(n&&n.cc===e){t=n;break}}return t}function wk(i,e,t){return!!(e.details&&(t.endCC>t.startCC||i&&i.cc<t.startCC))}function Ck(i,e,t=0){let r=i.fragments,s=e.fragments;if(!s.length||!r.length){M.log("No fragments to align");return}let n=BT(r,s[0].cc);if(!n||n&&!n.startPTS){M.log("No frag in previous level to align on");return}return n}function rT(i,e){if(i){let t=i.start+e;i.start=i.startPTS=t,i.endPTS=t+i.duration}}function jg(i,e){let t=e.fragments;for(let r=0,s=t.length;r<s;r++)rT(t[r],i);e.fragmentHint&&rT(e.fragmentHint,i),e.alignedSliding=!0}function Dk(i,e,t){e&&(Mk(i,t,e),!t.alignedSliding&&e.details&&Pk(t,e.details),!t.alignedSliding&&e.details&&!t.skippedSegments&&NT(e.details,t))}function Mk(i,e,t){if(wk(i,t,e)){let r=Ck(t.details,e);r&&oe(r.start)&&(M.log(`Adjusting PTS using last level due to CC increase within current level ${e.url}`),jg(r.start,e))}}function Pk(i,e){if(!e.fragments.length||!i.hasProgramDateTime||!e.hasProgramDateTime)return;let t=e.fragments[0].programDateTime,r=i.fragments[0].programDateTime,s=(r-t)/1e3+e.fragments[0].start;s&&oe(s)&&(M.log(`Adjusting PTS using programDateTime delta ${r-t}ms, sliding:${s.toFixed(3)} ${i.url} `),jg(s,i))}function $T(i,e){if(!i.hasProgramDateTime||!e.hasProgramDateTime)return;let t=i.fragments,r=e.fragments;if(!t.length||!r.length)return;let s=Math.round(r.length/2)-1,n=r[s],a=BT(t,n.cc)||t[Math.round(t.length/2)-1],o=n.programDateTime,l=a.programDateTime;if(o===null||l===null)return;let d=(l-o)/1e3-(a.start-n.start);jg(d,i)}var ag=class{constructor(e,t){this.subtle=void 0,this.aesIV=void 0,this.subtle=e,this.aesIV=t}decrypt(e,t){return this.subtle.decrypt({name:"AES-CBC",iv:this.aesIV},t,e)}},og=class{constructor(e,t){this.subtle=void 0,this.key=void 0,this.subtle=e,this.key=t}expandKey(){return this.subtle.importKey("raw",this.key,{name:"AES-CBC"},!1,["encrypt","decrypt"])}};function Ok(i){let e=i.byteLength,t=e&&new DataView(i.buffer).getUint8(e-1);return t?$s(i,0,e-t):i}var lg=class{constructor(){this.rcon=[0,1,2,4,8,16,32,64,128,27,54],this.subMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.invSubMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.sBox=new Uint32Array(256),this.invSBox=new Uint32Array(256),this.key=new Uint32Array(0),this.ksRows=0,this.keySize=0,this.keySchedule=void 0,this.invKeySchedule=void 0,this.initTable()}uint8ArrayToUint32Array_(e){let t=new DataView(e),r=new Uint32Array(4);for(let s=0;s<4;s++)r[s]=t.getUint32(s*4);return r}initTable(){let e=this.sBox,t=this.invSBox,r=this.subMix,s=r[0],n=r[1],a=r[2],o=r[3],l=this.invSubMix,d=l[0],c=l[1],u=l[2],h=l[3],f=new Uint32Array(256),g=0,E=0,y=0;for(y=0;y<256;y++)y<128?f[y]=y<<1:f[y]=y<<1^283;for(y=0;y<256;y++){let S=E^E<<1^E<<2^E<<3^E<<4;S=S>>>8^S&255^99,e[g]=S,t[S]=g;let w=f[g],L=f[w],F=f[L],R=f[S]*257^S*16843008;s[g]=R<<24|R>>>8,n[g]=R<<16|R>>>16,a[g]=R<<8|R>>>24,o[g]=R,R=F*16843009^L*65537^w*257^g*16843008,d[S]=R<<24|R>>>8,c[S]=R<<16|R>>>16,u[S]=R<<8|R>>>24,h[S]=R,g?(g=w^f[f[f[F^w]]],E^=f[f[E]]):g=E=1}}expandKey(e){let t=this.uint8ArrayToUint32Array_(e),r=!0,s=0;for(;s<t.length&&r;)r=t[s]===this.key[s],s++;if(r)return;this.key=t;let n=this.keySize=t.length;if(n!==4&&n!==6&&n!==8)throw new Error("Invalid aes key size="+n);let a=this.ksRows=(n+6+1)*4,o,l,d=this.keySchedule=new Uint32Array(a),c=this.invKeySchedule=new Uint32Array(a),u=this.sBox,h=this.rcon,f=this.invSubMix,g=f[0],E=f[1],y=f[2],S=f[3],w,L;for(o=0;o<a;o++){if(o<n){w=d[o]=t[o];continue}L=w,o%n===0?(L=L<<8|L>>>24,L=u[L>>>24]<<24|u[L>>>16&255]<<16|u[L>>>8&255]<<8|u[L&255],L^=h[o/n|0]<<24):n>6&&o%n===4&&(L=u[L>>>24]<<24|u[L>>>16&255]<<16|u[L>>>8&255]<<8|u[L&255]),d[o]=w=(d[o-n]^L)>>>0}for(l=0;l<a;l++)o=a-l,l&3?L=d[o]:L=d[o-4],l<4||o<=4?c[l]=L:c[l]=g[u[L>>>24]]^E[u[L>>>16&255]]^y[u[L>>>8&255]]^S[u[L&255]],c[l]=c[l]>>>0}networkToHostOrderSwap(e){return e<<24|(e&65280)<<8|(e&16711680)>>8|e>>>24}decrypt(e,t,r){let s=this.keySize+6,n=this.invKeySchedule,a=this.invSBox,o=this.invSubMix,l=o[0],d=o[1],c=o[2],u=o[3],h=this.uint8ArrayToUint32Array_(r),f=h[0],g=h[1],E=h[2],y=h[3],S=new Int32Array(e),w=new Int32Array(S.length),L,F,R,B,P,$,K,N,z,Y,ge,me,Ee,De,Le=this.networkToHostOrderSwap;for(;t<S.length;){for(z=Le(S[t]),Y=Le(S[t+1]),ge=Le(S[t+2]),me=Le(S[t+3]),P=z^n[0],$=me^n[1],K=ge^n[2],N=Y^n[3],Ee=4,De=1;De<s;De++)L=l[P>>>24]^d[$>>16&255]^c[K>>8&255]^u[N&255]^n[Ee],F=l[$>>>24]^d[K>>16&255]^c[N>>8&255]^u[P&255]^n[Ee+1],R=l[K>>>24]^d[N>>16&255]^c[P>>8&255]^u[$&255]^n[Ee+2],B=l[N>>>24]^d[P>>16&255]^c[$>>8&255]^u[K&255]^n[Ee+3],P=L,$=F,K=R,N=B,Ee=Ee+4;L=a[P>>>24]<<24^a[$>>16&255]<<16^a[K>>8&255]<<8^a[N&255]^n[Ee],F=a[$>>>24]<<24^a[K>>16&255]<<16^a[N>>8&255]<<8^a[P&255]^n[Ee+1],R=a[K>>>24]<<24^a[N>>16&255]<<16^a[P>>8&255]<<8^a[$&255]^n[Ee+2],B=a[N>>>24]<<24^a[P>>16&255]<<16^a[$>>8&255]<<8^a[K&255]^n[Ee+3],w[t]=Le(L^f),w[t+1]=Le(B^g),w[t+2]=Le(R^E),w[t+3]=Le(F^y),f=z,g=Y,E=ge,y=me,t=t+4}return w.buffer}},Nk=16,Ro=class{constructor(e,{removePKCS7Padding:t=!0}={}){if(this.logEnabled=!0,this.removePKCS7Padding=void 0,this.subtle=null,this.softwareDecrypter=null,this.key=null,this.fastAesKey=null,this.remainderData=null,this.currentIV=null,this.currentResult=null,this.useSoftware=void 0,this.useSoftware=e.enableSoftwareAES,this.removePKCS7Padding=t,t)try{let r=self.crypto;r&&(this.subtle=r.subtle||r.webkitSubtle)}catch{}this.subtle===null&&(this.useSoftware=!0)}destroy(){this.subtle=null,this.softwareDecrypter=null,this.key=null,this.fastAesKey=null,this.remainderData=null,this.currentIV=null,this.currentResult=null}isSync(){return this.useSoftware}flush(){let{currentResult:e,remainderData:t}=this;if(!e||t)return this.reset(),null;let r=new Uint8Array(e);return this.reset(),this.removePKCS7Padding?Ok(r):r}reset(){this.currentResult=null,this.currentIV=null,this.remainderData=null,this.softwareDecrypter&&(this.softwareDecrypter=null)}decrypt(e,t,r){return this.useSoftware?new Promise((s,n)=>{this.softwareDecrypt(new Uint8Array(e),t,r);let a=this.flush();a?s(a.buffer):n(new Error("[softwareDecrypt] Failed to decrypt data"))}):this.webCryptoDecrypt(new Uint8Array(e),t,r)}softwareDecrypt(e,t,r){let{currentIV:s,currentResult:n,remainderData:a}=this;this.logOnce("JS AES decrypt"),a&&(e=Hs(a,e),this.remainderData=null);let o=this.getValidChunk(e);if(!o.length)return null;s&&(r=s);let l=this.softwareDecrypter;l||(l=this.softwareDecrypter=new lg),l.expandKey(t);let d=n;return this.currentResult=l.decrypt(o.buffer,0,r),this.currentIV=$s(o,-16).buffer,d||null}webCryptoDecrypt(e,t,r){let s=this.subtle;return(this.key!==t||!this.fastAesKey)&&(this.key=t,this.fastAesKey=new og(s,t)),this.fastAesKey.expandKey().then(n=>s?(this.logOnce("WebCrypto AES decrypt"),new ag(s,new Uint8Array(r)).decrypt(e.buffer,n)):Promise.reject(new Error("web crypto not initialized"))).catch(n=>(M.warn(`[decrypter]: WebCrypto Error, disable WebCrypto API, ${n.name}: ${n.message}`),this.onWebCryptoError(e,t,r)))}onWebCryptoError(e,t,r){this.useSoftware=!0,this.logEnabled=!0,this.softwareDecrypt(e,t,r);let s=this.flush();if(s)return s.buffer;throw new Error("WebCrypto and softwareDecrypt: failed to decrypt data")}getValidChunk(e){let t=e,r=e.length-e.length%Nk;return r!==e.length&&(t=$s(e,0,r),this.remainderData=$s(e,r)),t}logOnce(e){this.logEnabled&&(M.log(`[decrypter]: ${e}`),this.logEnabled=!1)}},Uk={toString:function(i){let e="",t=i.length;for(let r=0;r<t;r++)e+=`[${i.start(r).toFixed(3)}-${i.end(r).toFixed(3)}]`;return e}},V={STOPPED:"STOPPED",IDLE:"IDLE",KEY_LOADING:"KEY_LOADING",FRAG_LOADING:"FRAG_LOADING",FRAG_LOADING_WAITING_RETRY:"FRAG_LOADING_WAITING_RETRY",WAITING_TRACK:"WAITING_TRACK",PARSING:"PARSING",PARSED:"PARSED",ENDED:"ENDED",ERROR:"ERROR",WAITING_INIT_PTS:"WAITING_INIT_PTS",WAITING_LEVEL:"WAITING_LEVEL"},wo=class extends ng{constructor(e,t,r,s,n){super(),this.hls=void 0,this.fragPrevious=null,this.fragCurrent=null,this.fragmentTracker=void 0,this.transmuxer=null,this._state=V.STOPPED,this.playlistType=void 0,this.media=null,this.mediaBuffer=null,this.config=void 0,this.bitrateTest=!1,this.lastCurrentTime=0,this.nextLoadPosition=0,this.startPosition=0,this.startTimeOffset=null,this.loadedmetadata=!1,this.retryDate=0,this.levels=null,this.fragmentLoader=void 0,this.keyLoader=void 0,this.levelLastLoaded=null,this.startFragRequested=!1,this.decrypter=void 0,this.initPTS=[],this.onvseeking=null,this.onvended=null,this.logPrefix="",this.log=void 0,this.warn=void 0,this.playlistType=n,this.logPrefix=s,this.log=M.log.bind(M,`${s}:`),this.warn=M.warn.bind(M,`${s}:`),this.hls=e,this.fragmentLoader=new rg(e.config),this.keyLoader=r,this.fragmentTracker=t,this.config=e.config,this.decrypter=new Ro(e.config),e.on(b.MANIFEST_LOADED,this.onManifestLoaded,this)}doTick(){this.onTickEnd()}onTickEnd(){}startLoad(e){}stopLoad(){this.fragmentLoader.abort(),this.keyLoader.abort(this.playlistType);let e=this.fragCurrent;e!=null&&e.loader&&(e.abortRequests(),this.fragmentTracker.removeFragment(e)),this.resetTransmuxer(),this.fragCurrent=null,this.fragPrevious=null,this.clearInterval(),this.clearNextTick(),this.state=V.STOPPED}_streamEnded(e,t){if(t.live||e.nextStart||!e.end||!this.media)return!1;let r=t.partList;if(r!=null&&r.length){let n=r[r.length-1];return at.isBuffered(this.media,n.start+n.duration/2)}let s=t.fragments[t.fragments.length-1].type;return this.fragmentTracker.isEndListAppended(s)}getLevelDetails(){if(this.levels&&this.levelLastLoaded!==null){var e;return(e=this.levels[this.levelLastLoaded])==null?void 0:e.details}}onMediaAttached(e,t){let r=this.media=this.mediaBuffer=t.media;this.onvseeking=this.onMediaSeeking.bind(this),this.onvended=this.onMediaEnded.bind(this),r.addEventListener("seeking",this.onvseeking),r.addEventListener("ended",this.onvended);let s=this.config;this.levels&&s.autoStartLoad&&this.state===V.STOPPED&&this.startLoad(s.startPosition)}onMediaDetaching(){let e=this.media;e!=null&&e.ended&&(this.log("MSE detaching and video ended, reset startPosition"),this.startPosition=this.lastCurrentTime=0),e&&this.onvseeking&&this.onvended&&(e.removeEventListener("seeking",this.onvseeking),e.removeEventListener("ended",this.onvended),this.onvseeking=this.onvended=null),this.keyLoader&&this.keyLoader.detach(),this.media=this.mediaBuffer=null,this.loadedmetadata=!1,this.fragmentTracker.removeAllFragments(),this.stopLoad()}onMediaSeeking(){let{config:e,fragCurrent:t,media:r,mediaBuffer:s,state:n}=this,a=r?r.currentTime:0,o=at.bufferInfo(s||r,a,e.maxBufferHole);if(this.log(`media seeking to ${oe(a)?a.toFixed(3):a}, state: ${n}`),this.state===V.ENDED)this.resetLoadingState();else if(t){let l=e.maxFragLookUpTolerance,d=t.start-l,c=t.start+t.duration+l;if(!o.len||c<o.start||d>o.end){let u=a>c;(a<d||u)&&(u&&t.loader&&(this.log("seeking outside of buffer while fragment load in progress, cancel fragment load"),t.abortRequests(),this.resetLoadingState()),this.fragPrevious=null)}}r&&(this.fragmentTracker.removeFragmentsInRange(a,1/0,this.playlistType,!0),this.lastCurrentTime=a),!this.loadedmetadata&&!o.len&&(this.nextLoadPosition=this.startPosition=a),this.tickImmediate()}onMediaEnded(){this.startPosition=this.lastCurrentTime=0}onManifestLoaded(e,t){this.startTimeOffset=t.startTimeOffset,this.initPTS=[]}onHandlerDestroying(){this.stopLoad(),super.onHandlerDestroying()}onHandlerDestroyed(){this.state=V.STOPPED,this.fragmentLoader&&this.fragmentLoader.destroy(),this.keyLoader&&this.keyLoader.destroy(),this.decrypter&&this.decrypter.destroy(),this.hls=this.log=this.warn=this.decrypter=this.keyLoader=this.fragmentLoader=this.fragmentTracker=null,super.onHandlerDestroyed()}loadFragment(e,t,r){this._loadFragForPlayback(e,t,r)}_loadFragForPlayback(e,t,r){let s=n=>{if(this.fragContextChanged(e)){this.warn(`Fragment ${e.sn}${n.part?" p: "+n.part.index:""} of level ${e.level} was dropped during download.`),this.fragmentTracker.removeFragment(e);return}e.stats.chunkCount++,this._handleFragmentLoadProgress(n)};this._doFragLoad(e,t,r,s).then(n=>{if(!n)return;let a=this.state;if(this.fragContextChanged(e)){(a===V.FRAG_LOADING||!this.fragCurrent&&a===V.PARSING)&&(this.fragmentTracker.removeFragment(e),this.state=V.IDLE);return}"payload"in n&&(this.log(`Loaded fragment ${e.sn} of level ${e.level}`),this.hls.trigger(b.FRAG_LOADED,n)),this._handleFragmentLoadComplete(n)}).catch(n=>{this.state===V.STOPPED||this.state===V.ERROR||(this.warn(n),this.resetFragmentLoading(e))})}clearTrackerIfNeeded(e){var t;let{fragmentTracker:r}=this;if(r.getState(e)===Mt.APPENDING){let n=e.type,a=this.getFwdBufferInfo(this.mediaBuffer,n),o=Math.max(e.duration,a?a.len:this.config.maxBufferLength);this.reduceMaxBufferLength(o)&&r.removeFragment(e)}else((t=this.mediaBuffer)==null?void 0:t.buffered.length)===0?r.removeAllFragments():r.hasParts(e.type)&&(r.detectPartialFragments({frag:e,part:null,stats:e.stats,id:e.type}),r.getState(e)===Mt.PARTIAL&&r.removeFragment(e))}checkLiveUpdate(e){if(e.updated&&!e.live){let t=e.fragments[e.fragments.length-1];this.fragmentTracker.detectPartialFragments({frag:t,part:null,stats:t.stats,id:t.type})}e.fragments[0]||(e.deltaUpdateFailed=!0)}flushMainBuffer(e,t,r=null){if(!(e-t))return;let s={startOffset:e,endOffset:t,type:r};this.hls.trigger(b.BUFFER_FLUSHING,s)}_loadInitSegment(e,t){this._doFragLoad(e,t).then(r=>{if(!r||this.fragContextChanged(e)||!this.levels)throw new Error("init load aborted");return r}).then(r=>{let{hls:s}=this,{payload:n}=r,a=e.decryptdata;if(n&&n.byteLength>0&&a&&a.key&&a.iv&&a.method==="AES-128"){let o=self.performance.now();return this.decrypter.decrypt(new Uint8Array(n),a.key.buffer,a.iv.buffer).catch(l=>{throw s.trigger(b.ERROR,{type:he.MEDIA_ERROR,details:H.FRAG_DECRYPT_ERROR,fatal:!1,error:l,reason:l.message,frag:e}),l}).then(l=>{let d=self.performance.now();return s.trigger(b.FRAG_DECRYPTED,{frag:e,payload:l,stats:{tstart:o,tdecrypt:d}}),r.payload=l,r})}return r}).then(r=>{let{fragCurrent:s,hls:n,levels:a}=this;if(!a)throw new Error("init load aborted, missing levels");let o=e.stats;this.state=V.IDLE,t.fragmentError=0,e.data=new Uint8Array(r.payload),o.parsing.start=o.buffering.start=self.performance.now(),o.parsing.end=o.buffering.end=self.performance.now(),r.frag===s&&n.trigger(b.FRAG_BUFFERED,{stats:o,frag:s,part:null,id:e.type}),this.tick()}).catch(r=>{this.state===V.STOPPED||this.state===V.ERROR||(this.warn(r),this.resetFragmentLoading(e))})}fragContextChanged(e){let{fragCurrent:t}=this;return!e||!t||e.level!==t.level||e.sn!==t.sn||e.urlId!==t.urlId}fragBufferedComplete(e,t){var r,s,n,a;let o=this.mediaBuffer?this.mediaBuffer:this.media;this.log(`Buffered ${e.type} sn: ${e.sn}${t?" part: "+t.index:""} of ${this.playlistType===fe.MAIN?"level":"track"} ${e.level} (frag:[${((r=e.startPTS)!=null?r:NaN).toFixed(3)}-${((s=e.endPTS)!=null?s:NaN).toFixed(3)}] > buffer:${o?Uk.toString(at.getBuffered(o)):"(detached)"})`),this.state=V.IDLE,o&&(!this.loadedmetadata&&e.type==fe.MAIN&&o.buffered.length&&((n=this.fragCurrent)==null?void 0:n.sn)===((a=this.fragPrevious)==null?void 0:a.sn)&&(this.loadedmetadata=!0,this.seekToStartPos()),this.tick())}seekToStartPos(){}_handleFragmentLoadComplete(e){let{transmuxer:t}=this;if(!t)return;let{frag:r,part:s,partsLoaded:n}=e,a=!n||n.length===0||n.some(l=>!l),o=new Lo(r.level,r.sn,r.stats.chunkCount+1,0,s?s.index:-1,!a);t.flush(o)}_handleFragmentLoadProgress(e){}_doFragLoad(e,t,r=null,s){var n;let a=t==null?void 0:t.details;if(!this.levels||!a)throw new Error(`frag load aborted, missing level${a?"":" detail"}s`);let o=null;if(e.encrypted&&!((n=e.decryptdata)!=null&&n.key)?(this.log(`Loading key for ${e.sn} of [${a.startSN}-${a.endSN}], ${this.logPrefix==="[stream-controller]"?"level":"track"} ${e.level}`),this.state=V.KEY_LOADING,this.fragCurrent=e,o=this.keyLoader.load(e).then(c=>{if(!this.fragContextChanged(c.frag))return this.hls.trigger(b.KEY_LOADED,c),this.state===V.KEY_LOADING&&(this.state=V.IDLE),c}),this.hls.trigger(b.KEY_LOADING,{frag:e}),this.fragCurrent===null&&(o=Promise.reject(new Error("frag load aborted, context changed in KEY_LOADING")))):!e.encrypted&&a.encryptedFragments.length&&this.keyLoader.loadClear(e,a.encryptedFragments),r=Math.max(e.start,r||0),this.config.lowLatencyMode&&e.sn!=="initSegment"){let c=a.partList;if(c&&s){r>e.end&&a.fragmentHint&&(e=a.fragmentHint);let u=this.getNextPart(c,e,r);if(u>-1){let h=c[u];this.log(`Loading part sn: ${e.sn} p: ${h.index} cc: ${e.cc} of playlist [${a.startSN}-${a.endSN}] parts [0-${u}-${c.length-1}] ${this.logPrefix==="[stream-controller]"?"level":"track"}: ${e.level}, target: ${parseFloat(r.toFixed(3))}`),this.nextLoadPosition=h.start+h.duration,this.state=V.FRAG_LOADING;let f;return o?f=o.then(g=>!g||this.fragContextChanged(g.frag)?null:this.doFragPartsLoad(e,h,t,s)).catch(g=>this.handleFragLoadError(g)):f=this.doFragPartsLoad(e,h,t,s).catch(g=>this.handleFragLoadError(g)),this.hls.trigger(b.FRAG_LOADING,{frag:e,part:h,targetBufferTime:r}),this.fragCurrent===null?Promise.reject(new Error("frag load aborted, context changed in FRAG_LOADING parts")):f}else if(!e.url||this.loadedEndOfParts(c,r))return Promise.resolve(null)}}this.log(`Loading fragment ${e.sn} cc: ${e.cc} ${a?"of ["+a.startSN+"-"+a.endSN+"] ":""}${this.logPrefix==="[stream-controller]"?"level":"track"}: ${e.level}, target: ${parseFloat(r.toFixed(3))}`),oe(e.sn)&&!this.bitrateTest&&(this.nextLoadPosition=e.start+e.duration),this.state=V.FRAG_LOADING;let l=this.config.progressive,d;return l&&o?d=o.then(c=>!c||this.fragContextChanged(c==null?void 0:c.frag)?null:this.fragmentLoader.load(e,s)).catch(c=>this.handleFragLoadError(c)):d=Promise.all([this.fragmentLoader.load(e,l?s:void 0),o]).then(([c])=>(!l&&c&&s&&s(c),c)).catch(c=>this.handleFragLoadError(c)),this.hls.trigger(b.FRAG_LOADING,{frag:e,targetBufferTime:r}),this.fragCurrent===null?Promise.reject(new Error("frag load aborted, context changed in FRAG_LOADING")):d}doFragPartsLoad(e,t,r,s){return new Promise((n,a)=>{var o;let l=[],d=(o=r.details)==null?void 0:o.partList,c=u=>{this.fragmentLoader.loadPart(e,u,s).then(h=>{l[u.index]=h;let f=h.part;this.hls.trigger(b.FRAG_LOADED,h);let g=Xy(r,e.sn,u.index+1)||UT(d,e.sn,u.index+1);if(g)c(g);else return n({frag:e,part:f,partsLoaded:l})}).catch(a)};c(t)})}handleFragLoadError(e){if("data"in e){let t=e.data;e.data&&t.details===H.INTERNAL_ABORTED?this.handleFragLoadAborted(t.frag,t.part):this.hls.trigger(b.ERROR,t)}else this.hls.trigger(b.ERROR,{type:he.OTHER_ERROR,details:H.INTERNAL_EXCEPTION,err:e,error:e,fatal:!0});return null}_handleTransmuxerFlush(e){let t=this.getCurrentContext(e);if(!t||this.state!==V.PARSING){!this.fragCurrent&&this.state!==V.STOPPED&&this.state!==V.ERROR&&(this.state=V.IDLE);return}let{frag:r,part:s,level:n}=t,a=self.performance.now();r.stats.parsing.end=a,s&&(s.stats.parsing.end=a),this.updateLevelTiming(r,s,n,e.partial)}getCurrentContext(e){let{levels:t,fragCurrent:r}=this,{level:s,sn:n,part:a}=e;if(!(t!=null&&t[s]))return this.warn(`Levels object was unset while buffering fragment ${n} of level ${s}. The current chunk will not be buffered.`),null;let o=t[s],l=a>-1?Xy(o,n,a):null,d=l?l.fragment:_k(o,n,r);return d?(r&&r!==d&&(d.stats=r.stats),{frag:d,part:l,level:o}):null}bufferFragmentData(e,t,r,s,n){var a;if(!e||this.state!==V.PARSING)return;let{data1:o,data2:l}=e,d=o;if(o&&l&&(d=Hs(o,l)),!((a=d)!=null&&a.length))return;let c={type:e.type,frag:t,part:r,chunkMeta:s,parent:t.type,data:d};if(this.hls.trigger(b.BUFFER_APPENDING,c),e.dropped&&e.independent&&!r){if(n)return;this.flushBufferGap(t)}}flushBufferGap(e){let t=this.media;if(!t)return;if(!at.isBuffered(t,t.currentTime)){this.flushMainBuffer(0,e.start);return}let r=t.currentTime,s=at.bufferInfo(t,r,0),n=e.duration,a=Math.min(this.config.maxFragLookUpTolerance*2,n*.25),o=Math.max(Math.min(e.start-a,s.end-a),r+a);e.start-o>a&&this.flushMainBuffer(o,e.start)}getFwdBufferInfo(e,t){let r=this.getLoadPosition();return oe(r)?this.getFwdBufferInfoAtPos(e,r,t):null}getFwdBufferInfoAtPos(e,t,r){let{config:{maxBufferHole:s}}=this,n=at.bufferInfo(e,t,s);if(n.len===0&&n.nextStart!==void 0){let a=this.fragmentTracker.getBufferedFrag(t,r);if(a&&n.nextStart<a.end)return at.bufferInfo(e,t,Math.max(n.nextStart,s))}return n}getMaxBufferLength(e){let{config:t}=this,r;return e?r=Math.max(8*t.maxBufferSize/e,t.maxBufferLength):r=t.maxBufferLength,Math.min(r,t.maxMaxBufferLength)}reduceMaxBufferLength(e){let t=this.config,r=e||t.maxBufferLength;return t.maxMaxBufferLength>=r?(t.maxMaxBufferLength/=2,this.warn(`Reduce max buffer length to ${t.maxMaxBufferLength}s`),!0):!1}getAppendedFrag(e,t=fe.MAIN){let r=this.fragmentTracker.getAppendedFrag(e,fe.MAIN);return r&&"fragment"in r?r.fragment:r}getNextFragment(e,t){let r=t.fragments,s=r.length;if(!s)return null;let{config:n}=this,a=r[0].start,o;if(t.live){let l=n.initialLiveManifestSize;if(s<l)return this.warn(`Not enough fragments to start playback (have: ${s}, need: ${l})`),null;!t.PTSKnown&&!this.startFragRequested&&this.startPosition===-1&&(o=this.getInitialLiveFragment(t,r),this.startPosition=o?this.hls.liveSyncPosition||o.start:e)}else e<=a&&(o=r[0]);if(!o){let l=n.lowLatencyMode?t.partEnd:t.fragmentEnd;o=this.getFragmentAtPosition(e,l,t)}return this.mapToInitFragWhenRequired(o)}isLoopLoading(e,t){let r=this.fragmentTracker.getState(e);return(r===Mt.OK||r===Mt.PARTIAL&&!!e.gap)&&this.nextLoadPosition>t}getNextFragmentLoopLoading(e,t,r,s,n){let a=e.gap,o=this.getNextFragment(this.nextLoadPosition,t);if(o===null)return o;if(e=o,a&&e&&!e.gap&&r.nextStart){let l=this.getFwdBufferInfoAtPos(this.mediaBuffer?this.mediaBuffer:this.media,r.nextStart,s);if(l!==null&&r.len+l.len>=n)return this.log(`buffer full after gaps in "${s}" playlist starting at sn: ${e.sn}`),null}return e}mapToInitFragWhenRequired(e){return e!=null&&e.initSegment&&!(e!=null&&e.initSegment.data)&&!this.bitrateTest?e.initSegment:e}getNextPart(e,t,r){let s=-1,n=!1,a=!0;for(let o=0,l=e.length;o<l;o++){let d=e[o];if(a=a&&!d.independent,s>-1&&r<d.start)break;let c=d.loaded;c?s=-1:(n||d.independent||a)&&d.fragment===t&&(s=o),n=c}return s}loadedEndOfParts(e,t){let r=e[e.length-1];return r&&t>r.start&&r.loaded}getInitialLiveFragment(e,t){let r=this.fragPrevious,s=null;if(r){if(e.hasProgramDateTime&&(this.log(`Live playlist, switching playlist, load frag with same PDT: ${r.programDateTime}`),s=Sk(t,r.endProgramDateTime,this.config.maxFragLookUpTolerance)),!s){let n=r.sn+1;if(n>=e.startSN&&n<=e.endSN){let a=t[n-e.startSN];r.cc===a.cc&&(s=a,this.log(`Live playlist, switching playlist, load frag with next SN: ${s.sn}`))}s||(s=Ik(t,r.cc),s&&this.log(`Live playlist, switching playlist, load frag with same CC: ${s.sn}`))}}else{let n=this.hls.liveSyncPosition;n!==null&&(s=this.getFragmentAtPosition(n,this.bitrateTest?e.fragmentEnd:e.edge,e))}return s}getFragmentAtPosition(e,t,r){let{config:s}=this,{fragPrevious:n}=this,{fragments:a,endSN:o}=r,{fragmentHint:l}=r,d=s.maxFragLookUpTolerance,c=r.partList,u=!!(s.lowLatencyMode&&c!=null&&c.length&&l);u&&l&&!this.bitrateTest&&(a=a.concat(l),o=l.sn);let h;if(e<t){let f=e>t-d?0:d;h=Io(n,a,e,f)}else h=a[a.length-1];if(h){let f=h.sn-r.startSN,g=this.fragmentTracker.getState(h);if((g===Mt.OK||g===Mt.PARTIAL&&h.gap)&&(n=h),n&&h.sn===n.sn&&(!u||c[0].fragment.sn>h.sn)&&n&&h.level===n.level){let y=a[f+1];h.sn<o&&this.fragmentTracker.getState(y)!==Mt.OK?h=y:h=null}}return h}synchronizeToLiveEdge(e){let{config:t,media:r}=this;if(!r)return;let s=this.hls.liveSyncPosition,n=r.currentTime,a=e.fragments[0].start,o=e.edge,l=n>=a-t.maxFragLookUpTolerance&&n<=o;if(s!==null&&r.duration>s&&(n<s||!l)){let d=t.liveMaxLatencyDuration!==void 0?t.liveMaxLatencyDuration:t.liveMaxLatencyDurationCount*e.targetduration;(!l&&r.readyState<4||n<o-d)&&(this.loadedmetadata||(this.nextLoadPosition=s),r.readyState&&(this.warn(`Playback: ${n.toFixed(3)} is located too far from the end of live sliding playlist: ${o}, reset currentTime to : ${s.toFixed(3)}`),r.currentTime=s))}}alignPlaylists(e,t){let{levels:r,levelLastLoaded:s,fragPrevious:n}=this,a=s!==null?r[s]:null,o=e.fragments.length;if(!o)return this.warn("No fragments in live playlist"),0;let l=e.fragments[0].start,d=!t,c=e.alignedSliding&&oe(l);if(d||!c&&!l){Dk(n,a,e);let u=e.fragments[0].start;return this.log(`Live playlist sliding: ${u.toFixed(2)} start-sn: ${t?t.startSN:"na"}->${e.startSN} prev-sn: ${n?n.sn:"na"} fragments: ${o}`),u}return l}waitForCdnTuneIn(e){return e.live&&e.canBlockReload&&e.partTarget&&e.tuneInGoal>Math.max(e.partHoldBack,e.partTarget*3)}setStartPosition(e,t){let r=this.startPosition;if(r<t&&(r=-1),r===-1||this.lastCurrentTime===-1){let s=this.startTimeOffset!==null,n=s?this.startTimeOffset:e.startTimeOffset;n!==null&&oe(n)?(r=t+n,n<0&&(r+=e.totalduration),r=Math.min(Math.max(t,r),t+e.totalduration),this.log(`Start time offset ${n} found in ${s?"multivariant":"media"} playlist, adjust startPosition to ${r}`),this.startPosition=r):e.live?r=this.hls.liveSyncPosition||t:this.startPosition=r=0,this.lastCurrentTime=r}this.nextLoadPosition=r}getLoadPosition(){let{media:e}=this,t=0;return this.loadedmetadata&&e?t=e.currentTime:this.nextLoadPosition&&(t=this.nextLoadPosition),t}handleFragLoadAborted(e,t){this.transmuxer&&e.sn!=="initSegment"&&e.stats.aborted&&(this.warn(`Fragment ${e.sn}${t?" part "+t.index:""} of level ${e.level} was aborted`),this.resetFragmentLoading(e))}resetFragmentLoading(e){(!this.fragCurrent||!this.fragContextChanged(e)&&this.state!==V.FRAG_LOADING_WAITING_RETRY)&&(this.state=V.IDLE)}onFragmentOrKeyLoadError(e,t){if(t.chunkMeta&&!t.frag){let u=this.getCurrentContext(t.chunkMeta);u&&(t.frag=u.frag)}let r=t.frag;if(!r||r.type!==e||!this.levels)return;if(this.fragContextChanged(r)){var s;this.warn(`Frag load error must match current frag to retry ${r.url} > ${(s=this.fragCurrent)==null?void 0:s.url}`);return}let n=t.details===H.FRAG_GAP;n&&this.fragmentTracker.fragBuffered(r,!0);let a=t.errorAction,{action:o,retryCount:l=0,retryConfig:d}=a||{};if(a&&o===Yt.RetryRequest&&d){var c;this.resetStartWhenNotLoaded((c=this.levelLastLoaded)!=null?c:r.level);let u=Yg(d,l);this.warn(`Fragment ${r.sn} of ${e} ${r.level} errored with ${t.details}, retrying loading ${l+1}/${d.maxNumRetry} in ${u}ms`),a.resolved=!0,this.retryDate=self.performance.now()+u,this.state=V.FRAG_LOADING_WAITING_RETRY}else d&&a?(this.resetFragmentErrors(e),l<d.maxNumRetry?n||(a.resolved=!0):M.warn(`${t.details} reached or exceeded max retry (${l})`)):(a==null?void 0:a.action)===Yt.SendAlternateToPenaltyBox?this.state=V.WAITING_LEVEL:this.state=V.ERROR;this.tickImmediate()}reduceLengthAndFlushBuffer(e){if(this.state===V.PARSING||this.state===V.PARSED){let t=e.parent,r=this.getFwdBufferInfo(this.mediaBuffer,t),s=r&&r.len>.5;s&&this.reduceMaxBufferLength(r.len);let n=!s;return n&&this.warn(`Buffer full error while media.currentTime is not buffered, flush ${t} buffer`),e.frag&&(this.fragmentTracker.removeFragment(e.frag),this.nextLoadPosition=e.frag.start),this.resetLoadingState(),n}return!1}resetFragmentErrors(e){e===fe.AUDIO&&(this.fragCurrent=null),this.loadedmetadata||(this.startFragRequested=!1),this.state!==V.STOPPED&&(this.state=V.IDLE)}afterBufferFlushed(e,t,r){if(!e)return;let s=at.getBuffered(e);this.fragmentTracker.detectEvictedFragments(t,s,r),this.state===V.ENDED&&this.resetLoadingState()}resetLoadingState(){this.log("Reset loading state"),this.fragCurrent=null,this.fragPrevious=null,this.state=V.IDLE}resetStartWhenNotLoaded(e){if(!this.loadedmetadata){this.startFragRequested=!1;let t=this.levels?this.levels[e].details:null;t!=null&&t.live?(this.startPosition=-1,this.setStartPosition(t,0),this.resetLoadingState()):this.nextLoadPosition=this.startPosition}}resetWhenMissingContext(e){var t;this.warn(`The loading context changed while buffering fragment ${e.sn} of level ${e.level}. This chunk will not be buffered.`),this.removeUnbufferedFrags(),this.resetStartWhenNotLoaded((t=this.levelLastLoaded)!=null?t:e.level),this.resetLoadingState()}removeUnbufferedFrags(e=0){this.fragmentTracker.removeFragmentsInRange(e,1/0,this.playlistType,!1,!0)}updateLevelTiming(e,t,r,s){var n;let a=r.details;if(!a){this.warn("level.details undefined");return}if(Object.keys(e.elementaryStreams).reduce((l,d)=>{let c=e.elementaryStreams[d];if(c){let u=c.endPTS-c.startPTS;if(u<=0)return this.warn(`Could not parse fragment ${e.sn} ${d} duration reliably (${u})`),l||!1;let h=s?0:OT(a,e,c.startPTS,c.endPTS,c.startDTS,c.endDTS);return this.hls.trigger(b.LEVEL_PTS_UPDATED,{details:a,level:r,drift:h,type:d,frag:e,start:c.startPTS,end:c.endPTS}),!0}return l},!1))r.fragmentError=0;else if(((n=this.transmuxer)==null?void 0:n.error)===null){let l=new Error(`Found no media in fragment ${e.sn} of level ${e.level} resetting transmuxer to fallback to playlist timing`);if(r.fragmentError===0&&(r.fragmentError++,e.gap=!0,this.fragmentTracker.removeFragment(e),this.fragmentTracker.fragBuffered(e,!0)),this.warn(l.message),this.hls.trigger(b.ERROR,{type:he.MEDIA_ERROR,details:H.FRAG_PARSING_ERROR,fatal:!1,error:l,frag:e,reason:`Found no media in msn ${e.sn} of level "${r.url}"`}),!this.hls)return;this.resetTransmuxer()}this.state=V.PARSED,this.hls.trigger(b.FRAG_PARSED,{frag:e,part:t})}resetTransmuxer(){this.transmuxer&&(this.transmuxer.destroy(),this.transmuxer=null)}recoverWorkerError(e){if(e.event==="demuxerWorker"){var t,r,s;this.fragmentTracker.removeAllFragments(),this.resetTransmuxer(),this.resetStartWhenNotLoaded((t=(r=this.levelLastLoaded)!=null?r:(s=this.fragCurrent)==null?void 0:s.level)!=null?t:0),this.resetLoadingState()}}set state(e){let t=this._state;t!==e&&(this._state=e,this.log(`${t}->${e}`))}get state(){return this._state}};function HT(){return self.SourceBuffer||self.WebKitSourceBuffer}function Fk(){let i=Au();if(!i)return!1;let e=HT(),t=i&&typeof i.isTypeSupported=="function"&&i.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"'),r=!e||e.prototype&&typeof e.prototype.appendBuffer=="function"&&typeof e.prototype.remove=="function";return!!t&&!!r}function Bk(){var i;let e=HT();return typeof(e==null||(i=e.prototype)==null?void 0:i.changeType)=="function"}function $k(){return typeof __HLS_WORKER_BUNDLE__=="function"}function Hk(){let i=new self.Blob([`var exports={};var module={exports:exports};function define(f){f()};define.amd=true;(${__HLS_WORKER_BUNDLE__.toString()})(true);`],{type:"text/javascript"}),e=self.URL.createObjectURL(i);return{worker:new self.Worker(e),objectURL:e}}function Gk(i){let e=new self.URL(i,self.location.href).href;return{worker:new self.Worker(e),scriptURL:e}}function gr(i="",e=9e4){return{type:i,id:-1,pid:-1,inputTimeScale:e,sequenceNumber:-1,samples:[],dropped:0}}var lu=class{constructor(){this._audioTrack=void 0,this._id3Track=void 0,this.frameIndex=0,this.cachedData=null,this.basePTS=null,this.initPTS=null,this.lastPTS=null}resetInitSegment(e,t,r,s){this._id3Track={type:"id3",id:3,pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0}}resetTimeStamp(e){this.initPTS=e,this.resetContiguity()}resetContiguity(){this.basePTS=null,this.lastPTS=null,this.frameIndex=0}canParse(e,t){return!1}appendFrame(e,t,r){}demux(e,t){this.cachedData&&(e=Hs(this.cachedData,e),this.cachedData=null);let r=iu(e,0),s=r?r.length:0,n,a=this._audioTrack,o=this._id3Track,l=r?NI(r):void 0,d=e.length;for((this.basePTS===null||this.frameIndex===0&&oe(l))&&(this.basePTS=Wk(l,t,this.initPTS),this.lastPTS=this.basePTS),this.lastPTS===null&&(this.lastPTS=this.basePTS),r&&r.length>0&&o.samples.push({pts:this.lastPTS,dts:this.lastPTS,data:r,type:Ki.audioId3,duration:Number.POSITIVE_INFINITY});s<d;){if(this.canParse(e,s)){let c=this.appendFrame(a,e,s);c?(this.frameIndex++,this.lastPTS=c.sample.pts,s+=c.length,n=s):s=d}else OI(e,s)?(r=iu(e,s),o.samples.push({pts:this.lastPTS,dts:this.lastPTS,data:r,type:Ki.audioId3,duration:Number.POSITIVE_INFINITY}),s+=r.length,n=s):s++;if(s===d&&n!==d){let c=$s(e,n);this.cachedData?this.cachedData=Hs(this.cachedData,c):this.cachedData=c}}return{audioTrack:a,videoTrack:gr(),id3Track:o,textTrack:gr()}}demuxSampleAes(e,t,r){return Promise.reject(new Error(`[${this}] This demuxer does not support Sample-AES decryption`))}flush(e){let t=this.cachedData;return t&&(this.cachedData=null,this.demux(t,0)),{audioTrack:this._audioTrack,videoTrack:gr(),id3Track:this._id3Track,textTrack:gr()}}destroy(){}},Wk=(i,e,t)=>{if(oe(i))return i*90;let r=t?t.baseTime*9e4/t.timescale:0;return e*9e4+r};function Kk(i,e,t,r){let s,n,a,o,l=navigator.userAgent.toLowerCase(),d=r,c=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350];s=((e[t+2]&192)>>>6)+1;let u=(e[t+2]&60)>>>2;if(u>c.length-1){i.trigger(b.ERROR,{type:he.MEDIA_ERROR,details:H.FRAG_PARSING_ERROR,fatal:!0,reason:`invalid ADTS sampling index:${u}`});return}return a=(e[t+2]&1)<<2,a|=(e[t+3]&192)>>>6,M.log(`manifest codec:${r}, ADTS type:${s}, samplingIndex:${u}`),/firefox/i.test(l)?u>=6?(s=5,o=new Array(4),n=u-3):(s=2,o=new Array(2),n=u):l.indexOf("android")!==-1?(s=2,o=new Array(2),n=u):(s=5,o=new Array(4),r&&(r.indexOf("mp4a.40.29")!==-1||r.indexOf("mp4a.40.5")!==-1)||!r&&u>=6?n=u-3:((r&&r.indexOf("mp4a.40.2")!==-1&&(u>=6&&a===1||/vivaldi/i.test(l))||!r&&a===1)&&(s=2,o=new Array(2)),n=u)),o[0]=s<<3,o[0]|=(u&14)>>1,o[1]|=(u&1)<<7,o[1]|=a<<3,s===5&&(o[1]|=(n&14)>>1,o[2]=(n&1)<<7,o[2]|=8,o[3]=0),{config:o,samplerate:c[u],channelCount:a,codec:"mp4a.40."+s,manifestCodec:d}}function GT(i,e){return i[e]===255&&(i[e+1]&246)===240}function WT(i,e){return i[e+1]&1?7:9}function zg(i,e){return(i[e+3]&3)<<11|i[e+4]<<3|(i[e+5]&224)>>>5}function Vk(i,e){return e+5<i.length}function du(i,e){return e+1<i.length&&GT(i,e)}function qk(i,e){return Vk(i,e)&&GT(i,e)&&zg(i,e)<=i.length-e}function Yk(i,e){if(du(i,e)){let t=WT(i,e);if(e+t>=i.length)return!1;let r=zg(i,e);if(r<=t)return!1;let s=e+r;return s===i.length||du(i,s)}return!1}function KT(i,e,t,r,s){if(!i.samplerate){let n=Kk(e,t,r,s);if(!n)return;i.config=n.config,i.samplerate=n.samplerate,i.channelCount=n.channelCount,i.codec=n.codec,i.manifestCodec=n.manifestCodec,M.log(`parsed codec:${i.codec}, rate:${n.samplerate}, channels:${n.channelCount}`)}}function VT(i){return 1024*9e4/i}function jk(i,e){let t=WT(i,e);if(e+t<=i.length){let r=zg(i,e)-t;if(r>0)return{headerLength:t,frameLength:r}}}function qT(i,e,t,r,s){let n=VT(i.samplerate),a=r+s*n,o=jk(e,t),l;if(o){let{frameLength:u,headerLength:h}=o,f=h+u,g=Math.max(0,t+f-e.length);g?(l=new Uint8Array(f-h),l.set(e.subarray(t+h,e.length),0)):l=e.subarray(t+h,t+f);let E={unit:l,pts:a};return g||i.samples.push(E),{sample:E,length:f,missing:g}}let d=e.length-t;return l=new Uint8Array(d),l.set(e.subarray(t,e.length),0),{sample:{unit:l,pts:a},length:d,missing:-1}}var dg=class extends lu{constructor(e,t){super(),this.observer=void 0,this.config=void 0,this.observer=e,this.config=t}resetInitSegment(e,t,r,s){super.resetInitSegment(e,t,r,s),this._audioTrack={container:"audio/adts",type:"audio",id:2,pid:-1,sequenceNumber:0,segmentCodec:"aac",samples:[],manifestCodec:t,duration:s,inputTimeScale:9e4,dropped:0}}static probe(e){if(!e)return!1;let r=(iu(e,0)||[]).length;for(let s=e.length;r<s;r++)if(Yk(e,r))return M.log("ADTS sync word found !"),!0;return!1}canParse(e,t){return qk(e,t)}appendFrame(e,t,r){KT(e,this.observer,t,r,e.manifestCodec);let s=qT(e,t,r,this.basePTS,this.frameIndex);if(s&&s.missing===0)return s}},zk=/\/emsg[-/]ID3/i,cg=class{constructor(e,t){this.remainderData=null,this.timeOffset=0,this.config=void 0,this.videoTrack=void 0,this.audioTrack=void 0,this.id3Track=void 0,this.txtTrack=void 0,this.config=t}resetTimeStamp(){}resetInitSegment(e,t,r,s){let n=this.videoTrack=gr("video",1),a=this.audioTrack=gr("audio",1),o=this.txtTrack=gr("text",1);if(this.id3Track=gr("id3",1),this.timeOffset=0,!(e!=null&&e.byteLength))return;let l=LT(e);if(l.video){let{id:d,timescale:c,codec:u}=l.video;n.id=d,n.timescale=o.timescale=c,n.codec=u}if(l.audio){let{id:d,timescale:c,codec:u}=l.audio;a.id=d,a.timescale=c,a.codec=u}o.id=xT.text,n.sampleDuration=0,n.duration=a.duration=s}resetContiguity(){this.remainderData=null}static probe(e){return e=e.length>16384?e.subarray(0,16384):e,Ue(e,["moof"]).length>0}demux(e,t){this.timeOffset=t;let r=e,s=this.videoTrack,n=this.txtTrack;if(this.config.progressive){this.remainderData&&(r=Hs(this.remainderData,e));let o=QI(r);this.remainderData=o.remainder,s.samples=o.valid||new Uint8Array}else s.samples=r;let a=this.extractID3Track(s,t);return n.samples=Oy(t,s),{videoTrack:s,audioTrack:this.audioTrack,id3Track:a,textTrack:this.txtTrack}}flush(){let e=this.timeOffset,t=this.videoTrack,r=this.txtTrack;t.samples=this.remainderData||new Uint8Array,this.remainderData=null;let s=this.extractID3Track(t,this.timeOffset);return r.samples=Oy(e,t),{videoTrack:t,audioTrack:gr(),id3Track:s,textTrack:gr()}}extractID3Track(e,t){let r=this.id3Track;if(e.samples.length){let s=Ue(e.samples,["emsg"]);s&&s.forEach(n=>{let a=ek(n);if(zk.test(a.schemeIdUri)){let o=oe(a.presentationTime)?a.presentationTime/a.timeScale:t+a.presentationTimeDelta/a.timeScale,l=a.eventDuration===4294967295?Number.POSITIVE_INFINITY:a.eventDuration/a.timeScale;l<=.001&&(l=Number.POSITIVE_INFINITY);let d=a.payload;r.samples.push({data:d,len:d.byteLength,dts:o,pts:o,type:Ki.emsg,duration:l})}})}return r}demuxSampleAes(e,t,r){return Promise.reject(new Error("The MP4 demuxer does not support SAMPLE-AES decryption"))}destroy(){}},jc=null,Xk=[32,64,96,128,160,192,224,256,288,320,352,384,416,448,32,48,56,64,80,96,112,128,160,192,224,256,320,384,32,40,48,56,64,80,96,112,128,160,192,224,256,320,32,48,56,64,80,96,112,128,144,160,176,192,224,256,8,16,24,32,40,48,56,64,80,96,112,128,144,160],Qk=[44100,48e3,32e3,22050,24e3,16e3,11025,12e3,8e3],Zk=[[0,72,144,12],[0,0,0,0],[0,72,144,12],[0,144,144,12]],Jk=[0,1,1,4];function YT(i,e,t,r,s){if(t+24>e.length)return;let n=jT(e,t);if(n&&t+n.frameLength<=e.length){let a=n.samplesPerFrame*9e4/n.sampleRate,o=r+s*a,l={unit:e.subarray(t,t+n.frameLength),pts:o,dts:o};return i.config=[],i.channelCount=n.channelCount,i.samplerate=n.sampleRate,i.samples.push(l),{sample:l,length:n.frameLength,missing:0}}}function jT(i,e){let t=i[e+1]>>3&3,r=i[e+1]>>1&3,s=i[e+2]>>4&15,n=i[e+2]>>2&3;if(t!==1&&s!==0&&s!==15&&n!==3){let a=i[e+2]>>1&1,o=i[e+3]>>6,l=t===3?3-r:r===3?3:4,d=Xk[l*14+s-1]*1e3,u=Qk[(t===3?0:t===2?1:2)*3+n],h=o===3?1:2,f=Zk[t][r],g=Jk[r],E=f*8*g,y=Math.floor(f*d/u+a)*g;if(jc===null){let L=(navigator.userAgent||"").match(/Chrome\/(\d+)/i);jc=L?parseInt(L[1]):0}return!!jc&&jc<=87&&r===2&&d>=224e3&&o===0&&(i[e+3]=i[e+3]|128),{sampleRate:u,channelCount:h,frameLength:y,samplesPerFrame:E}}}function Xg(i,e){return i[e]===255&&(i[e+1]&224)===224&&(i[e+1]&6)!==0}function zT(i,e){return e+1<i.length&&Xg(i,e)}function eL(i,e){return Xg(i,e)&&4<=i.length-e}function tL(i,e){if(e+1<i.length&&Xg(i,e)){let r=jT(i,e),s=4;r!=null&&r.frameLength&&(s=r.frameLength);let n=e+s;return n===i.length||zT(i,n)}return!1}var cu=class{constructor(e){this.data=void 0,this.bytesAvailable=void 0,this.word=void 0,this.bitsAvailable=void 0,this.data=e,this.bytesAvailable=e.byteLength,this.word=0,this.bitsAvailable=0}loadWord(){let e=this.data,t=this.bytesAvailable,r=e.byteLength-t,s=new Uint8Array(4),n=Math.min(4,t);if(n===0)throw new Error("no bytes available");s.set(e.subarray(r,r+n)),this.word=new DataView(s.buffer).getUint32(0),this.bitsAvailable=n*8,this.bytesAvailable-=n}skipBits(e){let t;e=Math.min(e,this.bytesAvailable*8+this.bitsAvailable),this.bitsAvailable>e?(this.word<<=e,this.bitsAvailable-=e):(e-=this.bitsAvailable,t=e>>3,e-=t<<3,this.bytesAvailable-=t,this.loadWord(),this.word<<=e,this.bitsAvailable-=e)}readBits(e){let t=Math.min(this.bitsAvailable,e),r=this.word>>>32-t;if(e>32&&M.error("Cannot read more than 32 bits at a time"),this.bitsAvailable-=t,this.bitsAvailable>0)this.word<<=t;else if(this.bytesAvailable>0)this.loadWord();else throw new Error("no bits available");return t=e-t,t>0&&this.bitsAvailable?r<<t|this.readBits(t):r}skipLZ(){let e;for(e=0;e<this.bitsAvailable;++e)if(this.word&2147483648>>>e)return this.word<<=e,this.bitsAvailable-=e,e;return this.loadWord(),e+this.skipLZ()}skipUEG(){this.skipBits(1+this.skipLZ())}skipEG(){this.skipBits(1+this.skipLZ())}readUEG(){let e=this.skipLZ();return this.readBits(e+1)-1}readEG(){let e=this.readUEG();return 1&e?1+e>>>1:-1*(e>>>1)}readBoolean(){return this.readBits(1)===1}readUByte(){return this.readBits(8)}readUShort(){return this.readBits(16)}readUInt(){return this.readBits(32)}skipScalingList(e){let t=8,r=8,s;for(let n=0;n<e;n++)r!==0&&(s=this.readEG(),r=(t+s+256)%256),t=r===0?t:r}readSPS(){let e=0,t=0,r=0,s=0,n,a,o,l=this.readUByte.bind(this),d=this.readBits.bind(this),c=this.readUEG.bind(this),u=this.readBoolean.bind(this),h=this.skipBits.bind(this),f=this.skipEG.bind(this),g=this.skipUEG.bind(this),E=this.skipScalingList.bind(this);l();let y=l();if(d(5),h(3),l(),g(),y===100||y===110||y===122||y===244||y===44||y===83||y===86||y===118||y===128){let B=c();if(B===3&&h(1),g(),g(),h(1),u())for(a=B!==3?8:12,o=0;o<a;o++)u()&&(o<6?E(16):E(64))}g();let S=c();if(S===0)c();else if(S===1)for(h(1),f(),f(),n=c(),o=0;o<n;o++)f();g(),h(1);let w=c(),L=c(),F=d(1);F===0&&h(1),h(1),u()&&(e=c(),t=c(),r=c(),s=c());let R=[1,1];if(u()&&u())switch(l()){case 1:R=[1,1];break;case 2:R=[12,11];break;case 3:R=[10,11];break;case 4:R=[16,11];break;case 5:R=[40,33];break;case 6:R=[24,11];break;case 7:R=[20,11];break;case 8:R=[32,11];break;case 9:R=[80,33];break;case 10:R=[18,11];break;case 11:R=[15,11];break;case 12:R=[64,33];break;case 13:R=[160,99];break;case 14:R=[4,3];break;case 15:R=[3,2];break;case 16:R=[2,1];break;case 255:{R=[l()<<8|l(),l()<<8|l()];break}}return{width:Math.ceil((w+1)*16-e*2-t*2),height:(2-F)*(L+1)*16-(F?2:4)*(r+s),pixelRatio:R}}readSliceType(){return this.readUByte(),this.readUEG(),this.readUEG()}},ug=class{constructor(e,t,r){this.keyData=void 0,this.decrypter=void 0,this.keyData=r,this.decrypter=new Ro(t,{removePKCS7Padding:!1})}decryptBuffer(e){return this.decrypter.decrypt(e,this.keyData.key.buffer,this.keyData.iv.buffer)}decryptAacSample(e,t,r){let s=e[t].unit;if(s.length<=16)return;let n=s.subarray(16,s.length-s.length%16),a=n.buffer.slice(n.byteOffset,n.byteOffset+n.length);this.decryptBuffer(a).then(o=>{let l=new Uint8Array(o);s.set(l,16),this.decrypter.isSync()||this.decryptAacSamples(e,t+1,r)})}decryptAacSamples(e,t,r){for(;;t++){if(t>=e.length){r();return}if(!(e[t].unit.length<32)&&(this.decryptAacSample(e,t,r),!this.decrypter.isSync()))return}}getAvcEncryptedData(e){let t=Math.floor((e.length-48)/160)*16+16,r=new Int8Array(t),s=0;for(let n=32;n<e.length-16;n+=160,s+=16)r.set(e.subarray(n,n+16),s);return r}getAvcDecryptedUnit(e,t){let r=new Uint8Array(t),s=0;for(let n=32;n<e.length-16;n+=160,s+=16)e.set(r.subarray(s,s+16),n);return e}decryptAvcSample(e,t,r,s,n){let a=CT(n.data),o=this.getAvcEncryptedData(a);this.decryptBuffer(o.buffer).then(l=>{n.data=this.getAvcDecryptedUnit(a,l),this.decrypter.isSync()||this.decryptAvcSamples(e,t,r+1,s)})}decryptAvcSamples(e,t,r,s){if(e instanceof Uint8Array)throw new Error("Cannot decrypt samples of type Uint8Array");for(;;t++,r=0){if(t>=e.length){s();return}let n=e[t].units;for(;!(r>=n.length);r++){let a=n[r];if(!(a.data.length<=48||a.type!==1&&a.type!==5)&&(this.decryptAvcSample(e,t,r,s,a),!this.decrypter.isSync()))return}}}},qt=188,hg=class i{constructor(e,t,r){this.observer=void 0,this.config=void 0,this.typeSupported=void 0,this.sampleAes=null,this.pmtParsed=!1,this.audioCodec=void 0,this.videoCodec=void 0,this._duration=0,this._pmtId=-1,this._avcTrack=void 0,this._audioTrack=void 0,this._id3Track=void 0,this._txtTrack=void 0,this.aacOverFlow=null,this.avcSample=null,this.remainderData=null,this.observer=e,this.config=t,this.typeSupported=r}static probe(e){let t=i.syncOffset(e);return t>0&&M.warn(`MPEG2-TS detected but first sync word found @ offset ${t}`),t!==-1}static syncOffset(e){let t=e.length,r=Math.min(qt*5,e.length-qt)+1,s=0;for(;s<r;){let n=!1,a=-1,o=0;for(let l=s;l<t;l+=qt)if(e[l]===71){if(o++,a===-1&&(a=l,a!==0&&(r=Math.min(a+qt*99,e.length-qt)+1)),n||(n=fg(e,l)===0),n&&o>1&&(a===0&&o>2||l+qt>r))return a}else{if(o)return-1;break}s++}return-1}static createTrack(e,t){return{container:e==="video"||e==="audio"?"video/mp2t":void 0,type:e,id:xT[e],pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0,duration:e==="audio"?t:void 0}}resetInitSegment(e,t,r,s){this.pmtParsed=!1,this._pmtId=-1,this._avcTrack=i.createTrack("video"),this._audioTrack=i.createTrack("audio",s),this._id3Track=i.createTrack("id3"),this._txtTrack=i.createTrack("text"),this._audioTrack.segmentCodec="aac",this.aacOverFlow=null,this.avcSample=null,this.remainderData=null,this.audioCodec=t,this.videoCodec=r,this._duration=s}resetTimeStamp(){}resetContiguity(){let{_audioTrack:e,_avcTrack:t,_id3Track:r}=this;e&&(e.pesData=null),t&&(t.pesData=null),r&&(r.pesData=null),this.aacOverFlow=null,this.avcSample=null,this.remainderData=null}demux(e,t,r=!1,s=!1){r||(this.sampleAes=null);let n,a=this._avcTrack,o=this._audioTrack,l=this._id3Track,d=this._txtTrack,c=a.pid,u=a.pesData,h=o.pid,f=l.pid,g=o.pesData,E=l.pesData,y=null,S=this.pmtParsed,w=this._pmtId,L=e.length;if(this.remainderData&&(e=Hs(this.remainderData,e),L=e.length,this.remainderData=null),L<qt&&!s)return this.remainderData=e,{audioTrack:o,videoTrack:a,id3Track:l,textTrack:d};let F=Math.max(0,i.syncOffset(e));L-=(L-F)%qt,L<e.byteLength&&!s&&(this.remainderData=new Uint8Array(e.buffer,L,e.buffer.byteLength-L));let R=0;for(let P=F;P<L;P+=qt)if(e[P]===71){let $=!!(e[P+1]&64),K=fg(e,P),N=(e[P+3]&48)>>4,z;if(N>1){if(z=P+5+e[P+4],z===P+qt)continue}else z=P+4;switch(K){case c:$&&(u&&(n=Qn(u))&&this.parseAVCPES(a,d,n,!1),u={data:[],size:0}),u&&(u.data.push(e.subarray(z,P+qt)),u.size+=P+qt-z);break;case h:if($){if(g&&(n=Qn(g)))switch(o.segmentCodec){case"aac":this.parseAACPES(o,n);break;case"mp3":this.parseMPEGPES(o,n);break}g={data:[],size:0}}g&&(g.data.push(e.subarray(z,P+qt)),g.size+=P+qt-z);break;case f:$&&(E&&(n=Qn(E))&&this.parseID3PES(l,n),E={data:[],size:0}),E&&(E.data.push(e.subarray(z,P+qt)),E.size+=P+qt-z);break;case 0:$&&(z+=e[z]+1),w=this._pmtId=iL(e,z);break;case w:{$&&(z+=e[z]+1);let Y=rL(e,z,this.typeSupported,r);c=Y.avc,c>0&&(a.pid=c),h=Y.audio,h>0&&(o.pid=h,o.segmentCodec=Y.segmentCodec),f=Y.id3,f>0&&(l.pid=f),y!==null&&!S&&(M.warn(`MPEG-TS PMT found at ${P} after unknown PID '${y}'. Backtracking to sync byte @${F} to parse all TS packets.`),y=null,P=F-188),S=this.pmtParsed=!0;break}case 17:case 8191:break;default:y=K;break}}else R++;if(R>0){let P=new Error(`Found ${R} TS packet/s that do not start with 0x47`);this.observer.emit(b.ERROR,b.ERROR,{type:he.MEDIA_ERROR,details:H.FRAG_PARSING_ERROR,fatal:!1,error:P,reason:P.message})}a.pesData=u,o.pesData=g,l.pesData=E;let B={audioTrack:o,videoTrack:a,id3Track:l,textTrack:d};return s&&this.extractRemainingSamples(B),B}flush(){let{remainderData:e}=this;this.remainderData=null;let t;return e?t=this.demux(e,-1,!1,!0):t={videoTrack:this._avcTrack,audioTrack:this._audioTrack,id3Track:this._id3Track,textTrack:this._txtTrack},this.extractRemainingSamples(t),this.sampleAes?this.decrypt(t,this.sampleAes):t}extractRemainingSamples(e){let{audioTrack:t,videoTrack:r,id3Track:s,textTrack:n}=e,a=r.pesData,o=t.pesData,l=s.pesData,d;if(a&&(d=Qn(a))?(this.parseAVCPES(r,n,d,!0),r.pesData=null):r.pesData=a,o&&(d=Qn(o))){switch(t.segmentCodec){case"aac":this.parseAACPES(t,d);break;case"mp3":this.parseMPEGPES(t,d);break}t.pesData=null}else o!=null&&o.size&&M.log("last AAC PES packet truncated,might overlap between fragments"),t.pesData=o;l&&(d=Qn(l))?(this.parseID3PES(s,d),s.pesData=null):s.pesData=l}demuxSampleAes(e,t,r){let s=this.demux(e,r,!0,!this.config.progressive),n=this.sampleAes=new ug(this.observer,this.config,t);return this.decrypt(s,n)}decrypt(e,t){return new Promise(r=>{let{audioTrack:s,videoTrack:n}=e;s.samples&&s.segmentCodec==="aac"?t.decryptAacSamples(s.samples,0,()=>{n.samples?t.decryptAvcSamples(n.samples,0,0,()=>{r(e)}):r(e)}):n.samples&&t.decryptAvcSamples(n.samples,0,0,()=>{r(e)})})}destroy(){this._duration=0}parseAVCPES(e,t,r,s){let n=this.parseAVCNALu(e,r.data),a=this.avcSample,o,l=!1;r.data=null,a&&n.length&&!e.audFound&&(Eo(a,e),a=this.avcSample=zc(!1,r.pts,r.dts,"")),n.forEach(d=>{var c;switch(d.type){case 1:{let h=!1;o=!0;let f=d.data;if(l&&f.length>4){let g=new cu(f).readSliceType();(g===2||g===4||g===7||g===9)&&(h=!0)}if(h){var u;(u=a)!=null&&u.frame&&!a.key&&(Eo(a,e),a=this.avcSample=null)}a||(a=this.avcSample=zc(!0,r.pts,r.dts,"")),a.frame=!0,a.key=h;break}case 5:o=!0,(c=a)!=null&&c.frame&&!a.key&&(Eo(a,e),a=this.avcSample=null),a||(a=this.avcSample=zc(!0,r.pts,r.dts,"")),a.key=!0,a.frame=!0;break;case 6:{o=!0,wT(d.data,1,r.pts,t.samples);break}case 7:if(o=!0,l=!0,!e.sps){let h=d.data,g=new cu(h).readSPS();e.width=g.width,e.height=g.height,e.pixelRatio=g.pixelRatio,e.sps=[h],e.duration=this._duration;let E=h.subarray(1,4),y="avc1.";for(let S=0;S<3;S++){let w=E[S].toString(16);w.length<2&&(w="0"+w),y+=w}e.codec=y}break;case 8:o=!0,e.pps||(e.pps=[d.data]);break;case 9:o=!1,e.audFound=!0,a&&Eo(a,e),a=this.avcSample=zc(!1,r.pts,r.dts,"");break;case 12:o=!0;break;default:o=!1,a&&(a.debug+="unknown NAL "+d.type+" ");break}a&&o&&a.units.push(d)}),s&&a&&(Eo(a,e),this.avcSample=null)}getLastNalUnit(e){var t;let r=this.avcSample,s;if((!r||r.units.length===0)&&(r=e[e.length-1]),(t=r)!=null&&t.units){let n=r.units;s=n[n.length-1]}return s}parseAVCNALu(e,t){let r=t.byteLength,s=e.naluState||0,n=s,a=[],o=0,l,d,c,u=-1,h=0;for(s===-1&&(u=0,h=t[0]&31,s=0,o=1);o<r;){if(l=t[o++],!s){s=l?0:1;continue}if(s===1){s=l?0:2;continue}if(!l)s=3;else if(l===1){if(u>=0){let f={data:t.subarray(u,o-s-1),type:h};a.push(f)}else{let f=this.getLastNalUnit(e.samples);if(f&&(n&&o<=4-n&&f.state&&(f.data=f.data.subarray(0,f.data.byteLength-n)),d=o-s-1,d>0)){let g=new Uint8Array(f.data.byteLength+d);g.set(f.data,0),g.set(t.subarray(0,d),f.data.byteLength),f.data=g,f.state=0}}o<r?(c=t[o]&31,u=o,h=c,s=0):s=-1}else s=0}if(u>=0&&s>=0){let f={data:t.subarray(u,r),type:h,state:s};a.push(f)}if(a.length===0){let f=this.getLastNalUnit(e.samples);if(f){let g=new Uint8Array(f.data.byteLength+t.byteLength);g.set(f.data,0),g.set(t,f.data.byteLength),f.data=g}}return e.naluState=s,a}parseAACPES(e,t){let r=0,s=this.aacOverFlow,n=t.data;if(s){this.aacOverFlow=null;let u=s.missing,h=s.sample.unit.byteLength;if(u===-1){let f=new Uint8Array(h+n.byteLength);f.set(s.sample.unit,0),f.set(n,h),n=f}else{let f=h-u;s.sample.unit.set(n.subarray(0,u),f),e.samples.push(s.sample),r=s.missing}}let a,o;for(a=r,o=n.length;a<o-1&&!du(n,a);a++);if(a!==r){let u,h=a<o-1;h?u=`AAC PES did not start with ADTS header,offset:${a}`:u="No ADTS header found in AAC PES";let f=new Error(u);if(M.warn(`parsing error: ${u}`),this.observer.emit(b.ERROR,b.ERROR,{type:he.MEDIA_ERROR,details:H.FRAG_PARSING_ERROR,fatal:!1,levelRetry:h,error:f,reason:u}),!h)return}KT(e,this.observer,n,a,this.audioCodec);let l;if(t.pts!==void 0)l=t.pts;else if(s){let u=VT(e.samplerate);l=s.sample.pts+u}else{M.warn("[tsdemuxer]: AAC PES unknown PTS");return}let d=0,c;for(;a<o;)if(c=qT(e,n,a,l,d),a+=c.length,c.missing){this.aacOverFlow=c;break}else for(d++;a<o-1&&!du(n,a);a++);}parseMPEGPES(e,t){let r=t.data,s=r.length,n=0,a=0,o=t.pts;if(o===void 0){M.warn("[tsdemuxer]: MPEG PES unknown PTS");return}for(;a<s;)if(zT(r,a)){let l=YT(e,r,a,o,n);if(l)a+=l.length,n++;else break}else a++}parseID3PES(e,t){if(t.pts===void 0){M.warn("[tsdemuxer]: ID3 PES unknown PTS");return}let r=xt({},t,{type:this._avcTrack?Ki.emsg:Ki.audioId3,duration:Number.POSITIVE_INFINITY});e.samples.push(r)}};function zc(i,e,t,r){return{key:i,frame:!1,pts:e,dts:t,units:[],debug:r,length:0}}function fg(i,e){return((i[e+1]&31)<<8)+i[e+2]}function iL(i,e){return(i[e+10]&31)<<8|i[e+11]}function rL(i,e,t,r){let s={audio:-1,avc:-1,id3:-1,segmentCodec:"aac"},n=(i[e+1]&15)<<8|i[e+2],a=e+3+n-4,o=(i[e+10]&15)<<8|i[e+11];for(e+=12+o;e<a;){let l=fg(i,e);switch(i[e]){case 207:if(!r){M.log("ADTS AAC with AES-128-CBC frame encryption found in unencrypted stream");break}case 15:s.audio===-1&&(s.audio=l);break;case 21:s.id3===-1&&(s.id3=l);break;case 219:if(!r){M.log("H.264 with AES-128-CBC slice encryption found in unencrypted stream");break}case 27:s.avc===-1&&(s.avc=l);break;case 3:case 4:t.mpeg!==!0&&t.mp3!==!0?M.log("MPEG audio found, not supported in this browser"):s.audio===-1&&(s.audio=l,s.segmentCodec="mp3");break;case 36:M.warn("Unsupported HEVC stream type found");break}e+=((i[e+3]&15)<<8|i[e+4])+5}return s}function Qn(i){let e=0,t,r,s,n,a,o=i.data;if(!i||i.size===0)return null;for(;o[0].length<19&&o.length>1;){let d=new Uint8Array(o[0].length+o[1].length);d.set(o[0]),d.set(o[1],o[0].length),o[0]=d,o.splice(1,1)}if(t=o[0],(t[0]<<16)+(t[1]<<8)+t[2]===1){if(r=(t[4]<<8)+t[5],r&&r>i.size-6)return null;let d=t[7];d&192&&(n=(t[9]&14)*536870912+(t[10]&255)*4194304+(t[11]&254)*16384+(t[12]&255)*128+(t[13]&254)/2,d&64?(a=(t[14]&14)*536870912+(t[15]&255)*4194304+(t[16]&254)*16384+(t[17]&255)*128+(t[18]&254)/2,n-a>60*9e4&&(M.warn(`${Math.round((n-a)/9e4)}s delta between PTS and DTS, align them`),n=a)):a=n),s=t[8];let c=s+9;if(i.size<=c)return null;i.size-=c;let u=new Uint8Array(i.size);for(let h=0,f=o.length;h<f;h++){t=o[h];let g=t.byteLength;if(c)if(c>g){c-=g;continue}else t=t.subarray(c),g-=c,c=0;u.set(t,e),e+=g}return r&&(r-=s+3),{data:u,pts:n,dts:a,len:r}}return null}function Eo(i,e){if(i.units.length&&i.frame){if(i.pts===void 0){let t=e.samples,r=t.length;if(r){let s=t[r-1];i.pts=s.pts,i.dts=s.dts}else{e.dropped++;return}}e.samples.push(i)}i.debug.length&&M.log(i.pts+"/"+i.dts+":"+i.debug)}var mg=class extends lu{resetInitSegment(e,t,r,s){super.resetInitSegment(e,t,r,s),this._audioTrack={container:"audio/mpeg",type:"audio",id:2,pid:-1,sequenceNumber:0,segmentCodec:"mp3",samples:[],manifestCodec:t,duration:s,inputTimeScale:9e4,dropped:0}}static probe(e){if(!e)return!1;let r=(iu(e,0)||[]).length;for(let s=e.length;r<s;r++)if(tL(e,r))return M.log("MPEG Audio sync word found !"),!0;return!1}canParse(e,t){return eL(e,t)}appendFrame(e,t,r){if(this.basePTS!==null)return YT(e,t,r,this.basePTS,this.frameIndex)}},uu=class{static getSilentFrame(e,t){switch(e){case"mp4a.40.2":if(t===1)return new Uint8Array([0,200,0,128,35,128]);if(t===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(t===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(t===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(t===5)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(t===6)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224]);break;default:if(t===1)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(t===2)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(t===3)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);break}}},Jr=Math.pow(2,32)-1,St=class i{static init(){i.types={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],".mp3":[],mvex:[],mvhd:[],pasp:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[]};let e;for(e in i.types)i.types.hasOwnProperty(e)&&(i.types[e]=[e.charCodeAt(0),e.charCodeAt(1),e.charCodeAt(2),e.charCodeAt(3)]);let t=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),r=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]);i.HDLR_TYPES={video:t,audio:r};let s=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),n=new Uint8Array([0,0,0,0,0,0,0,0]);i.STTS=i.STSC=i.STCO=n,i.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),i.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0]),i.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),i.STSD=new Uint8Array([0,0,0,0,0,0,0,1]);let a=new Uint8Array([105,115,111,109]),o=new Uint8Array([97,118,99,49]),l=new Uint8Array([0,0,0,1]);i.FTYP=i.box(i.types.ftyp,a,l,a,o),i.DINF=i.box(i.types.dinf,i.box(i.types.dref,s))}static box(e,...t){let r=8,s=t.length,n=s;for(;s--;)r+=t[s].byteLength;let a=new Uint8Array(r);for(a[0]=r>>24&255,a[1]=r>>16&255,a[2]=r>>8&255,a[3]=r&255,a.set(e,4),s=0,r=8;s<n;s++)a.set(t[s],r),r+=t[s].byteLength;return a}static hdlr(e){return i.box(i.types.hdlr,i.HDLR_TYPES[e])}static mdat(e){return i.box(i.types.mdat,e)}static mdhd(e,t){t*=e;let r=Math.floor(t/(Jr+1)),s=Math.floor(t%(Jr+1));return i.box(i.types.mdhd,new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,e>>24&255,e>>16&255,e>>8&255,e&255,r>>24,r>>16&255,r>>8&255,r&255,s>>24,s>>16&255,s>>8&255,s&255,85,196,0,0]))}static mdia(e){return i.box(i.types.mdia,i.mdhd(e.timescale,e.duration),i.hdlr(e.type),i.minf(e))}static mfhd(e){return i.box(i.types.mfhd,new Uint8Array([0,0,0,0,e>>24,e>>16&255,e>>8&255,e&255]))}static minf(e){return e.type==="audio"?i.box(i.types.minf,i.box(i.types.smhd,i.SMHD),i.DINF,i.stbl(e)):i.box(i.types.minf,i.box(i.types.vmhd,i.VMHD),i.DINF,i.stbl(e))}static moof(e,t,r){return i.box(i.types.moof,i.mfhd(e),i.traf(r,t))}static moov(e){let t=e.length,r=[];for(;t--;)r[t]=i.trak(e[t]);return i.box.apply(null,[i.types.moov,i.mvhd(e[0].timescale,e[0].duration)].concat(r).concat(i.mvex(e)))}static mvex(e){let t=e.length,r=[];for(;t--;)r[t]=i.trex(e[t]);return i.box.apply(null,[i.types.mvex,...r])}static mvhd(e,t){t*=e;let r=Math.floor(t/(Jr+1)),s=Math.floor(t%(Jr+1)),n=new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,e>>24&255,e>>16&255,e>>8&255,e&255,r>>24,r>>16&255,r>>8&255,r&255,s>>24,s>>16&255,s>>8&255,s&255,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]);return i.box(i.types.mvhd,n)}static sdtp(e){let t=e.samples||[],r=new Uint8Array(4+t.length),s,n;for(s=0;s<t.length;s++)n=t[s].flags,r[s+4]=n.dependsOn<<4|n.isDependedOn<<2|n.hasRedundancy;return i.box(i.types.sdtp,r)}static stbl(e){return i.box(i.types.stbl,i.stsd(e),i.box(i.types.stts,i.STTS),i.box(i.types.stsc,i.STSC),i.box(i.types.stsz,i.STSZ),i.box(i.types.stco,i.STCO))}static avc1(e){let t=[],r=[],s,n,a;for(s=0;s<e.sps.length;s++)n=e.sps[s],a=n.byteLength,t.push(a>>>8&255),t.push(a&255),t=t.concat(Array.prototype.slice.call(n));for(s=0;s<e.pps.length;s++)n=e.pps[s],a=n.byteLength,r.push(a>>>8&255),r.push(a&255),r=r.concat(Array.prototype.slice.call(n));let o=i.box(i.types.avcC,new Uint8Array([1,t[3],t[4],t[5],255,224|e.sps.length].concat(t).concat([e.pps.length]).concat(r))),l=e.width,d=e.height,c=e.pixelRatio[0],u=e.pixelRatio[1];return i.box(i.types.avc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,l>>8&255,l&255,d>>8&255,d&255,0,72,0,0,0,72,0,0,0,0,0,0,0,1,18,100,97,105,108,121,109,111,116,105,111,110,47,104,108,115,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,17]),o,i.box(i.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),i.box(i.types.pasp,new Uint8Array([c>>24,c>>16&255,c>>8&255,c&255,u>>24,u>>16&255,u>>8&255,u&255])))}static esds(e){let t=e.config.length;return new Uint8Array([0,0,0,0,3,23+t,0,1,0,4,15+t,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([t]).concat(e.config).concat([6,1,2]))}static mp4a(e){let t=e.samplerate;return i.box(i.types.mp4a,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,e.channelCount,0,16,0,0,0,0,t>>8&255,t&255,0,0]),i.box(i.types.esds,i.esds(e)))}static mp3(e){let t=e.samplerate;return i.box(i.types[".mp3"],new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,e.channelCount,0,16,0,0,0,0,t>>8&255,t&255,0,0]))}static stsd(e){return e.type==="audio"?e.segmentCodec==="mp3"&&e.codec==="mp3"?i.box(i.types.stsd,i.STSD,i.mp3(e)):i.box(i.types.stsd,i.STSD,i.mp4a(e)):i.box(i.types.stsd,i.STSD,i.avc1(e))}static tkhd(e){let t=e.id,r=e.duration*e.timescale,s=e.width,n=e.height,a=Math.floor(r/(Jr+1)),o=Math.floor(r%(Jr+1));return i.box(i.types.tkhd,new Uint8Array([1,0,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,t>>24&255,t>>16&255,t>>8&255,t&255,0,0,0,0,a>>24,a>>16&255,a>>8&255,a&255,o>>24,o>>16&255,o>>8&255,o&255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,s>>8&255,s&255,0,0,n>>8&255,n&255,0,0]))}static traf(e,t){let r=i.sdtp(e),s=e.id,n=Math.floor(t/(Jr+1)),a=Math.floor(t%(Jr+1));return i.box(i.types.traf,i.box(i.types.tfhd,new Uint8Array([0,0,0,0,s>>24,s>>16&255,s>>8&255,s&255])),i.box(i.types.tfdt,new Uint8Array([1,0,0,0,n>>24,n>>16&255,n>>8&255,n&255,a>>24,a>>16&255,a>>8&255,a&255])),i.trun(e,r.length+16+20+8+16+8+8),r)}static trak(e){return e.duration=e.duration||4294967295,i.box(i.types.trak,i.tkhd(e),i.mdia(e))}static trex(e){let t=e.id;return i.box(i.types.trex,new Uint8Array([0,0,0,0,t>>24,t>>16&255,t>>8&255,t&255,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]))}static trun(e,t){let r=e.samples||[],s=r.length,n=12+16*s,a=new Uint8Array(n),o,l,d,c,u,h;for(t+=8+n,a.set([e.type==="video"?1:0,0,15,1,s>>>24&255,s>>>16&255,s>>>8&255,s&255,t>>>24&255,t>>>16&255,t>>>8&255,t&255],0),o=0;o<s;o++)l=r[o],d=l.duration,c=l.size,u=l.flags,h=l.cts,a.set([d>>>24&255,d>>>16&255,d>>>8&255,d&255,c>>>24&255,c>>>16&255,c>>>8&255,c&255,u.isLeading<<2|u.dependsOn,u.isDependedOn<<6|u.hasRedundancy<<4|u.paddingValue<<1|u.isNonSync,u.degradPrio&61440,u.degradPrio&15,h>>>24&255,h>>>16&255,h>>>8&255,h&255],12+16*o);return i.box(i.types.trun,a)}static initSegment(e){i.types||i.init();let t=i.moov(e),r=new Uint8Array(i.FTYP.byteLength+t.byteLength);return r.set(i.FTYP),r.set(t,i.FTYP.byteLength),r}};St.types=void 0;St.HDLR_TYPES=void 0;St.STTS=void 0;St.STSC=void 0;St.STCO=void 0;St.STSZ=void 0;St.VMHD=void 0;St.SMHD=void 0;St.STSD=void 0;St.FTYP=void 0;St.DINF=void 0;var XT=9e4;function Qg(i,e,t=1,r=!1){let s=i*e*t;return r?Math.round(s):s}function sL(i,e,t=1,r=!1){return Qg(i,e,1/t,r)}function bo(i,e=!1){return Qg(i,1e3,1/XT,e)}function nL(i,e=1){return Qg(i,XT,1/e)}var aL=10*1e3,sT=1024,oL=1152,Xc=null,wp=null,Ao=class{constructor(e,t,r,s=""){if(this.observer=void 0,this.config=void 0,this.typeSupported=void 0,this.ISGenerated=!1,this._initPTS=null,this._initDTS=null,this.nextAvcDts=null,this.nextAudioPts=null,this.videoSampleDuration=null,this.isAudioContiguous=!1,this.isVideoContiguous=!1,this.observer=e,this.config=t,this.typeSupported=r,this.ISGenerated=!1,Xc===null){let a=(navigator.userAgent||"").match(/Chrome\/(\d+)/i);Xc=a?parseInt(a[1]):0}if(wp===null){let n=navigator.userAgent.match(/Safari\/(\d+)/i);wp=n?parseInt(n[1]):0}}destroy(){}resetTimeStamp(e){M.log("[mp4-remuxer]: initPTS & initDTS reset"),this._initPTS=this._initDTS=e}resetNextTimestamp(){M.log("[mp4-remuxer]: reset next timestamp"),this.isVideoContiguous=!1,this.isAudioContiguous=!1}resetInitSegment(){M.log("[mp4-remuxer]: ISGenerated flag reset"),this.ISGenerated=!1}getVideoStartPts(e){let t=!1,r=e.reduce((s,n)=>{let a=n.pts-s;return a<-4294967296?(t=!0,xi(s,n.pts)):a>0?s:n.pts},e[0].pts);return t&&M.debug("PTS rollover detected"),r}remux(e,t,r,s,n,a,o,l){let d,c,u,h,f,g,E=n,y=n,S=e.pid>-1,w=t.pid>-1,L=t.samples.length,F=e.samples.length>0,R=o&&L>0||L>1;if((!S||F)&&(!w||R)||this.ISGenerated||o){this.ISGenerated||(u=this.generateIS(e,t,n,a));let P=this.isVideoContiguous,$=-1,K;if(R&&($=lL(t.samples),!P&&this.config.forceKeyFrameOnDiscontinuity))if(g=!0,$>0){M.warn(`[mp4-remuxer]: Dropped ${$} out of ${L} video samples due to a missing keyframe`);let N=this.getVideoStartPts(t.samples);t.samples=t.samples.slice($),t.dropped+=$,y+=(t.samples[0].pts-N)/t.inputTimeScale,K=y}else $===-1&&(M.warn(`[mp4-remuxer]: No keyframe found out of ${L} video samples`),g=!1);if(this.ISGenerated){if(F&&R){let N=this.getVideoStartPts(t.samples),Y=(xi(e.samples[0].pts,N)-N)/t.inputTimeScale;E+=Math.max(0,Y),y+=Math.max(0,-Y)}if(F){if(e.samplerate||(M.warn("[mp4-remuxer]: regenerate InitSegment as audio detected"),u=this.generateIS(e,t,n,a)),c=this.remuxAudio(e,E,this.isAudioContiguous,a,w||R||l===fe.AUDIO?y:void 0),R){let N=c?c.endPTS-c.startPTS:0;t.inputTimeScale||(M.warn("[mp4-remuxer]: regenerate InitSegment as video detected"),u=this.generateIS(e,t,n,a)),d=this.remuxVideo(t,y,P,N)}}else R&&(d=this.remuxVideo(t,y,P,0));d&&(d.firstKeyFrame=$,d.independent=$!==-1,d.firstKeyFramePTS=K)}}return this.ISGenerated&&this._initPTS&&this._initDTS&&(r.samples.length&&(f=QT(r,n,this._initPTS,this._initDTS)),s.samples.length&&(h=ZT(s,n,this._initPTS))),{audio:c,video:d,initSegment:u,independent:g,text:h,id3:f}}generateIS(e,t,r,s){let n=e.samples,a=t.samples,o=this.typeSupported,l={},d=this._initPTS,c=!d||s,u="audio/mp4",h,f,g;if(c&&(h=f=1/0),e.config&&n.length){switch(e.timescale=e.samplerate,e.segmentCodec){case"mp3":o.mpeg?(u="audio/mpeg",e.codec=""):o.mp3&&(e.codec="mp3");break}l.audio={id:"audio",container:u,codec:e.codec,initSegment:e.segmentCodec==="mp3"&&o.mpeg?new Uint8Array(0):St.initSegment([e]),metadata:{channelCount:e.channelCount}},c&&(g=e.inputTimeScale,!d||g!==d.timescale?h=f=n[0].pts-Math.round(g*r):c=!1)}if(t.sps&&t.pps&&a.length&&(t.timescale=t.inputTimeScale,l.video={id:"main",container:"video/mp4",codec:t.codec,initSegment:St.initSegment([t]),metadata:{width:t.width,height:t.height}},c))if(g=t.inputTimeScale,!d||g!==d.timescale){let E=this.getVideoStartPts(a),y=Math.round(g*r);f=Math.min(f,xi(a[0].dts,E)-y),h=Math.min(h,E-y)}else c=!1;if(Object.keys(l).length)return this.ISGenerated=!0,c?(this._initPTS={baseTime:h,timescale:g},this._initDTS={baseTime:f,timescale:g}):h=g=void 0,{tracks:l,initPTS:h,timescale:g}}remuxVideo(e,t,r,s){let n=e.inputTimeScale,a=e.samples,o=[],l=a.length,d=this._initPTS,c=this.nextAvcDts,u=8,h=this.videoSampleDuration,f,g,E=Number.POSITIVE_INFINITY,y=Number.NEGATIVE_INFINITY,S=!1;if(!r||c===null){let Z=t*n,te=a[0].pts-xi(a[0].dts,a[0].pts);c=Z-te}let w=d.baseTime*n/d.timescale;for(let Z=0;Z<l;Z++){let te=a[Z];te.pts=xi(te.pts-w,c),te.dts=xi(te.dts-w,c),te.dts<a[Z>0?Z-1:Z].dts&&(S=!0)}S&&a.sort(function(Z,te){let ie=Z.dts-te.dts,_e=Z.pts-te.pts;return ie||_e}),f=a[0].dts,g=a[a.length-1].dts;let L=g-f,F=L?Math.round(L/(l-1)):h||e.inputTimeScale/30;if(r){let Z=f-c,te=Z>F,ie=Z<-1;if((te||ie)&&(te?M.warn(`AVC: ${bo(Z,!0)} ms (${Z}dts) hole between fragments detected, filling it`):M.warn(`AVC: ${bo(-Z,!0)} ms (${Z}dts) overlapping between fragments detected`),!ie||c>=a[0].pts)){f=c;let _e=a[0].pts-Z;a[0].dts=f,a[0].pts=_e,M.log(`Video: First PTS/DTS adjusted: ${bo(_e,!0)}/${bo(f,!0)}, delta: ${bo(Z,!0)} ms`)}}f=Math.max(0,f);let R=0,B=0;for(let Z=0;Z<l;Z++){let te=a[Z],ie=te.units,_e=ie.length,Ae=0;for(let Je=0;Je<_e;Je++)Ae+=ie[Je].data.length;B+=Ae,R+=_e,te.length=Ae,te.dts=Math.max(te.dts,f),E=Math.min(te.pts,E),y=Math.max(te.pts,y)}g=a[l-1].dts;let P=B+4*R+8,$;try{$=new Uint8Array(P)}catch(Z){this.observer.emit(b.ERROR,b.ERROR,{type:he.MUX_ERROR,details:H.REMUX_ALLOC_ERROR,fatal:!1,error:Z,bytes:P,reason:`fail allocating video mdat ${P}`});return}let K=new DataView($.buffer);K.setUint32(0,P),$.set(St.types.mdat,4);let N=!1,z=Number.POSITIVE_INFINITY,Y=Number.POSITIVE_INFINITY,ge=Number.NEGATIVE_INFINITY,me=Number.NEGATIVE_INFINITY;for(let Z=0;Z<l;Z++){let te=a[Z],ie=te.units,_e=0;for(let Pt=0,Ot=ie.length;Pt<Ot;Pt++){let kt=ie[Pt],mi=kt.data,Nr=kt.data.byteLength;K.setUint32(u,Nr),u+=4,$.set(mi,u),u+=Nr,_e+=4+Nr}let Ae;if(Z<l-1)h=a[Z+1].dts-te.dts,Ae=a[Z+1].pts-te.pts;else{let Pt=this.config,Ot=Z>0?te.dts-a[Z-1].dts:F;if(Ae=Z>0?te.pts-a[Z-1].pts:F,Pt.stretchShortVideoTrack&&this.nextAudioPts!==null){let kt=Math.floor(Pt.maxBufferHole*n),mi=(s?E+s*n:this.nextAudioPts)-te.pts;mi>kt?(h=mi-Ot,h<0?h=Ot:N=!0,M.log(`[mp4-remuxer]: It is approximately ${mi/90} ms to the next segment; using duration ${h/90} ms for the last video frame.`)):h=Ot}else h=Ot}let Je=Math.round(te.pts-te.dts);z=Math.min(z,h),ge=Math.max(ge,h),Y=Math.min(Y,Ae),me=Math.max(me,Ae),o.push(new hu(te.key,h,_e,Je))}if(o.length){if(Xc){if(Xc<70){let Z=o[0].flags;Z.dependsOn=2,Z.isNonSync=0}}else if(wp&&me-Y<ge-z&&F/ge<.025&&o[0].cts===0){M.warn("Found irregular gaps in sample duration. Using PTS instead of DTS to determine MP4 sample duration.");let Z=f;for(let te=0,ie=o.length;te<ie;te++){let _e=Z+o[te].duration,Ae=Z+o[te].cts;if(te<ie-1){let Je=_e+o[te+1].cts;o[te].duration=Je-Ae}else o[te].duration=te?o[te-1].duration:F;o[te].cts=0,Z=_e}}}h=N||!h?F:h,this.nextAvcDts=c=g+h,this.videoSampleDuration=h,this.isVideoContiguous=!0;let Ee=St.moof(e.sequenceNumber++,f,xt({},e,{samples:o})),De="video",Le={data1:Ee,data2:$,startPTS:E/n,endPTS:(y+h)/n,startDTS:f/n,endDTS:c/n,type:De,hasAudio:!1,hasVideo:!0,nb:o.length,dropped:e.dropped};return e.samples=[],e.dropped=0,Le}remuxAudio(e,t,r,s,n){let a=e.inputTimeScale,o=e.samplerate?e.samplerate:a,l=a/o,d=e.segmentCodec==="aac"?sT:oL,c=d*l,u=this._initPTS,h=e.segmentCodec==="mp3"&&this.typeSupported.mpeg,f=[],g=n!==void 0,E=e.samples,y=h?0:8,S=this.nextAudioPts||-1,w=t*a,L=u.baseTime*a/u.timescale;if(this.isAudioContiguous=r=r||E.length&&S>0&&(s&&Math.abs(w-S)<9e3||Math.abs(xi(E[0].pts-L,w)-S)<20*c),E.forEach(function(De){De.pts=xi(De.pts-L,w)}),!r||S<0){if(E=E.filter(De=>De.pts>=0),!E.length)return;n===0?S=0:s&&!g?S=Math.max(0,w):S=E[0].pts}if(e.segmentCodec==="aac"){let De=this.config.maxAudioFramesDrift;for(let Le=0,Z=S;Le<E.length;Le++){let te=E[Le],ie=te.pts,_e=ie-Z,Ae=Math.abs(1e3*_e/a);if(_e<=-De*c&&g)Le===0&&(M.warn(`Audio frame @ ${(ie/a).toFixed(3)}s overlaps nextAudioPts by ${Math.round(1e3*_e/a)} ms.`),this.nextAudioPts=S=Z=ie);else if(_e>=De*c&&Ae<aL&&g){let Je=Math.round(_e/c);Z=ie-Je*c,Z<0&&(Je--,Z+=c),Le===0&&(this.nextAudioPts=S=Z),M.warn(`[mp4-remuxer]: Injecting ${Je} audio frame @ ${(Z/a).toFixed(3)}s due to ${Math.round(1e3*_e/a)} ms gap.`);for(let Pt=0;Pt<Je;Pt++){let Ot=Math.max(Z,0),kt=uu.getSilentFrame(e.manifestCodec||e.codec,e.channelCount);kt||(M.log("[mp4-remuxer]: Unable to get silent frame for given audio codec; duplicating last frame instead."),kt=te.unit.subarray()),E.splice(Le,0,{unit:kt,pts:Ot}),Z+=c,Le++}}te.pts=Z,Z+=c}}let F=null,R=null,B,P=0,$=E.length;for(;$--;)P+=E[$].unit.byteLength;for(let De=0,Le=E.length;De<Le;De++){let Z=E[De],te=Z.unit,ie=Z.pts;if(R!==null){let Ae=f[De-1];Ae.duration=Math.round((ie-R)/l)}else if(r&&e.segmentCodec==="aac"&&(ie=S),F=ie,P>0){P+=y;try{B=new Uint8Array(P)}catch(Ae){this.observer.emit(b.ERROR,b.ERROR,{type:he.MUX_ERROR,details:H.REMUX_ALLOC_ERROR,fatal:!1,error:Ae,bytes:P,reason:`fail allocating audio mdat ${P}`});return}h||(new DataView(B.buffer).setUint32(0,P),B.set(St.types.mdat,4))}else return;B.set(te,y);let _e=te.byteLength;y+=_e,f.push(new hu(!0,d,_e,0)),R=ie}let K=f.length;if(!K)return;let N=f[f.length-1];this.nextAudioPts=S=R+l*N.duration;let z=h?new Uint8Array(0):St.moof(e.sequenceNumber++,F/l,xt({},e,{samples:f}));e.samples=[];let Y=F/a,ge=S/a,Ee={data1:z,data2:B,startPTS:Y,endPTS:ge,startDTS:Y,endDTS:ge,type:"audio",hasAudio:!0,hasVideo:!1,nb:K};return this.isAudioContiguous=!0,Ee}remuxEmptyAudio(e,t,r,s){let n=e.inputTimeScale,a=e.samplerate?e.samplerate:n,o=n/a,l=this.nextAudioPts,d=this._initDTS,c=d.baseTime*9e4/d.timescale,u=(l!==null?l:s.startDTS*n)+c,h=s.endDTS*n+c,f=o*sT,g=Math.ceil((h-u)/f),E=uu.getSilentFrame(e.manifestCodec||e.codec,e.channelCount);if(M.warn("[mp4-remuxer]: remux empty Audio"),!E){M.trace("[mp4-remuxer]: Unable to remuxEmptyAudio since we were unable to get a silent frame for given audio codec");return}let y=[];for(let S=0;S<g;S++){let w=u+S*f;y.push({unit:E,pts:w,dts:w})}return e.samples=y,this.remuxAudio(e,t,r,!1)}};function xi(i,e){let t;if(e===null)return i;for(e<i?t=-8589934592:t=8589934592;Math.abs(i-e)>4294967296;)i+=t;return i}function lL(i){for(let e=0;e<i.length;e++)if(i[e].key)return e;return-1}function QT(i,e,t,r){let s=i.samples.length;if(!s)return;let n=i.inputTimeScale;for(let o=0;o<s;o++){let l=i.samples[o];l.pts=xi(l.pts-t.baseTime*n/t.timescale,e*n)/n,l.dts=xi(l.dts-r.baseTime*n/r.timescale,e*n)/n}let a=i.samples;return i.samples=[],{samples:a}}function ZT(i,e,t){let r=i.samples.length;if(!r)return;let s=i.inputTimeScale;for(let a=0;a<r;a++){let o=i.samples[a];o.pts=xi(o.pts-t.baseTime*s/t.timescale,e*s)/s}i.samples.sort((a,o)=>a.pts-o.pts);let n=i.samples;return i.samples=[],{samples:n}}var hu=class{constructor(e,t,r,s){this.size=void 0,this.duration=void 0,this.cts=void 0,this.flags=void 0,this.duration=t,this.size=r,this.cts=s,this.flags=new pg(e)}},pg=class{constructor(e){this.isLeading=0,this.isDependedOn=0,this.hasRedundancy=0,this.degradPrio=0,this.dependsOn=1,this.isNonSync=1,this.dependsOn=e?2:1,this.isNonSync=e?0:1}},gg=class{constructor(){this.emitInitSegment=!1,this.audioCodec=void 0,this.videoCodec=void 0,this.initData=void 0,this.initPTS=null,this.initTracks=void 0,this.lastEndTime=null}destroy(){}resetTimeStamp(e){this.initPTS=e,this.lastEndTime=null}resetNextTimestamp(){this.lastEndTime=null}resetInitSegment(e,t,r,s){this.audioCodec=t,this.videoCodec=r,this.generateInitSegment(qI(e,s)),this.emitInitSegment=!0}generateInitSegment(e){let{audioCodec:t,videoCodec:r}=this;if(!(e!=null&&e.byteLength)){this.initTracks=void 0,this.initData=void 0;return}let s=this.initData=LT(e);t||(t=nT(s.audio,Qe.AUDIO)),r||(r=nT(s.video,Qe.VIDEO));let n={};s.audio&&s.video?n.audiovideo={container:"video/mp4",codec:t+","+r,initSegment:e,id:"main"}:s.audio?n.audio={container:"audio/mp4",codec:t,initSegment:e,id:"audio"}:s.video?n.video={container:"video/mp4",codec:r,initSegment:e,id:"main"}:M.warn("[passthrough-remuxer.ts]: initSegment does not contain moov or trak boxes."),this.initTracks=n}remux(e,t,r,s,n,a){var o,l;let{initPTS:d,lastEndTime:c}=this,u={audio:void 0,video:void 0,text:s,id3:r,initSegment:void 0};oe(c)||(c=this.lastEndTime=n||0);let h=t.samples;if(!(h!=null&&h.length))return u;let f={initPTS:void 0,timescale:1},g=this.initData;if((o=g)!=null&&o.length||(this.generateInitSegment(h),g=this.initData),!((l=g)!=null&&l.length))return M.warn("[passthrough-remuxer.ts]: Failed to generate initSegment."),u;this.emitInitSegment&&(f.tracks=this.initTracks,this.emitInitSegment=!1);let E=jI(h,g),y=YI(g,h),S=y===null?n:y;(dL(d,S,n,E)||f.timescale!==d.timescale&&a)&&(f.initPTS=S-n,d&&d.timescale===1&&M.warn(`Adjusting initPTS by ${f.initPTS-d.baseTime}`),this.initPTS=d={baseTime:f.initPTS,timescale:1});let w=e?S-d.baseTime/d.timescale:c,L=w+E;XI(g,h,d.baseTime/d.timescale),E>0?this.lastEndTime=L:(M.warn("Duration parsed from mp4 should be greater than zero"),this.resetNextTimestamp());let F=!!g.audio,R=!!g.video,B="";F&&(B+="audio"),R&&(B+="video");let P={data1:h,startPTS:w,startDTS:w,endPTS:L,endDTS:L,type:B,hasAudio:F,hasVideo:R,nb:1,dropped:0};return u.audio=P.type==="audio"?P:void 0,u.video=P.type!=="audio"?P:void 0,u.initSegment=f,u.id3=QT(r,n,d,d),s.samples.length&&(u.text=ZT(s,n,d)),u}};function dL(i,e,t,r){if(i===null)return!0;let s=Math.max(r,1),n=e-i.baseTime/i.timescale;return Math.abs(n-t)>s}function nT(i,e){let t=i==null?void 0:i.codec;return t&&t.length>4?t:t==="hvc1"||t==="hev1"?"hvc1.1.6.L120.90":t==="av01"?"av01.0.04M.08":t==="avc1"||e===Qe.VIDEO?"avc1.42e01e":"mp4a.40.5"}var Rr;try{Rr=self.performance.now.bind(self.performance)}catch{M.debug("Unable to use Performance API on this environment"),Rr=typeof self!="undefined"&&self.Date.now}var Cp=[{demux:cg,remux:gg},{demux:hg,remux:Ao},{demux:dg,remux:Ao},{demux:mg,remux:Ao}],fu=class{constructor(e,t,r,s,n){this.async=!1,this.observer=void 0,this.typeSupported=void 0,this.config=void 0,this.vendor=void 0,this.id=void 0,this.demuxer=void 0,this.remuxer=void 0,this.decrypter=void 0,this.probe=void 0,this.decryptionPromise=null,this.transmuxConfig=void 0,this.currentTransmuxState=void 0,this.observer=e,this.typeSupported=t,this.config=r,this.vendor=s,this.id=n}configure(e){this.transmuxConfig=e,this.decrypter&&this.decrypter.reset()}push(e,t,r,s){let n=r.transmuxing;n.executeStart=Rr();let a=new Uint8Array(e),{currentTransmuxState:o,transmuxConfig:l}=this;s&&(this.currentTransmuxState=s);let{contiguous:d,discontinuity:c,trackSwitch:u,accurateTimeOffset:h,timeOffset:f,initSegmentChange:g}=s||o,{audioCodec:E,videoCodec:y,defaultInitPts:S,duration:w,initSegmentData:L}=l,F=cL(a,t);if(F&&F.method==="AES-128"){let $=this.getDecrypter();if($.isSync()){let K=$.softwareDecrypt(a,F.key.buffer,F.iv.buffer);if(r.part>-1&&(K=$.flush()),!K)return n.executeEnd=Rr(),Dp(r);a=new Uint8Array(K)}else return this.decryptionPromise=$.webCryptoDecrypt(a,F.key.buffer,F.iv.buffer).then(K=>{let N=this.push(K,null,r);return this.decryptionPromise=null,N}),this.decryptionPromise}let R=this.needsProbing(c,u);if(R){let $=this.configureTransmuxer(a);if($)return M.warn(`[transmuxer] ${$.message}`),this.observer.emit(b.ERROR,b.ERROR,{type:he.MEDIA_ERROR,details:H.FRAG_PARSING_ERROR,fatal:!1,error:$,reason:$.message}),n.executeEnd=Rr(),Dp(r)}(c||u||g||R)&&this.resetInitSegment(L,E,y,w,t),(c||g||R)&&this.resetInitialTimestamp(S),d||this.resetContiguity();let B=this.transmux(a,F,f,h,r),P=this.currentTransmuxState;return P.contiguous=!0,P.discontinuity=!1,P.trackSwitch=!1,n.executeEnd=Rr(),B}flush(e){let t=e.transmuxing;t.executeStart=Rr();let{decrypter:r,currentTransmuxState:s,decryptionPromise:n}=this;if(n)return n.then(()=>this.flush(e));let a=[],{timeOffset:o}=s;if(r){let u=r.flush();u&&a.push(this.push(u,null,e))}let{demuxer:l,remuxer:d}=this;if(!l||!d)return t.executeEnd=Rr(),[Dp(e)];let c=l.flush(o);return Jc(c)?c.then(u=>(this.flushRemux(a,u,e),a)):(this.flushRemux(a,c,e),a)}flushRemux(e,t,r){let{audioTrack:s,videoTrack:n,id3Track:a,textTrack:o}=t,{accurateTimeOffset:l,timeOffset:d}=this.currentTransmuxState;M.log(`[transmuxer.ts]: Flushed fragment ${r.sn}${r.part>-1?" p: "+r.part:""} of level ${r.level}`);let c=this.remuxer.remux(s,n,a,o,d,l,!0,this.id);e.push({remuxResult:c,chunkMeta:r}),r.transmuxing.executeEnd=Rr()}resetInitialTimestamp(e){let{demuxer:t,remuxer:r}=this;!t||!r||(t.resetTimeStamp(e),r.resetTimeStamp(e))}resetContiguity(){let{demuxer:e,remuxer:t}=this;!e||!t||(e.resetContiguity(),t.resetNextTimestamp())}resetInitSegment(e,t,r,s,n){let{demuxer:a,remuxer:o}=this;!a||!o||(a.resetInitSegment(e,t,r,s),o.resetInitSegment(e,t,r,n))}destroy(){this.demuxer&&(this.demuxer.destroy(),this.demuxer=void 0),this.remuxer&&(this.remuxer.destroy(),this.remuxer=void 0)}transmux(e,t,r,s,n){let a;return t&&t.method==="SAMPLE-AES"?a=this.transmuxSampleAes(e,t,r,s,n):a=this.transmuxUnencrypted(e,r,s,n),a}transmuxUnencrypted(e,t,r,s){let{audioTrack:n,videoTrack:a,id3Track:o,textTrack:l}=this.demuxer.demux(e,t,!1,!this.config.progressive);return{remuxResult:this.remuxer.remux(n,a,o,l,t,r,!1,this.id),chunkMeta:s}}transmuxSampleAes(e,t,r,s,n){return this.demuxer.demuxSampleAes(e,t,r).then(a=>({remuxResult:this.remuxer.remux(a.audioTrack,a.videoTrack,a.id3Track,a.textTrack,r,s,!1,this.id),chunkMeta:n}))}configureTransmuxer(e){let{config:t,observer:r,typeSupported:s,vendor:n}=this,a;for(let u=0,h=Cp.length;u<h;u++)if(Cp[u].demux.probe(e)){a=Cp[u];break}if(!a)return new Error("Failed to find demuxer by probing fragment data");let o=this.demuxer,l=this.remuxer,d=a.remux,c=a.demux;(!l||!(l instanceof d))&&(this.remuxer=new d(r,t,s,n)),(!o||!(o instanceof c))&&(this.demuxer=new c(r,t,s),this.probe=c.probe)}needsProbing(e,t){return!this.demuxer||!this.remuxer||e||t}getDecrypter(){let e=this.decrypter;return e||(e=this.decrypter=new Ro(this.config)),e}};function cL(i,e){let t=null;return i.byteLength>0&&e!=null&&e.key!=null&&e.iv!==null&&e.method!=null&&(t=e),t}var Dp=i=>({remuxResult:{},chunkMeta:i});function Jc(i){return"then"in i&&i.then instanceof Function}var vg=class{constructor(e,t,r,s,n){this.audioCodec=void 0,this.videoCodec=void 0,this.initSegmentData=void 0,this.duration=void 0,this.defaultInitPts=void 0,this.audioCodec=e,this.videoCodec=t,this.initSegmentData=r,this.duration=s,this.defaultInitPts=n||null}},Eg=class{constructor(e,t,r,s,n,a){this.discontinuity=void 0,this.contiguous=void 0,this.accurateTimeOffset=void 0,this.trackSwitch=void 0,this.timeOffset=void 0,this.initSegmentChange=void 0,this.discontinuity=e,this.contiguous=t,this.accurateTimeOffset=r,this.trackSwitch=s,this.timeOffset=n,this.initSegmentChange=a}},JT={exports:{}};(function(i){var e=Object.prototype.hasOwnProperty,t="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(t=!1));function s(l,d,c){this.fn=l,this.context=d,this.once=c||!1}function n(l,d,c,u,h){if(typeof c!="function")throw new TypeError("The listener must be a function");var f=new s(c,u||l,h),g=t?t+d:d;return l._events[g]?l._events[g].fn?l._events[g]=[l._events[g],f]:l._events[g].push(f):(l._events[g]=f,l._eventsCount++),l}function a(l,d){--l._eventsCount===0?l._events=new r:delete l._events[d]}function o(){this._events=new r,this._eventsCount=0}o.prototype.eventNames=function(){var d=[],c,u;if(this._eventsCount===0)return d;for(u in c=this._events)e.call(c,u)&&d.push(t?u.slice(1):u);return Object.getOwnPropertySymbols?d.concat(Object.getOwnPropertySymbols(c)):d},o.prototype.listeners=function(d){var c=t?t+d:d,u=this._events[c];if(!u)return[];if(u.fn)return[u.fn];for(var h=0,f=u.length,g=new Array(f);h<f;h++)g[h]=u[h].fn;return g},o.prototype.listenerCount=function(d){var c=t?t+d:d,u=this._events[c];return u?u.fn?1:u.length:0},o.prototype.emit=function(d,c,u,h,f,g){var E=t?t+d:d;if(!this._events[E])return!1;var y=this._events[E],S=arguments.length,w,L;if(y.fn){switch(y.once&&this.removeListener(d,y.fn,void 0,!0),S){case 1:return y.fn.call(y.context),!0;case 2:return y.fn.call(y.context,c),!0;case 3:return y.fn.call(y.context,c,u),!0;case 4:return y.fn.call(y.context,c,u,h),!0;case 5:return y.fn.call(y.context,c,u,h,f),!0;case 6:return y.fn.call(y.context,c,u,h,f,g),!0}for(L=1,w=new Array(S-1);L<S;L++)w[L-1]=arguments[L];y.fn.apply(y.context,w)}else{var F=y.length,R;for(L=0;L<F;L++)switch(y[L].once&&this.removeListener(d,y[L].fn,void 0,!0),S){case 1:y[L].fn.call(y[L].context);break;case 2:y[L].fn.call(y[L].context,c);break;case 3:y[L].fn.call(y[L].context,c,u);break;case 4:y[L].fn.call(y[L].context,c,u,h);break;default:if(!w)for(R=1,w=new Array(S-1);R<S;R++)w[R-1]=arguments[R];y[L].fn.apply(y[L].context,w)}}return!0},o.prototype.on=function(d,c,u){return n(this,d,c,u,!1)},o.prototype.once=function(d,c,u){return n(this,d,c,u,!0)},o.prototype.removeListener=function(d,c,u,h){var f=t?t+d:d;if(!this._events[f])return this;if(!c)return a(this,f),this;var g=this._events[f];if(g.fn)g.fn===c&&(!h||g.once)&&(!u||g.context===u)&&a(this,f);else{for(var E=0,y=[],S=g.length;E<S;E++)(g[E].fn!==c||h&&!g[E].once||u&&g[E].context!==u)&&y.push(g[E]);y.length?this._events[f]=y.length===1?y[0]:y:a(this,f)}return this},o.prototype.removeAllListeners=function(d){var c;return d?(c=t?t+d:d,this._events[c]&&a(this,c)):(this._events=new r,this._eventsCount=0),this},o.prototype.off=o.prototype.removeListener,o.prototype.addListener=o.prototype.on,o.prefixed=t,o.EventEmitter=o,i.exports=o})(JT);var uL=JT.exports,Zg=gI(uL),Mp=Au()||{isTypeSupported:()=>!1},mu=class{constructor(e,t,r,s){this.error=null,this.hls=void 0,this.id=void 0,this.observer=void 0,this.frag=null,this.part=null,this.useWorker=void 0,this.workerContext=null,this.onwmsg=void 0,this.transmuxer=null,this.onTransmuxComplete=void 0,this.onFlush=void 0;let n=e.config;this.hls=e,this.id=t,this.useWorker=!!n.enableWorker,this.onTransmuxComplete=r,this.onFlush=s;let a=(d,c)=>{c=c||{},c.frag=this.frag,c.id=this.id,d===b.ERROR&&(this.error=c.error),this.hls.trigger(d,c)};this.observer=new Zg,this.observer.on(b.FRAG_DECRYPTED,a),this.observer.on(b.ERROR,a);let o={mp4:Mp.isTypeSupported("video/mp4"),mpeg:Mp.isTypeSupported("audio/mpeg"),mp3:Mp.isTypeSupported('audio/mp4; codecs="mp3"')},l=navigator.vendor;if(this.useWorker&&typeof Worker!="undefined"&&(n.workerPath||$k())){try{n.workerPath?(M.log(`loading Web Worker ${n.workerPath} for "${t}"`),this.workerContext=Gk(n.workerPath)):(M.log(`injecting Web Worker for "${t}"`),this.workerContext=Hk()),this.onwmsg=u=>this.onWorkerMessage(u);let{worker:c}=this.workerContext;c.addEventListener("message",this.onwmsg),c.onerror=u=>{let h=new Error(`${u.message} (${u.filename}:${u.lineno})`);n.enableWorker=!1,M.warn(`Error in "${t}" Web Worker, fallback to inline`),this.hls.trigger(b.ERROR,{type:he.OTHER_ERROR,details:H.INTERNAL_EXCEPTION,fatal:!1,event:"demuxerWorker",error:h})},c.postMessage({cmd:"init",typeSupported:o,vendor:l,id:t,config:JSON.stringify(n)})}catch(c){M.warn(`Error setting up "${t}" Web Worker, fallback to inline`,c),this.resetWorker(),this.error=null,this.transmuxer=new fu(this.observer,o,n,l,t)}return}this.transmuxer=new fu(this.observer,o,n,l,t)}resetWorker(){if(this.workerContext){let{worker:e,objectURL:t}=this.workerContext;t&&self.URL.revokeObjectURL(t),e.removeEventListener("message",this.onwmsg),e.onerror=null,e.terminate(),this.workerContext=null}}destroy(){if(this.workerContext)this.resetWorker(),this.onwmsg=void 0;else{let t=this.transmuxer;t&&(t.destroy(),this.transmuxer=null)}let e=this.observer;e&&e.removeAllListeners(),this.frag=null,this.observer=null,this.hls=null}push(e,t,r,s,n,a,o,l,d,c){var u,h;d.transmuxing.start=self.performance.now();let{transmuxer:f}=this,g=a?a.start:n.start,E=n.decryptdata,y=this.frag,S=!(y&&n.cc===y.cc),w=!(y&&d.level===y.level),L=y?d.sn-y.sn:-1,F=this.part?d.part-this.part.index:-1,R=L===0&&d.id>1&&d.id===(y==null?void 0:y.stats.chunkCount),B=!w&&(L===1||L===0&&(F===1||R&&F<=0)),P=self.performance.now();(w||L||n.stats.parsing.start===0)&&(n.stats.parsing.start=P),a&&(F||!B)&&(a.stats.parsing.start=P);let $=!(y&&((u=n.initSegment)==null?void 0:u.url)===((h=y.initSegment)==null?void 0:h.url)),K=new Eg(S,B,l,w,g,$);if(!B||S||$){M.log(`[transmuxer-interface, ${n.type}]: Starting new transmux session for sn: ${d.sn} p: ${d.part} level: ${d.level} id: ${d.id}
1582
+ `;var yp=class extends $e{static get observedAttributes(){return[...super.observedAttributes,A.MEDIA_AUDIO_TRACK_ENABLED,A.MEDIA_AUDIO_TRACK_UNAVAILABLE]}constructor(){super({slotTemplate:Ry})}get mediaAudioTrackEnabled(){return Re(this,A.MEDIA_AUDIO_TRACK_ENABLED)}set mediaAudioTrackEnabled(e){Ie(this,A.MEDIA_AUDIO_TRACK_ENABLED,e)}};k.customElements.get("media-audio-track-button")||k.customElements.define("media-audio-track-button",yp);var Gc=class extends Ai{static get observedAttributes(){return[...super.observedAttributes,A.MEDIA_AUDIO_TRACK_ENABLED,A.MEDIA_AUDIO_TRACK_UNAVAILABLE]}init(){let e=W.createElement("media-audio-track-button");e.part.add("button"),e.preventClick=!0;let t=W.createElement("media-audio-track-listbox");t.part.add("listbox"),t.setAttribute("exportparts","option, option-selected, indicator");let r=this.shadowRoot.querySelector("slot[name=button]"),s=this.shadowRoot.querySelector("slot[name=listbox]");r.textContent="",s.textContent="",r.append(e),s.append(t)}};k.customElements.get("media-audio-track-selectmenu")||k.customElements.define("media-audio-track-selectmenu",Gc);var Iu=J1(wy(),1);function gI(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}var ET={exports:{}};(function(i,e){(function(t){var r=/^(?=((?:[a-zA-Z0-9+\-.]+:)?))\1(?=((?:\/\/[^\/?#]*)?))\2(?=((?:(?:[^?#\/]*\/)*[^;?#\/]*)?))\3((?:;[^?#]*)?)(\?[^#]*)?(#[^]*)?$/,s=/^(?=([^\/?#]*))\1([^]*)$/,n=/(?:\/|^)\.(?=\/)/g,a=/(?:\/|^)\.\.\/(?!\.\.\/)[^\/]*(?=\/)/g,o={buildAbsoluteURL:function(l,d,c){if(c=c||{},l=l.trim(),d=d.trim(),!d){if(!c.alwaysNormalize)return l;var u=o.parseURL(l);if(!u)throw new Error("Error trying to parse base URL.");return u.path=o.normalizePath(u.path),o.buildURLFromParts(u)}var h=o.parseURL(d);if(!h)throw new Error("Error trying to parse relative URL.");if(h.scheme)return c.alwaysNormalize?(h.path=o.normalizePath(h.path),o.buildURLFromParts(h)):d;var f=o.parseURL(l);if(!f)throw new Error("Error trying to parse base URL.");if(!f.netLoc&&f.path&&f.path[0]!=="/"){var g=s.exec(f.path);f.netLoc=g[1],f.path=g[2]}f.netLoc&&!f.path&&(f.path="/");var E={scheme:f.scheme,netLoc:h.netLoc,path:null,params:h.params,query:h.query,fragment:h.fragment};if(!h.netLoc&&(E.netLoc=f.netLoc,h.path[0]!=="/"))if(!h.path)E.path=f.path,h.params||(E.params=f.params,h.query||(E.query=f.query));else{var y=f.path,S=y.substring(0,y.lastIndexOf("/")+1)+h.path;E.path=o.normalizePath(S)}return E.path===null&&(E.path=c.alwaysNormalize?o.normalizePath(h.path):h.path),o.buildURLFromParts(E)},parseURL:function(l){var d=r.exec(l);return d?{scheme:d[1]||"",netLoc:d[2]||"",path:d[3]||"",params:d[4]||"",query:d[5]||"",fragment:d[6]||""}:null},normalizePath:function(l){for(l=l.split("").reverse().join("").replace(n,"");l.length!==(l=l.replace(a,"")).length;);return l.split("").reverse().join("")},buildURLFromParts:function(l){return l.scheme+l.netLoc+l.path+l.params+l.query+l.fragment}};i.exports=o})()})(ET);var Kg=ET.exports;function Cy(i,e){var t=Object.keys(i);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(i);e&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(i,s).enumerable})),t.push.apply(t,r)}return t}function Zt(i){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Cy(Object(t),!0).forEach(function(r){vI(i,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(i,Object.getOwnPropertyDescriptors(t)):Cy(Object(t)).forEach(function(r){Object.defineProperty(i,r,Object.getOwnPropertyDescriptor(t,r))})}return i}function vI(i,e,t){return e=bI(e),e in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}function xt(){return xt=Object.assign?Object.assign.bind():function(i){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(i[r]=t[r])}return i},xt.apply(this,arguments)}function EI(i,e){if(typeof i!="object"||i===null)return i;var t=i[Symbol.toPrimitive];if(t!==void 0){var r=t.call(i,e||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(i)}function bI(i){var e=EI(i,"string");return typeof e=="symbol"?e:String(e)}var oe=Number.isFinite||function(i){return typeof i=="number"&&isFinite(i)},yI=Number.isSafeInteger||function(i){return typeof i=="number"&&Math.abs(i)<=TI},TI=Number.MAX_SAFE_INTEGER||9007199254740991,b=function(i){return i.MEDIA_ATTACHING="hlsMediaAttaching",i.MEDIA_ATTACHED="hlsMediaAttached",i.MEDIA_DETACHING="hlsMediaDetaching",i.MEDIA_DETACHED="hlsMediaDetached",i.BUFFER_RESET="hlsBufferReset",i.BUFFER_CODECS="hlsBufferCodecs",i.BUFFER_CREATED="hlsBufferCreated",i.BUFFER_APPENDING="hlsBufferAppending",i.BUFFER_APPENDED="hlsBufferAppended",i.BUFFER_EOS="hlsBufferEos",i.BUFFER_FLUSHING="hlsBufferFlushing",i.BUFFER_FLUSHED="hlsBufferFlushed",i.MANIFEST_LOADING="hlsManifestLoading",i.MANIFEST_LOADED="hlsManifestLoaded",i.MANIFEST_PARSED="hlsManifestParsed",i.LEVEL_SWITCHING="hlsLevelSwitching",i.LEVEL_SWITCHED="hlsLevelSwitched",i.LEVEL_LOADING="hlsLevelLoading",i.LEVEL_LOADED="hlsLevelLoaded",i.LEVEL_UPDATED="hlsLevelUpdated",i.LEVEL_PTS_UPDATED="hlsLevelPtsUpdated",i.LEVELS_UPDATED="hlsLevelsUpdated",i.AUDIO_TRACKS_UPDATED="hlsAudioTracksUpdated",i.AUDIO_TRACK_SWITCHING="hlsAudioTrackSwitching",i.AUDIO_TRACK_SWITCHED="hlsAudioTrackSwitched",i.AUDIO_TRACK_LOADING="hlsAudioTrackLoading",i.AUDIO_TRACK_LOADED="hlsAudioTrackLoaded",i.SUBTITLE_TRACKS_UPDATED="hlsSubtitleTracksUpdated",i.SUBTITLE_TRACKS_CLEARED="hlsSubtitleTracksCleared",i.SUBTITLE_TRACK_SWITCH="hlsSubtitleTrackSwitch",i.SUBTITLE_TRACK_LOADING="hlsSubtitleTrackLoading",i.SUBTITLE_TRACK_LOADED="hlsSubtitleTrackLoaded",i.SUBTITLE_FRAG_PROCESSED="hlsSubtitleFragProcessed",i.CUES_PARSED="hlsCuesParsed",i.NON_NATIVE_TEXT_TRACKS_FOUND="hlsNonNativeTextTracksFound",i.INIT_PTS_FOUND="hlsInitPtsFound",i.FRAG_LOADING="hlsFragLoading",i.FRAG_LOAD_EMERGENCY_ABORTED="hlsFragLoadEmergencyAborted",i.FRAG_LOADED="hlsFragLoaded",i.FRAG_DECRYPTED="hlsFragDecrypted",i.FRAG_PARSING_INIT_SEGMENT="hlsFragParsingInitSegment",i.FRAG_PARSING_USERDATA="hlsFragParsingUserdata",i.FRAG_PARSING_METADATA="hlsFragParsingMetadata",i.FRAG_PARSED="hlsFragParsed",i.FRAG_BUFFERED="hlsFragBuffered",i.FRAG_CHANGED="hlsFragChanged",i.FPS_DROP="hlsFpsDrop",i.FPS_DROP_LEVEL_CAPPING="hlsFpsDropLevelCapping",i.ERROR="hlsError",i.DESTROYING="hlsDestroying",i.KEY_LOADING="hlsKeyLoading",i.KEY_LOADED="hlsKeyLoaded",i.LIVE_BACK_BUFFER_REACHED="hlsLiveBackBufferReached",i.BACK_BUFFER_REACHED="hlsBackBufferReached",i}({}),he=function(i){return i.NETWORK_ERROR="networkError",i.MEDIA_ERROR="mediaError",i.KEY_SYSTEM_ERROR="keySystemError",i.MUX_ERROR="muxError",i.OTHER_ERROR="otherError",i}({}),H=function(i){return i.KEY_SYSTEM_NO_KEYS="keySystemNoKeys",i.KEY_SYSTEM_NO_ACCESS="keySystemNoAccess",i.KEY_SYSTEM_NO_SESSION="keySystemNoSession",i.KEY_SYSTEM_NO_CONFIGURED_LICENSE="keySystemNoConfiguredLicense",i.KEY_SYSTEM_LICENSE_REQUEST_FAILED="keySystemLicenseRequestFailed",i.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED="keySystemServerCertificateRequestFailed",i.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED="keySystemServerCertificateUpdateFailed",i.KEY_SYSTEM_SESSION_UPDATE_FAILED="keySystemSessionUpdateFailed",i.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED="keySystemStatusOutputRestricted",i.KEY_SYSTEM_STATUS_INTERNAL_ERROR="keySystemStatusInternalError",i.MANIFEST_LOAD_ERROR="manifestLoadError",i.MANIFEST_LOAD_TIMEOUT="manifestLoadTimeOut",i.MANIFEST_PARSING_ERROR="manifestParsingError",i.MANIFEST_INCOMPATIBLE_CODECS_ERROR="manifestIncompatibleCodecsError",i.LEVEL_EMPTY_ERROR="levelEmptyError",i.LEVEL_LOAD_ERROR="levelLoadError",i.LEVEL_LOAD_TIMEOUT="levelLoadTimeOut",i.LEVEL_PARSING_ERROR="levelParsingError",i.LEVEL_SWITCH_ERROR="levelSwitchError",i.AUDIO_TRACK_LOAD_ERROR="audioTrackLoadError",i.AUDIO_TRACK_LOAD_TIMEOUT="audioTrackLoadTimeOut",i.SUBTITLE_LOAD_ERROR="subtitleTrackLoadError",i.SUBTITLE_TRACK_LOAD_TIMEOUT="subtitleTrackLoadTimeOut",i.FRAG_LOAD_ERROR="fragLoadError",i.FRAG_LOAD_TIMEOUT="fragLoadTimeOut",i.FRAG_DECRYPT_ERROR="fragDecryptError",i.FRAG_PARSING_ERROR="fragParsingError",i.FRAG_GAP="fragGap",i.REMUX_ALLOC_ERROR="remuxAllocError",i.KEY_LOAD_ERROR="keyLoadError",i.KEY_LOAD_TIMEOUT="keyLoadTimeOut",i.BUFFER_ADD_CODEC_ERROR="bufferAddCodecError",i.BUFFER_INCOMPATIBLE_CODECS_ERROR="bufferIncompatibleCodecsError",i.BUFFER_APPEND_ERROR="bufferAppendError",i.BUFFER_APPENDING_ERROR="bufferAppendingError",i.BUFFER_STALLED_ERROR="bufferStalledError",i.BUFFER_FULL_ERROR="bufferFullError",i.BUFFER_SEEK_OVER_HOLE="bufferSeekOverHole",i.BUFFER_NUDGE_ON_STALL="bufferNudgeOnStall",i.INTERNAL_EXCEPTION="internalException",i.INTERNAL_ABORTED="aborted",i.UNKNOWN="unknown",i}({}),Fs=function(){},Gp={trace:Fs,debug:Fs,log:Fs,warn:Fs,info:Fs,error:Fs},yo=Gp;function _I(i){let e=self.console[i];return e?e.bind(self.console,`[${i}] >`):Fs}function AI(i,...e){e.forEach(function(t){yo[t]=i[t]?i[t].bind(i):_I(t)})}function SI(i,e){if(self.console&&i===!0||typeof i=="object"){AI(i,"debug","log","info","warn","error");try{yo.log(`Debug logs enabled for "${e}" in hls.js version 1.4.13`)}catch{yo=Gp}}else yo=Gp}var M=yo,xI=/^(\d+)x(\d+)$/,Dy=/(.+?)=(".*?"|.*?)(?:,|$)/g,ut=class i{constructor(e){typeof e=="string"&&(e=i.parseAttrList(e));for(let t in e)e.hasOwnProperty(t)&&(t.substring(0,2)==="X-"&&(this.clientAttrs=this.clientAttrs||[],this.clientAttrs.push(t)),this[t]=e[t])}decimalInteger(e){let t=parseInt(this[e],10);return t>Number.MAX_SAFE_INTEGER?1/0:t}hexadecimalInteger(e){if(this[e]){let t=(this[e]||"0x").slice(2);t=(t.length&1?"0":"")+t;let r=new Uint8Array(t.length/2);for(let s=0;s<t.length/2;s++)r[s]=parseInt(t.slice(s*2,s*2+2),16);return r}else return null}hexadecimalIntegerAsNumber(e){let t=parseInt(this[e],16);return t>Number.MAX_SAFE_INTEGER?1/0:t}decimalFloatingPoint(e){return parseFloat(this[e])}optionalFloat(e,t){let r=this[e];return r?parseFloat(r):t}enumeratedString(e){return this[e]}bool(e){return this[e]==="YES"}decimalResolution(e){let t=xI.exec(this[e]);if(t!==null)return{width:parseInt(t[1],10),height:parseInt(t[2],10)}}static parseAttrList(e){let t,r={},s='"';for(Dy.lastIndex=0;(t=Dy.exec(e))!==null;){let n=t[2];n.indexOf(s)===0&&n.lastIndexOf(s)===n.length-1&&(n=n.slice(1,-1));let a=t[1].trim();r[a]=n}return r}};function II(i){return i!=="ID"&&i!=="CLASS"&&i!=="START-DATE"&&i!=="DURATION"&&i!=="END-DATE"&&i!=="END-ON-NEXT"}function kI(i){return i==="SCTE35-OUT"||i==="SCTE35-IN"}var eu=class{constructor(e,t){if(this.attr=void 0,this._startDate=void 0,this._endDate=void 0,this._badValueForSameId=void 0,t){let r=t.attr;for(let s in r)if(Object.prototype.hasOwnProperty.call(e,s)&&e[s]!==r[s]){M.warn(`DATERANGE tag attribute: "${s}" does not match for tags with ID: "${e.ID}"`),this._badValueForSameId=s;break}e=xt(new ut({}),r,e)}if(this.attr=e,this._startDate=new Date(e["START-DATE"]),"END-DATE"in this.attr){let r=new Date(this.attr["END-DATE"]);oe(r.getTime())&&(this._endDate=r)}}get id(){return this.attr.ID}get class(){return this.attr.CLASS}get startDate(){return this._startDate}get endDate(){if(this._endDate)return this._endDate;let e=this.duration;return e!==null?new Date(this._startDate.getTime()+e*1e3):null}get duration(){if("DURATION"in this.attr){let e=this.attr.decimalFloatingPoint("DURATION");if(oe(e))return e}else if(this._endDate)return(this._endDate.getTime()-this._startDate.getTime())/1e3;return null}get plannedDuration(){return"PLANNED-DURATION"in this.attr?this.attr.decimalFloatingPoint("PLANNED-DURATION"):null}get endOnNext(){return this.attr.bool("END-ON-NEXT")}get isValid(){return!!this.id&&!this._badValueForSameId&&oe(this.startDate.getTime())&&(this.duration===null||this.duration>=0)&&(!this.endOnNext||!!this.class)}},ta=class{constructor(){this.aborted=!1,this.loaded=0,this.retry=0,this.total=0,this.chunkCount=0,this.bwEstimate=0,this.loading={start:0,first:0,end:0},this.parsing={start:0,end:0},this.buffering={start:0,first:0,end:0}}},Qe={AUDIO:"audio",VIDEO:"video",AUDIOVIDEO:"audiovideo"},tu=class{constructor(e){this._byteRange=null,this._url=null,this.baseurl=void 0,this.relurl=void 0,this.elementaryStreams={[Qe.AUDIO]:null,[Qe.VIDEO]:null,[Qe.AUDIOVIDEO]:null},this.baseurl=e}setByteRange(e,t){let r=e.split("@",2),s=[];r.length===1?s[0]=t?t.byteRangeEndOffset:0:s[0]=parseInt(r[1]),s[1]=parseInt(r[0])+s[0],this._byteRange=s}get byteRange(){return this._byteRange?this._byteRange:[]}get byteRangeStartOffset(){return this.byteRange[0]}get byteRangeEndOffset(){return this.byteRange[1]}get url(){return!this._url&&this.baseurl&&this.relurl&&(this._url=Kg.buildAbsoluteURL(this.baseurl,this.relurl,{alwaysNormalize:!0})),this._url||""}set url(e){this._url=e}},To=class extends tu{constructor(e,t){super(t),this._decryptdata=null,this.rawProgramDateTime=null,this.programDateTime=null,this.tagList=[],this.duration=0,this.sn=0,this.levelkeys=void 0,this.type=void 0,this.loader=null,this.keyLoader=null,this.level=-1,this.cc=0,this.startPTS=void 0,this.endPTS=void 0,this.startDTS=void 0,this.endDTS=void 0,this.start=0,this.deltaPTS=void 0,this.maxStartPTS=void 0,this.minEndPTS=void 0,this.stats=new ta,this.urlId=0,this.data=void 0,this.bitrateTest=!1,this.title=null,this.initSegment=null,this.endList=void 0,this.gap=void 0,this.type=e}get decryptdata(){let{levelkeys:e}=this;if(!e&&!this._decryptdata)return null;if(!this._decryptdata&&this.levelkeys&&!this.levelkeys.NONE){let t=this.levelkeys.identity;if(t)this._decryptdata=t.getDecryptData(this.sn);else{let r=Object.keys(this.levelkeys);if(r.length===1)return this._decryptdata=this.levelkeys[r[0]].getDecryptData(this.sn)}}return this._decryptdata}get end(){return this.start+this.duration}get endProgramDateTime(){if(this.programDateTime===null||!oe(this.programDateTime))return null;let e=oe(this.duration)?this.duration:0;return this.programDateTime+e*1e3}get encrypted(){var e;if((e=this._decryptdata)!=null&&e.encrypted)return!0;if(this.levelkeys){let t=Object.keys(this.levelkeys),r=t.length;if(r>1||r===1&&this.levelkeys[t[0]].encrypted)return!0}return!1}setKeyFormat(e){if(this.levelkeys){let t=this.levelkeys[e];t&&!this._decryptdata&&(this._decryptdata=t.getDecryptData(this.sn))}}abortRequests(){var e,t;(e=this.loader)==null||e.abort(),(t=this.keyLoader)==null||t.abort()}setElementaryStreamInfo(e,t,r,s,n,a=!1){let{elementaryStreams:o}=this,l=o[e];if(!l){o[e]={startPTS:t,endPTS:r,startDTS:s,endDTS:n,partial:a};return}l.startPTS=Math.min(l.startPTS,t),l.endPTS=Math.max(l.endPTS,r),l.startDTS=Math.min(l.startDTS,s),l.endDTS=Math.max(l.endDTS,n)}clearElementaryStreamInfo(){let{elementaryStreams:e}=this;e[Qe.AUDIO]=null,e[Qe.VIDEO]=null,e[Qe.AUDIOVIDEO]=null}},Wp=class extends tu{constructor(e,t,r,s,n){super(r),this.fragOffset=0,this.duration=0,this.gap=!1,this.independent=!1,this.relurl=void 0,this.fragment=void 0,this.index=void 0,this.stats=new ta,this.duration=e.decimalFloatingPoint("DURATION"),this.gap=e.bool("GAP"),this.independent=e.bool("INDEPENDENT"),this.relurl=e.enumeratedString("URI"),this.fragment=t,this.index=s;let a=e.enumeratedString("BYTERANGE");a&&this.setByteRange(a,n),n&&(this.fragOffset=n.fragOffset+n.duration)}get start(){return this.fragment.start+this.fragOffset}get end(){return this.start+this.duration}get loaded(){let{elementaryStreams:e}=this;return!!(e.audio||e.video||e.audiovideo)}},LI=10,Kp=class{constructor(e){this.PTSKnown=!1,this.alignedSliding=!1,this.averagetargetduration=void 0,this.endCC=0,this.endSN=0,this.fragments=void 0,this.fragmentHint=void 0,this.partList=null,this.dateRanges=void 0,this.live=!0,this.ageHeader=0,this.advancedDateTime=void 0,this.updated=!0,this.advanced=!0,this.availabilityDelay=void 0,this.misses=0,this.startCC=0,this.startSN=0,this.startTimeOffset=null,this.targetduration=0,this.totalduration=0,this.type=null,this.url=void 0,this.m3u8="",this.version=null,this.canBlockReload=!1,this.canSkipUntil=0,this.canSkipDateRanges=!1,this.skippedSegments=0,this.recentlyRemovedDateranges=void 0,this.partHoldBack=0,this.holdBack=0,this.partTarget=0,this.preloadHint=void 0,this.renditionReports=void 0,this.tuneInGoal=0,this.deltaUpdateFailed=void 0,this.driftStartTime=0,this.driftEndTime=0,this.driftStart=0,this.driftEnd=0,this.encryptedFragments=void 0,this.playlistParsingError=null,this.variableList=null,this.hasVariableRefs=!1,this.fragments=[],this.encryptedFragments=[],this.dateRanges={},this.url=e}reloaded(e){if(!e){this.advanced=!0,this.updated=!0;return}let t=this.lastPartSn-e.lastPartSn,r=this.lastPartIndex-e.lastPartIndex;this.updated=this.endSN!==e.endSN||!!r||!!t||!this.live,this.advanced=this.endSN>e.endSN||t>0||t===0&&r>0,this.updated||this.advanced?this.misses=Math.floor(e.misses*.6):this.misses=e.misses+1,this.availabilityDelay=e.availabilityDelay}get hasProgramDateTime(){return this.fragments.length?oe(this.fragments[this.fragments.length-1].programDateTime):!1}get levelTargetDuration(){return this.averagetargetduration||this.targetduration||LI}get drift(){let e=this.driftEndTime-this.driftStartTime;return e>0?(this.driftEnd-this.driftStart)*1e3/e:1}get edge(){return this.partEnd||this.fragmentEnd}get partEnd(){var e;return(e=this.partList)!=null&&e.length?this.partList[this.partList.length-1].end:this.fragmentEnd}get fragmentEnd(){var e;return(e=this.fragments)!=null&&e.length?this.fragments[this.fragments.length-1].end:0}get age(){return this.advancedDateTime?Math.max(Date.now()-this.advancedDateTime,0)/1e3:0}get lastPartIndex(){var e;return(e=this.partList)!=null&&e.length?this.partList[this.partList.length-1].index:-1}get lastPartSn(){var e;return(e=this.partList)!=null&&e.length?this.partList[this.partList.length-1].fragment.sn:this.endSN}};function Vg(i){return Uint8Array.from(atob(i),e=>e.charCodeAt(0))}function RI(i){let e=bT(i).subarray(0,16),t=new Uint8Array(16);return t.set(e,16-e.length),t}function wI(i){let e=function(r,s,n){let a=r[s];r[s]=r[n],r[n]=a};e(i,0,3),e(i,1,2),e(i,4,5),e(i,6,7)}function CI(i){let e=i.split(":"),t=null;if(e[0]==="data"&&e.length===2){let r=e[1].split(";"),s=r[r.length-1].split(",");if(s.length===2){let n=s[0]==="base64",a=s[1];n?(r.splice(-1,1),t=Vg(a)):t=RI(a)}}return t}function bT(i){return Uint8Array.from(unescape(encodeURIComponent(i)),e=>e.charCodeAt(0))}var ht={CLEARKEY:"org.w3.clearkey",FAIRPLAY:"com.apple.fps",PLAYREADY:"com.microsoft.playready",WIDEVINE:"com.widevine.alpha"},li={CLEARKEY:"org.w3.clearkey",FAIRPLAY:"com.apple.streamingkeydelivery",PLAYREADY:"com.microsoft.playready",WIDEVINE:"urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed"};function My(i){switch(i){case li.FAIRPLAY:return ht.FAIRPLAY;case li.PLAYREADY:return ht.PLAYREADY;case li.WIDEVINE:return ht.WIDEVINE;case li.CLEARKEY:return ht.CLEARKEY}}var yT={WIDEVINE:"edef8ba979d64acea3c827dcd51d21ed"};function DI(i){if(i===yT.WIDEVINE)return ht.WIDEVINE}function Py(i){switch(i){case ht.FAIRPLAY:return li.FAIRPLAY;case ht.PLAYREADY:return li.PLAYREADY;case ht.WIDEVINE:return li.WIDEVINE;case ht.CLEARKEY:return li.CLEARKEY}}function _p(i){let{drmSystems:e,widevineLicenseUrl:t}=i,r=e?[ht.FAIRPLAY,ht.WIDEVINE,ht.PLAYREADY,ht.CLEARKEY].filter(s=>!!e[s]):[];return!r[ht.WIDEVINE]&&t&&r.push(ht.WIDEVINE),r}var TT=function(){return typeof self!="undefined"&&self.navigator&&self.navigator.requestMediaKeySystemAccess?self.navigator.requestMediaKeySystemAccess.bind(self.navigator):null}();function MI(i,e,t,r){let s;switch(i){case ht.FAIRPLAY:s=["cenc","sinf"];break;case ht.WIDEVINE:case ht.PLAYREADY:s=["cenc"];break;case ht.CLEARKEY:s=["cenc","keyids"];break;default:throw new Error(`Unknown key-system: ${i}`)}return PI(s,e,t,r)}function PI(i,e,t,r){return[{initDataTypes:i,persistentState:r.persistentState||"not-allowed",distinctiveIdentifier:r.distinctiveIdentifier||"not-allowed",sessionTypes:r.sessionTypes||[r.sessionType||"temporary"],audioCapabilities:e.map(n=>({contentType:`audio/mp4; codecs="${n}"`,robustness:r.audioRobustness||"",encryptionScheme:r.audioEncryptionScheme||null})),videoCapabilities:t.map(n=>({contentType:`video/mp4; codecs="${n}"`,robustness:r.videoRobustness||"",encryptionScheme:r.videoEncryptionScheme||null}))}]}function $s(i,e,t){return Uint8Array.prototype.slice?i.slice(e,t):new Uint8Array(Array.prototype.slice.call(i,e,t))}var qg=(i,e)=>e+10<=i.length&&i[e]===73&&i[e+1]===68&&i[e+2]===51&&i[e+3]<255&&i[e+4]<255&&i[e+6]<128&&i[e+7]<128&&i[e+8]<128&&i[e+9]<128,_T=(i,e)=>e+10<=i.length&&i[e]===51&&i[e+1]===68&&i[e+2]===73&&i[e+3]<255&&i[e+4]<255&&i[e+6]<128&&i[e+7]<128&&i[e+8]<128&&i[e+9]<128,iu=(i,e)=>{let t=e,r=0;for(;qg(i,e);){r+=10;let s=_u(i,e+6);r+=s,_T(i,e+10)&&(r+=10),e+=r}if(r>0)return i.subarray(t,t+r)},_u=(i,e)=>{let t=0;return t=(i[e]&127)<<21,t|=(i[e+1]&127)<<14,t|=(i[e+2]&127)<<7,t|=i[e+3]&127,t},OI=(i,e)=>qg(i,e)&&_u(i,e+6)+10<=i.length-e,NI=i=>{let e=ST(i);for(let t=0;t<e.length;t++){let r=e[t];if(AT(r))return GI(r)}},AT=i=>i&&i.key==="PRIV"&&i.info==="com.apple.streaming.transportStreamTimestamp",UI=i=>{let e=String.fromCharCode(i[0],i[1],i[2],i[3]),t=_u(i,4),r=10;return{type:e,size:t,data:i.subarray(r,r+t)}},ST=i=>{let e=0,t=[];for(;qg(i,e);){let r=_u(i,e+6);e+=10;let s=e+r;for(;e+8<s;){let n=UI(i.subarray(e)),a=FI(n);a&&t.push(a),e+=n.size+10}_T(i,e)&&(e+=10)}return t},FI=i=>i.type==="PRIV"?BI(i):i.type[0]==="W"?HI(i):$I(i),BI=i=>{if(i.size<2)return;let e=vr(i.data,!0),t=new Uint8Array(i.data.subarray(e.length+1));return{key:i.type,info:e,data:t.buffer}},$I=i=>{if(i.size<2)return;if(i.type==="TXXX"){let t=1,r=vr(i.data.subarray(t),!0);t+=r.length+1;let s=vr(i.data.subarray(t));return{key:i.type,info:r,data:s}}let e=vr(i.data.subarray(1));return{key:i.type,data:e}},HI=i=>{if(i.type==="WXXX"){if(i.size<2)return;let t=1,r=vr(i.data.subarray(t),!0);t+=r.length+1;let s=vr(i.data.subarray(t));return{key:i.type,info:r,data:s}}let e=vr(i.data);return{key:i.type,data:e}},GI=i=>{if(i.data.byteLength===8){let e=new Uint8Array(i.data),t=e[3]&1,r=(e[4]<<23)+(e[5]<<15)+(e[6]<<7)+e[7];return r/=45,t&&(r+=4772185884e-2),Math.round(r)}},vr=(i,e=!1)=>{let t=WI();if(t){let d=t.decode(i);if(e){let c=d.indexOf("\0");return c!==-1?d.substring(0,c):d}return d.replace(/\0/g,"")}let r=i.length,s,n,a,o="",l=0;for(;l<r;){if(s=i[l++],s===0&&e)return o;if(s===0||s===3)continue;switch(s>>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:o+=String.fromCharCode(s);break;case 12:case 13:n=i[l++],o+=String.fromCharCode((s&31)<<6|n&63);break;case 14:n=i[l++],a=i[l++],o+=String.fromCharCode((s&15)<<12|(n&63)<<6|(a&63)<<0);break}}return o},Ap;function WI(){return!Ap&&typeof self.TextDecoder!="undefined"&&(Ap=new self.TextDecoder("utf-8")),Ap}var pr={hexDump:function(i){let e="";for(let t=0;t<i.length;t++){let r=i[t].toString(16);r.length<2&&(r="0"+r),e+=r}return e}},ru=Math.pow(2,32)-1,KI=[].push,xT={video:1,audio:2,id3:3,text:4};function Ft(i){return String.fromCharCode.apply(null,i)}function IT(i,e){let t=i[e]<<8|i[e+1];return t<0?65536+t:t}function ve(i,e){let t=kT(i,e);return t<0?4294967296+t:t}function kT(i,e){return i[e]<<24|i[e+1]<<16|i[e+2]<<8|i[e+3]}function Sp(i,e,t){i[e]=t>>24,i[e+1]=t>>16&255,i[e+2]=t>>8&255,i[e+3]=t&255}function Ue(i,e){let t=[];if(!e.length)return t;let r=i.byteLength;for(let s=0;s<r;){let n=ve(i,s),a=Ft(i.subarray(s+4,s+8)),o=n>1?s+n:r;if(a===e[0])if(e.length===1)t.push(i.subarray(s+8,o));else{let l=Ue(i.subarray(s+8,o),e.slice(1));l.length&&KI.apply(t,l)}s=o}return t}function VI(i){let e=[],t=i[0],r=8,s=ve(i,r);r+=4;let n=0,a=0;t===0?r+=8:r+=16,r+=2;let o=i.length+a,l=IT(i,r);r+=2;for(let d=0;d<l;d++){let c=r,u=ve(i,c);c+=4;let h=u&2147483647;if((u&2147483648)>>>31===1)return M.warn("SIDX has hierarchical references (not supported)"),null;let g=ve(i,c);c+=4,e.push({referenceSize:h,subsegmentDuration:g,info:{duration:g/s,start:o,end:o+h-1}}),o+=h,c+=4,r=c}return{earliestPresentationTime:n,timescale:s,version:t,referencesCount:l,references:e}}function LT(i){let e=[],t=Ue(i,["moov","trak"]);for(let s=0;s<t.length;s++){let n=t[s],a=Ue(n,["tkhd"])[0];if(a){let o=a[0],l=o===0?12:20,d=ve(a,l),c=Ue(n,["mdia","mdhd"])[0];if(c){o=c[0],l=o===0?12:20;let u=ve(c,l),h=Ue(n,["mdia","hdlr"])[0];if(h){let f=Ft(h.subarray(8,12)),g={soun:Qe.AUDIO,vide:Qe.VIDEO}[f];if(g){let E=Ue(n,["mdia","minf","stbl","stsd"])[0],y;E&&(y=Ft(E.subarray(12,16))),e[d]={timescale:u,type:g},e[g]={timescale:u,id:d,codec:y}}}}}}return Ue(i,["moov","mvex","trex"]).forEach(s=>{let n=ve(s,4),a=e[n];a&&(a.default={duration:ve(s,12),flags:ve(s,20)})}),e}function qI(i,e){if(!i||!e)return i;let t=e.keyId;return t&&e.isCommonEncryption&&Ue(i,["moov","trak"]).forEach(s=>{let a=Ue(s,["mdia","minf","stbl","stsd"])[0].subarray(8),o=Ue(a,["enca"]),l=o.length>0;l||(o=Ue(a,["encv"])),o.forEach(d=>{let c=l?d.subarray(28):d.subarray(78);Ue(c,["sinf"]).forEach(h=>{let f=RT(h);if(f){let g=f.subarray(8,24);g.some(E=>E!==0)||(M.log(`[eme] Patching keyId in 'enc${l?"a":"v"}>sinf>>tenc' box: ${pr.hexDump(g)} -> ${pr.hexDump(t)}`),f.set(t,8))}})})}),i}function RT(i){let e=Ue(i,["schm"])[0];if(e){let t=Ft(e.subarray(4,8));if(t==="cbcs"||t==="cenc")return Ue(i,["schi","tenc"])[0]}return M.error("[eme] missing 'schm' box"),null}function YI(i,e){return Ue(e,["moof","traf"]).reduce((t,r)=>{let s=Ue(r,["tfdt"])[0],n=s[0],a=Ue(r,["tfhd"]).reduce((o,l)=>{let d=ve(l,4),c=i[d];if(c){let u=ve(s,4);if(n===1){if(u===ru)return M.warn("[mp4-demuxer]: Ignoring assumed invalid signed 64-bit track fragment decode time"),o;u*=ru+1,u+=ve(s,8)}let h=c.timescale||9e4,f=u/h;if(oe(f)&&(o===null||f<o))return f}return o},null);return a!==null&&oe(a)&&(t===null||a<t)?a:t},null)}function jI(i,e){let t=0,r=0,s=0,n=Ue(i,["moof","traf"]);for(let a=0;a<n.length;a++){let o=n[a],l=Ue(o,["tfhd"])[0],d=ve(l,4),c=e[d];if(!c)continue;let u=c.default,h=ve(l,0)|(u==null?void 0:u.flags),f=u==null?void 0:u.duration;h&8&&(h&2?f=ve(l,12):f=ve(l,8));let g=c.timescale||9e4,E=Ue(o,["trun"]);for(let y=0;y<E.length;y++){if(t=zI(E[y]),!t&&f){let S=ve(E[y],4);t=f*S}c.type===Qe.VIDEO?r+=t/g:c.type===Qe.AUDIO&&(s+=t/g)}}if(r===0&&s===0){let a=0,o=Ue(i,["sidx"]);for(let l=0;l<o.length;l++){let d=VI(o[l]);d!=null&&d.references&&(a+=d.references.reduce((c,u)=>c+u.info.duration||0,0))}return a}return r||s}function zI(i){let e=ve(i,0),t=8;e&1&&(t+=4),e&4&&(t+=4);let r=0,s=ve(i,4);for(let n=0;n<s;n++){if(e&256){let a=ve(i,t);r+=a,t+=4}e&512&&(t+=4),e&1024&&(t+=4),e&2048&&(t+=4)}return r}function XI(i,e,t){Ue(e,["moof","traf"]).forEach(r=>{Ue(r,["tfhd"]).forEach(s=>{let n=ve(s,4),a=i[n];if(!a)return;let o=a.timescale||9e4;Ue(r,["tfdt"]).forEach(l=>{let d=l[0],c=ve(l,4);if(d===0)c-=t*o,c=Math.max(c,0),Sp(l,4,c);else{c*=Math.pow(2,32),c+=ve(l,8),c-=t*o,c=Math.max(c,0);let u=Math.floor(c/(ru+1)),h=Math.floor(c%(ru+1));Sp(l,4,u),Sp(l,8,h)}})})})}function QI(i){let e={valid:null,remainder:null},t=Ue(i,["moof"]);if(t){if(t.length<2)return e.remainder=i,e}else return e;let r=t[t.length-1];return e.valid=$s(i,0,r.byteOffset-8),e.remainder=$s(i,r.byteOffset-8),e}function Hs(i,e){let t=new Uint8Array(i.length+e.length);return t.set(i),t.set(e,i.length),t}function Oy(i,e){let t=[],r=e.samples,s=e.timescale,n=e.id,a=!1;return Ue(r,["moof"]).map(l=>{let d=l.byteOffset-8;Ue(l,["traf"]).map(u=>{let h=Ue(u,["tfdt"]).map(f=>{let g=f[0],E=ve(f,4);return g===1&&(E*=Math.pow(2,32),E+=ve(f,8)),E/s})[0];return h!==void 0&&(i=h),Ue(u,["tfhd"]).map(f=>{let g=ve(f,4),E=ve(f,0)&16777215,y=(E&1)!==0,S=(E&2)!==0,w=(E&8)!==0,L=0,F=(E&16)!==0,R=0,B=(E&32)!==0,P=8;g===n&&(y&&(P+=8),S&&(P+=4),w&&(L=ve(f,P),P+=4),F&&(R=ve(f,P),P+=4),B&&(P+=4),e.type==="video"&&(a=ZI(e.codec)),Ue(u,["trun"]).map($=>{let K=$[0],N=ve($,0)&16777215,z=(N&1)!==0,Y=0,ge=(N&4)!==0,me=(N&256)!==0,Ee=0,De=(N&512)!==0,Le=0,Z=(N&1024)!==0,te=(N&2048)!==0,ie=0,_e=ve($,4),Ae=8;z&&(Y=ve($,Ae),Ae+=4),ge&&(Ae+=4);let Je=Y+d;for(let Pt=0;Pt<_e;Pt++){if(me?(Ee=ve($,Ae),Ae+=4):Ee=L,De?(Le=ve($,Ae),Ae+=4):Le=R,Z&&(Ae+=4),te&&(K===0?ie=ve($,Ae):ie=kT($,Ae),Ae+=4),e.type===Qe.VIDEO){let Ot=0;for(;Ot<Le;){let kt=ve(r,Je);if(Je+=4,JI(a,r[Je])){let mi=r.subarray(Je,Je+kt);wT(mi,a?2:1,i+ie/s,t)}Je+=kt,Ot+=kt+4}}i+=Ee/s}}))})})}),t}function ZI(i){if(!i)return!1;let e=i.indexOf("."),t=e<0?i:i.substring(0,e);return t==="hvc1"||t==="hev1"||t==="dvh1"||t==="dvhe"}function JI(i,e){if(i){let t=e>>1&63;return t===39||t===40}else return(e&31)===6}function wT(i,e,t,r){let s=CT(i),n=0;n+=e;let a=0,o=0,l=!1,d=0;for(;n<s.length;){a=0;do{if(n>=s.length)break;d=s[n++],a+=d}while(d===255);o=0;do{if(n>=s.length)break;d=s[n++],o+=d}while(d===255);let c=s.length-n;if(!l&&a===4&&n<s.length){if(l=!0,s[n++]===181){let h=IT(s,n);if(n+=2,h===49){let f=ve(s,n);if(n+=4,f===1195456820){let g=s[n++];if(g===3){let E=s[n++],y=31&E,S=64&E,w=S?2+y*3:0,L=new Uint8Array(w);if(S){L[0]=E;for(let F=1;F<w;F++)L[F]=s[n++]}r.push({type:g,payloadType:a,pts:t,bytes:L})}}}}}else if(a===5&&o<c){if(l=!0,o>16){let u=[];for(let g=0;g<16;g++){let E=s[n++].toString(16);u.push(E.length==1?"0"+E:E),(g===3||g===5||g===7||g===9)&&u.push("-")}let h=o-16,f=new Uint8Array(h);for(let g=0;g<h;g++)f[g]=s[n++];r.push({payloadType:a,pts:t,uuid:u.join(""),userData:vr(f),userDataBytes:f})}}else if(o<c)n+=o;else if(o>c)break}}function CT(i){let e=i.byteLength,t=[],r=1;for(;r<e-2;)i[r]===0&&i[r+1]===0&&i[r+2]===3?(t.push(r+2),r+=2):r++;if(t.length===0)return i;let s=e-t.length,n=new Uint8Array(s),a=0;for(r=0;r<s;a++,r++)a===t[0]&&(a++,t.shift()),n[r]=i[a];return n}function ek(i){let e=i[0],t="",r="",s=0,n=0,a=0,o=0,l=0,d=0;if(e===0){for(;Ft(i.subarray(d,d+1))!=="\0";)t+=Ft(i.subarray(d,d+1)),d+=1;for(t+=Ft(i.subarray(d,d+1)),d+=1;Ft(i.subarray(d,d+1))!=="\0";)r+=Ft(i.subarray(d,d+1)),d+=1;r+=Ft(i.subarray(d,d+1)),d+=1,s=ve(i,12),n=ve(i,16),o=ve(i,20),l=ve(i,24),d=28}else if(e===1){d+=4,s=ve(i,d),d+=4;let u=ve(i,d);d+=4;let h=ve(i,d);for(d+=4,a=2**32*u+h,yI(a)||(a=Number.MAX_SAFE_INTEGER,M.warn("Presentation time exceeds safe integer limit and wrapped to max safe integer in parsing emsg box")),o=ve(i,d),d+=4,l=ve(i,d),d+=4;Ft(i.subarray(d,d+1))!=="\0";)t+=Ft(i.subarray(d,d+1)),d+=1;for(t+=Ft(i.subarray(d,d+1)),d+=1;Ft(i.subarray(d,d+1))!=="\0";)r+=Ft(i.subarray(d,d+1)),d+=1;r+=Ft(i.subarray(d,d+1)),d+=1}let c=i.subarray(d,i.byteLength);return{schemeIdUri:t,value:r,timeScale:s,presentationTime:a,presentationTimeDelta:n,eventDuration:o,id:l,payload:c}}function tk(i,...e){let t=e.length,r=8,s=t;for(;s--;)r+=e[s].byteLength;let n=new Uint8Array(r);for(n[0]=r>>24&255,n[1]=r>>16&255,n[2]=r>>8&255,n[3]=r&255,n.set(i,4),s=0,r=8;s<t;s++)n.set(e[s],r),r+=e[s].byteLength;return n}function ik(i,e,t){if(i.byteLength!==16)throw new RangeError("Invalid system id");let r,s;if(e){r=1,s=new Uint8Array(e.length*16);for(let o=0;o<e.length;o++){let l=e[o];if(l.byteLength!==16)throw new RangeError("Invalid key");s.set(l,o*16)}}else r=0,s=new Uint8Array;let n;r>0?(n=new Uint8Array(4),e.length>0&&new DataView(n.buffer).setUint32(0,e.length,!1)):n=new Uint8Array;let a=new Uint8Array(4);return t&&t.byteLength>0&&new DataView(a.buffer).setUint32(0,t.byteLength,!1),tk([112,115,115,104],new Uint8Array([r,0,0,0]),i,n,s,a,t||new Uint8Array)}function rk(i){if(!(i instanceof ArrayBuffer)||i.byteLength<32)return null;let e={version:0,systemId:"",kids:null,data:null},t=new DataView(i),r=t.getUint32(0);if(i.byteLength!==r&&r>44||t.getUint32(4)!==1886614376||(e.version=t.getUint32(8)>>>24,e.version>1))return null;e.systemId=pr.hexDump(new Uint8Array(i,12,16));let n=t.getUint32(28);if(e.version===0){if(r-32<n)return null;e.data=new Uint8Array(i,32,n)}else if(e.version===1){e.kids=[];for(let a=0;a<n;a++)e.kids.push(new Uint8Array(i,32+a*16,16))}return e}var Kc={},xo=class i{static clearKeyUriToKeyIdMap(){Kc={}}constructor(e,t,r,s=[1],n=null){this.uri=void 0,this.method=void 0,this.keyFormat=void 0,this.keyFormatVersions=void 0,this.encrypted=void 0,this.isCommonEncryption=void 0,this.iv=null,this.key=null,this.keyId=null,this.pssh=null,this.method=e,this.uri=t,this.keyFormat=r,this.keyFormatVersions=s,this.iv=n,this.encrypted=e?e!=="NONE":!1,this.isCommonEncryption=this.encrypted&&e!=="AES-128"}isSupported(){if(this.method){if(this.method==="AES-128"||this.method==="NONE")return!0;if(this.keyFormat==="identity")return this.method==="SAMPLE-AES";switch(this.keyFormat){case li.FAIRPLAY:case li.WIDEVINE:case li.PLAYREADY:case li.CLEARKEY:return["ISO-23001-7","SAMPLE-AES","SAMPLE-AES-CENC","SAMPLE-AES-CTR"].indexOf(this.method)!==-1}}return!1}getDecryptData(e){if(!this.encrypted||!this.uri)return null;if(this.method==="AES-128"&&this.uri&&!this.iv){typeof e!="number"&&(this.method==="AES-128"&&!this.iv&&M.warn(`missing IV for initialization segment with method="${this.method}" - compliance issue`),e=0);let r=sk(e);return new i(this.method,this.uri,"identity",this.keyFormatVersions,r)}let t=CI(this.uri);if(t)switch(this.keyFormat){case li.WIDEVINE:this.pssh=t,t.length>=22&&(this.keyId=t.subarray(t.length-22,t.length-6));break;case li.PLAYREADY:{let r=new Uint8Array([154,4,240,121,152,64,66,134,171,146,230,91,224,136,95,149]);this.pssh=ik(r,null,t);let s=new Uint16Array(t.buffer,t.byteOffset,t.byteLength/2),n=String.fromCharCode.apply(null,Array.from(s)),a=n.substring(n.indexOf("<"),n.length),d=new DOMParser().parseFromString(a,"text/xml").getElementsByTagName("KID")[0];if(d){let c=d.childNodes[0]?d.childNodes[0].nodeValue:d.getAttribute("VALUE");if(c){let u=Vg(c).subarray(0,16);wI(u),this.keyId=u}}break}default:{let r=t.subarray(0,16);if(r.length!==16){let s=new Uint8Array(16);s.set(r,16-r.length),r=s}this.keyId=r;break}}if(!this.keyId||this.keyId.byteLength!==16){let r=Kc[this.uri];if(!r){let s=Object.keys(Kc).length%Number.MAX_SAFE_INTEGER;r=new Uint8Array(16),new DataView(r.buffer,12,4).setUint32(0,s),Kc[this.uri]=r}this.keyId=r}return this}};function sk(i){let e=new Uint8Array(16);for(let t=12;t<16;t++)e[t]=i>>8*(15-t)&255;return e}var DT=/\{\$([a-zA-Z0-9-_]+)\}/g;function Ny(i){return DT.test(i)}function ai(i,e,t){if(i.variableList!==null||i.hasVariableRefs)for(let r=t.length;r--;){let s=t[r],n=e[s];n&&(e[s]=Vp(i,n))}}function Vp(i,e){if(i.variableList!==null||i.hasVariableRefs){let t=i.variableList;return e.replace(DT,r=>{let s=r.substring(2,r.length-1),n=t==null?void 0:t[s];return n===void 0?(i.playlistParsingError||(i.playlistParsingError=new Error(`Missing preceding EXT-X-DEFINE tag for Variable Reference: "${s}"`)),r):n})}return e}function Uy(i,e,t){let r=i.variableList;r||(i.variableList=r={});let s,n;if("QUERYPARAM"in e){s=e.QUERYPARAM;try{let a=new self.URL(t).searchParams;if(a.has(s))n=a.get(s);else throw new Error(`"${s}" does not match any query parameter in URI: "${t}"`)}catch(a){i.playlistParsingError||(i.playlistParsingError=new Error(`EXT-X-DEFINE QUERYPARAM: ${a.message}`))}}else s=e.NAME,n=e.VALUE;s in r?i.playlistParsingError||(i.playlistParsingError=new Error(`EXT-X-DEFINE duplicate Variable Name declarations: "${s}"`)):r[s]=n||""}function nk(i,e,t){let r=e.IMPORT;if(t&&r in t){let s=i.variableList;s||(i.variableList=s={}),s[r]=t[r]}else i.playlistParsingError||(i.playlistParsingError=new Error(`EXT-X-DEFINE IMPORT attribute not found in Multivariant Playlist: "${r}"`))}function Au(){if(typeof self!="undefined")return self.MediaSource||self.WebKitMediaSource}var ak={audio:{a3ds:!0,"ac-3":!0,"ac-4":!0,alac:!0,alaw:!0,dra1:!0,"dts+":!0,"dts-":!0,dtsc:!0,dtse:!0,dtsh:!0,"ec-3":!0,enca:!0,g719:!0,g726:!0,m4ae:!0,mha1:!0,mha2:!0,mhm1:!0,mhm2:!0,mlpa:!0,mp4a:!0,"raw ":!0,Opus:!0,opus:!0,samr:!0,sawb:!0,sawp:!0,sevc:!0,sqcp:!0,ssmv:!0,twos:!0,ulaw:!0},video:{avc1:!0,avc2:!0,avc3:!0,avc4:!0,avcp:!0,av01:!0,drac:!0,dva1:!0,dvav:!0,dvh1:!0,dvhe:!0,encv:!0,hev1:!0,hvc1:!0,mjp2:!0,mp4v:!0,mvc1:!0,mvc2:!0,mvc3:!0,mvc4:!0,resv:!0,rv60:!0,s263:!0,svc1:!0,svc2:!0,"vc-1":!0,vp08:!0,vp09:!0},text:{stpp:!0,wvtt:!0}},Fy=Au();function ok(i,e){let t=ak[e];return!!t&&t[i.slice(0,4)]===!0}function xp(i,e){var t;return(t=Fy==null?void 0:Fy.isTypeSupported(`${e||"video"}/mp4;codecs="${i}"`))!=null?t:!1}var By=/#EXT-X-STREAM-INF:([^\r\n]*)(?:[\r\n](?:#[^\r\n]*)?)*([^\r\n]+)|#EXT-X-(SESSION-DATA|SESSION-KEY|DEFINE|CONTENT-STEERING|START):([^\r\n]*)[\r\n]+/g,$y=/#EXT-X-MEDIA:(.*)/g,lk=/^#EXT(?:INF|-X-TARGETDURATION):/m,Hy=new RegExp([/#EXTINF:\s*(\d*(?:\.\d+)?)(?:,(.*)\s+)?/.source,/(?!#) *(\S[\S ]*)/.source,/#EXT-X-BYTERANGE:*(.+)/.source,/#EXT-X-PROGRAM-DATE-TIME:(.+)/.source,/#.*/.source].join("|"),"g"),dk=new RegExp([/#(EXTM3U)/.source,/#EXT-X-(DATERANGE|DEFINE|KEY|MAP|PART|PART-INF|PLAYLIST-TYPE|PRELOAD-HINT|RENDITION-REPORT|SERVER-CONTROL|SKIP|START):(.+)/.source,/#EXT-X-(BITRATE|DISCONTINUITY-SEQUENCE|MEDIA-SEQUENCE|TARGETDURATION|VERSION): *(\d+)/.source,/#EXT-X-(DISCONTINUITY|ENDLIST|GAP)/.source,/(#)([^:]*):(.*)/.source,/(#)(.*)(?:.*)\r?\n?/.source].join("|")),Bs=class i{static findGroup(e,t){for(let r=0;r<e.length;r++){let s=e[r];if(s.id===t)return s}}static convertAVC1ToAVCOTI(e){let t=e.split(".");if(t.length>2){let r=t.shift()+".";return r+=parseInt(t.shift()).toString(16),r+=("000"+parseInt(t.shift()).toString(16)).slice(-4),r}return e}static resolve(e,t){return Kg.buildAbsoluteURL(t,e,{alwaysNormalize:!0})}static isMediaPlaylist(e){return lk.test(e)}static parseMasterPlaylist(e,t){let r=Ny(e),s={contentSteering:null,levels:[],playlistParsingError:null,sessionData:null,sessionKeys:null,startTimeOffset:null,variableList:null,hasVariableRefs:r},n=[];By.lastIndex=0;let a;for(;(a=By.exec(e))!=null;)if(a[1]){var o;let d=new ut(a[1]);ai(s,d,["CODECS","SUPPLEMENTAL-CODECS","ALLOWED-CPC","PATHWAY-ID","STABLE-VARIANT-ID","AUDIO","VIDEO","SUBTITLES","CLOSED-CAPTIONS","NAME"]);let c=Vp(s,a[2]),u={attrs:d,bitrate:d.decimalInteger("AVERAGE-BANDWIDTH")||d.decimalInteger("BANDWIDTH"),name:d.NAME,url:i.resolve(c,t)},h=d.decimalResolution("RESOLUTION");h&&(u.width=h.width,u.height=h.height),ck((d.CODECS||"").split(/[ ,]+/).filter(f=>f),u),u.videoCodec&&u.videoCodec.indexOf("avc1")!==-1&&(u.videoCodec=i.convertAVC1ToAVCOTI(u.videoCodec)),(o=u.unknownCodecs)!=null&&o.length||n.push(u),s.levels.push(u)}else if(a[3]){let d=a[3],c=a[4];switch(d){case"SESSION-DATA":{let u=new ut(c);ai(s,u,["DATA-ID","LANGUAGE","VALUE","URI"]);let h=u["DATA-ID"];h&&(s.sessionData===null&&(s.sessionData={}),s.sessionData[h]=u);break}case"SESSION-KEY":{let u=Gy(c,t,s);u.encrypted&&u.isSupported()?(s.sessionKeys===null&&(s.sessionKeys=[]),s.sessionKeys.push(u)):M.warn(`[Keys] Ignoring invalid EXT-X-SESSION-KEY tag: "${c}"`);break}case"DEFINE":{{let u=new ut(c);ai(s,u,["NAME","VALUE","QUERYPARAM"]),Uy(s,u,t)}break}case"CONTENT-STEERING":{let u=new ut(c);ai(s,u,["SERVER-URI","PATHWAY-ID"]),s.contentSteering={uri:i.resolve(u["SERVER-URI"],t),pathwayId:u["PATHWAY-ID"]||"."};break}case"START":{s.startTimeOffset=Wy(c);break}}}let l=n.length>0&&n.length<s.levels.length;return s.levels=l?n:s.levels,s.levels.length===0&&(s.playlistParsingError=new Error("no levels found in manifest")),s}static parseMasterPlaylistMedia(e,t,r){let s,n={},a=r.levels,o={AUDIO:a.map(d=>({id:d.attrs.AUDIO,audioCodec:d.audioCodec})),SUBTITLES:a.map(d=>({id:d.attrs.SUBTITLES,textCodec:d.textCodec})),"CLOSED-CAPTIONS":[]},l=0;for($y.lastIndex=0;(s=$y.exec(e))!==null;){let d=new ut(s[1]),c=d.TYPE;if(c){let u=o[c],h=n[c]||[];n[c]=h,ai(r,d,["URI","GROUP-ID","LANGUAGE","ASSOC-LANGUAGE","STABLE-RENDITION-ID","NAME","INSTREAM-ID","CHARACTERISTICS","CHANNELS"]);let f={attrs:d,bitrate:0,id:l++,groupId:d["GROUP-ID"]||"",instreamId:d["INSTREAM-ID"],name:d.NAME||d.LANGUAGE||"",type:c,default:d.bool("DEFAULT"),autoselect:d.bool("AUTOSELECT"),forced:d.bool("FORCED"),lang:d.LANGUAGE,url:d.URI?i.resolve(d.URI,t):""};if(u!=null&&u.length){let g=i.findGroup(u,f.groupId)||u[0];Ky(f,g,"audioCodec"),Ky(f,g,"textCodec")}h.push(f)}}return n}static parseLevelPlaylist(e,t,r,s,n,a){let o=new Kp(t),l=o.fragments,d=null,c=0,u=0,h=0,f=0,g=null,E=new To(s,t),y,S,w,L=-1,F=!1;for(Hy.lastIndex=0,o.m3u8=e,o.hasVariableRefs=Ny(e);(y=Hy.exec(e))!==null;){F&&(F=!1,E=new To(s,t),E.start=h,E.sn=c,E.cc=f,E.level=r,d&&(E.initSegment=d,E.rawProgramDateTime=d.rawProgramDateTime,d.rawProgramDateTime=null));let $=y[1];if($){E.duration=parseFloat($);let K=(" "+y[2]).slice(1);E.title=K||null,E.tagList.push(K?["INF",$,K]:["INF",$])}else if(y[3]){if(oe(E.duration)){E.start=h,w&&Yy(E,w,o),E.sn=c,E.level=r,E.cc=f,E.urlId=n,l.push(E);let K=(" "+y[3]).slice(1);E.relurl=Vp(o,K),Vy(E,g),g=E,h+=E.duration,c++,u=0,F=!0}}else if(y[4]){let K=(" "+y[4]).slice(1);g?E.setByteRange(K,g):E.setByteRange(K)}else if(y[5])E.rawProgramDateTime=(" "+y[5]).slice(1),E.tagList.push(["PROGRAM-DATE-TIME",E.rawProgramDateTime]),L===-1&&(L=l.length);else{if(y=y[0].match(dk),!y){M.warn("No matches on slow regex match for level playlist!");continue}for(S=1;S<y.length&&typeof y[S]=="undefined";S++);let K=(" "+y[S]).slice(1),N=(" "+y[S+1]).slice(1),z=y[S+2]?(" "+y[S+2]).slice(1):"";switch(K){case"PLAYLIST-TYPE":o.type=N.toUpperCase();break;case"MEDIA-SEQUENCE":c=o.startSN=parseInt(N);break;case"SKIP":{let Y=new ut(N);ai(o,Y,["RECENTLY-REMOVED-DATERANGES"]);let ge=Y.decimalInteger("SKIPPED-SEGMENTS");if(oe(ge)){o.skippedSegments=ge;for(let Ee=ge;Ee--;)l.unshift(null);c+=ge}let me=Y.enumeratedString("RECENTLY-REMOVED-DATERANGES");me&&(o.recentlyRemovedDateranges=me.split(" "));break}case"TARGETDURATION":o.targetduration=Math.max(parseInt(N),1);break;case"VERSION":o.version=parseInt(N);break;case"EXTM3U":break;case"ENDLIST":o.live=!1;break;case"#":(N||z)&&E.tagList.push(z?[N,z]:[N]);break;case"DISCONTINUITY":f++,E.tagList.push(["DIS"]);break;case"GAP":E.gap=!0,E.tagList.push([K]);break;case"BITRATE":E.tagList.push([K,N]);break;case"DATERANGE":{let Y=new ut(N);ai(o,Y,["ID","CLASS","START-DATE","END-DATE","SCTE35-CMD","SCTE35-OUT","SCTE35-IN"]),ai(o,Y,Y.clientAttrs);let ge=new eu(Y,o.dateRanges[Y.ID]);ge.isValid||o.skippedSegments?o.dateRanges[ge.id]=ge:M.warn(`Ignoring invalid DATERANGE tag: "${N}"`),E.tagList.push(["EXT-X-DATERANGE",N]);break}case"DEFINE":{{let Y=new ut(N);ai(o,Y,["NAME","VALUE","IMPORT","QUERYPARAM"]),"IMPORT"in Y?nk(o,Y,a):Uy(o,Y,t)}break}case"DISCONTINUITY-SEQUENCE":f=parseInt(N);break;case"KEY":{let Y=Gy(N,t,o);if(Y.isSupported()){if(Y.method==="NONE"){w=void 0;break}w||(w={}),w[Y.keyFormat]&&(w=xt({},w)),w[Y.keyFormat]=Y}else M.warn(`[Keys] Ignoring invalid EXT-X-KEY tag: "${N}"`);break}case"START":o.startTimeOffset=Wy(N);break;case"MAP":{let Y=new ut(N);if(ai(o,Y,["BYTERANGE","URI"]),E.duration){let ge=new To(s,t);qy(ge,Y,r,w),d=ge,E.initSegment=d,d.rawProgramDateTime&&!E.rawProgramDateTime&&(E.rawProgramDateTime=d.rawProgramDateTime)}else qy(E,Y,r,w),d=E,F=!0;break}case"SERVER-CONTROL":{let Y=new ut(N);o.canBlockReload=Y.bool("CAN-BLOCK-RELOAD"),o.canSkipUntil=Y.optionalFloat("CAN-SKIP-UNTIL",0),o.canSkipDateRanges=o.canSkipUntil>0&&Y.bool("CAN-SKIP-DATERANGES"),o.partHoldBack=Y.optionalFloat("PART-HOLD-BACK",0),o.holdBack=Y.optionalFloat("HOLD-BACK",0);break}case"PART-INF":{let Y=new ut(N);o.partTarget=Y.decimalFloatingPoint("PART-TARGET");break}case"PART":{let Y=o.partList;Y||(Y=o.partList=[]);let ge=u>0?Y[Y.length-1]:void 0,me=u++,Ee=new ut(N);ai(o,Ee,["BYTERANGE","URI"]);let De=new Wp(Ee,E,t,me,ge);Y.push(De),E.duration+=De.duration;break}case"PRELOAD-HINT":{let Y=new ut(N);ai(o,Y,["URI"]),o.preloadHint=Y;break}case"RENDITION-REPORT":{let Y=new ut(N);ai(o,Y,["URI"]),o.renditionReports=o.renditionReports||[],o.renditionReports.push(Y);break}default:M.warn(`line parsed but not handled: ${y}`);break}}}g&&!g.relurl?(l.pop(),h-=g.duration,o.partList&&(o.fragmentHint=g)):o.partList&&(Vy(E,g),E.cc=f,o.fragmentHint=E,w&&Yy(E,w,o));let R=l.length,B=l[0],P=l[R-1];if(h+=o.skippedSegments*o.targetduration,h>0&&R&&P){o.averagetargetduration=h/R;let $=P.sn;o.endSN=$!=="initSegment"?$:0,o.live||(P.endList=!0),B&&(o.startCC=B.cc)}else o.endSN=0,o.startCC=0;return o.fragmentHint&&(h+=o.fragmentHint.duration),o.totalduration=h,o.endCC=f,L>0&&uk(l,L),o}};function Gy(i,e,t){var r,s;let n=new ut(i);ai(t,n,["KEYFORMAT","KEYFORMATVERSIONS","URI","IV","URI"]);let a=(r=n.METHOD)!=null?r:"",o=n.URI,l=n.hexadecimalInteger("IV"),d=n.KEYFORMATVERSIONS,c=(s=n.KEYFORMAT)!=null?s:"identity";o&&n.IV&&!l&&M.error(`Invalid IV: ${n.IV}`);let u=o?Bs.resolve(o,e):"",h=(d||"1").split("/").map(Number).filter(Number.isFinite);return new xo(a,u,c,h,l)}function Wy(i){let t=new ut(i).decimalFloatingPoint("TIME-OFFSET");return oe(t)?t:null}function ck(i,e){["video","audio","text"].forEach(t=>{let r=i.filter(s=>ok(s,t));if(r.length){let s=r.filter(n=>n.lastIndexOf("avc1",0)===0||n.lastIndexOf("mp4a",0)===0);e[`${t}Codec`]=s.length>0?s[0]:r[0],i=i.filter(n=>r.indexOf(n)===-1)}}),e.unknownCodecs=i}function Ky(i,e,t){let r=e[t];r&&(i[t]=r)}function uk(i,e){let t=i[e];for(let r=e;r--;){let s=i[r];if(!s)return;s.programDateTime=t.programDateTime-s.duration*1e3,t=s}}function Vy(i,e){i.rawProgramDateTime?i.programDateTime=Date.parse(i.rawProgramDateTime):e!=null&&e.programDateTime&&(i.programDateTime=e.endProgramDateTime),oe(i.programDateTime)||(i.programDateTime=null,i.rawProgramDateTime=null)}function qy(i,e,t,r){i.relurl=e.URI,e.BYTERANGE&&i.setByteRange(e.BYTERANGE),i.level=t,i.sn="initSegment",r&&(i.levelkeys=r),i.initSegment=null}function Yy(i,e,t){i.levelkeys=e;let{encryptedFragments:r}=t;(!r.length||r[r.length-1].levelkeys!==e)&&Object.keys(e).some(s=>e[s].isCommonEncryption)&&r.push(i)}var Fe={MANIFEST:"manifest",LEVEL:"level",AUDIO_TRACK:"audioTrack",SUBTITLE_TRACK:"subtitleTrack"},fe={MAIN:"main",AUDIO:"audio",SUBTITLE:"subtitle"};function jy(i){let{type:e}=i;switch(e){case Fe.AUDIO_TRACK:return fe.AUDIO;case Fe.SUBTITLE_TRACK:return fe.SUBTITLE;default:return fe.MAIN}}function Ip(i,e){let t=i.url;return(t===void 0||t.indexOf("data:")===0)&&(t=e.url),t}var qp=class{constructor(e){this.hls=void 0,this.loaders=Object.create(null),this.variableList=null,this.hls=e,this.registerListeners()}startLoad(e){}stopLoad(){this.destroyInternalLoaders()}registerListeners(){let{hls:e}=this;e.on(b.MANIFEST_LOADING,this.onManifestLoading,this),e.on(b.LEVEL_LOADING,this.onLevelLoading,this),e.on(b.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),e.on(b.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this)}unregisterListeners(){let{hls:e}=this;e.off(b.MANIFEST_LOADING,this.onManifestLoading,this),e.off(b.LEVEL_LOADING,this.onLevelLoading,this),e.off(b.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),e.off(b.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this)}createInternalLoader(e){let t=this.hls.config,r=t.pLoader,s=t.loader,n=r||s,a=new n(t);return this.loaders[e.type]=a,a}getInternalLoader(e){return this.loaders[e.type]}resetInternalLoader(e){this.loaders[e]&&delete this.loaders[e]}destroyInternalLoaders(){for(let e in this.loaders){let t=this.loaders[e];t&&t.destroy(),this.resetInternalLoader(e)}}destroy(){this.variableList=null,this.unregisterListeners(),this.destroyInternalLoaders()}onManifestLoading(e,t){let{url:r}=t;this.variableList=null,this.load({id:null,level:0,responseType:"text",type:Fe.MANIFEST,url:r,deliveryDirectives:null})}onLevelLoading(e,t){let{id:r,level:s,url:n,deliveryDirectives:a}=t;this.load({id:r,level:s,responseType:"text",type:Fe.LEVEL,url:n,deliveryDirectives:a})}onAudioTrackLoading(e,t){let{id:r,groupId:s,url:n,deliveryDirectives:a}=t;this.load({id:r,groupId:s,level:null,responseType:"text",type:Fe.AUDIO_TRACK,url:n,deliveryDirectives:a})}onSubtitleTrackLoading(e,t){let{id:r,groupId:s,url:n,deliveryDirectives:a}=t;this.load({id:r,groupId:s,level:null,responseType:"text",type:Fe.SUBTITLE_TRACK,url:n,deliveryDirectives:a})}load(e){var t;let r=this.hls.config,s=this.getInternalLoader(e);if(s){let d=s.context;if(d&&d.url===e.url){M.trace("[playlist-loader]: playlist request ongoing");return}M.log(`[playlist-loader]: aborting previous loader for type: ${e.type}`),s.abort()}let n;if(e.type===Fe.MANIFEST?n=r.manifestLoadPolicy.default:n=xt({},r.playlistLoadPolicy.default,{timeoutRetry:null,errorRetry:null}),s=this.createInternalLoader(e),(t=e.deliveryDirectives)!=null&&t.part){let d;if(e.type===Fe.LEVEL&&e.level!==null?d=this.hls.levels[e.level].details:e.type===Fe.AUDIO_TRACK&&e.id!==null?d=this.hls.audioTracks[e.id].details:e.type===Fe.SUBTITLE_TRACK&&e.id!==null&&(d=this.hls.subtitleTracks[e.id].details),d){let c=d.partTarget,u=d.targetduration;if(c&&u){let h=Math.max(c*3,u*.8)*1e3;n=xt({},n,{maxTimeToFirstByteMs:Math.min(h,n.maxTimeToFirstByteMs),maxLoadTimeMs:Math.min(h,n.maxTimeToFirstByteMs)})}}}let a=n.errorRetry||n.timeoutRetry||{},o={loadPolicy:n,timeout:n.maxLoadTimeMs,maxRetry:a.maxNumRetry||0,retryDelay:a.retryDelayMs||0,maxRetryDelay:a.maxRetryDelayMs||0},l={onSuccess:(d,c,u,h)=>{let f=this.getInternalLoader(u);this.resetInternalLoader(u.type);let g=d.data;if(g.indexOf("#EXTM3U")!==0){this.handleManifestParsingError(d,u,new Error("no EXTM3U delimiter"),h||null,c);return}c.parsing.start=performance.now(),Bs.isMediaPlaylist(g)?this.handleTrackOrLevelPlaylist(d,c,u,h||null,f):this.handleMasterPlaylist(d,c,u,h)},onError:(d,c,u,h)=>{this.handleNetworkError(c,u,!1,d,h)},onTimeout:(d,c,u)=>{this.handleNetworkError(c,u,!0,void 0,d)}};s.load(e,o,l)}handleMasterPlaylist(e,t,r,s){let n=this.hls,a=e.data,o=Ip(e,r),l=Bs.parseMasterPlaylist(a,o);if(l.playlistParsingError){this.handleManifestParsingError(e,r,l.playlistParsingError,s,t);return}let{contentSteering:d,levels:c,sessionData:u,sessionKeys:h,startTimeOffset:f,variableList:g}=l;this.variableList=g;let{AUDIO:E=[],SUBTITLES:y,"CLOSED-CAPTIONS":S}=Bs.parseMasterPlaylistMedia(a,o,l);E.length&&!E.some(L=>!L.url)&&c[0].audioCodec&&!c[0].attrs.AUDIO&&(M.log("[playlist-loader]: audio codec signaled in quality level, but no embedded audio track signaled, create one"),E.unshift({type:"main",name:"main",groupId:"main",default:!1,autoselect:!1,forced:!1,id:-1,attrs:new ut({}),bitrate:0,url:""})),n.trigger(b.MANIFEST_LOADED,{levels:c,audioTracks:E,subtitles:y,captions:S,contentSteering:d,url:o,stats:t,networkDetails:s,sessionData:u,sessionKeys:h,startTimeOffset:f,variableList:g})}handleTrackOrLevelPlaylist(e,t,r,s,n){let a=this.hls,{id:o,level:l,type:d}=r,c=Ip(e,r),u=oe(o)?o:0,h=oe(l)?l:u,f=jy(r),g=Bs.parseLevelPlaylist(e.data,c,h,f,u,this.variableList);if(d===Fe.MANIFEST){let E={attrs:new ut({}),bitrate:0,details:g,name:"",url:c};a.trigger(b.MANIFEST_LOADED,{levels:[E],audioTracks:[],url:c,stats:t,networkDetails:s,sessionData:null,sessionKeys:null,contentSteering:null,startTimeOffset:null,variableList:null})}t.parsing.end=performance.now(),r.levelDetails=g,this.handlePlaylistLoaded(g,e,t,r,s,n)}handleManifestParsingError(e,t,r,s,n){this.hls.trigger(b.ERROR,{type:he.NETWORK_ERROR,details:H.MANIFEST_PARSING_ERROR,fatal:t.type===Fe.MANIFEST,url:e.url,err:r,error:r,reason:r.message,response:e,context:t,networkDetails:s,stats:n})}handleNetworkError(e,t,r=!1,s,n){let a=`A network ${r?"timeout":"error"+(s?" (status "+s.code+")":"")} occurred while loading ${e.type}`;e.type===Fe.LEVEL?a+=`: ${e.level} id: ${e.id}`:(e.type===Fe.AUDIO_TRACK||e.type===Fe.SUBTITLE_TRACK)&&(a+=` id: ${e.id} group-id: "${e.groupId}"`);let o=new Error(a);M.warn(`[playlist-loader]: ${a}`);let l=H.UNKNOWN,d=!1,c=this.getInternalLoader(e);switch(e.type){case Fe.MANIFEST:l=r?H.MANIFEST_LOAD_TIMEOUT:H.MANIFEST_LOAD_ERROR,d=!0;break;case Fe.LEVEL:l=r?H.LEVEL_LOAD_TIMEOUT:H.LEVEL_LOAD_ERROR,d=!1;break;case Fe.AUDIO_TRACK:l=r?H.AUDIO_TRACK_LOAD_TIMEOUT:H.AUDIO_TRACK_LOAD_ERROR,d=!1;break;case Fe.SUBTITLE_TRACK:l=r?H.SUBTITLE_TRACK_LOAD_TIMEOUT:H.SUBTITLE_LOAD_ERROR,d=!1;break}c&&this.resetInternalLoader(e.type);let u={type:he.NETWORK_ERROR,details:l,fatal:d,url:e.url,loader:c,context:e,error:o,networkDetails:t,stats:n};if(s){let h=(t==null?void 0:t.url)||e.url;u.response=Zt({url:h,data:void 0},s)}this.hls.trigger(b.ERROR,u)}handlePlaylistLoaded(e,t,r,s,n,a){let o=this.hls,{type:l,level:d,id:c,groupId:u,deliveryDirectives:h}=s,f=Ip(t,s),g=jy(s),E=typeof s.level=="number"&&g===fe.MAIN?d:void 0;if(!e.fragments.length){let S=new Error("No Segments found in Playlist");o.trigger(b.ERROR,{type:he.NETWORK_ERROR,details:H.LEVEL_EMPTY_ERROR,fatal:!1,url:f,error:S,reason:S.message,response:t,context:s,level:E,parent:g,networkDetails:n,stats:r});return}e.targetduration||(e.playlistParsingError=new Error("Missing Target Duration"));let y=e.playlistParsingError;if(y){o.trigger(b.ERROR,{type:he.NETWORK_ERROR,details:H.LEVEL_PARSING_ERROR,fatal:!1,url:f,error:y,reason:y.message,response:t,context:s,level:E,parent:g,networkDetails:n,stats:r});return}switch(e.live&&a&&(a.getCacheAge&&(e.ageHeader=a.getCacheAge()||0),(!a.getCacheAge||isNaN(e.ageHeader))&&(e.ageHeader=0)),l){case Fe.MANIFEST:case Fe.LEVEL:o.trigger(b.LEVEL_LOADED,{details:e,level:E||0,id:c||0,stats:r,networkDetails:n,deliveryDirectives:h});break;case Fe.AUDIO_TRACK:o.trigger(b.AUDIO_TRACK_LOADED,{details:e,id:c||0,groupId:u||"",stats:r,networkDetails:n,deliveryDirectives:h});break;case Fe.SUBTITLE_TRACK:o.trigger(b.SUBTITLE_TRACK_LOADED,{details:e,id:c||0,groupId:u||"",stats:r,networkDetails:n,deliveryDirectives:h});break}}};function MT(i,e){let t;try{t=new Event("addtrack")}catch{t=document.createEvent("Event"),t.initEvent("addtrack",!1,!1)}t.track=i,e.dispatchEvent(t)}function PT(i,e){let t=i.mode;if(t==="disabled"&&(i.mode="hidden"),i.cues&&!i.cues.getCueById(e.id))try{if(i.addCue(e),!i.cues.getCueById(e.id))throw new Error(`addCue is failed for: ${e}`)}catch(r){M.debug(`[texttrack-utils]: ${r}`);try{let s=new self.TextTrackCue(e.startTime,e.endTime,e.text);s.id=e.id,i.addCue(s)}catch(s){M.debug(`[texttrack-utils]: Legacy TextTrackCue fallback failed: ${s}`)}}t==="disabled"&&(i.mode=t)}function Jn(i){let e=i.mode;if(e==="disabled"&&(i.mode="hidden"),i.cues)for(let t=i.cues.length;t--;)i.removeCue(i.cues[t]);e==="disabled"&&(i.mode=e)}function Yp(i,e,t,r){let s=i.mode;if(s==="disabled"&&(i.mode="hidden"),i.cues&&i.cues.length>0){let n=fk(i.cues,e,t);for(let a=0;a<n.length;a++)(!r||r(n[a]))&&i.removeCue(n[a])}s==="disabled"&&(i.mode=s)}function hk(i,e){if(e<i[0].startTime)return 0;let t=i.length-1;if(e>i[t].endTime)return-1;let r=0,s=t;for(;r<=s;){let n=Math.floor((s+r)/2);if(e<i[n].startTime)s=n-1;else if(e>i[n].startTime&&r<t)r=n+1;else return n}return i[r].startTime-e<e-i[s].startTime?r:s}function fk(i,e,t){let r=[],s=hk(i,e);if(s>-1)for(let n=s,a=i.length;n<a;n++){let o=i[n];if(o.startTime>=e&&o.endTime<=t)r.push(o);else if(o.startTime>t)return r}return r}var Ki={audioId3:"org.id3",dateRange:"com.apple.quicktime.HLS",emsg:"https://aomedia.org/emsg/ID3"},mk=.25;function jp(){if(typeof self!="undefined")return self.VTTCue||self.TextTrackCue}function zy(i,e,t,r,s){let n=new i(e,t,"");try{n.value=r,s&&(n.type=s)}catch{n=new i(e,t,JSON.stringify(s?Zt({type:s},r):r))}return n}var Vc=(()=>{let i=jp();try{i&&new i(0,Number.POSITIVE_INFINITY,"")}catch{return Number.MAX_VALUE}return Number.POSITIVE_INFINITY})();function kp(i,e){return i.getTime()/1e3-e}function pk(i){return Uint8Array.from(i.replace(/^0x/,"").replace(/([\da-fA-F]{2}) ?/g,"0x$1 ").replace(/ +$/,"").split(" ")).buffer}var zp=class{constructor(e){this.hls=void 0,this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.hls=e,this._registerListeners()}destroy(){this._unregisterListeners(),this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.hls=null}_registerListeners(){let{hls:e}=this;e.on(b.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(b.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(b.MANIFEST_LOADING,this.onManifestLoading,this),e.on(b.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),e.on(b.BUFFER_FLUSHING,this.onBufferFlushing,this),e.on(b.LEVEL_UPDATED,this.onLevelUpdated,this)}_unregisterListeners(){let{hls:e}=this;e.off(b.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(b.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(b.MANIFEST_LOADING,this.onManifestLoading,this),e.off(b.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),e.off(b.BUFFER_FLUSHING,this.onBufferFlushing,this),e.off(b.LEVEL_UPDATED,this.onLevelUpdated,this)}onMediaAttached(e,t){this.media=t.media}onMediaDetaching(){this.id3Track&&(Jn(this.id3Track),this.id3Track=null,this.media=null,this.dateRangeCuesAppended={})}onManifestLoading(){this.dateRangeCuesAppended={}}createTrack(e){let t=this.getID3Track(e.textTracks);return t.mode="hidden",t}getID3Track(e){if(this.media){for(let t=0;t<e.length;t++){let r=e[t];if(r.kind==="metadata"&&r.label==="id3")return MT(r,this.media),r}return this.media.addTextTrack("metadata","id3")}}onFragParsingMetadata(e,t){if(!this.media)return;let{hls:{config:{enableEmsgMetadataCues:r,enableID3MetadataCues:s}}}=this;if(!r&&!s)return;let{samples:n}=t;this.id3Track||(this.id3Track=this.createTrack(this.media));let a=jp();if(a)for(let o=0;o<n.length;o++){let l=n[o].type;if(l===Ki.emsg&&!r||!s)continue;let d=ST(n[o].data);if(d){let c=n[o].pts,u=c+n[o].duration;u>Vc&&(u=Vc),u-c<=0&&(u=c+mk);for(let f=0;f<d.length;f++){let g=d[f];if(!AT(g)){this.updateId3CueEnds(c,l);let E=zy(a,c,u,g,l);E&&this.id3Track.addCue(E)}}}}}updateId3CueEnds(e,t){var r;let s=(r=this.id3Track)==null?void 0:r.cues;if(s)for(let n=s.length;n--;){let a=s[n];a.type===t&&a.startTime<e&&a.endTime===Vc&&(a.endTime=e)}}onBufferFlushing(e,{startOffset:t,endOffset:r,type:s}){let{id3Track:n,hls:a}=this;if(!a)return;let{config:{enableEmsgMetadataCues:o,enableID3MetadataCues:l}}=a;if(n&&(o||l)){let d;s==="audio"?d=c=>c.type===Ki.audioId3&&l:s==="video"?d=c=>c.type===Ki.emsg&&o:d=c=>c.type===Ki.audioId3&&l||c.type===Ki.emsg&&o,Yp(n,t,r,d)}}onLevelUpdated(e,{details:t}){if(!this.media||!t.hasProgramDateTime||!this.hls.config.enableDateRangeMetadataCues)return;let{dateRangeCuesAppended:r,id3Track:s}=this,{dateRanges:n}=t,a=Object.keys(n);if(s){let c=Object.keys(r).filter(u=>!a.includes(u));for(let u=c.length;u--;){let h=c[u];Object.keys(r[h].cues).forEach(f=>{s.removeCue(r[h].cues[f])}),delete r[h]}}let o=t.fragments[t.fragments.length-1];if(a.length===0||!oe(o==null?void 0:o.programDateTime))return;this.id3Track||(this.id3Track=this.createTrack(this.media));let l=o.programDateTime/1e3-o.start,d=jp();for(let c=0;c<a.length;c++){let u=a[c],h=n[u],f=r[u],g=(f==null?void 0:f.cues)||{},E=(f==null?void 0:f.durationKnown)||!1,y=kp(h.startDate,l),S=Vc,w=h.endDate;if(w)S=kp(w,l),E=!0;else if(h.endOnNext&&!E){let F=a.reduce((R,B)=>{let P=n[B];return P.class===h.class&&P.id!==B&&P.startDate>h.startDate&&R.push(P),R},[]).sort((R,B)=>R.startDate.getTime()-B.startDate.getTime())[0];F&&(S=kp(F.startDate,l),E=!0)}let L=Object.keys(h.attr);for(let F=0;F<L.length;F++){let R=L[F];if(!II(R))continue;let B=g[R];if(B)E&&!f.durationKnown&&(B.endTime=S);else if(d){let P=h.attr[R];kI(R)&&(P=pk(P));let $=zy(d,y,S,{key:R,data:P},Ki.dateRange);$&&($.id=u,this.id3Track.addCue($),g[R]=$)}}r[u]={cues:g,dateRange:h,durationKnown:E}}}},Xp=class{constructor(e){this.hls=void 0,this.config=void 0,this.media=null,this.levelDetails=null,this.currentTime=0,this.stallCount=0,this._latency=null,this.timeupdateHandler=()=>this.timeupdate(),this.hls=e,this.config=e.config,this.registerListeners()}get latency(){return this._latency||0}get maxLatency(){let{config:e,levelDetails:t}=this;return e.liveMaxLatencyDuration!==void 0?e.liveMaxLatencyDuration:t?e.liveMaxLatencyDurationCount*t.targetduration:0}get targetLatency(){let{levelDetails:e}=this;if(e===null)return null;let{holdBack:t,partHoldBack:r,targetduration:s}=e,{liveSyncDuration:n,liveSyncDurationCount:a,lowLatencyMode:o}=this.config,l=this.hls.userConfig,d=o&&r||t;(l.liveSyncDuration||l.liveSyncDurationCount||d===0)&&(d=n!==void 0?n:a*s);let c=s,u=1;return d+Math.min(this.stallCount*u,c)}get liveSyncPosition(){let e=this.estimateLiveEdge(),t=this.targetLatency,r=this.levelDetails;if(e===null||t===null||r===null)return null;let s=r.edge,n=e-t-this.edgeStalled,a=s-r.totalduration,o=s-(this.config.lowLatencyMode&&r.partTarget||r.targetduration);return Math.min(Math.max(a,n),o)}get drift(){let{levelDetails:e}=this;return e===null?1:e.drift}get edgeStalled(){let{levelDetails:e}=this;if(e===null)return 0;let t=(this.config.lowLatencyMode&&e.partTarget||e.targetduration)*3;return Math.max(e.age-t,0)}get forwardBufferLength(){let{media:e,levelDetails:t}=this;if(!e||!t)return 0;let r=e.buffered.length;return(r?e.buffered.end(r-1):t.edge)-this.currentTime}destroy(){this.unregisterListeners(),this.onMediaDetaching(),this.levelDetails=null,this.hls=this.timeupdateHandler=null}registerListeners(){this.hls.on(b.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.on(b.MEDIA_DETACHING,this.onMediaDetaching,this),this.hls.on(b.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.on(b.LEVEL_UPDATED,this.onLevelUpdated,this),this.hls.on(b.ERROR,this.onError,this)}unregisterListeners(){this.hls.off(b.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.off(b.MEDIA_DETACHING,this.onMediaDetaching,this),this.hls.off(b.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.off(b.LEVEL_UPDATED,this.onLevelUpdated,this),this.hls.off(b.ERROR,this.onError,this)}onMediaAttached(e,t){this.media=t.media,this.media.addEventListener("timeupdate",this.timeupdateHandler)}onMediaDetaching(){this.media&&(this.media.removeEventListener("timeupdate",this.timeupdateHandler),this.media=null)}onManifestLoading(){this.levelDetails=null,this._latency=null,this.stallCount=0}onLevelUpdated(e,{details:t}){this.levelDetails=t,t.advanced&&this.timeupdate(),!t.live&&this.media&&this.media.removeEventListener("timeupdate",this.timeupdateHandler)}onError(e,t){var r;t.details===H.BUFFER_STALLED_ERROR&&(this.stallCount++,(r=this.levelDetails)!=null&&r.live&&M.warn("[playback-rate-controller]: Stall detected, adjusting target latency"))}timeupdate(){let{media:e,levelDetails:t}=this;if(!e||!t)return;this.currentTime=e.currentTime;let r=this.computeLatency();if(r===null)return;this._latency=r;let{lowLatencyMode:s,maxLiveSyncPlaybackRate:n}=this.config;if(!s||n===1)return;let a=this.targetLatency;if(a===null)return;let o=r-a,l=Math.min(this.maxLatency,a+t.targetduration),d=o<l;if(t.live&&d&&o>.05&&this.forwardBufferLength>1){let c=Math.min(2,Math.max(1,n)),u=Math.round(2/(1+Math.exp(-.75*o-this.edgeStalled))*20)/20;e.playbackRate=Math.min(c,Math.max(1,u))}else e.playbackRate!==1&&e.playbackRate!==0&&(e.playbackRate=1)}estimateLiveEdge(){let{levelDetails:e}=this;return e===null?null:e.edge+e.age}computeLatency(){let e=this.estimateLiveEdge();return e===null?null:e-this.currentTime}},Qp=["NONE","TYPE-0","TYPE-1",null],_o={No:"",Yes:"YES",v2:"v2"};function gk(i,e){let{canSkipUntil:t,canSkipDateRanges:r,endSN:s}=i,n=e!==void 0?e-s:0;return t&&n<t?r?_o.v2:_o.Yes:_o.No}var su=class{constructor(e,t,r){this.msn=void 0,this.part=void 0,this.skip=void 0,this.msn=e,this.part=t,this.skip=r}addDirectives(e){let t=new self.URL(e);return this.msn!==void 0&&t.searchParams.set("_HLS_msn",this.msn.toString()),this.part!==void 0&&t.searchParams.set("_HLS_part",this.part.toString()),this.skip&&t.searchParams.set("_HLS_skip",this.skip),t.href}},Gs=class{constructor(e){this._attrs=void 0,this.audioCodec=void 0,this.bitrate=void 0,this.codecSet=void 0,this.height=void 0,this.id=void 0,this.name=void 0,this.videoCodec=void 0,this.width=void 0,this.unknownCodecs=void 0,this.audioGroupIds=void 0,this.details=void 0,this.fragmentError=0,this.loadError=0,this.loaded=void 0,this.realBitrate=0,this.textGroupIds=void 0,this.url=void 0,this._urlId=0,this.url=[e.url],this._attrs=[e.attrs],this.bitrate=e.bitrate,e.details&&(this.details=e.details),this.id=e.id||0,this.name=e.name,this.width=e.width||0,this.height=e.height||0,this.audioCodec=e.audioCodec,this.videoCodec=e.videoCodec,this.unknownCodecs=e.unknownCodecs,this.codecSet=[e.videoCodec,e.audioCodec].filter(t=>t).join(",").replace(/\.[^.,]+/g,"")}get maxBitrate(){return Math.max(this.realBitrate,this.bitrate)}get attrs(){return this._attrs[this._urlId]}get pathwayId(){return this.attrs["PATHWAY-ID"]||"."}get uri(){return this.url[this._urlId]||""}get urlId(){return this._urlId}set urlId(e){let t=e%this.url.length;this._urlId!==t&&(this.fragmentError=0,this.loadError=0,this.details=void 0,this._urlId=t)}get audioGroupId(){var e;return(e=this.audioGroupIds)==null?void 0:e[this.urlId]}get textGroupId(){var e;return(e=this.textGroupIds)==null?void 0:e[this.urlId]}addFallback(e){this.url.push(e.url),this._attrs.push(e.attrs)}};function Lp(i,e){let t=e.startPTS;if(oe(t)){let r=0,s;e.sn>i.sn?(r=t-i.start,s=i):(r=i.start-t,s=e),s.duration!==r&&(s.duration=r)}else e.sn>i.sn?i.cc===e.cc&&i.minEndPTS?e.start=i.start+(i.minEndPTS-i.start):e.start=i.start+i.duration:e.start=Math.max(i.start-e.duration,0)}function OT(i,e,t,r,s,n){r-t<=0&&(M.warn("Fragment should have a positive duration",e),r=t+e.duration,n=s+e.duration);let o=t,l=r,d=e.startPTS,c=e.endPTS;if(oe(d)){let y=Math.abs(d-t);oe(e.deltaPTS)?e.deltaPTS=Math.max(y,e.deltaPTS):e.deltaPTS=y,o=Math.max(t,d),t=Math.min(t,d),s=Math.min(s,e.startDTS),l=Math.min(r,c),r=Math.max(r,c),n=Math.max(n,e.endDTS)}let u=t-e.start;e.start!==0&&(e.start=t),e.duration=r-e.start,e.startPTS=t,e.maxStartPTS=o,e.startDTS=s,e.endPTS=r,e.minEndPTS=l,e.endDTS=n;let h=e.sn;if(!i||h<i.startSN||h>i.endSN)return 0;let f,g=h-i.startSN,E=i.fragments;for(E[g]=e,f=g;f>0;f--)Lp(E[f],E[f-1]);for(f=g;f<E.length-1;f++)Lp(E[f],E[f+1]);return i.fragmentHint&&Lp(E[E.length-1],i.fragmentHint),i.PTSKnown=i.alignedSliding=!0,u}function vk(i,e){let t=null,r=i.fragments;for(let l=r.length-1;l>=0;l--){let d=r[l].initSegment;if(d){t=d;break}}i.fragmentHint&&delete i.fragmentHint.endPTS;let s=0,n;if(yk(i,e,(l,d)=>{l.relurl&&(s=l.cc-d.cc),oe(l.startPTS)&&oe(l.endPTS)&&(d.start=d.startPTS=l.startPTS,d.startDTS=l.startDTS,d.maxStartPTS=l.maxStartPTS,d.endPTS=l.endPTS,d.endDTS=l.endDTS,d.minEndPTS=l.minEndPTS,d.duration=l.endPTS-l.startPTS,d.duration&&(n=d),e.PTSKnown=e.alignedSliding=!0),d.elementaryStreams=l.elementaryStreams,d.loader=l.loader,d.stats=l.stats,d.urlId=l.urlId,l.initSegment&&(d.initSegment=l.initSegment,t=l.initSegment)}),t&&(e.fragmentHint?e.fragments.concat(e.fragmentHint):e.fragments).forEach(d=>{var c;(!d.initSegment||d.initSegment.relurl===((c=t)==null?void 0:c.relurl))&&(d.initSegment=t)}),e.skippedSegments)if(e.deltaUpdateFailed=e.fragments.some(l=>!l),e.deltaUpdateFailed){M.warn("[level-helper] Previous playlist missing segments skipped in delta playlist");for(let l=e.skippedSegments;l--;)e.fragments.shift();e.startSN=e.fragments[0].sn,e.startCC=e.fragments[0].cc}else e.canSkipDateRanges&&(e.dateRanges=Ek(i.dateRanges,e.dateRanges,e.recentlyRemovedDateranges));let a=e.fragments;if(s){M.warn("discontinuity sliding from playlist, take drift into account");for(let l=0;l<a.length;l++)a[l].cc+=s}e.skippedSegments&&(e.startCC=e.fragments[0].cc),bk(i.partList,e.partList,(l,d)=>{d.elementaryStreams=l.elementaryStreams,d.stats=l.stats}),n?OT(e,n,n.startPTS,n.endPTS,n.startDTS,n.endDTS):NT(i,e),a.length&&(e.totalduration=e.edge-a[0].start),e.driftStartTime=i.driftStartTime,e.driftStart=i.driftStart;let o=e.advancedDateTime;if(e.advanced&&o){let l=e.edge;e.driftStart||(e.driftStartTime=o,e.driftStart=l),e.driftEndTime=o,e.driftEnd=l}else e.driftEndTime=i.driftEndTime,e.driftEnd=i.driftEnd,e.advancedDateTime=i.advancedDateTime}function Ek(i,e,t){let r=xt({},i);return t&&t.forEach(s=>{delete r[s]}),Object.keys(e).forEach(s=>{let n=new eu(e[s].attr,r[s]);n.isValid?r[s]=n:M.warn(`Ignoring invalid Playlist Delta Update DATERANGE tag: "${JSON.stringify(e[s].attr)}"`)}),r}function bk(i,e,t){if(i&&e){let r=0;for(let s=0,n=i.length;s<=n;s++){let a=i[s],o=e[s+r];a&&o&&a.index===o.index&&a.fragment.sn===o.fragment.sn?t(a,o):r--}}}function yk(i,e,t){let r=e.skippedSegments,s=Math.max(i.startSN,e.startSN)-e.startSN,n=(i.fragmentHint?1:0)+(r?e.endSN:Math.min(i.endSN,e.endSN))-e.startSN,a=e.startSN-i.startSN,o=e.fragmentHint?e.fragments.concat(e.fragmentHint):e.fragments,l=i.fragmentHint?i.fragments.concat(i.fragmentHint):i.fragments;for(let d=s;d<=n;d++){let c=l[a+d],u=o[d];r&&!u&&d<r&&(u=e.fragments[d]=c),c&&u&&t(c,u)}}function NT(i,e){let t=e.startSN+e.skippedSegments-i.startSN,r=i.fragments;t<0||t>=r.length||Zp(e,r[t].start)}function Zp(i,e){if(e){let t=i.fragments;for(let r=i.skippedSegments;r<t.length;r++)t[r].start+=e;i.fragmentHint&&(i.fragmentHint.start+=e)}}function Tk(i,e=1/0){let t=1e3*i.targetduration;if(i.updated){let r=i.fragments,s=4;if(r.length&&t*s>e){let n=r[r.length-1].duration*1e3;n<t&&(t=n)}}else t/=2;return Math.round(t)}function _k(i,e,t){if(!(i!=null&&i.details))return null;let r=i.details,s=r.fragments[e-r.startSN];return s||(s=r.fragmentHint,s&&s.sn===e)?s:e<r.startSN&&t&&t.sn===e?t:null}function Xy(i,e,t){var r;return i!=null&&i.details?UT((r=i.details)==null?void 0:r.partList,e,t):null}function UT(i,e,t){if(i)for(let r=i.length;r--;){let s=i[r];if(s.index===t&&s.fragment.sn===e)return s}return null}function nu(i){switch(i.details){case H.FRAG_LOAD_TIMEOUT:case H.KEY_LOAD_TIMEOUT:case H.LEVEL_LOAD_TIMEOUT:case H.MANIFEST_LOAD_TIMEOUT:return!0}return!1}function Qy(i,e){let t=nu(e);return i.default[`${t?"timeout":"error"}Retry`]}function Yg(i,e){let t=i.backoff==="linear"?1:Math.pow(2,e);return Math.min(t*i.retryDelayMs,i.maxRetryDelayMs)}function Zy(i){return Zt(Zt({},i),{errorRetry:null,timeoutRetry:null})}function au(i,e,t,r){return!!i&&e<i.maxNumRetry&&(Ak(r)||!!t)}function Ak(i){return i===0&&navigator.onLine===!1||!!i&&(i<400||i>499)}var FT={search:function(i,e){let t=0,r=i.length-1,s=null,n=null;for(;t<=r;){s=(t+r)/2|0,n=i[s];let a=e(n);if(a>0)t=s+1;else if(a<0)r=s-1;else return n}return null}};function Sk(i,e,t){if(e===null||!Array.isArray(i)||!i.length||!oe(e))return null;let r=i[0].programDateTime;if(e<(r||0))return null;let s=i[i.length-1].endProgramDateTime;if(e>=(s||0))return null;t=t||0;for(let n=0;n<i.length;++n){let a=i[n];if(xk(e,t,a))return a}return null}function Io(i,e,t=0,r=0){let s=null;if(i?s=e[i.sn-e[0].sn+1]||null:t===0&&e[0].start===0&&(s=e[0]),s&&Jp(t,r,s)===0)return s;let n=FT.search(e,Jp.bind(null,t,r));return n&&(n!==i||!s)?n:s}function Jp(i=0,e=0,t){if(t.start<=i&&t.start+t.duration>i)return 0;let r=Math.min(e,t.duration+(t.deltaPTS?t.deltaPTS:0));return t.start+t.duration-r<=i?1:t.start-r>i&&t.start?-1:0}function xk(i,e,t){let r=Math.min(e,t.duration+(t.deltaPTS?t.deltaPTS:0))*1e3;return(t.endProgramDateTime||0)-r>i}function Ik(i,e){return FT.search(i,t=>t.cc<e?1:t.cc>e?-1:0)}var kk=3e5,Yt={DoNothing:0,SendEndCallback:1,SendAlternateToPenaltyBox:2,RemoveAlternatePermanently:3,InsertDiscontinuity:4,RetryRequest:5},Si={None:0,MoveAllAlternatesMatchingHost:1,MoveAllAlternatesMatchingHDCP:2,SwitchToSDR:4},eg=class{constructor(e){this.hls=void 0,this.playlistError=0,this.penalizedRenditions={},this.log=void 0,this.warn=void 0,this.error=void 0,this.hls=e,this.log=M.log.bind(M,"[info]:"),this.warn=M.warn.bind(M,"[warning]:"),this.error=M.error.bind(M,"[error]:"),this.registerListeners()}registerListeners(){let e=this.hls;e.on(b.ERROR,this.onError,this),e.on(b.MANIFEST_LOADING,this.onManifestLoading,this),e.on(b.LEVEL_UPDATED,this.onLevelUpdated,this)}unregisterListeners(){let e=this.hls;e&&(e.off(b.ERROR,this.onError,this),e.off(b.ERROR,this.onErrorOut,this),e.off(b.MANIFEST_LOADING,this.onManifestLoading,this),e.off(b.LEVEL_UPDATED,this.onLevelUpdated,this))}destroy(){this.unregisterListeners(),this.hls=null,this.penalizedRenditions={}}startLoad(e){this.playlistError=0}stopLoad(){}getVariantLevelIndex(e){return(e==null?void 0:e.type)===fe.MAIN?e.level:this.hls.loadLevel}onManifestLoading(){this.playlistError=0,this.penalizedRenditions={}}onLevelUpdated(){this.playlistError=0}onError(e,t){var r,s;if(t.fatal)return;let n=this.hls,a=t.context;switch(t.details){case H.FRAG_LOAD_ERROR:case H.FRAG_LOAD_TIMEOUT:case H.KEY_LOAD_ERROR:case H.KEY_LOAD_TIMEOUT:t.errorAction=this.getFragRetryOrSwitchAction(t);return;case H.FRAG_PARSING_ERROR:if((r=t.frag)!=null&&r.gap){t.errorAction={action:Yt.DoNothing,flags:Si.None};return}case H.FRAG_GAP:case H.FRAG_DECRYPT_ERROR:{t.errorAction=this.getFragRetryOrSwitchAction(t),t.errorAction.action=Yt.SendAlternateToPenaltyBox;return}case H.LEVEL_EMPTY_ERROR:case H.LEVEL_PARSING_ERROR:{var o,l;let d=t.parent===fe.MAIN?t.level:n.loadLevel;t.details===H.LEVEL_EMPTY_ERROR&&((o=t.context)!=null&&(l=o.levelDetails)!=null&&l.live)?t.errorAction=this.getPlaylistRetryOrSwitchAction(t,d):(t.levelRetry=!1,t.errorAction=this.getLevelSwitchAction(t,d))}return;case H.LEVEL_LOAD_ERROR:case H.LEVEL_LOAD_TIMEOUT:typeof(a==null?void 0:a.level)=="number"&&(t.errorAction=this.getPlaylistRetryOrSwitchAction(t,a.level));return;case H.AUDIO_TRACK_LOAD_ERROR:case H.AUDIO_TRACK_LOAD_TIMEOUT:case H.SUBTITLE_LOAD_ERROR:case H.SUBTITLE_TRACK_LOAD_TIMEOUT:if(a){let d=n.levels[n.loadLevel];if(d&&(a.type===Fe.AUDIO_TRACK&&a.groupId===d.audioGroupId||a.type===Fe.SUBTITLE_TRACK&&a.groupId===d.textGroupId)){t.errorAction=this.getPlaylistRetryOrSwitchAction(t,n.loadLevel),t.errorAction.action=Yt.SendAlternateToPenaltyBox,t.errorAction.flags=Si.MoveAllAlternatesMatchingHost;return}}return;case H.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED:{let d=n.levels[n.loadLevel],c=d==null?void 0:d.attrs["HDCP-LEVEL"];c&&(t.errorAction={action:Yt.SendAlternateToPenaltyBox,flags:Si.MoveAllAlternatesMatchingHDCP,hdcpLevel:c})}return;case H.BUFFER_ADD_CODEC_ERROR:case H.REMUX_ALLOC_ERROR:t.errorAction=this.getLevelSwitchAction(t,(s=t.level)!=null?s:n.loadLevel);return;case H.INTERNAL_EXCEPTION:case H.BUFFER_APPENDING_ERROR:case H.BUFFER_APPEND_ERROR:case H.BUFFER_FULL_ERROR:case H.LEVEL_SWITCH_ERROR:case H.BUFFER_STALLED_ERROR:case H.BUFFER_SEEK_OVER_HOLE:case H.BUFFER_NUDGE_ON_STALL:t.errorAction={action:Yt.DoNothing,flags:Si.None};return}if(t.type===he.KEY_SYSTEM_ERROR){let d=this.getVariantLevelIndex(t.frag);t.levelRetry=!1,t.errorAction=this.getLevelSwitchAction(t,d);return}}getPlaylistRetryOrSwitchAction(e,t){var r;let s=this.hls,n=Qy(s.config.playlistLoadPolicy,e),a=this.playlistError++,o=(r=e.response)==null?void 0:r.code;if(au(n,a,nu(e),o))return{action:Yt.RetryRequest,flags:Si.None,retryConfig:n,retryCount:a};let d=this.getLevelSwitchAction(e,t);return n&&(d.retryConfig=n,d.retryCount=a),d}getFragRetryOrSwitchAction(e){let t=this.hls,r=this.getVariantLevelIndex(e.frag),s=t.levels[r],{fragLoadPolicy:n,keyLoadPolicy:a}=t.config,o=Qy(e.details.startsWith("key")?a:n,e),l=t.levels.reduce((u,h)=>u+h.fragmentError,0);if(s){var d;e.details!==H.FRAG_GAP&&s.fragmentError++;let u=(d=e.response)==null?void 0:d.code;if(au(o,l,nu(e),u))return{action:Yt.RetryRequest,flags:Si.None,retryConfig:o,retryCount:l}}let c=this.getLevelSwitchAction(e,r);return o&&(c.retryConfig=o,c.retryCount=l),c}getLevelSwitchAction(e,t){let r=this.hls;t==null&&(t=r.loadLevel);let s=this.hls.levels[t];if(s&&(s.loadError++,r.autoLevelEnabled)){var n,a;let o=-1,{levels:l,loadLevel:d,minAutoLevel:c,maxAutoLevel:u}=r,h=(n=e.frag)==null?void 0:n.type,{type:f,groupId:g}=(a=e.context)!=null?a:{};for(let E=l.length;E--;){let y=(E+d)%l.length;if(y!==d&&y>=c&&y<=u&&l[y].loadError===0){let S=l[y];if(e.details===H.FRAG_GAP&&e.frag){let w=l[y].details;if(w){let L=Io(e.frag,w.fragments,e.frag.start);if(L!=null&&L.gap)continue}}else{if(f===Fe.AUDIO_TRACK&&g===S.audioGroupId||f===Fe.SUBTITLE_TRACK&&g===S.textGroupId)continue;if(h===fe.AUDIO&&s.audioGroupId===S.audioGroupId||h===fe.SUBTITLE&&s.textGroupId===S.textGroupId)continue}o=y;break}}if(o>-1&&r.loadLevel!==o)return e.levelRetry=!0,this.playlistError=0,{action:Yt.SendAlternateToPenaltyBox,flags:Si.None,nextAutoLevel:o}}return{action:Yt.SendAlternateToPenaltyBox,flags:Si.MoveAllAlternatesMatchingHost}}onErrorOut(e,t){var r;switch((r=t.errorAction)==null?void 0:r.action){case Yt.DoNothing:break;case Yt.SendAlternateToPenaltyBox:this.sendAlternateToPenaltyBox(t),!t.errorAction.resolved&&t.details!==H.FRAG_GAP&&(t.fatal=!0);break}if(t.fatal){this.hls.stopLoad();return}}sendAlternateToPenaltyBox(e){let t=this.hls,r=e.errorAction;if(!r)return;let{flags:s,hdcpLevel:n,nextAutoLevel:a}=r;switch(s){case Si.None:this.switchLevel(e,a);break;case Si.MoveAllAlternatesMatchingHost:r.resolved||(r.resolved=this.redundantFailover(e));break;case Si.MoveAllAlternatesMatchingHDCP:n&&(t.maxHdcpLevel=Qp[Qp.indexOf(n)-1],r.resolved=!0),this.warn(`Restricting playback to HDCP-LEVEL of "${t.maxHdcpLevel}" or lower`);break}r.resolved||this.switchLevel(e,a)}switchLevel(e,t){t!==void 0&&e.errorAction&&(this.warn(`switching to level ${t} after ${e.details}`),this.hls.nextAutoLevel=t,e.errorAction.resolved=!0,this.hls.nextLoadLevel=this.hls.nextAutoLevel)}redundantFailover(e){let{hls:t,penalizedRenditions:r}=this,s=e.parent===fe.MAIN?e.level:t.loadLevel,n=t.levels[s],a=n.url.length,o=e.frag?e.frag.urlId:n.urlId;n.urlId===o&&(!e.frag||n.details)&&this.penalizeRendition(n,e);for(let l=1;l<a;l++){let d=(o+l)%a,c=r[d];if(!c||Lk(c,e,r[o]))return this.warn(`Switching to Redundant Stream ${d+1}/${a}: "${n.url[d]}" after ${e.details}`),this.playlistError=0,t.levels.forEach(u=>{u.urlId=d}),t.nextLoadLevel=s,!0}return!1}penalizeRendition(e,t){let{penalizedRenditions:r}=this,s=r[e.urlId]||{lastErrorPerfMs:0,errors:[],details:void 0};s.lastErrorPerfMs=performance.now(),s.errors.push(t),s.details=e.details,r[e.urlId]=s}};function Lk(i,e,t){if(performance.now()-i.lastErrorPerfMs>kk)return!0;let r=i.details;if(e.details===H.FRAG_GAP&&r&&e.frag){let s=e.frag.start,n=Io(null,r.fragments,s);if(n&&!n.gap)return!0}if(t&&i.errors.length<t.errors.length){let s=i.errors[i.errors.length-1];if(r&&s.frag&&e.frag&&Math.abs(s.frag.start-e.frag.start)>r.targetduration*3)return!0}return!1}var ko=class{constructor(e,t){this.hls=void 0,this.timer=-1,this.requestScheduled=-1,this.canLoad=!1,this.log=void 0,this.warn=void 0,this.log=M.log.bind(M,`${t}:`),this.warn=M.warn.bind(M,`${t}:`),this.hls=e}destroy(){this.clearTimer(),this.hls=this.log=this.warn=null}clearTimer(){clearTimeout(this.timer),this.timer=-1}startLoad(){this.canLoad=!0,this.requestScheduled=-1,this.loadPlaylist()}stopLoad(){this.canLoad=!1,this.clearTimer()}switchParams(e,t){let r=t==null?void 0:t.renditionReports;if(r){let s=-1;for(let n=0;n<r.length;n++){let a=r[n],o;try{o=new self.URL(a.URI,t.url).href}catch(l){M.warn(`Could not construct new URL for Rendition Report: ${l}`),o=a.URI||""}if(o===e){s=n;break}else o===e.substring(0,o.length)&&(s=n)}if(s!==-1){let n=r[s],a=parseInt(n["LAST-MSN"])||(t==null?void 0:t.lastPartSn),o=parseInt(n["LAST-PART"])||(t==null?void 0:t.lastPartIndex);if(this.hls.config.lowLatencyMode){let l=Math.min(t.age-t.partTarget,t.targetduration);o>=0&&l>t.partTarget&&(o+=1)}return new su(a,o>=0?o:void 0,_o.No)}}}loadPlaylist(e){this.requestScheduled===-1&&(this.requestScheduled=self.performance.now())}shouldLoadPlaylist(e){return this.canLoad&&!!e&&!!e.url&&(!e.details||e.details.live)}shouldReloadPlaylist(e){return this.timer===-1&&this.requestScheduled===-1&&this.shouldLoadPlaylist(e)}playlistLoaded(e,t,r){let{details:s,stats:n}=t,a=self.performance.now(),o=n.loading.first?Math.max(0,a-n.loading.first):0;if(s.advancedDateTime=Date.now()-o,s.live||r!=null&&r.live){if(s.reloaded(r),r&&this.log(`live playlist ${e} ${s.advanced?"REFRESHED "+s.lastPartSn+"-"+s.lastPartIndex:s.updated?"UPDATED":"MISSED"}`),r&&s.fragments.length>0&&vk(r,s),!this.canLoad||!s.live)return;let l,d,c;if(s.canBlockReload&&s.endSN&&s.advanced){let y=this.hls.config.lowLatencyMode,S=s.lastPartSn,w=s.endSN,L=s.lastPartIndex,F=L!==-1,R=S===w,B=y?0:L;F?(d=R?w+1:S,c=R?B:L+1):d=w+1;let P=s.age,$=P+s.ageHeader,K=Math.min($-s.partTarget,s.targetduration*1.5);if(K>0){if(r&&K>r.tuneInGoal)this.warn(`CDN Tune-in goal increased from: ${r.tuneInGoal} to: ${K} with playlist age: ${s.age}`),K=0;else{let N=Math.floor(K/s.targetduration);if(d+=N,c!==void 0){let z=Math.round(K%s.targetduration/s.partTarget);c+=z}this.log(`CDN Tune-in age: ${s.ageHeader}s last advanced ${P.toFixed(2)}s goal: ${K} skip sn ${N} to part ${c}`)}s.tuneInGoal=K}if(l=this.getDeliveryDirectives(s,t.deliveryDirectives,d,c),y||!R){this.loadPlaylist(l);return}}else(s.canBlockReload||s.canSkipUntil)&&(l=this.getDeliveryDirectives(s,t.deliveryDirectives,d,c));let u=this.hls.mainForwardBufferInfo,h=u?u.end-u.len:0,f=(s.edge-h)*1e3,g=Tk(s,f);s.updated&&a>this.requestScheduled+g&&(this.requestScheduled=n.loading.start),d!==void 0&&s.canBlockReload?this.requestScheduled=n.loading.first+g-(s.partTarget*1e3||1e3):this.requestScheduled===-1||this.requestScheduled+g<a?this.requestScheduled=a:this.requestScheduled-a<=0&&(this.requestScheduled+=g);let E=this.requestScheduled-a;E=Math.max(0,E),this.log(`reload live playlist ${e} in ${Math.round(E)} ms`),this.timer=self.setTimeout(()=>this.loadPlaylist(l),E)}else this.clearTimer()}getDeliveryDirectives(e,t,r,s){let n=gk(e,r);return t!=null&&t.skip&&e.deltaUpdateFailed&&(r=t.msn,s=t.part,n=_o.No),new su(r,s,n)}checkRetry(e){let t=e.details,r=nu(e),s=e.errorAction,{action:n,retryCount:a=0,retryConfig:o}=s||{},l=!!s&&!!o&&(n===Yt.RetryRequest||!s.resolved&&n===Yt.SendAlternateToPenaltyBox);if(l){var d;if(this.requestScheduled=-1,a>=o.maxNumRetry)return!1;if(r&&(d=e.context)!=null&&d.deliveryDirectives)this.warn(`Retrying playlist loading ${a+1}/${o.maxNumRetry} after "${t}" without delivery-directives`),this.loadPlaylist();else{let c=Yg(o,a);this.timer=self.setTimeout(()=>this.loadPlaylist(),c),this.warn(`Retrying playlist loading ${a+1}/${o.maxNumRetry} after "${t}" in ${c}ms`)}e.levelRetry=!0,s.resolved=!0}return l}},Rp,tg=class extends ko{constructor(e,t){super(e,"[level-controller]"),this._levels=[],this._firstLevel=-1,this._startLevel=void 0,this.currentLevel=null,this.currentLevelIndex=-1,this.manualLevelIndex=-1,this.steering=void 0,this.onParsedComplete=void 0,this.steering=t,this._registerListeners()}_registerListeners(){let{hls:e}=this;e.on(b.MANIFEST_LOADING,this.onManifestLoading,this),e.on(b.MANIFEST_LOADED,this.onManifestLoaded,this),e.on(b.LEVEL_LOADED,this.onLevelLoaded,this),e.on(b.LEVELS_UPDATED,this.onLevelsUpdated,this),e.on(b.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),e.on(b.FRAG_LOADED,this.onFragLoaded,this),e.on(b.ERROR,this.onError,this)}_unregisterListeners(){let{hls:e}=this;e.off(b.MANIFEST_LOADING,this.onManifestLoading,this),e.off(b.MANIFEST_LOADED,this.onManifestLoaded,this),e.off(b.LEVEL_LOADED,this.onLevelLoaded,this),e.off(b.LEVELS_UPDATED,this.onLevelsUpdated,this),e.off(b.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),e.off(b.FRAG_LOADED,this.onFragLoaded,this),e.off(b.ERROR,this.onError,this)}destroy(){this._unregisterListeners(),this.steering=null,this.resetLevels(),super.destroy()}startLoad(){this._levels.forEach(t=>{t.loadError=0,t.fragmentError=0}),super.startLoad()}resetLevels(){this._startLevel=void 0,this.manualLevelIndex=-1,this.currentLevelIndex=-1,this.currentLevel=null,this._levels=[]}onManifestLoading(e,t){this.resetLevels()}onManifestLoaded(e,t){let r=[],s={},n;t.levels.forEach(a=>{var o;let l=a.attrs;((o=a.audioCodec)==null?void 0:o.indexOf("mp4a.40.34"))!==-1&&(Rp||(Rp=/chrome|firefox/i.test(navigator.userAgent)),Rp&&(a.audioCodec=void 0));let{AUDIO:d,CODECS:c,"FRAME-RATE":u,"PATHWAY-ID":h,RESOLUTION:f,SUBTITLES:g}=l,y=`${`${h||"."}-`}${a.bitrate}-${f}-${u}-${c}`;n=s[y],n?n.addFallback(a):(n=new Gs(a),s[y]=n,r.push(n)),ou(n,"audio",d),ou(n,"text",g)}),this.filterAndSortMediaOptions(r,t)}filterAndSortMediaOptions(e,t){let r=[],s=[],n=!1,a=!1,o=!1,l=e.filter(({audioCodec:f,videoCodec:g,width:E,height:y,unknownCodecs:S})=>(n||(n=!!(E&&y)),a||(a=!!g),o||(o=!!f),!(S!=null&&S.length)&&(!f||xp(f,"audio"))&&(!g||xp(g,"video"))));if((n||a)&&o&&(l=l.filter(({videoCodec:f,width:g,height:E})=>!!f||!!(g&&E))),l.length===0){Promise.resolve().then(()=>{if(this.hls){let f=new Error("no level with compatible codecs found in manifest");this.hls.trigger(b.ERROR,{type:he.MEDIA_ERROR,details:H.MANIFEST_INCOMPATIBLE_CODECS_ERROR,fatal:!0,url:t.url,error:f,reason:f.message})}});return}t.audioTracks&&(r=t.audioTracks.filter(f=>!f.audioCodec||xp(f.audioCodec,"audio")),Jy(r)),t.subtitles&&(s=t.subtitles,Jy(s));let d=l.slice(0);l.sort((f,g)=>f.attrs["HDCP-LEVEL"]!==g.attrs["HDCP-LEVEL"]?(f.attrs["HDCP-LEVEL"]||"")>(g.attrs["HDCP-LEVEL"]||"")?1:-1:f.bitrate!==g.bitrate?f.bitrate-g.bitrate:f.attrs["FRAME-RATE"]!==g.attrs["FRAME-RATE"]?f.attrs.decimalFloatingPoint("FRAME-RATE")-g.attrs.decimalFloatingPoint("FRAME-RATE"):f.attrs.SCORE!==g.attrs.SCORE?f.attrs.decimalFloatingPoint("SCORE")-g.attrs.decimalFloatingPoint("SCORE"):n&&f.height!==g.height?f.height-g.height:0);let c=d[0];if(this.steering&&(l=this.steering.filterParsedLevels(l),l.length!==d.length)){for(let f=0;f<d.length;f++)if(d[f].pathwayId===l[0].pathwayId){c=d[f];break}}this._levels=l;for(let f=0;f<l.length;f++)if(l[f]===c){this._firstLevel=f,this.log(`manifest loaded, ${l.length} level(s) found, first bitrate: ${c.bitrate}`);break}let u=o&&!a,h={levels:l,audioTracks:r,subtitleTracks:s,sessionData:t.sessionData,sessionKeys:t.sessionKeys,firstLevel:this._firstLevel,stats:t.stats,audio:o,video:a,altAudio:!u&&r.some(f=>!!f.url)};this.hls.trigger(b.MANIFEST_PARSED,h),(this.hls.config.autoStartLoad||this.hls.forceStartLoad)&&this.hls.startLoad(this.hls.config.startPosition)}get levels(){return this._levels.length===0?null:this._levels}get level(){return this.currentLevelIndex}set level(e){let t=this._levels;if(t.length===0)return;if(e<0||e>=t.length){let c=new Error("invalid level idx"),u=e<0;if(this.hls.trigger(b.ERROR,{type:he.OTHER_ERROR,details:H.LEVEL_SWITCH_ERROR,level:e,fatal:u,error:c,reason:c.message}),u)return;e=Math.min(e,t.length-1)}let r=this.currentLevelIndex,s=this.currentLevel,n=s?s.attrs["PATHWAY-ID"]:void 0,a=t[e],o=a.attrs["PATHWAY-ID"];if(this.currentLevelIndex=e,this.currentLevel=a,r===e&&a.details&&s&&n===o)return;this.log(`Switching to level ${e}${o?" with Pathway "+o:""} from level ${r}${n?" with Pathway "+n:""}`);let l=xt({},a,{level:e,maxBitrate:a.maxBitrate,attrs:a.attrs,uri:a.uri,urlId:a.urlId});delete l._attrs,delete l._urlId,this.hls.trigger(b.LEVEL_SWITCHING,l);let d=a.details;if(!d||d.live){let c=this.switchParams(a.uri,s==null?void 0:s.details);this.loadPlaylist(c)}}get manualLevel(){return this.manualLevelIndex}set manualLevel(e){this.manualLevelIndex=e,this._startLevel===void 0&&(this._startLevel=e),e!==-1&&(this.level=e)}get firstLevel(){return this._firstLevel}set firstLevel(e){this._firstLevel=e}get startLevel(){if(this._startLevel===void 0){let e=this.hls.config.startLevel;return e!==void 0?e:this._firstLevel}else return this._startLevel}set startLevel(e){this._startLevel=e}onError(e,t){t.fatal||!t.context||t.context.type===Fe.LEVEL&&t.context.level===this.level&&this.checkRetry(t)}onFragLoaded(e,{frag:t}){if(t!==void 0&&t.type===fe.MAIN){let r=this._levels[t.level];r!==void 0&&(r.loadError=0)}}onLevelLoaded(e,t){var r;let{level:s,details:n}=t,a=this._levels[s];if(!a){var o;this.warn(`Invalid level index ${s}`),(o=t.deliveryDirectives)!=null&&o.skip&&(n.deltaUpdateFailed=!0);return}s===this.currentLevelIndex?(a.fragmentError===0&&(a.loadError=0),this.playlistLoaded(s,t,a.details)):(r=t.deliveryDirectives)!=null&&r.skip&&(n.deltaUpdateFailed=!0)}onAudioTrackSwitched(e,t){let r=this.currentLevel;if(!r)return;let s=this.hls.audioTracks[t.id].groupId;if(r.audioGroupIds&&r.audioGroupId!==s){let n=-1;for(let a=0;a<r.audioGroupIds.length;a++)if(r.audioGroupIds[a]===s){n=a;break}n!==-1&&n!==r.urlId&&(r.urlId=n,this.canLoad&&this.startLoad())}}loadPlaylist(e){super.loadPlaylist();let t=this.currentLevelIndex,r=this.currentLevel;if(r&&this.shouldLoadPlaylist(r)){let s=r.urlId,n=r.uri;if(e)try{n=e.addDirectives(n)}catch(o){this.warn(`Could not construct new URL with HLS Delivery Directives: ${o}`)}let a=r.attrs["PATHWAY-ID"];this.log(`Loading level index ${t}${(e==null?void 0:e.msn)!==void 0?" at sn "+e.msn+" part "+e.part:""} with${a?" Pathway "+a:""} URI ${s+1}/${r.url.length} ${n}`),this.clearTimer(),this.hls.trigger(b.LEVEL_LOADING,{url:n,level:t,id:s,deliveryDirectives:e||null})}}get nextLoadLevel(){return this.manualLevelIndex!==-1?this.manualLevelIndex:this.hls.nextAutoLevel}set nextLoadLevel(e){this.level=e,this.manualLevelIndex===-1&&(this.hls.nextAutoLevel=e)}removeLevel(e,t){let r=(n,a)=>a!==t,s=this._levels.filter((n,a)=>a!==e?!0:n.url.length>1&&t!==void 0?(n.url=n.url.filter(r),n.audioGroupIds&&(n.audioGroupIds=n.audioGroupIds.filter(r)),n.textGroupIds&&(n.textGroupIds=n.textGroupIds.filter(r)),n.urlId=0,!0):(this.steering&&this.steering.removeLevel(n),!1));this.hls.trigger(b.LEVELS_UPDATED,{levels:s})}onLevelsUpdated(e,{levels:t}){t.forEach((r,s)=>{let{details:n}=r;n!=null&&n.fragments&&n.fragments.forEach(a=>{a.level=s})}),this._levels=t}};function ou(i,e,t){t&&(e==="audio"?(i.audioGroupIds||(i.audioGroupIds=[]),i.audioGroupIds[i.url.length-1]=t):e==="text"&&(i.textGroupIds||(i.textGroupIds=[]),i.textGroupIds[i.url.length-1]=t))}function Jy(i){let e={};i.forEach(t=>{let r=t.groupId||"";t.id=e[r]=e[r]||0,e[r]++})}var Mt={NOT_LOADED:"NOT_LOADED",APPENDING:"APPENDING",PARTIAL:"PARTIAL",OK:"OK"},ig=class{constructor(e){this.activePartLists=Object.create(null),this.endListFragments=Object.create(null),this.fragments=Object.create(null),this.timeRanges=Object.create(null),this.bufferPadding=.2,this.hls=void 0,this.hasGaps=!1,this.hls=e,this._registerListeners()}_registerListeners(){let{hls:e}=this;e.on(b.BUFFER_APPENDED,this.onBufferAppended,this),e.on(b.FRAG_BUFFERED,this.onFragBuffered,this),e.on(b.FRAG_LOADED,this.onFragLoaded,this)}_unregisterListeners(){let{hls:e}=this;e.off(b.BUFFER_APPENDED,this.onBufferAppended,this),e.off(b.FRAG_BUFFERED,this.onFragBuffered,this),e.off(b.FRAG_LOADED,this.onFragLoaded,this)}destroy(){this._unregisterListeners(),this.fragments=this.activePartLists=this.endListFragments=this.timeRanges=null}getAppendedFrag(e,t){let r=this.activePartLists[t];if(r)for(let s=r.length;s--;){let n=r[s];if(!n)break;let a=n.end;if(n.start<=e&&a!==null&&e<=a)return n}return this.getBufferedFrag(e,t)}getBufferedFrag(e,t){let{fragments:r}=this,s=Object.keys(r);for(let n=s.length;n--;){let a=r[s[n]];if((a==null?void 0:a.body.type)===t&&a.buffered){let o=a.body;if(o.start<=e&&e<=o.end)return o}}return null}detectEvictedFragments(e,t,r,s){this.timeRanges&&(this.timeRanges[e]=t);let n=(s==null?void 0:s.fragment.sn)||-1;Object.keys(this.fragments).forEach(a=>{let o=this.fragments[a];if(!o||n>=o.body.sn)return;if(!o.buffered&&!o.loaded){o.body.type===r&&this.removeFragment(o.body);return}let l=o.range[e];l&&l.time.some(d=>{let c=!this.isTimeBuffered(d.startPTS,d.endPTS,t);return c&&this.removeFragment(o.body),c})})}detectPartialFragments(e){let t=this.timeRanges,{frag:r,part:s}=e;if(!t||r.sn==="initSegment")return;let n=Xn(r),a=this.fragments[n];if(!a||a.buffered&&r.gap)return;let o=!r.relurl;Object.keys(t).forEach(l=>{let d=r.elementaryStreams[l];if(!d)return;let c=t[l],u=o||d.partial===!0;a.range[l]=this.getBufferedTimes(r,s,u,c)}),a.loaded=null,Object.keys(a.range).length?(a.buffered=!0,(a.body.endList=r.endList||a.body.endList)&&(this.endListFragments[a.body.type]=a),qc(a)||this.removeParts(r.sn-1,r.type)):this.removeFragment(a.body)}removeParts(e,t){let r=this.activePartLists[t];r&&(this.activePartLists[t]=r.filter(s=>s.fragment.sn>=e))}fragBuffered(e,t){let r=Xn(e),s=this.fragments[r];!s&&t&&(s=this.fragments[r]={body:e,appendedPTS:null,loaded:null,buffered:!1,range:Object.create(null)},e.gap&&(this.hasGaps=!0)),s&&(s.loaded=null,s.buffered=!0)}getBufferedTimes(e,t,r,s){let n={time:[],partial:r},a=e.start,o=e.end,l=e.minEndPTS||o,d=e.maxStartPTS||a;for(let c=0;c<s.length;c++){let u=s.start(c)-this.bufferPadding,h=s.end(c)+this.bufferPadding;if(d>=u&&l<=h){n.time.push({startPTS:Math.max(a,s.start(c)),endPTS:Math.min(o,s.end(c))});break}else if(a<h&&o>u)n.partial=!0,n.time.push({startPTS:Math.max(a,s.start(c)),endPTS:Math.min(o,s.end(c))});else if(o<=u)break}return n}getPartialFragment(e){let t=null,r,s,n,a=0,{bufferPadding:o,fragments:l}=this;return Object.keys(l).forEach(d=>{let c=l[d];c&&qc(c)&&(s=c.body.start-o,n=c.body.end+o,e>=s&&e<=n&&(r=Math.min(e-s,n-e),a<=r&&(t=c.body,a=r)))}),t}isEndListAppended(e){let t=this.endListFragments[e];return t!==void 0&&(t.buffered||qc(t))}getState(e){let t=Xn(e),r=this.fragments[t];return r?r.buffered?qc(r)?Mt.PARTIAL:Mt.OK:Mt.APPENDING:Mt.NOT_LOADED}isTimeBuffered(e,t,r){let s,n;for(let a=0;a<r.length;a++){if(s=r.start(a)-this.bufferPadding,n=r.end(a)+this.bufferPadding,e>=s&&t<=n)return!0;if(t<=s)return!1}return!1}onFragLoaded(e,t){let{frag:r,part:s}=t;if(r.sn==="initSegment"||r.bitrateTest)return;let n=s?null:t,a=Xn(r);this.fragments[a]={body:r,appendedPTS:null,loaded:n,buffered:!1,range:Object.create(null)}}onBufferAppended(e,t){let{frag:r,part:s,timeRanges:n}=t;if(r.sn==="initSegment")return;let a=r.type;if(s){let o=this.activePartLists[a];o||(this.activePartLists[a]=o=[]),o.push(s)}this.timeRanges=n,Object.keys(n).forEach(o=>{let l=n[o];this.detectEvictedFragments(o,l,a,s)})}onFragBuffered(e,t){this.detectPartialFragments(t)}hasFragment(e){let t=Xn(e);return!!this.fragments[t]}hasParts(e){var t;return!!((t=this.activePartLists[e])!=null&&t.length)}removeFragmentsInRange(e,t,r,s,n){s&&!this.hasGaps||Object.keys(this.fragments).forEach(a=>{let o=this.fragments[a];if(!o)return;let l=o.body;l.type!==r||s&&!l.gap||l.start<t&&l.end>e&&(o.buffered||n)&&this.removeFragment(l)})}removeFragment(e){let t=Xn(e);e.stats.loaded=0,e.clearElementaryStreamInfo();let r=this.activePartLists[e.type];if(r){let s=e.sn;this.activePartLists[e.type]=r.filter(n=>n.fragment.sn!==s)}delete this.fragments[t],e.endList&&delete this.endListFragments[e.type]}removeAllFragments(){this.fragments=Object.create(null),this.endListFragments=Object.create(null),this.activePartLists=Object.create(null),this.hasGaps=!1}};function qc(i){var e,t,r;return i.buffered&&(i.body.gap||((e=i.range.video)==null?void 0:e.partial)||((t=i.range.audio)==null?void 0:t.partial)||((r=i.range.audiovideo)==null?void 0:r.partial))}function Xn(i){return`${i.type}_${i.level}_${i.urlId}_${i.sn}`}var eT=Math.pow(2,17),rg=class{constructor(e){this.config=void 0,this.loader=null,this.partLoadTimeout=-1,this.config=e}destroy(){this.loader&&(this.loader.destroy(),this.loader=null)}abort(){this.loader&&this.loader.abort()}load(e,t){let r=e.url;if(!r)return Promise.reject(new Wi({type:he.NETWORK_ERROR,details:H.FRAG_LOAD_ERROR,fatal:!1,frag:e,error:new Error(`Fragment does not have a ${r?"part list":"url"}`),networkDetails:null}));this.abort();let s=this.config,n=s.fLoader,a=s.loader;return new Promise((o,l)=>{if(this.loader&&this.loader.destroy(),e.gap)if(e.tagList.some(f=>f[0]==="GAP")){l(iT(e));return}else e.gap=!1;let d=this.loader=e.loader=n?new n(s):new a(s),c=tT(e),u=Zy(s.fragLoadPolicy.default),h={loadPolicy:u,timeout:u.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0,highWaterMark:e.sn==="initSegment"?1/0:eT};e.stats=d.stats,d.load(c,h,{onSuccess:(f,g,E,y)=>{this.resetLoader(e,d);let S=f.data;E.resetIV&&e.decryptdata&&(e.decryptdata.iv=new Uint8Array(S.slice(0,16)),S=S.slice(16)),o({frag:e,part:null,payload:S,networkDetails:y})},onError:(f,g,E,y)=>{this.resetLoader(e,d),l(new Wi({type:he.NETWORK_ERROR,details:H.FRAG_LOAD_ERROR,fatal:!1,frag:e,response:Zt({url:r,data:void 0},f),error:new Error(`HTTP Error ${f.code} ${f.text}`),networkDetails:E,stats:y}))},onAbort:(f,g,E)=>{this.resetLoader(e,d),l(new Wi({type:he.NETWORK_ERROR,details:H.INTERNAL_ABORTED,fatal:!1,frag:e,error:new Error("Aborted"),networkDetails:E,stats:f}))},onTimeout:(f,g,E)=>{this.resetLoader(e,d),l(new Wi({type:he.NETWORK_ERROR,details:H.FRAG_LOAD_TIMEOUT,fatal:!1,frag:e,error:new Error(`Timeout after ${h.timeout}ms`),networkDetails:E,stats:f}))},onProgress:(f,g,E,y)=>{t&&t({frag:e,part:null,payload:E,networkDetails:y})}})})}loadPart(e,t,r){this.abort();let s=this.config,n=s.fLoader,a=s.loader;return new Promise((o,l)=>{if(this.loader&&this.loader.destroy(),e.gap||t.gap){l(iT(e,t));return}let d=this.loader=e.loader=n?new n(s):new a(s),c=tT(e,t),u=Zy(s.fragLoadPolicy.default),h={loadPolicy:u,timeout:u.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0,highWaterMark:eT};t.stats=d.stats,d.load(c,h,{onSuccess:(f,g,E,y)=>{this.resetLoader(e,d),this.updateStatsFromPart(e,t);let S={frag:e,part:t,payload:f.data,networkDetails:y};r(S),o(S)},onError:(f,g,E,y)=>{this.resetLoader(e,d),l(new Wi({type:he.NETWORK_ERROR,details:H.FRAG_LOAD_ERROR,fatal:!1,frag:e,part:t,response:Zt({url:c.url,data:void 0},f),error:new Error(`HTTP Error ${f.code} ${f.text}`),networkDetails:E,stats:y}))},onAbort:(f,g,E)=>{e.stats.aborted=t.stats.aborted,this.resetLoader(e,d),l(new Wi({type:he.NETWORK_ERROR,details:H.INTERNAL_ABORTED,fatal:!1,frag:e,part:t,error:new Error("Aborted"),networkDetails:E,stats:f}))},onTimeout:(f,g,E)=>{this.resetLoader(e,d),l(new Wi({type:he.NETWORK_ERROR,details:H.FRAG_LOAD_TIMEOUT,fatal:!1,frag:e,part:t,error:new Error(`Timeout after ${h.timeout}ms`),networkDetails:E,stats:f}))}})})}updateStatsFromPart(e,t){let r=e.stats,s=t.stats,n=s.total;if(r.loaded+=s.loaded,n){let l=Math.round(e.duration/t.duration),d=Math.min(Math.round(r.loaded/n),l),u=(l-d)*Math.round(r.loaded/d);r.total=r.loaded+u}else r.total=Math.max(r.loaded,r.total);let a=r.loading,o=s.loading;a.start?a.first+=o.first-o.start:(a.start=o.start,a.first=o.first),a.end=o.end}resetLoader(e,t){e.loader=null,this.loader===t&&(self.clearTimeout(this.partLoadTimeout),this.loader=null),t.destroy()}};function tT(i,e=null){let t=e||i,r={frag:i,part:e,responseType:"arraybuffer",url:t.url,headers:{},rangeStart:0,rangeEnd:0},s=t.byteRangeStartOffset,n=t.byteRangeEndOffset;if(oe(s)&&oe(n)){var a;let o=s,l=n;if(i.sn==="initSegment"&&((a=i.decryptdata)==null?void 0:a.method)==="AES-128"){let d=n-s;d%16&&(l=n+(16-d%16)),s!==0&&(r.resetIV=!0,o=s-16)}r.rangeStart=o,r.rangeEnd=l}return r}function iT(i,e){let t=new Error(`GAP ${i.gap?"tag":"attribute"} found`),r={type:he.MEDIA_ERROR,details:H.FRAG_GAP,fatal:!1,frag:i,error:t,networkDetails:null};return e&&(r.part=e),(e||i).stats.aborted=!0,new Wi(r)}var Wi=class extends Error{constructor(e){super(e.error.message),this.data=void 0,this.data=e}},sg=class{constructor(e){this.config=void 0,this.keyUriToKeyInfo={},this.emeController=null,this.config=e}abort(e){for(let t in this.keyUriToKeyInfo){let r=this.keyUriToKeyInfo[t].loader;if(r){if(e&&e!==r.context.frag.type)return;r.abort()}}}detach(){for(let e in this.keyUriToKeyInfo){let t=this.keyUriToKeyInfo[e];(t.mediaKeySessionContext||t.decryptdata.isCommonEncryption)&&delete this.keyUriToKeyInfo[e]}}destroy(){this.detach();for(let e in this.keyUriToKeyInfo){let t=this.keyUriToKeyInfo[e].loader;t&&t.destroy()}this.keyUriToKeyInfo={}}createKeyLoadError(e,t=H.KEY_LOAD_ERROR,r,s,n){return new Wi({type:he.NETWORK_ERROR,details:t,fatal:!1,frag:e,response:n,error:r,networkDetails:s})}loadClear(e,t){if(this.emeController&&this.config.emeEnabled){let{sn:r,cc:s}=e;for(let n=0;n<t.length;n++){let a=t[n];if(s<=a.cc&&(r==="initSegment"||a.sn==="initSegment"||r<a.sn)){this.emeController.selectKeySystemFormat(a).then(o=>{a.setKeyFormat(o)});break}}}}load(e){return!e.decryptdata&&e.encrypted&&this.emeController?this.emeController.selectKeySystemFormat(e).then(t=>this.loadInternal(e,t)):this.loadInternal(e)}loadInternal(e,t){var r,s;t&&e.setKeyFormat(t);let n=e.decryptdata;if(!n){let d=new Error(t?`Expected frag.decryptdata to be defined after setting format ${t}`:"Missing decryption data on fragment in onKeyLoading");return Promise.reject(this.createKeyLoadError(e,H.KEY_LOAD_ERROR,d))}let a=n.uri;if(!a)return Promise.reject(this.createKeyLoadError(e,H.KEY_LOAD_ERROR,new Error(`Invalid key URI: "${a}"`)));let o=this.keyUriToKeyInfo[a];if((r=o)!=null&&r.decryptdata.key)return n.key=o.decryptdata.key,Promise.resolve({frag:e,keyInfo:o});if((s=o)!=null&&s.keyLoadPromise){var l;switch((l=o.mediaKeySessionContext)==null?void 0:l.keyStatus){case void 0:case"status-pending":case"usable":case"usable-in-future":return o.keyLoadPromise.then(d=>(n.key=d.keyInfo.decryptdata.key,{frag:e,keyInfo:o}))}}switch(o=this.keyUriToKeyInfo[a]={decryptdata:n,keyLoadPromise:null,loader:null,mediaKeySessionContext:null},n.method){case"ISO-23001-7":case"SAMPLE-AES":case"SAMPLE-AES-CENC":case"SAMPLE-AES-CTR":return n.keyFormat==="identity"?this.loadKeyHTTP(o,e):this.loadKeyEME(o,e);case"AES-128":return this.loadKeyHTTP(o,e);default:return Promise.reject(this.createKeyLoadError(e,H.KEY_LOAD_ERROR,new Error(`Key supplied with unsupported METHOD: "${n.method}"`)))}}loadKeyEME(e,t){let r={frag:t,keyInfo:e};if(this.emeController&&this.config.emeEnabled){let s=this.emeController.loadKey(r);if(s)return(e.keyLoadPromise=s.then(n=>(e.mediaKeySessionContext=n,r))).catch(n=>{throw e.keyLoadPromise=null,n})}return Promise.resolve(r)}loadKeyHTTP(e,t){let r=this.config,s=r.loader,n=new s(r);return t.keyLoader=e.loader=n,e.keyLoadPromise=new Promise((a,o)=>{let l={keyInfo:e,frag:t,responseType:"arraybuffer",url:e.decryptdata.uri},d=r.keyLoadPolicy.default,c={loadPolicy:d,timeout:d.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0},u={onSuccess:(h,f,g,E)=>{let{frag:y,keyInfo:S,url:w}=g;if(!y.decryptdata||S!==this.keyUriToKeyInfo[w])return o(this.createKeyLoadError(y,H.KEY_LOAD_ERROR,new Error("after key load, decryptdata unset or changed"),E));S.decryptdata.key=y.decryptdata.key=new Uint8Array(h.data),y.keyLoader=null,S.loader=null,a({frag:y,keyInfo:S})},onError:(h,f,g,E)=>{this.resetLoader(f),o(this.createKeyLoadError(t,H.KEY_LOAD_ERROR,new Error(`HTTP Error ${h.code} loading key ${h.text}`),g,Zt({url:l.url,data:void 0},h)))},onTimeout:(h,f,g)=>{this.resetLoader(f),o(this.createKeyLoadError(t,H.KEY_LOAD_TIMEOUT,new Error("key loading timed out"),g))},onAbort:(h,f,g)=>{this.resetLoader(f),o(this.createKeyLoadError(t,H.INTERNAL_ABORTED,new Error("key loading aborted"),g))}};n.load(l,c,u)})}resetLoader(e){let{frag:t,keyInfo:r,url:s}=e,n=r.loader;t.keyLoader===n&&(t.keyLoader=null,r.loader=null),delete this.keyUriToKeyInfo[s],n&&n.destroy()}},ng=class{constructor(){this._boundTick=void 0,this._tickTimer=null,this._tickInterval=null,this._tickCallCount=0,this._boundTick=this.tick.bind(this)}destroy(){this.onHandlerDestroying(),this.onHandlerDestroyed()}onHandlerDestroying(){this.clearNextTick(),this.clearInterval()}onHandlerDestroyed(){}hasInterval(){return!!this._tickInterval}hasNextTick(){return!!this._tickTimer}setInterval(e){return this._tickInterval?!1:(this._tickCallCount=0,this._tickInterval=self.setInterval(this._boundTick,e),!0)}clearInterval(){return this._tickInterval?(self.clearInterval(this._tickInterval),this._tickInterval=null,!0):!1}clearNextTick(){return this._tickTimer?(self.clearTimeout(this._tickTimer),this._tickTimer=null,!0):!1}tick(){this._tickCallCount++,this._tickCallCount===1&&(this.doTick(),this._tickCallCount>1&&this.tickImmediate(),this._tickCallCount=0)}tickImmediate(){this.clearNextTick(),this._tickTimer=self.setTimeout(this._boundTick,0)}doTick(){}},Rk={length:0,start:()=>0,end:()=>0},at=class i{static isBuffered(e,t){try{if(e){let r=i.getBuffered(e);for(let s=0;s<r.length;s++)if(t>=r.start(s)&&t<=r.end(s))return!0}}catch{}return!1}static bufferInfo(e,t,r){try{if(e){let s=i.getBuffered(e),n=[],a;for(a=0;a<s.length;a++)n.push({start:s.start(a),end:s.end(a)});return this.bufferedInfo(n,t,r)}}catch{}return{len:0,start:t,end:t,nextStart:void 0}}static bufferedInfo(e,t,r){t=Math.max(0,t),e.sort(function(d,c){let u=d.start-c.start;return u||c.end-d.end});let s=[];if(r)for(let d=0;d<e.length;d++){let c=s.length;if(c){let u=s[c-1].end;e[d].start-u<r?e[d].end>u&&(s[c-1].end=e[d].end):s.push(e[d])}else s.push(e[d])}else s=e;let n=0,a,o=t,l=t;for(let d=0;d<s.length;d++){let c=s[d].start,u=s[d].end;if(t+r>=c&&t<u)o=c,l=u,n=l-t;else if(t+r<c){a=c;break}}return{len:n,start:o||0,end:l||0,nextStart:a}}static getBuffered(e){try{return e.buffered}catch(t){return M.log("failed to get media.buffered",t),Rk}}},Lo=class{constructor(e,t,r,s=0,n=-1,a=!1){this.level=void 0,this.sn=void 0,this.part=void 0,this.id=void 0,this.size=void 0,this.partial=void 0,this.transmuxing=Yc(),this.buffering={audio:Yc(),video:Yc(),audiovideo:Yc()},this.level=e,this.sn=t,this.id=r,this.size=s,this.part=n,this.partial=a}};function Yc(){return{start:0,executeStart:0,executeEnd:0,end:0}}function BT(i,e){let t=null;for(let r=0,s=i.length;r<s;r++){let n=i[r];if(n&&n.cc===e){t=n;break}}return t}function wk(i,e,t){return!!(e.details&&(t.endCC>t.startCC||i&&i.cc<t.startCC))}function Ck(i,e,t=0){let r=i.fragments,s=e.fragments;if(!s.length||!r.length){M.log("No fragments to align");return}let n=BT(r,s[0].cc);if(!n||n&&!n.startPTS){M.log("No frag in previous level to align on");return}return n}function rT(i,e){if(i){let t=i.start+e;i.start=i.startPTS=t,i.endPTS=t+i.duration}}function jg(i,e){let t=e.fragments;for(let r=0,s=t.length;r<s;r++)rT(t[r],i);e.fragmentHint&&rT(e.fragmentHint,i),e.alignedSliding=!0}function Dk(i,e,t){e&&(Mk(i,t,e),!t.alignedSliding&&e.details&&Pk(t,e.details),!t.alignedSliding&&e.details&&!t.skippedSegments&&NT(e.details,t))}function Mk(i,e,t){if(wk(i,t,e)){let r=Ck(t.details,e);r&&oe(r.start)&&(M.log(`Adjusting PTS using last level due to CC increase within current level ${e.url}`),jg(r.start,e))}}function Pk(i,e){if(!e.fragments.length||!i.hasProgramDateTime||!e.hasProgramDateTime)return;let t=e.fragments[0].programDateTime,r=i.fragments[0].programDateTime,s=(r-t)/1e3+e.fragments[0].start;s&&oe(s)&&(M.log(`Adjusting PTS using programDateTime delta ${r-t}ms, sliding:${s.toFixed(3)} ${i.url} `),jg(s,i))}function $T(i,e){if(!i.hasProgramDateTime||!e.hasProgramDateTime)return;let t=i.fragments,r=e.fragments;if(!t.length||!r.length)return;let s=Math.round(r.length/2)-1,n=r[s],a=BT(t,n.cc)||t[Math.round(t.length/2)-1],o=n.programDateTime,l=a.programDateTime;if(o===null||l===null)return;let d=(l-o)/1e3-(a.start-n.start);jg(d,i)}var ag=class{constructor(e,t){this.subtle=void 0,this.aesIV=void 0,this.subtle=e,this.aesIV=t}decrypt(e,t){return this.subtle.decrypt({name:"AES-CBC",iv:this.aesIV},t,e)}},og=class{constructor(e,t){this.subtle=void 0,this.key=void 0,this.subtle=e,this.key=t}expandKey(){return this.subtle.importKey("raw",this.key,{name:"AES-CBC"},!1,["encrypt","decrypt"])}};function Ok(i){let e=i.byteLength,t=e&&new DataView(i.buffer).getUint8(e-1);return t?$s(i,0,e-t):i}var lg=class{constructor(){this.rcon=[0,1,2,4,8,16,32,64,128,27,54],this.subMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.invSubMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.sBox=new Uint32Array(256),this.invSBox=new Uint32Array(256),this.key=new Uint32Array(0),this.ksRows=0,this.keySize=0,this.keySchedule=void 0,this.invKeySchedule=void 0,this.initTable()}uint8ArrayToUint32Array_(e){let t=new DataView(e),r=new Uint32Array(4);for(let s=0;s<4;s++)r[s]=t.getUint32(s*4);return r}initTable(){let e=this.sBox,t=this.invSBox,r=this.subMix,s=r[0],n=r[1],a=r[2],o=r[3],l=this.invSubMix,d=l[0],c=l[1],u=l[2],h=l[3],f=new Uint32Array(256),g=0,E=0,y=0;for(y=0;y<256;y++)y<128?f[y]=y<<1:f[y]=y<<1^283;for(y=0;y<256;y++){let S=E^E<<1^E<<2^E<<3^E<<4;S=S>>>8^S&255^99,e[g]=S,t[S]=g;let w=f[g],L=f[w],F=f[L],R=f[S]*257^S*16843008;s[g]=R<<24|R>>>8,n[g]=R<<16|R>>>16,a[g]=R<<8|R>>>24,o[g]=R,R=F*16843009^L*65537^w*257^g*16843008,d[S]=R<<24|R>>>8,c[S]=R<<16|R>>>16,u[S]=R<<8|R>>>24,h[S]=R,g?(g=w^f[f[f[F^w]]],E^=f[f[E]]):g=E=1}}expandKey(e){let t=this.uint8ArrayToUint32Array_(e),r=!0,s=0;for(;s<t.length&&r;)r=t[s]===this.key[s],s++;if(r)return;this.key=t;let n=this.keySize=t.length;if(n!==4&&n!==6&&n!==8)throw new Error("Invalid aes key size="+n);let a=this.ksRows=(n+6+1)*4,o,l,d=this.keySchedule=new Uint32Array(a),c=this.invKeySchedule=new Uint32Array(a),u=this.sBox,h=this.rcon,f=this.invSubMix,g=f[0],E=f[1],y=f[2],S=f[3],w,L;for(o=0;o<a;o++){if(o<n){w=d[o]=t[o];continue}L=w,o%n===0?(L=L<<8|L>>>24,L=u[L>>>24]<<24|u[L>>>16&255]<<16|u[L>>>8&255]<<8|u[L&255],L^=h[o/n|0]<<24):n>6&&o%n===4&&(L=u[L>>>24]<<24|u[L>>>16&255]<<16|u[L>>>8&255]<<8|u[L&255]),d[o]=w=(d[o-n]^L)>>>0}for(l=0;l<a;l++)o=a-l,l&3?L=d[o]:L=d[o-4],l<4||o<=4?c[l]=L:c[l]=g[u[L>>>24]]^E[u[L>>>16&255]]^y[u[L>>>8&255]]^S[u[L&255]],c[l]=c[l]>>>0}networkToHostOrderSwap(e){return e<<24|(e&65280)<<8|(e&16711680)>>8|e>>>24}decrypt(e,t,r){let s=this.keySize+6,n=this.invKeySchedule,a=this.invSBox,o=this.invSubMix,l=o[0],d=o[1],c=o[2],u=o[3],h=this.uint8ArrayToUint32Array_(r),f=h[0],g=h[1],E=h[2],y=h[3],S=new Int32Array(e),w=new Int32Array(S.length),L,F,R,B,P,$,K,N,z,Y,ge,me,Ee,De,Le=this.networkToHostOrderSwap;for(;t<S.length;){for(z=Le(S[t]),Y=Le(S[t+1]),ge=Le(S[t+2]),me=Le(S[t+3]),P=z^n[0],$=me^n[1],K=ge^n[2],N=Y^n[3],Ee=4,De=1;De<s;De++)L=l[P>>>24]^d[$>>16&255]^c[K>>8&255]^u[N&255]^n[Ee],F=l[$>>>24]^d[K>>16&255]^c[N>>8&255]^u[P&255]^n[Ee+1],R=l[K>>>24]^d[N>>16&255]^c[P>>8&255]^u[$&255]^n[Ee+2],B=l[N>>>24]^d[P>>16&255]^c[$>>8&255]^u[K&255]^n[Ee+3],P=L,$=F,K=R,N=B,Ee=Ee+4;L=a[P>>>24]<<24^a[$>>16&255]<<16^a[K>>8&255]<<8^a[N&255]^n[Ee],F=a[$>>>24]<<24^a[K>>16&255]<<16^a[N>>8&255]<<8^a[P&255]^n[Ee+1],R=a[K>>>24]<<24^a[N>>16&255]<<16^a[P>>8&255]<<8^a[$&255]^n[Ee+2],B=a[N>>>24]<<24^a[P>>16&255]<<16^a[$>>8&255]<<8^a[K&255]^n[Ee+3],w[t]=Le(L^f),w[t+1]=Le(B^g),w[t+2]=Le(R^E),w[t+3]=Le(F^y),f=z,g=Y,E=ge,y=me,t=t+4}return w.buffer}},Nk=16,Ro=class{constructor(e,{removePKCS7Padding:t=!0}={}){if(this.logEnabled=!0,this.removePKCS7Padding=void 0,this.subtle=null,this.softwareDecrypter=null,this.key=null,this.fastAesKey=null,this.remainderData=null,this.currentIV=null,this.currentResult=null,this.useSoftware=void 0,this.useSoftware=e.enableSoftwareAES,this.removePKCS7Padding=t,t)try{let r=self.crypto;r&&(this.subtle=r.subtle||r.webkitSubtle)}catch{}this.subtle===null&&(this.useSoftware=!0)}destroy(){this.subtle=null,this.softwareDecrypter=null,this.key=null,this.fastAesKey=null,this.remainderData=null,this.currentIV=null,this.currentResult=null}isSync(){return this.useSoftware}flush(){let{currentResult:e,remainderData:t}=this;if(!e||t)return this.reset(),null;let r=new Uint8Array(e);return this.reset(),this.removePKCS7Padding?Ok(r):r}reset(){this.currentResult=null,this.currentIV=null,this.remainderData=null,this.softwareDecrypter&&(this.softwareDecrypter=null)}decrypt(e,t,r){return this.useSoftware?new Promise((s,n)=>{this.softwareDecrypt(new Uint8Array(e),t,r);let a=this.flush();a?s(a.buffer):n(new Error("[softwareDecrypt] Failed to decrypt data"))}):this.webCryptoDecrypt(new Uint8Array(e),t,r)}softwareDecrypt(e,t,r){let{currentIV:s,currentResult:n,remainderData:a}=this;this.logOnce("JS AES decrypt"),a&&(e=Hs(a,e),this.remainderData=null);let o=this.getValidChunk(e);if(!o.length)return null;s&&(r=s);let l=this.softwareDecrypter;l||(l=this.softwareDecrypter=new lg),l.expandKey(t);let d=n;return this.currentResult=l.decrypt(o.buffer,0,r),this.currentIV=$s(o,-16).buffer,d||null}webCryptoDecrypt(e,t,r){let s=this.subtle;return(this.key!==t||!this.fastAesKey)&&(this.key=t,this.fastAesKey=new og(s,t)),this.fastAesKey.expandKey().then(n=>s?(this.logOnce("WebCrypto AES decrypt"),new ag(s,new Uint8Array(r)).decrypt(e.buffer,n)):Promise.reject(new Error("web crypto not initialized"))).catch(n=>(M.warn(`[decrypter]: WebCrypto Error, disable WebCrypto API, ${n.name}: ${n.message}`),this.onWebCryptoError(e,t,r)))}onWebCryptoError(e,t,r){this.useSoftware=!0,this.logEnabled=!0,this.softwareDecrypt(e,t,r);let s=this.flush();if(s)return s.buffer;throw new Error("WebCrypto and softwareDecrypt: failed to decrypt data")}getValidChunk(e){let t=e,r=e.length-e.length%Nk;return r!==e.length&&(t=$s(e,0,r),this.remainderData=$s(e,r)),t}logOnce(e){this.logEnabled&&(M.log(`[decrypter]: ${e}`),this.logEnabled=!1)}},Uk={toString:function(i){let e="",t=i.length;for(let r=0;r<t;r++)e+=`[${i.start(r).toFixed(3)}-${i.end(r).toFixed(3)}]`;return e}},V={STOPPED:"STOPPED",IDLE:"IDLE",KEY_LOADING:"KEY_LOADING",FRAG_LOADING:"FRAG_LOADING",FRAG_LOADING_WAITING_RETRY:"FRAG_LOADING_WAITING_RETRY",WAITING_TRACK:"WAITING_TRACK",PARSING:"PARSING",PARSED:"PARSED",ENDED:"ENDED",ERROR:"ERROR",WAITING_INIT_PTS:"WAITING_INIT_PTS",WAITING_LEVEL:"WAITING_LEVEL"},wo=class extends ng{constructor(e,t,r,s,n){super(),this.hls=void 0,this.fragPrevious=null,this.fragCurrent=null,this.fragmentTracker=void 0,this.transmuxer=null,this._state=V.STOPPED,this.playlistType=void 0,this.media=null,this.mediaBuffer=null,this.config=void 0,this.bitrateTest=!1,this.lastCurrentTime=0,this.nextLoadPosition=0,this.startPosition=0,this.startTimeOffset=null,this.loadedmetadata=!1,this.retryDate=0,this.levels=null,this.fragmentLoader=void 0,this.keyLoader=void 0,this.levelLastLoaded=null,this.startFragRequested=!1,this.decrypter=void 0,this.initPTS=[],this.onvseeking=null,this.onvended=null,this.logPrefix="",this.log=void 0,this.warn=void 0,this.playlistType=n,this.logPrefix=s,this.log=M.log.bind(M,`${s}:`),this.warn=M.warn.bind(M,`${s}:`),this.hls=e,this.fragmentLoader=new rg(e.config),this.keyLoader=r,this.fragmentTracker=t,this.config=e.config,this.decrypter=new Ro(e.config),e.on(b.MANIFEST_LOADED,this.onManifestLoaded,this)}doTick(){this.onTickEnd()}onTickEnd(){}startLoad(e){}stopLoad(){this.fragmentLoader.abort(),this.keyLoader.abort(this.playlistType);let e=this.fragCurrent;e!=null&&e.loader&&(e.abortRequests(),this.fragmentTracker.removeFragment(e)),this.resetTransmuxer(),this.fragCurrent=null,this.fragPrevious=null,this.clearInterval(),this.clearNextTick(),this.state=V.STOPPED}_streamEnded(e,t){if(t.live||e.nextStart||!e.end||!this.media)return!1;let r=t.partList;if(r!=null&&r.length){let n=r[r.length-1];return at.isBuffered(this.media,n.start+n.duration/2)}let s=t.fragments[t.fragments.length-1].type;return this.fragmentTracker.isEndListAppended(s)}getLevelDetails(){if(this.levels&&this.levelLastLoaded!==null){var e;return(e=this.levels[this.levelLastLoaded])==null?void 0:e.details}}onMediaAttached(e,t){let r=this.media=this.mediaBuffer=t.media;this.onvseeking=this.onMediaSeeking.bind(this),this.onvended=this.onMediaEnded.bind(this),r.addEventListener("seeking",this.onvseeking),r.addEventListener("ended",this.onvended);let s=this.config;this.levels&&s.autoStartLoad&&this.state===V.STOPPED&&this.startLoad(s.startPosition)}onMediaDetaching(){let e=this.media;e!=null&&e.ended&&(this.log("MSE detaching and video ended, reset startPosition"),this.startPosition=this.lastCurrentTime=0),e&&this.onvseeking&&this.onvended&&(e.removeEventListener("seeking",this.onvseeking),e.removeEventListener("ended",this.onvended),this.onvseeking=this.onvended=null),this.keyLoader&&this.keyLoader.detach(),this.media=this.mediaBuffer=null,this.loadedmetadata=!1,this.fragmentTracker.removeAllFragments(),this.stopLoad()}onMediaSeeking(){let{config:e,fragCurrent:t,media:r,mediaBuffer:s,state:n}=this,a=r?r.currentTime:0,o=at.bufferInfo(s||r,a,e.maxBufferHole);if(this.log(`media seeking to ${oe(a)?a.toFixed(3):a}, state: ${n}`),this.state===V.ENDED)this.resetLoadingState();else if(t){let l=e.maxFragLookUpTolerance,d=t.start-l,c=t.start+t.duration+l;if(!o.len||c<o.start||d>o.end){let u=a>c;(a<d||u)&&(u&&t.loader&&(this.log("seeking outside of buffer while fragment load in progress, cancel fragment load"),t.abortRequests(),this.resetLoadingState()),this.fragPrevious=null)}}r&&(this.fragmentTracker.removeFragmentsInRange(a,1/0,this.playlistType,!0),this.lastCurrentTime=a),!this.loadedmetadata&&!o.len&&(this.nextLoadPosition=this.startPosition=a),this.tickImmediate()}onMediaEnded(){this.startPosition=this.lastCurrentTime=0}onManifestLoaded(e,t){this.startTimeOffset=t.startTimeOffset,this.initPTS=[]}onHandlerDestroying(){this.stopLoad(),super.onHandlerDestroying()}onHandlerDestroyed(){this.state=V.STOPPED,this.fragmentLoader&&this.fragmentLoader.destroy(),this.keyLoader&&this.keyLoader.destroy(),this.decrypter&&this.decrypter.destroy(),this.hls=this.log=this.warn=this.decrypter=this.keyLoader=this.fragmentLoader=this.fragmentTracker=null,super.onHandlerDestroyed()}loadFragment(e,t,r){this._loadFragForPlayback(e,t,r)}_loadFragForPlayback(e,t,r){let s=n=>{if(this.fragContextChanged(e)){this.warn(`Fragment ${e.sn}${n.part?" p: "+n.part.index:""} of level ${e.level} was dropped during download.`),this.fragmentTracker.removeFragment(e);return}e.stats.chunkCount++,this._handleFragmentLoadProgress(n)};this._doFragLoad(e,t,r,s).then(n=>{if(!n)return;let a=this.state;if(this.fragContextChanged(e)){(a===V.FRAG_LOADING||!this.fragCurrent&&a===V.PARSING)&&(this.fragmentTracker.removeFragment(e),this.state=V.IDLE);return}"payload"in n&&(this.log(`Loaded fragment ${e.sn} of level ${e.level}`),this.hls.trigger(b.FRAG_LOADED,n)),this._handleFragmentLoadComplete(n)}).catch(n=>{this.state===V.STOPPED||this.state===V.ERROR||(this.warn(n),this.resetFragmentLoading(e))})}clearTrackerIfNeeded(e){var t;let{fragmentTracker:r}=this;if(r.getState(e)===Mt.APPENDING){let n=e.type,a=this.getFwdBufferInfo(this.mediaBuffer,n),o=Math.max(e.duration,a?a.len:this.config.maxBufferLength);this.reduceMaxBufferLength(o)&&r.removeFragment(e)}else((t=this.mediaBuffer)==null?void 0:t.buffered.length)===0?r.removeAllFragments():r.hasParts(e.type)&&(r.detectPartialFragments({frag:e,part:null,stats:e.stats,id:e.type}),r.getState(e)===Mt.PARTIAL&&r.removeFragment(e))}checkLiveUpdate(e){if(e.updated&&!e.live){let t=e.fragments[e.fragments.length-1];this.fragmentTracker.detectPartialFragments({frag:t,part:null,stats:t.stats,id:t.type})}e.fragments[0]||(e.deltaUpdateFailed=!0)}flushMainBuffer(e,t,r=null){if(!(e-t))return;let s={startOffset:e,endOffset:t,type:r};this.hls.trigger(b.BUFFER_FLUSHING,s)}_loadInitSegment(e,t){this._doFragLoad(e,t).then(r=>{if(!r||this.fragContextChanged(e)||!this.levels)throw new Error("init load aborted");return r}).then(r=>{let{hls:s}=this,{payload:n}=r,a=e.decryptdata;if(n&&n.byteLength>0&&a&&a.key&&a.iv&&a.method==="AES-128"){let o=self.performance.now();return this.decrypter.decrypt(new Uint8Array(n),a.key.buffer,a.iv.buffer).catch(l=>{throw s.trigger(b.ERROR,{type:he.MEDIA_ERROR,details:H.FRAG_DECRYPT_ERROR,fatal:!1,error:l,reason:l.message,frag:e}),l}).then(l=>{let d=self.performance.now();return s.trigger(b.FRAG_DECRYPTED,{frag:e,payload:l,stats:{tstart:o,tdecrypt:d}}),r.payload=l,r})}return r}).then(r=>{let{fragCurrent:s,hls:n,levels:a}=this;if(!a)throw new Error("init load aborted, missing levels");let o=e.stats;this.state=V.IDLE,t.fragmentError=0,e.data=new Uint8Array(r.payload),o.parsing.start=o.buffering.start=self.performance.now(),o.parsing.end=o.buffering.end=self.performance.now(),r.frag===s&&n.trigger(b.FRAG_BUFFERED,{stats:o,frag:s,part:null,id:e.type}),this.tick()}).catch(r=>{this.state===V.STOPPED||this.state===V.ERROR||(this.warn(r),this.resetFragmentLoading(e))})}fragContextChanged(e){let{fragCurrent:t}=this;return!e||!t||e.level!==t.level||e.sn!==t.sn||e.urlId!==t.urlId}fragBufferedComplete(e,t){var r,s,n,a;let o=this.mediaBuffer?this.mediaBuffer:this.media;this.log(`Buffered ${e.type} sn: ${e.sn}${t?" part: "+t.index:""} of ${this.playlistType===fe.MAIN?"level":"track"} ${e.level} (frag:[${((r=e.startPTS)!=null?r:NaN).toFixed(3)}-${((s=e.endPTS)!=null?s:NaN).toFixed(3)}] > buffer:${o?Uk.toString(at.getBuffered(o)):"(detached)"})`),this.state=V.IDLE,o&&(!this.loadedmetadata&&e.type==fe.MAIN&&o.buffered.length&&((n=this.fragCurrent)==null?void 0:n.sn)===((a=this.fragPrevious)==null?void 0:a.sn)&&(this.loadedmetadata=!0,this.seekToStartPos()),this.tick())}seekToStartPos(){}_handleFragmentLoadComplete(e){let{transmuxer:t}=this;if(!t)return;let{frag:r,part:s,partsLoaded:n}=e,a=!n||n.length===0||n.some(l=>!l),o=new Lo(r.level,r.sn,r.stats.chunkCount+1,0,s?s.index:-1,!a);t.flush(o)}_handleFragmentLoadProgress(e){}_doFragLoad(e,t,r=null,s){var n;let a=t==null?void 0:t.details;if(!this.levels||!a)throw new Error(`frag load aborted, missing level${a?"":" detail"}s`);let o=null;if(e.encrypted&&!((n=e.decryptdata)!=null&&n.key)?(this.log(`Loading key for ${e.sn} of [${a.startSN}-${a.endSN}], ${this.logPrefix==="[stream-controller]"?"level":"track"} ${e.level}`),this.state=V.KEY_LOADING,this.fragCurrent=e,o=this.keyLoader.load(e).then(c=>{if(!this.fragContextChanged(c.frag))return this.hls.trigger(b.KEY_LOADED,c),this.state===V.KEY_LOADING&&(this.state=V.IDLE),c}),this.hls.trigger(b.KEY_LOADING,{frag:e}),this.fragCurrent===null&&(o=Promise.reject(new Error("frag load aborted, context changed in KEY_LOADING")))):!e.encrypted&&a.encryptedFragments.length&&this.keyLoader.loadClear(e,a.encryptedFragments),r=Math.max(e.start,r||0),this.config.lowLatencyMode&&e.sn!=="initSegment"){let c=a.partList;if(c&&s){r>e.end&&a.fragmentHint&&(e=a.fragmentHint);let u=this.getNextPart(c,e,r);if(u>-1){let h=c[u];this.log(`Loading part sn: ${e.sn} p: ${h.index} cc: ${e.cc} of playlist [${a.startSN}-${a.endSN}] parts [0-${u}-${c.length-1}] ${this.logPrefix==="[stream-controller]"?"level":"track"}: ${e.level}, target: ${parseFloat(r.toFixed(3))}`),this.nextLoadPosition=h.start+h.duration,this.state=V.FRAG_LOADING;let f;return o?f=o.then(g=>!g||this.fragContextChanged(g.frag)?null:this.doFragPartsLoad(e,h,t,s)).catch(g=>this.handleFragLoadError(g)):f=this.doFragPartsLoad(e,h,t,s).catch(g=>this.handleFragLoadError(g)),this.hls.trigger(b.FRAG_LOADING,{frag:e,part:h,targetBufferTime:r}),this.fragCurrent===null?Promise.reject(new Error("frag load aborted, context changed in FRAG_LOADING parts")):f}else if(!e.url||this.loadedEndOfParts(c,r))return Promise.resolve(null)}}this.log(`Loading fragment ${e.sn} cc: ${e.cc} ${a?"of ["+a.startSN+"-"+a.endSN+"] ":""}${this.logPrefix==="[stream-controller]"?"level":"track"}: ${e.level}, target: ${parseFloat(r.toFixed(3))}`),oe(e.sn)&&!this.bitrateTest&&(this.nextLoadPosition=e.start+e.duration),this.state=V.FRAG_LOADING;let l=this.config.progressive,d;return l&&o?d=o.then(c=>!c||this.fragContextChanged(c==null?void 0:c.frag)?null:this.fragmentLoader.load(e,s)).catch(c=>this.handleFragLoadError(c)):d=Promise.all([this.fragmentLoader.load(e,l?s:void 0),o]).then(([c])=>(!l&&c&&s&&s(c),c)).catch(c=>this.handleFragLoadError(c)),this.hls.trigger(b.FRAG_LOADING,{frag:e,targetBufferTime:r}),this.fragCurrent===null?Promise.reject(new Error("frag load aborted, context changed in FRAG_LOADING")):d}doFragPartsLoad(e,t,r,s){return new Promise((n,a)=>{var o;let l=[],d=(o=r.details)==null?void 0:o.partList,c=u=>{this.fragmentLoader.loadPart(e,u,s).then(h=>{l[u.index]=h;let f=h.part;this.hls.trigger(b.FRAG_LOADED,h);let g=Xy(r,e.sn,u.index+1)||UT(d,e.sn,u.index+1);if(g)c(g);else return n({frag:e,part:f,partsLoaded:l})}).catch(a)};c(t)})}handleFragLoadError(e){if("data"in e){let t=e.data;e.data&&t.details===H.INTERNAL_ABORTED?this.handleFragLoadAborted(t.frag,t.part):this.hls.trigger(b.ERROR,t)}else this.hls.trigger(b.ERROR,{type:he.OTHER_ERROR,details:H.INTERNAL_EXCEPTION,err:e,error:e,fatal:!0});return null}_handleTransmuxerFlush(e){let t=this.getCurrentContext(e);if(!t||this.state!==V.PARSING){!this.fragCurrent&&this.state!==V.STOPPED&&this.state!==V.ERROR&&(this.state=V.IDLE);return}let{frag:r,part:s,level:n}=t,a=self.performance.now();r.stats.parsing.end=a,s&&(s.stats.parsing.end=a),this.updateLevelTiming(r,s,n,e.partial)}getCurrentContext(e){let{levels:t,fragCurrent:r}=this,{level:s,sn:n,part:a}=e;if(!(t!=null&&t[s]))return this.warn(`Levels object was unset while buffering fragment ${n} of level ${s}. The current chunk will not be buffered.`),null;let o=t[s],l=a>-1?Xy(o,n,a):null,d=l?l.fragment:_k(o,n,r);return d?(r&&r!==d&&(d.stats=r.stats),{frag:d,part:l,level:o}):null}bufferFragmentData(e,t,r,s,n){var a;if(!e||this.state!==V.PARSING)return;let{data1:o,data2:l}=e,d=o;if(o&&l&&(d=Hs(o,l)),!((a=d)!=null&&a.length))return;let c={type:e.type,frag:t,part:r,chunkMeta:s,parent:t.type,data:d};if(this.hls.trigger(b.BUFFER_APPENDING,c),e.dropped&&e.independent&&!r){if(n)return;this.flushBufferGap(t)}}flushBufferGap(e){let t=this.media;if(!t)return;if(!at.isBuffered(t,t.currentTime)){this.flushMainBuffer(0,e.start);return}let r=t.currentTime,s=at.bufferInfo(t,r,0),n=e.duration,a=Math.min(this.config.maxFragLookUpTolerance*2,n*.25),o=Math.max(Math.min(e.start-a,s.end-a),r+a);e.start-o>a&&this.flushMainBuffer(o,e.start)}getFwdBufferInfo(e,t){let r=this.getLoadPosition();return oe(r)?this.getFwdBufferInfoAtPos(e,r,t):null}getFwdBufferInfoAtPos(e,t,r){let{config:{maxBufferHole:s}}=this,n=at.bufferInfo(e,t,s);if(n.len===0&&n.nextStart!==void 0){let a=this.fragmentTracker.getBufferedFrag(t,r);if(a&&n.nextStart<a.end)return at.bufferInfo(e,t,Math.max(n.nextStart,s))}return n}getMaxBufferLength(e){let{config:t}=this,r;return e?r=Math.max(8*t.maxBufferSize/e,t.maxBufferLength):r=t.maxBufferLength,Math.min(r,t.maxMaxBufferLength)}reduceMaxBufferLength(e){let t=this.config,r=e||t.maxBufferLength;return t.maxMaxBufferLength>=r?(t.maxMaxBufferLength/=2,this.warn(`Reduce max buffer length to ${t.maxMaxBufferLength}s`),!0):!1}getAppendedFrag(e,t=fe.MAIN){let r=this.fragmentTracker.getAppendedFrag(e,fe.MAIN);return r&&"fragment"in r?r.fragment:r}getNextFragment(e,t){let r=t.fragments,s=r.length;if(!s)return null;let{config:n}=this,a=r[0].start,o;if(t.live){let l=n.initialLiveManifestSize;if(s<l)return this.warn(`Not enough fragments to start playback (have: ${s}, need: ${l})`),null;!t.PTSKnown&&!this.startFragRequested&&this.startPosition===-1&&(o=this.getInitialLiveFragment(t,r),this.startPosition=o?this.hls.liveSyncPosition||o.start:e)}else e<=a&&(o=r[0]);if(!o){let l=n.lowLatencyMode?t.partEnd:t.fragmentEnd;o=this.getFragmentAtPosition(e,l,t)}return this.mapToInitFragWhenRequired(o)}isLoopLoading(e,t){let r=this.fragmentTracker.getState(e);return(r===Mt.OK||r===Mt.PARTIAL&&!!e.gap)&&this.nextLoadPosition>t}getNextFragmentLoopLoading(e,t,r,s,n){let a=e.gap,o=this.getNextFragment(this.nextLoadPosition,t);if(o===null)return o;if(e=o,a&&e&&!e.gap&&r.nextStart){let l=this.getFwdBufferInfoAtPos(this.mediaBuffer?this.mediaBuffer:this.media,r.nextStart,s);if(l!==null&&r.len+l.len>=n)return this.log(`buffer full after gaps in "${s}" playlist starting at sn: ${e.sn}`),null}return e}mapToInitFragWhenRequired(e){return e!=null&&e.initSegment&&!(e!=null&&e.initSegment.data)&&!this.bitrateTest?e.initSegment:e}getNextPart(e,t,r){let s=-1,n=!1,a=!0;for(let o=0,l=e.length;o<l;o++){let d=e[o];if(a=a&&!d.independent,s>-1&&r<d.start)break;let c=d.loaded;c?s=-1:(n||d.independent||a)&&d.fragment===t&&(s=o),n=c}return s}loadedEndOfParts(e,t){let r=e[e.length-1];return r&&t>r.start&&r.loaded}getInitialLiveFragment(e,t){let r=this.fragPrevious,s=null;if(r){if(e.hasProgramDateTime&&(this.log(`Live playlist, switching playlist, load frag with same PDT: ${r.programDateTime}`),s=Sk(t,r.endProgramDateTime,this.config.maxFragLookUpTolerance)),!s){let n=r.sn+1;if(n>=e.startSN&&n<=e.endSN){let a=t[n-e.startSN];r.cc===a.cc&&(s=a,this.log(`Live playlist, switching playlist, load frag with next SN: ${s.sn}`))}s||(s=Ik(t,r.cc),s&&this.log(`Live playlist, switching playlist, load frag with same CC: ${s.sn}`))}}else{let n=this.hls.liveSyncPosition;n!==null&&(s=this.getFragmentAtPosition(n,this.bitrateTest?e.fragmentEnd:e.edge,e))}return s}getFragmentAtPosition(e,t,r){let{config:s}=this,{fragPrevious:n}=this,{fragments:a,endSN:o}=r,{fragmentHint:l}=r,d=s.maxFragLookUpTolerance,c=r.partList,u=!!(s.lowLatencyMode&&c!=null&&c.length&&l);u&&l&&!this.bitrateTest&&(a=a.concat(l),o=l.sn);let h;if(e<t){let f=e>t-d?0:d;h=Io(n,a,e,f)}else h=a[a.length-1];if(h){let f=h.sn-r.startSN,g=this.fragmentTracker.getState(h);if((g===Mt.OK||g===Mt.PARTIAL&&h.gap)&&(n=h),n&&h.sn===n.sn&&(!u||c[0].fragment.sn>h.sn)&&n&&h.level===n.level){let y=a[f+1];h.sn<o&&this.fragmentTracker.getState(y)!==Mt.OK?h=y:h=null}}return h}synchronizeToLiveEdge(e){let{config:t,media:r}=this;if(!r)return;let s=this.hls.liveSyncPosition,n=r.currentTime,a=e.fragments[0].start,o=e.edge,l=n>=a-t.maxFragLookUpTolerance&&n<=o;if(s!==null&&r.duration>s&&(n<s||!l)){let d=t.liveMaxLatencyDuration!==void 0?t.liveMaxLatencyDuration:t.liveMaxLatencyDurationCount*e.targetduration;(!l&&r.readyState<4||n<o-d)&&(this.loadedmetadata||(this.nextLoadPosition=s),r.readyState&&(this.warn(`Playback: ${n.toFixed(3)} is located too far from the end of live sliding playlist: ${o}, reset currentTime to : ${s.toFixed(3)}`),r.currentTime=s))}}alignPlaylists(e,t){let{levels:r,levelLastLoaded:s,fragPrevious:n}=this,a=s!==null?r[s]:null,o=e.fragments.length;if(!o)return this.warn("No fragments in live playlist"),0;let l=e.fragments[0].start,d=!t,c=e.alignedSliding&&oe(l);if(d||!c&&!l){Dk(n,a,e);let u=e.fragments[0].start;return this.log(`Live playlist sliding: ${u.toFixed(2)} start-sn: ${t?t.startSN:"na"}->${e.startSN} prev-sn: ${n?n.sn:"na"} fragments: ${o}`),u}return l}waitForCdnTuneIn(e){return e.live&&e.canBlockReload&&e.partTarget&&e.tuneInGoal>Math.max(e.partHoldBack,e.partTarget*3)}setStartPosition(e,t){let r=this.startPosition;if(r<t&&(r=-1),r===-1||this.lastCurrentTime===-1){let s=this.startTimeOffset!==null,n=s?this.startTimeOffset:e.startTimeOffset;n!==null&&oe(n)?(r=t+n,n<0&&(r+=e.totalduration),r=Math.min(Math.max(t,r),t+e.totalduration),this.log(`Start time offset ${n} found in ${s?"multivariant":"media"} playlist, adjust startPosition to ${r}`),this.startPosition=r):e.live?r=this.hls.liveSyncPosition||t:this.startPosition=r=0,this.lastCurrentTime=r}this.nextLoadPosition=r}getLoadPosition(){let{media:e}=this,t=0;return this.loadedmetadata&&e?t=e.currentTime:this.nextLoadPosition&&(t=this.nextLoadPosition),t}handleFragLoadAborted(e,t){this.transmuxer&&e.sn!=="initSegment"&&e.stats.aborted&&(this.warn(`Fragment ${e.sn}${t?" part "+t.index:""} of level ${e.level} was aborted`),this.resetFragmentLoading(e))}resetFragmentLoading(e){(!this.fragCurrent||!this.fragContextChanged(e)&&this.state!==V.FRAG_LOADING_WAITING_RETRY)&&(this.state=V.IDLE)}onFragmentOrKeyLoadError(e,t){if(t.chunkMeta&&!t.frag){let u=this.getCurrentContext(t.chunkMeta);u&&(t.frag=u.frag)}let r=t.frag;if(!r||r.type!==e||!this.levels)return;if(this.fragContextChanged(r)){var s;this.warn(`Frag load error must match current frag to retry ${r.url} > ${(s=this.fragCurrent)==null?void 0:s.url}`);return}let n=t.details===H.FRAG_GAP;n&&this.fragmentTracker.fragBuffered(r,!0);let a=t.errorAction,{action:o,retryCount:l=0,retryConfig:d}=a||{};if(a&&o===Yt.RetryRequest&&d){var c;this.resetStartWhenNotLoaded((c=this.levelLastLoaded)!=null?c:r.level);let u=Yg(d,l);this.warn(`Fragment ${r.sn} of ${e} ${r.level} errored with ${t.details}, retrying loading ${l+1}/${d.maxNumRetry} in ${u}ms`),a.resolved=!0,this.retryDate=self.performance.now()+u,this.state=V.FRAG_LOADING_WAITING_RETRY}else d&&a?(this.resetFragmentErrors(e),l<d.maxNumRetry?n||(a.resolved=!0):M.warn(`${t.details} reached or exceeded max retry (${l})`)):(a==null?void 0:a.action)===Yt.SendAlternateToPenaltyBox?this.state=V.WAITING_LEVEL:this.state=V.ERROR;this.tickImmediate()}reduceLengthAndFlushBuffer(e){if(this.state===V.PARSING||this.state===V.PARSED){let t=e.parent,r=this.getFwdBufferInfo(this.mediaBuffer,t),s=r&&r.len>.5;s&&this.reduceMaxBufferLength(r.len);let n=!s;return n&&this.warn(`Buffer full error while media.currentTime is not buffered, flush ${t} buffer`),e.frag&&(this.fragmentTracker.removeFragment(e.frag),this.nextLoadPosition=e.frag.start),this.resetLoadingState(),n}return!1}resetFragmentErrors(e){e===fe.AUDIO&&(this.fragCurrent=null),this.loadedmetadata||(this.startFragRequested=!1),this.state!==V.STOPPED&&(this.state=V.IDLE)}afterBufferFlushed(e,t,r){if(!e)return;let s=at.getBuffered(e);this.fragmentTracker.detectEvictedFragments(t,s,r),this.state===V.ENDED&&this.resetLoadingState()}resetLoadingState(){this.log("Reset loading state"),this.fragCurrent=null,this.fragPrevious=null,this.state=V.IDLE}resetStartWhenNotLoaded(e){if(!this.loadedmetadata){this.startFragRequested=!1;let t=this.levels?this.levels[e].details:null;t!=null&&t.live?(this.startPosition=-1,this.setStartPosition(t,0),this.resetLoadingState()):this.nextLoadPosition=this.startPosition}}resetWhenMissingContext(e){var t;this.warn(`The loading context changed while buffering fragment ${e.sn} of level ${e.level}. This chunk will not be buffered.`),this.removeUnbufferedFrags(),this.resetStartWhenNotLoaded((t=this.levelLastLoaded)!=null?t:e.level),this.resetLoadingState()}removeUnbufferedFrags(e=0){this.fragmentTracker.removeFragmentsInRange(e,1/0,this.playlistType,!1,!0)}updateLevelTiming(e,t,r,s){var n;let a=r.details;if(!a){this.warn("level.details undefined");return}if(Object.keys(e.elementaryStreams).reduce((l,d)=>{let c=e.elementaryStreams[d];if(c){let u=c.endPTS-c.startPTS;if(u<=0)return this.warn(`Could not parse fragment ${e.sn} ${d} duration reliably (${u})`),l||!1;let h=s?0:OT(a,e,c.startPTS,c.endPTS,c.startDTS,c.endDTS);return this.hls.trigger(b.LEVEL_PTS_UPDATED,{details:a,level:r,drift:h,type:d,frag:e,start:c.startPTS,end:c.endPTS}),!0}return l},!1))r.fragmentError=0;else if(((n=this.transmuxer)==null?void 0:n.error)===null){let l=new Error(`Found no media in fragment ${e.sn} of level ${e.level} resetting transmuxer to fallback to playlist timing`);if(r.fragmentError===0&&(r.fragmentError++,e.gap=!0,this.fragmentTracker.removeFragment(e),this.fragmentTracker.fragBuffered(e,!0)),this.warn(l.message),this.hls.trigger(b.ERROR,{type:he.MEDIA_ERROR,details:H.FRAG_PARSING_ERROR,fatal:!1,error:l,frag:e,reason:`Found no media in msn ${e.sn} of level "${r.url}"`}),!this.hls)return;this.resetTransmuxer()}this.state=V.PARSED,this.hls.trigger(b.FRAG_PARSED,{frag:e,part:t})}resetTransmuxer(){this.transmuxer&&(this.transmuxer.destroy(),this.transmuxer=null)}recoverWorkerError(e){if(e.event==="demuxerWorker"){var t,r,s;this.fragmentTracker.removeAllFragments(),this.resetTransmuxer(),this.resetStartWhenNotLoaded((t=(r=this.levelLastLoaded)!=null?r:(s=this.fragCurrent)==null?void 0:s.level)!=null?t:0),this.resetLoadingState()}}set state(e){let t=this._state;t!==e&&(this._state=e,this.log(`${t}->${e}`))}get state(){return this._state}};function HT(){return self.SourceBuffer||self.WebKitSourceBuffer}function Fk(){let i=Au();if(!i)return!1;let e=HT(),t=i&&typeof i.isTypeSupported=="function"&&i.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"'),r=!e||e.prototype&&typeof e.prototype.appendBuffer=="function"&&typeof e.prototype.remove=="function";return!!t&&!!r}function Bk(){var i;let e=HT();return typeof(e==null||(i=e.prototype)==null?void 0:i.changeType)=="function"}function $k(){return typeof __HLS_WORKER_BUNDLE__=="function"}function Hk(){let i=new self.Blob([`var exports={};var module={exports:exports};function define(f){f()};define.amd=true;(${__HLS_WORKER_BUNDLE__.toString()})(true);`],{type:"text/javascript"}),e=self.URL.createObjectURL(i);return{worker:new self.Worker(e),objectURL:e}}function Gk(i){let e=new self.URL(i,self.location.href).href;return{worker:new self.Worker(e),scriptURL:e}}function gr(i="",e=9e4){return{type:i,id:-1,pid:-1,inputTimeScale:e,sequenceNumber:-1,samples:[],dropped:0}}var lu=class{constructor(){this._audioTrack=void 0,this._id3Track=void 0,this.frameIndex=0,this.cachedData=null,this.basePTS=null,this.initPTS=null,this.lastPTS=null}resetInitSegment(e,t,r,s){this._id3Track={type:"id3",id:3,pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0}}resetTimeStamp(e){this.initPTS=e,this.resetContiguity()}resetContiguity(){this.basePTS=null,this.lastPTS=null,this.frameIndex=0}canParse(e,t){return!1}appendFrame(e,t,r){}demux(e,t){this.cachedData&&(e=Hs(this.cachedData,e),this.cachedData=null);let r=iu(e,0),s=r?r.length:0,n,a=this._audioTrack,o=this._id3Track,l=r?NI(r):void 0,d=e.length;for((this.basePTS===null||this.frameIndex===0&&oe(l))&&(this.basePTS=Wk(l,t,this.initPTS),this.lastPTS=this.basePTS),this.lastPTS===null&&(this.lastPTS=this.basePTS),r&&r.length>0&&o.samples.push({pts:this.lastPTS,dts:this.lastPTS,data:r,type:Ki.audioId3,duration:Number.POSITIVE_INFINITY});s<d;){if(this.canParse(e,s)){let c=this.appendFrame(a,e,s);c?(this.frameIndex++,this.lastPTS=c.sample.pts,s+=c.length,n=s):s=d}else OI(e,s)?(r=iu(e,s),o.samples.push({pts:this.lastPTS,dts:this.lastPTS,data:r,type:Ki.audioId3,duration:Number.POSITIVE_INFINITY}),s+=r.length,n=s):s++;if(s===d&&n!==d){let c=$s(e,n);this.cachedData?this.cachedData=Hs(this.cachedData,c):this.cachedData=c}}return{audioTrack:a,videoTrack:gr(),id3Track:o,textTrack:gr()}}demuxSampleAes(e,t,r){return Promise.reject(new Error(`[${this}] This demuxer does not support Sample-AES decryption`))}flush(e){let t=this.cachedData;return t&&(this.cachedData=null,this.demux(t,0)),{audioTrack:this._audioTrack,videoTrack:gr(),id3Track:this._id3Track,textTrack:gr()}}destroy(){}},Wk=(i,e,t)=>{if(oe(i))return i*90;let r=t?t.baseTime*9e4/t.timescale:0;return e*9e4+r};function Kk(i,e,t,r){let s,n,a,o,l=navigator.userAgent.toLowerCase(),d=r,c=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350];s=((e[t+2]&192)>>>6)+1;let u=(e[t+2]&60)>>>2;if(u>c.length-1){i.trigger(b.ERROR,{type:he.MEDIA_ERROR,details:H.FRAG_PARSING_ERROR,fatal:!0,reason:`invalid ADTS sampling index:${u}`});return}return a=(e[t+2]&1)<<2,a|=(e[t+3]&192)>>>6,M.log(`manifest codec:${r}, ADTS type:${s}, samplingIndex:${u}`),/firefox/i.test(l)?u>=6?(s=5,o=new Array(4),n=u-3):(s=2,o=new Array(2),n=u):l.indexOf("android")!==-1?(s=2,o=new Array(2),n=u):(s=5,o=new Array(4),r&&(r.indexOf("mp4a.40.29")!==-1||r.indexOf("mp4a.40.5")!==-1)||!r&&u>=6?n=u-3:((r&&r.indexOf("mp4a.40.2")!==-1&&(u>=6&&a===1||/vivaldi/i.test(l))||!r&&a===1)&&(s=2,o=new Array(2)),n=u)),o[0]=s<<3,o[0]|=(u&14)>>1,o[1]|=(u&1)<<7,o[1]|=a<<3,s===5&&(o[1]|=(n&14)>>1,o[2]=(n&1)<<7,o[2]|=8,o[3]=0),{config:o,samplerate:c[u],channelCount:a,codec:"mp4a.40."+s,manifestCodec:d}}function GT(i,e){return i[e]===255&&(i[e+1]&246)===240}function WT(i,e){return i[e+1]&1?7:9}function zg(i,e){return(i[e+3]&3)<<11|i[e+4]<<3|(i[e+5]&224)>>>5}function Vk(i,e){return e+5<i.length}function du(i,e){return e+1<i.length&&GT(i,e)}function qk(i,e){return Vk(i,e)&&GT(i,e)&&zg(i,e)<=i.length-e}function Yk(i,e){if(du(i,e)){let t=WT(i,e);if(e+t>=i.length)return!1;let r=zg(i,e);if(r<=t)return!1;let s=e+r;return s===i.length||du(i,s)}return!1}function KT(i,e,t,r,s){if(!i.samplerate){let n=Kk(e,t,r,s);if(!n)return;i.config=n.config,i.samplerate=n.samplerate,i.channelCount=n.channelCount,i.codec=n.codec,i.manifestCodec=n.manifestCodec,M.log(`parsed codec:${i.codec}, rate:${n.samplerate}, channels:${n.channelCount}`)}}function VT(i){return 1024*9e4/i}function jk(i,e){let t=WT(i,e);if(e+t<=i.length){let r=zg(i,e)-t;if(r>0)return{headerLength:t,frameLength:r}}}function qT(i,e,t,r,s){let n=VT(i.samplerate),a=r+s*n,o=jk(e,t),l;if(o){let{frameLength:u,headerLength:h}=o,f=h+u,g=Math.max(0,t+f-e.length);g?(l=new Uint8Array(f-h),l.set(e.subarray(t+h,e.length),0)):l=e.subarray(t+h,t+f);let E={unit:l,pts:a};return g||i.samples.push(E),{sample:E,length:f,missing:g}}let d=e.length-t;return l=new Uint8Array(d),l.set(e.subarray(t,e.length),0),{sample:{unit:l,pts:a},length:d,missing:-1}}var dg=class extends lu{constructor(e,t){super(),this.observer=void 0,this.config=void 0,this.observer=e,this.config=t}resetInitSegment(e,t,r,s){super.resetInitSegment(e,t,r,s),this._audioTrack={container:"audio/adts",type:"audio",id:2,pid:-1,sequenceNumber:0,segmentCodec:"aac",samples:[],manifestCodec:t,duration:s,inputTimeScale:9e4,dropped:0}}static probe(e){if(!e)return!1;let r=(iu(e,0)||[]).length;for(let s=e.length;r<s;r++)if(Yk(e,r))return M.log("ADTS sync word found !"),!0;return!1}canParse(e,t){return qk(e,t)}appendFrame(e,t,r){KT(e,this.observer,t,r,e.manifestCodec);let s=qT(e,t,r,this.basePTS,this.frameIndex);if(s&&s.missing===0)return s}},zk=/\/emsg[-/]ID3/i,cg=class{constructor(e,t){this.remainderData=null,this.timeOffset=0,this.config=void 0,this.videoTrack=void 0,this.audioTrack=void 0,this.id3Track=void 0,this.txtTrack=void 0,this.config=t}resetTimeStamp(){}resetInitSegment(e,t,r,s){let n=this.videoTrack=gr("video",1),a=this.audioTrack=gr("audio",1),o=this.txtTrack=gr("text",1);if(this.id3Track=gr("id3",1),this.timeOffset=0,!(e!=null&&e.byteLength))return;let l=LT(e);if(l.video){let{id:d,timescale:c,codec:u}=l.video;n.id=d,n.timescale=o.timescale=c,n.codec=u}if(l.audio){let{id:d,timescale:c,codec:u}=l.audio;a.id=d,a.timescale=c,a.codec=u}o.id=xT.text,n.sampleDuration=0,n.duration=a.duration=s}resetContiguity(){this.remainderData=null}static probe(e){return e=e.length>16384?e.subarray(0,16384):e,Ue(e,["moof"]).length>0}demux(e,t){this.timeOffset=t;let r=e,s=this.videoTrack,n=this.txtTrack;if(this.config.progressive){this.remainderData&&(r=Hs(this.remainderData,e));let o=QI(r);this.remainderData=o.remainder,s.samples=o.valid||new Uint8Array}else s.samples=r;let a=this.extractID3Track(s,t);return n.samples=Oy(t,s),{videoTrack:s,audioTrack:this.audioTrack,id3Track:a,textTrack:this.txtTrack}}flush(){let e=this.timeOffset,t=this.videoTrack,r=this.txtTrack;t.samples=this.remainderData||new Uint8Array,this.remainderData=null;let s=this.extractID3Track(t,this.timeOffset);return r.samples=Oy(e,t),{videoTrack:t,audioTrack:gr(),id3Track:s,textTrack:gr()}}extractID3Track(e,t){let r=this.id3Track;if(e.samples.length){let s=Ue(e.samples,["emsg"]);s&&s.forEach(n=>{let a=ek(n);if(zk.test(a.schemeIdUri)){let o=oe(a.presentationTime)?a.presentationTime/a.timeScale:t+a.presentationTimeDelta/a.timeScale,l=a.eventDuration===4294967295?Number.POSITIVE_INFINITY:a.eventDuration/a.timeScale;l<=.001&&(l=Number.POSITIVE_INFINITY);let d=a.payload;r.samples.push({data:d,len:d.byteLength,dts:o,pts:o,type:Ki.emsg,duration:l})}})}return r}demuxSampleAes(e,t,r){return Promise.reject(new Error("The MP4 demuxer does not support SAMPLE-AES decryption"))}destroy(){}},jc=null,Xk=[32,64,96,128,160,192,224,256,288,320,352,384,416,448,32,48,56,64,80,96,112,128,160,192,224,256,320,384,32,40,48,56,64,80,96,112,128,160,192,224,256,320,32,48,56,64,80,96,112,128,144,160,176,192,224,256,8,16,24,32,40,48,56,64,80,96,112,128,144,160],Qk=[44100,48e3,32e3,22050,24e3,16e3,11025,12e3,8e3],Zk=[[0,72,144,12],[0,0,0,0],[0,72,144,12],[0,144,144,12]],Jk=[0,1,1,4];function YT(i,e,t,r,s){if(t+24>e.length)return;let n=jT(e,t);if(n&&t+n.frameLength<=e.length){let a=n.samplesPerFrame*9e4/n.sampleRate,o=r+s*a,l={unit:e.subarray(t,t+n.frameLength),pts:o,dts:o};return i.config=[],i.channelCount=n.channelCount,i.samplerate=n.sampleRate,i.samples.push(l),{sample:l,length:n.frameLength,missing:0}}}function jT(i,e){let t=i[e+1]>>3&3,r=i[e+1]>>1&3,s=i[e+2]>>4&15,n=i[e+2]>>2&3;if(t!==1&&s!==0&&s!==15&&n!==3){let a=i[e+2]>>1&1,o=i[e+3]>>6,l=t===3?3-r:r===3?3:4,d=Xk[l*14+s-1]*1e3,u=Qk[(t===3?0:t===2?1:2)*3+n],h=o===3?1:2,f=Zk[t][r],g=Jk[r],E=f*8*g,y=Math.floor(f*d/u+a)*g;if(jc===null){let L=(navigator.userAgent||"").match(/Chrome\/(\d+)/i);jc=L?parseInt(L[1]):0}return!!jc&&jc<=87&&r===2&&d>=224e3&&o===0&&(i[e+3]=i[e+3]|128),{sampleRate:u,channelCount:h,frameLength:y,samplesPerFrame:E}}}function Xg(i,e){return i[e]===255&&(i[e+1]&224)===224&&(i[e+1]&6)!==0}function zT(i,e){return e+1<i.length&&Xg(i,e)}function eL(i,e){return Xg(i,e)&&4<=i.length-e}function tL(i,e){if(e+1<i.length&&Xg(i,e)){let r=jT(i,e),s=4;r!=null&&r.frameLength&&(s=r.frameLength);let n=e+s;return n===i.length||zT(i,n)}return!1}var cu=class{constructor(e){this.data=void 0,this.bytesAvailable=void 0,this.word=void 0,this.bitsAvailable=void 0,this.data=e,this.bytesAvailable=e.byteLength,this.word=0,this.bitsAvailable=0}loadWord(){let e=this.data,t=this.bytesAvailable,r=e.byteLength-t,s=new Uint8Array(4),n=Math.min(4,t);if(n===0)throw new Error("no bytes available");s.set(e.subarray(r,r+n)),this.word=new DataView(s.buffer).getUint32(0),this.bitsAvailable=n*8,this.bytesAvailable-=n}skipBits(e){let t;e=Math.min(e,this.bytesAvailable*8+this.bitsAvailable),this.bitsAvailable>e?(this.word<<=e,this.bitsAvailable-=e):(e-=this.bitsAvailable,t=e>>3,e-=t<<3,this.bytesAvailable-=t,this.loadWord(),this.word<<=e,this.bitsAvailable-=e)}readBits(e){let t=Math.min(this.bitsAvailable,e),r=this.word>>>32-t;if(e>32&&M.error("Cannot read more than 32 bits at a time"),this.bitsAvailable-=t,this.bitsAvailable>0)this.word<<=t;else if(this.bytesAvailable>0)this.loadWord();else throw new Error("no bits available");return t=e-t,t>0&&this.bitsAvailable?r<<t|this.readBits(t):r}skipLZ(){let e;for(e=0;e<this.bitsAvailable;++e)if(this.word&2147483648>>>e)return this.word<<=e,this.bitsAvailable-=e,e;return this.loadWord(),e+this.skipLZ()}skipUEG(){this.skipBits(1+this.skipLZ())}skipEG(){this.skipBits(1+this.skipLZ())}readUEG(){let e=this.skipLZ();return this.readBits(e+1)-1}readEG(){let e=this.readUEG();return 1&e?1+e>>>1:-1*(e>>>1)}readBoolean(){return this.readBits(1)===1}readUByte(){return this.readBits(8)}readUShort(){return this.readBits(16)}readUInt(){return this.readBits(32)}skipScalingList(e){let t=8,r=8,s;for(let n=0;n<e;n++)r!==0&&(s=this.readEG(),r=(t+s+256)%256),t=r===0?t:r}readSPS(){let e=0,t=0,r=0,s=0,n,a,o,l=this.readUByte.bind(this),d=this.readBits.bind(this),c=this.readUEG.bind(this),u=this.readBoolean.bind(this),h=this.skipBits.bind(this),f=this.skipEG.bind(this),g=this.skipUEG.bind(this),E=this.skipScalingList.bind(this);l();let y=l();if(d(5),h(3),l(),g(),y===100||y===110||y===122||y===244||y===44||y===83||y===86||y===118||y===128){let B=c();if(B===3&&h(1),g(),g(),h(1),u())for(a=B!==3?8:12,o=0;o<a;o++)u()&&(o<6?E(16):E(64))}g();let S=c();if(S===0)c();else if(S===1)for(h(1),f(),f(),n=c(),o=0;o<n;o++)f();g(),h(1);let w=c(),L=c(),F=d(1);F===0&&h(1),h(1),u()&&(e=c(),t=c(),r=c(),s=c());let R=[1,1];if(u()&&u())switch(l()){case 1:R=[1,1];break;case 2:R=[12,11];break;case 3:R=[10,11];break;case 4:R=[16,11];break;case 5:R=[40,33];break;case 6:R=[24,11];break;case 7:R=[20,11];break;case 8:R=[32,11];break;case 9:R=[80,33];break;case 10:R=[18,11];break;case 11:R=[15,11];break;case 12:R=[64,33];break;case 13:R=[160,99];break;case 14:R=[4,3];break;case 15:R=[3,2];break;case 16:R=[2,1];break;case 255:{R=[l()<<8|l(),l()<<8|l()];break}}return{width:Math.ceil((w+1)*16-e*2-t*2),height:(2-F)*(L+1)*16-(F?2:4)*(r+s),pixelRatio:R}}readSliceType(){return this.readUByte(),this.readUEG(),this.readUEG()}},ug=class{constructor(e,t,r){this.keyData=void 0,this.decrypter=void 0,this.keyData=r,this.decrypter=new Ro(t,{removePKCS7Padding:!1})}decryptBuffer(e){return this.decrypter.decrypt(e,this.keyData.key.buffer,this.keyData.iv.buffer)}decryptAacSample(e,t,r){let s=e[t].unit;if(s.length<=16)return;let n=s.subarray(16,s.length-s.length%16),a=n.buffer.slice(n.byteOffset,n.byteOffset+n.length);this.decryptBuffer(a).then(o=>{let l=new Uint8Array(o);s.set(l,16),this.decrypter.isSync()||this.decryptAacSamples(e,t+1,r)})}decryptAacSamples(e,t,r){for(;;t++){if(t>=e.length){r();return}if(!(e[t].unit.length<32)&&(this.decryptAacSample(e,t,r),!this.decrypter.isSync()))return}}getAvcEncryptedData(e){let t=Math.floor((e.length-48)/160)*16+16,r=new Int8Array(t),s=0;for(let n=32;n<e.length-16;n+=160,s+=16)r.set(e.subarray(n,n+16),s);return r}getAvcDecryptedUnit(e,t){let r=new Uint8Array(t),s=0;for(let n=32;n<e.length-16;n+=160,s+=16)e.set(r.subarray(s,s+16),n);return e}decryptAvcSample(e,t,r,s,n){let a=CT(n.data),o=this.getAvcEncryptedData(a);this.decryptBuffer(o.buffer).then(l=>{n.data=this.getAvcDecryptedUnit(a,l),this.decrypter.isSync()||this.decryptAvcSamples(e,t,r+1,s)})}decryptAvcSamples(e,t,r,s){if(e instanceof Uint8Array)throw new Error("Cannot decrypt samples of type Uint8Array");for(;;t++,r=0){if(t>=e.length){s();return}let n=e[t].units;for(;!(r>=n.length);r++){let a=n[r];if(!(a.data.length<=48||a.type!==1&&a.type!==5)&&(this.decryptAvcSample(e,t,r,s,a),!this.decrypter.isSync()))return}}}},qt=188,hg=class i{constructor(e,t,r){this.observer=void 0,this.config=void 0,this.typeSupported=void 0,this.sampleAes=null,this.pmtParsed=!1,this.audioCodec=void 0,this.videoCodec=void 0,this._duration=0,this._pmtId=-1,this._avcTrack=void 0,this._audioTrack=void 0,this._id3Track=void 0,this._txtTrack=void 0,this.aacOverFlow=null,this.avcSample=null,this.remainderData=null,this.observer=e,this.config=t,this.typeSupported=r}static probe(e){let t=i.syncOffset(e);return t>0&&M.warn(`MPEG2-TS detected but first sync word found @ offset ${t}`),t!==-1}static syncOffset(e){let t=e.length,r=Math.min(qt*5,e.length-qt)+1,s=0;for(;s<r;){let n=!1,a=-1,o=0;for(let l=s;l<t;l+=qt)if(e[l]===71){if(o++,a===-1&&(a=l,a!==0&&(r=Math.min(a+qt*99,e.length-qt)+1)),n||(n=fg(e,l)===0),n&&o>1&&(a===0&&o>2||l+qt>r))return a}else{if(o)return-1;break}s++}return-1}static createTrack(e,t){return{container:e==="video"||e==="audio"?"video/mp2t":void 0,type:e,id:xT[e],pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0,duration:e==="audio"?t:void 0}}resetInitSegment(e,t,r,s){this.pmtParsed=!1,this._pmtId=-1,this._avcTrack=i.createTrack("video"),this._audioTrack=i.createTrack("audio",s),this._id3Track=i.createTrack("id3"),this._txtTrack=i.createTrack("text"),this._audioTrack.segmentCodec="aac",this.aacOverFlow=null,this.avcSample=null,this.remainderData=null,this.audioCodec=t,this.videoCodec=r,this._duration=s}resetTimeStamp(){}resetContiguity(){let{_audioTrack:e,_avcTrack:t,_id3Track:r}=this;e&&(e.pesData=null),t&&(t.pesData=null),r&&(r.pesData=null),this.aacOverFlow=null,this.avcSample=null,this.remainderData=null}demux(e,t,r=!1,s=!1){r||(this.sampleAes=null);let n,a=this._avcTrack,o=this._audioTrack,l=this._id3Track,d=this._txtTrack,c=a.pid,u=a.pesData,h=o.pid,f=l.pid,g=o.pesData,E=l.pesData,y=null,S=this.pmtParsed,w=this._pmtId,L=e.length;if(this.remainderData&&(e=Hs(this.remainderData,e),L=e.length,this.remainderData=null),L<qt&&!s)return this.remainderData=e,{audioTrack:o,videoTrack:a,id3Track:l,textTrack:d};let F=Math.max(0,i.syncOffset(e));L-=(L-F)%qt,L<e.byteLength&&!s&&(this.remainderData=new Uint8Array(e.buffer,L,e.buffer.byteLength-L));let R=0;for(let P=F;P<L;P+=qt)if(e[P]===71){let $=!!(e[P+1]&64),K=fg(e,P),N=(e[P+3]&48)>>4,z;if(N>1){if(z=P+5+e[P+4],z===P+qt)continue}else z=P+4;switch(K){case c:$&&(u&&(n=Qn(u))&&this.parseAVCPES(a,d,n,!1),u={data:[],size:0}),u&&(u.data.push(e.subarray(z,P+qt)),u.size+=P+qt-z);break;case h:if($){if(g&&(n=Qn(g)))switch(o.segmentCodec){case"aac":this.parseAACPES(o,n);break;case"mp3":this.parseMPEGPES(o,n);break}g={data:[],size:0}}g&&(g.data.push(e.subarray(z,P+qt)),g.size+=P+qt-z);break;case f:$&&(E&&(n=Qn(E))&&this.parseID3PES(l,n),E={data:[],size:0}),E&&(E.data.push(e.subarray(z,P+qt)),E.size+=P+qt-z);break;case 0:$&&(z+=e[z]+1),w=this._pmtId=iL(e,z);break;case w:{$&&(z+=e[z]+1);let Y=rL(e,z,this.typeSupported,r);c=Y.avc,c>0&&(a.pid=c),h=Y.audio,h>0&&(o.pid=h,o.segmentCodec=Y.segmentCodec),f=Y.id3,f>0&&(l.pid=f),y!==null&&!S&&(M.warn(`MPEG-TS PMT found at ${P} after unknown PID '${y}'. Backtracking to sync byte @${F} to parse all TS packets.`),y=null,P=F-188),S=this.pmtParsed=!0;break}case 17:case 8191:break;default:y=K;break}}else R++;if(R>0){let P=new Error(`Found ${R} TS packet/s that do not start with 0x47`);this.observer.emit(b.ERROR,b.ERROR,{type:he.MEDIA_ERROR,details:H.FRAG_PARSING_ERROR,fatal:!1,error:P,reason:P.message})}a.pesData=u,o.pesData=g,l.pesData=E;let B={audioTrack:o,videoTrack:a,id3Track:l,textTrack:d};return s&&this.extractRemainingSamples(B),B}flush(){let{remainderData:e}=this;this.remainderData=null;let t;return e?t=this.demux(e,-1,!1,!0):t={videoTrack:this._avcTrack,audioTrack:this._audioTrack,id3Track:this._id3Track,textTrack:this._txtTrack},this.extractRemainingSamples(t),this.sampleAes?this.decrypt(t,this.sampleAes):t}extractRemainingSamples(e){let{audioTrack:t,videoTrack:r,id3Track:s,textTrack:n}=e,a=r.pesData,o=t.pesData,l=s.pesData,d;if(a&&(d=Qn(a))?(this.parseAVCPES(r,n,d,!0),r.pesData=null):r.pesData=a,o&&(d=Qn(o))){switch(t.segmentCodec){case"aac":this.parseAACPES(t,d);break;case"mp3":this.parseMPEGPES(t,d);break}t.pesData=null}else o!=null&&o.size&&M.log("last AAC PES packet truncated,might overlap between fragments"),t.pesData=o;l&&(d=Qn(l))?(this.parseID3PES(s,d),s.pesData=null):s.pesData=l}demuxSampleAes(e,t,r){let s=this.demux(e,r,!0,!this.config.progressive),n=this.sampleAes=new ug(this.observer,this.config,t);return this.decrypt(s,n)}decrypt(e,t){return new Promise(r=>{let{audioTrack:s,videoTrack:n}=e;s.samples&&s.segmentCodec==="aac"?t.decryptAacSamples(s.samples,0,()=>{n.samples?t.decryptAvcSamples(n.samples,0,0,()=>{r(e)}):r(e)}):n.samples&&t.decryptAvcSamples(n.samples,0,0,()=>{r(e)})})}destroy(){this._duration=0}parseAVCPES(e,t,r,s){let n=this.parseAVCNALu(e,r.data),a=this.avcSample,o,l=!1;r.data=null,a&&n.length&&!e.audFound&&(Eo(a,e),a=this.avcSample=zc(!1,r.pts,r.dts,"")),n.forEach(d=>{var c;switch(d.type){case 1:{let h=!1;o=!0;let f=d.data;if(l&&f.length>4){let g=new cu(f).readSliceType();(g===2||g===4||g===7||g===9)&&(h=!0)}if(h){var u;(u=a)!=null&&u.frame&&!a.key&&(Eo(a,e),a=this.avcSample=null)}a||(a=this.avcSample=zc(!0,r.pts,r.dts,"")),a.frame=!0,a.key=h;break}case 5:o=!0,(c=a)!=null&&c.frame&&!a.key&&(Eo(a,e),a=this.avcSample=null),a||(a=this.avcSample=zc(!0,r.pts,r.dts,"")),a.key=!0,a.frame=!0;break;case 6:{o=!0,wT(d.data,1,r.pts,t.samples);break}case 7:if(o=!0,l=!0,!e.sps){let h=d.data,g=new cu(h).readSPS();e.width=g.width,e.height=g.height,e.pixelRatio=g.pixelRatio,e.sps=[h],e.duration=this._duration;let E=h.subarray(1,4),y="avc1.";for(let S=0;S<3;S++){let w=E[S].toString(16);w.length<2&&(w="0"+w),y+=w}e.codec=y}break;case 8:o=!0,e.pps||(e.pps=[d.data]);break;case 9:o=!1,e.audFound=!0,a&&Eo(a,e),a=this.avcSample=zc(!1,r.pts,r.dts,"");break;case 12:o=!0;break;default:o=!1,a&&(a.debug+="unknown NAL "+d.type+" ");break}a&&o&&a.units.push(d)}),s&&a&&(Eo(a,e),this.avcSample=null)}getLastNalUnit(e){var t;let r=this.avcSample,s;if((!r||r.units.length===0)&&(r=e[e.length-1]),(t=r)!=null&&t.units){let n=r.units;s=n[n.length-1]}return s}parseAVCNALu(e,t){let r=t.byteLength,s=e.naluState||0,n=s,a=[],o=0,l,d,c,u=-1,h=0;for(s===-1&&(u=0,h=t[0]&31,s=0,o=1);o<r;){if(l=t[o++],!s){s=l?0:1;continue}if(s===1){s=l?0:2;continue}if(!l)s=3;else if(l===1){if(u>=0){let f={data:t.subarray(u,o-s-1),type:h};a.push(f)}else{let f=this.getLastNalUnit(e.samples);if(f&&(n&&o<=4-n&&f.state&&(f.data=f.data.subarray(0,f.data.byteLength-n)),d=o-s-1,d>0)){let g=new Uint8Array(f.data.byteLength+d);g.set(f.data,0),g.set(t.subarray(0,d),f.data.byteLength),f.data=g,f.state=0}}o<r?(c=t[o]&31,u=o,h=c,s=0):s=-1}else s=0}if(u>=0&&s>=0){let f={data:t.subarray(u,r),type:h,state:s};a.push(f)}if(a.length===0){let f=this.getLastNalUnit(e.samples);if(f){let g=new Uint8Array(f.data.byteLength+t.byteLength);g.set(f.data,0),g.set(t,f.data.byteLength),f.data=g}}return e.naluState=s,a}parseAACPES(e,t){let r=0,s=this.aacOverFlow,n=t.data;if(s){this.aacOverFlow=null;let u=s.missing,h=s.sample.unit.byteLength;if(u===-1){let f=new Uint8Array(h+n.byteLength);f.set(s.sample.unit,0),f.set(n,h),n=f}else{let f=h-u;s.sample.unit.set(n.subarray(0,u),f),e.samples.push(s.sample),r=s.missing}}let a,o;for(a=r,o=n.length;a<o-1&&!du(n,a);a++);if(a!==r){let u,h=a<o-1;h?u=`AAC PES did not start with ADTS header,offset:${a}`:u="No ADTS header found in AAC PES";let f=new Error(u);if(M.warn(`parsing error: ${u}`),this.observer.emit(b.ERROR,b.ERROR,{type:he.MEDIA_ERROR,details:H.FRAG_PARSING_ERROR,fatal:!1,levelRetry:h,error:f,reason:u}),!h)return}KT(e,this.observer,n,a,this.audioCodec);let l;if(t.pts!==void 0)l=t.pts;else if(s){let u=VT(e.samplerate);l=s.sample.pts+u}else{M.warn("[tsdemuxer]: AAC PES unknown PTS");return}let d=0,c;for(;a<o;)if(c=qT(e,n,a,l,d),a+=c.length,c.missing){this.aacOverFlow=c;break}else for(d++;a<o-1&&!du(n,a);a++);}parseMPEGPES(e,t){let r=t.data,s=r.length,n=0,a=0,o=t.pts;if(o===void 0){M.warn("[tsdemuxer]: MPEG PES unknown PTS");return}for(;a<s;)if(zT(r,a)){let l=YT(e,r,a,o,n);if(l)a+=l.length,n++;else break}else a++}parseID3PES(e,t){if(t.pts===void 0){M.warn("[tsdemuxer]: ID3 PES unknown PTS");return}let r=xt({},t,{type:this._avcTrack?Ki.emsg:Ki.audioId3,duration:Number.POSITIVE_INFINITY});e.samples.push(r)}};function zc(i,e,t,r){return{key:i,frame:!1,pts:e,dts:t,units:[],debug:r,length:0}}function fg(i,e){return((i[e+1]&31)<<8)+i[e+2]}function iL(i,e){return(i[e+10]&31)<<8|i[e+11]}function rL(i,e,t,r){let s={audio:-1,avc:-1,id3:-1,segmentCodec:"aac"},n=(i[e+1]&15)<<8|i[e+2],a=e+3+n-4,o=(i[e+10]&15)<<8|i[e+11];for(e+=12+o;e<a;){let l=fg(i,e);switch(i[e]){case 207:if(!r){M.log("ADTS AAC with AES-128-CBC frame encryption found in unencrypted stream");break}case 15:s.audio===-1&&(s.audio=l);break;case 21:s.id3===-1&&(s.id3=l);break;case 219:if(!r){M.log("H.264 with AES-128-CBC slice encryption found in unencrypted stream");break}case 27:s.avc===-1&&(s.avc=l);break;case 3:case 4:t.mpeg!==!0&&t.mp3!==!0?M.log("MPEG audio found, not supported in this browser"):s.audio===-1&&(s.audio=l,s.segmentCodec="mp3");break;case 36:M.warn("Unsupported HEVC stream type found");break}e+=((i[e+3]&15)<<8|i[e+4])+5}return s}function Qn(i){let e=0,t,r,s,n,a,o=i.data;if(!i||i.size===0)return null;for(;o[0].length<19&&o.length>1;){let d=new Uint8Array(o[0].length+o[1].length);d.set(o[0]),d.set(o[1],o[0].length),o[0]=d,o.splice(1,1)}if(t=o[0],(t[0]<<16)+(t[1]<<8)+t[2]===1){if(r=(t[4]<<8)+t[5],r&&r>i.size-6)return null;let d=t[7];d&192&&(n=(t[9]&14)*536870912+(t[10]&255)*4194304+(t[11]&254)*16384+(t[12]&255)*128+(t[13]&254)/2,d&64?(a=(t[14]&14)*536870912+(t[15]&255)*4194304+(t[16]&254)*16384+(t[17]&255)*128+(t[18]&254)/2,n-a>60*9e4&&(M.warn(`${Math.round((n-a)/9e4)}s delta between PTS and DTS, align them`),n=a)):a=n),s=t[8];let c=s+9;if(i.size<=c)return null;i.size-=c;let u=new Uint8Array(i.size);for(let h=0,f=o.length;h<f;h++){t=o[h];let g=t.byteLength;if(c)if(c>g){c-=g;continue}else t=t.subarray(c),g-=c,c=0;u.set(t,e),e+=g}return r&&(r-=s+3),{data:u,pts:n,dts:a,len:r}}return null}function Eo(i,e){if(i.units.length&&i.frame){if(i.pts===void 0){let t=e.samples,r=t.length;if(r){let s=t[r-1];i.pts=s.pts,i.dts=s.dts}else{e.dropped++;return}}e.samples.push(i)}i.debug.length&&M.log(i.pts+"/"+i.dts+":"+i.debug)}var mg=class extends lu{resetInitSegment(e,t,r,s){super.resetInitSegment(e,t,r,s),this._audioTrack={container:"audio/mpeg",type:"audio",id:2,pid:-1,sequenceNumber:0,segmentCodec:"mp3",samples:[],manifestCodec:t,duration:s,inputTimeScale:9e4,dropped:0}}static probe(e){if(!e)return!1;let r=(iu(e,0)||[]).length;for(let s=e.length;r<s;r++)if(tL(e,r))return M.log("MPEG Audio sync word found !"),!0;return!1}canParse(e,t){return eL(e,t)}appendFrame(e,t,r){if(this.basePTS!==null)return YT(e,t,r,this.basePTS,this.frameIndex)}},uu=class{static getSilentFrame(e,t){switch(e){case"mp4a.40.2":if(t===1)return new Uint8Array([0,200,0,128,35,128]);if(t===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(t===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(t===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(t===5)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(t===6)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224]);break;default:if(t===1)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(t===2)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(t===3)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);break}}},Jr=Math.pow(2,32)-1,St=class i{static init(){i.types={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],".mp3":[],mvex:[],mvhd:[],pasp:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[]};let e;for(e in i.types)i.types.hasOwnProperty(e)&&(i.types[e]=[e.charCodeAt(0),e.charCodeAt(1),e.charCodeAt(2),e.charCodeAt(3)]);let t=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),r=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]);i.HDLR_TYPES={video:t,audio:r};let s=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),n=new Uint8Array([0,0,0,0,0,0,0,0]);i.STTS=i.STSC=i.STCO=n,i.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),i.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0]),i.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),i.STSD=new Uint8Array([0,0,0,0,0,0,0,1]);let a=new Uint8Array([105,115,111,109]),o=new Uint8Array([97,118,99,49]),l=new Uint8Array([0,0,0,1]);i.FTYP=i.box(i.types.ftyp,a,l,a,o),i.DINF=i.box(i.types.dinf,i.box(i.types.dref,s))}static box(e,...t){let r=8,s=t.length,n=s;for(;s--;)r+=t[s].byteLength;let a=new Uint8Array(r);for(a[0]=r>>24&255,a[1]=r>>16&255,a[2]=r>>8&255,a[3]=r&255,a.set(e,4),s=0,r=8;s<n;s++)a.set(t[s],r),r+=t[s].byteLength;return a}static hdlr(e){return i.box(i.types.hdlr,i.HDLR_TYPES[e])}static mdat(e){return i.box(i.types.mdat,e)}static mdhd(e,t){t*=e;let r=Math.floor(t/(Jr+1)),s=Math.floor(t%(Jr+1));return i.box(i.types.mdhd,new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,e>>24&255,e>>16&255,e>>8&255,e&255,r>>24,r>>16&255,r>>8&255,r&255,s>>24,s>>16&255,s>>8&255,s&255,85,196,0,0]))}static mdia(e){return i.box(i.types.mdia,i.mdhd(e.timescale,e.duration),i.hdlr(e.type),i.minf(e))}static mfhd(e){return i.box(i.types.mfhd,new Uint8Array([0,0,0,0,e>>24,e>>16&255,e>>8&255,e&255]))}static minf(e){return e.type==="audio"?i.box(i.types.minf,i.box(i.types.smhd,i.SMHD),i.DINF,i.stbl(e)):i.box(i.types.minf,i.box(i.types.vmhd,i.VMHD),i.DINF,i.stbl(e))}static moof(e,t,r){return i.box(i.types.moof,i.mfhd(e),i.traf(r,t))}static moov(e){let t=e.length,r=[];for(;t--;)r[t]=i.trak(e[t]);return i.box.apply(null,[i.types.moov,i.mvhd(e[0].timescale,e[0].duration)].concat(r).concat(i.mvex(e)))}static mvex(e){let t=e.length,r=[];for(;t--;)r[t]=i.trex(e[t]);return i.box.apply(null,[i.types.mvex,...r])}static mvhd(e,t){t*=e;let r=Math.floor(t/(Jr+1)),s=Math.floor(t%(Jr+1)),n=new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,e>>24&255,e>>16&255,e>>8&255,e&255,r>>24,r>>16&255,r>>8&255,r&255,s>>24,s>>16&255,s>>8&255,s&255,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]);return i.box(i.types.mvhd,n)}static sdtp(e){let t=e.samples||[],r=new Uint8Array(4+t.length),s,n;for(s=0;s<t.length;s++)n=t[s].flags,r[s+4]=n.dependsOn<<4|n.isDependedOn<<2|n.hasRedundancy;return i.box(i.types.sdtp,r)}static stbl(e){return i.box(i.types.stbl,i.stsd(e),i.box(i.types.stts,i.STTS),i.box(i.types.stsc,i.STSC),i.box(i.types.stsz,i.STSZ),i.box(i.types.stco,i.STCO))}static avc1(e){let t=[],r=[],s,n,a;for(s=0;s<e.sps.length;s++)n=e.sps[s],a=n.byteLength,t.push(a>>>8&255),t.push(a&255),t=t.concat(Array.prototype.slice.call(n));for(s=0;s<e.pps.length;s++)n=e.pps[s],a=n.byteLength,r.push(a>>>8&255),r.push(a&255),r=r.concat(Array.prototype.slice.call(n));let o=i.box(i.types.avcC,new Uint8Array([1,t[3],t[4],t[5],255,224|e.sps.length].concat(t).concat([e.pps.length]).concat(r))),l=e.width,d=e.height,c=e.pixelRatio[0],u=e.pixelRatio[1];return i.box(i.types.avc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,l>>8&255,l&255,d>>8&255,d&255,0,72,0,0,0,72,0,0,0,0,0,0,0,1,18,100,97,105,108,121,109,111,116,105,111,110,47,104,108,115,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,17]),o,i.box(i.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),i.box(i.types.pasp,new Uint8Array([c>>24,c>>16&255,c>>8&255,c&255,u>>24,u>>16&255,u>>8&255,u&255])))}static esds(e){let t=e.config.length;return new Uint8Array([0,0,0,0,3,23+t,0,1,0,4,15+t,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([t]).concat(e.config).concat([6,1,2]))}static mp4a(e){let t=e.samplerate;return i.box(i.types.mp4a,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,e.channelCount,0,16,0,0,0,0,t>>8&255,t&255,0,0]),i.box(i.types.esds,i.esds(e)))}static mp3(e){let t=e.samplerate;return i.box(i.types[".mp3"],new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,e.channelCount,0,16,0,0,0,0,t>>8&255,t&255,0,0]))}static stsd(e){return e.type==="audio"?e.segmentCodec==="mp3"&&e.codec==="mp3"?i.box(i.types.stsd,i.STSD,i.mp3(e)):i.box(i.types.stsd,i.STSD,i.mp4a(e)):i.box(i.types.stsd,i.STSD,i.avc1(e))}static tkhd(e){let t=e.id,r=e.duration*e.timescale,s=e.width,n=e.height,a=Math.floor(r/(Jr+1)),o=Math.floor(r%(Jr+1));return i.box(i.types.tkhd,new Uint8Array([1,0,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,t>>24&255,t>>16&255,t>>8&255,t&255,0,0,0,0,a>>24,a>>16&255,a>>8&255,a&255,o>>24,o>>16&255,o>>8&255,o&255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,s>>8&255,s&255,0,0,n>>8&255,n&255,0,0]))}static traf(e,t){let r=i.sdtp(e),s=e.id,n=Math.floor(t/(Jr+1)),a=Math.floor(t%(Jr+1));return i.box(i.types.traf,i.box(i.types.tfhd,new Uint8Array([0,0,0,0,s>>24,s>>16&255,s>>8&255,s&255])),i.box(i.types.tfdt,new Uint8Array([1,0,0,0,n>>24,n>>16&255,n>>8&255,n&255,a>>24,a>>16&255,a>>8&255,a&255])),i.trun(e,r.length+16+20+8+16+8+8),r)}static trak(e){return e.duration=e.duration||4294967295,i.box(i.types.trak,i.tkhd(e),i.mdia(e))}static trex(e){let t=e.id;return i.box(i.types.trex,new Uint8Array([0,0,0,0,t>>24,t>>16&255,t>>8&255,t&255,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]))}static trun(e,t){let r=e.samples||[],s=r.length,n=12+16*s,a=new Uint8Array(n),o,l,d,c,u,h;for(t+=8+n,a.set([e.type==="video"?1:0,0,15,1,s>>>24&255,s>>>16&255,s>>>8&255,s&255,t>>>24&255,t>>>16&255,t>>>8&255,t&255],0),o=0;o<s;o++)l=r[o],d=l.duration,c=l.size,u=l.flags,h=l.cts,a.set([d>>>24&255,d>>>16&255,d>>>8&255,d&255,c>>>24&255,c>>>16&255,c>>>8&255,c&255,u.isLeading<<2|u.dependsOn,u.isDependedOn<<6|u.hasRedundancy<<4|u.paddingValue<<1|u.isNonSync,u.degradPrio&61440,u.degradPrio&15,h>>>24&255,h>>>16&255,h>>>8&255,h&255],12+16*o);return i.box(i.types.trun,a)}static initSegment(e){i.types||i.init();let t=i.moov(e),r=new Uint8Array(i.FTYP.byteLength+t.byteLength);return r.set(i.FTYP),r.set(t,i.FTYP.byteLength),r}};St.types=void 0;St.HDLR_TYPES=void 0;St.STTS=void 0;St.STSC=void 0;St.STCO=void 0;St.STSZ=void 0;St.VMHD=void 0;St.SMHD=void 0;St.STSD=void 0;St.FTYP=void 0;St.DINF=void 0;var XT=9e4;function Qg(i,e,t=1,r=!1){let s=i*e*t;return r?Math.round(s):s}function sL(i,e,t=1,r=!1){return Qg(i,e,1/t,r)}function bo(i,e=!1){return Qg(i,1e3,1/XT,e)}function nL(i,e=1){return Qg(i,XT,1/e)}var aL=10*1e3,sT=1024,oL=1152,Xc=null,wp=null,Ao=class{constructor(e,t,r,s=""){if(this.observer=void 0,this.config=void 0,this.typeSupported=void 0,this.ISGenerated=!1,this._initPTS=null,this._initDTS=null,this.nextAvcDts=null,this.nextAudioPts=null,this.videoSampleDuration=null,this.isAudioContiguous=!1,this.isVideoContiguous=!1,this.observer=e,this.config=t,this.typeSupported=r,this.ISGenerated=!1,Xc===null){let a=(navigator.userAgent||"").match(/Chrome\/(\d+)/i);Xc=a?parseInt(a[1]):0}if(wp===null){let n=navigator.userAgent.match(/Safari\/(\d+)/i);wp=n?parseInt(n[1]):0}}destroy(){}resetTimeStamp(e){M.log("[mp4-remuxer]: initPTS & initDTS reset"),this._initPTS=this._initDTS=e}resetNextTimestamp(){M.log("[mp4-remuxer]: reset next timestamp"),this.isVideoContiguous=!1,this.isAudioContiguous=!1}resetInitSegment(){M.log("[mp4-remuxer]: ISGenerated flag reset"),this.ISGenerated=!1}getVideoStartPts(e){let t=!1,r=e.reduce((s,n)=>{let a=n.pts-s;return a<-4294967296?(t=!0,xi(s,n.pts)):a>0?s:n.pts},e[0].pts);return t&&M.debug("PTS rollover detected"),r}remux(e,t,r,s,n,a,o,l){let d,c,u,h,f,g,E=n,y=n,S=e.pid>-1,w=t.pid>-1,L=t.samples.length,F=e.samples.length>0,R=o&&L>0||L>1;if((!S||F)&&(!w||R)||this.ISGenerated||o){this.ISGenerated||(u=this.generateIS(e,t,n,a));let P=this.isVideoContiguous,$=-1,K;if(R&&($=lL(t.samples),!P&&this.config.forceKeyFrameOnDiscontinuity))if(g=!0,$>0){M.warn(`[mp4-remuxer]: Dropped ${$} out of ${L} video samples due to a missing keyframe`);let N=this.getVideoStartPts(t.samples);t.samples=t.samples.slice($),t.dropped+=$,y+=(t.samples[0].pts-N)/t.inputTimeScale,K=y}else $===-1&&(M.warn(`[mp4-remuxer]: No keyframe found out of ${L} video samples`),g=!1);if(this.ISGenerated){if(F&&R){let N=this.getVideoStartPts(t.samples),Y=(xi(e.samples[0].pts,N)-N)/t.inputTimeScale;E+=Math.max(0,Y),y+=Math.max(0,-Y)}if(F){if(e.samplerate||(M.warn("[mp4-remuxer]: regenerate InitSegment as audio detected"),u=this.generateIS(e,t,n,a)),c=this.remuxAudio(e,E,this.isAudioContiguous,a,w||R||l===fe.AUDIO?y:void 0),R){let N=c?c.endPTS-c.startPTS:0;t.inputTimeScale||(M.warn("[mp4-remuxer]: regenerate InitSegment as video detected"),u=this.generateIS(e,t,n,a)),d=this.remuxVideo(t,y,P,N)}}else R&&(d=this.remuxVideo(t,y,P,0));d&&(d.firstKeyFrame=$,d.independent=$!==-1,d.firstKeyFramePTS=K)}}return this.ISGenerated&&this._initPTS&&this._initDTS&&(r.samples.length&&(f=QT(r,n,this._initPTS,this._initDTS)),s.samples.length&&(h=ZT(s,n,this._initPTS))),{audio:c,video:d,initSegment:u,independent:g,text:h,id3:f}}generateIS(e,t,r,s){let n=e.samples,a=t.samples,o=this.typeSupported,l={},d=this._initPTS,c=!d||s,u="audio/mp4",h,f,g;if(c&&(h=f=1/0),e.config&&n.length){switch(e.timescale=e.samplerate,e.segmentCodec){case"mp3":o.mpeg?(u="audio/mpeg",e.codec=""):o.mp3&&(e.codec="mp3");break}l.audio={id:"audio",container:u,codec:e.codec,initSegment:e.segmentCodec==="mp3"&&o.mpeg?new Uint8Array(0):St.initSegment([e]),metadata:{channelCount:e.channelCount}},c&&(g=e.inputTimeScale,!d||g!==d.timescale?h=f=n[0].pts-Math.round(g*r):c=!1)}if(t.sps&&t.pps&&a.length&&(t.timescale=t.inputTimeScale,l.video={id:"main",container:"video/mp4",codec:t.codec,initSegment:St.initSegment([t]),metadata:{width:t.width,height:t.height}},c))if(g=t.inputTimeScale,!d||g!==d.timescale){let E=this.getVideoStartPts(a),y=Math.round(g*r);f=Math.min(f,xi(a[0].dts,E)-y),h=Math.min(h,E-y)}else c=!1;if(Object.keys(l).length)return this.ISGenerated=!0,c?(this._initPTS={baseTime:h,timescale:g},this._initDTS={baseTime:f,timescale:g}):h=g=void 0,{tracks:l,initPTS:h,timescale:g}}remuxVideo(e,t,r,s){let n=e.inputTimeScale,a=e.samples,o=[],l=a.length,d=this._initPTS,c=this.nextAvcDts,u=8,h=this.videoSampleDuration,f,g,E=Number.POSITIVE_INFINITY,y=Number.NEGATIVE_INFINITY,S=!1;if(!r||c===null){let Z=t*n,te=a[0].pts-xi(a[0].dts,a[0].pts);c=Z-te}let w=d.baseTime*n/d.timescale;for(let Z=0;Z<l;Z++){let te=a[Z];te.pts=xi(te.pts-w,c),te.dts=xi(te.dts-w,c),te.dts<a[Z>0?Z-1:Z].dts&&(S=!0)}S&&a.sort(function(Z,te){let ie=Z.dts-te.dts,_e=Z.pts-te.pts;return ie||_e}),f=a[0].dts,g=a[a.length-1].dts;let L=g-f,F=L?Math.round(L/(l-1)):h||e.inputTimeScale/30;if(r){let Z=f-c,te=Z>F,ie=Z<-1;if((te||ie)&&(te?M.warn(`AVC: ${bo(Z,!0)} ms (${Z}dts) hole between fragments detected, filling it`):M.warn(`AVC: ${bo(-Z,!0)} ms (${Z}dts) overlapping between fragments detected`),!ie||c>=a[0].pts)){f=c;let _e=a[0].pts-Z;a[0].dts=f,a[0].pts=_e,M.log(`Video: First PTS/DTS adjusted: ${bo(_e,!0)}/${bo(f,!0)}, delta: ${bo(Z,!0)} ms`)}}f=Math.max(0,f);let R=0,B=0;for(let Z=0;Z<l;Z++){let te=a[Z],ie=te.units,_e=ie.length,Ae=0;for(let Je=0;Je<_e;Je++)Ae+=ie[Je].data.length;B+=Ae,R+=_e,te.length=Ae,te.dts=Math.max(te.dts,f),E=Math.min(te.pts,E),y=Math.max(te.pts,y)}g=a[l-1].dts;let P=B+4*R+8,$;try{$=new Uint8Array(P)}catch(Z){this.observer.emit(b.ERROR,b.ERROR,{type:he.MUX_ERROR,details:H.REMUX_ALLOC_ERROR,fatal:!1,error:Z,bytes:P,reason:`fail allocating video mdat ${P}`});return}let K=new DataView($.buffer);K.setUint32(0,P),$.set(St.types.mdat,4);let N=!1,z=Number.POSITIVE_INFINITY,Y=Number.POSITIVE_INFINITY,ge=Number.NEGATIVE_INFINITY,me=Number.NEGATIVE_INFINITY;for(let Z=0;Z<l;Z++){let te=a[Z],ie=te.units,_e=0;for(let Pt=0,Ot=ie.length;Pt<Ot;Pt++){let kt=ie[Pt],mi=kt.data,Nr=kt.data.byteLength;K.setUint32(u,Nr),u+=4,$.set(mi,u),u+=Nr,_e+=4+Nr}let Ae;if(Z<l-1)h=a[Z+1].dts-te.dts,Ae=a[Z+1].pts-te.pts;else{let Pt=this.config,Ot=Z>0?te.dts-a[Z-1].dts:F;if(Ae=Z>0?te.pts-a[Z-1].pts:F,Pt.stretchShortVideoTrack&&this.nextAudioPts!==null){let kt=Math.floor(Pt.maxBufferHole*n),mi=(s?E+s*n:this.nextAudioPts)-te.pts;mi>kt?(h=mi-Ot,h<0?h=Ot:N=!0,M.log(`[mp4-remuxer]: It is approximately ${mi/90} ms to the next segment; using duration ${h/90} ms for the last video frame.`)):h=Ot}else h=Ot}let Je=Math.round(te.pts-te.dts);z=Math.min(z,h),ge=Math.max(ge,h),Y=Math.min(Y,Ae),me=Math.max(me,Ae),o.push(new hu(te.key,h,_e,Je))}if(o.length){if(Xc){if(Xc<70){let Z=o[0].flags;Z.dependsOn=2,Z.isNonSync=0}}else if(wp&&me-Y<ge-z&&F/ge<.025&&o[0].cts===0){M.warn("Found irregular gaps in sample duration. Using PTS instead of DTS to determine MP4 sample duration.");let Z=f;for(let te=0,ie=o.length;te<ie;te++){let _e=Z+o[te].duration,Ae=Z+o[te].cts;if(te<ie-1){let Je=_e+o[te+1].cts;o[te].duration=Je-Ae}else o[te].duration=te?o[te-1].duration:F;o[te].cts=0,Z=_e}}}h=N||!h?F:h,this.nextAvcDts=c=g+h,this.videoSampleDuration=h,this.isVideoContiguous=!0;let Ee=St.moof(e.sequenceNumber++,f,xt({},e,{samples:o})),De="video",Le={data1:Ee,data2:$,startPTS:E/n,endPTS:(y+h)/n,startDTS:f/n,endDTS:c/n,type:De,hasAudio:!1,hasVideo:!0,nb:o.length,dropped:e.dropped};return e.samples=[],e.dropped=0,Le}remuxAudio(e,t,r,s,n){let a=e.inputTimeScale,o=e.samplerate?e.samplerate:a,l=a/o,d=e.segmentCodec==="aac"?sT:oL,c=d*l,u=this._initPTS,h=e.segmentCodec==="mp3"&&this.typeSupported.mpeg,f=[],g=n!==void 0,E=e.samples,y=h?0:8,S=this.nextAudioPts||-1,w=t*a,L=u.baseTime*a/u.timescale;if(this.isAudioContiguous=r=r||E.length&&S>0&&(s&&Math.abs(w-S)<9e3||Math.abs(xi(E[0].pts-L,w)-S)<20*c),E.forEach(function(De){De.pts=xi(De.pts-L,w)}),!r||S<0){if(E=E.filter(De=>De.pts>=0),!E.length)return;n===0?S=0:s&&!g?S=Math.max(0,w):S=E[0].pts}if(e.segmentCodec==="aac"){let De=this.config.maxAudioFramesDrift;for(let Le=0,Z=S;Le<E.length;Le++){let te=E[Le],ie=te.pts,_e=ie-Z,Ae=Math.abs(1e3*_e/a);if(_e<=-De*c&&g)Le===0&&(M.warn(`Audio frame @ ${(ie/a).toFixed(3)}s overlaps nextAudioPts by ${Math.round(1e3*_e/a)} ms.`),this.nextAudioPts=S=Z=ie);else if(_e>=De*c&&Ae<aL&&g){let Je=Math.round(_e/c);Z=ie-Je*c,Z<0&&(Je--,Z+=c),Le===0&&(this.nextAudioPts=S=Z),M.warn(`[mp4-remuxer]: Injecting ${Je} audio frame @ ${(Z/a).toFixed(3)}s due to ${Math.round(1e3*_e/a)} ms gap.`);for(let Pt=0;Pt<Je;Pt++){let Ot=Math.max(Z,0),kt=uu.getSilentFrame(e.manifestCodec||e.codec,e.channelCount);kt||(M.log("[mp4-remuxer]: Unable to get silent frame for given audio codec; duplicating last frame instead."),kt=te.unit.subarray()),E.splice(Le,0,{unit:kt,pts:Ot}),Z+=c,Le++}}te.pts=Z,Z+=c}}let F=null,R=null,B,P=0,$=E.length;for(;$--;)P+=E[$].unit.byteLength;for(let De=0,Le=E.length;De<Le;De++){let Z=E[De],te=Z.unit,ie=Z.pts;if(R!==null){let Ae=f[De-1];Ae.duration=Math.round((ie-R)/l)}else if(r&&e.segmentCodec==="aac"&&(ie=S),F=ie,P>0){P+=y;try{B=new Uint8Array(P)}catch(Ae){this.observer.emit(b.ERROR,b.ERROR,{type:he.MUX_ERROR,details:H.REMUX_ALLOC_ERROR,fatal:!1,error:Ae,bytes:P,reason:`fail allocating audio mdat ${P}`});return}h||(new DataView(B.buffer).setUint32(0,P),B.set(St.types.mdat,4))}else return;B.set(te,y);let _e=te.byteLength;y+=_e,f.push(new hu(!0,d,_e,0)),R=ie}let K=f.length;if(!K)return;let N=f[f.length-1];this.nextAudioPts=S=R+l*N.duration;let z=h?new Uint8Array(0):St.moof(e.sequenceNumber++,F/l,xt({},e,{samples:f}));e.samples=[];let Y=F/a,ge=S/a,Ee={data1:z,data2:B,startPTS:Y,endPTS:ge,startDTS:Y,endDTS:ge,type:"audio",hasAudio:!0,hasVideo:!1,nb:K};return this.isAudioContiguous=!0,Ee}remuxEmptyAudio(e,t,r,s){let n=e.inputTimeScale,a=e.samplerate?e.samplerate:n,o=n/a,l=this.nextAudioPts,d=this._initDTS,c=d.baseTime*9e4/d.timescale,u=(l!==null?l:s.startDTS*n)+c,h=s.endDTS*n+c,f=o*sT,g=Math.ceil((h-u)/f),E=uu.getSilentFrame(e.manifestCodec||e.codec,e.channelCount);if(M.warn("[mp4-remuxer]: remux empty Audio"),!E){M.trace("[mp4-remuxer]: Unable to remuxEmptyAudio since we were unable to get a silent frame for given audio codec");return}let y=[];for(let S=0;S<g;S++){let w=u+S*f;y.push({unit:E,pts:w,dts:w})}return e.samples=y,this.remuxAudio(e,t,r,!1)}};function xi(i,e){let t;if(e===null)return i;for(e<i?t=-8589934592:t=8589934592;Math.abs(i-e)>4294967296;)i+=t;return i}function lL(i){for(let e=0;e<i.length;e++)if(i[e].key)return e;return-1}function QT(i,e,t,r){let s=i.samples.length;if(!s)return;let n=i.inputTimeScale;for(let o=0;o<s;o++){let l=i.samples[o];l.pts=xi(l.pts-t.baseTime*n/t.timescale,e*n)/n,l.dts=xi(l.dts-r.baseTime*n/r.timescale,e*n)/n}let a=i.samples;return i.samples=[],{samples:a}}function ZT(i,e,t){let r=i.samples.length;if(!r)return;let s=i.inputTimeScale;for(let a=0;a<r;a++){let o=i.samples[a];o.pts=xi(o.pts-t.baseTime*s/t.timescale,e*s)/s}i.samples.sort((a,o)=>a.pts-o.pts);let n=i.samples;return i.samples=[],{samples:n}}var hu=class{constructor(e,t,r,s){this.size=void 0,this.duration=void 0,this.cts=void 0,this.flags=void 0,this.duration=t,this.size=r,this.cts=s,this.flags=new pg(e)}},pg=class{constructor(e){this.isLeading=0,this.isDependedOn=0,this.hasRedundancy=0,this.degradPrio=0,this.dependsOn=1,this.isNonSync=1,this.dependsOn=e?2:1,this.isNonSync=e?0:1}},gg=class{constructor(){this.emitInitSegment=!1,this.audioCodec=void 0,this.videoCodec=void 0,this.initData=void 0,this.initPTS=null,this.initTracks=void 0,this.lastEndTime=null}destroy(){}resetTimeStamp(e){this.initPTS=e,this.lastEndTime=null}resetNextTimestamp(){this.lastEndTime=null}resetInitSegment(e,t,r,s){this.audioCodec=t,this.videoCodec=r,this.generateInitSegment(qI(e,s)),this.emitInitSegment=!0}generateInitSegment(e){let{audioCodec:t,videoCodec:r}=this;if(!(e!=null&&e.byteLength)){this.initTracks=void 0,this.initData=void 0;return}let s=this.initData=LT(e);t||(t=nT(s.audio,Qe.AUDIO)),r||(r=nT(s.video,Qe.VIDEO));let n={};s.audio&&s.video?n.audiovideo={container:"video/mp4",codec:t+","+r,initSegment:e,id:"main"}:s.audio?n.audio={container:"audio/mp4",codec:t,initSegment:e,id:"audio"}:s.video?n.video={container:"video/mp4",codec:r,initSegment:e,id:"main"}:M.warn("[passthrough-remuxer.ts]: initSegment does not contain moov or trak boxes."),this.initTracks=n}remux(e,t,r,s,n,a){var o,l;let{initPTS:d,lastEndTime:c}=this,u={audio:void 0,video:void 0,text:s,id3:r,initSegment:void 0};oe(c)||(c=this.lastEndTime=n||0);let h=t.samples;if(!(h!=null&&h.length))return u;let f={initPTS:void 0,timescale:1},g=this.initData;if((o=g)!=null&&o.length||(this.generateInitSegment(h),g=this.initData),!((l=g)!=null&&l.length))return M.warn("[passthrough-remuxer.ts]: Failed to generate initSegment."),u;this.emitInitSegment&&(f.tracks=this.initTracks,this.emitInitSegment=!1);let E=jI(h,g),y=YI(g,h),S=y===null?n:y;(dL(d,S,n,E)||f.timescale!==d.timescale&&a)&&(f.initPTS=S-n,d&&d.timescale===1&&M.warn(`Adjusting initPTS by ${f.initPTS-d.baseTime}`),this.initPTS=d={baseTime:f.initPTS,timescale:1});let w=e?S-d.baseTime/d.timescale:c,L=w+E;XI(g,h,d.baseTime/d.timescale),E>0?this.lastEndTime=L:(M.warn("Duration parsed from mp4 should be greater than zero"),this.resetNextTimestamp());let F=!!g.audio,R=!!g.video,B="";F&&(B+="audio"),R&&(B+="video");let P={data1:h,startPTS:w,startDTS:w,endPTS:L,endDTS:L,type:B,hasAudio:F,hasVideo:R,nb:1,dropped:0};return u.audio=P.type==="audio"?P:void 0,u.video=P.type!=="audio"?P:void 0,u.initSegment=f,u.id3=QT(r,n,d,d),s.samples.length&&(u.text=ZT(s,n,d)),u}};function dL(i,e,t,r){if(i===null)return!0;let s=Math.max(r,1),n=e-i.baseTime/i.timescale;return Math.abs(n-t)>s}function nT(i,e){let t=i==null?void 0:i.codec;return t&&t.length>4?t:t==="hvc1"||t==="hev1"?"hvc1.1.6.L120.90":t==="av01"?"av01.0.04M.08":t==="avc1"||e===Qe.VIDEO?"avc1.42e01e":"mp4a.40.5"}var Rr;try{Rr=self.performance.now.bind(self.performance)}catch{M.debug("Unable to use Performance API on this environment"),Rr=typeof self!="undefined"&&self.Date.now}var Cp=[{demux:cg,remux:gg},{demux:hg,remux:Ao},{demux:dg,remux:Ao},{demux:mg,remux:Ao}],fu=class{constructor(e,t,r,s,n){this.async=!1,this.observer=void 0,this.typeSupported=void 0,this.config=void 0,this.vendor=void 0,this.id=void 0,this.demuxer=void 0,this.remuxer=void 0,this.decrypter=void 0,this.probe=void 0,this.decryptionPromise=null,this.transmuxConfig=void 0,this.currentTransmuxState=void 0,this.observer=e,this.typeSupported=t,this.config=r,this.vendor=s,this.id=n}configure(e){this.transmuxConfig=e,this.decrypter&&this.decrypter.reset()}push(e,t,r,s){let n=r.transmuxing;n.executeStart=Rr();let a=new Uint8Array(e),{currentTransmuxState:o,transmuxConfig:l}=this;s&&(this.currentTransmuxState=s);let{contiguous:d,discontinuity:c,trackSwitch:u,accurateTimeOffset:h,timeOffset:f,initSegmentChange:g}=s||o,{audioCodec:E,videoCodec:y,defaultInitPts:S,duration:w,initSegmentData:L}=l,F=cL(a,t);if(F&&F.method==="AES-128"){let $=this.getDecrypter();if($.isSync()){let K=$.softwareDecrypt(a,F.key.buffer,F.iv.buffer);if(r.part>-1&&(K=$.flush()),!K)return n.executeEnd=Rr(),Dp(r);a=new Uint8Array(K)}else return this.decryptionPromise=$.webCryptoDecrypt(a,F.key.buffer,F.iv.buffer).then(K=>{let N=this.push(K,null,r);return this.decryptionPromise=null,N}),this.decryptionPromise}let R=this.needsProbing(c,u);if(R){let $=this.configureTransmuxer(a);if($)return M.warn(`[transmuxer] ${$.message}`),this.observer.emit(b.ERROR,b.ERROR,{type:he.MEDIA_ERROR,details:H.FRAG_PARSING_ERROR,fatal:!1,error:$,reason:$.message}),n.executeEnd=Rr(),Dp(r)}(c||u||g||R)&&this.resetInitSegment(L,E,y,w,t),(c||g||R)&&this.resetInitialTimestamp(S),d||this.resetContiguity();let B=this.transmux(a,F,f,h,r),P=this.currentTransmuxState;return P.contiguous=!0,P.discontinuity=!1,P.trackSwitch=!1,n.executeEnd=Rr(),B}flush(e){let t=e.transmuxing;t.executeStart=Rr();let{decrypter:r,currentTransmuxState:s,decryptionPromise:n}=this;if(n)return n.then(()=>this.flush(e));let a=[],{timeOffset:o}=s;if(r){let u=r.flush();u&&a.push(this.push(u,null,e))}let{demuxer:l,remuxer:d}=this;if(!l||!d)return t.executeEnd=Rr(),[Dp(e)];let c=l.flush(o);return Jc(c)?c.then(u=>(this.flushRemux(a,u,e),a)):(this.flushRemux(a,c,e),a)}flushRemux(e,t,r){let{audioTrack:s,videoTrack:n,id3Track:a,textTrack:o}=t,{accurateTimeOffset:l,timeOffset:d}=this.currentTransmuxState;M.log(`[transmuxer.ts]: Flushed fragment ${r.sn}${r.part>-1?" p: "+r.part:""} of level ${r.level}`);let c=this.remuxer.remux(s,n,a,o,d,l,!0,this.id);e.push({remuxResult:c,chunkMeta:r}),r.transmuxing.executeEnd=Rr()}resetInitialTimestamp(e){let{demuxer:t,remuxer:r}=this;!t||!r||(t.resetTimeStamp(e),r.resetTimeStamp(e))}resetContiguity(){let{demuxer:e,remuxer:t}=this;!e||!t||(e.resetContiguity(),t.resetNextTimestamp())}resetInitSegment(e,t,r,s,n){let{demuxer:a,remuxer:o}=this;!a||!o||(a.resetInitSegment(e,t,r,s),o.resetInitSegment(e,t,r,n))}destroy(){this.demuxer&&(this.demuxer.destroy(),this.demuxer=void 0),this.remuxer&&(this.remuxer.destroy(),this.remuxer=void 0)}transmux(e,t,r,s,n){let a;return t&&t.method==="SAMPLE-AES"?a=this.transmuxSampleAes(e,t,r,s,n):a=this.transmuxUnencrypted(e,r,s,n),a}transmuxUnencrypted(e,t,r,s){let{audioTrack:n,videoTrack:a,id3Track:o,textTrack:l}=this.demuxer.demux(e,t,!1,!this.config.progressive);return{remuxResult:this.remuxer.remux(n,a,o,l,t,r,!1,this.id),chunkMeta:s}}transmuxSampleAes(e,t,r,s,n){return this.demuxer.demuxSampleAes(e,t,r).then(a=>({remuxResult:this.remuxer.remux(a.audioTrack,a.videoTrack,a.id3Track,a.textTrack,r,s,!1,this.id),chunkMeta:n}))}configureTransmuxer(e){let{config:t,observer:r,typeSupported:s,vendor:n}=this,a;for(let u=0,h=Cp.length;u<h;u++)if(Cp[u].demux.probe(e)){a=Cp[u];break}if(!a)return new Error("Failed to find demuxer by probing fragment data");let o=this.demuxer,l=this.remuxer,d=a.remux,c=a.demux;(!l||!(l instanceof d))&&(this.remuxer=new d(r,t,s,n)),(!o||!(o instanceof c))&&(this.demuxer=new c(r,t,s),this.probe=c.probe)}needsProbing(e,t){return!this.demuxer||!this.remuxer||e||t}getDecrypter(){let e=this.decrypter;return e||(e=this.decrypter=new Ro(this.config)),e}};function cL(i,e){let t=null;return i.byteLength>0&&e!=null&&e.key!=null&&e.iv!==null&&e.method!=null&&(t=e),t}var Dp=i=>({remuxResult:{},chunkMeta:i});function Jc(i){return"then"in i&&i.then instanceof Function}var vg=class{constructor(e,t,r,s,n){this.audioCodec=void 0,this.videoCodec=void 0,this.initSegmentData=void 0,this.duration=void 0,this.defaultInitPts=void 0,this.audioCodec=e,this.videoCodec=t,this.initSegmentData=r,this.duration=s,this.defaultInitPts=n||null}},Eg=class{constructor(e,t,r,s,n,a){this.discontinuity=void 0,this.contiguous=void 0,this.accurateTimeOffset=void 0,this.trackSwitch=void 0,this.timeOffset=void 0,this.initSegmentChange=void 0,this.discontinuity=e,this.contiguous=t,this.accurateTimeOffset=r,this.trackSwitch=s,this.timeOffset=n,this.initSegmentChange=a}},JT={exports:{}};(function(i){var e=Object.prototype.hasOwnProperty,t="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(t=!1));function s(l,d,c){this.fn=l,this.context=d,this.once=c||!1}function n(l,d,c,u,h){if(typeof c!="function")throw new TypeError("The listener must be a function");var f=new s(c,u||l,h),g=t?t+d:d;return l._events[g]?l._events[g].fn?l._events[g]=[l._events[g],f]:l._events[g].push(f):(l._events[g]=f,l._eventsCount++),l}function a(l,d){--l._eventsCount===0?l._events=new r:delete l._events[d]}function o(){this._events=new r,this._eventsCount=0}o.prototype.eventNames=function(){var d=[],c,u;if(this._eventsCount===0)return d;for(u in c=this._events)e.call(c,u)&&d.push(t?u.slice(1):u);return Object.getOwnPropertySymbols?d.concat(Object.getOwnPropertySymbols(c)):d},o.prototype.listeners=function(d){var c=t?t+d:d,u=this._events[c];if(!u)return[];if(u.fn)return[u.fn];for(var h=0,f=u.length,g=new Array(f);h<f;h++)g[h]=u[h].fn;return g},o.prototype.listenerCount=function(d){var c=t?t+d:d,u=this._events[c];return u?u.fn?1:u.length:0},o.prototype.emit=function(d,c,u,h,f,g){var E=t?t+d:d;if(!this._events[E])return!1;var y=this._events[E],S=arguments.length,w,L;if(y.fn){switch(y.once&&this.removeListener(d,y.fn,void 0,!0),S){case 1:return y.fn.call(y.context),!0;case 2:return y.fn.call(y.context,c),!0;case 3:return y.fn.call(y.context,c,u),!0;case 4:return y.fn.call(y.context,c,u,h),!0;case 5:return y.fn.call(y.context,c,u,h,f),!0;case 6:return y.fn.call(y.context,c,u,h,f,g),!0}for(L=1,w=new Array(S-1);L<S;L++)w[L-1]=arguments[L];y.fn.apply(y.context,w)}else{var F=y.length,R;for(L=0;L<F;L++)switch(y[L].once&&this.removeListener(d,y[L].fn,void 0,!0),S){case 1:y[L].fn.call(y[L].context);break;case 2:y[L].fn.call(y[L].context,c);break;case 3:y[L].fn.call(y[L].context,c,u);break;case 4:y[L].fn.call(y[L].context,c,u,h);break;default:if(!w)for(R=1,w=new Array(S-1);R<S;R++)w[R-1]=arguments[R];y[L].fn.apply(y[L].context,w)}}return!0},o.prototype.on=function(d,c,u){return n(this,d,c,u,!1)},o.prototype.once=function(d,c,u){return n(this,d,c,u,!0)},o.prototype.removeListener=function(d,c,u,h){var f=t?t+d:d;if(!this._events[f])return this;if(!c)return a(this,f),this;var g=this._events[f];if(g.fn)g.fn===c&&(!h||g.once)&&(!u||g.context===u)&&a(this,f);else{for(var E=0,y=[],S=g.length;E<S;E++)(g[E].fn!==c||h&&!g[E].once||u&&g[E].context!==u)&&y.push(g[E]);y.length?this._events[f]=y.length===1?y[0]:y:a(this,f)}return this},o.prototype.removeAllListeners=function(d){var c;return d?(c=t?t+d:d,this._events[c]&&a(this,c)):(this._events=new r,this._eventsCount=0),this},o.prototype.off=o.prototype.removeListener,o.prototype.addListener=o.prototype.on,o.prefixed=t,o.EventEmitter=o,i.exports=o})(JT);var uL=JT.exports,Zg=gI(uL),Mp=Au()||{isTypeSupported:()=>!1},mu=class{constructor(e,t,r,s){this.error=null,this.hls=void 0,this.id=void 0,this.observer=void 0,this.frag=null,this.part=null,this.useWorker=void 0,this.workerContext=null,this.onwmsg=void 0,this.transmuxer=null,this.onTransmuxComplete=void 0,this.onFlush=void 0;let n=e.config;this.hls=e,this.id=t,this.useWorker=!!n.enableWorker,this.onTransmuxComplete=r,this.onFlush=s;let a=(d,c)=>{c=c||{},c.frag=this.frag,c.id=this.id,d===b.ERROR&&(this.error=c.error),this.hls.trigger(d,c)};this.observer=new Zg,this.observer.on(b.FRAG_DECRYPTED,a),this.observer.on(b.ERROR,a);let o={mp4:Mp.isTypeSupported("video/mp4"),mpeg:Mp.isTypeSupported("audio/mpeg"),mp3:Mp.isTypeSupported('audio/mp4; codecs="mp3"')},l=navigator.vendor;if(this.useWorker&&typeof Worker!="undefined"&&(n.workerPath||$k())){try{n.workerPath?(M.log(`loading Web Worker ${n.workerPath} for "${t}"`),this.workerContext=Gk(n.workerPath)):(M.log(`injecting Web Worker for "${t}"`),this.workerContext=Hk()),this.onwmsg=u=>this.onWorkerMessage(u);let{worker:c}=this.workerContext;c.addEventListener("message",this.onwmsg),c.onerror=u=>{let h=new Error(`${u.message} (${u.filename}:${u.lineno})`);n.enableWorker=!1,M.warn(`Error in "${t}" Web Worker, fallback to inline`),this.hls.trigger(b.ERROR,{type:he.OTHER_ERROR,details:H.INTERNAL_EXCEPTION,fatal:!1,event:"demuxerWorker",error:h})},c.postMessage({cmd:"init",typeSupported:o,vendor:l,id:t,config:JSON.stringify(n)})}catch(c){M.warn(`Error setting up "${t}" Web Worker, fallback to inline`,c),this.resetWorker(),this.error=null,this.transmuxer=new fu(this.observer,o,n,l,t)}return}this.transmuxer=new fu(this.observer,o,n,l,t)}resetWorker(){if(this.workerContext){let{worker:e,objectURL:t}=this.workerContext;t&&self.URL.revokeObjectURL(t),e.removeEventListener("message",this.onwmsg),e.onerror=null,e.terminate(),this.workerContext=null}}destroy(){if(this.workerContext)this.resetWorker(),this.onwmsg=void 0;else{let t=this.transmuxer;t&&(t.destroy(),this.transmuxer=null)}let e=this.observer;e&&e.removeAllListeners(),this.frag=null,this.observer=null,this.hls=null}push(e,t,r,s,n,a,o,l,d,c){var u,h;d.transmuxing.start=self.performance.now();let{transmuxer:f}=this,g=a?a.start:n.start,E=n.decryptdata,y=this.frag,S=!(y&&n.cc===y.cc),w=!(y&&d.level===y.level),L=y?d.sn-y.sn:-1,F=this.part?d.part-this.part.index:-1,R=L===0&&d.id>1&&d.id===(y==null?void 0:y.stats.chunkCount),B=!w&&(L===1||L===0&&(F===1||R&&F<=0)),P=self.performance.now();(w||L||n.stats.parsing.start===0)&&(n.stats.parsing.start=P),a&&(F||!B)&&(a.stats.parsing.start=P);let $=!(y&&((u=n.initSegment)==null?void 0:u.url)===((h=y.initSegment)==null?void 0:h.url)),K=new Eg(S,B,l,w,g,$);if(!B||S||$){M.log(`[transmuxer-interface, ${n.type}]: Starting new transmux session for sn: ${d.sn} p: ${d.part} level: ${d.level} id: ${d.id}
1583
1583
  discontinuity: ${S}
1584
1584
  trackSwitch: ${w}
1585
1585
  contiguous: ${B}
@@ -1603,10 +1603,10 @@ svg, img, ::slotted(svg), ::slotted(img) {
1603
1603
  `).split(`
1604
1604
  `),d=[],c=e?nL(e.baseTime,e.timescale):0,u="00:00.000",h=0,f=0,g,E=!0;o.oncue=function(y){let S=t[r],w=t.ccOffset,L=(h-c)/9e4;if(S!=null&&S.new&&(f!==void 0?w=t.ccOffset=S.start:IL(t,r,L)),L){if(!e){g=new Error("Missing initPTS for VTT MPEGTS");return}w=L-t.presentationOffset}let F=y.endTime-y.startTime,R=xi((y.startTime+w-f)*9e4,s*9e4)/9e4;y.startTime=Math.max(R,0),y.endTime=Math.max(R+F,0);let B=y.text.trim();y.text=decodeURIComponent(encodeURIComponent(B)),y.id||(y.id=e0(y.startTime,y.endTime,B)),y.endTime>0&&d.push(y)},o.onparsingerror=function(y){g=y},o.onflush=function(){if(g){a(g);return}n(d)},l.forEach(y=>{if(E)if(Np(y,"X-TIMESTAMP-MAP=")){E=!1,y.slice(16).split(",").forEach(S=>{Np(S,"LOCAL:")?u=S.slice(6):Np(S,"MPEGTS:")&&(h=parseInt(S.slice(7)))});try{f=xL(u)/1e3}catch(S){g=S}return}else y===""&&(E=!1);o.parse(y+`
1605
1605
  `)}),o.flush()}var Fp="stpp.ttml.im1t",n_=/^(\d{2,}):(\d{2}):(\d{2}):(\d{2})\.?(\d+)?$/,a_=/^(\d*(?:\.\d*)?)(h|m|s|ms|f|t)$/,LL={left:"start",center:"center",right:"end",start:"start",end:"end"};function fT(i,e,t,r){let s=Ue(new Uint8Array(i),["mdat"]);if(s.length===0){r(new Error("Could not parse IMSC1 mdat"));return}let n=s.map(o=>vr(o)),a=sL(e.baseTime,1,e.timescale);try{n.forEach(o=>t(RL(o,a)))}catch(o){r(o)}}function RL(i,e){let s=new DOMParser().parseFromString(i,"text/xml").getElementsByTagName("tt")[0];if(!s)throw new Error("Invalid ttml");let n={frameRate:30,subFrameRate:1,frameRateMultiplier:0,tickRate:0},a=Object.keys(n).reduce((u,h)=>(u[h]=s.getAttribute(`ttp:${h}`)||n[h],u),{}),o=s.getAttribute("xml:space")!=="preserve",l=mT(Bp(s,"styling","style")),d=mT(Bp(s,"layout","region")),c=Bp(s,"body","[begin]");return[].map.call(c,u=>{let h=o_(u,o);if(!h||!u.hasAttribute("begin"))return null;let f=Hp(u.getAttribute("begin"),a),g=Hp(u.getAttribute("dur"),a),E=Hp(u.getAttribute("end"),a);if(f===null)throw pT(u);if(E===null){if(g===null)throw pT(u);E=f+g}let y=new Jg(f-e,E-e,h);y.id=e0(y.startTime,y.endTime,y.text);let S=d[u.getAttribute("region")],w=l[u.getAttribute("style")],L=wL(S,w,l),{textAlign:F}=L;if(F){let R=LL[F];R&&(y.lineAlign=R),y.align=F}return xt(y,L),y}).filter(u=>u!==null)}function Bp(i,e,t){let r=i.getElementsByTagName(e)[0];return r?[].slice.call(r.querySelectorAll(t)):[]}function mT(i){return i.reduce((e,t)=>{let r=t.getAttribute("xml:id");return r&&(e[r]=t),e},{})}function o_(i,e){return[].slice.call(i.childNodes).reduce((t,r,s)=>{var n;return r.nodeName==="br"&&s?t+`
1606
- `:(n=r.childNodes)!=null&&n.length?o_(r,e):e?t+r.textContent.trim().replace(/\s+/g," "):t+r.textContent},"")}function wL(i,e,t){let r="http://www.w3.org/ns/ttml#styling",s=null,n=["displayAlign","textAlign","color","backgroundColor","fontSize","fontFamily"],a=i!=null&&i.hasAttribute("style")?i.getAttribute("style"):null;return a&&t.hasOwnProperty(a)&&(s=t[a]),n.reduce((o,l)=>{let d=$p(e,r,l)||$p(i,r,l)||$p(s,r,l);return d&&(o[l]=d),o},{})}function $p(i,e,t){return i&&i.hasAttributeNS(e,t)?i.getAttributeNS(e,t):null}function pT(i){return new Error(`Could not parse ttml timestamp ${i}`)}function Hp(i,e){if(!i)return null;let t=i_(i);return t===null&&(n_.test(i)?t=CL(i,e):a_.test(i)&&(t=DL(i,e))),t}function CL(i,e){let t=n_.exec(i),r=(t[4]|0)+(t[5]|0)/e.subFrameRate;return(t[1]|0)*3600+(t[2]|0)*60+(t[3]|0)+r/e.frameRate}function DL(i,e){let t=a_.exec(i),r=Number(t[1]);switch(t[2]){case"h":return r*3600;case"m":return r*60;case"ms":return r*1e3;case"f":return r/e.frameRate;case"t":return r/e.tickRate}return r}var Ug=class{constructor(e){if(this.hls=void 0,this.media=null,this.config=void 0,this.enabled=!0,this.Cues=void 0,this.textTracks=[],this.tracks=[],this.initPTS=[],this.unparsedVttFrags=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.cea608Parser1=void 0,this.cea608Parser2=void 0,this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=gT(),this.captionsProperties=void 0,this.hls=e,this.config=e.config,this.Cues=e.config.cueHandler,this.captionsProperties={textTrack1:{label:this.config.captionsTextTrack1Label,languageCode:this.config.captionsTextTrack1LanguageCode},textTrack2:{label:this.config.captionsTextTrack2Label,languageCode:this.config.captionsTextTrack2LanguageCode},textTrack3:{label:this.config.captionsTextTrack3Label,languageCode:this.config.captionsTextTrack3LanguageCode},textTrack4:{label:this.config.captionsTextTrack4Label,languageCode:this.config.captionsTextTrack4LanguageCode}},this.config.enableCEA708Captions){let t=new ea(this,"textTrack1"),r=new ea(this,"textTrack2"),s=new ea(this,"textTrack3"),n=new ea(this,"textTrack4");this.cea608Parser1=new Eu(1,t,r),this.cea608Parser2=new Eu(3,s,n)}e.on(b.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(b.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(b.MANIFEST_LOADING,this.onManifestLoading,this),e.on(b.MANIFEST_LOADED,this.onManifestLoaded,this),e.on(b.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),e.on(b.FRAG_LOADING,this.onFragLoading,this),e.on(b.FRAG_LOADED,this.onFragLoaded,this),e.on(b.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),e.on(b.FRAG_DECRYPTED,this.onFragDecrypted,this),e.on(b.INIT_PTS_FOUND,this.onInitPtsFound,this),e.on(b.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),e.on(b.BUFFER_FLUSHING,this.onBufferFlushing,this)}destroy(){let{hls:e}=this;e.off(b.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(b.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(b.MANIFEST_LOADING,this.onManifestLoading,this),e.off(b.MANIFEST_LOADED,this.onManifestLoaded,this),e.off(b.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),e.off(b.FRAG_LOADING,this.onFragLoading,this),e.off(b.FRAG_LOADED,this.onFragLoaded,this),e.off(b.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),e.off(b.FRAG_DECRYPTED,this.onFragDecrypted,this),e.off(b.INIT_PTS_FOUND,this.onInitPtsFound,this),e.off(b.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),e.off(b.BUFFER_FLUSHING,this.onBufferFlushing,this),this.hls=this.config=this.cea608Parser1=this.cea608Parser2=null}addCues(e,t,r,s,n){let a=!1;for(let o=n.length;o--;){let l=n[o],d=PL(l[0],l[1],t,r);if(d>=0&&(l[0]=Math.min(l[0],t),l[1]=Math.max(l[1],r),a=!0,d/(r-t)>.5))return}if(a||n.push([t,r]),this.config.renderTextTracksNatively){let o=this.captionsTracks[e];this.Cues.newCue(o,t,r,s)}else{let o=this.Cues.newCue(null,t,r,s);this.hls.trigger(b.CUES_PARSED,{type:"captions",cues:o,track:e})}}onInitPtsFound(e,{frag:t,id:r,initPTS:s,timescale:n}){let{unparsedVttFrags:a}=this;r==="main"&&(this.initPTS[t.cc]={baseTime:s,timescale:n}),a.length&&(this.unparsedVttFrags=[],a.forEach(o=>{this.onFragLoaded(b.FRAG_LOADED,o)}))}getExistingTrack(e){let{media:t}=this;if(t)for(let r=0;r<t.textTracks.length;r++){let s=t.textTracks[r];if(s[e])return s}return null}createCaptionsTrack(e){this.config.renderTextTracksNatively?this.createNativeTrack(e):this.createNonNativeTrack(e)}createNativeTrack(e){if(this.captionsTracks[e])return;let{captionsProperties:t,captionsTracks:r,media:s}=this,{label:n,languageCode:a}=t[e],o=this.getExistingTrack(e);if(o)r[e]=o,Jn(r[e]),MT(r[e],s);else{let l=this.createTextTrack("captions",n,a);l&&(l[e]=!0,r[e]=l)}}createNonNativeTrack(e){if(this.nonNativeCaptionsTracks[e])return;let t=this.captionsProperties[e];if(!t)return;let r=t.label,s={_id:e,label:r,kind:"captions",default:t.media?!!t.media.default:!1,closedCaptions:t.media};this.nonNativeCaptionsTracks[e]=s,this.hls.trigger(b.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:[s]})}createTextTrack(e,t,r){let s=this.media;if(s)return s.addTextTrack(e,t,r)}onMediaAttaching(e,t){this.media=t.media,this._cleanTracks()}onMediaDetaching(){let{captionsTracks:e}=this;Object.keys(e).forEach(t=>{Jn(e[t]),delete e[t]}),this.nonNativeCaptionsTracks={}}onManifestLoading(){this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=gT(),this._cleanTracks(),this.tracks=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.textTracks=[],this.unparsedVttFrags=[],this.initPTS=[],this.cea608Parser1&&this.cea608Parser2&&(this.cea608Parser1.reset(),this.cea608Parser2.reset())}_cleanTracks(){let{media:e}=this;if(!e)return;let t=e.textTracks;if(t)for(let r=0;r<t.length;r++)Jn(t[r])}onSubtitleTracksUpdated(e,t){let r=t.subtitleTracks||[],s=r.some(n=>n.textCodec===Fp);if(this.config.enableWebVTT||s&&this.config.enableIMSC1){if(e_(this.tracks,r)){this.tracks=r;return}if(this.textTracks=[],this.tracks=r,this.config.renderTextTracksNatively){let a=this.media?this.media.textTracks:null;this.tracks.forEach((o,l)=>{let d;if(a&&l<a.length){let c=null;for(let u=0;u<a.length;u++)if(ML(a[u],o)){c=a[u];break}c&&(d=c)}if(d)Jn(d);else{let c=this._captionsOrSubtitlesFromCharacteristics(o);d=this.createTextTrack(c,o.name,o.lang),d&&(d.mode="disabled")}d&&(d.groupId=o.groupId,this.textTracks.push(d))})}else if(this.tracks.length){let a=this.tracks.map(o=>({label:o.name,kind:o.type.toLowerCase(),default:o.default,subtitleTrack:o}));this.hls.trigger(b.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:a})}}}_captionsOrSubtitlesFromCharacteristics(e){if(e.attrs.CHARACTERISTICS){let t=/transcribes-spoken-dialog/gi.test(e.attrs.CHARACTERISTICS),r=/describes-music-and-sound/gi.test(e.attrs.CHARACTERISTICS);if(t&&r)return"captions"}return"subtitles"}onManifestLoaded(e,t){this.config.enableCEA708Captions&&t.captions&&t.captions.forEach(r=>{let s=/(?:CC|SERVICE)([1-4])/.exec(r.instreamId);if(!s)return;let n=`textTrack${s[1]}`,a=this.captionsProperties[n];a&&(a.label=r.name,r.lang&&(a.languageCode=r.lang),a.media=r)})}closedCaptionsForLevel(e){let t=this.hls.levels[e.level];return t==null?void 0:t.attrs["CLOSED-CAPTIONS"]}onFragLoading(e,t){let{cea608Parser1:r,cea608Parser2:s,lastSn:n,lastPartIndex:a}=this;if(!(!this.enabled||!(r&&s))&&t.frag.type===fe.MAIN){var o,l;let d=t.frag.sn,c=(o=t==null||(l=t.part)==null?void 0:l.index)!=null?o:-1;d===n+1||d===n&&c===a+1||(r.reset(),s.reset()),this.lastSn=d,this.lastPartIndex=c}}onFragLoaded(e,t){let{frag:r,payload:s}=t;if(r.type===fe.SUBTITLE)if(s.byteLength){let n=r.decryptdata,a="stats"in t;if(n==null||!n.encrypted||a){let o=this.tracks[r.level],l=this.vttCCs;l[r.cc]||(l[r.cc]={start:r.start,prevCC:this.prevCC,new:!0},this.prevCC=r.cc),o&&o.textCodec===Fp?this._parseIMSC1(r,s):this._parseVTTs(t)}}else this.hls.trigger(b.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:r,error:new Error("Empty subtitle payload")})}_parseIMSC1(e,t){let r=this.hls;fT(t,this.initPTS[e.cc],s=>{this._appendCues(s,e.level),r.trigger(b.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:e})},s=>{M.log(`Failed to parse IMSC1: ${s}`),r.trigger(b.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:e,error:s})})}_parseVTTs(e){var t;let{frag:r,payload:s}=e,{initPTS:n,unparsedVttFrags:a}=this,o=n.length-1;if(!n[r.cc]&&o===-1){a.push(e);return}let l=this.hls,d=(t=r.initSegment)!=null&&t.data?Hs(r.initSegment.data,new Uint8Array(s)):s;kL(d,this.initPTS[r.cc],this.vttCCs,r.cc,r.start,c=>{this._appendCues(c,r.level),l.trigger(b.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:r})},c=>{let u=c.message==="Missing initPTS for VTT MPEGTS";u?a.push(e):this._fallbackToIMSC1(r,s),M.log(`Failed to parse VTT cue: ${c}`),!(u&&o>r.cc)&&l.trigger(b.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:r,error:c})})}_fallbackToIMSC1(e,t){let r=this.tracks[e.level];r.textCodec||fT(t,this.initPTS[e.cc],()=>{r.textCodec=Fp,this._parseIMSC1(e,t)},()=>{r.textCodec="wvtt"})}_appendCues(e,t){let r=this.hls;if(this.config.renderTextTracksNatively){let s=this.textTracks[t];if(!s||s.mode==="disabled")return;e.forEach(n=>PT(s,n))}else{let s=this.tracks[t];if(!s)return;let n=s.default?"default":"subtitles"+t;r.trigger(b.CUES_PARSED,{type:"subtitles",cues:e,track:n})}}onFragDecrypted(e,t){let{frag:r}=t;r.type===fe.SUBTITLE&&this.onFragLoaded(b.FRAG_LOADED,t)}onSubtitleTracksCleared(){this.tracks=[],this.captionsTracks={}}onFragParsingUserdata(e,t){let{cea608Parser1:r,cea608Parser2:s}=this;if(!this.enabled||!(r&&s))return;let{frag:n,samples:a}=t;if(!(n.type===fe.MAIN&&this.closedCaptionsForLevel(n)==="NONE"))for(let o=0;o<a.length;o++){let l=a[o].bytes;if(l){let d=this.extractCea608Data(l);r.addData(a[o].pts,d[0]),s.addData(a[o].pts,d[1])}}}onBufferFlushing(e,{startOffset:t,endOffset:r,endOffsetSubtitles:s,type:n}){let{media:a}=this;if(!(!a||a.currentTime<r)){if(!n||n==="video"){let{captionsTracks:o}=this;Object.keys(o).forEach(l=>Yp(o[l],t,r))}if(this.config.renderTextTracksNatively&&t===0&&s!==void 0){let{textTracks:o}=this;Object.keys(o).forEach(l=>Yp(o[l],t,s))}}}extractCea608Data(e){let t=[[],[]],r=e[0]&31,s=2;for(let n=0;n<r;n++){let a=e[s++],o=127&e[s++],l=127&e[s++];if(o===0&&l===0)continue;if((4&a)!==0){let c=3&a;(c===0||c===1)&&(t[c].push(o),t[c].push(l))}}return t}};function ML(i,e){return!!i&&i.label===e.name&&!(i.textTrack1||i.textTrack2)}function PL(i,e,t,r){return Math.min(e,r)-Math.max(i,t)}function gT(){return{ccOffset:0,presentationOffset:0,0:{start:0,prevCC:-1,new:!0}}}var Fg=class i{constructor(e){this.hls=void 0,this.autoLevelCapping=void 0,this.firstLevel=void 0,this.media=void 0,this.restrictedLevels=void 0,this.timer=void 0,this.clientRect=void 0,this.streamController=void 0,this.hls=e,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.firstLevel=-1,this.media=null,this.restrictedLevels=[],this.timer=void 0,this.clientRect=null,this.registerListeners()}setStreamController(e){this.streamController=e}destroy(){this.unregisterListener(),this.hls.config.capLevelToPlayerSize&&this.stopCapping(),this.media=null,this.clientRect=null,this.hls=this.streamController=null}registerListeners(){let{hls:e}=this;e.on(b.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),e.on(b.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(b.MANIFEST_PARSED,this.onManifestParsed,this),e.on(b.BUFFER_CODECS,this.onBufferCodecs,this),e.on(b.MEDIA_DETACHING,this.onMediaDetaching,this)}unregisterListener(){let{hls:e}=this;e.off(b.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),e.off(b.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(b.MANIFEST_PARSED,this.onManifestParsed,this),e.off(b.BUFFER_CODECS,this.onBufferCodecs,this),e.off(b.MEDIA_DETACHING,this.onMediaDetaching,this)}onFpsDropLevelCapping(e,t){let r=this.hls.levels[t.droppedLevel];this.isLevelAllowed(r)&&this.restrictedLevels.push({bitrate:r.bitrate,height:r.height,width:r.width})}onMediaAttaching(e,t){this.media=t.media instanceof HTMLVideoElement?t.media:null,this.clientRect=null}onManifestParsed(e,t){let r=this.hls;this.restrictedLevels=[],this.firstLevel=t.firstLevel,r.config.capLevelToPlayerSize&&t.video&&this.startCapping()}onBufferCodecs(e,t){this.hls.config.capLevelToPlayerSize&&t.video&&this.startCapping()}onMediaDetaching(){this.stopCapping()}detectPlayerSize(){if(this.media&&this.mediaHeight>0&&this.mediaWidth>0){let e=this.hls.levels;if(e.length){let t=this.hls;t.autoLevelCapping=this.getMaxLevel(e.length-1),t.autoLevelCapping>this.autoLevelCapping&&this.streamController&&this.streamController.nextLevelSwitch(),this.autoLevelCapping=t.autoLevelCapping}}}getMaxLevel(e){let t=this.hls.levels;if(!t.length)return-1;let r=t.filter((s,n)=>this.isLevelAllowed(s)&&n<=e);return this.clientRect=null,i.getMaxLevelByMediaSize(r,this.mediaWidth,this.mediaHeight)}startCapping(){this.timer||(this.autoLevelCapping=Number.POSITIVE_INFINITY,this.hls.firstLevel=this.getMaxLevel(this.firstLevel),self.clearInterval(this.timer),this.timer=self.setInterval(this.detectPlayerSize.bind(this),1e3),this.detectPlayerSize())}stopCapping(){this.restrictedLevels=[],this.firstLevel=-1,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.timer&&(self.clearInterval(this.timer),this.timer=void 0)}getDimensions(){if(this.clientRect)return this.clientRect;let e=this.media,t={width:0,height:0};if(e){let r=e.getBoundingClientRect();t.width=r.width,t.height=r.height,!t.width&&!t.height&&(t.width=r.right-r.left||e.width||0,t.height=r.bottom-r.top||e.height||0)}return this.clientRect=t,t}get mediaWidth(){return this.getDimensions().width*this.contentScaleFactor}get mediaHeight(){return this.getDimensions().height*this.contentScaleFactor}get contentScaleFactor(){let e=1;if(!this.hls.config.ignoreDevicePixelRatio)try{e=self.devicePixelRatio}catch{}return e}isLevelAllowed(e){return!this.restrictedLevels.some(r=>e.bitrate===r.bitrate&&e.width===r.width&&e.height===r.height)}static getMaxLevelByMediaSize(e,t,r){if(!(e!=null&&e.length))return-1;let s=(a,o)=>o?a.width!==o.width||a.height!==o.height:!0,n=e.length-1;for(let a=0;a<e.length;a+=1){let o=e[a];if((o.width>=t||o.height>=r)&&s(o,e[a+1])){n=a;break}}return n}},Bg=class{constructor(e){this.hls=void 0,this.isVideoPlaybackQualityAvailable=!1,this.timer=void 0,this.media=null,this.lastTime=void 0,this.lastDroppedFrames=0,this.lastDecodedFrames=0,this.streamController=void 0,this.hls=e,this.registerListeners()}setStreamController(e){this.streamController=e}registerListeners(){this.hls.on(b.MEDIA_ATTACHING,this.onMediaAttaching,this)}unregisterListeners(){this.hls.off(b.MEDIA_ATTACHING,this.onMediaAttaching,this)}destroy(){this.timer&&clearInterval(this.timer),this.unregisterListeners(),this.isVideoPlaybackQualityAvailable=!1,this.media=null}onMediaAttaching(e,t){let r=this.hls.config;if(r.capLevelOnFPSDrop){let s=t.media instanceof self.HTMLVideoElement?t.media:null;this.media=s,s&&typeof s.getVideoPlaybackQuality=="function"&&(this.isVideoPlaybackQualityAvailable=!0),self.clearInterval(this.timer),this.timer=self.setInterval(this.checkFPSInterval.bind(this),r.fpsDroppedMonitoringPeriod)}}checkFPS(e,t,r){let s=performance.now();if(t){if(this.lastTime){let n=s-this.lastTime,a=r-this.lastDroppedFrames,o=t-this.lastDecodedFrames,l=1e3*a/n,d=this.hls;if(d.trigger(b.FPS_DROP,{currentDropped:a,currentDecoded:o,totalDroppedFrames:r}),l>0&&a>d.config.fpsDroppedMonitoringThreshold*o){let c=d.currentLevel;M.warn("drop FPS ratio greater than max allowed value for currentLevel: "+c),c>0&&(d.autoLevelCapping===-1||d.autoLevelCapping>=c)&&(c=c-1,d.trigger(b.FPS_DROP_LEVEL_CAPPING,{level:c,droppedLevel:d.currentLevel}),d.autoLevelCapping=c,this.streamController.nextLevelSwitch())}}this.lastTime=s,this.lastDroppedFrames=r,this.lastDecodedFrames=t}}checkFPSInterval(){let e=this.media;if(e)if(this.isVideoPlaybackQualityAvailable){let t=e.getVideoPlaybackQuality();this.checkFPS(e,t.totalVideoFrames,t.droppedVideoFrames)}else this.checkFPS(e,e.webkitDecodedFrameCount,e.webkitDroppedFrameCount)}},Zc="[eme]",bu=class i{constructor(e){this.hls=void 0,this.config=void 0,this.media=null,this.keyFormatPromise=null,this.keySystemAccessPromises={},this._requestLicenseFailureCount=0,this.mediaKeySessions=[],this.keyIdToKeySessionPromise={},this.setMediaKeysQueue=i.CDMCleanupPromise?[i.CDMCleanupPromise]:[],this.onMediaEncrypted=this._onMediaEncrypted.bind(this),this.onWaitingForKey=this._onWaitingForKey.bind(this),this.debug=M.debug.bind(M,Zc),this.log=M.log.bind(M,Zc),this.warn=M.warn.bind(M,Zc),this.error=M.error.bind(M,Zc),this.hls=e,this.config=e.config,this.registerListeners()}destroy(){this.unregisterListeners(),this.onMediaDetached();let e=this.config;e.requestMediaKeySystemAccessFunc=null,e.licenseXhrSetup=e.licenseResponseCallback=void 0,e.drmSystems=e.drmSystemOptions={},this.hls=this.onMediaEncrypted=this.onWaitingForKey=this.keyIdToKeySessionPromise=null,this.config=null}registerListeners(){this.hls.on(b.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.on(b.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.on(b.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.on(b.MANIFEST_LOADED,this.onManifestLoaded,this)}unregisterListeners(){this.hls.off(b.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.off(b.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.off(b.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.off(b.MANIFEST_LOADED,this.onManifestLoaded,this)}getLicenseServerUrl(e){let{drmSystems:t,widevineLicenseUrl:r}=this.config,s=t[e];if(s)return s.licenseUrl;if(e===ht.WIDEVINE&&r)return r;throw new Error(`no license server URL configured for key-system "${e}"`)}getServerCertificateUrl(e){let{drmSystems:t}=this.config,r=t[e];if(r)return r.serverCertificateUrl;this.log(`No Server Certificate in config.drmSystems["${e}"]`)}attemptKeySystemAccess(e){let t=this.hls.levels,r=(a,o,l)=>!!a&&l.indexOf(a)===o,s=t.map(a=>a.audioCodec).filter(r),n=t.map(a=>a.videoCodec).filter(r);return s.length+n.length===0&&n.push("avc1.42e01e"),new Promise((a,o)=>{let l=d=>{let c=d.shift();this.getMediaKeysPromise(c,s,n).then(u=>a({keySystem:c,mediaKeys:u})).catch(u=>{d.length?l(d):u instanceof ai?o(u):o(new ai({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_NO_ACCESS,error:u,fatal:!0},u.message))})};l(e)})}requestMediaKeySystemAccess(e,t){let{requestMediaKeySystemAccessFunc:r}=this.config;if(typeof r!="function"){let s=`Configured requestMediaKeySystemAccess is not a function ${r}`;return TT===null&&self.location.protocol==="http:"&&(s=`navigator.requestMediaKeySystemAccess is not available over insecure protocol ${location.protocol}`),Promise.reject(new Error(s))}return r(e,t)}getMediaKeysPromise(e,t,r){let s=MI(e,t,r,this.config.drmSystemOptions),n=this.keySystemAccessPromises[e],a=n==null?void 0:n.keySystemAccess;if(!a){this.log(`Requesting encrypted media "${e}" key-system access with config: ${JSON.stringify(s)}`),a=this.requestMediaKeySystemAccess(e,s);let o=this.keySystemAccessPromises[e]={keySystemAccess:a};return a.catch(l=>{this.log(`Failed to obtain access to key-system "${e}": ${l}`)}),a.then(l=>{this.log(`Access for key-system "${l.keySystem}" obtained`);let d=this.fetchServerCertificate(e);return this.log(`Create media-keys for "${e}"`),o.mediaKeys=l.createMediaKeys().then(c=>(this.log(`Media-keys created for "${e}"`),d.then(u=>u?this.setMediaKeysServerCertificate(c,e,u):c))),o.mediaKeys.catch(c=>{this.error(`Failed to create media-keys for "${e}"}: ${c}`)}),o.mediaKeys})}return a.then(()=>n.mediaKeys)}createMediaKeySessionContext({decryptdata:e,keySystem:t,mediaKeys:r}){this.log(`Creating key-system session "${t}" keyId: ${pr.hexDump(e.keyId||[])}`);let s=r.createSession(),n={decryptdata:e,keySystem:t,mediaKeys:r,mediaKeysSession:s,keyStatus:"status-pending"};return this.mediaKeySessions.push(n),n}renewKeySession(e){let t=e.decryptdata;if(t.pssh){let r=this.createMediaKeySessionContext(e),s=this.getKeyIdString(t),n="cenc";this.keyIdToKeySessionPromise[s]=this.generateRequestWithPreferredKeySession(r,n,t.pssh,"expired")}else this.warn("Could not renew expired session. Missing pssh initData.");this.removeSession(e)}getKeyIdString(e){if(!e)throw new Error("Could not read keyId of undefined decryptdata");if(e.keyId===null)throw new Error("keyId is null");return pr.hexDump(e.keyId)}updateKeySession(e,t){var r;let s=e.mediaKeysSession;return this.log(`Updating key-session "${s.sessionId}" for keyID ${pr.hexDump(((r=e.decryptdata)==null?void 0:r.keyId)||[])}
1607
- } (data length: ${t&&t.byteLength})`),s.update(t)}selectKeySystemFormat(e){let t=Object.keys(e.levelkeys||{});return this.keyFormatPromise||(this.log(`Selecting key-system from fragment (sn: ${e.sn} ${e.type}: ${e.level}) key formats ${t.join(", ")}`),this.keyFormatPromise=this.getKeyFormatPromise(t)),this.keyFormatPromise}getKeyFormatPromise(e){return new Promise((t,r)=>{let s=_p(this.config),n=e.map(My).filter(a=>!!a&&s.indexOf(a)!==-1);return this.getKeySystemSelectionPromise(n).then(({keySystem:a})=>{let o=Py(a);o?t(o):r(new Error(`Unable to find format for key-system "${a}"`))}).catch(r)})}loadKey(e){let t=e.keyInfo.decryptdata,r=this.getKeyIdString(t),s=`(keyId: ${r} format: "${t.keyFormat}" method: ${t.method} uri: ${t.uri})`;this.log(`Starting session for key ${s}`);let n=this.keyIdToKeySessionPromise[r];return n||(n=this.keyIdToKeySessionPromise[r]=this.getKeySystemForKeyPromise(t).then(({keySystem:a,mediaKeys:o})=>(this.throwIfDestroyed(),this.log(`Handle encrypted media sn: ${e.frag.sn} ${e.frag.type}: ${e.frag.level} using key ${s}`),this.attemptSetMediaKeys(a,o).then(()=>{this.throwIfDestroyed();let l=this.createMediaKeySessionContext({keySystem:a,mediaKeys:o,decryptdata:t}),d="cenc";return this.generateRequestWithPreferredKeySession(l,d,t.pssh,"playlist-key")}))),n.catch(a=>this.handleError(a))),n}throwIfDestroyed(e="Invalid state"){if(!this.hls)throw new Error("invalid state")}handleError(e){this.hls&&(this.error(e.message),e instanceof ai?this.hls.trigger(b.ERROR,e.data):this.hls.trigger(b.ERROR,{type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_NO_KEYS,error:e,fatal:!0}))}getKeySystemForKeyPromise(e){let t=this.getKeyIdString(e),r=this.keyIdToKeySessionPromise[t];if(!r){let s=My(e.keyFormat),n=s?[s]:_p(this.config);return this.attemptKeySystemAccess(n)}return r}getKeySystemSelectionPromise(e){if(e.length||(e=_p(this.config)),e.length===0)throw new ai({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_NO_CONFIGURED_LICENSE,fatal:!0},`Missing key-system license configuration options ${JSON.stringify({drmSystems:this.config.drmSystems})}`);return this.attemptKeySystemAccess(e)}_onMediaEncrypted(e){let{initDataType:t,initData:r}=e;if(this.debug(`"${e.type}" event: init data type: "${t}"`),r===null)return;let s,n;if(t==="sinf"&&this.config.drmSystems[ht.FAIRPLAY]){let c=Ft(new Uint8Array(r));try{let u=Vg(JSON.parse(c).sinf),h=RT(new Uint8Array(u));if(!h)return;s=h.subarray(8,24),n=ht.FAIRPLAY}catch{this.warn('Failed to parse sinf "encrypted" event message initData');return}}else{let c=rk(r);if(c===null)return;c.version===0&&c.systemId===yT.WIDEVINE&&c.data&&(s=c.data.subarray(8,24)),n=DI(c.systemId)}if(!n||!s)return;let a=pr.hexDump(s),{keyIdToKeySessionPromise:o,mediaKeySessions:l}=this,d=o[a];for(let c=0;c<l.length;c++){let u=l[c],h=u.decryptdata;if(h.pssh||!h.keyId)continue;let f=pr.hexDump(h.keyId);if(a===f||h.uri.replace(/-/g,"").indexOf(a)!==-1){d=o[f],delete o[f],h.pssh=new Uint8Array(r),h.keyId=s,d=o[a]=d.then(()=>this.generateRequestWithPreferredKeySession(u,t,r,"encrypted-event-key-match"));break}}d||(d=o[a]=this.getKeySystemSelectionPromise([n]).then(({keySystem:c,mediaKeys:u})=>{var h;this.throwIfDestroyed();let f=new xo("ISO-23001-7",a,(h=Py(c))!=null?h:"");return f.pssh=new Uint8Array(r),f.keyId=s,this.attemptSetMediaKeys(c,u).then(()=>{this.throwIfDestroyed();let g=this.createMediaKeySessionContext({decryptdata:f,keySystem:c,mediaKeys:u});return this.generateRequestWithPreferredKeySession(g,t,r,"encrypted-event-no-match")})})),d.catch(c=>this.handleError(c))}_onWaitingForKey(e){this.log(`"${e.type}" event`)}attemptSetMediaKeys(e,t){let r=this.setMediaKeysQueue.slice();this.log(`Setting media-keys for "${e}"`);let s=Promise.all(r).then(()=>{if(!this.media)throw new Error("Attempted to set mediaKeys without media element attached");return this.media.setMediaKeys(t)});return this.setMediaKeysQueue.push(s),s.then(()=>{this.log(`Media-keys set for "${e}"`),r.push(s),this.setMediaKeysQueue=this.setMediaKeysQueue.filter(n=>r.indexOf(n)===-1)})}generateRequestWithPreferredKeySession(e,t,r,s){var n,a;let o=(n=this.config.drmSystems)==null||(a=n[e.keySystem])==null?void 0:a.generateRequest;if(o)try{let h=o.call(this.hls,t,r,e);if(!h)throw new Error("Invalid response from configured generateRequest filter");t=h.initDataType,r=e.decryptdata.pssh=h.initData?new Uint8Array(h.initData):null}catch(h){var l;if(this.warn(h.message),(l=this.hls)!=null&&l.config.debug)throw h}if(r===null)return this.log(`Skipping key-session request for "${s}" (no initData)`),Promise.resolve(e);let d=this.getKeyIdString(e.decryptdata);this.log(`Generating key-session request for "${s}": ${d} (init data type: ${t} length: ${r?r.byteLength:null})`);let c=new Zg;e.mediaKeysSession.onmessage=h=>{let f=e.mediaKeysSession;if(!f){c.emit("error",new Error("invalid state"));return}let{messageType:g,message:E}=h;this.log(`"${g}" message event for session "${f.sessionId}" message size: ${E.byteLength}`),g==="license-request"||g==="license-renewal"?this.renewLicense(e,E).catch(y=>{this.handleError(y),c.emit("error",y)}):g==="license-release"?e.keySystem===ht.FAIRPLAY&&(this.updateKeySession(e,bT("acknowledged")),this.removeSession(e)):this.warn(`unhandled media key message type "${g}"`)},e.mediaKeysSession.onkeystatuseschange=h=>{if(!e.mediaKeysSession){c.emit("error",new Error("invalid state"));return}this.onKeyStatusChange(e);let g=e.keyStatus;c.emit("keyStatus",g),g==="expired"&&(this.warn(`${e.keySystem} expired for key ${d}`),this.renewKeySession(e))};let u=new Promise((h,f)=>{c.on("error",f),c.on("keyStatus",g=>{g.startsWith("usable")?h():g==="output-restricted"?f(new ai({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED,fatal:!1},"HDCP level output restricted")):g==="internal-error"?f(new ai({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_STATUS_INTERNAL_ERROR,fatal:!0},`key status changed to "${g}"`)):g==="expired"?f(new Error("key expired while generating request")):this.warn(`unhandled key status change "${g}"`)})});return e.mediaKeysSession.generateRequest(t,r).then(()=>{var h;this.log(`Request generated for key-session "${(h=e.mediaKeysSession)==null?void 0:h.sessionId}" keyId: ${d}`)}).catch(h=>{throw new ai({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_NO_SESSION,error:h,fatal:!1},`Error generating key-session request: ${h}`)}).then(()=>u).catch(h=>{throw c.removeAllListeners(),this.removeSession(e),h}).then(()=>(c.removeAllListeners(),e))}onKeyStatusChange(e){e.mediaKeysSession.keyStatuses.forEach((t,r)=>{this.log(`key status change "${t}" for keyStatuses keyId: ${pr.hexDump("buffer"in r?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):new Uint8Array(r))} session keyId: ${pr.hexDump(new Uint8Array(e.decryptdata.keyId||[]))} uri: ${e.decryptdata.uri}`),e.keyStatus=t})}fetchServerCertificate(e){let t=this.config,r=t.loader,s=new r(t),n=this.getServerCertificateUrl(e);return n?(this.log(`Fetching serverCertificate for "${e}"`),new Promise((a,o)=>{let l={responseType:"arraybuffer",url:n},d=t.certLoadPolicy.default,c={loadPolicy:d,timeout:d.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0},u={onSuccess:(h,f,g,E)=>{a(h.data)},onError:(h,f,g,E)=>{o(new ai({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED,fatal:!0,networkDetails:g,response:Zt({url:l.url,data:void 0},h)},`"${e}" certificate request failed (${n}). Status: ${h.code} (${h.text})`))},onTimeout:(h,f,g)=>{o(new ai({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED,fatal:!0,networkDetails:g,response:{url:l.url,data:void 0}},`"${e}" certificate request timed out (${n})`))},onAbort:(h,f,g)=>{o(new Error("aborted"))}};s.load(l,c,u)})):Promise.resolve()}setMediaKeysServerCertificate(e,t,r){return new Promise((s,n)=>{e.setServerCertificate(r).then(a=>{this.log(`setServerCertificate ${a?"success":"not supported by CDM"} (${r==null?void 0:r.byteLength}) on "${t}"`),s(e)}).catch(a=>{n(new ai({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED,error:a,fatal:!0},a.message))})})}renewLicense(e,t){return this.requestLicense(e,new Uint8Array(t)).then(r=>this.updateKeySession(e,new Uint8Array(r)).catch(s=>{throw new ai({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_SESSION_UPDATE_FAILED,error:s,fatal:!0},s.message)}))}setupLicenseXHR(e,t,r,s){let n=this.config.licenseXhrSetup;return n?Promise.resolve().then(()=>{if(!r.decryptdata)throw new Error("Key removed");return n.call(this.hls,e,t,r,s)}).catch(a=>{if(!r.decryptdata)throw a;return e.open("POST",t,!0),n.call(this.hls,e,t,r,s)}).then(a=>(e.readyState||e.open("POST",t,!0),{xhr:e,licenseChallenge:a||s})):(e.open("POST",t,!0),Promise.resolve({xhr:e,licenseChallenge:s}))}requestLicense(e,t){let r=this.config.keyLoadPolicy.default;return new Promise((s,n)=>{let a=this.getLicenseServerUrl(e.keySystem);this.log(`Sending license request to URL: ${a}`);let o=new XMLHttpRequest;o.responseType="arraybuffer",o.onreadystatechange=()=>{if(!this.hls||!e.mediaKeysSession)return n(new Error("invalid state"));if(o.readyState===4)if(o.status===200){this._requestLicenseFailureCount=0;let l=o.response;this.log(`License received ${l instanceof ArrayBuffer?l.byteLength:l}`);let d=this.config.licenseResponseCallback;if(d)try{l=d.call(this.hls,o,a,e)}catch(c){this.error(c)}s(l)}else{let l=r.errorRetry,d=l?l.maxNumRetry:0;if(this._requestLicenseFailureCount++,this._requestLicenseFailureCount>d||o.status>=400&&o.status<500)n(new ai({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0,networkDetails:o,response:{url:a,data:void 0,code:o.status,text:o.statusText}},`License Request XHR failed (${a}). Status: ${o.status} (${o.statusText})`));else{let c=d-this._requestLicenseFailureCount+1;this.warn(`Retrying license request, ${c} attempts left`),this.requestLicense(e,t).then(s,n)}}},e.licenseXhr&&e.licenseXhr.readyState!==XMLHttpRequest.DONE&&e.licenseXhr.abort(),e.licenseXhr=o,this.setupLicenseXHR(o,a,e,t).then(({xhr:l,licenseChallenge:d})=>{l.send(d)})})}onMediaAttached(e,t){if(!this.config.emeEnabled)return;let r=t.media;this.media=r,r.addEventListener("encrypted",this.onMediaEncrypted),r.addEventListener("waitingforkey",this.onWaitingForKey)}onMediaDetached(){let e=this.media,t=this.mediaKeySessions;e&&(e.removeEventListener("encrypted",this.onMediaEncrypted),e.removeEventListener("waitingforkey",this.onWaitingForKey),this.media=null),this._requestLicenseFailureCount=0,this.setMediaKeysQueue=[],this.mediaKeySessions=[],this.keyIdToKeySessionPromise={},xo.clearKeyUriToKeyIdMap();let r=t.length;i.CDMCleanupPromise=Promise.all(t.map(s=>this.removeSession(s)).concat(e==null?void 0:e.setMediaKeys(null).catch(s=>{this.log(`Could not clear media keys: ${s}. media.src: ${e==null?void 0:e.src}`)}))).then(()=>{r&&(this.log("finished closing key sessions and clearing media keys"),t.length=0)}).catch(s=>{this.log(`Could not close sessions and clear media keys: ${s}. media.src: ${e==null?void 0:e.src}`)})}onManifestLoading(){this.keyFormatPromise=null}onManifestLoaded(e,{sessionKeys:t}){if(!(!t||!this.config.emeEnabled)&&!this.keyFormatPromise){let r=t.reduce((s,n)=>(s.indexOf(n.keyFormat)===-1&&s.push(n.keyFormat),s),[]);this.log(`Selecting key-system from session-keys ${r.join(", ")}`),this.keyFormatPromise=this.getKeyFormatPromise(r)}}removeSession(e){let{mediaKeysSession:t,licenseXhr:r}=e;if(t){this.log(`Remove licenses and keys and close session ${t.sessionId}`),t.onmessage=null,t.onkeystatuseschange=null,r&&r.readyState!==XMLHttpRequest.DONE&&r.abort(),e.mediaKeysSession=e.decryptdata=e.licenseXhr=void 0;let s=this.mediaKeySessions.indexOf(e);return s>-1&&this.mediaKeySessions.splice(s,1),t.remove().catch(n=>{this.log(`Could not remove session: ${n}`)}).then(()=>t.close()).catch(n=>{this.log(`Could not close session: ${n}`)})}}};bu.CDMCleanupPromise=void 0;var ai=class extends Error{constructor(e,t){super(t),this.data=void 0,e.error||(e.error=new Error(t)),this.data=e,e.err=e.error}},OL=1,si={MANIFEST:"m",AUDIO:"a",VIDEO:"v",MUXED:"av",INIT:"i",CAPTION:"c",TIMED_TEXT:"tt",KEY:"k",OTHER:"o"},NL="h",$g=class i{constructor(e){this.hls=void 0,this.config=void 0,this.media=void 0,this.sid=void 0,this.cid=void 0,this.useHeaders=!1,this.initialized=!1,this.starved=!1,this.buffering=!0,this.audioBuffer=void 0,this.videoBuffer=void 0,this.onWaiting=()=>{this.initialized&&(this.starved=!0),this.buffering=!0},this.onPlaying=()=>{this.initialized||(this.initialized=!0),this.buffering=!1},this.applyPlaylistData=s=>{try{this.apply(s,{ot:si.MANIFEST,su:!this.initialized})}catch(n){M.warn("Could not generate manifest CMCD data.",n)}},this.applyFragmentData=s=>{try{let n=s.frag,a=this.hls.levels[n.level],o=this.getObjectType(n),l={d:n.duration*1e3,ot:o};(o===si.VIDEO||o===si.AUDIO||o==si.MUXED)&&(l.br=a.bitrate/1e3,l.tb=this.getTopBandwidth(o)/1e3,l.bl=this.getBufferLength(o)),this.apply(s,l)}catch(n){M.warn("Could not generate segment CMCD data.",n)}},this.hls=e;let t=this.config=e.config,{cmcd:r}=t;r!=null&&(t.pLoader=this.createPlaylistLoader(),t.fLoader=this.createFragmentLoader(),this.sid=r.sessionId||i.uuid(),this.cid=r.contentId,this.useHeaders=r.useHeaders===!0,this.registerListeners())}registerListeners(){let e=this.hls;e.on(b.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(b.MEDIA_DETACHED,this.onMediaDetached,this),e.on(b.BUFFER_CREATED,this.onBufferCreated,this)}unregisterListeners(){let e=this.hls;e.off(b.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(b.MEDIA_DETACHED,this.onMediaDetached,this),e.off(b.BUFFER_CREATED,this.onBufferCreated,this)}destroy(){this.unregisterListeners(),this.onMediaDetached(),this.hls=this.config=this.audioBuffer=this.videoBuffer=null}onMediaAttached(e,t){this.media=t.media,this.media.addEventListener("waiting",this.onWaiting),this.media.addEventListener("playing",this.onPlaying)}onMediaDetached(){this.media&&(this.media.removeEventListener("waiting",this.onWaiting),this.media.removeEventListener("playing",this.onPlaying),this.media=null)}onBufferCreated(e,t){var r,s;this.audioBuffer=(r=t.tracks.audio)==null?void 0:r.buffer,this.videoBuffer=(s=t.tracks.video)==null?void 0:s.buffer}createData(){var e;return{v:OL,sf:NL,sid:this.sid,cid:this.cid,pr:(e=this.media)==null?void 0:e.playbackRate,mtp:this.hls.bandwidthEstimate/1e3}}apply(e,t={}){xt(t,this.createData());let r=t.ot===si.INIT||t.ot===si.VIDEO||t.ot===si.MUXED;if(this.starved&&r&&(t.bs=!0,t.su=!0,this.starved=!1),t.su==null&&(t.su=this.buffering),this.useHeaders){let s=i.toHeaders(t);if(!Object.keys(s).length)return;e.headers||(e.headers={}),xt(e.headers,s)}else{let s=i.toQuery(t);if(!s)return;e.url=i.appendQueryToUri(e.url,s)}}getObjectType(e){let{type:t}=e;if(t==="subtitle")return si.TIMED_TEXT;if(e.sn==="initSegment")return si.INIT;if(t==="audio")return si.AUDIO;if(t==="main")return this.hls.audioTracks.length?si.VIDEO:si.MUXED}getTopBandwidth(e){let t=0,r,s=this.hls;if(e===si.AUDIO)r=s.audioTracks;else{let n=s.maxAutoLevel,a=n>-1?n+1:s.levels.length;r=s.levels.slice(0,a)}for(let n of r)n.bitrate>t&&(t=n.bitrate);return t>0?t:NaN}getBufferLength(e){let t=this.hls.media,r=e===si.AUDIO?this.audioBuffer:this.videoBuffer;return!r||!t?NaN:at.bufferInfo(r,t.currentTime,this.config.maxBufferHole).len*1e3}createPlaylistLoader(){let{pLoader:e}=this.config,t=this.applyPlaylistData,r=e||this.config.loader;return class{constructor(n){this.loader=void 0,this.loader=new r(n)}get stats(){return this.loader.stats}get context(){return this.loader.context}destroy(){this.loader.destroy()}abort(){this.loader.abort()}load(n,a,o){t(n),this.loader.load(n,a,o)}}}createFragmentLoader(){let{fLoader:e}=this.config,t=this.applyFragmentData,r=e||this.config.loader;return class{constructor(n){this.loader=void 0,this.loader=new r(n)}get stats(){return this.loader.stats}get context(){return this.loader.context}destroy(){this.loader.destroy()}abort(){this.loader.abort()}load(n,a,o){t(n),this.loader.load(n,a,o)}}}static uuid(){let e=URL.createObjectURL(new Blob),t=e.toString();return URL.revokeObjectURL(e),t.slice(t.lastIndexOf("/")+1)}static serialize(e){let t=[],r=d=>!Number.isNaN(d)&&d!=null&&d!==""&&d!==!1,s=d=>Math.round(d),n=d=>s(d/100)*100,o={br:s,d:s,bl:n,dl:n,mtp:n,nor:d=>encodeURIComponent(d),rtp:n,tb:s},l=Object.keys(e||{}).sort();for(let d of l){let c=e[d];if(!r(c)||d==="v"&&c===1||d=="pr"&&c===1)continue;let u=o[d];u&&(c=u(c));let h=typeof c,f;d==="ot"||d==="sf"||d==="st"?f=`${d}=${c}`:h==="boolean"?f=d:h==="number"?f=`${d}=${c}`:f=`${d}=${JSON.stringify(c)}`,t.push(f)}return t.join(",")}static toHeaders(e){let t=Object.keys(e),r={},s=["Object","Request","Session","Status"],n=[{},{},{},{}],a={br:0,d:0,ot:0,tb:0,bl:1,dl:1,mtp:1,nor:1,nrr:1,su:1,cid:2,pr:2,sf:2,sid:2,st:2,v:2,bs:3,rtp:3};for(let o of t){let l=a[o]!=null?a[o]:1;n[l][o]=e[o]}for(let o=0;o<n.length;o++){let l=i.serialize(n[o]);l&&(r[`CMCD-${s[o]}`]=l)}return r}static toQuery(e){return`CMCD=${encodeURIComponent(i.serialize(e))}`}static appendQueryToUri(e,t){if(!t)return e;let r=e.includes("?")?"&":"?";return`${e}${r}${t}`}},UL=3e5,Hg=class{constructor(e){this.hls=void 0,this.log=void 0,this.loader=null,this.uri=null,this.pathwayId=".",this.pathwayPriority=null,this.timeToLoad=300,this.reloadTimer=-1,this.updated=0,this.started=!1,this.enabled=!0,this.levels=null,this.audioTracks=null,this.subtitleTracks=null,this.penalizedPathways={},this.hls=e,this.log=M.log.bind(M,"[content-steering]:"),this.registerListeners()}registerListeners(){let e=this.hls;e.on(b.MANIFEST_LOADING,this.onManifestLoading,this),e.on(b.MANIFEST_LOADED,this.onManifestLoaded,this),e.on(b.MANIFEST_PARSED,this.onManifestParsed,this),e.on(b.ERROR,this.onError,this)}unregisterListeners(){let e=this.hls;e&&(e.off(b.MANIFEST_LOADING,this.onManifestLoading,this),e.off(b.MANIFEST_LOADED,this.onManifestLoaded,this),e.off(b.MANIFEST_PARSED,this.onManifestParsed,this),e.off(b.ERROR,this.onError,this))}startLoad(){if(this.started=!0,self.clearTimeout(this.reloadTimer),this.enabled&&this.uri)if(this.updated){let e=Math.max(this.timeToLoad*1e3-(performance.now()-this.updated),0);this.scheduleRefresh(this.uri,e)}else this.loadSteeringManifest(this.uri)}stopLoad(){this.started=!1,this.loader&&(this.loader.destroy(),this.loader=null),self.clearTimeout(this.reloadTimer)}destroy(){this.unregisterListeners(),this.stopLoad(),this.hls=null,this.levels=this.audioTracks=this.subtitleTracks=null}removeLevel(e){let t=this.levels;t&&(this.levels=t.filter(r=>r!==e))}onManifestLoading(){this.stopLoad(),this.enabled=!0,this.timeToLoad=300,this.updated=0,this.uri=null,this.pathwayId=".",this.levels=this.audioTracks=this.subtitleTracks=null}onManifestLoaded(e,t){let{contentSteering:r}=t;r!==null&&(this.pathwayId=r.pathwayId,this.uri=r.uri,this.started&&this.startLoad())}onManifestParsed(e,t){this.audioTracks=t.audioTracks,this.subtitleTracks=t.subtitleTracks}onError(e,t){let{errorAction:r}=t;if((r==null?void 0:r.action)===Yt.SendAlternateToPenaltyBox&&r.flags===Si.MoveAllAlternatesMatchingHost){let s=this.pathwayPriority,n=this.pathwayId;this.penalizedPathways[n]||(this.penalizedPathways[n]=performance.now()),!s&&this.levels&&(s=this.levels.reduce((a,o)=>(a.indexOf(o.pathwayId)===-1&&a.push(o.pathwayId),a),[])),s&&s.length>1&&(this.updatePathwayPriority(s),r.resolved=this.pathwayId!==n)}}filterParsedLevels(e){this.levels=e;let t=this.getLevelsForPathway(this.pathwayId);if(t.length===0){let r=e[0].pathwayId;this.log(`No levels found in Pathway ${this.pathwayId}. Setting initial Pathway to "${r}"`),t=this.getLevelsForPathway(r),this.pathwayId=r}return t.length!==e.length?(this.log(`Found ${t.length}/${e.length} levels in Pathway "${this.pathwayId}"`),t):e}getLevelsForPathway(e){return this.levels===null?[]:this.levels.filter(t=>e===t.pathwayId)}updatePathwayPriority(e){this.pathwayPriority=e;let t,r=this.penalizedPathways,s=performance.now();Object.keys(r).forEach(n=>{s-r[n]>UL&&delete r[n]});for(let n=0;n<e.length;n++){let a=e[n];if(r[a])continue;if(a===this.pathwayId)return;let o=this.hls.nextLoadLevel,l=this.hls.levels[o];if(t=this.getLevelsForPathway(a),t.length>0){this.log(`Setting Pathway to "${a}"`),this.pathwayId=a,this.hls.trigger(b.LEVELS_UPDATED,{levels:t});let d=this.hls.levels[o];l&&d&&this.levels&&(d.attrs["STABLE-VARIANT-ID"]!==l.attrs["STABLE-VARIANT-ID"]&&d.bitrate!==l.bitrate&&this.log(`Unstable Pathways change from bitrate ${l.bitrate} to ${d.bitrate}`),this.hls.nextLoadLevel=o);break}}}clonePathways(e){let t=this.levels;if(!t)return;let r={},s={};e.forEach(n=>{let{ID:a,"BASE-ID":o,"URI-REPLACEMENT":l}=n;if(t.some(c=>c.pathwayId===a))return;let d=this.getLevelsForPathway(o).map(c=>{let u=xt({},c);u.details=void 0,u.url=l_(c.uri,c.attrs["STABLE-VARIANT-ID"],"PER-VARIANT-URIS",l);let h=new ut(c.attrs);h["PATHWAY-ID"]=a;let f=h.AUDIO&&`${h.AUDIO}_clone_${a}`,g=h.SUBTITLES&&`${h.SUBTITLES}_clone_${a}`;f&&(r[h.AUDIO]=f,h.AUDIO=f),g&&(s[h.SUBTITLES]=g,h.SUBTITLES=g),u.attrs=h;let E=new Gs(u);return ou(E,"audio",f),ou(E,"text",g),E});t.push(...d),vT(this.audioTracks,r,l,a),vT(this.subtitleTracks,s,l,a)})}loadSteeringManifest(e){let t=this.hls.config,r=t.loader;this.loader&&this.loader.destroy(),this.loader=new r(t);let s;try{s=new self.URL(e)}catch{this.enabled=!1,this.log(`Failed to parse Steering Manifest URI: ${e}`);return}if(s.protocol!=="data:"){let c=(this.hls.bandwidthEstimate||t.abrEwmaDefaultEstimate)|0;s.searchParams.set("_HLS_pathway",this.pathwayId),s.searchParams.set("_HLS_throughput",""+c)}let n={responseType:"json",url:s.href},a=t.steeringManifestLoadPolicy.default,o=a.errorRetry||a.timeoutRetry||{},l={loadPolicy:a,timeout:a.maxLoadTimeMs,maxRetry:o.maxNumRetry||0,retryDelay:o.retryDelayMs||0,maxRetryDelay:o.maxRetryDelayMs||0},d={onSuccess:(c,u,h,f)=>{this.log(`Loaded steering manifest: "${s}"`);let g=c.data;if(g.VERSION!==1){this.log(`Steering VERSION ${g.VERSION} not supported!`);return}this.updated=performance.now(),this.timeToLoad=g.TTL;let{"RELOAD-URI":E,"PATHWAY-CLONES":y,"PATHWAY-PRIORITY":S}=g;if(E)try{this.uri=new self.URL(E,s).href}catch{this.enabled=!1,this.log(`Failed to parse Steering Manifest RELOAD-URI: ${E}`);return}this.scheduleRefresh(this.uri||h.url),y&&this.clonePathways(y),S&&this.updatePathwayPriority(S)},onError:(c,u,h,f)=>{if(this.log(`Error loading steering manifest: ${c.code} ${c.text} (${u.url})`),this.stopLoad(),c.code===410){this.enabled=!1,this.log(`Steering manifest ${u.url} no longer available`);return}let g=this.timeToLoad*1e3;if(c.code===429){let E=this.loader;if(typeof(E==null?void 0:E.getResponseHeader)=="function"){let y=E.getResponseHeader("Retry-After");y&&(g=parseFloat(y)*1e3)}this.log(`Steering manifest ${u.url} rate limited`);return}this.scheduleRefresh(this.uri||u.url,g)},onTimeout:(c,u,h)=>{this.log(`Timeout loading steering manifest (${u.url})`),this.scheduleRefresh(this.uri||u.url)}};this.log(`Requesting steering manifest: ${s}`),this.loader.load(n,l,d)}scheduleRefresh(e,t=this.timeToLoad*1e3){self.clearTimeout(this.reloadTimer),this.reloadTimer=self.setTimeout(()=>{this.loadSteeringManifest(e)},t)}};function vT(i,e,t,r){i&&Object.keys(e).forEach(s=>{let n=i.filter(a=>a.groupId===s).map(a=>{let o=xt({},a);return o.details=void 0,o.attrs=new ut(o.attrs),o.url=o.attrs.URI=l_(a.url,a.attrs["STABLE-RENDITION-ID"],"PER-RENDITION-URIS",t),o.groupId=o.attrs["GROUP-ID"]=e[s],o.attrs["PATHWAY-ID"]=r,o});i.push(...n)})}function l_(i,e,t,r){let{HOST:s,PARAMS:n,[t]:a}=r,o;e&&(o=a==null?void 0:a[e],o&&(i=o));let l=new self.URL(i);return s&&!o&&(l.host=s),n&&Object.keys(n).sort().forEach(d=>{d&&l.searchParams.set(d,n[d])}),l.href}var FL=/^age:\s*[\d.]+\s*$/im,yu=class{constructor(e){this.xhrSetup=void 0,this.requestTimeout=void 0,this.retryTimeout=void 0,this.retryDelay=void 0,this.config=null,this.callbacks=null,this.context=void 0,this.loader=null,this.stats=void 0,this.xhrSetup=e&&e.xhrSetup||null,this.stats=new ta,this.retryDelay=0}destroy(){this.callbacks=null,this.abortInternal(),this.loader=null,this.config=null}abortInternal(){let e=this.loader;self.clearTimeout(this.requestTimeout),self.clearTimeout(this.retryTimeout),e&&(e.onreadystatechange=null,e.onprogress=null,e.readyState!==4&&(this.stats.aborted=!0,e.abort()))}abort(){var e;this.abortInternal(),(e=this.callbacks)!=null&&e.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.loader)}load(e,t,r){if(this.stats.loading.start)throw new Error("Loader can only be used once.");this.stats.loading.start=self.performance.now(),this.context=e,this.config=t,this.callbacks=r,this.loadInternal()}loadInternal(){let{config:e,context:t}=this;if(!e)return;let r=this.loader=new self.XMLHttpRequest,s=this.stats;s.loading.first=0,s.loaded=0,s.aborted=!1;let n=this.xhrSetup;n?Promise.resolve().then(()=>{if(!this.stats.aborted)return n(r,t.url)}).catch(a=>(r.open("GET",t.url,!0),n(r,t.url))).then(()=>{this.stats.aborted||this.openAndSendXhr(r,t,e)}).catch(a=>{this.callbacks.onError({code:r.status,text:a.message},t,r,s)}):this.openAndSendXhr(r,t,e)}openAndSendXhr(e,t,r){e.readyState||e.open("GET",t.url,!0);let s=this.context.headers,{maxTimeToFirstByteMs:n,maxLoadTimeMs:a}=r.loadPolicy;if(s)for(let o in s)e.setRequestHeader(o,s[o]);t.rangeEnd&&e.setRequestHeader("Range","bytes="+t.rangeStart+"-"+(t.rangeEnd-1)),e.onreadystatechange=this.readystatechange.bind(this),e.onprogress=this.loadprogress.bind(this),e.responseType=t.responseType,self.clearTimeout(this.requestTimeout),r.timeout=n&&oe(n)?n:a,this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),r.timeout),e.send()}readystatechange(){let{context:e,loader:t,stats:r}=this;if(!e||!t)return;let s=t.readyState,n=this.config;if(!r.aborted&&s>=2&&(r.loading.first===0&&(r.loading.first=Math.max(self.performance.now(),r.loading.start),n.timeout!==n.loadPolicy.maxLoadTimeMs&&(self.clearTimeout(this.requestTimeout),n.timeout=n.loadPolicy.maxLoadTimeMs,this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),n.loadPolicy.maxLoadTimeMs-(r.loading.first-r.loading.start)))),s===4)){self.clearTimeout(this.requestTimeout),t.onreadystatechange=null,t.onprogress=null;let a=t.status,o=t.responseType!=="text";if(a>=200&&a<300&&(o&&t.response||t.responseText!==null)){r.loading.end=Math.max(self.performance.now(),r.loading.first);let l=o?t.response:t.responseText,d=t.responseType==="arraybuffer"?l.byteLength:l.length;if(r.loaded=r.total=d,r.bwEstimate=r.total*8e3/(r.loading.end-r.loading.first),!this.callbacks)return;let c=this.callbacks.onProgress;if(c&&c(r,e,l,t),!this.callbacks)return;let u={url:t.responseURL,data:l,code:a};this.callbacks.onSuccess(u,r,e,t)}else{let l=n.loadPolicy.errorRetry,d=r.retry;au(l,d,!1,a)?this.retry(l):(M.error(`${a} while loading ${e.url}`),this.callbacks.onError({code:a,text:t.statusText},e,t,r))}}}loadtimeout(){var e;let t=(e=this.config)==null?void 0:e.loadPolicy.timeoutRetry,r=this.stats.retry;if(au(t,r,!0))this.retry(t);else{M.warn(`timeout while loading ${this.context.url}`);let s=this.callbacks;s&&(this.abortInternal(),s.onTimeout(this.stats,this.context,this.loader))}}retry(e){let{context:t,stats:r}=this;this.retryDelay=Yg(e,r.retry),r.retry++,M.warn(`${status?"HTTP Status "+status:"Timeout"} while loading ${t.url}, retrying ${r.retry}/${e.maxNumRetry} in ${this.retryDelay}ms`),this.abortInternal(),this.loader=null,self.clearTimeout(this.retryTimeout),this.retryTimeout=self.setTimeout(this.loadInternal.bind(this),this.retryDelay)}loadprogress(e){let t=this.stats;t.loaded=e.loaded,e.lengthComputable&&(t.total=e.total)}getCacheAge(){let e=null;if(this.loader&&FL.test(this.loader.getAllResponseHeaders())){let t=this.loader.getResponseHeader("age");e=t?parseFloat(t):null}return e}getResponseHeader(e){return this.loader&&new RegExp(`^${e}:\\s*[\\d.]+\\s*$`,"im").test(this.loader.getAllResponseHeaders())?this.loader.getResponseHeader(e):null}};function BL(){if(self.fetch&&self.AbortController&&self.ReadableStream&&self.Request)try{return new self.ReadableStream({}),!0}catch{}return!1}var $L=/(\d+)-(\d+)\/(\d+)/,Tu=class{constructor(e){this.fetchSetup=void 0,this.requestTimeout=void 0,this.request=void 0,this.response=void 0,this.controller=void 0,this.context=void 0,this.config=null,this.callbacks=null,this.stats=void 0,this.loader=null,this.fetchSetup=e.fetchSetup||KL,this.controller=new self.AbortController,this.stats=new ta}destroy(){this.loader=this.callbacks=null,this.abortInternal()}abortInternal(){let e=this.response;e!=null&&e.ok||(this.stats.aborted=!0,this.controller.abort())}abort(){var e;this.abortInternal(),(e=this.callbacks)!=null&&e.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.response)}load(e,t,r){let s=this.stats;if(s.loading.start)throw new Error("Loader can only be used once.");s.loading.start=self.performance.now();let n=HL(e,this.controller.signal),a=r.onProgress,o=e.responseType==="arraybuffer",l=o?"byteLength":"length",{maxTimeToFirstByteMs:d,maxLoadTimeMs:c}=t.loadPolicy;this.context=e,this.config=t,this.callbacks=r,this.request=this.fetchSetup(e,n),self.clearTimeout(this.requestTimeout),t.timeout=d&&oe(d)?d:c,this.requestTimeout=self.setTimeout(()=>{this.abortInternal(),r.onTimeout(s,e,this.response)},t.timeout),self.fetch(this.request).then(u=>{this.response=this.loader=u;let h=Math.max(self.performance.now(),s.loading.start);if(self.clearTimeout(this.requestTimeout),t.timeout=c,this.requestTimeout=self.setTimeout(()=>{this.abortInternal(),r.onTimeout(s,e,this.response)},c-(h-s.loading.start)),!u.ok){let{status:f,statusText:g}=u;throw new Gg(g||"fetch, bad network response",f,u)}return s.loading.first=h,s.total=WL(u.headers)||s.total,a&&oe(t.highWaterMark)?this.loadProgressively(u,s,e,t.highWaterMark,a):o?u.arrayBuffer():e.responseType==="json"?u.json():u.text()}).then(u=>{let{response:h}=this;self.clearTimeout(this.requestTimeout),s.loading.end=Math.max(self.performance.now(),s.loading.first);let f=u[l];f&&(s.loaded=s.total=f);let g={url:h.url,data:u,code:h.status};a&&!oe(t.highWaterMark)&&a(s,e,u,h),r.onSuccess(g,s,e,h)}).catch(u=>{if(self.clearTimeout(this.requestTimeout),s.aborted)return;let h=u&&u.code||0,f=u?u.message:null;r.onError({code:h,text:f},e,u?u.details:null,s)})}getCacheAge(){let e=null;if(this.response){let t=this.response.headers.get("age");e=t?parseFloat(t):null}return e}getResponseHeader(e){return this.response?this.response.headers.get(e):null}loadProgressively(e,t,r,s=0,n){let a=new pu,o=e.body.getReader(),l=()=>o.read().then(d=>{if(d.done)return a.dataLength&&n(t,r,a.flush(),e),Promise.resolve(new ArrayBuffer(0));let c=d.value,u=c.length;return t.loaded+=u,u<s||a.dataLength?(a.push(c),a.dataLength>=s&&n(t,r,a.flush(),e)):n(t,r,c,e),l()}).catch(()=>Promise.reject());return l()}};function HL(i,e){let t={method:"GET",mode:"cors",credentials:"same-origin",signal:e,headers:new self.Headers(xt({},i.headers))};return i.rangeEnd&&t.headers.set("Range","bytes="+i.rangeStart+"-"+String(i.rangeEnd-1)),t}function GL(i){let e=$L.exec(i);if(e)return parseInt(e[2])-parseInt(e[1])+1}function WL(i){let e=i.get("Content-Range");if(e){let r=GL(e);if(oe(r))return r}let t=i.get("Content-Length");if(t)return parseInt(t)}function KL(i,e){return new self.Request(i.url,e)}var Gg=class extends Error{constructor(e,t,r){super(e),this.code=void 0,this.details=void 0,this.code=t,this.details=r}},VL=/\s/,qL={newCue(i,e,t,r){let s=[],n,a,o,l,d,c=self.VTTCue||self.TextTrackCue;for(let h=0;h<r.rows.length;h++)if(n=r.rows[h],o=!0,l=0,d="",!n.isEmpty()){var u;for(let E=0;E<n.chars.length;E++)VL.test(n.chars[E].uchar)&&o?l++:(d+=n.chars[E].uchar,o=!1);n.cueStartTime=e,e===t&&(t+=1e-4),l>=16?l--:l++;let f=s_(d.trim()),g=e0(e,t,f);i!=null&&(u=i.cues)!=null&&u.getCueById(g)||(a=new c(e,t,f),a.id=g,a.line=h+1,a.align="left",a.position=10+Math.min(80,Math.floor(l*8/32)*10),s.push(a))}return i&&s.length&&(s.sort((h,f)=>h.line==="auto"||f.line==="auto"?0:h.line>8&&f.line>8?f.line-h.line:h.line-f.line),s.forEach(h=>PT(i,h))),s}},YL={maxTimeToFirstByteMs:8e3,maxLoadTimeMs:2e4,timeoutRetry:null,errorRetry:null},jL=Zt(Zt({autoStartLoad:!0,startPosition:-1,defaultAudioCodec:void 0,debug:!1,capLevelOnFPSDrop:!1,capLevelToPlayerSize:!1,ignoreDevicePixelRatio:!1,initialLiveManifestSize:1,maxBufferLength:30,backBufferLength:1/0,maxBufferSize:60*1e3*1e3,maxBufferHole:.1,highBufferWatchdogPeriod:2,nudgeOffset:.1,nudgeMaxRetry:3,maxFragLookUpTolerance:.25,liveSyncDurationCount:3,liveMaxLatencyDurationCount:1/0,liveSyncDuration:void 0,liveMaxLatencyDuration:void 0,maxLiveSyncPlaybackRate:1,liveDurationInfinity:!1,liveBackBufferLength:null,maxMaxBufferLength:600,enableWorker:!0,workerPath:null,enableSoftwareAES:!0,startLevel:void 0,startFragPrefetch:!1,fpsDroppedMonitoringPeriod:5e3,fpsDroppedMonitoringThreshold:.2,appendErrorMaxRetry:3,loader:yu,fLoader:void 0,pLoader:void 0,xhrSetup:void 0,licenseXhrSetup:void 0,licenseResponseCallback:void 0,abrController:_g,bufferController:Rg,capLevelController:Fg,errorController:eg,fpsController:Bg,stretchShortVideoTrack:!1,maxAudioFramesDrift:1,forceKeyFrameOnDiscontinuity:!0,abrEwmaFastLive:3,abrEwmaSlowLive:9,abrEwmaFastVoD:3,abrEwmaSlowVoD:9,abrEwmaDefaultEstimate:5e5,abrBandWidthFactor:.95,abrBandWidthUpFactor:.7,abrMaxWithRealBitrate:!1,maxStarvationDelay:4,maxLoadingDelay:4,minAutoBitrate:0,emeEnabled:!1,widevineLicenseUrl:void 0,drmSystems:{},drmSystemOptions:{},requestMediaKeySystemAccessFunc:TT,testBandwidth:!0,progressive:!1,lowLatencyMode:!0,cmcd:void 0,enableDateRangeMetadataCues:!0,enableEmsgMetadataCues:!0,enableID3MetadataCues:!0,certLoadPolicy:{default:YL},keyLoadPolicy:{default:{maxTimeToFirstByteMs:8e3,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:2e4,backoff:"linear"},errorRetry:{maxNumRetry:8,retryDelayMs:1e3,maxRetryDelayMs:2e4,backoff:"linear"}}},manifestLoadPolicy:{default:{maxTimeToFirstByteMs:1/0,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},playlistLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:2,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},fragLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:12e4,timeoutRetry:{maxNumRetry:4,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:6,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},steeringManifestLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},manifestLoadingTimeOut:1e4,manifestLoadingMaxRetry:1,manifestLoadingRetryDelay:1e3,manifestLoadingMaxRetryTimeout:64e3,levelLoadingTimeOut:1e4,levelLoadingMaxRetry:4,levelLoadingRetryDelay:1e3,levelLoadingMaxRetryTimeout:64e3,fragLoadingTimeOut:2e4,fragLoadingMaxRetry:6,fragLoadingRetryDelay:1e3,fragLoadingMaxRetryTimeout:64e3},zL()),{},{subtitleStreamController:xg,subtitleTrackController:kg,timelineController:Ug,audioStreamController:Ag,audioTrackController:Sg,emeController:bu,cmcdController:$g,contentSteeringController:Hg});function zL(){return{cueHandler:qL,enableWebVTT:!0,enableIMSC1:!0,enableCEA708Captions:!0,captionsTextTrack1Label:"English",captionsTextTrack1LanguageCode:"en",captionsTextTrack2Label:"Spanish",captionsTextTrack2LanguageCode:"es",captionsTextTrack3Label:"Unknown CC",captionsTextTrack3LanguageCode:"",captionsTextTrack4Label:"Unknown CC",captionsTextTrack4LanguageCode:"",renderTextTracksNatively:!0}}function XL(i,e){if((e.liveSyncDurationCount||e.liveMaxLatencyDurationCount)&&(e.liveSyncDuration||e.liveMaxLatencyDuration))throw new Error("Illegal hls.js config: don't mix up liveSyncDurationCount/liveMaxLatencyDurationCount and liveSyncDuration/liveMaxLatencyDuration");if(e.liveMaxLatencyDurationCount!==void 0&&(e.liveSyncDurationCount===void 0||e.liveMaxLatencyDurationCount<=e.liveSyncDurationCount))throw new Error('Illegal hls.js config: "liveMaxLatencyDurationCount" must be greater than "liveSyncDurationCount"');if(e.liveMaxLatencyDuration!==void 0&&(e.liveSyncDuration===void 0||e.liveMaxLatencyDuration<=e.liveSyncDuration))throw new Error('Illegal hls.js config: "liveMaxLatencyDuration" must be greater than "liveSyncDuration"');let t=Wg(i),r=["manifest","level","frag"],s=["TimeOut","MaxRetry","RetryDelay","MaxRetryTimeout"];return r.forEach(n=>{let a=`${n==="level"?"playlist":n}LoadPolicy`,o=e[a]===void 0,l=[];s.forEach(d=>{let c=`${n}Loading${d}`,u=e[c];if(u!==void 0&&o){l.push(c);let h=t[a].default;switch(e[a]={default:h},d){case"TimeOut":h.maxLoadTimeMs=u,h.maxTimeToFirstByteMs=u;break;case"MaxRetry":h.errorRetry.maxNumRetry=u,h.timeoutRetry.maxNumRetry=u;break;case"RetryDelay":h.errorRetry.retryDelayMs=u,h.timeoutRetry.retryDelayMs=u;break;case"MaxRetryTimeout":h.errorRetry.maxRetryDelayMs=u,h.timeoutRetry.maxRetryDelayMs=u;break}}}),l.length&&M.warn(`hls.js config: "${l.join('", "')}" setting(s) are deprecated, use "${a}": ${JSON.stringify(e[a])}`)}),Zt(Zt({},t),e)}function Wg(i){return i&&typeof i=="object"?Array.isArray(i)?i.map(Wg):Object.keys(i).reduce((e,t)=>(e[t]=Wg(i[t]),e),{}):i}function QL(i){let e=i.loader;e!==Tu&&e!==yu?(M.log("[config]: Custom loader detected, cannot enable progressive streaming"),i.progressive=!1):BL()&&(i.loader=Tu,i.progressive=!0,i.enableSoftwareAES=!0,M.log("[config]: Progressive streaming enabled, using FetchLoader"))}var Co=class i{static get version(){return"1.4.13"}static isSupported(){return Fk()}static get Events(){return b}static get ErrorTypes(){return he}static get ErrorDetails(){return H}static get DefaultConfig(){return i.defaultConfig?i.defaultConfig:jL}static set DefaultConfig(e){i.defaultConfig=e}constructor(e={}){this.config=void 0,this.userConfig=void 0,this.coreComponents=void 0,this.networkControllers=void 0,this._emitter=new Zg,this._autoLevelCapping=void 0,this._maxHdcpLevel=null,this.abrController=void 0,this.bufferController=void 0,this.capLevelController=void 0,this.latencyController=void 0,this.levelController=void 0,this.streamController=void 0,this.audioTrackController=void 0,this.subtitleTrackController=void 0,this.emeController=void 0,this.cmcdController=void 0,this._media=null,this.url=null,SI(e.debug||!1,"Hls instance");let t=this.config=XL(i.DefaultConfig,e);this.userConfig=e,this._autoLevelCapping=-1,t.progressive&&QL(t);let{abrController:r,bufferController:s,capLevelController:n,errorController:a,fpsController:o}=t,l=new a(this),d=this.abrController=new r(this),c=this.bufferController=new s(this),u=this.capLevelController=new n(this),h=new o(this),f=new qp(this),g=new zp(this),E=t.contentSteeringController,y=E?new E(this):null,S=this.levelController=new tg(this,y),w=new ig(this),L=new sg(this.config),F=this.streamController=new yg(this,w,L);u.setStreamController(F),h.setStreamController(F);let R=[f,S,F];y&&R.splice(1,0,y),this.networkControllers=R;let B=[d,c,u,h,g,w];this.audioTrackController=this.createController(t.audioTrackController,R);let P=t.audioStreamController;P&&R.push(new P(this,w,L)),this.subtitleTrackController=this.createController(t.subtitleTrackController,R);let $=t.subtitleStreamController;$&&R.push(new $(this,w,L)),this.createController(t.timelineController,B),L.emeController=this.emeController=this.createController(t.emeController,B),this.cmcdController=this.createController(t.cmcdController,B),this.latencyController=this.createController(Xp,B),this.coreComponents=B,R.push(l);let K=l.onErrorOut;typeof K=="function"&&this.on(b.ERROR,K,l)}createController(e,t){if(e){let r=new e(this);return t&&t.push(r),r}return null}on(e,t,r=this){this._emitter.on(e,t,r)}once(e,t,r=this){this._emitter.once(e,t,r)}removeAllListeners(e){this._emitter.removeAllListeners(e)}off(e,t,r=this,s){this._emitter.off(e,t,r,s)}listeners(e){return this._emitter.listeners(e)}emit(e,t,r){return this._emitter.emit(e,t,r)}trigger(e,t){if(this.config.debug)return this.emit(e,e,t);try{return this.emit(e,e,t)}catch(r){M.error("An internal error happened while handling event "+e+'. Error message: "'+r.message+'". Here is a stacktrace:',r),this.trigger(b.ERROR,{type:he.OTHER_ERROR,details:H.INTERNAL_EXCEPTION,fatal:!1,event:e,error:r})}return!1}listenerCount(e){return this._emitter.listenerCount(e)}destroy(){M.log("destroy"),this.trigger(b.DESTROYING,void 0),this.detachMedia(),this.removeAllListeners(),this._autoLevelCapping=-1,this.url=null,this.networkControllers.forEach(t=>t.destroy()),this.networkControllers.length=0,this.coreComponents.forEach(t=>t.destroy()),this.coreComponents.length=0;let e=this.config;e.xhrSetup=e.fetchSetup=void 0,this.userConfig=null}attachMedia(e){M.log("attachMedia"),this._media=e,this.trigger(b.MEDIA_ATTACHING,{media:e})}detachMedia(){M.log("detachMedia"),this.trigger(b.MEDIA_DETACHING,void 0),this._media=null}loadSource(e){this.stopLoad();let t=this.media,r=this.url,s=this.url=Kg.buildAbsoluteURL(self.location.href,e,{alwaysNormalize:!0});M.log(`loadSource:${s}`),t&&r&&(r!==s||this.bufferController.hasSourceTypes())&&(this.detachMedia(),this.attachMedia(t)),this.trigger(b.MANIFEST_LOADING,{url:e})}startLoad(e=-1){M.log(`startLoad(${e})`),this.networkControllers.forEach(t=>{t.startLoad(e)})}stopLoad(){M.log("stopLoad"),this.networkControllers.forEach(e=>{e.stopLoad()})}swapAudioCodec(){M.log("swapAudioCodec"),this.streamController.swapAudioCodec()}recoverMediaError(){M.log("recoverMediaError");let e=this._media;this.detachMedia(),e&&this.attachMedia(e)}removeLevel(e,t=0){this.levelController.removeLevel(e,t)}get levels(){let e=this.levelController.levels;return e||[]}get currentLevel(){return this.streamController.currentLevel}set currentLevel(e){M.log(`set currentLevel:${e}`),this.loadLevel=e,this.abrController.clearTimer(),this.streamController.immediateLevelSwitch()}get nextLevel(){return this.streamController.nextLevel}set nextLevel(e){M.log(`set nextLevel:${e}`),this.levelController.manualLevel=e,this.streamController.nextLevelSwitch()}get loadLevel(){return this.levelController.level}set loadLevel(e){M.log(`set loadLevel:${e}`),this.levelController.manualLevel=e}get nextLoadLevel(){return this.levelController.nextLoadLevel}set nextLoadLevel(e){this.levelController.nextLoadLevel=e}get firstLevel(){return Math.max(this.levelController.firstLevel,this.minAutoLevel)}set firstLevel(e){M.log(`set firstLevel:${e}`),this.levelController.firstLevel=e}get startLevel(){return this.levelController.startLevel}set startLevel(e){M.log(`set startLevel:${e}`),e!==-1&&(e=Math.max(e,this.minAutoLevel)),this.levelController.startLevel=e}get capLevelToPlayerSize(){return this.config.capLevelToPlayerSize}set capLevelToPlayerSize(e){let t=!!e;t!==this.config.capLevelToPlayerSize&&(t?this.capLevelController.startCapping():(this.capLevelController.stopCapping(),this.autoLevelCapping=-1,this.streamController.nextLevelSwitch()),this.config.capLevelToPlayerSize=t)}get autoLevelCapping(){return this._autoLevelCapping}get bandwidthEstimate(){let{bwEstimator:e}=this.abrController;return e?e.getEstimate():NaN}get ttfbEstimate(){let{bwEstimator:e}=this.abrController;return e?e.getEstimateTTFB():NaN}set autoLevelCapping(e){this._autoLevelCapping!==e&&(M.log(`set autoLevelCapping:${e}`),this._autoLevelCapping=e)}get maxHdcpLevel(){return this._maxHdcpLevel}set maxHdcpLevel(e){Qp.indexOf(e)>-1&&(this._maxHdcpLevel=e)}get autoLevelEnabled(){return this.levelController.manualLevel===-1}get manualLevel(){return this.levelController.manualLevel}get minAutoLevel(){let{levels:e,config:{minAutoBitrate:t}}=this;if(!e)return 0;let r=e.length;for(let s=0;s<r;s++)if(e[s].maxBitrate>=t)return s;return 0}get maxAutoLevel(){let{levels:e,autoLevelCapping:t,maxHdcpLevel:r}=this,s;if(t===-1&&e&&e.length?s=e.length-1:s=t,r)for(let n=s;n--;){let a=e[n].attrs["HDCP-LEVEL"];if(a&&a<=r)return n}return s}get nextAutoLevel(){return Math.min(Math.max(this.abrController.nextAutoLevel,this.minAutoLevel),this.maxAutoLevel)}set nextAutoLevel(e){this.abrController.nextAutoLevel=Math.max(this.minAutoLevel,e)}get playingDate(){return this.streamController.currentProgramDateTime}get mainForwardBufferInfo(){return this.streamController.getMainFwdBufferInfo()}get audioTracks(){let e=this.audioTrackController;return e?e.audioTracks:[]}get audioTrack(){let e=this.audioTrackController;return e?e.audioTrack:-1}set audioTrack(e){let t=this.audioTrackController;t&&(t.audioTrack=e)}get subtitleTracks(){let e=this.subtitleTrackController;return e?e.subtitleTracks:[]}get subtitleTrack(){let e=this.subtitleTrackController;return e?e.subtitleTrack:-1}get media(){return this._media}set subtitleTrack(e){let t=this.subtitleTrackController;t&&(t.subtitleTrack=e)}get subtitleDisplay(){let e=this.subtitleTrackController;return e?e.subtitleDisplay:!1}set subtitleDisplay(e){let t=this.subtitleTrackController;t&&(t.subtitleDisplay=e)}get lowLatencyMode(){return this.config.lowLatencyMode}set lowLatencyMode(e){this.config.lowLatencyMode=e}get liveSyncPosition(){return this.latencyController.liveSyncPosition}get latency(){return this.latencyController.latency}get maxLatency(){return this.latencyController.maxLatency}get targetLatency(){return this.latencyController.targetLatency}get drift(){return this.latencyController.drift}get forceStartLoad(){return this.streamController.forceStartLoad}};Co.defaultConfig=void 0;var ft=Co,ts=class Do extends Error{constructor(e,t=Do.MEDIA_ERR_CUSTOM,r,s){var n;super(e),this.name="MediaError",this.code=t,this.context=s,this.fatal=r!=null?r:t>=Do.MEDIA_ERR_NETWORK&&t<=Do.MEDIA_ERR_ENCRYPTED,this.message||(this.message=(n=Do.defaultMessages[this.code])!=null?n:"")}};ts.MEDIA_ERR_ABORTED=1,ts.MEDIA_ERR_NETWORK=2,ts.MEDIA_ERR_DECODE=3,ts.MEDIA_ERR_SRC_NOT_SUPPORTED=4,ts.MEDIA_ERR_ENCRYPTED=5,ts.MEDIA_ERR_CUSTOM=100,ts.defaultMessages={1:"You aborted the media playback",2:"A network error caused the media download to fail.",3:"A media error caused playback to be aborted. The media could be corrupt or your browser does not support this format.",4:"An unsupported error occurred. The server or network failed, or your browser does not support this format.",5:"The media is encrypted and there are no keys to decrypt it."};var $t=ts,ZL=i=>i==null,p_=(i,e)=>ZL(e)?!1:i in e,i0={ANY:"any",MUTED:"muted"},He={ON_DEMAND:"on-demand",LIVE:"live",UNKNOWN:"unknown"},Ii={MSE:"mse",NATIVE:"native"},Su={HEADER:"header",QUERY:"query",NONE:"none"},ia=Object.values(Su),is={M3U8:"application/vnd.apple.mpegurl",MP4:"video/mp4"},r0={HLS:is.M3U8},kU=Object.keys(r0),LU=[...Object.values(is),"hls","HLS"];var li=(i,e,t,r,s=i)=>{s.addEventListener(e,t,r),i.addEventListener("teardown",()=>{s.removeEventListener(e,t)},{once:!0})};function JL(i,e,t){e&&t>e&&(t=e);for(let r=0;r<i.length;r++)if(i.start(r)<=t&&i.end(r)>=t)return!0;return!1}var eR=i=>{let e=i.indexOf("?");if(e<0)return[i];let t=i.slice(0,e),r=i.slice(e);return[t,r]},ku=i=>{let e=i.type;if(e){let r=e.toUpperCase();return p_(r,r0)?r0[r]:e}let{src:t}=i;return t?tR(t):""},g_=i=>i==="VOD"?He.ON_DEMAND:He.LIVE,v_=i=>i==="EVENT"?Number.POSITIVE_INFINITY:i==="VOD"?Number.NaN:0,tR=i=>{let e="";try{e=new URL(i).pathname}catch{console.error("invalid url")}let t=e.lastIndexOf(".");if(t<0)return"";let r=e.slice(t+1).toUpperCase();return p_(r,is)?is[r]:""},iR=Object.values(i0),d_=i=>typeof i=="boolean"||typeof i=="string"&&iR.includes(i),rR=(i,e,t)=>{let{autoplay:r}=i,s=!1,n=!1,a=d_(r)?r:!!r,o=()=>{s||li(e,"playing",()=>{s=!0},{once:!0})};if(o(),li(e,"loadstart",()=>{s=!1,o(),t0(e,a)},{once:!0}),li(e,"loadstart",()=>{t||(i.streamType&&i.streamType!==He.UNKNOWN?n=i.streamType===He.LIVE:n=!Number.isFinite(e.duration)),t0(e,a)},{once:!0}),t&&t.once(ft.Events.LEVEL_LOADED,(l,d)=>{var c;i.streamType&&i.streamType!==He.UNKNOWN?n=i.streamType===He.LIVE:n=(c=d.details.live)!=null?c:!1}),!a){let l=()=>{!n||Number.isFinite(i.startTime)||(t!=null&&t.liveSyncPosition?e.currentTime=t.liveSyncPosition:Number.isFinite(e.seekable.end(0))&&(e.currentTime=e.seekable.end(0)))};t&&li(e,"play",()=>{e.preload==="metadata"?t.once(ft.Events.LEVEL_UPDATED,l):l()},{once:!0})}return l=>{s||(a=d_(l)?l:!!l,t0(e,a))}},t0=(i,e)=>{if(!e)return;let t=i.muted,r=()=>i.muted=t;switch(e){case i0.ANY:i.play().catch(()=>{i.muted=!0,i.play().catch(r)});break;case i0.MUTED:i.muted=!0,i.play().catch(r);break;default:i.play().catch(()=>{});break}},sR=({preload:i,src:e},t,r)=>{let s=u=>{u!=null&&["","none","metadata","auto"].includes(u)?t.setAttribute("preload",u):t.removeAttribute("preload")};if(!r)return s(i),s;let n=!1,a=!1,o=r.config.maxBufferLength,l=r.config.maxBufferSize,d=u=>{s(u);let h=u!=null?u:t.preload;a||h==="none"||(h==="metadata"?(r.config.maxBufferLength=1,r.config.maxBufferSize=1):(r.config.maxBufferLength=o,r.config.maxBufferSize=l),c())},c=()=>{!n&&e&&(n=!0,r.loadSource(e))};return li(t,"play",()=>{a=!0,r.config.maxBufferLength=o,r.config.maxBufferSize=l,c()},{once:!0}),d(i),d};function nR(i,e){var t;if(!("videoTracks"in i))return;let r=new WeakMap;e.on(ft.Events.MANIFEST_PARSED,function(d,c){l();let u=i.addVideoTrack("main");u.selected=!0;for(let[h,f]of c.levels.entries()){let g=u.addRendition(f.url[0],f.width,f.height,f.videoCodec,f.bitrate);r.set(f,`${h}`),g.id=`${h}`}}),e.on(ft.Events.AUDIO_TRACKS_UPDATED,function(d,c){o();for(let u of c.audioTracks){let h=u.default?"main":"alternative",f=i.addAudioTrack(h,u.name,u.lang);f.id=`${u.id}`,u.default&&(f.enabled=!0)}}),i.audioTracks.addEventListener("change",()=>{var d;let c=+((d=[...i.audioTracks].find(h=>h.enabled))==null?void 0:d.id),u=e.audioTracks.map(h=>h.id);c!=e.audioTrack&&u.includes(c)&&(e.audioTrack=c)}),e.on(ft.Events.LEVELS_UPDATED,function(d,c){var u;let h=i.videoTracks[(u=i.videoTracks.selectedIndex)!=null?u:0];if(!h)return;let f=c.levels.map(g=>r.get(g));for(let g of i.videoRenditions)g.id&&!f.includes(g.id)&&h.removeRendition(g)});let s=d=>{let c=d.target.selectedIndex;c!=e.nextLevel&&n(c)},n=d=>{let c=i.currentTime,u=!1,h=(f,g)=>{u||(u=!Number.isFinite(g.endOffset))};e.on(ft.Events.BUFFER_FLUSHING,h),e.nextLevel=d,e.off(ft.Events.BUFFER_FLUSHING,h),u||e.trigger(ft.Events.BUFFER_FLUSHING,{startOffset:c+10,endOffset:1/0,type:"video"})};(t=i.videoRenditions)==null||t.addEventListener("change",s);let a=()=>{for(let d of i.videoTracks)i.removeVideoTrack(d)},o=()=>{for(let d of i.audioTracks)i.removeAudioTrack(d)},l=()=>{a(),o()};e.once(ft.Events.DESTROYING,l)}function aR(i,e){e.on(ft.Events.NON_NATIVE_TEXT_TRACKS_FOUND,(s,{tracks:n})=>{n.forEach(a=>{var o;let l=(o=a.subtitleTrack)!=null?o:a.closedCaptions,d=e.subtitleTracks.findIndex(({lang:c,name:u,type:h})=>c==(l==null?void 0:l.lang)&&u===a.label&&h.toLowerCase()===a.kind);Lu(i,a.kind,a.label,l==null?void 0:l.lang,`${a.kind}${d}`)})});let t=()=>{var s;if(!e.subtitleTracks.length)return;let n=Array.from(i.textTracks).find(o=>o.id&&o.mode==="showing"&&["subtitles","captions"].includes(o.kind)),a=`${(s=e.subtitleTracks[e.subtitleTrack])==null?void 0:s.type.toLowerCase()}${e.subtitleTrack}`;if(n&&(e.subtitleTrack<0||(n==null?void 0:n.id)!==a)){let o=e.subtitleTracks.findIndex(({lang:l,name:d,type:c})=>l==n.language&&d===n.label&&c.toLowerCase()===n.kind);e.subtitleTrack=o}n&&(n==null?void 0:n.id)===a&&n.cues&&Array.from(n.cues).forEach(o=>{n.addCue(o)})};i.textTracks.addEventListener("change",t),e.on(ft.Events.CUES_PARSED,(s,{track:n,cues:a})=>{let o=i.textTracks.getTrackById(n);if(!o)return;let l=o.mode==="disabled";l&&(o.mode="hidden"),a.forEach(d=>{var c;(c=o.cues)!=null&&c.getCueById(d.id)||o.addCue(d)}),l&&(o.mode="disabled")}),e.once(ft.Events.DESTROYING,()=>{i.textTracks.removeEventListener("change",t),i.querySelectorAll("track[data-removeondestroy]").forEach(s=>{s.remove()})});let r=()=>{Array.from(i.textTracks).forEach(s=>{var n,a;if(!["subtitles","caption"].includes(s.kind)&&s.label==="thumbnails"){if(!((n=s.cues)!=null&&n.length)){let o=i.querySelector('track[label="thumbnails"]'),l=(a=o==null?void 0:o.getAttribute("src"))!=null?a:"";o==null||o.removeAttribute("src"),setTimeout(()=>{o==null||o.setAttribute("src",l)},0)}s.mode!=="hidden"&&(s.mode="hidden")}})};e.once(ft.Events.MANIFEST_LOADED,r),e.once(ft.Events.MEDIA_ATTACHED,r)}function Lu(i,e,t,r,s){let n=document.createElement("track");return n.kind=e,n.label=t,r&&(n.srclang=r),s&&(n.id=s),n.track.mode=["subtitles","captions"].includes(e)?"disabled":"hidden",n.setAttribute("data-removeondestroy",""),i.append(n),n.track}function E_(i,e){let t=Array.prototype.find.call(i.querySelectorAll("track"),r=>r.track===e);t==null||t.remove()}var Po="cuepoints",n0=Object.freeze({label:Po}),a0=(i,{label:e=Po}=n0)=>{var t;return(t=Array.from(i.querySelectorAll("track")).find(r=>r.track.label===e&&r.track.kind==="metadata"))==null?void 0:t.track};async function o0(i,e,t=n0){let r=a0(i,t);if(!r){let{label:s=Po}=t;r=Lu(i,"metadata",s),r.mode="hidden",await new Promise(n=>setTimeout(()=>n(void 0),0))}return r.mode!=="hidden"&&(r.mode="hidden"),[...e].sort(({time:s},{time:n})=>n-s).forEach(({time:s,value:n})=>{var a,o;let l=Array.prototype.findIndex.call(r==null?void 0:r.cues,f=>f.startTime>=s),d=(a=r==null?void 0:r.cues)==null?void 0:a[l],c=d?d.startTime:Number.isFinite(i.duration)?i.duration:Number.MAX_SAFE_INTEGER,u=(o=r==null?void 0:r.cues)==null?void 0:o[l-1];u&&(u.endTime=s);let h=new VTTCue(s,c,JSON.stringify(n!=null?n:null));r.addCue(h)}),r}var b_=i=>({time:i.startTime,value:JSON.parse(i.text)});function y_(i,e={label:Po}){let t=a0(i,e);return t!=null&&t.cues?Array.from(t.cues,r=>b_(r)):[]}function l0(i,e={label:Po}){var t,r;let s=a0(i,e);if(!((t=s==null?void 0:s.activeCues)!=null&&t.length))return;let{currentTime:n}=i,a=Array.prototype.find.call((r=s.activeCues)!=null?r:[],({startTime:o,endTime:l})=>o<=n&&l>n);return b_(a)}async function oR(i,e=n0){return new Promise(t=>{li(i,"loadstart",async()=>{let r=await o0(i,[],e);li(i,"cuechange",()=>{let s=l0(i);if(s){let n=new CustomEvent("cuepointchange",{composed:!0,bubbles:!0,detail:s});i.dispatchEvent(n)}},{},r),t(r)})})}function T_(i,e){if(e){let t=e.playingDate;if(t!=null)return new Date(t.getTime()-i.currentTime*1e3)}return typeof i.getStartDate=="function"?i.getStartDate():new Date(NaN)}function __(i,e){if(e&&e.playingDate)return e.playingDate;if(typeof i.getStartDate=="function"){let t=i.getStartDate();return new Date(t.getTime()+i.currentTime*1e3)}return new Date(NaN)}var lR=async i=>fetch(i).then(e=>e.text()).then(e=>{let t=e.split(`
1606
+ `:(n=r.childNodes)!=null&&n.length?o_(r,e):e?t+r.textContent.trim().replace(/\s+/g," "):t+r.textContent},"")}function wL(i,e,t){let r="http://www.w3.org/ns/ttml#styling",s=null,n=["displayAlign","textAlign","color","backgroundColor","fontSize","fontFamily"],a=i!=null&&i.hasAttribute("style")?i.getAttribute("style"):null;return a&&t.hasOwnProperty(a)&&(s=t[a]),n.reduce((o,l)=>{let d=$p(e,r,l)||$p(i,r,l)||$p(s,r,l);return d&&(o[l]=d),o},{})}function $p(i,e,t){return i&&i.hasAttributeNS(e,t)?i.getAttributeNS(e,t):null}function pT(i){return new Error(`Could not parse ttml timestamp ${i}`)}function Hp(i,e){if(!i)return null;let t=i_(i);return t===null&&(n_.test(i)?t=CL(i,e):a_.test(i)&&(t=DL(i,e))),t}function CL(i,e){let t=n_.exec(i),r=(t[4]|0)+(t[5]|0)/e.subFrameRate;return(t[1]|0)*3600+(t[2]|0)*60+(t[3]|0)+r/e.frameRate}function DL(i,e){let t=a_.exec(i),r=Number(t[1]);switch(t[2]){case"h":return r*3600;case"m":return r*60;case"ms":return r*1e3;case"f":return r/e.frameRate;case"t":return r/e.tickRate}return r}var Ug=class{constructor(e){if(this.hls=void 0,this.media=null,this.config=void 0,this.enabled=!0,this.Cues=void 0,this.textTracks=[],this.tracks=[],this.initPTS=[],this.unparsedVttFrags=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.cea608Parser1=void 0,this.cea608Parser2=void 0,this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=gT(),this.captionsProperties=void 0,this.hls=e,this.config=e.config,this.Cues=e.config.cueHandler,this.captionsProperties={textTrack1:{label:this.config.captionsTextTrack1Label,languageCode:this.config.captionsTextTrack1LanguageCode},textTrack2:{label:this.config.captionsTextTrack2Label,languageCode:this.config.captionsTextTrack2LanguageCode},textTrack3:{label:this.config.captionsTextTrack3Label,languageCode:this.config.captionsTextTrack3LanguageCode},textTrack4:{label:this.config.captionsTextTrack4Label,languageCode:this.config.captionsTextTrack4LanguageCode}},this.config.enableCEA708Captions){let t=new ea(this,"textTrack1"),r=new ea(this,"textTrack2"),s=new ea(this,"textTrack3"),n=new ea(this,"textTrack4");this.cea608Parser1=new Eu(1,t,r),this.cea608Parser2=new Eu(3,s,n)}e.on(b.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(b.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(b.MANIFEST_LOADING,this.onManifestLoading,this),e.on(b.MANIFEST_LOADED,this.onManifestLoaded,this),e.on(b.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),e.on(b.FRAG_LOADING,this.onFragLoading,this),e.on(b.FRAG_LOADED,this.onFragLoaded,this),e.on(b.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),e.on(b.FRAG_DECRYPTED,this.onFragDecrypted,this),e.on(b.INIT_PTS_FOUND,this.onInitPtsFound,this),e.on(b.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),e.on(b.BUFFER_FLUSHING,this.onBufferFlushing,this)}destroy(){let{hls:e}=this;e.off(b.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(b.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(b.MANIFEST_LOADING,this.onManifestLoading,this),e.off(b.MANIFEST_LOADED,this.onManifestLoaded,this),e.off(b.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),e.off(b.FRAG_LOADING,this.onFragLoading,this),e.off(b.FRAG_LOADED,this.onFragLoaded,this),e.off(b.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),e.off(b.FRAG_DECRYPTED,this.onFragDecrypted,this),e.off(b.INIT_PTS_FOUND,this.onInitPtsFound,this),e.off(b.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),e.off(b.BUFFER_FLUSHING,this.onBufferFlushing,this),this.hls=this.config=this.cea608Parser1=this.cea608Parser2=null}addCues(e,t,r,s,n){let a=!1;for(let o=n.length;o--;){let l=n[o],d=PL(l[0],l[1],t,r);if(d>=0&&(l[0]=Math.min(l[0],t),l[1]=Math.max(l[1],r),a=!0,d/(r-t)>.5))return}if(a||n.push([t,r]),this.config.renderTextTracksNatively){let o=this.captionsTracks[e];this.Cues.newCue(o,t,r,s)}else{let o=this.Cues.newCue(null,t,r,s);this.hls.trigger(b.CUES_PARSED,{type:"captions",cues:o,track:e})}}onInitPtsFound(e,{frag:t,id:r,initPTS:s,timescale:n}){let{unparsedVttFrags:a}=this;r==="main"&&(this.initPTS[t.cc]={baseTime:s,timescale:n}),a.length&&(this.unparsedVttFrags=[],a.forEach(o=>{this.onFragLoaded(b.FRAG_LOADED,o)}))}getExistingTrack(e){let{media:t}=this;if(t)for(let r=0;r<t.textTracks.length;r++){let s=t.textTracks[r];if(s[e])return s}return null}createCaptionsTrack(e){this.config.renderTextTracksNatively?this.createNativeTrack(e):this.createNonNativeTrack(e)}createNativeTrack(e){if(this.captionsTracks[e])return;let{captionsProperties:t,captionsTracks:r,media:s}=this,{label:n,languageCode:a}=t[e],o=this.getExistingTrack(e);if(o)r[e]=o,Jn(r[e]),MT(r[e],s);else{let l=this.createTextTrack("captions",n,a);l&&(l[e]=!0,r[e]=l)}}createNonNativeTrack(e){if(this.nonNativeCaptionsTracks[e])return;let t=this.captionsProperties[e];if(!t)return;let r=t.label,s={_id:e,label:r,kind:"captions",default:t.media?!!t.media.default:!1,closedCaptions:t.media};this.nonNativeCaptionsTracks[e]=s,this.hls.trigger(b.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:[s]})}createTextTrack(e,t,r){let s=this.media;if(s)return s.addTextTrack(e,t,r)}onMediaAttaching(e,t){this.media=t.media,this._cleanTracks()}onMediaDetaching(){let{captionsTracks:e}=this;Object.keys(e).forEach(t=>{Jn(e[t]),delete e[t]}),this.nonNativeCaptionsTracks={}}onManifestLoading(){this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=gT(),this._cleanTracks(),this.tracks=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.textTracks=[],this.unparsedVttFrags=[],this.initPTS=[],this.cea608Parser1&&this.cea608Parser2&&(this.cea608Parser1.reset(),this.cea608Parser2.reset())}_cleanTracks(){let{media:e}=this;if(!e)return;let t=e.textTracks;if(t)for(let r=0;r<t.length;r++)Jn(t[r])}onSubtitleTracksUpdated(e,t){let r=t.subtitleTracks||[],s=r.some(n=>n.textCodec===Fp);if(this.config.enableWebVTT||s&&this.config.enableIMSC1){if(e_(this.tracks,r)){this.tracks=r;return}if(this.textTracks=[],this.tracks=r,this.config.renderTextTracksNatively){let a=this.media?this.media.textTracks:null;this.tracks.forEach((o,l)=>{let d;if(a&&l<a.length){let c=null;for(let u=0;u<a.length;u++)if(ML(a[u],o)){c=a[u];break}c&&(d=c)}if(d)Jn(d);else{let c=this._captionsOrSubtitlesFromCharacteristics(o);d=this.createTextTrack(c,o.name,o.lang),d&&(d.mode="disabled")}d&&(d.groupId=o.groupId,this.textTracks.push(d))})}else if(this.tracks.length){let a=this.tracks.map(o=>({label:o.name,kind:o.type.toLowerCase(),default:o.default,subtitleTrack:o}));this.hls.trigger(b.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:a})}}}_captionsOrSubtitlesFromCharacteristics(e){if(e.attrs.CHARACTERISTICS){let t=/transcribes-spoken-dialog/gi.test(e.attrs.CHARACTERISTICS),r=/describes-music-and-sound/gi.test(e.attrs.CHARACTERISTICS);if(t&&r)return"captions"}return"subtitles"}onManifestLoaded(e,t){this.config.enableCEA708Captions&&t.captions&&t.captions.forEach(r=>{let s=/(?:CC|SERVICE)([1-4])/.exec(r.instreamId);if(!s)return;let n=`textTrack${s[1]}`,a=this.captionsProperties[n];a&&(a.label=r.name,r.lang&&(a.languageCode=r.lang),a.media=r)})}closedCaptionsForLevel(e){let t=this.hls.levels[e.level];return t==null?void 0:t.attrs["CLOSED-CAPTIONS"]}onFragLoading(e,t){let{cea608Parser1:r,cea608Parser2:s,lastSn:n,lastPartIndex:a}=this;if(!(!this.enabled||!(r&&s))&&t.frag.type===fe.MAIN){var o,l;let d=t.frag.sn,c=(o=t==null||(l=t.part)==null?void 0:l.index)!=null?o:-1;d===n+1||d===n&&c===a+1||(r.reset(),s.reset()),this.lastSn=d,this.lastPartIndex=c}}onFragLoaded(e,t){let{frag:r,payload:s}=t;if(r.type===fe.SUBTITLE)if(s.byteLength){let n=r.decryptdata,a="stats"in t;if(n==null||!n.encrypted||a){let o=this.tracks[r.level],l=this.vttCCs;l[r.cc]||(l[r.cc]={start:r.start,prevCC:this.prevCC,new:!0},this.prevCC=r.cc),o&&o.textCodec===Fp?this._parseIMSC1(r,s):this._parseVTTs(t)}}else this.hls.trigger(b.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:r,error:new Error("Empty subtitle payload")})}_parseIMSC1(e,t){let r=this.hls;fT(t,this.initPTS[e.cc],s=>{this._appendCues(s,e.level),r.trigger(b.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:e})},s=>{M.log(`Failed to parse IMSC1: ${s}`),r.trigger(b.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:e,error:s})})}_parseVTTs(e){var t;let{frag:r,payload:s}=e,{initPTS:n,unparsedVttFrags:a}=this,o=n.length-1;if(!n[r.cc]&&o===-1){a.push(e);return}let l=this.hls,d=(t=r.initSegment)!=null&&t.data?Hs(r.initSegment.data,new Uint8Array(s)):s;kL(d,this.initPTS[r.cc],this.vttCCs,r.cc,r.start,c=>{this._appendCues(c,r.level),l.trigger(b.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:r})},c=>{let u=c.message==="Missing initPTS for VTT MPEGTS";u?a.push(e):this._fallbackToIMSC1(r,s),M.log(`Failed to parse VTT cue: ${c}`),!(u&&o>r.cc)&&l.trigger(b.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:r,error:c})})}_fallbackToIMSC1(e,t){let r=this.tracks[e.level];r.textCodec||fT(t,this.initPTS[e.cc],()=>{r.textCodec=Fp,this._parseIMSC1(e,t)},()=>{r.textCodec="wvtt"})}_appendCues(e,t){let r=this.hls;if(this.config.renderTextTracksNatively){let s=this.textTracks[t];if(!s||s.mode==="disabled")return;e.forEach(n=>PT(s,n))}else{let s=this.tracks[t];if(!s)return;let n=s.default?"default":"subtitles"+t;r.trigger(b.CUES_PARSED,{type:"subtitles",cues:e,track:n})}}onFragDecrypted(e,t){let{frag:r}=t;r.type===fe.SUBTITLE&&this.onFragLoaded(b.FRAG_LOADED,t)}onSubtitleTracksCleared(){this.tracks=[],this.captionsTracks={}}onFragParsingUserdata(e,t){let{cea608Parser1:r,cea608Parser2:s}=this;if(!this.enabled||!(r&&s))return;let{frag:n,samples:a}=t;if(!(n.type===fe.MAIN&&this.closedCaptionsForLevel(n)==="NONE"))for(let o=0;o<a.length;o++){let l=a[o].bytes;if(l){let d=this.extractCea608Data(l);r.addData(a[o].pts,d[0]),s.addData(a[o].pts,d[1])}}}onBufferFlushing(e,{startOffset:t,endOffset:r,endOffsetSubtitles:s,type:n}){let{media:a}=this;if(!(!a||a.currentTime<r)){if(!n||n==="video"){let{captionsTracks:o}=this;Object.keys(o).forEach(l=>Yp(o[l],t,r))}if(this.config.renderTextTracksNatively&&t===0&&s!==void 0){let{textTracks:o}=this;Object.keys(o).forEach(l=>Yp(o[l],t,s))}}}extractCea608Data(e){let t=[[],[]],r=e[0]&31,s=2;for(let n=0;n<r;n++){let a=e[s++],o=127&e[s++],l=127&e[s++];if(o===0&&l===0)continue;if((4&a)!==0){let c=3&a;(c===0||c===1)&&(t[c].push(o),t[c].push(l))}}return t}};function ML(i,e){return!!i&&i.label===e.name&&!(i.textTrack1||i.textTrack2)}function PL(i,e,t,r){return Math.min(e,r)-Math.max(i,t)}function gT(){return{ccOffset:0,presentationOffset:0,0:{start:0,prevCC:-1,new:!0}}}var Fg=class i{constructor(e){this.hls=void 0,this.autoLevelCapping=void 0,this.firstLevel=void 0,this.media=void 0,this.restrictedLevels=void 0,this.timer=void 0,this.clientRect=void 0,this.streamController=void 0,this.hls=e,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.firstLevel=-1,this.media=null,this.restrictedLevels=[],this.timer=void 0,this.clientRect=null,this.registerListeners()}setStreamController(e){this.streamController=e}destroy(){this.unregisterListener(),this.hls.config.capLevelToPlayerSize&&this.stopCapping(),this.media=null,this.clientRect=null,this.hls=this.streamController=null}registerListeners(){let{hls:e}=this;e.on(b.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),e.on(b.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(b.MANIFEST_PARSED,this.onManifestParsed,this),e.on(b.BUFFER_CODECS,this.onBufferCodecs,this),e.on(b.MEDIA_DETACHING,this.onMediaDetaching,this)}unregisterListener(){let{hls:e}=this;e.off(b.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),e.off(b.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(b.MANIFEST_PARSED,this.onManifestParsed,this),e.off(b.BUFFER_CODECS,this.onBufferCodecs,this),e.off(b.MEDIA_DETACHING,this.onMediaDetaching,this)}onFpsDropLevelCapping(e,t){let r=this.hls.levels[t.droppedLevel];this.isLevelAllowed(r)&&this.restrictedLevels.push({bitrate:r.bitrate,height:r.height,width:r.width})}onMediaAttaching(e,t){this.media=t.media instanceof HTMLVideoElement?t.media:null,this.clientRect=null}onManifestParsed(e,t){let r=this.hls;this.restrictedLevels=[],this.firstLevel=t.firstLevel,r.config.capLevelToPlayerSize&&t.video&&this.startCapping()}onBufferCodecs(e,t){this.hls.config.capLevelToPlayerSize&&t.video&&this.startCapping()}onMediaDetaching(){this.stopCapping()}detectPlayerSize(){if(this.media&&this.mediaHeight>0&&this.mediaWidth>0){let e=this.hls.levels;if(e.length){let t=this.hls;t.autoLevelCapping=this.getMaxLevel(e.length-1),t.autoLevelCapping>this.autoLevelCapping&&this.streamController&&this.streamController.nextLevelSwitch(),this.autoLevelCapping=t.autoLevelCapping}}}getMaxLevel(e){let t=this.hls.levels;if(!t.length)return-1;let r=t.filter((s,n)=>this.isLevelAllowed(s)&&n<=e);return this.clientRect=null,i.getMaxLevelByMediaSize(r,this.mediaWidth,this.mediaHeight)}startCapping(){this.timer||(this.autoLevelCapping=Number.POSITIVE_INFINITY,this.hls.firstLevel=this.getMaxLevel(this.firstLevel),self.clearInterval(this.timer),this.timer=self.setInterval(this.detectPlayerSize.bind(this),1e3),this.detectPlayerSize())}stopCapping(){this.restrictedLevels=[],this.firstLevel=-1,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.timer&&(self.clearInterval(this.timer),this.timer=void 0)}getDimensions(){if(this.clientRect)return this.clientRect;let e=this.media,t={width:0,height:0};if(e){let r=e.getBoundingClientRect();t.width=r.width,t.height=r.height,!t.width&&!t.height&&(t.width=r.right-r.left||e.width||0,t.height=r.bottom-r.top||e.height||0)}return this.clientRect=t,t}get mediaWidth(){return this.getDimensions().width*this.contentScaleFactor}get mediaHeight(){return this.getDimensions().height*this.contentScaleFactor}get contentScaleFactor(){let e=1;if(!this.hls.config.ignoreDevicePixelRatio)try{e=self.devicePixelRatio}catch{}return e}isLevelAllowed(e){return!this.restrictedLevels.some(r=>e.bitrate===r.bitrate&&e.width===r.width&&e.height===r.height)}static getMaxLevelByMediaSize(e,t,r){if(!(e!=null&&e.length))return-1;let s=(a,o)=>o?a.width!==o.width||a.height!==o.height:!0,n=e.length-1;for(let a=0;a<e.length;a+=1){let o=e[a];if((o.width>=t||o.height>=r)&&s(o,e[a+1])){n=a;break}}return n}},Bg=class{constructor(e){this.hls=void 0,this.isVideoPlaybackQualityAvailable=!1,this.timer=void 0,this.media=null,this.lastTime=void 0,this.lastDroppedFrames=0,this.lastDecodedFrames=0,this.streamController=void 0,this.hls=e,this.registerListeners()}setStreamController(e){this.streamController=e}registerListeners(){this.hls.on(b.MEDIA_ATTACHING,this.onMediaAttaching,this)}unregisterListeners(){this.hls.off(b.MEDIA_ATTACHING,this.onMediaAttaching,this)}destroy(){this.timer&&clearInterval(this.timer),this.unregisterListeners(),this.isVideoPlaybackQualityAvailable=!1,this.media=null}onMediaAttaching(e,t){let r=this.hls.config;if(r.capLevelOnFPSDrop){let s=t.media instanceof self.HTMLVideoElement?t.media:null;this.media=s,s&&typeof s.getVideoPlaybackQuality=="function"&&(this.isVideoPlaybackQualityAvailable=!0),self.clearInterval(this.timer),this.timer=self.setInterval(this.checkFPSInterval.bind(this),r.fpsDroppedMonitoringPeriod)}}checkFPS(e,t,r){let s=performance.now();if(t){if(this.lastTime){let n=s-this.lastTime,a=r-this.lastDroppedFrames,o=t-this.lastDecodedFrames,l=1e3*a/n,d=this.hls;if(d.trigger(b.FPS_DROP,{currentDropped:a,currentDecoded:o,totalDroppedFrames:r}),l>0&&a>d.config.fpsDroppedMonitoringThreshold*o){let c=d.currentLevel;M.warn("drop FPS ratio greater than max allowed value for currentLevel: "+c),c>0&&(d.autoLevelCapping===-1||d.autoLevelCapping>=c)&&(c=c-1,d.trigger(b.FPS_DROP_LEVEL_CAPPING,{level:c,droppedLevel:d.currentLevel}),d.autoLevelCapping=c,this.streamController.nextLevelSwitch())}}this.lastTime=s,this.lastDroppedFrames=r,this.lastDecodedFrames=t}}checkFPSInterval(){let e=this.media;if(e)if(this.isVideoPlaybackQualityAvailable){let t=e.getVideoPlaybackQuality();this.checkFPS(e,t.totalVideoFrames,t.droppedVideoFrames)}else this.checkFPS(e,e.webkitDecodedFrameCount,e.webkitDroppedFrameCount)}},Zc="[eme]",bu=class i{constructor(e){this.hls=void 0,this.config=void 0,this.media=null,this.keyFormatPromise=null,this.keySystemAccessPromises={},this._requestLicenseFailureCount=0,this.mediaKeySessions=[],this.keyIdToKeySessionPromise={},this.setMediaKeysQueue=i.CDMCleanupPromise?[i.CDMCleanupPromise]:[],this.onMediaEncrypted=this._onMediaEncrypted.bind(this),this.onWaitingForKey=this._onWaitingForKey.bind(this),this.debug=M.debug.bind(M,Zc),this.log=M.log.bind(M,Zc),this.warn=M.warn.bind(M,Zc),this.error=M.error.bind(M,Zc),this.hls=e,this.config=e.config,this.registerListeners()}destroy(){this.unregisterListeners(),this.onMediaDetached();let e=this.config;e.requestMediaKeySystemAccessFunc=null,e.licenseXhrSetup=e.licenseResponseCallback=void 0,e.drmSystems=e.drmSystemOptions={},this.hls=this.onMediaEncrypted=this.onWaitingForKey=this.keyIdToKeySessionPromise=null,this.config=null}registerListeners(){this.hls.on(b.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.on(b.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.on(b.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.on(b.MANIFEST_LOADED,this.onManifestLoaded,this)}unregisterListeners(){this.hls.off(b.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.off(b.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.off(b.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.off(b.MANIFEST_LOADED,this.onManifestLoaded,this)}getLicenseServerUrl(e){let{drmSystems:t,widevineLicenseUrl:r}=this.config,s=t[e];if(s)return s.licenseUrl;if(e===ht.WIDEVINE&&r)return r;throw new Error(`no license server URL configured for key-system "${e}"`)}getServerCertificateUrl(e){let{drmSystems:t}=this.config,r=t[e];if(r)return r.serverCertificateUrl;this.log(`No Server Certificate in config.drmSystems["${e}"]`)}attemptKeySystemAccess(e){let t=this.hls.levels,r=(a,o,l)=>!!a&&l.indexOf(a)===o,s=t.map(a=>a.audioCodec).filter(r),n=t.map(a=>a.videoCodec).filter(r);return s.length+n.length===0&&n.push("avc1.42e01e"),new Promise((a,o)=>{let l=d=>{let c=d.shift();this.getMediaKeysPromise(c,s,n).then(u=>a({keySystem:c,mediaKeys:u})).catch(u=>{d.length?l(d):u instanceof oi?o(u):o(new oi({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_NO_ACCESS,error:u,fatal:!0},u.message))})};l(e)})}requestMediaKeySystemAccess(e,t){let{requestMediaKeySystemAccessFunc:r}=this.config;if(typeof r!="function"){let s=`Configured requestMediaKeySystemAccess is not a function ${r}`;return TT===null&&self.location.protocol==="http:"&&(s=`navigator.requestMediaKeySystemAccess is not available over insecure protocol ${location.protocol}`),Promise.reject(new Error(s))}return r(e,t)}getMediaKeysPromise(e,t,r){let s=MI(e,t,r,this.config.drmSystemOptions),n=this.keySystemAccessPromises[e],a=n==null?void 0:n.keySystemAccess;if(!a){this.log(`Requesting encrypted media "${e}" key-system access with config: ${JSON.stringify(s)}`),a=this.requestMediaKeySystemAccess(e,s);let o=this.keySystemAccessPromises[e]={keySystemAccess:a};return a.catch(l=>{this.log(`Failed to obtain access to key-system "${e}": ${l}`)}),a.then(l=>{this.log(`Access for key-system "${l.keySystem}" obtained`);let d=this.fetchServerCertificate(e);return this.log(`Create media-keys for "${e}"`),o.mediaKeys=l.createMediaKeys().then(c=>(this.log(`Media-keys created for "${e}"`),d.then(u=>u?this.setMediaKeysServerCertificate(c,e,u):c))),o.mediaKeys.catch(c=>{this.error(`Failed to create media-keys for "${e}"}: ${c}`)}),o.mediaKeys})}return a.then(()=>n.mediaKeys)}createMediaKeySessionContext({decryptdata:e,keySystem:t,mediaKeys:r}){this.log(`Creating key-system session "${t}" keyId: ${pr.hexDump(e.keyId||[])}`);let s=r.createSession(),n={decryptdata:e,keySystem:t,mediaKeys:r,mediaKeysSession:s,keyStatus:"status-pending"};return this.mediaKeySessions.push(n),n}renewKeySession(e){let t=e.decryptdata;if(t.pssh){let r=this.createMediaKeySessionContext(e),s=this.getKeyIdString(t),n="cenc";this.keyIdToKeySessionPromise[s]=this.generateRequestWithPreferredKeySession(r,n,t.pssh,"expired")}else this.warn("Could not renew expired session. Missing pssh initData.");this.removeSession(e)}getKeyIdString(e){if(!e)throw new Error("Could not read keyId of undefined decryptdata");if(e.keyId===null)throw new Error("keyId is null");return pr.hexDump(e.keyId)}updateKeySession(e,t){var r;let s=e.mediaKeysSession;return this.log(`Updating key-session "${s.sessionId}" for keyID ${pr.hexDump(((r=e.decryptdata)==null?void 0:r.keyId)||[])}
1607
+ } (data length: ${t&&t.byteLength})`),s.update(t)}selectKeySystemFormat(e){let t=Object.keys(e.levelkeys||{});return this.keyFormatPromise||(this.log(`Selecting key-system from fragment (sn: ${e.sn} ${e.type}: ${e.level}) key formats ${t.join(", ")}`),this.keyFormatPromise=this.getKeyFormatPromise(t)),this.keyFormatPromise}getKeyFormatPromise(e){return new Promise((t,r)=>{let s=_p(this.config),n=e.map(My).filter(a=>!!a&&s.indexOf(a)!==-1);return this.getKeySystemSelectionPromise(n).then(({keySystem:a})=>{let o=Py(a);o?t(o):r(new Error(`Unable to find format for key-system "${a}"`))}).catch(r)})}loadKey(e){let t=e.keyInfo.decryptdata,r=this.getKeyIdString(t),s=`(keyId: ${r} format: "${t.keyFormat}" method: ${t.method} uri: ${t.uri})`;this.log(`Starting session for key ${s}`);let n=this.keyIdToKeySessionPromise[r];return n||(n=this.keyIdToKeySessionPromise[r]=this.getKeySystemForKeyPromise(t).then(({keySystem:a,mediaKeys:o})=>(this.throwIfDestroyed(),this.log(`Handle encrypted media sn: ${e.frag.sn} ${e.frag.type}: ${e.frag.level} using key ${s}`),this.attemptSetMediaKeys(a,o).then(()=>{this.throwIfDestroyed();let l=this.createMediaKeySessionContext({keySystem:a,mediaKeys:o,decryptdata:t}),d="cenc";return this.generateRequestWithPreferredKeySession(l,d,t.pssh,"playlist-key")}))),n.catch(a=>this.handleError(a))),n}throwIfDestroyed(e="Invalid state"){if(!this.hls)throw new Error("invalid state")}handleError(e){this.hls&&(this.error(e.message),e instanceof oi?this.hls.trigger(b.ERROR,e.data):this.hls.trigger(b.ERROR,{type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_NO_KEYS,error:e,fatal:!0}))}getKeySystemForKeyPromise(e){let t=this.getKeyIdString(e),r=this.keyIdToKeySessionPromise[t];if(!r){let s=My(e.keyFormat),n=s?[s]:_p(this.config);return this.attemptKeySystemAccess(n)}return r}getKeySystemSelectionPromise(e){if(e.length||(e=_p(this.config)),e.length===0)throw new oi({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_NO_CONFIGURED_LICENSE,fatal:!0},`Missing key-system license configuration options ${JSON.stringify({drmSystems:this.config.drmSystems})}`);return this.attemptKeySystemAccess(e)}_onMediaEncrypted(e){let{initDataType:t,initData:r}=e;if(this.debug(`"${e.type}" event: init data type: "${t}"`),r===null)return;let s,n;if(t==="sinf"&&this.config.drmSystems[ht.FAIRPLAY]){let c=Ft(new Uint8Array(r));try{let u=Vg(JSON.parse(c).sinf),h=RT(new Uint8Array(u));if(!h)return;s=h.subarray(8,24),n=ht.FAIRPLAY}catch{this.warn('Failed to parse sinf "encrypted" event message initData');return}}else{let c=rk(r);if(c===null)return;c.version===0&&c.systemId===yT.WIDEVINE&&c.data&&(s=c.data.subarray(8,24)),n=DI(c.systemId)}if(!n||!s)return;let a=pr.hexDump(s),{keyIdToKeySessionPromise:o,mediaKeySessions:l}=this,d=o[a];for(let c=0;c<l.length;c++){let u=l[c],h=u.decryptdata;if(h.pssh||!h.keyId)continue;let f=pr.hexDump(h.keyId);if(a===f||h.uri.replace(/-/g,"").indexOf(a)!==-1){d=o[f],delete o[f],h.pssh=new Uint8Array(r),h.keyId=s,d=o[a]=d.then(()=>this.generateRequestWithPreferredKeySession(u,t,r,"encrypted-event-key-match"));break}}d||(d=o[a]=this.getKeySystemSelectionPromise([n]).then(({keySystem:c,mediaKeys:u})=>{var h;this.throwIfDestroyed();let f=new xo("ISO-23001-7",a,(h=Py(c))!=null?h:"");return f.pssh=new Uint8Array(r),f.keyId=s,this.attemptSetMediaKeys(c,u).then(()=>{this.throwIfDestroyed();let g=this.createMediaKeySessionContext({decryptdata:f,keySystem:c,mediaKeys:u});return this.generateRequestWithPreferredKeySession(g,t,r,"encrypted-event-no-match")})})),d.catch(c=>this.handleError(c))}_onWaitingForKey(e){this.log(`"${e.type}" event`)}attemptSetMediaKeys(e,t){let r=this.setMediaKeysQueue.slice();this.log(`Setting media-keys for "${e}"`);let s=Promise.all(r).then(()=>{if(!this.media)throw new Error("Attempted to set mediaKeys without media element attached");return this.media.setMediaKeys(t)});return this.setMediaKeysQueue.push(s),s.then(()=>{this.log(`Media-keys set for "${e}"`),r.push(s),this.setMediaKeysQueue=this.setMediaKeysQueue.filter(n=>r.indexOf(n)===-1)})}generateRequestWithPreferredKeySession(e,t,r,s){var n,a;let o=(n=this.config.drmSystems)==null||(a=n[e.keySystem])==null?void 0:a.generateRequest;if(o)try{let h=o.call(this.hls,t,r,e);if(!h)throw new Error("Invalid response from configured generateRequest filter");t=h.initDataType,r=e.decryptdata.pssh=h.initData?new Uint8Array(h.initData):null}catch(h){var l;if(this.warn(h.message),(l=this.hls)!=null&&l.config.debug)throw h}if(r===null)return this.log(`Skipping key-session request for "${s}" (no initData)`),Promise.resolve(e);let d=this.getKeyIdString(e.decryptdata);this.log(`Generating key-session request for "${s}": ${d} (init data type: ${t} length: ${r?r.byteLength:null})`);let c=new Zg;e.mediaKeysSession.onmessage=h=>{let f=e.mediaKeysSession;if(!f){c.emit("error",new Error("invalid state"));return}let{messageType:g,message:E}=h;this.log(`"${g}" message event for session "${f.sessionId}" message size: ${E.byteLength}`),g==="license-request"||g==="license-renewal"?this.renewLicense(e,E).catch(y=>{this.handleError(y),c.emit("error",y)}):g==="license-release"?e.keySystem===ht.FAIRPLAY&&(this.updateKeySession(e,bT("acknowledged")),this.removeSession(e)):this.warn(`unhandled media key message type "${g}"`)},e.mediaKeysSession.onkeystatuseschange=h=>{if(!e.mediaKeysSession){c.emit("error",new Error("invalid state"));return}this.onKeyStatusChange(e);let g=e.keyStatus;c.emit("keyStatus",g),g==="expired"&&(this.warn(`${e.keySystem} expired for key ${d}`),this.renewKeySession(e))};let u=new Promise((h,f)=>{c.on("error",f),c.on("keyStatus",g=>{g.startsWith("usable")?h():g==="output-restricted"?f(new oi({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED,fatal:!1},"HDCP level output restricted")):g==="internal-error"?f(new oi({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_STATUS_INTERNAL_ERROR,fatal:!0},`key status changed to "${g}"`)):g==="expired"?f(new Error("key expired while generating request")):this.warn(`unhandled key status change "${g}"`)})});return e.mediaKeysSession.generateRequest(t,r).then(()=>{var h;this.log(`Request generated for key-session "${(h=e.mediaKeysSession)==null?void 0:h.sessionId}" keyId: ${d}`)}).catch(h=>{throw new oi({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_NO_SESSION,error:h,fatal:!1},`Error generating key-session request: ${h}`)}).then(()=>u).catch(h=>{throw c.removeAllListeners(),this.removeSession(e),h}).then(()=>(c.removeAllListeners(),e))}onKeyStatusChange(e){e.mediaKeysSession.keyStatuses.forEach((t,r)=>{this.log(`key status change "${t}" for keyStatuses keyId: ${pr.hexDump("buffer"in r?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):new Uint8Array(r))} session keyId: ${pr.hexDump(new Uint8Array(e.decryptdata.keyId||[]))} uri: ${e.decryptdata.uri}`),e.keyStatus=t})}fetchServerCertificate(e){let t=this.config,r=t.loader,s=new r(t),n=this.getServerCertificateUrl(e);return n?(this.log(`Fetching serverCertificate for "${e}"`),new Promise((a,o)=>{let l={responseType:"arraybuffer",url:n},d=t.certLoadPolicy.default,c={loadPolicy:d,timeout:d.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0},u={onSuccess:(h,f,g,E)=>{a(h.data)},onError:(h,f,g,E)=>{o(new oi({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED,fatal:!0,networkDetails:g,response:Zt({url:l.url,data:void 0},h)},`"${e}" certificate request failed (${n}). Status: ${h.code} (${h.text})`))},onTimeout:(h,f,g)=>{o(new oi({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED,fatal:!0,networkDetails:g,response:{url:l.url,data:void 0}},`"${e}" certificate request timed out (${n})`))},onAbort:(h,f,g)=>{o(new Error("aborted"))}};s.load(l,c,u)})):Promise.resolve()}setMediaKeysServerCertificate(e,t,r){return new Promise((s,n)=>{e.setServerCertificate(r).then(a=>{this.log(`setServerCertificate ${a?"success":"not supported by CDM"} (${r==null?void 0:r.byteLength}) on "${t}"`),s(e)}).catch(a=>{n(new oi({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED,error:a,fatal:!0},a.message))})})}renewLicense(e,t){return this.requestLicense(e,new Uint8Array(t)).then(r=>this.updateKeySession(e,new Uint8Array(r)).catch(s=>{throw new oi({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_SESSION_UPDATE_FAILED,error:s,fatal:!0},s.message)}))}setupLicenseXHR(e,t,r,s){let n=this.config.licenseXhrSetup;return n?Promise.resolve().then(()=>{if(!r.decryptdata)throw new Error("Key removed");return n.call(this.hls,e,t,r,s)}).catch(a=>{if(!r.decryptdata)throw a;return e.open("POST",t,!0),n.call(this.hls,e,t,r,s)}).then(a=>(e.readyState||e.open("POST",t,!0),{xhr:e,licenseChallenge:a||s})):(e.open("POST",t,!0),Promise.resolve({xhr:e,licenseChallenge:s}))}requestLicense(e,t){let r=this.config.keyLoadPolicy.default;return new Promise((s,n)=>{let a=this.getLicenseServerUrl(e.keySystem);this.log(`Sending license request to URL: ${a}`);let o=new XMLHttpRequest;o.responseType="arraybuffer",o.onreadystatechange=()=>{if(!this.hls||!e.mediaKeysSession)return n(new Error("invalid state"));if(o.readyState===4)if(o.status===200){this._requestLicenseFailureCount=0;let l=o.response;this.log(`License received ${l instanceof ArrayBuffer?l.byteLength:l}`);let d=this.config.licenseResponseCallback;if(d)try{l=d.call(this.hls,o,a,e)}catch(c){this.error(c)}s(l)}else{let l=r.errorRetry,d=l?l.maxNumRetry:0;if(this._requestLicenseFailureCount++,this._requestLicenseFailureCount>d||o.status>=400&&o.status<500)n(new oi({type:he.KEY_SYSTEM_ERROR,details:H.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0,networkDetails:o,response:{url:a,data:void 0,code:o.status,text:o.statusText}},`License Request XHR failed (${a}). Status: ${o.status} (${o.statusText})`));else{let c=d-this._requestLicenseFailureCount+1;this.warn(`Retrying license request, ${c} attempts left`),this.requestLicense(e,t).then(s,n)}}},e.licenseXhr&&e.licenseXhr.readyState!==XMLHttpRequest.DONE&&e.licenseXhr.abort(),e.licenseXhr=o,this.setupLicenseXHR(o,a,e,t).then(({xhr:l,licenseChallenge:d})=>{l.send(d)})})}onMediaAttached(e,t){if(!this.config.emeEnabled)return;let r=t.media;this.media=r,r.addEventListener("encrypted",this.onMediaEncrypted),r.addEventListener("waitingforkey",this.onWaitingForKey)}onMediaDetached(){let e=this.media,t=this.mediaKeySessions;e&&(e.removeEventListener("encrypted",this.onMediaEncrypted),e.removeEventListener("waitingforkey",this.onWaitingForKey),this.media=null),this._requestLicenseFailureCount=0,this.setMediaKeysQueue=[],this.mediaKeySessions=[],this.keyIdToKeySessionPromise={},xo.clearKeyUriToKeyIdMap();let r=t.length;i.CDMCleanupPromise=Promise.all(t.map(s=>this.removeSession(s)).concat(e==null?void 0:e.setMediaKeys(null).catch(s=>{this.log(`Could not clear media keys: ${s}. media.src: ${e==null?void 0:e.src}`)}))).then(()=>{r&&(this.log("finished closing key sessions and clearing media keys"),t.length=0)}).catch(s=>{this.log(`Could not close sessions and clear media keys: ${s}. media.src: ${e==null?void 0:e.src}`)})}onManifestLoading(){this.keyFormatPromise=null}onManifestLoaded(e,{sessionKeys:t}){if(!(!t||!this.config.emeEnabled)&&!this.keyFormatPromise){let r=t.reduce((s,n)=>(s.indexOf(n.keyFormat)===-1&&s.push(n.keyFormat),s),[]);this.log(`Selecting key-system from session-keys ${r.join(", ")}`),this.keyFormatPromise=this.getKeyFormatPromise(r)}}removeSession(e){let{mediaKeysSession:t,licenseXhr:r}=e;if(t){this.log(`Remove licenses and keys and close session ${t.sessionId}`),t.onmessage=null,t.onkeystatuseschange=null,r&&r.readyState!==XMLHttpRequest.DONE&&r.abort(),e.mediaKeysSession=e.decryptdata=e.licenseXhr=void 0;let s=this.mediaKeySessions.indexOf(e);return s>-1&&this.mediaKeySessions.splice(s,1),t.remove().catch(n=>{this.log(`Could not remove session: ${n}`)}).then(()=>t.close()).catch(n=>{this.log(`Could not close session: ${n}`)})}}};bu.CDMCleanupPromise=void 0;var oi=class extends Error{constructor(e,t){super(t),this.data=void 0,e.error||(e.error=new Error(t)),this.data=e,e.err=e.error}},OL=1,ni={MANIFEST:"m",AUDIO:"a",VIDEO:"v",MUXED:"av",INIT:"i",CAPTION:"c",TIMED_TEXT:"tt",KEY:"k",OTHER:"o"},NL="h",$g=class i{constructor(e){this.hls=void 0,this.config=void 0,this.media=void 0,this.sid=void 0,this.cid=void 0,this.useHeaders=!1,this.initialized=!1,this.starved=!1,this.buffering=!0,this.audioBuffer=void 0,this.videoBuffer=void 0,this.onWaiting=()=>{this.initialized&&(this.starved=!0),this.buffering=!0},this.onPlaying=()=>{this.initialized||(this.initialized=!0),this.buffering=!1},this.applyPlaylistData=s=>{try{this.apply(s,{ot:ni.MANIFEST,su:!this.initialized})}catch(n){M.warn("Could not generate manifest CMCD data.",n)}},this.applyFragmentData=s=>{try{let n=s.frag,a=this.hls.levels[n.level],o=this.getObjectType(n),l={d:n.duration*1e3,ot:o};(o===ni.VIDEO||o===ni.AUDIO||o==ni.MUXED)&&(l.br=a.bitrate/1e3,l.tb=this.getTopBandwidth(o)/1e3,l.bl=this.getBufferLength(o)),this.apply(s,l)}catch(n){M.warn("Could not generate segment CMCD data.",n)}},this.hls=e;let t=this.config=e.config,{cmcd:r}=t;r!=null&&(t.pLoader=this.createPlaylistLoader(),t.fLoader=this.createFragmentLoader(),this.sid=r.sessionId||i.uuid(),this.cid=r.contentId,this.useHeaders=r.useHeaders===!0,this.registerListeners())}registerListeners(){let e=this.hls;e.on(b.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(b.MEDIA_DETACHED,this.onMediaDetached,this),e.on(b.BUFFER_CREATED,this.onBufferCreated,this)}unregisterListeners(){let e=this.hls;e.off(b.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(b.MEDIA_DETACHED,this.onMediaDetached,this),e.off(b.BUFFER_CREATED,this.onBufferCreated,this)}destroy(){this.unregisterListeners(),this.onMediaDetached(),this.hls=this.config=this.audioBuffer=this.videoBuffer=null}onMediaAttached(e,t){this.media=t.media,this.media.addEventListener("waiting",this.onWaiting),this.media.addEventListener("playing",this.onPlaying)}onMediaDetached(){this.media&&(this.media.removeEventListener("waiting",this.onWaiting),this.media.removeEventListener("playing",this.onPlaying),this.media=null)}onBufferCreated(e,t){var r,s;this.audioBuffer=(r=t.tracks.audio)==null?void 0:r.buffer,this.videoBuffer=(s=t.tracks.video)==null?void 0:s.buffer}createData(){var e;return{v:OL,sf:NL,sid:this.sid,cid:this.cid,pr:(e=this.media)==null?void 0:e.playbackRate,mtp:this.hls.bandwidthEstimate/1e3}}apply(e,t={}){xt(t,this.createData());let r=t.ot===ni.INIT||t.ot===ni.VIDEO||t.ot===ni.MUXED;if(this.starved&&r&&(t.bs=!0,t.su=!0,this.starved=!1),t.su==null&&(t.su=this.buffering),this.useHeaders){let s=i.toHeaders(t);if(!Object.keys(s).length)return;e.headers||(e.headers={}),xt(e.headers,s)}else{let s=i.toQuery(t);if(!s)return;e.url=i.appendQueryToUri(e.url,s)}}getObjectType(e){let{type:t}=e;if(t==="subtitle")return ni.TIMED_TEXT;if(e.sn==="initSegment")return ni.INIT;if(t==="audio")return ni.AUDIO;if(t==="main")return this.hls.audioTracks.length?ni.VIDEO:ni.MUXED}getTopBandwidth(e){let t=0,r,s=this.hls;if(e===ni.AUDIO)r=s.audioTracks;else{let n=s.maxAutoLevel,a=n>-1?n+1:s.levels.length;r=s.levels.slice(0,a)}for(let n of r)n.bitrate>t&&(t=n.bitrate);return t>0?t:NaN}getBufferLength(e){let t=this.hls.media,r=e===ni.AUDIO?this.audioBuffer:this.videoBuffer;return!r||!t?NaN:at.bufferInfo(r,t.currentTime,this.config.maxBufferHole).len*1e3}createPlaylistLoader(){let{pLoader:e}=this.config,t=this.applyPlaylistData,r=e||this.config.loader;return class{constructor(n){this.loader=void 0,this.loader=new r(n)}get stats(){return this.loader.stats}get context(){return this.loader.context}destroy(){this.loader.destroy()}abort(){this.loader.abort()}load(n,a,o){t(n),this.loader.load(n,a,o)}}}createFragmentLoader(){let{fLoader:e}=this.config,t=this.applyFragmentData,r=e||this.config.loader;return class{constructor(n){this.loader=void 0,this.loader=new r(n)}get stats(){return this.loader.stats}get context(){return this.loader.context}destroy(){this.loader.destroy()}abort(){this.loader.abort()}load(n,a,o){t(n),this.loader.load(n,a,o)}}}static uuid(){let e=URL.createObjectURL(new Blob),t=e.toString();return URL.revokeObjectURL(e),t.slice(t.lastIndexOf("/")+1)}static serialize(e){let t=[],r=d=>!Number.isNaN(d)&&d!=null&&d!==""&&d!==!1,s=d=>Math.round(d),n=d=>s(d/100)*100,o={br:s,d:s,bl:n,dl:n,mtp:n,nor:d=>encodeURIComponent(d),rtp:n,tb:s},l=Object.keys(e||{}).sort();for(let d of l){let c=e[d];if(!r(c)||d==="v"&&c===1||d=="pr"&&c===1)continue;let u=o[d];u&&(c=u(c));let h=typeof c,f;d==="ot"||d==="sf"||d==="st"?f=`${d}=${c}`:h==="boolean"?f=d:h==="number"?f=`${d}=${c}`:f=`${d}=${JSON.stringify(c)}`,t.push(f)}return t.join(",")}static toHeaders(e){let t=Object.keys(e),r={},s=["Object","Request","Session","Status"],n=[{},{},{},{}],a={br:0,d:0,ot:0,tb:0,bl:1,dl:1,mtp:1,nor:1,nrr:1,su:1,cid:2,pr:2,sf:2,sid:2,st:2,v:2,bs:3,rtp:3};for(let o of t){let l=a[o]!=null?a[o]:1;n[l][o]=e[o]}for(let o=0;o<n.length;o++){let l=i.serialize(n[o]);l&&(r[`CMCD-${s[o]}`]=l)}return r}static toQuery(e){return`CMCD=${encodeURIComponent(i.serialize(e))}`}static appendQueryToUri(e,t){if(!t)return e;let r=e.includes("?")?"&":"?";return`${e}${r}${t}`}},UL=3e5,Hg=class{constructor(e){this.hls=void 0,this.log=void 0,this.loader=null,this.uri=null,this.pathwayId=".",this.pathwayPriority=null,this.timeToLoad=300,this.reloadTimer=-1,this.updated=0,this.started=!1,this.enabled=!0,this.levels=null,this.audioTracks=null,this.subtitleTracks=null,this.penalizedPathways={},this.hls=e,this.log=M.log.bind(M,"[content-steering]:"),this.registerListeners()}registerListeners(){let e=this.hls;e.on(b.MANIFEST_LOADING,this.onManifestLoading,this),e.on(b.MANIFEST_LOADED,this.onManifestLoaded,this),e.on(b.MANIFEST_PARSED,this.onManifestParsed,this),e.on(b.ERROR,this.onError,this)}unregisterListeners(){let e=this.hls;e&&(e.off(b.MANIFEST_LOADING,this.onManifestLoading,this),e.off(b.MANIFEST_LOADED,this.onManifestLoaded,this),e.off(b.MANIFEST_PARSED,this.onManifestParsed,this),e.off(b.ERROR,this.onError,this))}startLoad(){if(this.started=!0,self.clearTimeout(this.reloadTimer),this.enabled&&this.uri)if(this.updated){let e=Math.max(this.timeToLoad*1e3-(performance.now()-this.updated),0);this.scheduleRefresh(this.uri,e)}else this.loadSteeringManifest(this.uri)}stopLoad(){this.started=!1,this.loader&&(this.loader.destroy(),this.loader=null),self.clearTimeout(this.reloadTimer)}destroy(){this.unregisterListeners(),this.stopLoad(),this.hls=null,this.levels=this.audioTracks=this.subtitleTracks=null}removeLevel(e){let t=this.levels;t&&(this.levels=t.filter(r=>r!==e))}onManifestLoading(){this.stopLoad(),this.enabled=!0,this.timeToLoad=300,this.updated=0,this.uri=null,this.pathwayId=".",this.levels=this.audioTracks=this.subtitleTracks=null}onManifestLoaded(e,t){let{contentSteering:r}=t;r!==null&&(this.pathwayId=r.pathwayId,this.uri=r.uri,this.started&&this.startLoad())}onManifestParsed(e,t){this.audioTracks=t.audioTracks,this.subtitleTracks=t.subtitleTracks}onError(e,t){let{errorAction:r}=t;if((r==null?void 0:r.action)===Yt.SendAlternateToPenaltyBox&&r.flags===Si.MoveAllAlternatesMatchingHost){let s=this.pathwayPriority,n=this.pathwayId;this.penalizedPathways[n]||(this.penalizedPathways[n]=performance.now()),!s&&this.levels&&(s=this.levels.reduce((a,o)=>(a.indexOf(o.pathwayId)===-1&&a.push(o.pathwayId),a),[])),s&&s.length>1&&(this.updatePathwayPriority(s),r.resolved=this.pathwayId!==n)}}filterParsedLevels(e){this.levels=e;let t=this.getLevelsForPathway(this.pathwayId);if(t.length===0){let r=e[0].pathwayId;this.log(`No levels found in Pathway ${this.pathwayId}. Setting initial Pathway to "${r}"`),t=this.getLevelsForPathway(r),this.pathwayId=r}return t.length!==e.length?(this.log(`Found ${t.length}/${e.length} levels in Pathway "${this.pathwayId}"`),t):e}getLevelsForPathway(e){return this.levels===null?[]:this.levels.filter(t=>e===t.pathwayId)}updatePathwayPriority(e){this.pathwayPriority=e;let t,r=this.penalizedPathways,s=performance.now();Object.keys(r).forEach(n=>{s-r[n]>UL&&delete r[n]});for(let n=0;n<e.length;n++){let a=e[n];if(r[a])continue;if(a===this.pathwayId)return;let o=this.hls.nextLoadLevel,l=this.hls.levels[o];if(t=this.getLevelsForPathway(a),t.length>0){this.log(`Setting Pathway to "${a}"`),this.pathwayId=a,this.hls.trigger(b.LEVELS_UPDATED,{levels:t});let d=this.hls.levels[o];l&&d&&this.levels&&(d.attrs["STABLE-VARIANT-ID"]!==l.attrs["STABLE-VARIANT-ID"]&&d.bitrate!==l.bitrate&&this.log(`Unstable Pathways change from bitrate ${l.bitrate} to ${d.bitrate}`),this.hls.nextLoadLevel=o);break}}}clonePathways(e){let t=this.levels;if(!t)return;let r={},s={};e.forEach(n=>{let{ID:a,"BASE-ID":o,"URI-REPLACEMENT":l}=n;if(t.some(c=>c.pathwayId===a))return;let d=this.getLevelsForPathway(o).map(c=>{let u=xt({},c);u.details=void 0,u.url=l_(c.uri,c.attrs["STABLE-VARIANT-ID"],"PER-VARIANT-URIS",l);let h=new ut(c.attrs);h["PATHWAY-ID"]=a;let f=h.AUDIO&&`${h.AUDIO}_clone_${a}`,g=h.SUBTITLES&&`${h.SUBTITLES}_clone_${a}`;f&&(r[h.AUDIO]=f,h.AUDIO=f),g&&(s[h.SUBTITLES]=g,h.SUBTITLES=g),u.attrs=h;let E=new Gs(u);return ou(E,"audio",f),ou(E,"text",g),E});t.push(...d),vT(this.audioTracks,r,l,a),vT(this.subtitleTracks,s,l,a)})}loadSteeringManifest(e){let t=this.hls.config,r=t.loader;this.loader&&this.loader.destroy(),this.loader=new r(t);let s;try{s=new self.URL(e)}catch{this.enabled=!1,this.log(`Failed to parse Steering Manifest URI: ${e}`);return}if(s.protocol!=="data:"){let c=(this.hls.bandwidthEstimate||t.abrEwmaDefaultEstimate)|0;s.searchParams.set("_HLS_pathway",this.pathwayId),s.searchParams.set("_HLS_throughput",""+c)}let n={responseType:"json",url:s.href},a=t.steeringManifestLoadPolicy.default,o=a.errorRetry||a.timeoutRetry||{},l={loadPolicy:a,timeout:a.maxLoadTimeMs,maxRetry:o.maxNumRetry||0,retryDelay:o.retryDelayMs||0,maxRetryDelay:o.maxRetryDelayMs||0},d={onSuccess:(c,u,h,f)=>{this.log(`Loaded steering manifest: "${s}"`);let g=c.data;if(g.VERSION!==1){this.log(`Steering VERSION ${g.VERSION} not supported!`);return}this.updated=performance.now(),this.timeToLoad=g.TTL;let{"RELOAD-URI":E,"PATHWAY-CLONES":y,"PATHWAY-PRIORITY":S}=g;if(E)try{this.uri=new self.URL(E,s).href}catch{this.enabled=!1,this.log(`Failed to parse Steering Manifest RELOAD-URI: ${E}`);return}this.scheduleRefresh(this.uri||h.url),y&&this.clonePathways(y),S&&this.updatePathwayPriority(S)},onError:(c,u,h,f)=>{if(this.log(`Error loading steering manifest: ${c.code} ${c.text} (${u.url})`),this.stopLoad(),c.code===410){this.enabled=!1,this.log(`Steering manifest ${u.url} no longer available`);return}let g=this.timeToLoad*1e3;if(c.code===429){let E=this.loader;if(typeof(E==null?void 0:E.getResponseHeader)=="function"){let y=E.getResponseHeader("Retry-After");y&&(g=parseFloat(y)*1e3)}this.log(`Steering manifest ${u.url} rate limited`);return}this.scheduleRefresh(this.uri||u.url,g)},onTimeout:(c,u,h)=>{this.log(`Timeout loading steering manifest (${u.url})`),this.scheduleRefresh(this.uri||u.url)}};this.log(`Requesting steering manifest: ${s}`),this.loader.load(n,l,d)}scheduleRefresh(e,t=this.timeToLoad*1e3){self.clearTimeout(this.reloadTimer),this.reloadTimer=self.setTimeout(()=>{this.loadSteeringManifest(e)},t)}};function vT(i,e,t,r){i&&Object.keys(e).forEach(s=>{let n=i.filter(a=>a.groupId===s).map(a=>{let o=xt({},a);return o.details=void 0,o.attrs=new ut(o.attrs),o.url=o.attrs.URI=l_(a.url,a.attrs["STABLE-RENDITION-ID"],"PER-RENDITION-URIS",t),o.groupId=o.attrs["GROUP-ID"]=e[s],o.attrs["PATHWAY-ID"]=r,o});i.push(...n)})}function l_(i,e,t,r){let{HOST:s,PARAMS:n,[t]:a}=r,o;e&&(o=a==null?void 0:a[e],o&&(i=o));let l=new self.URL(i);return s&&!o&&(l.host=s),n&&Object.keys(n).sort().forEach(d=>{d&&l.searchParams.set(d,n[d])}),l.href}var FL=/^age:\s*[\d.]+\s*$/im,yu=class{constructor(e){this.xhrSetup=void 0,this.requestTimeout=void 0,this.retryTimeout=void 0,this.retryDelay=void 0,this.config=null,this.callbacks=null,this.context=void 0,this.loader=null,this.stats=void 0,this.xhrSetup=e&&e.xhrSetup||null,this.stats=new ta,this.retryDelay=0}destroy(){this.callbacks=null,this.abortInternal(),this.loader=null,this.config=null}abortInternal(){let e=this.loader;self.clearTimeout(this.requestTimeout),self.clearTimeout(this.retryTimeout),e&&(e.onreadystatechange=null,e.onprogress=null,e.readyState!==4&&(this.stats.aborted=!0,e.abort()))}abort(){var e;this.abortInternal(),(e=this.callbacks)!=null&&e.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.loader)}load(e,t,r){if(this.stats.loading.start)throw new Error("Loader can only be used once.");this.stats.loading.start=self.performance.now(),this.context=e,this.config=t,this.callbacks=r,this.loadInternal()}loadInternal(){let{config:e,context:t}=this;if(!e)return;let r=this.loader=new self.XMLHttpRequest,s=this.stats;s.loading.first=0,s.loaded=0,s.aborted=!1;let n=this.xhrSetup;n?Promise.resolve().then(()=>{if(!this.stats.aborted)return n(r,t.url)}).catch(a=>(r.open("GET",t.url,!0),n(r,t.url))).then(()=>{this.stats.aborted||this.openAndSendXhr(r,t,e)}).catch(a=>{this.callbacks.onError({code:r.status,text:a.message},t,r,s)}):this.openAndSendXhr(r,t,e)}openAndSendXhr(e,t,r){e.readyState||e.open("GET",t.url,!0);let s=this.context.headers,{maxTimeToFirstByteMs:n,maxLoadTimeMs:a}=r.loadPolicy;if(s)for(let o in s)e.setRequestHeader(o,s[o]);t.rangeEnd&&e.setRequestHeader("Range","bytes="+t.rangeStart+"-"+(t.rangeEnd-1)),e.onreadystatechange=this.readystatechange.bind(this),e.onprogress=this.loadprogress.bind(this),e.responseType=t.responseType,self.clearTimeout(this.requestTimeout),r.timeout=n&&oe(n)?n:a,this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),r.timeout),e.send()}readystatechange(){let{context:e,loader:t,stats:r}=this;if(!e||!t)return;let s=t.readyState,n=this.config;if(!r.aborted&&s>=2&&(r.loading.first===0&&(r.loading.first=Math.max(self.performance.now(),r.loading.start),n.timeout!==n.loadPolicy.maxLoadTimeMs&&(self.clearTimeout(this.requestTimeout),n.timeout=n.loadPolicy.maxLoadTimeMs,this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),n.loadPolicy.maxLoadTimeMs-(r.loading.first-r.loading.start)))),s===4)){self.clearTimeout(this.requestTimeout),t.onreadystatechange=null,t.onprogress=null;let a=t.status,o=t.responseType!=="text";if(a>=200&&a<300&&(o&&t.response||t.responseText!==null)){r.loading.end=Math.max(self.performance.now(),r.loading.first);let l=o?t.response:t.responseText,d=t.responseType==="arraybuffer"?l.byteLength:l.length;if(r.loaded=r.total=d,r.bwEstimate=r.total*8e3/(r.loading.end-r.loading.first),!this.callbacks)return;let c=this.callbacks.onProgress;if(c&&c(r,e,l,t),!this.callbacks)return;let u={url:t.responseURL,data:l,code:a};this.callbacks.onSuccess(u,r,e,t)}else{let l=n.loadPolicy.errorRetry,d=r.retry;au(l,d,!1,a)?this.retry(l):(M.error(`${a} while loading ${e.url}`),this.callbacks.onError({code:a,text:t.statusText},e,t,r))}}}loadtimeout(){var e;let t=(e=this.config)==null?void 0:e.loadPolicy.timeoutRetry,r=this.stats.retry;if(au(t,r,!0))this.retry(t);else{M.warn(`timeout while loading ${this.context.url}`);let s=this.callbacks;s&&(this.abortInternal(),s.onTimeout(this.stats,this.context,this.loader))}}retry(e){let{context:t,stats:r}=this;this.retryDelay=Yg(e,r.retry),r.retry++,M.warn(`${status?"HTTP Status "+status:"Timeout"} while loading ${t.url}, retrying ${r.retry}/${e.maxNumRetry} in ${this.retryDelay}ms`),this.abortInternal(),this.loader=null,self.clearTimeout(this.retryTimeout),this.retryTimeout=self.setTimeout(this.loadInternal.bind(this),this.retryDelay)}loadprogress(e){let t=this.stats;t.loaded=e.loaded,e.lengthComputable&&(t.total=e.total)}getCacheAge(){let e=null;if(this.loader&&FL.test(this.loader.getAllResponseHeaders())){let t=this.loader.getResponseHeader("age");e=t?parseFloat(t):null}return e}getResponseHeader(e){return this.loader&&new RegExp(`^${e}:\\s*[\\d.]+\\s*$`,"im").test(this.loader.getAllResponseHeaders())?this.loader.getResponseHeader(e):null}};function BL(){if(self.fetch&&self.AbortController&&self.ReadableStream&&self.Request)try{return new self.ReadableStream({}),!0}catch{}return!1}var $L=/(\d+)-(\d+)\/(\d+)/,Tu=class{constructor(e){this.fetchSetup=void 0,this.requestTimeout=void 0,this.request=void 0,this.response=void 0,this.controller=void 0,this.context=void 0,this.config=null,this.callbacks=null,this.stats=void 0,this.loader=null,this.fetchSetup=e.fetchSetup||KL,this.controller=new self.AbortController,this.stats=new ta}destroy(){this.loader=this.callbacks=null,this.abortInternal()}abortInternal(){let e=this.response;e!=null&&e.ok||(this.stats.aborted=!0,this.controller.abort())}abort(){var e;this.abortInternal(),(e=this.callbacks)!=null&&e.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.response)}load(e,t,r){let s=this.stats;if(s.loading.start)throw new Error("Loader can only be used once.");s.loading.start=self.performance.now();let n=HL(e,this.controller.signal),a=r.onProgress,o=e.responseType==="arraybuffer",l=o?"byteLength":"length",{maxTimeToFirstByteMs:d,maxLoadTimeMs:c}=t.loadPolicy;this.context=e,this.config=t,this.callbacks=r,this.request=this.fetchSetup(e,n),self.clearTimeout(this.requestTimeout),t.timeout=d&&oe(d)?d:c,this.requestTimeout=self.setTimeout(()=>{this.abortInternal(),r.onTimeout(s,e,this.response)},t.timeout),self.fetch(this.request).then(u=>{this.response=this.loader=u;let h=Math.max(self.performance.now(),s.loading.start);if(self.clearTimeout(this.requestTimeout),t.timeout=c,this.requestTimeout=self.setTimeout(()=>{this.abortInternal(),r.onTimeout(s,e,this.response)},c-(h-s.loading.start)),!u.ok){let{status:f,statusText:g}=u;throw new Gg(g||"fetch, bad network response",f,u)}return s.loading.first=h,s.total=WL(u.headers)||s.total,a&&oe(t.highWaterMark)?this.loadProgressively(u,s,e,t.highWaterMark,a):o?u.arrayBuffer():e.responseType==="json"?u.json():u.text()}).then(u=>{let{response:h}=this;self.clearTimeout(this.requestTimeout),s.loading.end=Math.max(self.performance.now(),s.loading.first);let f=u[l];f&&(s.loaded=s.total=f);let g={url:h.url,data:u,code:h.status};a&&!oe(t.highWaterMark)&&a(s,e,u,h),r.onSuccess(g,s,e,h)}).catch(u=>{if(self.clearTimeout(this.requestTimeout),s.aborted)return;let h=u&&u.code||0,f=u?u.message:null;r.onError({code:h,text:f},e,u?u.details:null,s)})}getCacheAge(){let e=null;if(this.response){let t=this.response.headers.get("age");e=t?parseFloat(t):null}return e}getResponseHeader(e){return this.response?this.response.headers.get(e):null}loadProgressively(e,t,r,s=0,n){let a=new pu,o=e.body.getReader(),l=()=>o.read().then(d=>{if(d.done)return a.dataLength&&n(t,r,a.flush(),e),Promise.resolve(new ArrayBuffer(0));let c=d.value,u=c.length;return t.loaded+=u,u<s||a.dataLength?(a.push(c),a.dataLength>=s&&n(t,r,a.flush(),e)):n(t,r,c,e),l()}).catch(()=>Promise.reject());return l()}};function HL(i,e){let t={method:"GET",mode:"cors",credentials:"same-origin",signal:e,headers:new self.Headers(xt({},i.headers))};return i.rangeEnd&&t.headers.set("Range","bytes="+i.rangeStart+"-"+String(i.rangeEnd-1)),t}function GL(i){let e=$L.exec(i);if(e)return parseInt(e[2])-parseInt(e[1])+1}function WL(i){let e=i.get("Content-Range");if(e){let r=GL(e);if(oe(r))return r}let t=i.get("Content-Length");if(t)return parseInt(t)}function KL(i,e){return new self.Request(i.url,e)}var Gg=class extends Error{constructor(e,t,r){super(e),this.code=void 0,this.details=void 0,this.code=t,this.details=r}},VL=/\s/,qL={newCue(i,e,t,r){let s=[],n,a,o,l,d,c=self.VTTCue||self.TextTrackCue;for(let h=0;h<r.rows.length;h++)if(n=r.rows[h],o=!0,l=0,d="",!n.isEmpty()){var u;for(let E=0;E<n.chars.length;E++)VL.test(n.chars[E].uchar)&&o?l++:(d+=n.chars[E].uchar,o=!1);n.cueStartTime=e,e===t&&(t+=1e-4),l>=16?l--:l++;let f=s_(d.trim()),g=e0(e,t,f);i!=null&&(u=i.cues)!=null&&u.getCueById(g)||(a=new c(e,t,f),a.id=g,a.line=h+1,a.align="left",a.position=10+Math.min(80,Math.floor(l*8/32)*10),s.push(a))}return i&&s.length&&(s.sort((h,f)=>h.line==="auto"||f.line==="auto"?0:h.line>8&&f.line>8?f.line-h.line:h.line-f.line),s.forEach(h=>PT(i,h))),s}},YL={maxTimeToFirstByteMs:8e3,maxLoadTimeMs:2e4,timeoutRetry:null,errorRetry:null},jL=Zt(Zt({autoStartLoad:!0,startPosition:-1,defaultAudioCodec:void 0,debug:!1,capLevelOnFPSDrop:!1,capLevelToPlayerSize:!1,ignoreDevicePixelRatio:!1,initialLiveManifestSize:1,maxBufferLength:30,backBufferLength:1/0,maxBufferSize:60*1e3*1e3,maxBufferHole:.1,highBufferWatchdogPeriod:2,nudgeOffset:.1,nudgeMaxRetry:3,maxFragLookUpTolerance:.25,liveSyncDurationCount:3,liveMaxLatencyDurationCount:1/0,liveSyncDuration:void 0,liveMaxLatencyDuration:void 0,maxLiveSyncPlaybackRate:1,liveDurationInfinity:!1,liveBackBufferLength:null,maxMaxBufferLength:600,enableWorker:!0,workerPath:null,enableSoftwareAES:!0,startLevel:void 0,startFragPrefetch:!1,fpsDroppedMonitoringPeriod:5e3,fpsDroppedMonitoringThreshold:.2,appendErrorMaxRetry:3,loader:yu,fLoader:void 0,pLoader:void 0,xhrSetup:void 0,licenseXhrSetup:void 0,licenseResponseCallback:void 0,abrController:_g,bufferController:Rg,capLevelController:Fg,errorController:eg,fpsController:Bg,stretchShortVideoTrack:!1,maxAudioFramesDrift:1,forceKeyFrameOnDiscontinuity:!0,abrEwmaFastLive:3,abrEwmaSlowLive:9,abrEwmaFastVoD:3,abrEwmaSlowVoD:9,abrEwmaDefaultEstimate:5e5,abrBandWidthFactor:.95,abrBandWidthUpFactor:.7,abrMaxWithRealBitrate:!1,maxStarvationDelay:4,maxLoadingDelay:4,minAutoBitrate:0,emeEnabled:!1,widevineLicenseUrl:void 0,drmSystems:{},drmSystemOptions:{},requestMediaKeySystemAccessFunc:TT,testBandwidth:!0,progressive:!1,lowLatencyMode:!0,cmcd:void 0,enableDateRangeMetadataCues:!0,enableEmsgMetadataCues:!0,enableID3MetadataCues:!0,certLoadPolicy:{default:YL},keyLoadPolicy:{default:{maxTimeToFirstByteMs:8e3,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:2e4,backoff:"linear"},errorRetry:{maxNumRetry:8,retryDelayMs:1e3,maxRetryDelayMs:2e4,backoff:"linear"}}},manifestLoadPolicy:{default:{maxTimeToFirstByteMs:1/0,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},playlistLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:2,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},fragLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:12e4,timeoutRetry:{maxNumRetry:4,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:6,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},steeringManifestLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},manifestLoadingTimeOut:1e4,manifestLoadingMaxRetry:1,manifestLoadingRetryDelay:1e3,manifestLoadingMaxRetryTimeout:64e3,levelLoadingTimeOut:1e4,levelLoadingMaxRetry:4,levelLoadingRetryDelay:1e3,levelLoadingMaxRetryTimeout:64e3,fragLoadingTimeOut:2e4,fragLoadingMaxRetry:6,fragLoadingRetryDelay:1e3,fragLoadingMaxRetryTimeout:64e3},zL()),{},{subtitleStreamController:xg,subtitleTrackController:kg,timelineController:Ug,audioStreamController:Ag,audioTrackController:Sg,emeController:bu,cmcdController:$g,contentSteeringController:Hg});function zL(){return{cueHandler:qL,enableWebVTT:!0,enableIMSC1:!0,enableCEA708Captions:!0,captionsTextTrack1Label:"English",captionsTextTrack1LanguageCode:"en",captionsTextTrack2Label:"Spanish",captionsTextTrack2LanguageCode:"es",captionsTextTrack3Label:"Unknown CC",captionsTextTrack3LanguageCode:"",captionsTextTrack4Label:"Unknown CC",captionsTextTrack4LanguageCode:"",renderTextTracksNatively:!0}}function XL(i,e){if((e.liveSyncDurationCount||e.liveMaxLatencyDurationCount)&&(e.liveSyncDuration||e.liveMaxLatencyDuration))throw new Error("Illegal hls.js config: don't mix up liveSyncDurationCount/liveMaxLatencyDurationCount and liveSyncDuration/liveMaxLatencyDuration");if(e.liveMaxLatencyDurationCount!==void 0&&(e.liveSyncDurationCount===void 0||e.liveMaxLatencyDurationCount<=e.liveSyncDurationCount))throw new Error('Illegal hls.js config: "liveMaxLatencyDurationCount" must be greater than "liveSyncDurationCount"');if(e.liveMaxLatencyDuration!==void 0&&(e.liveSyncDuration===void 0||e.liveMaxLatencyDuration<=e.liveSyncDuration))throw new Error('Illegal hls.js config: "liveMaxLatencyDuration" must be greater than "liveSyncDuration"');let t=Wg(i),r=["manifest","level","frag"],s=["TimeOut","MaxRetry","RetryDelay","MaxRetryTimeout"];return r.forEach(n=>{let a=`${n==="level"?"playlist":n}LoadPolicy`,o=e[a]===void 0,l=[];s.forEach(d=>{let c=`${n}Loading${d}`,u=e[c];if(u!==void 0&&o){l.push(c);let h=t[a].default;switch(e[a]={default:h},d){case"TimeOut":h.maxLoadTimeMs=u,h.maxTimeToFirstByteMs=u;break;case"MaxRetry":h.errorRetry.maxNumRetry=u,h.timeoutRetry.maxNumRetry=u;break;case"RetryDelay":h.errorRetry.retryDelayMs=u,h.timeoutRetry.retryDelayMs=u;break;case"MaxRetryTimeout":h.errorRetry.maxRetryDelayMs=u,h.timeoutRetry.maxRetryDelayMs=u;break}}}),l.length&&M.warn(`hls.js config: "${l.join('", "')}" setting(s) are deprecated, use "${a}": ${JSON.stringify(e[a])}`)}),Zt(Zt({},t),e)}function Wg(i){return i&&typeof i=="object"?Array.isArray(i)?i.map(Wg):Object.keys(i).reduce((e,t)=>(e[t]=Wg(i[t]),e),{}):i}function QL(i){let e=i.loader;e!==Tu&&e!==yu?(M.log("[config]: Custom loader detected, cannot enable progressive streaming"),i.progressive=!1):BL()&&(i.loader=Tu,i.progressive=!0,i.enableSoftwareAES=!0,M.log("[config]: Progressive streaming enabled, using FetchLoader"))}var Co=class i{static get version(){return"1.4.13"}static isSupported(){return Fk()}static get Events(){return b}static get ErrorTypes(){return he}static get ErrorDetails(){return H}static get DefaultConfig(){return i.defaultConfig?i.defaultConfig:jL}static set DefaultConfig(e){i.defaultConfig=e}constructor(e={}){this.config=void 0,this.userConfig=void 0,this.coreComponents=void 0,this.networkControllers=void 0,this._emitter=new Zg,this._autoLevelCapping=void 0,this._maxHdcpLevel=null,this.abrController=void 0,this.bufferController=void 0,this.capLevelController=void 0,this.latencyController=void 0,this.levelController=void 0,this.streamController=void 0,this.audioTrackController=void 0,this.subtitleTrackController=void 0,this.emeController=void 0,this.cmcdController=void 0,this._media=null,this.url=null,SI(e.debug||!1,"Hls instance");let t=this.config=XL(i.DefaultConfig,e);this.userConfig=e,this._autoLevelCapping=-1,t.progressive&&QL(t);let{abrController:r,bufferController:s,capLevelController:n,errorController:a,fpsController:o}=t,l=new a(this),d=this.abrController=new r(this),c=this.bufferController=new s(this),u=this.capLevelController=new n(this),h=new o(this),f=new qp(this),g=new zp(this),E=t.contentSteeringController,y=E?new E(this):null,S=this.levelController=new tg(this,y),w=new ig(this),L=new sg(this.config),F=this.streamController=new yg(this,w,L);u.setStreamController(F),h.setStreamController(F);let R=[f,S,F];y&&R.splice(1,0,y),this.networkControllers=R;let B=[d,c,u,h,g,w];this.audioTrackController=this.createController(t.audioTrackController,R);let P=t.audioStreamController;P&&R.push(new P(this,w,L)),this.subtitleTrackController=this.createController(t.subtitleTrackController,R);let $=t.subtitleStreamController;$&&R.push(new $(this,w,L)),this.createController(t.timelineController,B),L.emeController=this.emeController=this.createController(t.emeController,B),this.cmcdController=this.createController(t.cmcdController,B),this.latencyController=this.createController(Xp,B),this.coreComponents=B,R.push(l);let K=l.onErrorOut;typeof K=="function"&&this.on(b.ERROR,K,l)}createController(e,t){if(e){let r=new e(this);return t&&t.push(r),r}return null}on(e,t,r=this){this._emitter.on(e,t,r)}once(e,t,r=this){this._emitter.once(e,t,r)}removeAllListeners(e){this._emitter.removeAllListeners(e)}off(e,t,r=this,s){this._emitter.off(e,t,r,s)}listeners(e){return this._emitter.listeners(e)}emit(e,t,r){return this._emitter.emit(e,t,r)}trigger(e,t){if(this.config.debug)return this.emit(e,e,t);try{return this.emit(e,e,t)}catch(r){M.error("An internal error happened while handling event "+e+'. Error message: "'+r.message+'". Here is a stacktrace:',r),this.trigger(b.ERROR,{type:he.OTHER_ERROR,details:H.INTERNAL_EXCEPTION,fatal:!1,event:e,error:r})}return!1}listenerCount(e){return this._emitter.listenerCount(e)}destroy(){M.log("destroy"),this.trigger(b.DESTROYING,void 0),this.detachMedia(),this.removeAllListeners(),this._autoLevelCapping=-1,this.url=null,this.networkControllers.forEach(t=>t.destroy()),this.networkControllers.length=0,this.coreComponents.forEach(t=>t.destroy()),this.coreComponents.length=0;let e=this.config;e.xhrSetup=e.fetchSetup=void 0,this.userConfig=null}attachMedia(e){M.log("attachMedia"),this._media=e,this.trigger(b.MEDIA_ATTACHING,{media:e})}detachMedia(){M.log("detachMedia"),this.trigger(b.MEDIA_DETACHING,void 0),this._media=null}loadSource(e){this.stopLoad();let t=this.media,r=this.url,s=this.url=Kg.buildAbsoluteURL(self.location.href,e,{alwaysNormalize:!0});M.log(`loadSource:${s}`),t&&r&&(r!==s||this.bufferController.hasSourceTypes())&&(this.detachMedia(),this.attachMedia(t)),this.trigger(b.MANIFEST_LOADING,{url:e})}startLoad(e=-1){M.log(`startLoad(${e})`),this.networkControllers.forEach(t=>{t.startLoad(e)})}stopLoad(){M.log("stopLoad"),this.networkControllers.forEach(e=>{e.stopLoad()})}swapAudioCodec(){M.log("swapAudioCodec"),this.streamController.swapAudioCodec()}recoverMediaError(){M.log("recoverMediaError");let e=this._media;this.detachMedia(),e&&this.attachMedia(e)}removeLevel(e,t=0){this.levelController.removeLevel(e,t)}get levels(){let e=this.levelController.levels;return e||[]}get currentLevel(){return this.streamController.currentLevel}set currentLevel(e){M.log(`set currentLevel:${e}`),this.loadLevel=e,this.abrController.clearTimer(),this.streamController.immediateLevelSwitch()}get nextLevel(){return this.streamController.nextLevel}set nextLevel(e){M.log(`set nextLevel:${e}`),this.levelController.manualLevel=e,this.streamController.nextLevelSwitch()}get loadLevel(){return this.levelController.level}set loadLevel(e){M.log(`set loadLevel:${e}`),this.levelController.manualLevel=e}get nextLoadLevel(){return this.levelController.nextLoadLevel}set nextLoadLevel(e){this.levelController.nextLoadLevel=e}get firstLevel(){return Math.max(this.levelController.firstLevel,this.minAutoLevel)}set firstLevel(e){M.log(`set firstLevel:${e}`),this.levelController.firstLevel=e}get startLevel(){return this.levelController.startLevel}set startLevel(e){M.log(`set startLevel:${e}`),e!==-1&&(e=Math.max(e,this.minAutoLevel)),this.levelController.startLevel=e}get capLevelToPlayerSize(){return this.config.capLevelToPlayerSize}set capLevelToPlayerSize(e){let t=!!e;t!==this.config.capLevelToPlayerSize&&(t?this.capLevelController.startCapping():(this.capLevelController.stopCapping(),this.autoLevelCapping=-1,this.streamController.nextLevelSwitch()),this.config.capLevelToPlayerSize=t)}get autoLevelCapping(){return this._autoLevelCapping}get bandwidthEstimate(){let{bwEstimator:e}=this.abrController;return e?e.getEstimate():NaN}get ttfbEstimate(){let{bwEstimator:e}=this.abrController;return e?e.getEstimateTTFB():NaN}set autoLevelCapping(e){this._autoLevelCapping!==e&&(M.log(`set autoLevelCapping:${e}`),this._autoLevelCapping=e)}get maxHdcpLevel(){return this._maxHdcpLevel}set maxHdcpLevel(e){Qp.indexOf(e)>-1&&(this._maxHdcpLevel=e)}get autoLevelEnabled(){return this.levelController.manualLevel===-1}get manualLevel(){return this.levelController.manualLevel}get minAutoLevel(){let{levels:e,config:{minAutoBitrate:t}}=this;if(!e)return 0;let r=e.length;for(let s=0;s<r;s++)if(e[s].maxBitrate>=t)return s;return 0}get maxAutoLevel(){let{levels:e,autoLevelCapping:t,maxHdcpLevel:r}=this,s;if(t===-1&&e&&e.length?s=e.length-1:s=t,r)for(let n=s;n--;){let a=e[n].attrs["HDCP-LEVEL"];if(a&&a<=r)return n}return s}get nextAutoLevel(){return Math.min(Math.max(this.abrController.nextAutoLevel,this.minAutoLevel),this.maxAutoLevel)}set nextAutoLevel(e){this.abrController.nextAutoLevel=Math.max(this.minAutoLevel,e)}get playingDate(){return this.streamController.currentProgramDateTime}get mainForwardBufferInfo(){return this.streamController.getMainFwdBufferInfo()}get audioTracks(){let e=this.audioTrackController;return e?e.audioTracks:[]}get audioTrack(){let e=this.audioTrackController;return e?e.audioTrack:-1}set audioTrack(e){let t=this.audioTrackController;t&&(t.audioTrack=e)}get subtitleTracks(){let e=this.subtitleTrackController;return e?e.subtitleTracks:[]}get subtitleTrack(){let e=this.subtitleTrackController;return e?e.subtitleTrack:-1}get media(){return this._media}set subtitleTrack(e){let t=this.subtitleTrackController;t&&(t.subtitleTrack=e)}get subtitleDisplay(){let e=this.subtitleTrackController;return e?e.subtitleDisplay:!1}set subtitleDisplay(e){let t=this.subtitleTrackController;t&&(t.subtitleDisplay=e)}get lowLatencyMode(){return this.config.lowLatencyMode}set lowLatencyMode(e){this.config.lowLatencyMode=e}get liveSyncPosition(){return this.latencyController.liveSyncPosition}get latency(){return this.latencyController.latency}get maxLatency(){return this.latencyController.maxLatency}get targetLatency(){return this.latencyController.targetLatency}get drift(){return this.latencyController.drift}get forceStartLoad(){return this.streamController.forceStartLoad}};Co.defaultConfig=void 0;var ft=Co,ts=class Do extends Error{constructor(e,t=Do.MEDIA_ERR_CUSTOM,r,s){var n;super(e),this.name="MediaError",this.code=t,this.context=s,this.fatal=r!=null?r:t>=Do.MEDIA_ERR_NETWORK&&t<=Do.MEDIA_ERR_ENCRYPTED,this.message||(this.message=(n=Do.defaultMessages[this.code])!=null?n:"")}};ts.MEDIA_ERR_ABORTED=1,ts.MEDIA_ERR_NETWORK=2,ts.MEDIA_ERR_DECODE=3,ts.MEDIA_ERR_SRC_NOT_SUPPORTED=4,ts.MEDIA_ERR_ENCRYPTED=5,ts.MEDIA_ERR_CUSTOM=100,ts.defaultMessages={1:"You aborted the media playback",2:"A network error caused the media download to fail.",3:"A media error caused playback to be aborted. The media could be corrupt or your browser does not support this format.",4:"An unsupported error occurred. The server or network failed, or your browser does not support this format.",5:"The media is encrypted and there are no keys to decrypt it."};var $t=ts,ZL=i=>i==null,p_=(i,e)=>ZL(e)?!1:i in e,i0={ANY:"any",MUTED:"muted"},He={ON_DEMAND:"on-demand",LIVE:"live",UNKNOWN:"unknown"},Ii={MSE:"mse",NATIVE:"native"},Su={HEADER:"header",QUERY:"query",NONE:"none"},ia=Object.values(Su),is={M3U8:"application/vnd.apple.mpegurl",MP4:"video/mp4"},r0={HLS:is.M3U8},kU=Object.keys(r0),LU=[...Object.values(is),"hls","HLS"];var Jt=(i,e,t,r,s=i)=>{s.addEventListener(e,t,r),i.addEventListener("teardown",()=>{s.removeEventListener(e,t)},{once:!0})};function JL(i,e,t){e&&t>e&&(t=e);for(let r=0;r<i.length;r++)if(i.start(r)<=t&&i.end(r)>=t)return!0;return!1}var eR=i=>{let e=i.indexOf("?");if(e<0)return[i];let t=i.slice(0,e),r=i.slice(e);return[t,r]},ku=i=>{let e=i.type;if(e){let r=e.toUpperCase();return p_(r,r0)?r0[r]:e}let{src:t}=i;return t?tR(t):""},g_=i=>i==="VOD"?He.ON_DEMAND:He.LIVE,v_=i=>i==="EVENT"?Number.POSITIVE_INFINITY:i==="VOD"?Number.NaN:0,tR=i=>{let e="";try{e=new URL(i).pathname}catch{console.error("invalid url")}let t=e.lastIndexOf(".");if(t<0)return"";let r=e.slice(t+1).toUpperCase();return p_(r,is)?is[r]:""},iR=Object.values(i0),d_=i=>typeof i=="boolean"||typeof i=="string"&&iR.includes(i),rR=(i,e,t)=>{let{autoplay:r}=i,s=!1,n=!1,a=d_(r)?r:!!r,o=()=>{s||Jt(e,"playing",()=>{s=!0},{once:!0})};if(o(),Jt(e,"loadstart",()=>{s=!1,o(),t0(e,a)},{once:!0}),Jt(e,"loadstart",()=>{t||(i.streamType&&i.streamType!==He.UNKNOWN?n=i.streamType===He.LIVE:n=!Number.isFinite(e.duration)),t0(e,a)},{once:!0}),t&&t.once(ft.Events.LEVEL_LOADED,(l,d)=>{var c;i.streamType&&i.streamType!==He.UNKNOWN?n=i.streamType===He.LIVE:n=(c=d.details.live)!=null?c:!1}),!a){let l=()=>{!n||Number.isFinite(i.startTime)||(t!=null&&t.liveSyncPosition?e.currentTime=t.liveSyncPosition:Number.isFinite(e.seekable.end(0))&&(e.currentTime=e.seekable.end(0)))};t&&Jt(e,"play",()=>{e.preload==="metadata"?t.once(ft.Events.LEVEL_UPDATED,l):l()},{once:!0})}return l=>{s||(a=d_(l)?l:!!l,t0(e,a))}},t0=(i,e)=>{if(!e)return;let t=i.muted,r=()=>i.muted=t;switch(e){case i0.ANY:i.play().catch(()=>{i.muted=!0,i.play().catch(r)});break;case i0.MUTED:i.muted=!0,i.play().catch(r);break;default:i.play().catch(()=>{});break}},sR=({preload:i,src:e},t,r)=>{let s=u=>{u!=null&&["","none","metadata","auto"].includes(u)?t.setAttribute("preload",u):t.removeAttribute("preload")};if(!r)return s(i),s;let n=!1,a=!1,o=r.config.maxBufferLength,l=r.config.maxBufferSize,d=u=>{s(u);let h=u!=null?u:t.preload;a||h==="none"||(h==="metadata"?(r.config.maxBufferLength=1,r.config.maxBufferSize=1):(r.config.maxBufferLength=o,r.config.maxBufferSize=l),c())},c=()=>{!n&&e&&(n=!0,r.loadSource(e))};return Jt(t,"play",()=>{a=!0,r.config.maxBufferLength=o,r.config.maxBufferSize=l,c()},{once:!0}),d(i),d};function nR(i,e){var t;if(!("videoTracks"in i))return;let r=new WeakMap;e.on(ft.Events.MANIFEST_PARSED,function(d,c){l();let u=i.addVideoTrack("main");u.selected=!0;for(let[h,f]of c.levels.entries()){let g=u.addRendition(f.url[0],f.width,f.height,f.videoCodec,f.bitrate);r.set(f,`${h}`),g.id=`${h}`}}),e.on(ft.Events.AUDIO_TRACKS_UPDATED,function(d,c){o();for(let u of c.audioTracks){let h=u.default?"main":"alternative",f=i.addAudioTrack(h,u.name,u.lang);f.id=`${u.id}`,u.default&&(f.enabled=!0)}}),i.audioTracks.addEventListener("change",()=>{var d;let c=+((d=[...i.audioTracks].find(h=>h.enabled))==null?void 0:d.id),u=e.audioTracks.map(h=>h.id);c!=e.audioTrack&&u.includes(c)&&(e.audioTrack=c)}),e.on(ft.Events.LEVELS_UPDATED,function(d,c){var u;let h=i.videoTracks[(u=i.videoTracks.selectedIndex)!=null?u:0];if(!h)return;let f=c.levels.map(g=>r.get(g));for(let g of i.videoRenditions)g.id&&!f.includes(g.id)&&h.removeRendition(g)});let s=d=>{let c=d.target.selectedIndex;c!=e.nextLevel&&n(c)},n=d=>{let c=i.currentTime,u=!1,h=(f,g)=>{u||(u=!Number.isFinite(g.endOffset))};e.on(ft.Events.BUFFER_FLUSHING,h),e.nextLevel=d,e.off(ft.Events.BUFFER_FLUSHING,h),u||e.trigger(ft.Events.BUFFER_FLUSHING,{startOffset:c+10,endOffset:1/0,type:"video"})};(t=i.videoRenditions)==null||t.addEventListener("change",s);let a=()=>{for(let d of i.videoTracks)i.removeVideoTrack(d)},o=()=>{for(let d of i.audioTracks)i.removeAudioTrack(d)},l=()=>{a(),o()};e.once(ft.Events.DESTROYING,l)}function aR(i,e){e.on(ft.Events.NON_NATIVE_TEXT_TRACKS_FOUND,(s,{tracks:n})=>{n.forEach(a=>{var o;let l=(o=a.subtitleTrack)!=null?o:a.closedCaptions,d=e.subtitleTracks.findIndex(({lang:c,name:u,type:h})=>c==(l==null?void 0:l.lang)&&u===a.label&&h.toLowerCase()===a.kind);Lu(i,a.kind,a.label,l==null?void 0:l.lang,`${a.kind}${d}`)})});let t=()=>{var s;if(!e.subtitleTracks.length)return;let n=Array.from(i.textTracks).find(o=>o.id&&o.mode==="showing"&&["subtitles","captions"].includes(o.kind)),a=`${(s=e.subtitleTracks[e.subtitleTrack])==null?void 0:s.type.toLowerCase()}${e.subtitleTrack}`;if(n&&(e.subtitleTrack<0||(n==null?void 0:n.id)!==a)){let o=e.subtitleTracks.findIndex(({lang:l,name:d,type:c})=>l==n.language&&d===n.label&&c.toLowerCase()===n.kind);e.subtitleTrack=o}n&&(n==null?void 0:n.id)===a&&n.cues&&Array.from(n.cues).forEach(o=>{n.addCue(o)})};i.textTracks.addEventListener("change",t),e.on(ft.Events.CUES_PARSED,(s,{track:n,cues:a})=>{let o=i.textTracks.getTrackById(n);if(!o)return;let l=o.mode==="disabled";l&&(o.mode="hidden"),a.forEach(d=>{var c;(c=o.cues)!=null&&c.getCueById(d.id)||o.addCue(d)}),l&&(o.mode="disabled")}),e.once(ft.Events.DESTROYING,()=>{i.textTracks.removeEventListener("change",t),i.querySelectorAll("track[data-removeondestroy]").forEach(s=>{s.remove()})});let r=()=>{Array.from(i.textTracks).forEach(s=>{var n,a;if(!["subtitles","caption"].includes(s.kind)&&s.label==="thumbnails"){if(!((n=s.cues)!=null&&n.length)){let o=i.querySelector('track[label="thumbnails"]'),l=(a=o==null?void 0:o.getAttribute("src"))!=null?a:"";o==null||o.removeAttribute("src"),setTimeout(()=>{o==null||o.setAttribute("src",l)},0)}s.mode!=="hidden"&&(s.mode="hidden")}})};e.once(ft.Events.MANIFEST_LOADED,r),e.once(ft.Events.MEDIA_ATTACHED,r)}function Lu(i,e,t,r,s){let n=document.createElement("track");return n.kind=e,n.label=t,r&&(n.srclang=r),s&&(n.id=s),n.track.mode=["subtitles","captions"].includes(e)?"disabled":"hidden",n.setAttribute("data-removeondestroy",""),i.append(n),n.track}function E_(i,e){let t=Array.prototype.find.call(i.querySelectorAll("track"),r=>r.track===e);t==null||t.remove()}var Po="cuepoints",n0=Object.freeze({label:Po}),a0=(i,{label:e=Po}=n0)=>{var t;return(t=Array.from(i.querySelectorAll("track")).find(r=>r.track.label===e&&r.track.kind==="metadata"))==null?void 0:t.track};async function o0(i,e,t=n0){let r=a0(i,t);if(!r){let{label:s=Po}=t;r=Lu(i,"metadata",s),r.mode="hidden",await new Promise(n=>setTimeout(()=>n(void 0),0))}return r.mode!=="hidden"&&(r.mode="hidden"),[...e].sort(({time:s},{time:n})=>n-s).forEach(({time:s,value:n})=>{var a,o;let l=Array.prototype.findIndex.call(r==null?void 0:r.cues,f=>f.startTime>=s),d=(a=r==null?void 0:r.cues)==null?void 0:a[l],c=d?d.startTime:Number.isFinite(i.duration)?i.duration:Number.MAX_SAFE_INTEGER,u=(o=r==null?void 0:r.cues)==null?void 0:o[l-1];u&&(u.endTime=s);let h=new VTTCue(s,c,JSON.stringify(n!=null?n:null));r.addCue(h)}),r}var b_=i=>({time:i.startTime,value:JSON.parse(i.text)});function y_(i,e={label:Po}){let t=a0(i,e);return t!=null&&t.cues?Array.from(t.cues,r=>b_(r)):[]}function l0(i,e={label:Po}){var t,r;let s=a0(i,e);if(!((t=s==null?void 0:s.activeCues)!=null&&t.length))return;let{currentTime:n}=i,a=Array.prototype.find.call((r=s.activeCues)!=null?r:[],({startTime:o,endTime:l})=>o<=n&&l>n);return b_(a)}async function oR(i,e=n0){return new Promise(t=>{Jt(i,"loadstart",async()=>{let r=await o0(i,[],e);Jt(i,"cuechange",()=>{let s=l0(i);if(s){let n=new CustomEvent("cuepointchange",{composed:!0,bubbles:!0,detail:s});i.dispatchEvent(n)}},{},r),t(r)})})}function T_(i,e){if(e){let t=e.playingDate;if(t!=null)return new Date(t.getTime()-i.currentTime*1e3)}return typeof i.getStartDate=="function"?i.getStartDate():new Date(NaN)}function __(i,e){if(e&&e.playingDate)return e.playingDate;if(typeof i.getStartDate=="function"){let t=i.getStartDate();return new Date(t.getTime()+i.currentTime*1e3)}return new Date(NaN)}var lR=async i=>fetch(i).then(e=>e.text()).then(e=>{let t=e.split(`
1608
1608
  `).find((r,s,n)=>s&&n[s-1].startsWith("#EXT-X-STREAM-INF"));return fetch(t).then(r=>r.text()).then(r=>r.split(`
1609
- `))}),dR=i=>{var e,t,r;let s=(t=((e=i.find(l=>l.startsWith("#EXT-X-PLAYLIST-TYPE")))!=null?e:"").split(":")[1])==null?void 0:t.trim(),n=g_(s),a=v_(s),o;if(n===He.LIVE){let l=i.find(d=>d.startsWith("#EXT-X-PART-INF"));if(l)o=+l.split(":")[1].split("=")[1]*2;else{let d=i.find(u=>u.startsWith("#EXT-X-TARGETDURATION")),c=(r=d==null?void 0:d.split(":"))==null?void 0:r[1];o=+(c!=null?c:6)*3}}return{streamType:n,targetLiveWindow:a,liveEdgeStartOffset:o}},cR=async(i,e)=>{if(e===is.MP4)return{streamType:He.ON_DEMAND,targetLiveWindow:Number.NaN,liveEdgeStartOffset:void 0};if(e===is.M3U8){let t=await lR(i);return dR(t)}return console.error(`Media type ${e} is an unrecognized or unsupported type for src ${i}.`),{streamType:void 0,targetLiveWindow:void 0,liveEdgeStartOffset:void 0}},c_=async(i,e,t=ku({src:i}))=>{var r,s,n;let{streamType:a,targetLiveWindow:o,liveEdgeStartOffset:l}=await cR(i,t);((r=Bt.get(e))!=null?r:{}).liveEdgeStartOffset=l,((s=Bt.get(e))!=null?s:{}).targetLiveWindow=o,e.dispatchEvent(new CustomEvent("targetlivewindowchange",{composed:!0,bubbles:!0})),((n=Bt.get(e))!=null?n:{}).streamType=a,e.dispatchEvent(new CustomEvent("streamtypechange",{composed:!0,bubbles:!0}))},uR=i=>{var e;let t=i.type,r=g_(t),s=v_(t),n,a=!!((e=i.partList)!=null&&e.length);return r===He.LIVE&&(n=a?i.partTarget*2:i.targetduration*3),{streamType:r,targetLiveWindow:s,liveEdgeStartOffset:n,lowLatency:a}},hR=(i,e,t)=>{var r,s,n,a,o,l,d,c;let{streamType:u,targetLiveWindow:h,liveEdgeStartOffset:f,lowLatency:g}=uR(i);if(u===He.LIVE){g?(t.config.backBufferLength=(r=t.userConfig.backBufferLength)!=null?r:4,t.config.maxFragLookUpTolerance=(s=t.userConfig.maxFragLookUpTolerance)!=null?s:.001,t.config.abrBandWidthUpFactor=(n=t.userConfig.abrBandWidthUpFactor)!=null?n:t.config.abrBandWidthFactor):t.config.backBufferLength=(a=t.userConfig.backBufferLength)!=null?a:8;let E=Object.freeze({get length(){return e.seekable.length},start(y){return e.seekable.start(y)},end(y){var S;return y>this.length?e.seekable.end(y):(S=t.liveSyncPosition)!=null?S:e.seekable.end(y)}});((o=Bt.get(e))!=null?o:{}).seekable=E}((l=Bt.get(e))!=null?l:{}).liveEdgeStartOffset=f,((d=Bt.get(e))!=null?d:{}).targetLiveWindow=h,e.dispatchEvent(new CustomEvent("targetlivewindowchange",{composed:!0,bubbles:!0})),((c=Bt.get(e))!=null?c:{}).streamType=u,e.dispatchEvent(new CustomEvent("streamtypechange",{composed:!0,bubbles:!0}))},u_,h_,fR=(h_=(u_=globalThis==null?void 0:globalThis.navigator)==null?void 0:u_.userAgent)!=null?h_:"",mR=fR.toLowerCase().indexOf("android")!==-1,Bt=new WeakMap,A_="mux.com",f_,m_,S_=(m_=(f_=ft).isSupported)==null?void 0:m_.call(f_),pR=mR,x_=()=>Iu.default.utils.now(),gR=Iu.default.utils.generateUUID,Oo=({playbackId:i,customDomain:e=A_,maxResolution:t,minResolution:r,renditionOrder:s,tokens:{playback:n}={},extraSourceParams:a={}}={})=>{if(!i)return;let[o,l=""]=eR(i),d=new URL(`https://stream.${e}/${o}.m3u8${l}`);return n||d.searchParams.has("token")?(d.searchParams.forEach((c,u)=>{u!="token"&&d.searchParams.delete(u)}),n&&d.searchParams.set("token",n)):(t&&d.searchParams.set("max_resolution",t),r&&(d.searchParams.set("min_resolution",r),t&&+t.slice(0,-1)<+r.slice(0,-1)&&console.error("minResolution must be <= maxResolution","minResolution",r,"maxResolution",t)),s&&d.searchParams.set("rendition_order",s),Object.entries(a).forEach(([c,u])=>{u!=null&&d.searchParams.set(c,u)})),d.toString()},vR=i=>{if(!i)return;let[e]=i.split("?");return e||void 0},ER=i=>{if(!i||!i.startsWith("https://stream."))return;let[e]=new URL(i).pathname.slice(1).split(".m3u8");return e||void 0},bR=i=>{var e,t,r;return(e=i==null?void 0:i.metadata)!=null&&e.video_id?i.metadata.video_id:M_(i)&&(r=(t=vR(i.playbackId))!=null?t:ER(i.src))!=null?r:i.src},I_=i=>{var e;return(e=Bt.get(i))==null?void 0:e.error},xu=i=>{var e,t;return(t=(e=Bt.get(i))==null?void 0:e.streamType)!=null?t:He.UNKNOWN},k_=i=>{var e,t;return(t=(e=Bt.get(i))==null?void 0:e.targetLiveWindow)!=null?t:Number.NaN},Mo=i=>{var e,t;return(t=(e=Bt.get(i))==null?void 0:e.seekable)!=null?t:i.seekable},L_=i=>{var e;let t=(e=Bt.get(i))==null?void 0:e.liveEdgeStartOffset;if(typeof t!="number")return Number.NaN;let r=Mo(i);return r.length?r.end(r.length-1)-t:Number.NaN},d0=.034,yR=(i,e,t=d0)=>Math.abs(i-e)<=t,R_=(i,e,t=d0)=>i>e||yR(i,e,t),TR=(i,e=d0)=>i.paused&&R_(i.currentTime,i.duration,e),w_=(i,e)=>{var t,r,s;if(!e)return;if(i.readyState>2)return!1;let n=e.currentLevel>=0?(r=(t=e.levels)==null?void 0:t[e.currentLevel])==null?void 0:r.details:(s=e.levels.find(u=>!!u.details))==null?void 0:s.details;if(!n||n.live)return;let{fragments:a}=n;if(!(a!=null&&a.length))return;if(i.currentTime<i.duration-(n.targetduration+.5))return!1;let o=a[a.length-1];if(i.currentTime<=o.start)return!1;let l=o.start+o.duration/2,d=i.buffered.start(i.buffered.length-1),c=i.buffered.end(i.buffered.length-1);return l>d&&l<c},c0=(i,e)=>i.ended||i.loop?i.ended:e&&w_(i,e)?!0:TR(i),C_=(i,e,t)=>{u0(e,t);let{metadata:r={}}=i,{view_session_id:s=gR()}=r,n=bR(i);r.view_session_id=s,r.video_id=n,i.metadata=r,Bt.set(e,{});let a=_R(i,e);SR(i,e,a),xR(i,e,a),oR(e);let o=rR(i,e,a),l=sR(i,e,a);return{engine:a,setAutoplay:o,setPreload:l}},u0=(i,e)=>{let t=e==null?void 0:e.engine;t&&(t.detachMedia(),t.destroy()),i!=null&&i.mux&&!i.mux.deleted&&(i.mux.destroy(),delete i.mux),i&&(i.removeAttribute("src"),i.load(),i.removeEventListener("error",O_),i.removeEventListener("error",s0),i.removeEventListener("durationchange",P_),Bt.delete(i),i.dispatchEvent(new Event("teardown")))};function D_(i,e){var t;let r=ku(i);if(r!==is.M3U8)return!0;let s=!r||((t=e.canPlayType(r))!=null?t:!0),{preferPlayback:n}=i,a=n===Ii.MSE,o=n===Ii.NATIVE;return s&&(o||!(S_&&(a||pR)))}var _R=(i,e)=>{let{debug:t,streamType:r,startTime:s=-1,metadata:n,preferCmcd:a,_hlsConfig:o={}}=i,l=ku(i)===is.M3U8,d=D_(i,e);if(l&&!d&&S_){let c={backBufferLength:30,renderTextTracksNatively:!1,liveDurationInfinity:!0,capLevelToPlayerSize:!0,capLevelOnFPSDrop:!0},u=AR(r),h=a!==Su.NONE?{useHeaders:a===Su.HEADER,sessionId:n==null?void 0:n.view_session_id,contentId:n==null?void 0:n.video_id}:void 0;return new ft({debug:t,startPosition:s,cmcd:h,xhrSetup:(f,g)=>{var E,y;if(a&&a!==Su.QUERY)return;let S=new URL(g);if(!S.searchParams.has("CMCD"))return;let w=((y=(E=S.searchParams.get("CMCD"))==null?void 0:E.split(","))!=null?y:[]).filter(L=>L.startsWith("sid")||L.startsWith("cid")).join(",");S.searchParams.set("CMCD",w),f.open("GET",S)},...c,...u,...o})}},AR=i=>i===He.LIVE?{backBufferLength:8}:{},M_=({playbackId:i,src:e,customDomain:t})=>{if(i)return!0;if(typeof e!="string")return!1;let r=window==null?void 0:window.location.href,s=new URL(e,r).hostname.toLocaleLowerCase();return s.includes(A_)||!!t&&s.includes(t.toLocaleLowerCase())},SR=(i,e,t)=>{var r;let{envKey:s}=i,n=M_(i);if(s||n){let{playerInitTime:a,playerSoftwareName:o,playerSoftwareVersion:l,beaconCollectionDomain:d,debug:c,disableCookies:u}=i,h={...i.metadata,video_title:((r=i==null?void 0:i.metadata)==null?void 0:r.video_title)||void 0},f=g=>typeof g.player_error_code=="string"?!1:typeof i.errorTranslator=="function"?i.errorTranslator(g):g;Iu.default.monitor(e,{debug:c,beaconCollectionDomain:d,hlsjs:t,Hls:t?ft:void 0,automaticErrorTracking:!1,errorTranslator:f,disableCookies:u,data:{...s?{env_key:s}:{},player_software_name:o,player_software:o,player_software_version:l,player_init_time:a,...h}})}},xR=(i,e,t)=>{var r;let s=D_(i,e),{src:n}=i,a=c=>{e.ended||!c0(e,t)||(w_(e,t)?e.currentTime=e.buffered.end(e.buffered.length-1):e.dispatchEvent(new Event("ended")))},o,l,d=()=>{var c,u;let h=(c=Mo(e))==null?void 0:c.start(0),f=(u=Mo(e))==null?void 0:u.end(0);(l!==f||o!==h)&&e.dispatchEvent(new CustomEvent("seekablechange",{composed:!0})),o=h,l=f};if(e&&s){let c=ku(i);if(typeof n=="string"){let u=()=>{if(xu(e)!==He.LIVE||Number.isFinite(e.duration))return;let h=setInterval(d,1e3);e.addEventListener("teardown",()=>{clearInterval(h)},{once:!0}),li(e,"durationchange",()=>{Number.isFinite(e.duration)&&clearInterval(h)})};e.preload==="none"?li(e,"loadstart",()=>{c_(n,e,c).then(u)}):c_(n,e,c).then(u),e.setAttribute("src",n),i.startTime&&(((r=Bt.get(e))!=null?r:{}).startTime=i.startTime,e.addEventListener("durationchange",P_,{once:!0}))}else e.removeAttribute("src");e.addEventListener("error",O_),e.addEventListener("error",s0),e.addEventListener("emptied",()=>{e.querySelectorAll("track[data-removeondestroy]").forEach(u=>{u.remove()})},{once:!0}),li(e,"pause",a),li(e,"seeked",a),li(e,"play",()=>{e.ended||R_(e.currentTime,e.duration)&&(e.currentTime=e.seekable.start(0))})}else t&&n?(t.once(ft.Events.LEVEL_LOADED,(c,u)=>{hR(u.details,e,t),d(),xu(e)===He.LIVE&&!Number.isFinite(e.duration)&&(t.on(ft.Events.LEVEL_UPDATED,d),li(e,"durationchange",()=>{Number.isFinite(e.duration)&&t.off(ft.Events.LEVELS_UPDATED,d)}))}),t.on(ft.Events.ERROR,(c,u)=>{let h={[ft.ErrorTypes.NETWORK_ERROR]:$t.MEDIA_ERR_NETWORK,[ft.ErrorTypes.MEDIA_ERROR]:$t.MEDIA_ERR_DECODE},f=new $t("",h[u.type]);f.fatal=u.fatal,f.data=u,e.dispatchEvent(new CustomEvent("error",{detail:f}))}),e.addEventListener("error",s0),li(e,"waiting",a),nR(i,t),aR(e,t),t.attachMedia(e)):console.error("It looks like the video you're trying to play will not work on this system! If possible, try upgrading to the newest versions of your browser or software.")};function P_(i){var e;let t=i.target,r=(e=Bt.get(t))==null?void 0:e.startTime;if(r&&JL(t.seekable,t.duration,r)){let s=t.preload==="auto";s&&(t.preload="none"),t.currentTime=r,s&&(t.preload="auto")}}async function O_(i){if(!i.isTrusted)return;i.stopImmediatePropagation();let e=i.target;if(!(e!=null&&e.error))return;let{message:t,code:r}=e.error,s=new $t(t,r);if(e.src&&(r!==$t.MEDIA_ERR_DECODE||r!==void 0))try{let{status:n}=await fetch(e.src);s.data={response:{code:n}}}catch{}e.dispatchEvent(new CustomEvent("error",{detail:s}))}function s0(i){var e,t;if(!(i instanceof CustomEvent)||!(i.detail instanceof $t))return;let r=i.target,s=i.detail;!s||!s.fatal||(((e=Bt.get(r))!=null?e:{}).error=s,(t=r.mux)==null||t.emit("error",{player_error_code:s.code,player_error_message:s.message,player_error_context:s.context}))}var IR=Object.defineProperty,kR=Object.getPrototypeOf,LR=Reflect.get,RR=(i,e,t)=>e in i?IR(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,it=(i,e,t)=>(RR(i,typeof e!="symbol"?e+"":e,t),t),O0=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},O=(i,e,t)=>(O0(i,e,"read from private field"),t?t.call(i):e.get(i)),se=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},de=(i,e,t,r)=>(O0(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),Et=(i,e,t)=>(O0(i,e,"access private method"),t),h0=(i,e,t)=>LR(kR(i),t,e),Wu=class{addEventListener(){}removeEventListener(){}dispatchEvent(i){return!0}};if(typeof DocumentFragment=="undefined"){class i extends Wu{}globalThis.DocumentFragment=i}var N0=class extends Wu{},wR=class extends Wu{},CR={get(i){},define(i,e,t){},upgrade(i){},whenDefined(i){return Promise.resolve(N0)}},Ru,DR=class{constructor(i,e={}){se(this,Ru,void 0),de(this,Ru,e==null?void 0:e.detail)}get detail(){return O(this,Ru)}initCustomEvent(){}};Ru=new WeakMap;function MR(i,e){return new N0}var W_={document:{createElement:MR},DocumentFragment,customElements:CR,CustomEvent:DR,EventTarget:Wu,HTMLElement:N0,HTMLVideoElement:wR},K_=typeof window=="undefined"||typeof globalThis.customElements=="undefined",f0=K_?W_:globalThis,wU=K_?W_.document:globalThis.document,PR=()=>{try{return"0.17.4"}catch{}return"UNKNOWN"},OR=PR(),NR=()=>OR,Ku=["abort","canplay","canplaythrough","durationchange","emptied","encrypted","ended","error","loadeddata","loadedmetadata","loadstart","pause","play","playing","progress","ratechange","seeked","seeking","stalled","suspend","timeupdate","volumechange","waiting","waitingforkey","resize","enterpictureinpicture","leavepictureinpicture","webkitbeginfullscreen","webkitendfullscreen","webkitpresentationmodechanged"],N_,v0=(N_=globalThis.document)==null?void 0:N_.createElement("template");v0&&(v0.innerHTML=`
1609
+ `))}),dR=i=>{var e,t,r;let s=(t=((e=i.find(l=>l.startsWith("#EXT-X-PLAYLIST-TYPE")))!=null?e:"").split(":")[1])==null?void 0:t.trim(),n=g_(s),a=v_(s),o;if(n===He.LIVE){let l=i.find(d=>d.startsWith("#EXT-X-PART-INF"));if(l)o=+l.split(":")[1].split("=")[1]*2;else{let d=i.find(u=>u.startsWith("#EXT-X-TARGETDURATION")),c=(r=d==null?void 0:d.split(":"))==null?void 0:r[1];o=+(c!=null?c:6)*3}}return{streamType:n,targetLiveWindow:a,liveEdgeStartOffset:o}},cR=async(i,e)=>{if(e===is.MP4)return{streamType:He.ON_DEMAND,targetLiveWindow:Number.NaN,liveEdgeStartOffset:void 0};if(e===is.M3U8){let t=await lR(i);return dR(t)}return console.error(`Media type ${e} is an unrecognized or unsupported type for src ${i}.`),{streamType:void 0,targetLiveWindow:void 0,liveEdgeStartOffset:void 0}},c_=async(i,e,t=ku({src:i}))=>{var r,s,n;let{streamType:a,targetLiveWindow:o,liveEdgeStartOffset:l}=await cR(i,t);((r=Bt.get(e))!=null?r:{}).liveEdgeStartOffset=l,((s=Bt.get(e))!=null?s:{}).targetLiveWindow=o,e.dispatchEvent(new CustomEvent("targetlivewindowchange",{composed:!0,bubbles:!0})),((n=Bt.get(e))!=null?n:{}).streamType=a,e.dispatchEvent(new CustomEvent("streamtypechange",{composed:!0,bubbles:!0}))},uR=i=>{var e;let t=i.type,r=g_(t),s=v_(t),n,a=!!((e=i.partList)!=null&&e.length);return r===He.LIVE&&(n=a?i.partTarget*2:i.targetduration*3),{streamType:r,targetLiveWindow:s,liveEdgeStartOffset:n,lowLatency:a}},hR=(i,e,t)=>{var r,s,n,a,o,l,d,c;let{streamType:u,targetLiveWindow:h,liveEdgeStartOffset:f,lowLatency:g}=uR(i);if(u===He.LIVE){g?(t.config.backBufferLength=(r=t.userConfig.backBufferLength)!=null?r:4,t.config.maxFragLookUpTolerance=(s=t.userConfig.maxFragLookUpTolerance)!=null?s:.001,t.config.abrBandWidthUpFactor=(n=t.userConfig.abrBandWidthUpFactor)!=null?n:t.config.abrBandWidthFactor):t.config.backBufferLength=(a=t.userConfig.backBufferLength)!=null?a:8;let E=Object.freeze({get length(){return e.seekable.length},start(y){return e.seekable.start(y)},end(y){var S;return y>this.length||y<0||Number.isFinite(e.duration)?e.seekable.end(y):(S=t.liveSyncPosition)!=null?S:e.seekable.end(y)}});((o=Bt.get(e))!=null?o:{}).seekable=E}((l=Bt.get(e))!=null?l:{}).liveEdgeStartOffset=f,((d=Bt.get(e))!=null?d:{}).targetLiveWindow=h,e.dispatchEvent(new CustomEvent("targetlivewindowchange",{composed:!0,bubbles:!0})),((c=Bt.get(e))!=null?c:{}).streamType=u,e.dispatchEvent(new CustomEvent("streamtypechange",{composed:!0,bubbles:!0}))},u_,h_,fR=(h_=(u_=globalThis==null?void 0:globalThis.navigator)==null?void 0:u_.userAgent)!=null?h_:"",mR=fR.toLowerCase().indexOf("android")!==-1,Bt=new WeakMap,A_="mux.com",f_,m_,S_=(m_=(f_=ft).isSupported)==null?void 0:m_.call(f_),pR=mR,x_=()=>Iu.default.utils.now(),gR=Iu.default.utils.generateUUID,Oo=({playbackId:i,customDomain:e=A_,maxResolution:t,minResolution:r,renditionOrder:s,tokens:{playback:n}={},extraSourceParams:a={}}={})=>{if(!i)return;let[o,l=""]=eR(i),d=new URL(`https://stream.${e}/${o}.m3u8${l}`);return n||d.searchParams.has("token")?(d.searchParams.forEach((c,u)=>{u!="token"&&d.searchParams.delete(u)}),n&&d.searchParams.set("token",n)):(t&&d.searchParams.set("max_resolution",t),r&&(d.searchParams.set("min_resolution",r),t&&+t.slice(0,-1)<+r.slice(0,-1)&&console.error("minResolution must be <= maxResolution","minResolution",r,"maxResolution",t)),s&&d.searchParams.set("rendition_order",s),Object.entries(a).forEach(([c,u])=>{u!=null&&d.searchParams.set(c,u)})),d.toString()},vR=i=>{if(!i)return;let[e]=i.split("?");return e||void 0},ER=i=>{if(!i||!i.startsWith("https://stream."))return;let[e]=new URL(i).pathname.slice(1).split(".m3u8");return e||void 0},bR=i=>{var e,t,r;return(e=i==null?void 0:i.metadata)!=null&&e.video_id?i.metadata.video_id:M_(i)&&(r=(t=vR(i.playbackId))!=null?t:ER(i.src))!=null?r:i.src},I_=i=>{var e;return(e=Bt.get(i))==null?void 0:e.error},xu=i=>{var e,t;return(t=(e=Bt.get(i))==null?void 0:e.streamType)!=null?t:He.UNKNOWN},k_=i=>{var e,t;return(t=(e=Bt.get(i))==null?void 0:e.targetLiveWindow)!=null?t:Number.NaN},Mo=i=>{var e,t;return(t=(e=Bt.get(i))==null?void 0:e.seekable)!=null?t:i.seekable},L_=i=>{var e;let t=(e=Bt.get(i))==null?void 0:e.liveEdgeStartOffset;if(typeof t!="number")return Number.NaN;let r=Mo(i);return r.length?r.end(r.length-1)-t:Number.NaN},d0=.034,yR=(i,e,t=d0)=>Math.abs(i-e)<=t,R_=(i,e,t=d0)=>i>e||yR(i,e,t),TR=(i,e=d0)=>i.paused&&R_(i.currentTime,i.duration,e),w_=(i,e)=>{var t,r,s;if(!e)return;if(i.readyState>2)return!1;let n=e.currentLevel>=0?(r=(t=e.levels)==null?void 0:t[e.currentLevel])==null?void 0:r.details:(s=e.levels.find(u=>!!u.details))==null?void 0:s.details;if(!n||n.live)return;let{fragments:a}=n;if(!(a!=null&&a.length))return;if(i.currentTime<i.duration-(n.targetduration+.5))return!1;let o=a[a.length-1];if(i.currentTime<=o.start)return!1;let l=o.start+o.duration/2,d=i.buffered.start(i.buffered.length-1),c=i.buffered.end(i.buffered.length-1);return l>d&&l<c},c0=(i,e)=>i.ended||i.loop?i.ended:e&&w_(i,e)?!0:TR(i),C_=(i,e,t)=>{u0(e,t);let{metadata:r={}}=i,{view_session_id:s=gR()}=r,n=bR(i);r.view_session_id=s,r.video_id=n,i.metadata=r,Bt.set(e,{});let a=_R(i,e);SR(i,e,a),xR(i,e,a),oR(e);let o=rR(i,e,a),l=sR(i,e,a);return{engine:a,setAutoplay:o,setPreload:l}},u0=(i,e)=>{let t=e==null?void 0:e.engine;t&&(t.detachMedia(),t.destroy()),i!=null&&i.mux&&!i.mux.deleted&&(i.mux.destroy(),delete i.mux),i&&(i.removeAttribute("src"),i.load(),i.removeEventListener("error",O_),i.removeEventListener("error",s0),i.removeEventListener("durationchange",P_),Bt.delete(i),i.dispatchEvent(new Event("teardown")))};function D_(i,e){var t;let r=ku(i);if(r!==is.M3U8)return!0;let s=!r||((t=e.canPlayType(r))!=null?t:!0),{preferPlayback:n}=i,a=n===Ii.MSE,o=n===Ii.NATIVE;return s&&(o||!(S_&&(a||pR)))}var _R=(i,e)=>{let{debug:t,streamType:r,startTime:s=-1,metadata:n,preferCmcd:a,_hlsConfig:o={}}=i,l=ku(i)===is.M3U8,d=D_(i,e);if(l&&!d&&S_){let c={backBufferLength:30,renderTextTracksNatively:!1,liveDurationInfinity:!0,capLevelToPlayerSize:!0,capLevelOnFPSDrop:!0},u=AR(r),h=a!==Su.NONE?{useHeaders:a===Su.HEADER,sessionId:n==null?void 0:n.view_session_id,contentId:n==null?void 0:n.video_id}:void 0;return new ft({debug:t,startPosition:s,cmcd:h,xhrSetup:(f,g)=>{var E,y;if(a&&a!==Su.QUERY)return;let S=new URL(g);if(!S.searchParams.has("CMCD"))return;let w=((y=(E=S.searchParams.get("CMCD"))==null?void 0:E.split(","))!=null?y:[]).filter(L=>L.startsWith("sid")||L.startsWith("cid")).join(",");S.searchParams.set("CMCD",w),f.open("GET",S)},...c,...u,...o})}},AR=i=>i===He.LIVE?{backBufferLength:8}:{},M_=({playbackId:i,src:e,customDomain:t})=>{if(i)return!0;if(typeof e!="string")return!1;let r=window==null?void 0:window.location.href,s=new URL(e,r).hostname.toLocaleLowerCase();return s.includes(A_)||!!t&&s.includes(t.toLocaleLowerCase())},SR=(i,e,t)=>{var r;let{envKey:s}=i,n=M_(i);if(s||n){let{playerInitTime:a,playerSoftwareName:o,playerSoftwareVersion:l,beaconCollectionDomain:d,debug:c,disableCookies:u}=i,h={...i.metadata,video_title:((r=i==null?void 0:i.metadata)==null?void 0:r.video_title)||void 0},f=g=>typeof g.player_error_code=="string"?!1:typeof i.errorTranslator=="function"?i.errorTranslator(g):g;Iu.default.monitor(e,{debug:c,beaconCollectionDomain:d,hlsjs:t,Hls:t?ft:void 0,automaticErrorTracking:!1,errorTranslator:f,disableCookies:u,data:{...s?{env_key:s}:{},player_software_name:o,player_software:o,player_software_version:l,player_init_time:a,...h}})}},xR=(i,e,t)=>{var r;let s=D_(i,e),{src:n}=i,a=c=>{e.ended||!c0(e,t)||(w_(e,t)?e.currentTime=e.buffered.end(e.buffered.length-1):e.dispatchEvent(new Event("ended")))},o,l,d=()=>{var c,u;let h=(c=Mo(e))==null?void 0:c.start(0),f=(u=Mo(e))==null?void 0:u.end(0);(l!==f||o!==h)&&e.dispatchEvent(new CustomEvent("seekablechange",{composed:!0})),o=h,l=f};if(Jt(e,"durationchange",d),e&&s){let c=ku(i);if(typeof n=="string"){let u=()=>{if(xu(e)!==He.LIVE||Number.isFinite(e.duration))return;let h=setInterval(d,1e3);e.addEventListener("teardown",()=>{clearInterval(h)},{once:!0}),Jt(e,"durationchange",()=>{Number.isFinite(e.duration)&&clearInterval(h)})};e.preload==="none"?Jt(e,"loadstart",()=>{c_(n,e,c).then(u)}):c_(n,e,c).then(u),e.setAttribute("src",n),i.startTime&&(((r=Bt.get(e))!=null?r:{}).startTime=i.startTime,e.addEventListener("durationchange",P_,{once:!0}))}else e.removeAttribute("src");e.addEventListener("error",O_),e.addEventListener("error",s0),e.addEventListener("emptied",()=>{e.querySelectorAll("track[data-removeondestroy]").forEach(u=>{u.remove()})},{once:!0}),Jt(e,"pause",a),Jt(e,"seeked",a),Jt(e,"play",()=>{e.ended||R_(e.currentTime,e.duration)&&(e.currentTime=e.seekable.start(0))})}else t&&n?(t.once(ft.Events.LEVEL_LOADED,(c,u)=>{hR(u.details,e,t),d(),xu(e)===He.LIVE&&!Number.isFinite(e.duration)&&(t.on(ft.Events.LEVEL_UPDATED,d),Jt(e,"durationchange",()=>{Number.isFinite(e.duration)&&t.off(ft.Events.LEVELS_UPDATED,d)}))}),t.on(ft.Events.ERROR,(c,u)=>{let h={[ft.ErrorTypes.NETWORK_ERROR]:$t.MEDIA_ERR_NETWORK,[ft.ErrorTypes.MEDIA_ERROR]:$t.MEDIA_ERR_DECODE},f=new $t("",h[u.type]);f.fatal=u.fatal,f.data=u,e.dispatchEvent(new CustomEvent("error",{detail:f}))}),e.addEventListener("error",s0),Jt(e,"waiting",a),nR(i,t),aR(e,t),t.attachMedia(e)):console.error("It looks like the video you're trying to play will not work on this system! If possible, try upgrading to the newest versions of your browser or software.")};function P_(i){var e;let t=i.target,r=(e=Bt.get(t))==null?void 0:e.startTime;if(r&&JL(t.seekable,t.duration,r)){let s=t.preload==="auto";s&&(t.preload="none"),t.currentTime=r,s&&(t.preload="auto")}}async function O_(i){if(!i.isTrusted)return;i.stopImmediatePropagation();let e=i.target;if(!(e!=null&&e.error))return;let{message:t,code:r}=e.error,s=new $t(t,r);if(e.src&&(r!==$t.MEDIA_ERR_DECODE||r!==void 0))try{let{status:n}=await fetch(e.src);s.data={response:{code:n}}}catch{}e.dispatchEvent(new CustomEvent("error",{detail:s}))}function s0(i){var e,t;if(!(i instanceof CustomEvent)||!(i.detail instanceof $t))return;let r=i.target,s=i.detail;!s||!s.fatal||(((e=Bt.get(r))!=null?e:{}).error=s,(t=r.mux)==null||t.emit("error",{player_error_code:s.code,player_error_message:s.message,player_error_context:s.context}))}var IR=Object.defineProperty,kR=Object.getPrototypeOf,LR=Reflect.get,RR=(i,e,t)=>e in i?IR(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,it=(i,e,t)=>(RR(i,typeof e!="symbol"?e+"":e,t),t),O0=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},O=(i,e,t)=>(O0(i,e,"read from private field"),t?t.call(i):e.get(i)),se=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},de=(i,e,t,r)=>(O0(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),Et=(i,e,t)=>(O0(i,e,"access private method"),t),h0=(i,e,t)=>LR(kR(i),t,e),Wu=class{addEventListener(){}removeEventListener(){}dispatchEvent(i){return!0}};if(typeof DocumentFragment=="undefined"){class i extends Wu{}globalThis.DocumentFragment=i}var N0=class extends Wu{},wR=class extends Wu{},CR={get(i){},define(i,e,t){},upgrade(i){},whenDefined(i){return Promise.resolve(N0)}},Ru,DR=class{constructor(i,e={}){se(this,Ru,void 0),de(this,Ru,e==null?void 0:e.detail)}get detail(){return O(this,Ru)}initCustomEvent(){}};Ru=new WeakMap;function MR(i,e){return new N0}var W_={document:{createElement:MR},DocumentFragment,customElements:CR,CustomEvent:DR,EventTarget:Wu,HTMLElement:N0,HTMLVideoElement:wR},K_=typeof window=="undefined"||typeof globalThis.customElements=="undefined",f0=K_?W_:globalThis,wU=K_?W_.document:globalThis.document,PR=()=>{try{return"0.17.5"}catch{}return"UNKNOWN"},OR=PR(),NR=()=>OR,Ku=["abort","canplay","canplaythrough","durationchange","emptied","encrypted","ended","error","loadeddata","loadedmetadata","loadstart","pause","play","playing","progress","ratechange","seeked","seeking","stalled","suspend","timeupdate","volumechange","waiting","waitingforkey","resize","enterpictureinpicture","leavepictureinpicture","webkitbeginfullscreen","webkitendfullscreen","webkitpresentationmodechanged"],N_,v0=(N_=globalThis.document)==null?void 0:N_.createElement("template");v0&&(v0.innerHTML=`
1610
1610
  <style>
1611
1611
  :host {
1612
1612
  display: inline-flex;
@@ -1644,8 +1644,8 @@ svg, img, ::slotted(svg), ::slotted(img) {
1644
1644
  </style>
1645
1645
  <slot name="media"></slot>
1646
1646
  <slot></slot>
1647
- `);var V_=(i,{tag:e,is:t})=>{var r,s,n,a,o,l,d,c,u,h,f,g,E,y,S,w;let L=(r=globalThis.document)==null?void 0:r.createElement(e,{is:t}),F=L?UR(L):[];return s=class extends i{constructor(){super(),se(this,u),se(this,f),se(this,E),se(this,S),se(this,l,void 0),se(this,d,void 0),se(this,c,new Map),this.shadowRoot||(this.attachShadow({mode:"open"}),this.shadowRoot.append(this.constructor.template.content.cloneNode(!0)))}static get observedAttributes(){var R,B,P;return Et(R=s,a,o).call(R),[...(P=(B=L==null?void 0:L.constructor)==null?void 0:B.observedAttributes)!=null?P:[],"autopictureinpicture","disablepictureinpicture","disableremoteplayback","autoplay","controls","controlslist","crossorigin","loop","muted","playsinline","poster","preload","src"]}get nativeEl(){var R,B,P;return(P=(B=(R=O(this,d))!=null?R:this.shadowRoot.querySelector(e))!=null?B:this.querySelector(":scope > [slot=media]"))!=null?P:this.querySelector(e)}set nativeEl(R){de(this,d,R)}get defaultMuted(){return this.hasAttribute("muted")}set defaultMuted(R){this.toggleAttribute("muted",!!R)}get src(){return this.getAttribute("src")}set src(R){this.setAttribute("src",`${R}`)}get preload(){var R,B;return(B=this.getAttribute("preload"))!=null?B:(R=this.nativeEl)==null?void 0:R.preload}set preload(R){this.setAttribute("preload",`${R}`)}init(){var R,B;if(!this.nativeEl){let P=document.createElement(e,{is:t});P.part=e,this.shadowRoot.querySelector('slot[name="media"]').append(P)}this.nativeEl.muted=this.hasAttribute("muted");for(let P of F)Et(this,E,y).call(this,P);this.shadowRoot.addEventListener("slotchange",this);for(let P of this.constructor.Events)(B=(R=this.shadowRoot).addEventListener)==null||B.call(R,P,this,!0)}handleEvent(R){if(R.type==="slotchange"){Et(this,f,g).call(this);return}R.target===this.nativeEl&&this.dispatchEvent(new CustomEvent(R.type,{detail:R.detail}))}attributeChangedCallback(R,B,P){Et(this,u,h).call(this),Et(this,S,w).call(this,R,B,P)}connectedCallback(){Et(this,u,h).call(this)}},n=new WeakMap,a=new WeakSet,o=function(){if(O(this,n))return;de(this,n,!0);let R=new Set(this.observedAttributes);R.delete("muted");for(let B of F)if(!(B in this.prototype))if(typeof L[B]=="function")this.prototype[B]=function(...P){return Et(this,u,h).call(this),this.call?this.call(B,...P):this.nativeEl[B].apply(this.nativeEl,P)};else{let P={get(){var $,K,N;Et(this,u,h).call(this);let z=B.toLowerCase();if(R.has(z)){let Y=this.getAttribute(z);return Y===null?!1:Y===""?!0:Y}return(N=($=this.get)==null?void 0:$.call(this,B))!=null?N:(K=this.nativeEl)==null?void 0:K[B]}};B!==B.toUpperCase()&&(P.set=function($){Et(this,u,h).call(this);let K=B.toLowerCase();if(R.has(K)){$===!0||$===!1||$==null?this.toggleAttribute(K,!!$):this.setAttribute(K,$);return}if(this.set){this.set(B,$);return}this.nativeEl[B]=$}),Object.defineProperty(this.prototype,B,P)}},l=new WeakMap,d=new WeakMap,c=new WeakMap,u=new WeakSet,h=function(){O(this,l)||(de(this,l,!0),this.init())},f=new WeakSet,g=function(){let R=new Map(O(this,c));this.shadowRoot.querySelector("slot:not([name])").assignedElements().filter(B=>["track","source"].includes(B.localName)).forEach(B=>{var P,$;R.delete(B);let K=O(this,c).get(B);K||(K=B.cloneNode(),O(this,c).set(B,K)),($=(P=this.nativeEl).append)==null||$.call(P,K),K.localName==="track"&&K.default&&(K.kind==="chapters"||K.kind==="metadata")&&K.track.mode==="disabled"&&(K.track.mode="hidden")}),R.forEach(B=>B.remove())},E=new WeakSet,y=function(R){if(Object.prototype.hasOwnProperty.call(this,R)){let B=this[R];delete this[R],this[R]=B}},S=new WeakSet,w=function(R,B,P){var $,K,N,z,Y,ge;["id","class"].includes(R)||!s.observedAttributes.includes(R)&&this.constructor.observedAttributes.includes(R)||(P===null?(K=($=this.nativeEl).removeAttribute)==null||K.call($,R):((z=(N=this.nativeEl).getAttribute)==null?void 0:z.call(N,R))!=P&&((ge=(Y=this.nativeEl).setAttribute)==null||ge.call(Y,R,P)))},se(s,a),it(s,"Events",Ku),it(s,"template",e.endsWith("audio")?v0:E0),se(s,n,void 0),s};function UR(i){let e=[];for(let t=Object.getPrototypeOf(i);t&&t!==HTMLElement.prototype;t=Object.getPrototypeOf(t))e.push(...Object.getOwnPropertyNames(t));return e}var m0=globalThis.document?V_(HTMLElement,{tag:"video"}):class{},DU=globalThis.document?V_(HTMLElement,{tag:"audio"}):class{},sn=new WeakMap,p0=class extends Error{},FR=class extends Error{},BR=globalThis.WeakRef?class extends Set{add(i){super.add(new WeakRef(i))}forEach(i){super.forEach(e=>{let t=e.deref();t&&i(t)})}}:Set;function $R(i){q_()?Y_()?i(chrome.cast.isAvailable):customElements.whenDefined("google-cast-button").then(()=>i(chrome.cast.isAvailable)):globalThis.__onGCastApiAvailable=()=>{customElements.whenDefined("google-cast-button").then(()=>i(chrome.cast.isAvailable))}}function HR(){return globalThis.chrome}function GR(){let i="https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1";if(globalThis.chrome.cast||document.querySelector(`script[src="${i}"]`))return;let e=document.createElement("script");e.src=i,document.head.append(e)}function q_(){return typeof chrome!="undefined"&&chrome.cast&&chrome.cast.isAvailable}function Y_(){return typeof cast!="undefined"&&cast.framework}function nn(){if(Y_())return cast.framework.CastContext.getInstance()}function U0(){var i;return(i=nn())==null?void 0:i.getCurrentSession()}function F0(){var i;return(i=U0())==null?void 0:i.getSessionObj().media[0]}function WR(i){return new Promise((e,t)=>{F0().editTracksInfo(i,e,t)})}function KR(i){return new Promise((e,t)=>{F0().getStatus(i,e,t)})}function j_(i){return nn().setOptions({...z_(),...i})}function z_(){return{receiverApplicationId:"CC1AD845",autoJoinPolicy:"origin_scoped",androidReceiverCompatible:!1,language:"en-US",resumeSavedSession:!0}}var wu=new BR,ns=new WeakSet,It;$R(i=>{i&&!It&&(It=cast.framework,nn().addEventListener(It.CastContextEventType.CAST_STATE_CHANGED,e=>{wu.forEach(t=>{var r,s;return(s=(r=sn.get(t)).onCastStateChanged)==null?void 0:s.call(r,e)})}),nn().addEventListener(It.CastContextEventType.SESSION_STATE_CHANGED,e=>{wu.forEach(t=>{var r,s;return(s=(r=sn.get(t)).onSessionStateChanged)==null?void 0:s.call(r,e)})}),wu.forEach(e=>{var t,r;return(r=(t=sn.get(e)).init)==null?void 0:r.call(t)}))});var F_=0,Ye,Cu,ki,rs,oa,ra,rn,b0,ss,Ws,y0,B_,Hu,T0,_0,X_,Du,A0,S0,$_,Mu,g0,VR=class extends EventTarget{constructor(i){super(),se(this,ss),se(this,y0),se(this,Hu),se(this,_0),se(this,Du),se(this,S0),se(this,Mu),se(this,Ye,void 0),se(this,Cu,void 0),se(this,ki,void 0),se(this,rs,void 0),se(this,oa,"disconnected"),se(this,ra,!1),se(this,rn,new Set),se(this,b0,new WeakMap),de(this,Ye,i),wu.add(this),sn.set(this,{init:()=>Et(this,Du,A0).call(this),onCastStateChanged:()=>Et(this,Hu,T0).call(this),onSessionStateChanged:()=>Et(this,_0,X_).call(this),getCastPlayer:()=>O(this,ss,Ws)}),Et(this,Du,A0).call(this)}get state(){return O(this,oa)}async watchAvailability(i){if(O(this,Ye).disableRemotePlayback)throw new p0("disableRemotePlayback attribute is present.");return O(this,b0).set(i,++F_),O(this,rn).add(i),F_}async cancelWatchAvailability(i){if(O(this,Ye).disableRemotePlayback)throw new p0("disableRemotePlayback attribute is present.");i?O(this,rn).delete(i):O(this,rn).clear()}async prompt(){var i,e;if(O(this,Ye).disableRemotePlayback)throw new p0("disableRemotePlayback attribute is present.");if(!q_())throw new FR("The RemotePlayback API is disabled on this platform.");let t=ns.has(O(this,Ye));ns.add(O(this,Ye)),j_(O(this,Ye).castOptions),Object.entries(O(this,rs)).forEach(([r,s])=>{O(this,ki).controller.addEventListener(r,s)});try{await nn().requestSession()}catch(r){if(r==="cancel"){t||ns.delete(O(this,Ye));return}throw new Error(r)}(e=(i=sn.get(O(this,Ye)))==null?void 0:i.loadOnPrompt)==null||e.call(i)}};Ye=new WeakMap,Cu=new WeakMap,ki=new WeakMap,rs=new WeakMap,oa=new WeakMap,ra=new WeakMap,rn=new WeakMap,b0=new WeakMap,ss=new WeakSet,Ws=function(){if(ns.has(O(this,Ye)))return O(this,ki)},y0=new WeakSet,B_=function(){ns.has(O(this,Ye))&&(Object.entries(O(this,rs)).forEach(([i,e])=>{O(this,ki).controller.removeEventListener(i,e)}),ns.delete(O(this,Ye)),O(this,Ye).muted=O(this,ki).isMuted,O(this,Ye).currentTime=O(this,ki).savedPlayerState.currentTime,O(this,ki).savedPlayerState.isPaused===!1&&O(this,Ye).play())},Hu=new WeakSet,T0=function(){let i=nn().getCastState();if(ns.has(O(this,Ye))&&i==="CONNECTING"&&(de(this,oa,"connecting"),this.dispatchEvent(new Event("connecting"))),!O(this,ra)&&i!=null&&i.includes("CONNECT")){de(this,ra,!0);for(let e of O(this,rn))e(!0)}else if(O(this,ra)&&(!i||i==="NO_DEVICES_AVAILABLE")){de(this,ra,!1);for(let e of O(this,rn))e(!1)}},_0=new WeakSet,X_=async function(){var i;let{SESSION_RESUMED:e}=It.SessionState;if(nn().getSessionState()===e&&O(this,Ye).castSrc===((i=F0())==null?void 0:i.media.contentId)){ns.add(O(this,Ye)),Object.entries(O(this,rs)).forEach(([t,r])=>{O(this,ki).controller.addEventListener(t,r)});try{await KR(new chrome.cast.media.GetStatusRequest)}catch(t){console.error(t)}O(this,rs)[It.RemotePlayerEventType.IS_PAUSED_CHANGED](),O(this,rs)[It.RemotePlayerEventType.PLAYER_STATE_CHANGED]()}},Du=new WeakSet,A0=function(){!It||O(this,Cu)||(de(this,Cu,!0),j_(O(this,Ye).castOptions),O(this,Ye).textTracks.addEventListener("change",()=>Et(this,Mu,g0).call(this)),Et(this,Hu,T0).call(this),de(this,ki,new It.RemotePlayer),new It.RemotePlayerController(O(this,ki)),de(this,rs,{[It.RemotePlayerEventType.IS_CONNECTED_CHANGED]:({value:i})=>{i===!0?(de(this,oa,"connected"),this.dispatchEvent(new Event("connect"))):(Et(this,y0,B_).call(this),de(this,oa,"disconnected"),this.dispatchEvent(new Event("disconnect")))},[It.RemotePlayerEventType.DURATION_CHANGED]:()=>{O(this,Ye).dispatchEvent(new Event("durationchange"))},[It.RemotePlayerEventType.VOLUME_LEVEL_CHANGED]:()=>{O(this,Ye).dispatchEvent(new Event("volumechange"))},[It.RemotePlayerEventType.IS_MUTED_CHANGED]:()=>{O(this,Ye).dispatchEvent(new Event("volumechange"))},[It.RemotePlayerEventType.CURRENT_TIME_CHANGED]:()=>{var i;(i=O(this,ss,Ws))!=null&&i.isMediaLoaded&&O(this,Ye).dispatchEvent(new Event("timeupdate"))},[It.RemotePlayerEventType.VIDEO_INFO_CHANGED]:()=>{O(this,Ye).dispatchEvent(new Event("resize"))},[It.RemotePlayerEventType.IS_PAUSED_CHANGED]:()=>{O(this,Ye).dispatchEvent(new Event(this.paused?"pause":"play"))},[It.RemotePlayerEventType.PLAYER_STATE_CHANGED]:()=>{var i,e;((i=O(this,ss,Ws))==null?void 0:i.playerState)!==chrome.cast.media.PlayerState.PAUSED&&O(this,Ye).dispatchEvent(new Event({[chrome.cast.media.PlayerState.PLAYING]:"playing",[chrome.cast.media.PlayerState.BUFFERING]:"waiting",[chrome.cast.media.PlayerState.IDLE]:"emptied"}[(e=O(this,ss,Ws))==null?void 0:e.playerState]))},[It.RemotePlayerEventType.IS_MEDIA_LOADED_CHANGED]:async()=>{var i;(i=O(this,ss,Ws))!=null&&i.isMediaLoaded&&(await Promise.resolve(),Et(this,S0,$_).call(this))}}))},S0=new WeakSet,$_=function(){Et(this,Mu,g0).call(this)},Mu=new WeakSet,g0=async function(){var i,e,t,r,s;if(!O(this,ss,Ws))return;let n=((e=(i=O(this,ki).mediaInfo)==null?void 0:i.tracks)!=null?e:[]).filter(({type:h})=>h===chrome.cast.media.TrackType.TEXT),a=[...O(this,Ye).textTracks].filter(({kind:h})=>h==="subtitles"||h==="captions"),o=n.map(({language:h,name:f,trackId:g})=>{var E;let{mode:y}=(E=a.find(S=>S.language===h&&S.label===f))!=null?E:{};return y?{mode:y,trackId:g}:!1}).filter(Boolean),l=o.filter(({mode:h})=>h!=="showing").map(({trackId:h})=>h),d=o.find(({mode:h})=>h==="showing"),c=(s=(r=(t=U0())==null?void 0:t.getSessionObj().media[0])==null?void 0:r.activeTrackIds)!=null?s:[],u=c;if(c.length&&(u=u.filter(h=>!l.includes(h))),d!=null&&d.trackId&&(u=[...u,d.trackId]),u=[...new Set(u)],!((h,f)=>h.length===f.length&&h.every(g=>f.includes(g)))(c,u))try{let h=new chrome.cast.media.EditTracksInfoRequest(u);await WR(h)}catch(h){console.error(h)}};var qR=i=>{var e,t,r,s,n,a,o,l,d;return t=class extends i{constructor(){super(...arguments),se(this,a),se(this,l),se(this,r,{paused:!1}),se(this,s,z_()),se(this,n,void 0)}get remote(){return O(this,n)?O(this,n):HR()?(GR(),sn.set(this,{loadOnPrompt:()=>Et(this,l,d).call(this)}),de(this,n,new VR(this))):super.remote}attributeChangedCallback(c,u,h){if(super.attributeChangedCallback(c,u,h),c==="cast-receiver"&&h){O(this,s).receiverApplicationId=h;return}if(O(this,a,o))switch(c){case"cast-stream-type":case"cast-src":this.load();break}}async load(){var c,u;if(!O(this,a,o))return super.load();let h=new chrome.cast.media.MediaInfo(this.castSrc,this.castContentType),f=[...this.querySelectorAll("track")].filter(({kind:S,src:w})=>w&&(S==="subtitles"||S==="captions")),g=[],E=0;f.length&&(h.tracks=f.map(S=>{let w=++E;g.length===0&&S.track.mode==="showing"&&g.push(w);let L=new chrome.cast.media.Track(w,chrome.cast.media.TrackType.TEXT);return L.trackContentId=S.src,L.trackContentType="text/vtt",L.subtype=S.kind==="captions"?chrome.cast.media.TextTrackType.CAPTIONS:chrome.cast.media.TextTrackType.SUBTITLES,L.name=S.label,L.language=S.srclang,L})),this.castStreamType==="live"?h.streamType=chrome.cast.media.StreamType.LIVE:h.streamType=chrome.cast.media.StreamType.BUFFERED,h.metadata=new chrome.cast.media.GenericMediaMetadata,h.metadata.title=this.title,h.metadata.images=[{url:this.poster}];let y=new chrome.cast.media.LoadRequest(h);y.currentTime=(c=super.currentTime)!=null?c:0,y.autoplay=!O(this,r).paused,y.activeTrackIds=g,await((u=U0())==null?void 0:u.loadMedia(y)),this.dispatchEvent(new Event("volumechange"))}play(){var c;if(O(this,a,o)){O(this,a,o).isPaused&&((c=O(this,a,o).controller)==null||c.playOrPause());return}return super.play()}pause(){var c;if(O(this,a,o)){O(this,a,o).isPaused||(c=O(this,a,o).controller)==null||c.playOrPause();return}super.pause()}get castOptions(){return O(this,s)}get castReceiver(){var c;return(c=this.getAttribute("cast-receiver"))!=null?c:void 0}set castReceiver(c){this.castReceiver!=c&&this.setAttribute("cast-receiver",`${c}`)}get castSrc(){var c,u,h;return(h=(u=this.getAttribute("cast-src"))!=null?u:(c=this.querySelector("source"))==null?void 0:c.src)!=null?h:this.currentSrc}set castSrc(c){this.castSrc!=c&&this.setAttribute("cast-src",`${c}`)}get castContentType(){var c;return(c=this.getAttribute("cast-content-type"))!=null?c:void 0}set castContentType(c){this.setAttribute("cast-content-type",`${c}`)}get castStreamType(){var c,u;return(u=(c=this.getAttribute("cast-stream-type"))!=null?c:this.streamType)!=null?u:void 0}set castStreamType(c){this.setAttribute("cast-stream-type",`${c}`)}get readyState(){if(O(this,a,o))switch(O(this,a,o).playerState){case chrome.cast.media.PlayerState.IDLE:return 0;case chrome.cast.media.PlayerState.BUFFERING:return 2;default:return 3}return super.readyState}get paused(){return O(this,a,o)?O(this,a,o).isPaused:super.paused}get muted(){var c;return O(this,a,o)?(c=O(this,a,o))==null?void 0:c.isMuted:super.muted}set muted(c){var u;if(O(this,a,o)){(c&&!O(this,a,o).isMuted||!c&&O(this,a,o).isMuted)&&((u=O(this,a,o).controller)==null||u.muteOrUnmute());return}super.muted=c}get volume(){var c,u;return O(this,a,o)?(u=(c=O(this,a,o))==null?void 0:c.volumeLevel)!=null?u:1:super.volume}set volume(c){var u;if(O(this,a,o)){O(this,a,o).volumeLevel=+c,(u=O(this,a,o).controller)==null||u.setVolumeLevel();return}super.volume=c}get duration(){var c,u,h;return O(this,a,o)&&(c=O(this,a,o))!=null&&c.isMediaLoaded?(h=(u=O(this,a,o))==null?void 0:u.duration)!=null?h:NaN:super.duration}get currentTime(){var c,u,h;return O(this,a,o)&&(c=O(this,a,o))!=null&&c.isMediaLoaded?(h=(u=O(this,a,o))==null?void 0:u.currentTime)!=null?h:0:super.currentTime}set currentTime(c){var u;if(O(this,a,o)){O(this,a,o).currentTime=c,(u=O(this,a,o).controller)==null||u.seek();return}super.currentTime=c}},r=new WeakMap,s=new WeakMap,n=new WeakMap,a=new WeakSet,o=function(){var c,u;return(u=(c=sn.get(this.remote))==null?void 0:c.getCastPlayer)==null?void 0:u.call(c)},l=new WeakSet,d=async function(){O(this,r).paused=h0(t.prototype,this,"paused"),h0(t.prototype,this,"pause").call(this),this.muted=h0(t.prototype,this,"muted");try{await this.load()}catch(c){console.error(c)}},it(t,"observedAttributes",[...(e=i.observedAttributes)!=null?e:[],"cast-src","cast-content-type","cast-stream-type","cast-receiver"]),t},Vu=class extends Event{constructor(i,e){super(i),it(this,"track"),this.track=e.track}},x0=new WeakMap;function ee(i){var e;return(e=x0.get(i))!=null?e:YR(i,{})}function YR(i,e){let t=x0.get(i);return t||x0.set(i,t={}),Object.assign(t,e)}function I0(i,e){let t=i.videoTracks;ee(e).media=i,ee(e).renditionSet||(ee(e).renditionSet=new Set);let r=ee(t).trackSet;r.add(e);let s=r.size-1;s in L0.prototype||Object.defineProperty(L0.prototype,s,{get(){return[...ee(this).trackSet][s]}}),queueMicrotask(()=>{t.dispatchEvent(new Vu("addtrack",{track:e}))})}function k0(i){var e;let t=(e=ee(i).media)==null?void 0:e.videoTracks;t&&(ee(t).trackSet.delete(i),queueMicrotask(()=>{t.dispatchEvent(new Vu("removetrack",{track:i}))}))}function jR(i){var e;let t=(e=ee(i).media.videoTracks)!=null?e:[],r=!1;for(let s of t)s!==i&&(s.selected=!1,r=!0);if(r){if(ee(t).changeRequested)return;ee(t).changeRequested=!0,queueMicrotask(()=>{delete ee(t).changeRequested,t.dispatchEvent(new Event("change"))})}}var Ks,Vs,qs,sa,No,L0=class extends EventTarget{constructor(){super(),se(this,sa),se(this,Ks,void 0),se(this,Vs,void 0),se(this,qs,void 0),ee(this).trackSet=new Set}[Symbol.iterator](){return O(this,sa,No).values()}get length(){return O(this,sa,No).size}getTrackById(i){var e;return(e=[...O(this,sa,No)].find(t=>t.id===i))!=null?e:null}get selectedIndex(){return[...O(this,sa,No)].findIndex(i=>i.selected)}get onaddtrack(){return O(this,Ks)}set onaddtrack(i){O(this,Ks)&&(this.removeEventListener("addtrack",O(this,Ks)),de(this,Ks,void 0)),typeof i=="function"&&(de(this,Ks,i),this.addEventListener("addtrack",i))}get onremovetrack(){return O(this,Vs)}set onremovetrack(i){O(this,Vs)&&(this.removeEventListener("removetrack",O(this,Vs)),de(this,Vs,void 0)),typeof i=="function"&&(de(this,Vs,i),this.addEventListener("removetrack",i))}get onchange(){return O(this,qs)}set onchange(i){O(this,qs)&&(this.removeEventListener("change",O(this,qs)),de(this,qs,void 0)),typeof i=="function"&&(de(this,qs,i),this.addEventListener("change",i))}};Ks=new WeakMap,Vs=new WeakMap,qs=new WeakMap,sa=new WeakSet,No=function(){return ee(this).trackSet};var qu=class extends Event{constructor(i,e){super(i),it(this,"rendition"),this.rendition=e.rendition}};function zR(i,e){let t=ee(i).media.videoRenditions;ee(e).media=ee(i).media,ee(e).track=i;let r=ee(i).renditionSet;r.add(e);let s=r.size-1;s in R0.prototype||Object.defineProperty(R0.prototype,s,{get(){return na(this)[s]}}),queueMicrotask(()=>{i.selected&&t.dispatchEvent(new qu("addrendition",{rendition:e}))})}function XR(i){let e=ee(i).media.videoRenditions,t=ee(i).track;ee(t).renditionSet.delete(i),queueMicrotask(()=>{ee(i).track.selected&&e.dispatchEvent(new qu("removerendition",{rendition:i}))})}function QR(i){let e=ee(i).media.videoRenditions;!e||ee(e).changeRequested||(ee(e).changeRequested=!0,queueMicrotask(()=>{delete ee(e).changeRequested,ee(i).track.selected&&e.dispatchEvent(new Event("change"))}))}function na(i){return[...ee(i).media.videoTracks].filter(e=>e.selected).flatMap(e=>[...ee(e).renditionSet])}var Ys,js,zs,R0=class extends EventTarget{constructor(){super(...arguments),se(this,Ys,void 0),se(this,js,void 0),se(this,zs,void 0)}[Symbol.iterator](){return na(this).values()}get length(){return na(this).length}getRenditionById(i){var e;return(e=na(this).find(t=>`${t.id}`==`${i}`))!=null?e:null}get selectedIndex(){return na(this).findIndex(i=>i.selected)}set selectedIndex(i){for(let[e,t]of na(this).entries())t.selected=e===i}get onaddrendition(){return O(this,Ys)}set onaddrendition(i){O(this,Ys)&&(this.removeEventListener("addrendition",O(this,Ys)),de(this,Ys,void 0)),typeof i=="function"&&(de(this,Ys,i),this.addEventListener("addrendition",i))}get onremoverendition(){return O(this,js)}set onremoverendition(i){O(this,js)&&(this.removeEventListener("removerendition",O(this,js)),de(this,js,void 0)),typeof i=="function"&&(de(this,js,i),this.addEventListener("removerendition",i))}get onchange(){return O(this,zs)}set onchange(i){O(this,zs)&&(this.removeEventListener("change",O(this,zs)),de(this,zs,void 0)),typeof i=="function"&&(de(this,zs,i),this.addEventListener("change",i))}};Ys=new WeakMap,js=new WeakMap,zs=new WeakMap;var Uo,ZR=class{constructor(){it(this,"src"),it(this,"id"),it(this,"width"),it(this,"height"),it(this,"bitrate"),it(this,"frameRate"),it(this,"codec"),se(this,Uo,!1)}get selected(){return O(this,Uo)}set selected(i){O(this,Uo)!==i&&(de(this,Uo,i),QR(this))}};Uo=new WeakMap;var Fo,Q_=class{constructor(){it(this,"id"),it(this,"kind"),it(this,"label",""),it(this,"language",""),it(this,"sourceBuffer"),se(this,Fo,!1)}addRendition(i,e,t,r,s,n){let a=new ZR;return a.src=i,a.width=e,a.height=t,a.frameRate=n,a.bitrate=s,a.codec=r,zR(this,a),a}removeRendition(i){XR(i)}get selected(){return O(this,Fo)}set selected(i){O(this,Fo)!==i&&(de(this,Fo,i),i===!0&&jR(this))}};Fo=new WeakMap;function JR(i,e){let t=ee(i).media.audioRenditions;ee(e).media=ee(i).media,ee(e).track=i;let r=ee(i).renditionSet;r.add(e);let s=r.size-1;s in w0.prototype||Object.defineProperty(w0.prototype,s,{get(){return aa(this)[s]}}),queueMicrotask(()=>{i.enabled&&t.dispatchEvent(new qu("addrendition",{rendition:e}))})}function ew(i){let e=ee(i).media.audioRenditions,t=ee(i).track;ee(t).renditionSet.delete(i),queueMicrotask(()=>{ee(i).track.enabled&&e.dispatchEvent(new qu("removerendition",{rendition:i}))})}function tw(i){let e=ee(i).media.audioRenditions;!e||ee(e).changeRequested||(ee(e).changeRequested=!0,queueMicrotask(()=>{delete ee(e).changeRequested,ee(i).track.enabled&&e.dispatchEvent(new Event("change"))}))}function aa(i){return[...ee(i).media.audioTracks].filter(e=>e.enabled).flatMap(e=>[...ee(e).renditionSet])}var Xs,Qs,Zs,w0=class extends EventTarget{constructor(){super(...arguments),se(this,Xs,void 0),se(this,Qs,void 0),se(this,Zs,void 0)}[Symbol.iterator](){return aa(this).values()}get length(){return aa(this).length}getRenditionById(i){var e;return(e=aa(this).find(t=>`${t.id}`==`${i}`))!=null?e:null}get selectedIndex(){return aa(this).findIndex(i=>i.selected)}set selectedIndex(i){for(let[e,t]of aa(this).entries())t.selected=e===i}get onaddrendition(){return O(this,Xs)}set onaddrendition(i){O(this,Xs)&&(this.removeEventListener("addrendition",O(this,Xs)),de(this,Xs,void 0)),typeof i=="function"&&(de(this,Xs,i),this.addEventListener("addrendition",i))}get onremoverendition(){return O(this,Qs)}set onremoverendition(i){O(this,Qs)&&(this.removeEventListener("removerendition",O(this,Qs)),de(this,Qs,void 0)),typeof i=="function"&&(de(this,Qs,i),this.addEventListener("removerendition",i))}get onchange(){return O(this,Zs)}set onchange(i){O(this,Zs)&&(this.removeEventListener("change",O(this,Zs)),de(this,Zs,void 0)),typeof i=="function"&&(de(this,Zs,i),this.addEventListener("change",i))}};Xs=new WeakMap,Qs=new WeakMap,Zs=new WeakMap;var Bo,iw=class{constructor(){it(this,"src"),it(this,"id"),it(this,"bitrate"),it(this,"codec"),se(this,Bo,!1)}get selected(){return O(this,Bo)}set selected(i){O(this,Bo)!==i&&(de(this,Bo,i),tw(this))}};Bo=new WeakMap;function C0(i,e){let t=i.audioTracks;ee(e).media=i,ee(e).renditionSet||(ee(e).renditionSet=new Set);let r=ee(t).trackSet;r.add(e);let s=r.size-1;s in M0.prototype||Object.defineProperty(M0.prototype,s,{get(){return[...ee(this).trackSet][s]}}),queueMicrotask(()=>{t.dispatchEvent(new Vu("addtrack",{track:e}))})}function D0(i){var e;let t=(e=ee(i).media)==null?void 0:e.audioTracks;t&&(ee(t).trackSet.delete(i),queueMicrotask(()=>{t.dispatchEvent(new Vu("removetrack",{track:i}))}))}function rw(i){let e=ee(i).media.audioTracks;!e||ee(e).changeRequested||(ee(e).changeRequested=!0,queueMicrotask(()=>{delete ee(e).changeRequested,e.dispatchEvent(new Event("change"))}))}var Js,en,tn,$o,Pu,M0=class extends EventTarget{constructor(){super(),se(this,$o),se(this,Js,void 0),se(this,en,void 0),se(this,tn,void 0),ee(this).trackSet=new Set}[Symbol.iterator](){return O(this,$o,Pu).values()}get length(){return O(this,$o,Pu).size}getTrackById(i){var e;return(e=[...O(this,$o,Pu)].find(t=>t.id===i))!=null?e:null}get onaddtrack(){return O(this,Js)}set onaddtrack(i){O(this,Js)&&(this.removeEventListener("addtrack",O(this,Js)),de(this,Js,void 0)),typeof i=="function"&&(de(this,Js,i),this.addEventListener("addtrack",i))}get onremovetrack(){return O(this,en)}set onremovetrack(i){O(this,en)&&(this.removeEventListener("removetrack",O(this,en)),de(this,en,void 0)),typeof i=="function"&&(de(this,en,i),this.addEventListener("removetrack",i))}get onchange(){return O(this,tn)}set onchange(i){O(this,tn)&&(this.removeEventListener("change",O(this,tn)),de(this,tn,void 0)),typeof i=="function"&&(de(this,tn,i),this.addEventListener("change",i))}};Js=new WeakMap,en=new WeakMap,tn=new WeakMap,$o=new WeakSet,Pu=function(){return ee(this).trackSet};var Ho,Z_=class{constructor(){it(this,"id"),it(this,"kind"),it(this,"label",""),it(this,"language",""),it(this,"sourceBuffer"),se(this,Ho,!1)}addRendition(i,e,t){let r=new iw;return r.src=i,r.codec=e,r.bitrate=t,JR(this,r),r}removeRendition(i){ew(i)}get enabled(){return O(this,Ho)}set enabled(i){O(this,Ho)!==i&&(de(this,Ho,i),rw(this))}};Ho=new WeakMap;var H_=Gu(globalThis.HTMLMediaElement,"video"),G_=Gu(globalThis.HTMLMediaElement,"audio");function sw(i){if(!(i!=null&&i.prototype))return i;let e=Gu(i,"video");(!e||`${e}`.includes("[native code]"))&&Object.defineProperty(i.prototype,"videoTracks",{get(){return nw(this)}});let t=Gu(i,"audio");(!t||`${t}`.includes("[native code]"))&&Object.defineProperty(i.prototype,"audioTracks",{get(){return aw(this)}}),"addVideoTrack"in i.prototype||(i.prototype.addVideoTrack=function(n,a="",o=""){let l=new Q_;return l.kind=n,l.label=a,l.language=o,I0(this,l),l}),"removeVideoTrack"in i.prototype||(i.prototype.removeVideoTrack=k0),"addAudioTrack"in i.prototype||(i.prototype.addAudioTrack=function(n,a="",o=""){let l=new Z_;return l.kind=n,l.label=a,l.language=o,C0(this,l),l}),"removeAudioTrack"in i.prototype||(i.prototype.removeAudioTrack=D0),"videoRenditions"in i.prototype||Object.defineProperty(i.prototype,"videoRenditions",{get(){return r(this)}});let r=n=>{let a=ee(n).videoRenditions;return a||(a=new R0,ee(a).media=n,ee(n).videoRenditions=a),a};"audioRenditions"in i.prototype||Object.defineProperty(i.prototype,"audioRenditions",{get(){return s(this)}});let s=n=>{let a=ee(n).audioRenditions;return a||(a=new w0,ee(a).media=n,ee(n).audioRenditions=a),a};return i}function Gu(i,e){var t;if(i!=null&&i.prototype)return(t=Object.getOwnPropertyDescriptor(i.prototype,`${e}Tracks`))==null?void 0:t.get}function nw(i){var e;let t=ee(i).videoTracks;if(!t&&(t=new L0,ee(i).videoTracks=t,H_)){let r=H_.call((e=i.nativeEl)!=null?e:i);for(let s of r)I0(i,s);r.addEventListener("change",()=>{t.dispatchEvent(new Event("change"))}),r.addEventListener("addtrack",s=>{if([...t].some(n=>n instanceof Q_)){for(let n of r)k0(n);return}I0(i,s.track)}),r.addEventListener("removetrack",s=>{k0(s.track)})}return t}function aw(i){var e;let t=ee(i).audioTracks;if(!t&&(t=new M0,ee(i).audioTracks=t,G_)){let r=G_.call((e=i.nativeEl)!=null?e:i);for(let s of r)C0(i,s);r.addEventListener("change",()=>{t.dispatchEvent(new Event("change"))}),r.addEventListener("addtrack",s=>{if([...t].some(n=>n instanceof Z_)){for(let n of r)D0(n);return}C0(i,s.track)}),r.addEventListener("removetrack",s=>{D0(s.track)})}return t}Ku.push("castchange","entercast","leavecast");var q={BEACON_COLLECTION_DOMAIN:"beacon-collection-domain",CUSTOM_DOMAIN:"custom-domain",DEBUG:"debug",DISABLE_COOKIES:"disable-cookies",ENV_KEY:"env-key",MAX_RESOLUTION:"max-resolution",MIN_RESOLUTION:"min-resolution",RENDITION_ORDER:"rendition-order",METADATA_URL:"metadata-url",PLAYBACK_ID:"playback-id",PLAYER_SOFTWARE_NAME:"player-software-name",PLAYER_SOFTWARE_VERSION:"player-software-version",PREFER_CMCD:"prefer-cmcd",PREFER_PLAYBACK:"prefer-playback",START_TIME:"start-time",STREAM_TYPE:"stream-type",TARGET_LIVE_WINDOW:"target-live-window",LIVE_EDGE_OFFSET:"live-edge-offset",TYPE:"type"},ow=Object.values(q),lw=NR(),dw="mux-video",Er,Go,Ou,Wo,Nu,Uu,Fu,Bu,Ko,$u,cw=class extends m0{constructor(){super(),se(this,Ko),se(this,Er,void 0),se(this,Go,void 0),se(this,Ou,void 0),se(this,Wo,{}),se(this,Nu,void 0),se(this,Uu,void 0),se(this,Fu,void 0),se(this,Bu,void 0),de(this,Ou,x_())}static get observedAttributes(){var i;return[...ow,...(i=m0.observedAttributes)!=null?i:[]]}get preferCmcd(){var i;return(i=this.getAttribute(q.PREFER_CMCD))!=null?i:void 0}set preferCmcd(i){i!==this.preferCmcd&&(i?ia.includes(i)?this.setAttribute(q.PREFER_CMCD,i):console.warn(`Invalid value for preferCmcd. Must be one of ${ia.join()}`):this.removeAttribute(q.PREFER_CMCD))}get playerInitTime(){return O(this,Ou)}get playerSoftwareName(){var i;return(i=O(this,Fu))!=null?i:dw}set playerSoftwareName(i){de(this,Fu,i)}get playerSoftwareVersion(){var i;return(i=O(this,Uu))!=null?i:lw}set playerSoftwareVersion(i){de(this,Uu,i)}get _hls(){var i;return(i=O(this,Er))==null?void 0:i.engine}get mux(){var i;return(i=this.nativeEl)==null?void 0:i.mux}get error(){var i;return(i=I_(this.nativeEl))!=null?i:null}get errorTranslator(){return O(this,Bu)}set errorTranslator(i){de(this,Bu,i)}get src(){return this.getAttribute("src")}set src(i){i!==this.src&&(i==null?this.removeAttribute("src"):this.setAttribute("src",i))}get type(){var i;return(i=this.getAttribute(q.TYPE))!=null?i:void 0}set type(i){i!==this.type&&(i?this.setAttribute(q.TYPE,i):this.removeAttribute(q.TYPE))}get autoplay(){let i=this.getAttribute("autoplay");return i===null?!1:i===""?!0:i}set autoplay(i){let e=this.autoplay;i!==e&&(i?this.setAttribute("autoplay",typeof i=="string"?i:""):this.removeAttribute("autoplay"))}get preload(){let i=this.getAttribute("preload");return i===""?"auto":["none","metadata","auto"].includes(i)?i:super.preload}set preload(i){i!=this.getAttribute("preload")&&(["","none","metadata","auto"].includes(i)?this.setAttribute("preload",i):this.removeAttribute("preload"))}get debug(){return this.getAttribute(q.DEBUG)!=null}set debug(i){i!==this.debug&&(i?this.setAttribute(q.DEBUG,""):this.removeAttribute(q.DEBUG))}get disableCookies(){return this.hasAttribute(q.DISABLE_COOKIES)}set disableCookies(i){i!==this.disableCookies&&(i?this.setAttribute(q.DISABLE_COOKIES,""):this.removeAttribute(q.DISABLE_COOKIES))}get startTime(){let i=this.getAttribute(q.START_TIME);if(i==null)return;let e=+i;return Number.isNaN(e)?void 0:e}set startTime(i){i!==this.startTime&&(i==null?this.removeAttribute(q.START_TIME):this.setAttribute(q.START_TIME,`${i}`))}get playbackId(){var i;return(i=this.getAttribute(q.PLAYBACK_ID))!=null?i:void 0}set playbackId(i){i!==this.playbackId&&(i?this.setAttribute(q.PLAYBACK_ID,i):this.removeAttribute(q.PLAYBACK_ID))}get maxResolution(){var i;return(i=this.getAttribute(q.MAX_RESOLUTION))!=null?i:void 0}set maxResolution(i){i!==this.maxResolution&&(i?this.setAttribute(q.MAX_RESOLUTION,i):this.removeAttribute(q.MAX_RESOLUTION))}get minResolution(){var i;return(i=this.getAttribute(q.MIN_RESOLUTION))!=null?i:void 0}set minResolution(i){i!==this.minResolution&&(i?this.setAttribute(q.MIN_RESOLUTION,i):this.removeAttribute(q.MIN_RESOLUTION))}get renditionOrder(){var i;return(i=this.getAttribute(q.RENDITION_ORDER))!=null?i:void 0}set renditionOrder(i){i!==this.renditionOrder&&(i?this.setAttribute(q.RENDITION_ORDER,i):this.removeAttribute(q.RENDITION_ORDER))}get customDomain(){var i;return(i=this.getAttribute(q.CUSTOM_DOMAIN))!=null?i:void 0}set customDomain(i){i!==this.customDomain&&(i?this.setAttribute(q.CUSTOM_DOMAIN,i):this.removeAttribute(q.CUSTOM_DOMAIN))}get ended(){return c0(this.nativeEl,this._hls)}get envKey(){var i;return(i=this.getAttribute(q.ENV_KEY))!=null?i:void 0}set envKey(i){i!==this.envKey&&(i?this.setAttribute(q.ENV_KEY,i):this.removeAttribute(q.ENV_KEY))}get beaconCollectionDomain(){var i;return(i=this.getAttribute(q.BEACON_COLLECTION_DOMAIN))!=null?i:void 0}set beaconCollectionDomain(i){i!==this.beaconCollectionDomain&&(i?this.setAttribute(q.BEACON_COLLECTION_DOMAIN,i):this.removeAttribute(q.BEACON_COLLECTION_DOMAIN))}get streamType(){var i;return(i=this.getAttribute(q.STREAM_TYPE))!=null?i:xu(this.nativeEl)}set streamType(i){i!==this.streamType&&(i?this.setAttribute(q.STREAM_TYPE,i):this.removeAttribute(q.STREAM_TYPE))}get targetLiveWindow(){return this.hasAttribute(q.TARGET_LIVE_WINDOW)?+this.getAttribute(q.TARGET_LIVE_WINDOW):k_(this.nativeEl)}set targetLiveWindow(i){i!=this.targetLiveWindow&&(i==null?this.removeAttribute(q.TARGET_LIVE_WINDOW):this.setAttribute(q.TARGET_LIVE_WINDOW,`${+i}`))}get liveEdgeStart(){var i,e;if(this.hasAttribute(q.LIVE_EDGE_OFFSET)){let{liveEdgeOffset:t}=this,r=(i=this.nativeEl.seekable.end(0))!=null?i:0,s=(e=this.nativeEl.seekable.start(0))!=null?e:0;return Math.max(s,r-t)}return L_(this.nativeEl)}get liveEdgeOffset(){if(this.hasAttribute(q.LIVE_EDGE_OFFSET))return+this.getAttribute(q.LIVE_EDGE_OFFSET)}set liveEdgeOffset(i){i!=this.targetLiveWindow&&(i==null?this.removeAttribute(q.LIVE_EDGE_OFFSET):this.setAttribute(q.LIVE_EDGE_OFFSET,`${+i}`))}get seekable(){return Mo(this.nativeEl)}async addCuePoints(i){return o0(this.nativeEl,i)}get activeCuePoint(){return l0(this.nativeEl)}get cuePoints(){return y_(this.nativeEl)}getStartDate(){return T_(this.nativeEl,this._hls)}get currentPdt(){return __(this.nativeEl,this._hls)}get preferPlayback(){let i=this.getAttribute(q.PREFER_PLAYBACK);if(i===Ii.MSE||i===Ii.NATIVE)return i}set preferPlayback(i){i!==this.preferPlayback&&(i===Ii.MSE||i===Ii.NATIVE?this.setAttribute(q.PREFER_PLAYBACK,i):this.removeAttribute(q.PREFER_PLAYBACK))}get metadata(){return{...this.getAttributeNames().filter(i=>i.startsWith("metadata-")&&![q.METADATA_URL].includes(i)).reduce((i,e)=>{let t=this.getAttribute(e);return t!=null&&(i[e.replace(/^metadata-/,"").replace(/-/g,"_")]=t),i},{}),...O(this,Wo)}}set metadata(i){de(this,Wo,i!=null?i:{}),this.mux&&this.mux.emit("hb",O(this,Wo))}get _hlsConfig(){return O(this,Nu)}set _hlsConfig(i){de(this,Nu,i)}load(){de(this,Er,C_(this,this.nativeEl,O(this,Er)))}unload(){u0(this.nativeEl,O(this,Er)),de(this,Er,void 0)}attributeChangedCallback(i,e,t){var r,s;switch(m0.observedAttributes.includes(i)&&!["src","autoplay","preload"].includes(i)&&super.attributeChangedCallback(i,e,t),i){case q.PLAYER_SOFTWARE_NAME:this.playerSoftwareName=t!=null?t:void 0;break;case q.PLAYER_SOFTWARE_VERSION:this.playerSoftwareVersion=t!=null?t:void 0;break;case"src":{let n=!!e,a=!!t;!n&&a?Et(this,Ko,$u).call(this):n&&!a?this.unload():n&&a&&(this.unload(),Et(this,Ko,$u).call(this));break}case"autoplay":if(t===e)break;(r=O(this,Er))==null||r.setAutoplay(this.autoplay);break;case"preload":if(t===e)break;(s=O(this,Er))==null||s.setPreload(t);break;case q.PLAYBACK_ID:this.src=Oo(this);break;case q.DEBUG:{let n=this.debug;this.mux&&console.info("Cannot toggle debug mode of mux data after initialization. Make sure you set all metadata to override before setting the src."),this._hls&&(this._hls.config.debug=n);break}case q.METADATA_URL:t&&fetch(t).then(n=>n.json()).then(n=>this.metadata=n).catch(()=>console.error(`Unable to load or parse metadata JSON from metadata-url ${t}!`));break;case q.STREAM_TYPE:(t==null||t!==e)&&this.dispatchEvent(new CustomEvent("streamtypechange",{composed:!0,bubbles:!0}));break;case q.TARGET_LIVE_WINDOW:(t==null||t!==e)&&this.dispatchEvent(new CustomEvent("targetlivewindowchange",{composed:!0,bubbles:!0,detail:this.targetLiveWindow}));break;default:break}}connectedCallback(){var i;(i=super.connectedCallback)==null||i.call(this),this.nativeEl&&this.src&&!O(this,Er)&&Et(this,Ko,$u).call(this)}disconnectedCallback(){this.unload()}};Er=new WeakMap,Go=new WeakMap,Ou=new WeakMap,Wo=new WeakMap,Nu=new WeakMap,Uu=new WeakMap,Fu=new WeakMap,Bu=new WeakMap,Ko=new WeakSet,$u=async function(){O(this,Go)||(await de(this,Go,Promise.resolve()),de(this,Go,null),this.load())};var P0=class extends qR(sw(cw)){};f0.customElements.get("mux-video")||(f0.customElements.define("mux-video",P0),f0.MuxVideoElement=P0);var J_=P0;var uw="en",an={code:uw};var eA="en";function we(i,e=!0){var s,n;let t=e&&(n=(s=an)==null?void 0:s[i])!=null?n:i,r=e?an.code:eA;return new B0(t,r)}var B0=class{constructor(e,t=(r=>(r=an.code)!=null?r:eA)()){this.message=e,this.locale=t}format(e){return this.message.replace(/\{(\w+)\}/g,(t,r)=>{var s;return(s=e[r])!=null?s:""})}toString(){return this.message}};function tA(i){let e="";return Object.entries(i).forEach(([t,r])=>{r!=null&&(e+=`${Yu(t)}: ${r}; `)}),e?e.trim():void 0}function Yu(i){return i.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function ju(i){return i.replace(/[-_]([a-z])/g,(e,t)=>t.toUpperCase())}function br(i){if(i==null)return;let e=+i;return Number.isNaN(e)?void 0:e}function $0(i){let e=hw(i).toString();return e?"?"+e:""}function hw(i){let e={};for(let t in i)i[t]!=null&&(e[t]=i[t]);return new URLSearchParams(e)}function as(i){let e=(i!=null?i:"").split(".")[1];if(!e)return{};let t=e.replace(/-/g,"+").replace(/_/g,"/"),r=decodeURIComponent(atob(t).split("").map(function(s){return"%"+("00"+s.charCodeAt(0).toString(16)).slice(-2)}).join(""));return JSON.parse(r)}var H0=(i,e)=>!i||!e?!1:i.contains(e)?!0:H0(i,e.getRootNode().host);var iA="mux.com",fw=()=>{try{return"2.4.0"}catch{}return"UNKNOWN"},mw=fw(),Xu=()=>mw,rA=(i,{token:e,customDomain:t=iA,thumbnailTime:r}={})=>{let s=e==null?r:void 0,{aud:n}=as(e);if(!(e&&n!=="t"))return`https://image.${t}/${i}/thumbnail.webp${$0({token:e,time:s})}`},sA=(i,{token:e,customDomain:t=iA}={})=>{let{aud:r}=as(e);if(!(e&&r!=="s"))return`https://image.${t}/${i}/storyboard.vtt${$0({token:e,format:"webp"})}`},Vo=i=>{if(i){if([He.LIVE,He.ON_DEMAND].includes(i))return i;if(i!=null&&i.includes("live"))return He.LIVE}};var pw={crossorigin:"crossOrigin",playsinline:"playsInline"};function nA(i){var e;return(e=pw[i])!=null?e:ju(i)}var on,ln,Jt,zu=class{constructor(e,t){Tt(this,on,void 0);Tt(this,ln,void 0);Tt(this,Jt,[]);vi(this,on,e),vi(this,ln,t)}[Symbol.iterator](){return Be(this,Jt).values()}get length(){return Be(this,Jt).length}get value(){var e;return(e=Be(this,Jt).join(" "))!=null?e:""}set value(e){var t;e!==this.value&&(vi(this,Jt,[]),this.add(...(t=e==null?void 0:e.split(" "))!=null?t:[]))}toString(){return this.value}item(e){return Be(this,Jt)[e]}values(){return Be(this,Jt).values()}keys(){return Be(this,Jt).keys()}forEach(e){Be(this,Jt).forEach(e)}add(...e){var t,r;e.forEach(s=>{this.contains(s)||Be(this,Jt).push(s)}),!(this.value===""&&!((t=Be(this,on))!=null&&t.hasAttribute(`${Be(this,ln)}`)))&&((r=Be(this,on))==null||r.setAttribute(`${Be(this,ln)}`,`${this.value}`))}remove(...e){var t;e.forEach(r=>{Be(this,Jt).splice(Be(this,Jt).indexOf(r),1)}),(t=Be(this,on))==null||t.setAttribute(`${Be(this,ln)}`,`${this.value}`)}contains(e){return Be(this,Jt).includes(e)}toggle(e,t){return typeof t!="undefined"?t?(this.add(e),!0):(this.remove(e),!1):this.contains(e)?(this.remove(e),!1):(this.add(e),!0)}replace(e,t){this.remove(e),this.add(t)}};on=new WeakMap,ln=new WeakMap,Jt=new WeakMap;var aA=`[mux-player ${Xu()}]`;function os(...i){console.warn(aA,...i)}function Li(...i){console.error(aA,...i)}function G0(i){var t;let e=(t=i.message)!=null?t:"";if(i.context&&(e+=` ${i.context}`),i.file){let r="https://github.com/muxinc/elements/blob/main/errors/";e+=` ${we("Read more: ")}
1648
- ${r}${i.file}`}os(e)}var jt={AUTOPLAY:"autoplay",CROSSORIGIN:"crossorigin",LOOP:"loop",MUTED:"muted",PLAYSINLINE:"playsinline",PRELOAD:"preload"},dn={VOLUME:"volume",PLAYBACKRATE:"playbackrate",MUTED:"muted"},lA=Object.freeze({length:0,start(i){let e=i>>>0;if(e>=this.length)throw new DOMException(`Failed to execute 'start' on 'TimeRanges': The index provided (${e}) is greater than or equal to the maximum bound (${this.length}).`);return 0},end(i){let e=i>>>0;if(e>=this.length)throw new DOMException(`Failed to execute 'end' on 'TimeRanges': The index provided (${e}) is greater than or equal to the maximum bound (${this.length}).`);return 0}}),gw=Ku.filter(i=>i!=="error"),vw=Object.values(jt).filter(i=>![jt.PLAYSINLINE].includes(i)),Ew=Object.values(dn);function dA(i){i.querySelectorAll(":scope > track").forEach(e=>{var t;(t=i.media)==null||t.append(e.cloneNode())}),gw.forEach(e=>{var t;(t=i.media)==null||t.addEventListener(e,r=>{i.dispatchEvent(new Event(r.type))})})}var W0=class extends dt.HTMLElement{static get observedAttributes(){return[...vw,...Ew]}constructor(){super(),this.querySelectorAll(":scope > track").forEach(r=>{var s;(s=this.media)==null||s.append(r.cloneNode())});let e=r=>{for(let s of r)s.type==="childList"&&(s.removedNodes.forEach(n=>{var o,l;let a=(o=this.media)==null?void 0:o.querySelector(`track[src="${n.src}"]`);a&&((l=this.media)==null||l.removeChild(a))}),s.addedNodes.forEach(n=>{var a;(a=this.media)==null||a.append(n.cloneNode())}))};new MutationObserver(e).observe(this,{childList:!0,subtree:!0})}attributeChangedCallback(e,t,r){var s,n;switch(e){case dn.MUTED:{this.media&&(this.media.muted=r!=null,this.media.defaultMuted=r!=null);return}case dn.VOLUME:{let a=(s=br(r))!=null?s:1;this.media&&(this.media.volume=a);return}case dn.PLAYBACKRATE:{let a=(n=br(r))!=null?n:1;this.media&&(this.media.playbackRate=a,this.media.defaultPlaybackRate=a);return}}}play(){var e,t;return(t=(e=this.media)==null?void 0:e.play())!=null?t:Promise.reject()}pause(){var e;(e=this.media)==null||e.pause()}requestCast(e){var t;return(t=this.media)==null?void 0:t.requestCast(e)}get media(){var e;return(e=this.shadowRoot)==null?void 0:e.querySelector("mux-video")}get audioTracks(){return this.media.audioTracks}get videoTracks(){return this.media.videoTracks}get audioRenditions(){return this.media.audioRenditions}get videoRenditions(){return this.media.videoRenditions}get paused(){var e,t;return(t=(e=this.media)==null?void 0:e.paused)!=null?t:!0}get duration(){var e,t;return(t=(e=this.media)==null?void 0:e.duration)!=null?t:NaN}get ended(){var e,t;return(t=(e=this.media)==null?void 0:e.ended)!=null?t:!1}get buffered(){var e,t;return(t=(e=this.media)==null?void 0:e.buffered)!=null?t:lA}get seekable(){var e,t;return(t=(e=this.media)==null?void 0:e.seekable)!=null?t:lA}get readyState(){var e,t;return(t=(e=this.media)==null?void 0:e.readyState)!=null?t:0}get videoWidth(){var e,t;return(t=(e=this.media)==null?void 0:e.videoWidth)!=null?t:0}get videoHeight(){var e,t;return(t=(e=this.media)==null?void 0:e.videoHeight)!=null?t:0}get currentTime(){var e,t;return(t=(e=this.media)==null?void 0:e.currentTime)!=null?t:0}set currentTime(e){this.media&&(this.media.currentTime=Number(e))}get volume(){var e,t;return(t=(e=this.media)==null?void 0:e.volume)!=null?t:1}set volume(e){this.media&&(this.media.volume=Number(e))}get playbackRate(){var e,t;return(t=(e=this.media)==null?void 0:e.playbackRate)!=null?t:1}set playbackRate(e){this.media&&(this.media.playbackRate=Number(e))}get defaultPlaybackRate(){var e;return(e=br(this.getAttribute(dn.PLAYBACKRATE)))!=null?e:1}set defaultPlaybackRate(e){e!=null?this.setAttribute(dn.PLAYBACKRATE,`${e}`):this.removeAttribute(dn.PLAYBACKRATE)}get crossOrigin(){return qo(this,jt.CROSSORIGIN)}set crossOrigin(e){this.setAttribute(jt.CROSSORIGIN,`${e}`)}get autoplay(){return qo(this,jt.AUTOPLAY)!=null}set autoplay(e){e?this.setAttribute(jt.AUTOPLAY,typeof e=="string"?e:""):this.removeAttribute(jt.AUTOPLAY)}get loop(){return qo(this,jt.LOOP)!=null}set loop(e){e?this.setAttribute(jt.LOOP,""):this.removeAttribute(jt.LOOP)}get muted(){var e,t;return(t=(e=this.media)==null?void 0:e.muted)!=null?t:!1}set muted(e){this.media&&(this.media.muted=!!e)}get defaultMuted(){return qo(this,jt.MUTED)!=null}set defaultMuted(e){e?this.setAttribute(jt.MUTED,""):this.removeAttribute(jt.MUTED)}get playsInline(){return qo(this,jt.PLAYSINLINE)!=null}set playsInline(e){Li("playsInline is set to true by default and is not currently supported as a setter.")}get preload(){return this.media?this.media.preload:this.getAttribute("preload")}set preload(e){["","none","metadata","auto"].includes(e)?this.setAttribute(jt.PRELOAD,e):this.removeAttribute(jt.PRELOAD)}};function qo(i,e){return i.media?i.media.getAttribute(e):i.getAttribute(e)}var K0=W0;var bw=Object.defineProperty,yw=(i,e,t)=>e in i?bw(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,Tw=(i,e,t)=>(yw(i,typeof e!="symbol"?e+"":e,t),t),mA=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},ke=(i,e,t)=>(mA(i,e,"read from private field"),t?t.call(i):e.get(i)),yr=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},wr=(i,e,t,r)=>(mA(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),la,Qu,cn,Yo,ls,ds,cs,un,da,Zu,Vi,cA=1,uA=0,_w=1,Aw={processCallback(i,e,t){if(t){for(let[r,s]of e)if(r in t){let n=t[r];typeof n=="boolean"&&s instanceof ei&&typeof s.element[s.attributeName]=="boolean"?s.booleanValue=n:typeof n=="function"&&s instanceof ei?s.element[s.attributeName]=n:s.value=n}}}},Cr=class extends k.DocumentFragment{constructor(e,t,r=Aw){var s;super(),yr(this,la,void 0),yr(this,Qu,void 0),this.append(e.content.cloneNode(!0)),wr(this,la,pA(this)),wr(this,Qu,r),(s=r.createCallback)==null||s.call(r,this,ke(this,la),t),r.processCallback(this,ke(this,la),t)}update(e){ke(this,Qu).processCallback(this,ke(this,la),e)}};la=new WeakMap;Qu=new WeakMap;var pA=(i,e=[])=>{let t,r;for(let s of i.attributes||[])if(s.value.includes("{{")){let n=new V0;for([t,r]of fA(s.value))if(!t)n.append(r);else{let a=new ei(i,s.name,s.namespaceURI);n.append(a),e.push([r,a])}s.value=n.toString()}for(let s of i.childNodes)if(s.nodeType===cA&&!(s instanceof HTMLTemplateElement))pA(s,e);else if(s.nodeType===cA||s.data.includes("{{")){let n=[];if(s.data)for([t,r]of fA(s.data))if(!t)n.push(new Text(r));else{let a=new Dr(i);n.push(a),e.push([r,a])}else if(s instanceof HTMLTemplateElement){let a=new jo(i,s);n.push(a),e.push([a.expression,a])}s.replaceWith(...n.flatMap(a=>a.replacementNodes||[a]))}return e},hA={},fA=i=>{let e="",t=0,r=hA[i],s=0,n;if(r)return r;for(r=[];n=i[s];s++)n==="{"&&i[s+1]==="{"&&i[s-1]!=="\\"&&i[s+2]&&++t==1?(e&&r.push([uA,e]),e="",s++):n==="}"&&i[s+1]==="}"&&i[s-1]!=="\\"&&!--t?(r.push([_w,e.trim()]),e="",s++):e+=n||"";return e&&r.push([uA,(t>0?"{{":"")+e]),hA[i]=r},Sw=11,Ju=class{get value(){return""}set value(e){}toString(){return this.value}},gA=new WeakMap,V0=class{constructor(){yr(this,cn,[])}[Symbol.iterator](){return ke(this,cn).values()}get length(){return ke(this,cn).length}item(e){return ke(this,cn)[e]}append(...e){for(let t of e)t instanceof ei&&gA.set(t,this),ke(this,cn).push(t)}toString(){return ke(this,cn).join("")}};cn=new WeakMap;var ei=class extends Ju{constructor(e,t,r){super(),yr(this,un),yr(this,Yo,""),yr(this,ls,void 0),yr(this,ds,void 0),yr(this,cs,void 0),wr(this,ls,e),wr(this,ds,t),wr(this,cs,r)}get attributeName(){return ke(this,ds)}get attributeNamespace(){return ke(this,cs)}get element(){return ke(this,ls)}get value(){return ke(this,Yo)}set value(e){ke(this,Yo)!==e&&(wr(this,Yo,e),!ke(this,un,da)||ke(this,un,da).length===1?e==null?ke(this,ls).removeAttributeNS(ke(this,cs),ke(this,ds)):ke(this,ls).setAttributeNS(ke(this,cs),ke(this,ds),e):ke(this,ls).setAttributeNS(ke(this,cs),ke(this,ds),ke(this,un,da)))}get booleanValue(){return ke(this,ls).hasAttributeNS(ke(this,cs),ke(this,ds))}set booleanValue(e){if(!ke(this,un,da)||ke(this,un,da).length===1)this.value=e?"":null;else throw new DOMException("Value is not fully templatized")}};Yo=new WeakMap;ls=new WeakMap;ds=new WeakMap;cs=new WeakMap;un=new WeakSet;da=function(){return gA.get(this)};var Dr=class extends Ju{constructor(e,t){super(),yr(this,Zu,void 0),yr(this,Vi,void 0),wr(this,Zu,e),wr(this,Vi,t?[...t]:[new Text])}get replacementNodes(){return ke(this,Vi)}get parentNode(){return ke(this,Zu)}get nextSibling(){return ke(this,Vi)[ke(this,Vi).length-1].nextSibling}get previousSibling(){return ke(this,Vi)[0].previousSibling}get value(){return ke(this,Vi).map(e=>e.textContent).join("")}set value(e){this.replace(e)}replace(...e){let t=e.flat().flatMap(r=>r==null?[new Text]:r.forEach?[...r]:r.nodeType===Sw?[...r.childNodes]:r.nodeType?[r]:[new Text(r)]);t.length||t.push(new Text),wr(this,Vi,xw(ke(this,Vi)[0].parentNode,ke(this,Vi),t,this.nextSibling))}};Zu=new WeakMap;Vi=new WeakMap;var jo=class extends Dr{constructor(e,t){let r=t.getAttribute("directive")||t.getAttribute("type"),s=t.getAttribute("expression")||t.getAttribute(r)||"";s.startsWith("{{")&&(s=s.trim().slice(2,-2).trim()),super(e),Tw(this,"directive"),this.expression=s,this.template=t,this.directive=r}};function xw(i,e,t,r=null){let s=0,n,a,o,l=t.length,d=e.length;for(;s<l&&s<d&&e[s]==t[s];)s++;for(;s<l&&s<d&&t[l-1]==e[d-1];)r=t[--d,--l];if(s==d)for(;s<l;)i.insertBefore(t[s++],r);if(s==l)for(;s<d;)i.removeChild(e[s++]);else{for(n=e[s];s<l;)o=t[s++],a=n?n.nextSibling:r,n==o?n=a:s<l&&t[s]==a?(i.replaceChild(o,n),n=a):i.insertBefore(o,n);for(;n!=r;)a=n.nextSibling,i.removeChild(n),n=a}return t}var vA={string:i=>String(i)},th=class{constructor(e){this.template=e,this.state=void 0}},hn=new WeakMap,fn=new WeakMap,q0={partial:(i,e)=>{e[i.expression]=new th(i.template)},if:(i,e)=>{var t;if(bA(i.expression,e))if(hn.get(i)!==i.template){hn.set(i,i.template);let r=new Cr(i.template,e,ih);i.replace(r),fn.set(i,r)}else(t=fn.get(i))==null||t.update(e);else i.replace(""),hn.delete(i),fn.delete(i)}},Iw=Object.keys(q0),ih={processCallback(i,e,t){var r,s;if(t)for(let[n,a]of e){if(a instanceof jo){if(!a.directive){let l=Iw.find(d=>a.template.hasAttribute(d));l&&(a.directive=l,a.expression=a.template.getAttribute(l))}(r=q0[a.directive])==null||r.call(q0,a,t);continue}let o=bA(n,t);if(o instanceof th){hn.get(a)!==o.template?(hn.set(a,o.template),o=new Cr(o.template,o.state,ih),a.value=o,fn.set(a,o)):(s=fn.get(a))==null||s.update(o.state);continue}o?(a instanceof ei&&a.attributeName.startsWith("aria-")&&(o=String(o)),a instanceof ei?typeof o=="boolean"?a.booleanValue=o:typeof o=="function"?a.element[a.attributeName]=o:a.value=o:(a.value=o,hn.delete(a),fn.delete(a))):a instanceof ei?a.value=void 0:(a.value=void 0,hn.delete(a),fn.delete(a))}}},EA={"!":i=>!i,"!!":i=>!!i,"==":(i,e)=>i==e,"!=":(i,e)=>i!=e,">":(i,e)=>i>e,">=":(i,e)=>i>=e,"<":(i,e)=>i<e,"<=":(i,e)=>i<=e,"??":(i,e)=>i!=null?i:e,"|":(i,e)=>{var t;return(t=vA[e])==null?void 0:t.call(vA,i)}};function kw(i){return Lw(i,{boolean:/true|false/,number:/-?\d+\.?\d*/,string:/(["'])((?:\\.|[^\\])*?)\1/,operator:/[!=><][=!]?|\?\?|\|/,ws:/\s+/,param:/[$a-z_][$\w]*/i}).filter(({type:e})=>e!=="ws")}function bA(i,e={}){var t,r,s,n,a,o,l;let d=kw(i);if(d.length===0||d.some(({type:c})=>!c))return zo(i);if(((t=d[0])==null?void 0:t.token)===">"){let c=e[(r=d[1])==null?void 0:r.token];if(!c)return zo(i);let u={...e};c.state=u;let h=d.slice(2);for(let f=0;f<h.length;f+=3){let g=(s=h[f])==null?void 0:s.token,E=(n=h[f+1])==null?void 0:n.token,y=(a=h[f+2])==null?void 0:a.token;g&&E==="="&&(u[g]=Xo(y,e))}return c}if(d.length===1)return eh(d[0])?Xo(d[0].token,e):zo(i);if(d.length===2){let c=(o=d[0])==null?void 0:o.token,u=EA[c];if(!u||!eh(d[1]))return zo(i);let h=Xo(d[1].token,e);return u(h)}if(d.length===3){let c=(l=d[1])==null?void 0:l.token,u=EA[c];if(!u||!eh(d[0])||!eh(d[2]))return zo(i);let h=Xo(d[0].token,e);if(c==="|")return u(h,d[2].token);let f=Xo(d[2].token,e);return u(h,f)}}function zo(i){return console.warn(`Warning: invalid expression \`${i}\``),!1}function eh({type:i}){return["number","boolean","string","param"].includes(i)}function Xo(i,e){let t=i[0],r=i.slice(-1);return i==="true"||i==="false"?i==="true":t===r&&["'",'"'].includes(t)?i.slice(1,-1):bl(i)?parseFloat(i):e[i]}function Lw(i,e){let t,r,s,n=[];for(;i;){s=null,t=i.length;for(let a in e)r=e[a].exec(i),r&&r.index<t&&(s={token:r[0],type:a,matches:r.slice(1)},t=r.index);t&&n.push({token:i.substr(0,t),type:void 0}),s&&n.push(s),i=i.substr(t+(s?s.token.length:0))}return n}var Rw=Object.defineProperty,ww=(i,e,t)=>e in i?Rw(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,Zo=(i,e,t)=>(ww(i,typeof e!="symbol"?e+"":e,t),t),Z0=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},z0=(i,e,t)=>(Z0(i,e,"read from private field"),t?t.call(i):e.get(i)),Qo=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},mn=(i,e,t,r)=>(Z0(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),Y0=(i,e,t)=>(Z0(i,e,"access private method"),t),ca,rh,ua,X0,yA,sh,Q0,j0={mediatargetlivewindow:"targetlivewindow",mediastreamtype:"streamtype"},TA=W.createElement("template");TA.innerHTML=`
1647
+ `);var V_=(i,{tag:e,is:t})=>{var r,s,n,a,o,l,d,c,u,h,f,g,E,y,S,w;let L=(r=globalThis.document)==null?void 0:r.createElement(e,{is:t}),F=L?UR(L):[];return s=class extends i{constructor(){super(),se(this,u),se(this,f),se(this,E),se(this,S),se(this,l,void 0),se(this,d,void 0),se(this,c,new Map),this.shadowRoot||(this.attachShadow({mode:"open"}),this.shadowRoot.append(this.constructor.template.content.cloneNode(!0)))}static get observedAttributes(){var R,B,P;return Et(R=s,a,o).call(R),[...(P=(B=L==null?void 0:L.constructor)==null?void 0:B.observedAttributes)!=null?P:[],"autopictureinpicture","disablepictureinpicture","disableremoteplayback","autoplay","controls","controlslist","crossorigin","loop","muted","playsinline","poster","preload","src"]}get nativeEl(){var R,B,P;return(P=(B=(R=O(this,d))!=null?R:this.shadowRoot.querySelector(e))!=null?B:this.querySelector(":scope > [slot=media]"))!=null?P:this.querySelector(e)}set nativeEl(R){de(this,d,R)}get defaultMuted(){return this.hasAttribute("muted")}set defaultMuted(R){this.toggleAttribute("muted",!!R)}get src(){return this.getAttribute("src")}set src(R){this.setAttribute("src",`${R}`)}get preload(){var R,B;return(B=this.getAttribute("preload"))!=null?B:(R=this.nativeEl)==null?void 0:R.preload}set preload(R){this.setAttribute("preload",`${R}`)}init(){var R,B;if(!this.nativeEl){let P=document.createElement(e,{is:t});P.part=e,this.shadowRoot.querySelector('slot[name="media"]').append(P)}this.nativeEl.muted=this.hasAttribute("muted");for(let P of F)Et(this,E,y).call(this,P);this.shadowRoot.addEventListener("slotchange",this);for(let P of this.constructor.Events)(B=(R=this.shadowRoot).addEventListener)==null||B.call(R,P,this,!0)}handleEvent(R){if(R.type==="slotchange"){Et(this,f,g).call(this);return}R.target===this.nativeEl&&this.dispatchEvent(new CustomEvent(R.type,{detail:R.detail}))}attributeChangedCallback(R,B,P){Et(this,u,h).call(this),Et(this,S,w).call(this,R,B,P)}connectedCallback(){Et(this,u,h).call(this)}},n=new WeakMap,a=new WeakSet,o=function(){if(O(this,n))return;de(this,n,!0);let R=new Set(this.observedAttributes);R.delete("muted");for(let B of F)if(!(B in this.prototype))if(typeof L[B]=="function")this.prototype[B]=function(...P){return Et(this,u,h).call(this),this.call?this.call(B,...P):this.nativeEl[B].apply(this.nativeEl,P)};else{let P={get(){var $,K,N;Et(this,u,h).call(this);let z=B.toLowerCase();if(R.has(z)){let Y=this.getAttribute(z);return Y===null?!1:Y===""?!0:Y}return(N=($=this.get)==null?void 0:$.call(this,B))!=null?N:(K=this.nativeEl)==null?void 0:K[B]}};B!==B.toUpperCase()&&(P.set=function($){Et(this,u,h).call(this);let K=B.toLowerCase();if(R.has(K)){$===!0||$===!1||$==null?this.toggleAttribute(K,!!$):this.setAttribute(K,$);return}if(this.set){this.set(B,$);return}this.nativeEl[B]=$}),Object.defineProperty(this.prototype,B,P)}},l=new WeakMap,d=new WeakMap,c=new WeakMap,u=new WeakSet,h=function(){O(this,l)||(de(this,l,!0),this.init())},f=new WeakSet,g=function(){let R=new Map(O(this,c));this.shadowRoot.querySelector("slot:not([name])").assignedElements().filter(B=>["track","source"].includes(B.localName)).forEach(B=>{var P,$;R.delete(B);let K=O(this,c).get(B);K||(K=B.cloneNode(),O(this,c).set(B,K)),($=(P=this.nativeEl).append)==null||$.call(P,K),K.localName==="track"&&K.default&&(K.kind==="chapters"||K.kind==="metadata")&&K.track.mode==="disabled"&&(K.track.mode="hidden")}),R.forEach(B=>B.remove())},E=new WeakSet,y=function(R){if(Object.prototype.hasOwnProperty.call(this,R)){let B=this[R];delete this[R],this[R]=B}},S=new WeakSet,w=function(R,B,P){var $,K,N,z,Y,ge;["id","class"].includes(R)||!s.observedAttributes.includes(R)&&this.constructor.observedAttributes.includes(R)||(P===null?(K=($=this.nativeEl).removeAttribute)==null||K.call($,R):((z=(N=this.nativeEl).getAttribute)==null?void 0:z.call(N,R))!=P&&((ge=(Y=this.nativeEl).setAttribute)==null||ge.call(Y,R,P)))},se(s,a),it(s,"Events",Ku),it(s,"template",e.endsWith("audio")?v0:E0),se(s,n,void 0),s};function UR(i){let e=[];for(let t=Object.getPrototypeOf(i);t&&t!==HTMLElement.prototype;t=Object.getPrototypeOf(t))e.push(...Object.getOwnPropertyNames(t));return e}var m0=globalThis.document?V_(HTMLElement,{tag:"video"}):class{},DU=globalThis.document?V_(HTMLElement,{tag:"audio"}):class{},sn=new WeakMap,p0=class extends Error{},FR=class extends Error{},BR=globalThis.WeakRef?class extends Set{add(i){super.add(new WeakRef(i))}forEach(i){super.forEach(e=>{let t=e.deref();t&&i(t)})}}:Set;function $R(i){q_()?Y_()?i(chrome.cast.isAvailable):customElements.whenDefined("google-cast-button").then(()=>i(chrome.cast.isAvailable)):globalThis.__onGCastApiAvailable=()=>{customElements.whenDefined("google-cast-button").then(()=>i(chrome.cast.isAvailable))}}function HR(){return globalThis.chrome}function GR(){let i="https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1";if(globalThis.chrome.cast||document.querySelector(`script[src="${i}"]`))return;let e=document.createElement("script");e.src=i,document.head.append(e)}function q_(){return typeof chrome!="undefined"&&chrome.cast&&chrome.cast.isAvailable}function Y_(){return typeof cast!="undefined"&&cast.framework}function nn(){if(Y_())return cast.framework.CastContext.getInstance()}function U0(){var i;return(i=nn())==null?void 0:i.getCurrentSession()}function F0(){var i;return(i=U0())==null?void 0:i.getSessionObj().media[0]}function WR(i){return new Promise((e,t)=>{F0().editTracksInfo(i,e,t)})}function KR(i){return new Promise((e,t)=>{F0().getStatus(i,e,t)})}function j_(i){return nn().setOptions({...z_(),...i})}function z_(){return{receiverApplicationId:"CC1AD845",autoJoinPolicy:"origin_scoped",androidReceiverCompatible:!1,language:"en-US",resumeSavedSession:!0}}var wu=new BR,ns=new WeakSet,It;$R(i=>{i&&!It&&(It=cast.framework,nn().addEventListener(It.CastContextEventType.CAST_STATE_CHANGED,e=>{wu.forEach(t=>{var r,s;return(s=(r=sn.get(t)).onCastStateChanged)==null?void 0:s.call(r,e)})}),nn().addEventListener(It.CastContextEventType.SESSION_STATE_CHANGED,e=>{wu.forEach(t=>{var r,s;return(s=(r=sn.get(t)).onSessionStateChanged)==null?void 0:s.call(r,e)})}),wu.forEach(e=>{var t,r;return(r=(t=sn.get(e)).init)==null?void 0:r.call(t)}))});var F_=0,Ye,Cu,ki,rs,oa,ra,rn,b0,ss,Ws,y0,B_,Hu,T0,_0,X_,Du,A0,S0,$_,Mu,g0,VR=class extends EventTarget{constructor(i){super(),se(this,ss),se(this,y0),se(this,Hu),se(this,_0),se(this,Du),se(this,S0),se(this,Mu),se(this,Ye,void 0),se(this,Cu,void 0),se(this,ki,void 0),se(this,rs,void 0),se(this,oa,"disconnected"),se(this,ra,!1),se(this,rn,new Set),se(this,b0,new WeakMap),de(this,Ye,i),wu.add(this),sn.set(this,{init:()=>Et(this,Du,A0).call(this),onCastStateChanged:()=>Et(this,Hu,T0).call(this),onSessionStateChanged:()=>Et(this,_0,X_).call(this),getCastPlayer:()=>O(this,ss,Ws)}),Et(this,Du,A0).call(this)}get state(){return O(this,oa)}async watchAvailability(i){if(O(this,Ye).disableRemotePlayback)throw new p0("disableRemotePlayback attribute is present.");return O(this,b0).set(i,++F_),O(this,rn).add(i),F_}async cancelWatchAvailability(i){if(O(this,Ye).disableRemotePlayback)throw new p0("disableRemotePlayback attribute is present.");i?O(this,rn).delete(i):O(this,rn).clear()}async prompt(){var i,e;if(O(this,Ye).disableRemotePlayback)throw new p0("disableRemotePlayback attribute is present.");if(!q_())throw new FR("The RemotePlayback API is disabled on this platform.");let t=ns.has(O(this,Ye));ns.add(O(this,Ye)),j_(O(this,Ye).castOptions),Object.entries(O(this,rs)).forEach(([r,s])=>{O(this,ki).controller.addEventListener(r,s)});try{await nn().requestSession()}catch(r){if(r==="cancel"){t||ns.delete(O(this,Ye));return}throw new Error(r)}(e=(i=sn.get(O(this,Ye)))==null?void 0:i.loadOnPrompt)==null||e.call(i)}};Ye=new WeakMap,Cu=new WeakMap,ki=new WeakMap,rs=new WeakMap,oa=new WeakMap,ra=new WeakMap,rn=new WeakMap,b0=new WeakMap,ss=new WeakSet,Ws=function(){if(ns.has(O(this,Ye)))return O(this,ki)},y0=new WeakSet,B_=function(){ns.has(O(this,Ye))&&(Object.entries(O(this,rs)).forEach(([i,e])=>{O(this,ki).controller.removeEventListener(i,e)}),ns.delete(O(this,Ye)),O(this,Ye).muted=O(this,ki).isMuted,O(this,Ye).currentTime=O(this,ki).savedPlayerState.currentTime,O(this,ki).savedPlayerState.isPaused===!1&&O(this,Ye).play())},Hu=new WeakSet,T0=function(){let i=nn().getCastState();if(ns.has(O(this,Ye))&&i==="CONNECTING"&&(de(this,oa,"connecting"),this.dispatchEvent(new Event("connecting"))),!O(this,ra)&&i!=null&&i.includes("CONNECT")){de(this,ra,!0);for(let e of O(this,rn))e(!0)}else if(O(this,ra)&&(!i||i==="NO_DEVICES_AVAILABLE")){de(this,ra,!1);for(let e of O(this,rn))e(!1)}},_0=new WeakSet,X_=async function(){var i;let{SESSION_RESUMED:e}=It.SessionState;if(nn().getSessionState()===e&&O(this,Ye).castSrc===((i=F0())==null?void 0:i.media.contentId)){ns.add(O(this,Ye)),Object.entries(O(this,rs)).forEach(([t,r])=>{O(this,ki).controller.addEventListener(t,r)});try{await KR(new chrome.cast.media.GetStatusRequest)}catch(t){console.error(t)}O(this,rs)[It.RemotePlayerEventType.IS_PAUSED_CHANGED](),O(this,rs)[It.RemotePlayerEventType.PLAYER_STATE_CHANGED]()}},Du=new WeakSet,A0=function(){!It||O(this,Cu)||(de(this,Cu,!0),j_(O(this,Ye).castOptions),O(this,Ye).textTracks.addEventListener("change",()=>Et(this,Mu,g0).call(this)),Et(this,Hu,T0).call(this),de(this,ki,new It.RemotePlayer),new It.RemotePlayerController(O(this,ki)),de(this,rs,{[It.RemotePlayerEventType.IS_CONNECTED_CHANGED]:({value:i})=>{i===!0?(de(this,oa,"connected"),this.dispatchEvent(new Event("connect"))):(Et(this,y0,B_).call(this),de(this,oa,"disconnected"),this.dispatchEvent(new Event("disconnect")))},[It.RemotePlayerEventType.DURATION_CHANGED]:()=>{O(this,Ye).dispatchEvent(new Event("durationchange"))},[It.RemotePlayerEventType.VOLUME_LEVEL_CHANGED]:()=>{O(this,Ye).dispatchEvent(new Event("volumechange"))},[It.RemotePlayerEventType.IS_MUTED_CHANGED]:()=>{O(this,Ye).dispatchEvent(new Event("volumechange"))},[It.RemotePlayerEventType.CURRENT_TIME_CHANGED]:()=>{var i;(i=O(this,ss,Ws))!=null&&i.isMediaLoaded&&O(this,Ye).dispatchEvent(new Event("timeupdate"))},[It.RemotePlayerEventType.VIDEO_INFO_CHANGED]:()=>{O(this,Ye).dispatchEvent(new Event("resize"))},[It.RemotePlayerEventType.IS_PAUSED_CHANGED]:()=>{O(this,Ye).dispatchEvent(new Event(this.paused?"pause":"play"))},[It.RemotePlayerEventType.PLAYER_STATE_CHANGED]:()=>{var i,e;((i=O(this,ss,Ws))==null?void 0:i.playerState)!==chrome.cast.media.PlayerState.PAUSED&&O(this,Ye).dispatchEvent(new Event({[chrome.cast.media.PlayerState.PLAYING]:"playing",[chrome.cast.media.PlayerState.BUFFERING]:"waiting",[chrome.cast.media.PlayerState.IDLE]:"emptied"}[(e=O(this,ss,Ws))==null?void 0:e.playerState]))},[It.RemotePlayerEventType.IS_MEDIA_LOADED_CHANGED]:async()=>{var i;(i=O(this,ss,Ws))!=null&&i.isMediaLoaded&&(await Promise.resolve(),Et(this,S0,$_).call(this))}}))},S0=new WeakSet,$_=function(){Et(this,Mu,g0).call(this)},Mu=new WeakSet,g0=async function(){var i,e,t,r,s;if(!O(this,ss,Ws))return;let n=((e=(i=O(this,ki).mediaInfo)==null?void 0:i.tracks)!=null?e:[]).filter(({type:h})=>h===chrome.cast.media.TrackType.TEXT),a=[...O(this,Ye).textTracks].filter(({kind:h})=>h==="subtitles"||h==="captions"),o=n.map(({language:h,name:f,trackId:g})=>{var E;let{mode:y}=(E=a.find(S=>S.language===h&&S.label===f))!=null?E:{};return y?{mode:y,trackId:g}:!1}).filter(Boolean),l=o.filter(({mode:h})=>h!=="showing").map(({trackId:h})=>h),d=o.find(({mode:h})=>h==="showing"),c=(s=(r=(t=U0())==null?void 0:t.getSessionObj().media[0])==null?void 0:r.activeTrackIds)!=null?s:[],u=c;if(c.length&&(u=u.filter(h=>!l.includes(h))),d!=null&&d.trackId&&(u=[...u,d.trackId]),u=[...new Set(u)],!((h,f)=>h.length===f.length&&h.every(g=>f.includes(g)))(c,u))try{let h=new chrome.cast.media.EditTracksInfoRequest(u);await WR(h)}catch(h){console.error(h)}};var qR=i=>{var e,t,r,s,n,a,o,l,d;return t=class extends i{constructor(){super(...arguments),se(this,a),se(this,l),se(this,r,{paused:!1}),se(this,s,z_()),se(this,n,void 0)}get remote(){return O(this,n)?O(this,n):HR()?(GR(),sn.set(this,{loadOnPrompt:()=>Et(this,l,d).call(this)}),de(this,n,new VR(this))):super.remote}attributeChangedCallback(c,u,h){if(super.attributeChangedCallback(c,u,h),c==="cast-receiver"&&h){O(this,s).receiverApplicationId=h;return}if(O(this,a,o))switch(c){case"cast-stream-type":case"cast-src":this.load();break}}async load(){var c,u;if(!O(this,a,o))return super.load();let h=new chrome.cast.media.MediaInfo(this.castSrc,this.castContentType),f=[...this.querySelectorAll("track")].filter(({kind:S,src:w})=>w&&(S==="subtitles"||S==="captions")),g=[],E=0;f.length&&(h.tracks=f.map(S=>{let w=++E;g.length===0&&S.track.mode==="showing"&&g.push(w);let L=new chrome.cast.media.Track(w,chrome.cast.media.TrackType.TEXT);return L.trackContentId=S.src,L.trackContentType="text/vtt",L.subtype=S.kind==="captions"?chrome.cast.media.TextTrackType.CAPTIONS:chrome.cast.media.TextTrackType.SUBTITLES,L.name=S.label,L.language=S.srclang,L})),this.castStreamType==="live"?h.streamType=chrome.cast.media.StreamType.LIVE:h.streamType=chrome.cast.media.StreamType.BUFFERED,h.metadata=new chrome.cast.media.GenericMediaMetadata,h.metadata.title=this.title,h.metadata.images=[{url:this.poster}];let y=new chrome.cast.media.LoadRequest(h);y.currentTime=(c=super.currentTime)!=null?c:0,y.autoplay=!O(this,r).paused,y.activeTrackIds=g,await((u=U0())==null?void 0:u.loadMedia(y)),this.dispatchEvent(new Event("volumechange"))}play(){var c;if(O(this,a,o)){O(this,a,o).isPaused&&((c=O(this,a,o).controller)==null||c.playOrPause());return}return super.play()}pause(){var c;if(O(this,a,o)){O(this,a,o).isPaused||(c=O(this,a,o).controller)==null||c.playOrPause();return}super.pause()}get castOptions(){return O(this,s)}get castReceiver(){var c;return(c=this.getAttribute("cast-receiver"))!=null?c:void 0}set castReceiver(c){this.castReceiver!=c&&this.setAttribute("cast-receiver",`${c}`)}get castSrc(){var c,u,h;return(h=(u=this.getAttribute("cast-src"))!=null?u:(c=this.querySelector("source"))==null?void 0:c.src)!=null?h:this.currentSrc}set castSrc(c){this.castSrc!=c&&this.setAttribute("cast-src",`${c}`)}get castContentType(){var c;return(c=this.getAttribute("cast-content-type"))!=null?c:void 0}set castContentType(c){this.setAttribute("cast-content-type",`${c}`)}get castStreamType(){var c,u;return(u=(c=this.getAttribute("cast-stream-type"))!=null?c:this.streamType)!=null?u:void 0}set castStreamType(c){this.setAttribute("cast-stream-type",`${c}`)}get readyState(){if(O(this,a,o))switch(O(this,a,o).playerState){case chrome.cast.media.PlayerState.IDLE:return 0;case chrome.cast.media.PlayerState.BUFFERING:return 2;default:return 3}return super.readyState}get paused(){return O(this,a,o)?O(this,a,o).isPaused:super.paused}get muted(){var c;return O(this,a,o)?(c=O(this,a,o))==null?void 0:c.isMuted:super.muted}set muted(c){var u;if(O(this,a,o)){(c&&!O(this,a,o).isMuted||!c&&O(this,a,o).isMuted)&&((u=O(this,a,o).controller)==null||u.muteOrUnmute());return}super.muted=c}get volume(){var c,u;return O(this,a,o)?(u=(c=O(this,a,o))==null?void 0:c.volumeLevel)!=null?u:1:super.volume}set volume(c){var u;if(O(this,a,o)){O(this,a,o).volumeLevel=+c,(u=O(this,a,o).controller)==null||u.setVolumeLevel();return}super.volume=c}get duration(){var c,u,h;return O(this,a,o)&&(c=O(this,a,o))!=null&&c.isMediaLoaded?(h=(u=O(this,a,o))==null?void 0:u.duration)!=null?h:NaN:super.duration}get currentTime(){var c,u,h;return O(this,a,o)&&(c=O(this,a,o))!=null&&c.isMediaLoaded?(h=(u=O(this,a,o))==null?void 0:u.currentTime)!=null?h:0:super.currentTime}set currentTime(c){var u;if(O(this,a,o)){O(this,a,o).currentTime=c,(u=O(this,a,o).controller)==null||u.seek();return}super.currentTime=c}},r=new WeakMap,s=new WeakMap,n=new WeakMap,a=new WeakSet,o=function(){var c,u;return(u=(c=sn.get(this.remote))==null?void 0:c.getCastPlayer)==null?void 0:u.call(c)},l=new WeakSet,d=async function(){O(this,r).paused=h0(t.prototype,this,"paused"),h0(t.prototype,this,"pause").call(this),this.muted=h0(t.prototype,this,"muted");try{await this.load()}catch(c){console.error(c)}},it(t,"observedAttributes",[...(e=i.observedAttributes)!=null?e:[],"cast-src","cast-content-type","cast-stream-type","cast-receiver"]),t},Vu=class extends Event{constructor(i,e){super(i),it(this,"track"),this.track=e.track}},x0=new WeakMap;function ee(i){var e;return(e=x0.get(i))!=null?e:YR(i,{})}function YR(i,e){let t=x0.get(i);return t||x0.set(i,t={}),Object.assign(t,e)}function I0(i,e){let t=i.videoTracks;ee(e).media=i,ee(e).renditionSet||(ee(e).renditionSet=new Set);let r=ee(t).trackSet;r.add(e);let s=r.size-1;s in L0.prototype||Object.defineProperty(L0.prototype,s,{get(){return[...ee(this).trackSet][s]}}),queueMicrotask(()=>{t.dispatchEvent(new Vu("addtrack",{track:e}))})}function k0(i){var e;let t=(e=ee(i).media)==null?void 0:e.videoTracks;t&&(ee(t).trackSet.delete(i),queueMicrotask(()=>{t.dispatchEvent(new Vu("removetrack",{track:i}))}))}function jR(i){var e;let t=(e=ee(i).media.videoTracks)!=null?e:[],r=!1;for(let s of t)s!==i&&(s.selected=!1,r=!0);if(r){if(ee(t).changeRequested)return;ee(t).changeRequested=!0,queueMicrotask(()=>{delete ee(t).changeRequested,t.dispatchEvent(new Event("change"))})}}var Ks,Vs,qs,sa,No,L0=class extends EventTarget{constructor(){super(),se(this,sa),se(this,Ks,void 0),se(this,Vs,void 0),se(this,qs,void 0),ee(this).trackSet=new Set}[Symbol.iterator](){return O(this,sa,No).values()}get length(){return O(this,sa,No).size}getTrackById(i){var e;return(e=[...O(this,sa,No)].find(t=>t.id===i))!=null?e:null}get selectedIndex(){return[...O(this,sa,No)].findIndex(i=>i.selected)}get onaddtrack(){return O(this,Ks)}set onaddtrack(i){O(this,Ks)&&(this.removeEventListener("addtrack",O(this,Ks)),de(this,Ks,void 0)),typeof i=="function"&&(de(this,Ks,i),this.addEventListener("addtrack",i))}get onremovetrack(){return O(this,Vs)}set onremovetrack(i){O(this,Vs)&&(this.removeEventListener("removetrack",O(this,Vs)),de(this,Vs,void 0)),typeof i=="function"&&(de(this,Vs,i),this.addEventListener("removetrack",i))}get onchange(){return O(this,qs)}set onchange(i){O(this,qs)&&(this.removeEventListener("change",O(this,qs)),de(this,qs,void 0)),typeof i=="function"&&(de(this,qs,i),this.addEventListener("change",i))}};Ks=new WeakMap,Vs=new WeakMap,qs=new WeakMap,sa=new WeakSet,No=function(){return ee(this).trackSet};var qu=class extends Event{constructor(i,e){super(i),it(this,"rendition"),this.rendition=e.rendition}};function zR(i,e){let t=ee(i).media.videoRenditions;ee(e).media=ee(i).media,ee(e).track=i;let r=ee(i).renditionSet;r.add(e);let s=r.size-1;s in R0.prototype||Object.defineProperty(R0.prototype,s,{get(){return na(this)[s]}}),queueMicrotask(()=>{i.selected&&t.dispatchEvent(new qu("addrendition",{rendition:e}))})}function XR(i){let e=ee(i).media.videoRenditions,t=ee(i).track;ee(t).renditionSet.delete(i),queueMicrotask(()=>{ee(i).track.selected&&e.dispatchEvent(new qu("removerendition",{rendition:i}))})}function QR(i){let e=ee(i).media.videoRenditions;!e||ee(e).changeRequested||(ee(e).changeRequested=!0,queueMicrotask(()=>{delete ee(e).changeRequested,ee(i).track.selected&&e.dispatchEvent(new Event("change"))}))}function na(i){return[...ee(i).media.videoTracks].filter(e=>e.selected).flatMap(e=>[...ee(e).renditionSet])}var Ys,js,zs,R0=class extends EventTarget{constructor(){super(...arguments),se(this,Ys,void 0),se(this,js,void 0),se(this,zs,void 0)}[Symbol.iterator](){return na(this).values()}get length(){return na(this).length}getRenditionById(i){var e;return(e=na(this).find(t=>`${t.id}`==`${i}`))!=null?e:null}get selectedIndex(){return na(this).findIndex(i=>i.selected)}set selectedIndex(i){for(let[e,t]of na(this).entries())t.selected=e===i}get onaddrendition(){return O(this,Ys)}set onaddrendition(i){O(this,Ys)&&(this.removeEventListener("addrendition",O(this,Ys)),de(this,Ys,void 0)),typeof i=="function"&&(de(this,Ys,i),this.addEventListener("addrendition",i))}get onremoverendition(){return O(this,js)}set onremoverendition(i){O(this,js)&&(this.removeEventListener("removerendition",O(this,js)),de(this,js,void 0)),typeof i=="function"&&(de(this,js,i),this.addEventListener("removerendition",i))}get onchange(){return O(this,zs)}set onchange(i){O(this,zs)&&(this.removeEventListener("change",O(this,zs)),de(this,zs,void 0)),typeof i=="function"&&(de(this,zs,i),this.addEventListener("change",i))}};Ys=new WeakMap,js=new WeakMap,zs=new WeakMap;var Uo,ZR=class{constructor(){it(this,"src"),it(this,"id"),it(this,"width"),it(this,"height"),it(this,"bitrate"),it(this,"frameRate"),it(this,"codec"),se(this,Uo,!1)}get selected(){return O(this,Uo)}set selected(i){O(this,Uo)!==i&&(de(this,Uo,i),QR(this))}};Uo=new WeakMap;var Fo,Q_=class{constructor(){it(this,"id"),it(this,"kind"),it(this,"label",""),it(this,"language",""),it(this,"sourceBuffer"),se(this,Fo,!1)}addRendition(i,e,t,r,s,n){let a=new ZR;return a.src=i,a.width=e,a.height=t,a.frameRate=n,a.bitrate=s,a.codec=r,zR(this,a),a}removeRendition(i){XR(i)}get selected(){return O(this,Fo)}set selected(i){O(this,Fo)!==i&&(de(this,Fo,i),i===!0&&jR(this))}};Fo=new WeakMap;function JR(i,e){let t=ee(i).media.audioRenditions;ee(e).media=ee(i).media,ee(e).track=i;let r=ee(i).renditionSet;r.add(e);let s=r.size-1;s in w0.prototype||Object.defineProperty(w0.prototype,s,{get(){return aa(this)[s]}}),queueMicrotask(()=>{i.enabled&&t.dispatchEvent(new qu("addrendition",{rendition:e}))})}function ew(i){let e=ee(i).media.audioRenditions,t=ee(i).track;ee(t).renditionSet.delete(i),queueMicrotask(()=>{ee(i).track.enabled&&e.dispatchEvent(new qu("removerendition",{rendition:i}))})}function tw(i){let e=ee(i).media.audioRenditions;!e||ee(e).changeRequested||(ee(e).changeRequested=!0,queueMicrotask(()=>{delete ee(e).changeRequested,ee(i).track.enabled&&e.dispatchEvent(new Event("change"))}))}function aa(i){return[...ee(i).media.audioTracks].filter(e=>e.enabled).flatMap(e=>[...ee(e).renditionSet])}var Xs,Qs,Zs,w0=class extends EventTarget{constructor(){super(...arguments),se(this,Xs,void 0),se(this,Qs,void 0),se(this,Zs,void 0)}[Symbol.iterator](){return aa(this).values()}get length(){return aa(this).length}getRenditionById(i){var e;return(e=aa(this).find(t=>`${t.id}`==`${i}`))!=null?e:null}get selectedIndex(){return aa(this).findIndex(i=>i.selected)}set selectedIndex(i){for(let[e,t]of aa(this).entries())t.selected=e===i}get onaddrendition(){return O(this,Xs)}set onaddrendition(i){O(this,Xs)&&(this.removeEventListener("addrendition",O(this,Xs)),de(this,Xs,void 0)),typeof i=="function"&&(de(this,Xs,i),this.addEventListener("addrendition",i))}get onremoverendition(){return O(this,Qs)}set onremoverendition(i){O(this,Qs)&&(this.removeEventListener("removerendition",O(this,Qs)),de(this,Qs,void 0)),typeof i=="function"&&(de(this,Qs,i),this.addEventListener("removerendition",i))}get onchange(){return O(this,Zs)}set onchange(i){O(this,Zs)&&(this.removeEventListener("change",O(this,Zs)),de(this,Zs,void 0)),typeof i=="function"&&(de(this,Zs,i),this.addEventListener("change",i))}};Xs=new WeakMap,Qs=new WeakMap,Zs=new WeakMap;var Bo,iw=class{constructor(){it(this,"src"),it(this,"id"),it(this,"bitrate"),it(this,"codec"),se(this,Bo,!1)}get selected(){return O(this,Bo)}set selected(i){O(this,Bo)!==i&&(de(this,Bo,i),tw(this))}};Bo=new WeakMap;function C0(i,e){let t=i.audioTracks;ee(e).media=i,ee(e).renditionSet||(ee(e).renditionSet=new Set);let r=ee(t).trackSet;r.add(e);let s=r.size-1;s in M0.prototype||Object.defineProperty(M0.prototype,s,{get(){return[...ee(this).trackSet][s]}}),queueMicrotask(()=>{t.dispatchEvent(new Vu("addtrack",{track:e}))})}function D0(i){var e;let t=(e=ee(i).media)==null?void 0:e.audioTracks;t&&(ee(t).trackSet.delete(i),queueMicrotask(()=>{t.dispatchEvent(new Vu("removetrack",{track:i}))}))}function rw(i){let e=ee(i).media.audioTracks;!e||ee(e).changeRequested||(ee(e).changeRequested=!0,queueMicrotask(()=>{delete ee(e).changeRequested,e.dispatchEvent(new Event("change"))}))}var Js,en,tn,$o,Pu,M0=class extends EventTarget{constructor(){super(),se(this,$o),se(this,Js,void 0),se(this,en,void 0),se(this,tn,void 0),ee(this).trackSet=new Set}[Symbol.iterator](){return O(this,$o,Pu).values()}get length(){return O(this,$o,Pu).size}getTrackById(i){var e;return(e=[...O(this,$o,Pu)].find(t=>t.id===i))!=null?e:null}get onaddtrack(){return O(this,Js)}set onaddtrack(i){O(this,Js)&&(this.removeEventListener("addtrack",O(this,Js)),de(this,Js,void 0)),typeof i=="function"&&(de(this,Js,i),this.addEventListener("addtrack",i))}get onremovetrack(){return O(this,en)}set onremovetrack(i){O(this,en)&&(this.removeEventListener("removetrack",O(this,en)),de(this,en,void 0)),typeof i=="function"&&(de(this,en,i),this.addEventListener("removetrack",i))}get onchange(){return O(this,tn)}set onchange(i){O(this,tn)&&(this.removeEventListener("change",O(this,tn)),de(this,tn,void 0)),typeof i=="function"&&(de(this,tn,i),this.addEventListener("change",i))}};Js=new WeakMap,en=new WeakMap,tn=new WeakMap,$o=new WeakSet,Pu=function(){return ee(this).trackSet};var Ho,Z_=class{constructor(){it(this,"id"),it(this,"kind"),it(this,"label",""),it(this,"language",""),it(this,"sourceBuffer"),se(this,Ho,!1)}addRendition(i,e,t){let r=new iw;return r.src=i,r.codec=e,r.bitrate=t,JR(this,r),r}removeRendition(i){ew(i)}get enabled(){return O(this,Ho)}set enabled(i){O(this,Ho)!==i&&(de(this,Ho,i),rw(this))}};Ho=new WeakMap;var H_=Gu(globalThis.HTMLMediaElement,"video"),G_=Gu(globalThis.HTMLMediaElement,"audio");function sw(i){if(!(i!=null&&i.prototype))return i;let e=Gu(i,"video");(!e||`${e}`.includes("[native code]"))&&Object.defineProperty(i.prototype,"videoTracks",{get(){return nw(this)}});let t=Gu(i,"audio");(!t||`${t}`.includes("[native code]"))&&Object.defineProperty(i.prototype,"audioTracks",{get(){return aw(this)}}),"addVideoTrack"in i.prototype||(i.prototype.addVideoTrack=function(n,a="",o=""){let l=new Q_;return l.kind=n,l.label=a,l.language=o,I0(this,l),l}),"removeVideoTrack"in i.prototype||(i.prototype.removeVideoTrack=k0),"addAudioTrack"in i.prototype||(i.prototype.addAudioTrack=function(n,a="",o=""){let l=new Z_;return l.kind=n,l.label=a,l.language=o,C0(this,l),l}),"removeAudioTrack"in i.prototype||(i.prototype.removeAudioTrack=D0),"videoRenditions"in i.prototype||Object.defineProperty(i.prototype,"videoRenditions",{get(){return r(this)}});let r=n=>{let a=ee(n).videoRenditions;return a||(a=new R0,ee(a).media=n,ee(n).videoRenditions=a),a};"audioRenditions"in i.prototype||Object.defineProperty(i.prototype,"audioRenditions",{get(){return s(this)}});let s=n=>{let a=ee(n).audioRenditions;return a||(a=new w0,ee(a).media=n,ee(n).audioRenditions=a),a};return i}function Gu(i,e){var t;if(i!=null&&i.prototype)return(t=Object.getOwnPropertyDescriptor(i.prototype,`${e}Tracks`))==null?void 0:t.get}function nw(i){var e;let t=ee(i).videoTracks;if(!t&&(t=new L0,ee(i).videoTracks=t,H_)){let r=H_.call((e=i.nativeEl)!=null?e:i);for(let s of r)I0(i,s);r.addEventListener("change",()=>{t.dispatchEvent(new Event("change"))}),r.addEventListener("addtrack",s=>{if([...t].some(n=>n instanceof Q_)){for(let n of r)k0(n);return}I0(i,s.track)}),r.addEventListener("removetrack",s=>{k0(s.track)})}return t}function aw(i){var e;let t=ee(i).audioTracks;if(!t&&(t=new M0,ee(i).audioTracks=t,G_)){let r=G_.call((e=i.nativeEl)!=null?e:i);for(let s of r)C0(i,s);r.addEventListener("change",()=>{t.dispatchEvent(new Event("change"))}),r.addEventListener("addtrack",s=>{if([...t].some(n=>n instanceof Z_)){for(let n of r)D0(n);return}C0(i,s.track)}),r.addEventListener("removetrack",s=>{D0(s.track)})}return t}Ku.push("castchange","entercast","leavecast");var q={BEACON_COLLECTION_DOMAIN:"beacon-collection-domain",CUSTOM_DOMAIN:"custom-domain",DEBUG:"debug",DISABLE_COOKIES:"disable-cookies",ENV_KEY:"env-key",MAX_RESOLUTION:"max-resolution",MIN_RESOLUTION:"min-resolution",RENDITION_ORDER:"rendition-order",METADATA_URL:"metadata-url",PLAYBACK_ID:"playback-id",PLAYER_SOFTWARE_NAME:"player-software-name",PLAYER_SOFTWARE_VERSION:"player-software-version",PREFER_CMCD:"prefer-cmcd",PREFER_PLAYBACK:"prefer-playback",START_TIME:"start-time",STREAM_TYPE:"stream-type",TARGET_LIVE_WINDOW:"target-live-window",LIVE_EDGE_OFFSET:"live-edge-offset",TYPE:"type"},ow=Object.values(q),lw=NR(),dw="mux-video",Er,Go,Ou,Wo,Nu,Uu,Fu,Bu,Ko,$u,cw=class extends m0{constructor(){super(),se(this,Ko),se(this,Er,void 0),se(this,Go,void 0),se(this,Ou,void 0),se(this,Wo,{}),se(this,Nu,void 0),se(this,Uu,void 0),se(this,Fu,void 0),se(this,Bu,void 0),de(this,Ou,x_())}static get observedAttributes(){var i;return[...ow,...(i=m0.observedAttributes)!=null?i:[]]}get preferCmcd(){var i;return(i=this.getAttribute(q.PREFER_CMCD))!=null?i:void 0}set preferCmcd(i){i!==this.preferCmcd&&(i?ia.includes(i)?this.setAttribute(q.PREFER_CMCD,i):console.warn(`Invalid value for preferCmcd. Must be one of ${ia.join()}`):this.removeAttribute(q.PREFER_CMCD))}get playerInitTime(){return O(this,Ou)}get playerSoftwareName(){var i;return(i=O(this,Fu))!=null?i:dw}set playerSoftwareName(i){de(this,Fu,i)}get playerSoftwareVersion(){var i;return(i=O(this,Uu))!=null?i:lw}set playerSoftwareVersion(i){de(this,Uu,i)}get _hls(){var i;return(i=O(this,Er))==null?void 0:i.engine}get mux(){var i;return(i=this.nativeEl)==null?void 0:i.mux}get error(){var i;return(i=I_(this.nativeEl))!=null?i:null}get errorTranslator(){return O(this,Bu)}set errorTranslator(i){de(this,Bu,i)}get src(){return this.getAttribute("src")}set src(i){i!==this.src&&(i==null?this.removeAttribute("src"):this.setAttribute("src",i))}get type(){var i;return(i=this.getAttribute(q.TYPE))!=null?i:void 0}set type(i){i!==this.type&&(i?this.setAttribute(q.TYPE,i):this.removeAttribute(q.TYPE))}get autoplay(){let i=this.getAttribute("autoplay");return i===null?!1:i===""?!0:i}set autoplay(i){let e=this.autoplay;i!==e&&(i?this.setAttribute("autoplay",typeof i=="string"?i:""):this.removeAttribute("autoplay"))}get preload(){let i=this.getAttribute("preload");return i===""?"auto":["none","metadata","auto"].includes(i)?i:super.preload}set preload(i){i!=this.getAttribute("preload")&&(["","none","metadata","auto"].includes(i)?this.setAttribute("preload",i):this.removeAttribute("preload"))}get debug(){return this.getAttribute(q.DEBUG)!=null}set debug(i){i!==this.debug&&(i?this.setAttribute(q.DEBUG,""):this.removeAttribute(q.DEBUG))}get disableCookies(){return this.hasAttribute(q.DISABLE_COOKIES)}set disableCookies(i){i!==this.disableCookies&&(i?this.setAttribute(q.DISABLE_COOKIES,""):this.removeAttribute(q.DISABLE_COOKIES))}get startTime(){let i=this.getAttribute(q.START_TIME);if(i==null)return;let e=+i;return Number.isNaN(e)?void 0:e}set startTime(i){i!==this.startTime&&(i==null?this.removeAttribute(q.START_TIME):this.setAttribute(q.START_TIME,`${i}`))}get playbackId(){var i;return(i=this.getAttribute(q.PLAYBACK_ID))!=null?i:void 0}set playbackId(i){i!==this.playbackId&&(i?this.setAttribute(q.PLAYBACK_ID,i):this.removeAttribute(q.PLAYBACK_ID))}get maxResolution(){var i;return(i=this.getAttribute(q.MAX_RESOLUTION))!=null?i:void 0}set maxResolution(i){i!==this.maxResolution&&(i?this.setAttribute(q.MAX_RESOLUTION,i):this.removeAttribute(q.MAX_RESOLUTION))}get minResolution(){var i;return(i=this.getAttribute(q.MIN_RESOLUTION))!=null?i:void 0}set minResolution(i){i!==this.minResolution&&(i?this.setAttribute(q.MIN_RESOLUTION,i):this.removeAttribute(q.MIN_RESOLUTION))}get renditionOrder(){var i;return(i=this.getAttribute(q.RENDITION_ORDER))!=null?i:void 0}set renditionOrder(i){i!==this.renditionOrder&&(i?this.setAttribute(q.RENDITION_ORDER,i):this.removeAttribute(q.RENDITION_ORDER))}get customDomain(){var i;return(i=this.getAttribute(q.CUSTOM_DOMAIN))!=null?i:void 0}set customDomain(i){i!==this.customDomain&&(i?this.setAttribute(q.CUSTOM_DOMAIN,i):this.removeAttribute(q.CUSTOM_DOMAIN))}get ended(){return c0(this.nativeEl,this._hls)}get envKey(){var i;return(i=this.getAttribute(q.ENV_KEY))!=null?i:void 0}set envKey(i){i!==this.envKey&&(i?this.setAttribute(q.ENV_KEY,i):this.removeAttribute(q.ENV_KEY))}get beaconCollectionDomain(){var i;return(i=this.getAttribute(q.BEACON_COLLECTION_DOMAIN))!=null?i:void 0}set beaconCollectionDomain(i){i!==this.beaconCollectionDomain&&(i?this.setAttribute(q.BEACON_COLLECTION_DOMAIN,i):this.removeAttribute(q.BEACON_COLLECTION_DOMAIN))}get streamType(){var i;return(i=this.getAttribute(q.STREAM_TYPE))!=null?i:xu(this.nativeEl)}set streamType(i){i!==this.streamType&&(i?this.setAttribute(q.STREAM_TYPE,i):this.removeAttribute(q.STREAM_TYPE))}get targetLiveWindow(){return this.hasAttribute(q.TARGET_LIVE_WINDOW)?+this.getAttribute(q.TARGET_LIVE_WINDOW):k_(this.nativeEl)}set targetLiveWindow(i){i!=this.targetLiveWindow&&(i==null?this.removeAttribute(q.TARGET_LIVE_WINDOW):this.setAttribute(q.TARGET_LIVE_WINDOW,`${+i}`))}get liveEdgeStart(){var i,e;if(this.hasAttribute(q.LIVE_EDGE_OFFSET)){let{liveEdgeOffset:t}=this,r=(i=this.nativeEl.seekable.end(0))!=null?i:0,s=(e=this.nativeEl.seekable.start(0))!=null?e:0;return Math.max(s,r-t)}return L_(this.nativeEl)}get liveEdgeOffset(){if(this.hasAttribute(q.LIVE_EDGE_OFFSET))return+this.getAttribute(q.LIVE_EDGE_OFFSET)}set liveEdgeOffset(i){i!=this.targetLiveWindow&&(i==null?this.removeAttribute(q.LIVE_EDGE_OFFSET):this.setAttribute(q.LIVE_EDGE_OFFSET,`${+i}`))}get seekable(){return Mo(this.nativeEl)}async addCuePoints(i){return o0(this.nativeEl,i)}get activeCuePoint(){return l0(this.nativeEl)}get cuePoints(){return y_(this.nativeEl)}getStartDate(){return T_(this.nativeEl,this._hls)}get currentPdt(){return __(this.nativeEl,this._hls)}get preferPlayback(){let i=this.getAttribute(q.PREFER_PLAYBACK);if(i===Ii.MSE||i===Ii.NATIVE)return i}set preferPlayback(i){i!==this.preferPlayback&&(i===Ii.MSE||i===Ii.NATIVE?this.setAttribute(q.PREFER_PLAYBACK,i):this.removeAttribute(q.PREFER_PLAYBACK))}get metadata(){return{...this.getAttributeNames().filter(i=>i.startsWith("metadata-")&&![q.METADATA_URL].includes(i)).reduce((i,e)=>{let t=this.getAttribute(e);return t!=null&&(i[e.replace(/^metadata-/,"").replace(/-/g,"_")]=t),i},{}),...O(this,Wo)}}set metadata(i){de(this,Wo,i!=null?i:{}),this.mux&&this.mux.emit("hb",O(this,Wo))}get _hlsConfig(){return O(this,Nu)}set _hlsConfig(i){de(this,Nu,i)}load(){de(this,Er,C_(this,this.nativeEl,O(this,Er)))}unload(){u0(this.nativeEl,O(this,Er)),de(this,Er,void 0)}attributeChangedCallback(i,e,t){var r,s;switch(m0.observedAttributes.includes(i)&&!["src","autoplay","preload"].includes(i)&&super.attributeChangedCallback(i,e,t),i){case q.PLAYER_SOFTWARE_NAME:this.playerSoftwareName=t!=null?t:void 0;break;case q.PLAYER_SOFTWARE_VERSION:this.playerSoftwareVersion=t!=null?t:void 0;break;case"src":{let n=!!e,a=!!t;!n&&a?Et(this,Ko,$u).call(this):n&&!a?this.unload():n&&a&&(this.unload(),Et(this,Ko,$u).call(this));break}case"autoplay":if(t===e)break;(r=O(this,Er))==null||r.setAutoplay(this.autoplay);break;case"preload":if(t===e)break;(s=O(this,Er))==null||s.setPreload(t);break;case q.PLAYBACK_ID:this.src=Oo(this);break;case q.DEBUG:{let n=this.debug;this.mux&&console.info("Cannot toggle debug mode of mux data after initialization. Make sure you set all metadata to override before setting the src."),this._hls&&(this._hls.config.debug=n);break}case q.METADATA_URL:t&&fetch(t).then(n=>n.json()).then(n=>this.metadata=n).catch(()=>console.error(`Unable to load or parse metadata JSON from metadata-url ${t}!`));break;case q.STREAM_TYPE:(t==null||t!==e)&&this.dispatchEvent(new CustomEvent("streamtypechange",{composed:!0,bubbles:!0}));break;case q.TARGET_LIVE_WINDOW:(t==null||t!==e)&&this.dispatchEvent(new CustomEvent("targetlivewindowchange",{composed:!0,bubbles:!0,detail:this.targetLiveWindow}));break;default:break}}connectedCallback(){var i;(i=super.connectedCallback)==null||i.call(this),this.nativeEl&&this.src&&!O(this,Er)&&Et(this,Ko,$u).call(this)}disconnectedCallback(){this.unload()}};Er=new WeakMap,Go=new WeakMap,Ou=new WeakMap,Wo=new WeakMap,Nu=new WeakMap,Uu=new WeakMap,Fu=new WeakMap,Bu=new WeakMap,Ko=new WeakSet,$u=async function(){O(this,Go)||(await de(this,Go,Promise.resolve()),de(this,Go,null),this.load())};var P0=class extends qR(sw(cw)){};f0.customElements.get("mux-video")||(f0.customElements.define("mux-video",P0),f0.MuxVideoElement=P0);var J_=P0;var uw="en",an={code:uw};var eA="en";function we(i,e=!0){var s,n;let t=e&&(n=(s=an)==null?void 0:s[i])!=null?n:i,r=e?an.code:eA;return new B0(t,r)}var B0=class{constructor(e,t=(r=>(r=an.code)!=null?r:eA)()){this.message=e,this.locale=t}format(e){return this.message.replace(/\{(\w+)\}/g,(t,r)=>{var s;return(s=e[r])!=null?s:""})}toString(){return this.message}};function tA(i){let e="";return Object.entries(i).forEach(([t,r])=>{r!=null&&(e+=`${Yu(t)}: ${r}; `)}),e?e.trim():void 0}function Yu(i){return i.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function ju(i){return i.replace(/[-_]([a-z])/g,(e,t)=>t.toUpperCase())}function br(i){if(i==null)return;let e=+i;return Number.isNaN(e)?void 0:e}function $0(i){let e=hw(i).toString();return e?"?"+e:""}function hw(i){let e={};for(let t in i)i[t]!=null&&(e[t]=i[t]);return new URLSearchParams(e)}function as(i){let e=(i!=null?i:"").split(".")[1];if(!e)return{};let t=e.replace(/-/g,"+").replace(/_/g,"/"),r=decodeURIComponent(atob(t).split("").map(function(s){return"%"+("00"+s.charCodeAt(0).toString(16)).slice(-2)}).join(""));return JSON.parse(r)}var H0=(i,e)=>!i||!e?!1:i.contains(e)?!0:H0(i,e.getRootNode().host);var iA="mux.com",fw=()=>{try{return"2.4.1"}catch{}return"UNKNOWN"},mw=fw(),Xu=()=>mw,rA=(i,{token:e,customDomain:t=iA,thumbnailTime:r}={})=>{let s=e==null?r:void 0,{aud:n}=as(e);if(!(e&&n!=="t"))return`https://image.${t}/${i}/thumbnail.webp${$0({token:e,time:s})}`},sA=(i,{token:e,customDomain:t=iA}={})=>{let{aud:r}=as(e);if(!(e&&r!=="s"))return`https://image.${t}/${i}/storyboard.vtt${$0({token:e,format:"webp"})}`},Vo=i=>{if(i){if([He.LIVE,He.ON_DEMAND].includes(i))return i;if(i!=null&&i.includes("live"))return He.LIVE}};var pw={crossorigin:"crossOrigin",playsinline:"playsInline"};function nA(i){var e;return(e=pw[i])!=null?e:ju(i)}var on,ln,ei,zu=class{constructor(e,t){Tt(this,on,void 0);Tt(this,ln,void 0);Tt(this,ei,[]);vi(this,on,e),vi(this,ln,t)}[Symbol.iterator](){return Be(this,ei).values()}get length(){return Be(this,ei).length}get value(){var e;return(e=Be(this,ei).join(" "))!=null?e:""}set value(e){var t;e!==this.value&&(vi(this,ei,[]),this.add(...(t=e==null?void 0:e.split(" "))!=null?t:[]))}toString(){return this.value}item(e){return Be(this,ei)[e]}values(){return Be(this,ei).values()}keys(){return Be(this,ei).keys()}forEach(e){Be(this,ei).forEach(e)}add(...e){var t,r;e.forEach(s=>{this.contains(s)||Be(this,ei).push(s)}),!(this.value===""&&!((t=Be(this,on))!=null&&t.hasAttribute(`${Be(this,ln)}`)))&&((r=Be(this,on))==null||r.setAttribute(`${Be(this,ln)}`,`${this.value}`))}remove(...e){var t;e.forEach(r=>{Be(this,ei).splice(Be(this,ei).indexOf(r),1)}),(t=Be(this,on))==null||t.setAttribute(`${Be(this,ln)}`,`${this.value}`)}contains(e){return Be(this,ei).includes(e)}toggle(e,t){return typeof t!="undefined"?t?(this.add(e),!0):(this.remove(e),!1):this.contains(e)?(this.remove(e),!1):(this.add(e),!0)}replace(e,t){this.remove(e),this.add(t)}};on=new WeakMap,ln=new WeakMap,ei=new WeakMap;var aA=`[mux-player ${Xu()}]`;function os(...i){console.warn(aA,...i)}function Li(...i){console.error(aA,...i)}function G0(i){var t;let e=(t=i.message)!=null?t:"";if(i.context&&(e+=` ${i.context}`),i.file){let r="https://github.com/muxinc/elements/blob/main/errors/";e+=` ${we("Read more: ")}
1648
+ ${r}${i.file}`}os(e)}var jt={AUTOPLAY:"autoplay",CROSSORIGIN:"crossorigin",LOOP:"loop",MUTED:"muted",PLAYSINLINE:"playsinline",PRELOAD:"preload"},dn={VOLUME:"volume",PLAYBACKRATE:"playbackrate",MUTED:"muted"},lA=Object.freeze({length:0,start(i){let e=i>>>0;if(e>=this.length)throw new DOMException(`Failed to execute 'start' on 'TimeRanges': The index provided (${e}) is greater than or equal to the maximum bound (${this.length}).`);return 0},end(i){let e=i>>>0;if(e>=this.length)throw new DOMException(`Failed to execute 'end' on 'TimeRanges': The index provided (${e}) is greater than or equal to the maximum bound (${this.length}).`);return 0}}),gw=Ku.filter(i=>i!=="error"),vw=Object.values(jt).filter(i=>![jt.PLAYSINLINE].includes(i)),Ew=Object.values(dn);function dA(i){i.querySelectorAll(":scope > track").forEach(e=>{var t;(t=i.media)==null||t.append(e.cloneNode())}),gw.forEach(e=>{var t;(t=i.media)==null||t.addEventListener(e,r=>{i.dispatchEvent(new Event(r.type))})})}var W0=class extends dt.HTMLElement{static get observedAttributes(){return[...vw,...Ew]}constructor(){super(),this.querySelectorAll(":scope > track").forEach(r=>{var s;(s=this.media)==null||s.append(r.cloneNode())});let e=r=>{for(let s of r)s.type==="childList"&&(s.removedNodes.forEach(n=>{var o,l;let a=(o=this.media)==null?void 0:o.querySelector(`track[src="${n.src}"]`);a&&((l=this.media)==null||l.removeChild(a))}),s.addedNodes.forEach(n=>{var a;(a=this.media)==null||a.append(n.cloneNode())}))};new MutationObserver(e).observe(this,{childList:!0,subtree:!0})}attributeChangedCallback(e,t,r){var s,n;switch(e){case dn.MUTED:{this.media&&(this.media.muted=r!=null,this.media.defaultMuted=r!=null);return}case dn.VOLUME:{let a=(s=br(r))!=null?s:1;this.media&&(this.media.volume=a);return}case dn.PLAYBACKRATE:{let a=(n=br(r))!=null?n:1;this.media&&(this.media.playbackRate=a,this.media.defaultPlaybackRate=a);return}}}play(){var e,t;return(t=(e=this.media)==null?void 0:e.play())!=null?t:Promise.reject()}pause(){var e;(e=this.media)==null||e.pause()}requestCast(e){var t;return(t=this.media)==null?void 0:t.requestCast(e)}get media(){var e;return(e=this.shadowRoot)==null?void 0:e.querySelector("mux-video")}get audioTracks(){return this.media.audioTracks}get videoTracks(){return this.media.videoTracks}get audioRenditions(){return this.media.audioRenditions}get videoRenditions(){return this.media.videoRenditions}get paused(){var e,t;return(t=(e=this.media)==null?void 0:e.paused)!=null?t:!0}get duration(){var e,t;return(t=(e=this.media)==null?void 0:e.duration)!=null?t:NaN}get ended(){var e,t;return(t=(e=this.media)==null?void 0:e.ended)!=null?t:!1}get buffered(){var e,t;return(t=(e=this.media)==null?void 0:e.buffered)!=null?t:lA}get seekable(){var e,t;return(t=(e=this.media)==null?void 0:e.seekable)!=null?t:lA}get readyState(){var e,t;return(t=(e=this.media)==null?void 0:e.readyState)!=null?t:0}get videoWidth(){var e,t;return(t=(e=this.media)==null?void 0:e.videoWidth)!=null?t:0}get videoHeight(){var e,t;return(t=(e=this.media)==null?void 0:e.videoHeight)!=null?t:0}get currentTime(){var e,t;return(t=(e=this.media)==null?void 0:e.currentTime)!=null?t:0}set currentTime(e){this.media&&(this.media.currentTime=Number(e))}get volume(){var e,t;return(t=(e=this.media)==null?void 0:e.volume)!=null?t:1}set volume(e){this.media&&(this.media.volume=Number(e))}get playbackRate(){var e,t;return(t=(e=this.media)==null?void 0:e.playbackRate)!=null?t:1}set playbackRate(e){this.media&&(this.media.playbackRate=Number(e))}get defaultPlaybackRate(){var e;return(e=br(this.getAttribute(dn.PLAYBACKRATE)))!=null?e:1}set defaultPlaybackRate(e){e!=null?this.setAttribute(dn.PLAYBACKRATE,`${e}`):this.removeAttribute(dn.PLAYBACKRATE)}get crossOrigin(){return qo(this,jt.CROSSORIGIN)}set crossOrigin(e){this.setAttribute(jt.CROSSORIGIN,`${e}`)}get autoplay(){return qo(this,jt.AUTOPLAY)!=null}set autoplay(e){e?this.setAttribute(jt.AUTOPLAY,typeof e=="string"?e:""):this.removeAttribute(jt.AUTOPLAY)}get loop(){return qo(this,jt.LOOP)!=null}set loop(e){e?this.setAttribute(jt.LOOP,""):this.removeAttribute(jt.LOOP)}get muted(){var e,t;return(t=(e=this.media)==null?void 0:e.muted)!=null?t:!1}set muted(e){this.media&&(this.media.muted=!!e)}get defaultMuted(){return qo(this,jt.MUTED)!=null}set defaultMuted(e){e?this.setAttribute(jt.MUTED,""):this.removeAttribute(jt.MUTED)}get playsInline(){return qo(this,jt.PLAYSINLINE)!=null}set playsInline(e){Li("playsInline is set to true by default and is not currently supported as a setter.")}get preload(){return this.media?this.media.preload:this.getAttribute("preload")}set preload(e){["","none","metadata","auto"].includes(e)?this.setAttribute(jt.PRELOAD,e):this.removeAttribute(jt.PRELOAD)}};function qo(i,e){return i.media?i.media.getAttribute(e):i.getAttribute(e)}var K0=W0;var bw=Object.defineProperty,yw=(i,e,t)=>e in i?bw(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,Tw=(i,e,t)=>(yw(i,typeof e!="symbol"?e+"":e,t),t),mA=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},ke=(i,e,t)=>(mA(i,e,"read from private field"),t?t.call(i):e.get(i)),yr=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},wr=(i,e,t,r)=>(mA(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),la,Qu,cn,Yo,ls,ds,cs,un,da,Zu,Vi,cA=1,uA=0,_w=1,Aw={processCallback(i,e,t){if(t){for(let[r,s]of e)if(r in t){let n=t[r];typeof n=="boolean"&&s instanceof ti&&typeof s.element[s.attributeName]=="boolean"?s.booleanValue=n:typeof n=="function"&&s instanceof ti?s.element[s.attributeName]=n:s.value=n}}}},Cr=class extends k.DocumentFragment{constructor(e,t,r=Aw){var s;super(),yr(this,la,void 0),yr(this,Qu,void 0),this.append(e.content.cloneNode(!0)),wr(this,la,pA(this)),wr(this,Qu,r),(s=r.createCallback)==null||s.call(r,this,ke(this,la),t),r.processCallback(this,ke(this,la),t)}update(e){ke(this,Qu).processCallback(this,ke(this,la),e)}};la=new WeakMap;Qu=new WeakMap;var pA=(i,e=[])=>{let t,r;for(let s of i.attributes||[])if(s.value.includes("{{")){let n=new V0;for([t,r]of fA(s.value))if(!t)n.append(r);else{let a=new ti(i,s.name,s.namespaceURI);n.append(a),e.push([r,a])}s.value=n.toString()}for(let s of i.childNodes)if(s.nodeType===cA&&!(s instanceof HTMLTemplateElement))pA(s,e);else if(s.nodeType===cA||s.data.includes("{{")){let n=[];if(s.data)for([t,r]of fA(s.data))if(!t)n.push(new Text(r));else{let a=new Dr(i);n.push(a),e.push([r,a])}else if(s instanceof HTMLTemplateElement){let a=new jo(i,s);n.push(a),e.push([a.expression,a])}s.replaceWith(...n.flatMap(a=>a.replacementNodes||[a]))}return e},hA={},fA=i=>{let e="",t=0,r=hA[i],s=0,n;if(r)return r;for(r=[];n=i[s];s++)n==="{"&&i[s+1]==="{"&&i[s-1]!=="\\"&&i[s+2]&&++t==1?(e&&r.push([uA,e]),e="",s++):n==="}"&&i[s+1]==="}"&&i[s-1]!=="\\"&&!--t?(r.push([_w,e.trim()]),e="",s++):e+=n||"";return e&&r.push([uA,(t>0?"{{":"")+e]),hA[i]=r},Sw=11,Ju=class{get value(){return""}set value(e){}toString(){return this.value}},gA=new WeakMap,V0=class{constructor(){yr(this,cn,[])}[Symbol.iterator](){return ke(this,cn).values()}get length(){return ke(this,cn).length}item(e){return ke(this,cn)[e]}append(...e){for(let t of e)t instanceof ti&&gA.set(t,this),ke(this,cn).push(t)}toString(){return ke(this,cn).join("")}};cn=new WeakMap;var ti=class extends Ju{constructor(e,t,r){super(),yr(this,un),yr(this,Yo,""),yr(this,ls,void 0),yr(this,ds,void 0),yr(this,cs,void 0),wr(this,ls,e),wr(this,ds,t),wr(this,cs,r)}get attributeName(){return ke(this,ds)}get attributeNamespace(){return ke(this,cs)}get element(){return ke(this,ls)}get value(){return ke(this,Yo)}set value(e){ke(this,Yo)!==e&&(wr(this,Yo,e),!ke(this,un,da)||ke(this,un,da).length===1?e==null?ke(this,ls).removeAttributeNS(ke(this,cs),ke(this,ds)):ke(this,ls).setAttributeNS(ke(this,cs),ke(this,ds),e):ke(this,ls).setAttributeNS(ke(this,cs),ke(this,ds),ke(this,un,da)))}get booleanValue(){return ke(this,ls).hasAttributeNS(ke(this,cs),ke(this,ds))}set booleanValue(e){if(!ke(this,un,da)||ke(this,un,da).length===1)this.value=e?"":null;else throw new DOMException("Value is not fully templatized")}};Yo=new WeakMap;ls=new WeakMap;ds=new WeakMap;cs=new WeakMap;un=new WeakSet;da=function(){return gA.get(this)};var Dr=class extends Ju{constructor(e,t){super(),yr(this,Zu,void 0),yr(this,Vi,void 0),wr(this,Zu,e),wr(this,Vi,t?[...t]:[new Text])}get replacementNodes(){return ke(this,Vi)}get parentNode(){return ke(this,Zu)}get nextSibling(){return ke(this,Vi)[ke(this,Vi).length-1].nextSibling}get previousSibling(){return ke(this,Vi)[0].previousSibling}get value(){return ke(this,Vi).map(e=>e.textContent).join("")}set value(e){this.replace(e)}replace(...e){let t=e.flat().flatMap(r=>r==null?[new Text]:r.forEach?[...r]:r.nodeType===Sw?[...r.childNodes]:r.nodeType?[r]:[new Text(r)]);t.length||t.push(new Text),wr(this,Vi,xw(ke(this,Vi)[0].parentNode,ke(this,Vi),t,this.nextSibling))}};Zu=new WeakMap;Vi=new WeakMap;var jo=class extends Dr{constructor(e,t){let r=t.getAttribute("directive")||t.getAttribute("type"),s=t.getAttribute("expression")||t.getAttribute(r)||"";s.startsWith("{{")&&(s=s.trim().slice(2,-2).trim()),super(e),Tw(this,"directive"),this.expression=s,this.template=t,this.directive=r}};function xw(i,e,t,r=null){let s=0,n,a,o,l=t.length,d=e.length;for(;s<l&&s<d&&e[s]==t[s];)s++;for(;s<l&&s<d&&t[l-1]==e[d-1];)r=t[--d,--l];if(s==d)for(;s<l;)i.insertBefore(t[s++],r);if(s==l)for(;s<d;)i.removeChild(e[s++]);else{for(n=e[s];s<l;)o=t[s++],a=n?n.nextSibling:r,n==o?n=a:s<l&&t[s]==a?(i.replaceChild(o,n),n=a):i.insertBefore(o,n);for(;n!=r;)a=n.nextSibling,i.removeChild(n),n=a}return t}var vA={string:i=>String(i)},th=class{constructor(e){this.template=e,this.state=void 0}},hn=new WeakMap,fn=new WeakMap,q0={partial:(i,e)=>{e[i.expression]=new th(i.template)},if:(i,e)=>{var t;if(bA(i.expression,e))if(hn.get(i)!==i.template){hn.set(i,i.template);let r=new Cr(i.template,e,ih);i.replace(r),fn.set(i,r)}else(t=fn.get(i))==null||t.update(e);else i.replace(""),hn.delete(i),fn.delete(i)}},Iw=Object.keys(q0),ih={processCallback(i,e,t){var r,s;if(t)for(let[n,a]of e){if(a instanceof jo){if(!a.directive){let l=Iw.find(d=>a.template.hasAttribute(d));l&&(a.directive=l,a.expression=a.template.getAttribute(l))}(r=q0[a.directive])==null||r.call(q0,a,t);continue}let o=bA(n,t);if(o instanceof th){hn.get(a)!==o.template?(hn.set(a,o.template),o=new Cr(o.template,o.state,ih),a.value=o,fn.set(a,o)):(s=fn.get(a))==null||s.update(o.state);continue}o?(a instanceof ti&&a.attributeName.startsWith("aria-")&&(o=String(o)),a instanceof ti?typeof o=="boolean"?a.booleanValue=o:typeof o=="function"?a.element[a.attributeName]=o:a.value=o:(a.value=o,hn.delete(a),fn.delete(a))):a instanceof ti?a.value=void 0:(a.value=void 0,hn.delete(a),fn.delete(a))}}},EA={"!":i=>!i,"!!":i=>!!i,"==":(i,e)=>i==e,"!=":(i,e)=>i!=e,">":(i,e)=>i>e,">=":(i,e)=>i>=e,"<":(i,e)=>i<e,"<=":(i,e)=>i<=e,"??":(i,e)=>i!=null?i:e,"|":(i,e)=>{var t;return(t=vA[e])==null?void 0:t.call(vA,i)}};function kw(i){return Lw(i,{boolean:/true|false/,number:/-?\d+\.?\d*/,string:/(["'])((?:\\.|[^\\])*?)\1/,operator:/[!=><][=!]?|\?\?|\|/,ws:/\s+/,param:/[$a-z_][$\w]*/i}).filter(({type:e})=>e!=="ws")}function bA(i,e={}){var t,r,s,n,a,o,l;let d=kw(i);if(d.length===0||d.some(({type:c})=>!c))return zo(i);if(((t=d[0])==null?void 0:t.token)===">"){let c=e[(r=d[1])==null?void 0:r.token];if(!c)return zo(i);let u={...e};c.state=u;let h=d.slice(2);for(let f=0;f<h.length;f+=3){let g=(s=h[f])==null?void 0:s.token,E=(n=h[f+1])==null?void 0:n.token,y=(a=h[f+2])==null?void 0:a.token;g&&E==="="&&(u[g]=Xo(y,e))}return c}if(d.length===1)return eh(d[0])?Xo(d[0].token,e):zo(i);if(d.length===2){let c=(o=d[0])==null?void 0:o.token,u=EA[c];if(!u||!eh(d[1]))return zo(i);let h=Xo(d[1].token,e);return u(h)}if(d.length===3){let c=(l=d[1])==null?void 0:l.token,u=EA[c];if(!u||!eh(d[0])||!eh(d[2]))return zo(i);let h=Xo(d[0].token,e);if(c==="|")return u(h,d[2].token);let f=Xo(d[2].token,e);return u(h,f)}}function zo(i){return console.warn(`Warning: invalid expression \`${i}\``),!1}function eh({type:i}){return["number","boolean","string","param"].includes(i)}function Xo(i,e){let t=i[0],r=i.slice(-1);return i==="true"||i==="false"?i==="true":t===r&&["'",'"'].includes(t)?i.slice(1,-1):bl(i)?parseFloat(i):e[i]}function Lw(i,e){let t,r,s,n=[];for(;i;){s=null,t=i.length;for(let a in e)r=e[a].exec(i),r&&r.index<t&&(s={token:r[0],type:a,matches:r.slice(1)},t=r.index);t&&n.push({token:i.substr(0,t),type:void 0}),s&&n.push(s),i=i.substr(t+(s?s.token.length:0))}return n}var Rw=Object.defineProperty,ww=(i,e,t)=>e in i?Rw(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,Zo=(i,e,t)=>(ww(i,typeof e!="symbol"?e+"":e,t),t),Z0=(i,e,t)=>{if(!e.has(i))throw TypeError("Cannot "+t)},z0=(i,e,t)=>(Z0(i,e,"read from private field"),t?t.call(i):e.get(i)),Qo=(i,e,t)=>{if(e.has(i))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(i):e.set(i,t)},mn=(i,e,t,r)=>(Z0(i,e,"write to private field"),r?r.call(i,t):e.set(i,t),t),Y0=(i,e,t)=>(Z0(i,e,"access private method"),t),ca,rh,ua,X0,yA,sh,Q0,j0={mediatargetlivewindow:"targetlivewindow",mediastreamtype:"streamtype"},TA=W.createElement("template");TA.innerHTML=`
1649
1649
  <style>
1650
1650
  :host {
1651
1651
  display: inline-block;
@@ -1907,7 +1907,7 @@ media-poster-image:not([src]):not([placeholdersrc]) {
1907
1907
  </svg>
1908
1908
  </button>
1909
1909
  </slot>
1910
- `;var Jo=class extends J0{constructor(){var e,t;super(),(t=(e=this.shadowRoot)==null?void 0:e.querySelector(".close"))==null||t.addEventListener("click",()=>{this.close()})}};Jo.template=kA;dt.customElements.get("mxp-dialog")||(dt.customElements.define("mxp-dialog",Jo),dt.MxpDialog=Jo);var el=new WeakMap,tv=class i{constructor(e,t){this.element=e;this.type=t;this.element.addEventListener(this.type,this);let r=el.get(this.element);r&&r.set(this.type,this)}set(e){if(typeof e=="function")this.handleEvent=e.bind(this.element);else if(typeof e=="object"&&typeof e.handleEvent=="function")this.handleEvent=e.handleEvent.bind(e);else{this.element.removeEventListener(this.type,this);let t=el.get(this.element);t&&t.delete(this.type)}}static for(e){el.has(e.element)||el.set(e.element,new Map);let t=e.attributeName.slice(2),r=el.get(e.element);return r&&r.has(t)?r.get(t):new i(e.element,t)}};function Ow(i,e){return i instanceof ei&&i.attributeName.startsWith("on")?(tv.for(i).set(e),i.element.removeAttributeNS(i.attributeNamespace,i.attributeName),!0):!1}function Nw(i,e){return e instanceof nh&&i instanceof Dr?(e.renderInto(i),!0):!1}function Uw(i,e){return e instanceof DocumentFragment&&i instanceof Dr?(e.childNodes.length&&i.replace(...e.childNodes),!0):!1}function Fw(i,e){if(i instanceof ei){let t=i.attributeNamespace,r=i.element.getAttributeNS(t,i.attributeName);return String(e)!==r&&(i.value=String(e)),!0}return i.value=String(e),!0}function Bw(i,e){if(i instanceof ei&&e instanceof Element){let t=i.element;return t[i.attributeName]!==e&&(i.element.removeAttributeNS(i.attributeNamespace,i.attributeName),t[i.attributeName]=e),!0}return!1}function $w(i,e){if(typeof e=="boolean"&&i instanceof ei){let t=i.attributeNamespace,r=i.element.hasAttributeNS(t,i.attributeName);return e!==r&&(i.booleanValue=e),!0}return!1}function Hw(i,e){return e===!1&&i instanceof Dr?(i.replace(""),!0):!1}function Gw(i,e){Bw(i,e)||$w(i,e)||Ow(i,e)||Hw(i,e)||Nw(i,e)||Uw(i,e)||Fw(i,e)}var ev=new Map,LA=new WeakMap,RA=new WeakMap,nh=class{constructor(e,t,r){this.strings=e;this.values=t;this.processor=r;this.stringsKey=this.strings.join("")}get template(){if(ev.has(this.stringsKey))return ev.get(this.stringsKey);{let e=di.createElement("template"),t=this.strings.length-1;return e.innerHTML=this.strings.reduce((r,s,n)=>r+s+(n<t?`{{ ${n} }}`:""),""),ev.set(this.stringsKey,e),e}}renderInto(e){var s;let t=this.template;if(LA.get(e)!==t){LA.set(e,t);let n=new Cr(t,this.values,this.processor);RA.set(e,n),e instanceof Dr?e.replace(...n.children):e.appendChild(n);return}let r=RA.get(e);(s=r==null?void 0:r.update)==null||s.call(r,this.values)}},Ww={processCallback(i,e,t){var r;if(t){for(let[s,n]of e)if(s in t){let a=(r=t[s])!=null?r:"";Gw(n,a)}}}};function Mr(i,...e){return new nh(i,e,Ww)}function wA(i,e){i.renderInto(e)}var CA=i=>Mr`
1910
+ `;var Jo=class extends J0{constructor(){var e,t;super(),(t=(e=this.shadowRoot)==null?void 0:e.querySelector(".close"))==null||t.addEventListener("click",()=>{this.close()})}};Jo.template=kA;dt.customElements.get("mxp-dialog")||(dt.customElements.define("mxp-dialog",Jo),dt.MxpDialog=Jo);var el=new WeakMap,tv=class i{constructor(e,t){this.element=e;this.type=t;this.element.addEventListener(this.type,this);let r=el.get(this.element);r&&r.set(this.type,this)}set(e){if(typeof e=="function")this.handleEvent=e.bind(this.element);else if(typeof e=="object"&&typeof e.handleEvent=="function")this.handleEvent=e.handleEvent.bind(e);else{this.element.removeEventListener(this.type,this);let t=el.get(this.element);t&&t.delete(this.type)}}static for(e){el.has(e.element)||el.set(e.element,new Map);let t=e.attributeName.slice(2),r=el.get(e.element);return r&&r.has(t)?r.get(t):new i(e.element,t)}};function Ow(i,e){return i instanceof ti&&i.attributeName.startsWith("on")?(tv.for(i).set(e),i.element.removeAttributeNS(i.attributeNamespace,i.attributeName),!0):!1}function Nw(i,e){return e instanceof nh&&i instanceof Dr?(e.renderInto(i),!0):!1}function Uw(i,e){return e instanceof DocumentFragment&&i instanceof Dr?(e.childNodes.length&&i.replace(...e.childNodes),!0):!1}function Fw(i,e){if(i instanceof ti){let t=i.attributeNamespace,r=i.element.getAttributeNS(t,i.attributeName);return String(e)!==r&&(i.value=String(e)),!0}return i.value=String(e),!0}function Bw(i,e){if(i instanceof ti&&e instanceof Element){let t=i.element;return t[i.attributeName]!==e&&(i.element.removeAttributeNS(i.attributeNamespace,i.attributeName),t[i.attributeName]=e),!0}return!1}function $w(i,e){if(typeof e=="boolean"&&i instanceof ti){let t=i.attributeNamespace,r=i.element.hasAttributeNS(t,i.attributeName);return e!==r&&(i.booleanValue=e),!0}return!1}function Hw(i,e){return e===!1&&i instanceof Dr?(i.replace(""),!0):!1}function Gw(i,e){Bw(i,e)||$w(i,e)||Ow(i,e)||Hw(i,e)||Nw(i,e)||Uw(i,e)||Fw(i,e)}var ev=new Map,LA=new WeakMap,RA=new WeakMap,nh=class{constructor(e,t,r){this.strings=e;this.values=t;this.processor=r;this.stringsKey=this.strings.join("")}get template(){if(ev.has(this.stringsKey))return ev.get(this.stringsKey);{let e=di.createElement("template"),t=this.strings.length-1;return e.innerHTML=this.strings.reduce((r,s,n)=>r+s+(n<t?`{{ ${n} }}`:""),""),ev.set(this.stringsKey,e),e}}renderInto(e){var s;let t=this.template;if(LA.get(e)!==t){LA.set(e,t);let n=new Cr(t,this.values,this.processor);RA.set(e,n),e instanceof Dr?e.replace(...n.children):e.appendChild(n);return}let r=RA.get(e);(s=r==null?void 0:r.update)==null||s.call(r,this.values)}},Ww={processCallback(i,e,t){var r;if(t){for(let[s,n]of e)if(s in t){let a=(r=t[s])!=null?r:"";Gw(n,a)}}}};function Mr(i,...e){return new nh(i,e,Ww)}function wA(i,e){i.renderInto(e)}var CA=i=>Mr`
1911
1911
  <style>
1912
1912
  ${_A}
1913
1913
  </style>