UNPKG

shaka-player

Version:
125 lines (124 loc) 499 kB
/* @license Shaka Player Copyright 2016 Google LLC SPDX-License-Identifier: Apache-2.0 */ (function(){var innerGlobal=typeof window!="undefined"?window:global;var exportTo={};(function(window,global,module){/* Copyright The Closure Library Authors. SPDX-License-Identifier: Apache-2.0 */ var aa,ba=typeof Object.defineProperties=="function"?Object.defineProperty:function(a,b,c){if(a==Array.prototype||a==Object.prototype)return a;a[b]=c.value;return a};function ea(a){a=["object"==typeof globalThis&&globalThis,a,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var b=0;b<a.length;++b){var c=a[b];if(c&&c.Math==Math)return c}throw Error("Cannot find global object");}var fa=ea(this); function ha(a,b){if(b)a:{var c=fa;a=a.split(".");for(var d=0;d<a.length-1;d++){var e=a[d];if(!(e in c))break a;c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&b!=null&&ba(c,a,{configurable:!0,writable:!0,value:b})}}ha("Promise.withResolvers",function(a){return a?a:function(){var b,c;return{promise:new Promise(function(d,e){b=d;c=e}),resolve:b,reject:c}}});var ia=this||self; function w(a,b){a=a.split(".");var c=ia;a[0]in c||typeof c.execScript=="undefined"||c.execScript("var "+a[0]);for(var d;a.length&&(d=a.shift());)a.length||b===void 0?c[d]&&c[d]!==Object.prototype[d]?c=c[d]:c=c[d]={}:c[d]=b};/* @license Shaka Player Copyright 2016 Google LLC SPDX-License-Identifier: Apache-2.0 */ function ja(a){return a.h/(1-Math.pow(a.g,a.j))}var ka=class{constructor(a){this.i=Math.log(.5);this.g=Math.exp(this.i/a);this.j=this.h=0}sample(a,b){const c=Math.pow(this.g,a);b=b*(1-c)+c*this.h;isNaN(b)||(this.h=b,this.j+=a)}};var la=class{constructor(){this.h=new ka(2);this.j=new ka(5);this.g=0;this.i=128E3;this.l=16E3}configure(a){this.i=a.minTotalBytes;this.l=a.minBytes;var b=this.h;b.g=Math.exp(b.i/a.fastHalfLife);b=this.j;b.g=Math.exp(b.i/a.slowHalfLife)}sample(a,b){if(!(b<this.l)){var c=8E3*b/a;a/=1E3;this.g+=b;this.h.sample(a,c);this.j.sample(a,c)}}getBandwidthEstimate(a){return this.g<this.i?a:Math.min(ja(this.h),ja(this.j))}};function ma(){}function oa(){}function qa(a,...b){ra.has(a)||(ra.add(a),oa(...b))}function ta(){}function ua(){}var ra=new Set;window.console&&((new Map).set(1,(...a)=>console.error(...a)).set(2,(...a)=>console.warn(...a)).set(3,(...a)=>console.info(...a)).set(4,(...a)=>console.log(...a)).set(5,(...a)=>console.debug(...a)).set(6,(...a)=>console.debug(...a)),oa=(...a)=>{console.warn(...a)},ma=(...a)=>{console.error(...a)});function va(a,b){return typeof a==="number"&&typeof b==="number"&&isNaN(a)&&isNaN(b)?!0:a===b}function wa(a,b){b=a.indexOf(b);b>-1&&a.splice(b,1)}function ya(a,b){var c;c||=va;if(a.length!=b.length)return!1;b=b.slice();for(const d of a){a=b.findIndex(e=>c(d,e));if(a==-1)return!1;b[a]=b[b.length-1];b.pop()}return b.length==0}function za(a,b){let c=0,d=a.length;for(;c<d;){const e=c+d>>>1;b(a[e])?c=e+1:d=e}return c} function Aa(a,b,c){if(a===b)return!0;if(!a||!b)return a==b;c||=va;if(a.length!=b.length)return!1;for(let d=0;d<a.length;d++)if(!c(a[d],b[d]))return!1;return!0};var Ba=class{constructor(){this.g=new Map}push(a,b){this.g.getOrInsertComputed(a,()=>[]).push(b)}get(a){return this.g.has(a)?this.g.get(a).slice():null}remove(a,b){if(this.g.has(a)){var c=this.g.get(a).filter(d=>d!=b);this.g.set(a,c);c.length||this.g.delete(a)}}forEach(a){this.g.forEach((b,c)=>{a(c,b)})}size(){return this.g.size}keys(){return Array.from(this.g.keys())}};var Da=class{constructor(){this.g=new Ba}release(){this.Ga();this.g=null}H(a,b,c,d){this.g&&(a=new Ca(a,b,c,d),this.g.push(b,a))}Da(a,b,c,d){const e=f=>{this.bb(a,b,e);c(f)};this.H(a,b,e,d)}rb(a,b,c,d){if(this.g)for(const e of b)this.H(a,e,c,d)}eh(a,b,c,d){if(this.g){var e=!1,f=g=>{if(!e){e=!0;for(const h of b)this.bb(a,h,f);c(g)}};for(const g of b)this.H(a,g,f,d)}}bb(a,b,c){if(this.g){var d=this.g.get(b)||[];for(const e of d)e.target!=a||c!=e.listener&&c||(e.bb(),this.g.remove(b,e))}}Ga(){if(this.g){var a= this.g;const b=[];for(const c of a.g.values())b.push(...c);a=b;for(const c of a)c.bb();this.g.g.clear()}}};w("shaka.util.EventManager",Da);Da.prototype.removeAll=Da.prototype.Ga;Da.prototype.unlisten=Da.prototype.bb;Da.prototype.listenOnceMulti=Da.prototype.eh;Da.prototype.listenMulti=Da.prototype.rb;Da.prototype.listenOnce=Da.prototype.Da;Da.prototype.listen=Da.prototype.H;Da.prototype.release=Da.prototype.release; function Ea(a,b){if(b==void 0)return!1;if(typeof b=="boolean")return b;const c=new Set(["passive","capture"]);Object.keys(b).filter(d=>!c.has(d));return Fa(a)?b:b.capture||!1}function Fa(a){let b=Ga;if(b==void 0){b=!1;try{const d={};var c={get:()=>{b=!0;return!1}};Object.defineProperty(d,"passive",c);Object.defineProperty(d,"capture",c);c=()=>{};a.addEventListener("test",c,d);a.removeEventListener("test",c,d)}catch(d){b=!1}Ga=b}return b||!1} var Ca=class{constructor(a,b,c,d){this.target=a;this.type=b;this.listener=c;this.g=Ea(a,d);this.target.addEventListener(b,c,this.g)}bb(){this.target.removeEventListener(this.type,this.listener,this.g);this.listener=this.target=null;this.g=!1}},Ga=void 0;var x=class{constructor(a){this.h=a;this.g=void 0}value(){this.g===void 0&&(this.g=this.h());return this.g}};function D(){return Ha.value()}var Ia=null,Ja=null,Ha=new x(()=>{let a=void 0;Ia&&(a=Ia());!a&&Ja&&(a=Ja());return a});/* @license Copyright 2006 The Closure Library Authors SPDX-License-Identifier: Apache-2.0 */ var Ka=RegExp("^(?:([^:/?#.]+):)?(?://(?:([^/?#]*)@)?([^/#?]*?)(?::([0-9]+))?(?=[/#?]|$))?([^?#]+)?(?:\\?([^#]*))?(?:#(.*))?$");function La(a){var b;a instanceof La?(Ma(this,a.xb),this.bc=a.bc,Na(this,a.$a),Oa(this,a.vc),this.wb=a.wb,Pa(this,a.g.clone()),this.Rb=a.Rb):a&&(b=String(a).match(Ka))?(Ma(this,b[1]||"",!0),this.bc=Qa(b[2]||""),Na(this,b[3]||"",!0),Oa(this,b[4]),this.wb=Qa(b[5]||"",!0),Pa(this,b[6]||"",!0),this.Rb=Qa(b[7]||"")):this.g=new Ra(null)}aa=La.prototype;aa.xb="";aa.bc="";aa.$a="";aa.vc=null;aa.wb="";aa.Rb=""; aa.toString=function(){var a=[],b=this.xb;b&&a.push(Sa(b,Ta,!0),":");if(b=this.$a){a.push("//");var c=this.bc;c&&a.push(Sa(c,Ta,!0),"@");a.push(encodeURIComponent(b).replace(/%25([0-9a-fA-F]{2})/g,"%$1"));b=this.vc;b!=null&&a.push(":",String(b))}if(b=this.wb)this.$a&&b.charAt(0)!="/"&&a.push("/"),a.push(Sa(b,b.charAt(0)=="/"?Ua:Va,!0));(b=this.g.toString())&&a.push("?",b);(b=this.Rb)&&a.push("#",Sa(b,Wa));return a.join("")}; aa.resolve=function(a){var b=this.clone();b.xb==="data"&&(b=new La);var c=!!a.xb;c?Ma(b,a.xb):c=!!a.bc;c?b.bc=a.bc:c=!!a.$a;c?Na(b,a.$a):c=a.vc!=null;var d=a.wb;if(c)Oa(b,a.vc);else if(c=!!a.wb){if(d.charAt(0)!="/")if(this.$a&&!this.wb)d="/"+d;else{var e=b.wb.lastIndexOf("/");e!=-1&&(d=b.wb.substr(0,e+1)+d)}if(d==".."||d==".")d="";else if(d.indexOf("./")!=-1||d.indexOf("/.")!=-1){e=d.lastIndexOf("/",0)==0;d=d.split("/");for(var f=[],g=0;g<d.length;){var h=d[g++];h=="."?e&&g==d.length&&f.push(""): h==".."?((f.length>1||f.length==1&&f[0]!="")&&f.pop(),e&&g==d.length&&f.push("")):(f.push(h),e=!0)}d=f.join("/")}}c?b.wb=d:c=a.g.toString()!=="";c?Pa(b,a.g.clone()):c=!!a.Rb;c&&(b.Rb=a.Rb);return b};aa.clone=function(){return new La(this)};function Ma(a,b,c){a.xb=c?Qa(b,!0):b;a.xb&&(a.xb=a.xb.replace(/:$/,""))}function Na(a,b,c){a.$a=c?Qa(b,!0):b}function Oa(a,b){if(b){b=Number(b);if(isNaN(b)||b<0)throw Error("Bad port number "+b);a.vc=b}else a.vc=null} function Pa(a,b,c){b instanceof Ra?a.g=b:(c||(b=Sa(b,Xa)),a.g=new Ra(b))}function Qa(a,b){return a?b?decodeURI(a):decodeURIComponent(a):""}function Sa(a,b,c){return a!=null?(a=encodeURI(a).replace(b,Ya),c&&(a=a.replace(/%25([0-9a-fA-F]{2})/g,"%$1")),a):null}function Ya(a){a=a.charCodeAt(0);return"%"+(a>>4&15).toString(16)+(a&15).toString(16)}var Ta=/[#\/\?@]/g,Va=/[#\?:]/g,Ua=/[#\?]/g,Xa=/[#\?@]/g,Wa=/#/g;function Ra(a){this.g=a||null} function Za(a){if(!a.Na&&(a.Na=new Map,a.Bc=0,a.g))for(var b=a.g.split("&"),c=0;c<b.length;c++){var d=b[c].indexOf("="),e=null;if(d>=0){var f=b[c].substring(0,d);e=b[c].substring(d+1)}else f=b[c];f=decodeURIComponent(f);e=e||"";a.add(f,decodeURIComponent(e))}}aa=Ra.prototype;aa.Na=null;aa.Bc=null;aa.add=function(a,b){Za(this);this.g=null;var c=this.Na.has(a)?this.Na.get(a):null;c||this.Na.set(a,c=[]);c.push(b);this.Bc++;return this}; aa.set=function(a,b){Za(this);this.g=null;this.Na.has(a)?this.Na.set(a,[b]):this.add(a,b);return this};aa.get=function(a){Za(this);return this.Na.get(a)||[]};aa.toString=function(){if(this.g)return this.g;if(!this.Na||!this.Na.size)return"";var a=[];for(const f of this.Na.keys())for(var b=encodeURIComponent(f),c=this.Na.get(f),d=0;d<c.length;d++){var e=b;c[d]!==""&&(e+="="+encodeURIComponent(c[d]));a.push(e)}return this.g=a.join("&")}; aa.clone=function(){var a=new Ra;a.g=this.g;if(this.Na){var b=new Map;for(const [c,d]of this.Na)b.set(c,d.concat());a.Na=b;a.Bc=this.Bc}return a};function $a(a,b){if(!a&&!b)return!0;if(!a||!b||a.byteLength!=b.byteLength)return!1;if((ArrayBuffer.isView(a)?a.buffer:a)==(ArrayBuffer.isView(b)?b.buffer:b)&&(a.byteOffset||0)==(b.byteOffset||0))return!0;const c=F(a);b=F(b);for(let d=0;d<a.byteLength;d++)if(c[d]!=b[d])return!1;return!0}function F(a,b=0,c=Infinity){return ab(a,b,c,Uint8Array)}function bb(a){return ArrayBuffer.isView(a)?a.byteOffset==0&&a.byteLength==a.buffer.byteLength?a.buffer:(new Uint8Array(a)).buffer:a} function ab(a,b,c,d){const e=ArrayBuffer.isView(a)?a.buffer:a;let f=1;"BYTES_PER_ELEMENT"in d&&(f=d.BYTES_PER_ELEMENT);const g=((a.byteOffset||0)+a.byteLength)/f;a=Math.floor(Math.max(0,Math.min(((a.byteOffset||0)+b)/f,g)));return new d(e,a,Math.floor(Math.min(a+Math.max(c,0),g))-a)}function cb(a,b=0,c=Infinity){return ab(a,b,c,Uint16Array)}function db(a,b=0,c=Infinity){return ab(a,b,c,DataView)}var eb=class{};w("shaka.util.BufferUtils",eb);eb.toDataView=db;eb.toUint16=cb;eb.toUint8=F; eb.toArrayBuffer=bb;eb.equal=$a;function fb(a,b){if(a===b||!a.length||!b.length)return!0;for(const c of a){if(gb(c))return!0;for(const d of b)if(c.keySystem===d.keySystem||gb(d))return!0}return!1}function gb(a){return(a=a.licenseServerUri)?a.startsWith("data:application/json;base64,"):!1} function hb(a,b){if(!a.length)return b;if(!b.length)return a;const c=[];for(const e of a)for(const f of b)if(e.keySystem==f.keySystem){a=new Map;var d=(e.initData||[]).concat(f.initData||[]);for(const g of d)a.set(g.keyId,g);a=Array.from(a.values());d=e.keyIds&&f.keyIds?new Set([...e.keyIds,...f.keyIds]):e.keyIds||f.keyIds;c.push({keySystem:e.keySystem,licenseServerUri:e.licenseServerUri||f.licenseServerUri,distinctiveIdentifierRequired:e.distinctiveIdentifierRequired||f.distinctiveIdentifierRequired, persistentStateRequired:e.persistentStateRequired||f.persistentStateRequired,videoRobustness:e.videoRobustness||f.videoRobustness,audioRobustness:e.audioRobustness||f.audioRobustness,serverCertificate:e.serverCertificate||f.serverCertificate,serverCertificateUri:e.serverCertificateUri||f.serverCertificateUri,initData:a,keyIds:d});break}else gb(e)?c.push(e):gb(f)&&c.push(f);return c}function ib(a){return a?a.keySystem:""}function kb(a){return a==="org.w3.clearkey"} function lb(a){return a?!!a.match(/^com\.widevine\.alpha/):!1}function mb(a){return a?!!a.match(/^com\.(microsoft|chromecast)\.playready/):!1}function nb(a){return a?!!a.match(/^com\.apple\.fps/):!1}function ob(a,b,c,d){d=[...(new Set(d))].sort().join("#");return`${a}#${b}#${c}#${d}`} function pb(a=!1,b=!1){const c={"1077efec-c0b2-4d02-ace3-3c1e52e2fb4b":"org.w3.clearkey","e2719d58-a985-b3c9-781a-b030af78d30e":"org.w3.clearkey","edef8ba9-79d6-4ace-a3c8-27dcd51d21ed":"com.widevine.alpha","9a04f079-9840-4286-ab92-e65be0885f95":"com.microsoft.playready","79f0049a-4098-8642-ab92-e65be0885f95":"com.microsoft.playready","94ce86fb-07ff-4f43-adb8-93d2fa968ca2":"com.apple.fps","3d5e6d35-9b9a-41e8-b843-dd3c6e72c42c":"com.huawei.wiseplay"};if(!a&&!b)return c;const d={};for(const e in c){const f= c[e];let g=e;b?g="urn:uuid:"+e:a&&(g=e.replace(/-/g,""));d[g]=f}return d}var qb=new x(()=>bb(new Uint8Array([0]))),rb=new Map;function sb(a){const b=a.code;let c=a.msExtendedCode;c&&(c<0&&(c+=4294967296),c=c.toString(16));return{code:b,mg:c,message:a.message}}var H=class{constructor(a,b,c,...d){this.severity=a;this.category=b;this.code=c;this.data=d;this.handled=!1;this.message="Shaka Error "+this.code;if(tb)try{throw Error(this.message||"Shaka Error");}catch(e){this.stack=e.stack}}toString(){return"shaka.util.Error "+JSON.stringify(this,null," ")}};w("shaka.util.Error",H);var tb=!0;H.Severity={RECOVERABLE:1,CRITICAL:2}; H.Category={NETWORK:1,TEXT:2,MEDIA:3,MANIFEST:4,STREAMING:5,DRM:6,PLAYER:7,CAST:8,STORAGE:9,ADS:10}; H.Code={UNSUPPORTED_SCHEME:1E3,BAD_HTTP_STATUS:1001,HTTP_ERROR:1002,TIMEOUT:1003,MALFORMED_DATA_URI:1004,REQUEST_FILTER_ERROR:1006,RESPONSE_FILTER_ERROR:1007,MALFORMED_TEST_URI:1008,UNEXPECTED_TEST_REQUEST:1009,ATTEMPTS_EXHAUSTED:1010,SEGMENT_MISSING:1011,INVALID_TEXT_HEADER:2E3,INVALID_TEXT_CUE:2001,UNABLE_TO_DETECT_ENCODING:2003,BAD_ENCODING:2004,INVALID_XML:2005,INVALID_MP4_TTML:2007,INVALID_MP4_VTT:2008,UNABLE_TO_EXTRACT_CUE_START_TIME:2009,INVALID_MP4_CEA:2010,TEXT_COULD_NOT_GUESS_MIME_TYPE:2011, CANNOT_ADD_EXTERNAL_TEXT_TO_SRC_EQUALS:2012,TEXT_ONLY_WEBVTT_SRC_EQUALS:2013,MISSING_TEXT_PLUGIN:2014,UNSUPPORTED_EXTERNAL_THUMBNAILS_URI:2017,BUFFER_READ_OUT_OF_BOUNDS:3E3,JS_INTEGER_OVERFLOW:3001,EBML_OVERFLOW:3002,EBML_BAD_FLOATING_POINT_SIZE:3003,MP4_SIDX_WRONG_BOX_TYPE:3004,MP4_SIDX_INVALID_TIMESCALE:3005,MP4_SIDX_TYPE_NOT_SUPPORTED:3006,WEBM_CUES_ELEMENT_MISSING:3007,WEBM_EBML_HEADER_ELEMENT_MISSING:3008,WEBM_SEGMENT_ELEMENT_MISSING:3009,WEBM_INFO_ELEMENT_MISSING:3010,WEBM_DURATION_ELEMENT_MISSING:3011, WEBM_CUE_TRACK_POSITIONS_ELEMENT_MISSING:3012,WEBM_CUE_TIME_ELEMENT_MISSING:3013,MEDIA_SOURCE_OPERATION_FAILED:3014,MEDIA_SOURCE_OPERATION_THREW:3015,VIDEO_ERROR:3016,QUOTA_EXCEEDED_ERROR:3017,TRANSMUXING_FAILED:3018,CONTENT_TRANSFORMATION_FAILED:3019,TRANSMUXING_NO_VIDEO_DATA:3023,STREAMING_NOT_ALLOWED:3024,BUFFER_WRITE_OUT_OF_BOUNDS:3025,UNABLE_TO_GUESS_MANIFEST_TYPE:4E3,DASH_INVALID_XML:4001,DASH_NO_SEGMENT_INFO:4002,DASH_EMPTY_ADAPTATION_SET:4003,DASH_EMPTY_PERIOD:4004,DASH_WEBM_MISSING_INIT:4005, DASH_UNSUPPORTED_CONTAINER:4006,DASH_PSSH_BAD_ENCODING:4007,DASH_NO_COMMON_KEY_SYSTEM:4008,DASH_MULTIPLE_KEY_IDS_NOT_SUPPORTED:4009,DASH_CONFLICTING_KEY_IDS:4010,RESTRICTIONS_CANNOT_BE_MET:4012,HLS_PLAYLIST_HEADER_MISSING:4015,INVALID_HLS_TAG:4016,HLS_INVALID_PLAYLIST_HIERARCHY:4017,DASH_DUPLICATE_REPRESENTATION_ID:4018,HLS_MULTIPLE_MEDIA_INIT_SECTIONS_FOUND:4020,HLS_REQUIRED_ATTRIBUTE_MISSING:4023,HLS_REQUIRED_TAG_MISSING:4024,HLS_COULD_NOT_GUESS_CODECS:4025,HLS_KEYFORMATS_NOT_SUPPORTED:4026,DASH_UNSUPPORTED_XLINK_ACTUATE:4027, DASH_XLINK_DEPTH_LIMIT:4028,CONTENT_UNSUPPORTED_BY_BROWSER:4032,CANNOT_ADD_EXTERNAL_TEXT_TO_LIVE_STREAM:4033,NO_VARIANTS:4036,PERIOD_FLATTENING_FAILED:4037,INCONSISTENT_DRM_ACROSS_PERIODS:4038,HLS_VARIABLE_NOT_FOUND:4039,HLS_MSE_ENCRYPTED_MP2T_NOT_SUPPORTED:4040,HLS_MSE_ENCRYPTED_LEGACY_APPLE_MEDIA_KEYS_NOT_SUPPORTED:4041,NO_WEB_CRYPTO_API:4042,CANNOT_ADD_EXTERNAL_THUMBNAILS_TO_LIVE_STREAM:4045,AES_128_INVALID_IV_LENGTH:4048,AES_128_INVALID_KEY_LENGTH:4049,DASH_CONFLICTING_AES_128:4050,DASH_UNSUPPORTED_AES_128:4051, DASH_INVALID_PATCH:4052,HLS_EMPTY_MEDIA_PLAYLIST:4053,DASH_MSE_ENCRYPTED_LEGACY_APPLE_MEDIA_KEYS_NOT_SUPPORTED:4054,CANNOT_ADD_EXTERNAL_CHAPTERS_TO_LIVE_STREAM:4055,WEBTRANSPORT_NOT_AVAILABLE:4056,WEBTRANSPORT_INITIALIZATION_FAILED:4057,MSF_VOD_CONTENT_NOT_SUPPORTED:4058,MSF_CATALOG_TIMEOUT:4058,HLS_INVALID_KEY_IV_FOR_GCM:4059,HLS_INVALID_GCM_SEGMENT:4060,DASH_INVALID_JSON:4061,MSF_NO_CATALOG:4062,STREAMING_ENGINE_STARTUP_INVALID_STATE:5006,NO_RECOGNIZED_KEY_SYSTEMS:6E3,REQUESTED_KEY_SYSTEM_CONFIG_UNAVAILABLE:6001, FAILED_TO_CREATE_CDM:6002,FAILED_TO_ATTACH_TO_VIDEO:6003,INVALID_SERVER_CERTIFICATE:6004,FAILED_TO_CREATE_SESSION:6005,FAILED_TO_GENERATE_LICENSE_REQUEST:6006,LICENSE_REQUEST_FAILED:6007,LICENSE_RESPONSE_REJECTED:6008,ENCRYPTED_CONTENT_WITHOUT_DRM_INFO:6010,NO_LICENSE_SERVER_GIVEN:6012,OFFLINE_SESSION_REMOVED:6013,EXPIRED:6014,SERVER_CERTIFICATE_REQUIRED:6015,INIT_DATA_TRANSFORM_ERROR:6016,SERVER_CERTIFICATE_REQUEST_FAILED:6017,MIN_HDCP_VERSION_NOT_MATCH:6018,ERROR_CHECKING_HDCP_VERSION:6019,MISSING_EME_SUPPORT:6020, LOAD_INTERRUPTED:7E3,OPERATION_ABORTED:7001,NO_VIDEO_ELEMENT:7002,OBJECT_DESTROYED:7003,CONTENT_NOT_LOADED:7004,SRC_EQUALS_PRELOAD_NOT_SUPPORTED:7005,PRELOAD_DESTROYED:7006,QUEUE_INDEX_OUT_OF_BOUNDS:7007,CAST_API_UNAVAILABLE:8E3,NO_CAST_RECEIVERS:8001,ALREADY_CASTING:8002,UNEXPECTED_CAST_ERROR:8003,CAST_CANCELED_BY_USER:8004,CAST_CONNECTION_TIMED_OUT:8005,CAST_RECEIVER_APP_UNAVAILABLE:8006,STORAGE_NOT_SUPPORTED:9E3,INDEXED_DB_ERROR:9001,DEPRECATED_OPERATION_ABORTED:9002,REQUESTED_ITEM_NOT_FOUND:9003, MALFORMED_OFFLINE_URI:9004,CANNOT_STORE_LIVE_OFFLINE:9005,NO_INIT_DATA_FOR_OFFLINE:9007,LOCAL_PLAYER_INSTANCE_REQUIRED:9008,NEW_KEY_OPERATION_NOT_SUPPORTED:9011,KEY_NOT_FOUND:9012,MISSING_STORAGE_CELL:9013,STORAGE_LIMIT_REACHED:9014,DOWNLOAD_SIZE_CALLBACK_ERROR:9015,MODIFY_OPERATION_NOT_SUPPORTED:9016,INDEXED_DB_INIT_TIMED_OUT:9017,CS_IMA_SDK_MISSING:1E4,SS_IMA_SDK_MISSING:10002,CURRENT_DAI_REQUEST_NOT_FINISHED:10004,VAST_INVALID_XML:10007,CS_AD_CONTAINER_MISSING:10008,SS_AD_CONTAINER_MISSING:10009, MEDIATAILOR_REQUEST_FAILED:10010};function ub(a){if(!a)return"";a=F(a);a[0]==239&&a[1]==187&&a[2]==191&&(a=a.subarray(3));if(window.TextDecoder&&!D().V())return a=(new TextDecoder).decode(a),a.includes("\ufffd")&&ma('Decoded string contains an "unknown character" codepoint. That probably means the UTF8 encoding was incorrect!'),a;let b="";for(let d=0;d<a.length;++d){var c=65533;(a[d]&128)==0?c=a[d]:a.length>=d+2&&(a[d]&224)==192&&(a[d+1]&192)==128?(c=(a[d]&31)<<6|a[d+1]&63,d+=1):a.length>=d+3&&(a[d]&240)==224&&(a[d+1]&192)==128&& (a[d+2]&192)==128?(c=(a[d]&15)<<12|(a[d+1]&63)<<6|a[d+2]&63,d+=2):a.length>=d+4&&(a[d]&241)==240&&(a[d+1]&192)==128&&(a[d+2]&192)==128&&(a[d+3]&192)==128&&(c=(a[d]&7)<<18|(a[d+1]&63)<<12|(a[d+2]&63)<<6|a[d+3]&63,d+=3);if(c<=65535)b+=String.fromCharCode(c);else{c-=65536;const e=c&1023;b+=String.fromCharCode(55296+(c>>10));b+=String.fromCharCode(56320+e)}}return b} function vb(a,b,c){if(!a)return"";if(!c&&a.byteLength%2!=0)throw new H(2,2,2004);c=Math.floor(a.byteLength/2);const d=new Uint16Array(c);a=db(a);for(let e=0;e<c;e++)d[e]=a.getUint16(e*2,b);return wb.value()(d)} function xb(a){if(!a)return"";const b=F(a);if(b[0]==239&&b[1]==187&&b[2]==191)return ub(b);if(b[0]==254&&b[1]==255)return vb(b.subarray(2),!1);if(b[0]==255&&b[1]==254)return vb(b.subarray(2),!0);const c=d=>b.byteLength<=d||b[d]>=9&&b[d]<=126;if(b[0]==0&&b[2]==0)return vb(a,!1);if(b[1]==0&&b[3]==0)return vb(a,!0);if(c(0)&&c(1)&&c(2)&&c(3))return ub(a);throw new H(2,2,2003);} function yb(a){if(window.TextEncoder&&!D().V()){var b=new TextEncoder;return bb(b.encode(a))}a=encodeURIComponent(a);a=unescape(a);b=new Uint8Array(a.length);for(let c=0;c<a.length;c++)b[c]=a[c].charCodeAt(0);return bb(b)}function zb(a,b){const c=new ArrayBuffer(a.length*2),d=new DataView(c);for(let e=0;e<a.length;++e)d.setUint16(e*2,a.charCodeAt(e),b);return c} function Ab(a){const b={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&apos;":"'","&nbsp;":"\u00a0","&lrm;":"\u200e","&rlm;":"\u200f"},c=/&(?:amp|lt|gt|quot|apos|nbsp|lrm|rlm|#[xX]?[0-9a-fA-F]+);/g,d=RegExp(c.source);return a&&d.test(a)?a.replace(c,e=>e[1]=="#"?(e=e[2]=="x"||e[2]=="X"?parseInt(e.substring(3),16):parseInt(e.substring(2),10),e>=0&&e<=1114111?String.fromCodePoint(e):""):b[e]||"'"):a||""}var Bb=class{};w("shaka.util.StringUtils",Bb);Bb.resetFromCharCode=function(){wb.g=void 0}; Bb.toUTF16=zb;Bb.toUTF8=yb;Bb.fromBytesAutoDetect=xb;Bb.fromUTF16=vb;Bb.fromUTF8=ub;var wb=new x(()=>{const a=b=>{try{const c=new Uint8Array(b);return String.fromCharCode.apply(null,c).length>0}catch(c){return!1}};for(let b=65536;b>0;b/=2)if(a(b))return c=>{let d="";for(let e=0;e<c.length;e+=b)d+=String.fromCharCode.apply(null,c.subarray(e,e+b));return d};return null});function Cb(a){a=F(a);return Uint8Array.prototype.toBase64?a.toBase64({alphabet:"base64",omitPadding:!1}):(a=wb.value()(a),btoa(a))}function Db(a,b){b=b==void 0?!0:b;return Uint8Array.prototype.toBase64?F(a).toBase64({alphabet:"base64url",omitPadding:!b}):(a=Cb(a).replace(/\+/g,"-").replace(/\//g,"_"),b?a:a.replace(/[=]*$/,""))} function Eb(a){if(!("fromBase64"in Uint8Array)){a=window.atob(a.replace(/-/g,"+").replace(/_/g,"/"));const b=new Uint8Array(a.length);for(let c=0;c<a.length;++c)b[c]=a.charCodeAt(c);return b}a=a.replace(/\s+/g,"");return Uint8Array.fromBase64(a,{alphabet:/[-_]/.test(a)?"base64url":"base64"})}function Fb(a){if(!("fromHex"in Uint8Array)){const b=a.length/2,c=new Uint8Array(b);for(let d=0;d<b;d++)c[d]=window.parseInt(a.substr(d*2,2),16);return c}return Uint8Array.fromHex(a)} function Gb(a){a=F(a);if(!Uint8Array.prototype.toHex){let b="";for(let c of a)c=c.toString(16),c.length==1&&(c="0"+c),b+=c;return b}return a.toHex()}function Hb(...a){return Ib(a,0,a.length)}function Ib(a,b=0,c=a.length){var d=0;for(var e=b;e<c;++e)d+=a[e].byteLength;d=new Uint8Array(d);for(e=0;b<c;++b){const f=a[b];ArrayBuffer.isView(f)&&f.BYTES_PER_ELEMENT===1?d.set(f,e):d.set(F(f),e);e+=f.byteLength}return d} function Jb(a){const b=new Uint8Array(a.length);let c=0,d=0;for(let e=0;e<a.length;e++){const f=a[e];c>=2&&f==3?c=0:(b[d++]=f,f==0?c++:c=0)}return b.subarray(0,d)}var Kb=class{};w("shaka.util.Uint8ArrayUtils",Kb);Kb.concat=Hb;Kb.toHex=Gb;Kb.fromHex=Fb;Kb.fromBase64=Eb;Kb.toBase64=Db;Kb.toStandardBase64=Cb;function Lb(a,b){if(b.length==0)return a;if(a.length==1&&b.length==1){var c=new La(a[0]),d=new La(b[0]);return[c.resolve(d).toString()]}b=b.map(f=>new La(f));const e=[];for(c of a){a=new La(c);for(d of b){const f=a.resolve(d);e.push(f.toString())}}return e} function Mb(a,b,c,d,e){b={keySystem:a,encryptionScheme:b,licenseServerUri:"",distinctiveIdentifierRequired:!1,persistentStateRequired:!1,audioRobustness:"",videoRobustness:"",serverCertificate:null,serverCertificateUri:"",sessionType:"",initData:c||[],keyIds:new Set,mediaTypes:e};d&&(b.keySystemUris=new Set([d]));!c&&nb(a)&&b.initData.push({initDataType:"sinf",initData:new Uint8Array(0),keyId:null});return b} function Nb(a,b="cenc"){const c=[],d=[],e=[];a.forEach((g,h)=>{let k=h;k.length!=22&&(k=Db(Fb(h),!1));let l=g;l.length!=22&&(l=Db(Fb(g),!1));g={kty:"oct",kid:k,k:l};c.push(g);d.push(g.kid);e.push(h)});a=JSON.stringify({keys:c});var f=JSON.stringify({kids:d});f=[{initData:F(yb(f)),initDataType:"keyids"}];return{keySystem:"org.w3.clearkey",encryptionScheme:b,licenseServerUri:"data:application/json;base64,"+window.btoa(a),distinctiveIdentifierRequired:!1,persistentStateRequired:!1,audioRobustness:"", videoRobustness:"",serverCertificate:null,serverCertificateUri:"",sessionType:"",initData:f,keyIds:new Set(e)}}function Ob(a,b){if(b.length==1)return b[0];a=Pb(a,b);if(a!=null)return a;throw new H(2,4,4025,b);}function Pb(a,b){const c=Qb.get(a);for(const d of c)for(const e of b)if(d.test(e.trim()))return e.trim();return a==I?"":null}function Rb(a,b){const c=[];a=Qb.get(a);for(const d of a)for(const e of b)d.test(e.trim())&&c.push(e.trim());return c} var I="text",Sb={li:"video",Yh:"audio",bf:I,ci:"image",Xh:"application",$h:"chapter"},Qb=(new Map).set("audio",[/^vorbis$/,/^Opus$/,/^opus$/,/^fLaC$/,/^flac$/,/^mp4a/,/^[ae]c-3$/,/^ac-4/,/^dts[cehx]?$/,/^iamf/,/^mhm[12]/,/^ac3$/,/^eac3$/,/^apac$/]).set("video",[/^avc/,/^hev/,/^hvc/,/^vvc/,/^vvi/,/^vp0?[89]/,/^av01/,/^mp2v/,/^dvh/,/^dva/,/^dav/]).set("text",[/^vtt$/,/^wvtt/,/^stpp/]);function Tb(a){return a&&typeof LCEVCdec!=="undefined"?a.codecs=="lvc1":!1}function Vb(a,b,c,d){d.type!=="video"||a.j&&!Tb(d)||a.g&&a.g.appendBuffer(b,"video",d.id,-c,!a.j)}function Wb(a){a.g&&a.i.classList.add("shaka-hidden")} var Xb=class{constructor(a,b,c,d){this.g=null;this.l=a;this.i=b;this.m=c;this.j=d;typeof libDPIModule==="undefined"&&oa("Could not find LCEVC Library dependencies on this page");typeof LCEVCdec!=="undefined"?(this.h=LCEVCdec,typeof this.h.SupportObject==="undefined"?(oa("Could not find LCEVC Library on this page"),a=!1):(this.h.SupportObject.SupportStatus||oa(this.h.SupportObject.SupportError),a=typeof this.h!=="undefined"&&typeof libDPIModule!=="undefined"&&this.i instanceof HTMLCanvasElement&&this.h.SupportObject.SupportStatus)): (oa("Could not find LCEVC Library on this page"),a=!1);a&&!this.g&&this.h.SupportObject.webGLSupport(this.i)&&(this.i.classList.remove("shaka-hidden"),this.g=new this.h.LCEVCdec(this.l,this.i,this.m))}release(){this.g&&(this.g.close(),this.g=null)}};w("shaka.lcevc.Dec",Xb);Xb.prototype.release=Xb.prototype.release;function Yb(a,b){Zb.set(a,b)}function $b(){const a={};D();if(ac())for(var b of Zb.keys())a[b]=!0;b=["application/dash+xml","application/x-mpegurl","application/vnd.apple.mpegurl","audio/x-mpegurl"];for(const c of b)a[c]=ac()?Zb.has(c):bc(c);return a}function cc(a,b){if(b){const c=Zb.get(b);if(c)return c}throw new H(2,4,4E3,a,b);}var dc=class{};w("shaka.media.ManifestParser",dc);dc.unregisterParserByMime=function(a){Zb.delete(a)};dc.registerParserByMime=Yb; dc.AccessibilityPurpose={mi:"visually impaired",ai:"hard of hearing",ji:"spoken subtitles"};var Zb=new Map;var ec=class{extract(){}extractRaw608(){}decode(){return[]}clear(){}getStreams(){return[]}};var fc=class{init(){}parse(){return[]}};function hc(a){return ic.get(a)}function jc(a,b){ic.set(a,b)}function kc(a,b){a.h.set(a.i,a.g);a.g=a.h.getOrInsertComputed(b,()=>{const c=lc;return c?c():a.g})}function mc(a,b){b=a.j.parse(b);for(const c of b)if(b=F(c.packet),b.length>0)switch(c.format){case nc:a.g.extract(b,c.pts);break;case oc:a.g.extractRaw608(b,c.pts)}return a.g.decode()} var pc=class{constructor(a){this.h=new Map;this.i=0;this.j=new fc;if(a=hc(a.toLowerCase()))this.j=a();this.g=new ec;if(a=lc)this.g=a(),this.h.set(this.i,this.g)}init(a,b=!1,c=-1){c!=-1&&this.i!=c?kc(this,c):b||this.g.clear();this.j.init(a);c!=-1&&(this.i=c)}remove(a=[]){a=new Set(a);for(const b of this.h.keys())if(!a.has(b)){const c=this.h.get(b);c&&c.clear();this.h.delete(b)}}};w("shaka.media.ClosedCaptionParser",pc);pc.findDecoder=function(){return lc};pc.unregisterDecoder=function(){lc=null}; pc.registerDecoder=function(a){lc=a};pc.findParser=hc;pc.unregisterParser=function(a){ic.delete(a)};pc.registerParser=jc;var ic=new Map,lc=null,nc="sei",oc="raw608";var sc=class{constructor(){this.id="";this.regionAnchorY=this.regionAnchorX=this.viewportAnchorY=this.viewportAnchorX=0;this.height=this.width=100;this.viewportAnchorUnits=this.widthUnits=this.heightUnits=qc;this.scroll=rc}clone(){const a=new sc;a.id=this.id;a.viewportAnchorX=this.viewportAnchorX;a.viewportAnchorY=this.viewportAnchorY;a.regionAnchorX=this.regionAnchorX;a.regionAnchorY=this.regionAnchorY;a.width=this.width;a.height=this.height;a.heightUnits=this.heightUnits;a.widthUnits=this.widthUnits; a.viewportAnchorUnits=this.viewportAnchorUnits;a.scroll=this.scroll;return a}};w("shaka.text.CueRegion",sc);sc.prototype.clone=sc.prototype.clone;var qc=1;sc.units={PX:0,PERCENTAGE:qc,LINES:2};var rc="";sc.scrollMode={NONE:rc,UP:"up"};function tc(a){a=uc(a,vc);if(a==null)return null;const b=Number(a[2]),c=Number(a[3]);return b>59||c>59?null:(Number(a[6])||0)/1E3+c+b*60+(Number(a[1])||0)*3600}function wc(a){return a.g==a.h.length?null:(a=uc(a,/[^ \t\n]*/gm))?a[0]:null}function uc(a,b){b.lastIndex=a.g;b=b.exec(a.h);b=b==null?null:{position:b.index,length:b[0].length,results:b};if(a.g==a.h.length||b==null||b.position!=a.g)return null;a.g+=b.length;return b.results}function xc(a){uc(a,/[ \t]+/gm)} var yc=class{constructor(a){this.h=a||"";this.g=0}},vc=/(?:(\d{1,}):)?(\d{2}):(\d{2})((\.(\d{1,3})))?/g;function zc(a){const b=new WeakSet,c=d=>{switch(typeof d){case "undefined":case "boolean":case "number":case "string":case "symbol":case "function":return d;default:if(!d||ArrayBuffer.isView(d))return d;if(b.has(d))return null;const e=Array.isArray(d);if(d.constructor!=Object&&!e)return null;b.add(d);const f=e?[]:{};for(const g in d)f[g]=c(d[g]);e&&(f.length=d.length);return f}};return c(a)}function Ac(a){const b={};for(const c in a)b[c]=a[c];return b} function Bc(a){if(Array.isArray(a)){var b=[];for(var c=0;c<a.length;c++){var d=c.toString(),e=a[c];e!==void 0&&(e=Bc(e))&&b.push(d+":"+e)}a="["+b.join(",")+"]"}else if(typeof a=="function")a="";else if(a instanceof Object){d=Object.keys(a);d.sort();b=[];for(c of d)d=JSON.stringify(c),e=a[c],e!==void 0&&(e=Bc(e))&&b.push(d+":"+e);a="{"+b.join(",")+"}"}else a=JSON.stringify(a);return a}var Cc=class{};w("shaka.util.ObjectUtils",Cc);Cc.alphabeticalKeyOrderStringify=Bc;Cc.shallowCloneObject=Ac; Cc.cloneObject=zc;/* @license tXml Copyright 2015 Tobias Nickel SPDX-License-Identifier: MIT */ function Dc(a,b,c=!1){a=Ec(a,c);if(!b&&a.length)return a[0];const d=b.split(",");return(b=a.find(e=>d.includes(e.tagName)))?b:null} function Ec(a,b){function c(g,h=!1){const k=[];for(;a[e];)if(a.charCodeAt(e)==60){if(a.charCodeAt(e+1)===47){h=e+2;e=a.indexOf(">",e);h=a.substring(h,e);var l=h.indexOf(g);if(l==-1){var m=g.indexOf(".");m>0&&(l=h.indexOf(g.substring(0,m)))}if(l==-1)throw g=a.substring(0,e).split("\n"),Error("Unexpected close tag\nLine: "+(g.length-1)+"\nColumn: "+(g[g.length-1].length+1)+"\nChar: "+a[e]);e+1&&(e+=1);break}else if(a.charCodeAt(e+1)===33){if(a.charCodeAt(e+2)==45){for(;e!==-1&&(a.charCodeAt(e)!==62|| a.charCodeAt(e-1)!=45||a.charCodeAt(e-2)!=45||e==-1);)e=a.indexOf(">",e+1);e===-1&&(e=a.length)}else if(a.charCodeAt(e+2)===91&&a.charCodeAt(e+8)===91&&a.substr(e+3,5).toLowerCase()==="cdata"){l=a.indexOf("]]\x3e",e);l==-1?(k.push(a.substr(e+9)),e=a.length):(k.push(a.substring(e+9,l)),e=l+3);continue}e++;continue}if(f>512)throw Error("XML is too deeply nested");f++;a:{m=h;e++;var n=d(),p={};for(l=[];a.charCodeAt(e)!==62&&a[e];){var q=a.charCodeAt(e);if(q>64&&q<91||q>96&&q<123){q=d();for(var t=a.charCodeAt(e);t&& t!==39&&t!==34&&!(t>64&&t<91||t>96&&t<123)&&t!==62;)e++,t=a.charCodeAt(e);var u=e+1;e=a.indexOf(a[e],u);u=(" "+a.slice(u,e)).slice(1);if(t===39||t===34){if(e===-1){m={tagName:n,attributes:p,children:l,parent:null};if(b)for(n=0;n<l.length;n++)typeof l[n]!=="string"&&(l[n].parent=m);l=m;break a}}else u=null,e--;if(q.startsWith("xmlns:")){t=u;var r=q.split(":")[1];Fc.set(t,r);Gc.set(r,t)}n==="tt"&&q==="xml:space"&&u==="preserve"&&(m=!0);p[q]=u}e++}a.charCodeAt(e-1)!==47?(e++,l=c(n,m)):e++;m={tagName:n, attributes:p,children:l,parent:null};n=l.length;for(p=0;p<n;p++)q=l[p],typeof q!=="string"?b&&(q.parent=m):p==n-1&&q=="\n"&&l.pop();l=m}f--;k.push(l);if(typeof l==="string")break;l.tagName[0]==="?"&&l.children&&(k.push(...l.children),l.children=[])}else l=e,e=a.indexOf("<",e)-1,e===-2&&(e=a.length),l=(" "+a.slice(l,e+1)).slice(1),h?l.length>0&&k.push(l):k.length&&l.length==1&&l[0]=="\n"?k.push(l):l.trim().length>0&&k.push(l),e++;return k}function d(){const g=e;for(;"\r\n\t>/= ".indexOf(a[e])===-1&& a[e];)e++;return(" "+a.slice(g,e)).slice(1)}let e=0,f=0;return c("")}function Hc(a){return typeof a==="string"}function Ic(a,b){const c=[];if(!a.children)return[];for(const d of a.children)d.tagName===b&&c.push(d);return c}function Jc(a){if(typeof a==="string")return Ab(a);const b=[];for(const c of a.children)typeof c==="string"&&b.push(c);a=b.join("");return a===""?null:Ab(a)}function Kc(a,b,c=[]){a.tagName===b&&c.push(a);if(a.children)for(const d of a.children)Kc(d,b,c);return c} function Lc(a,b,c){b=Fc.has(b)?Fc.get(b):"";return a.attributes[`${b}:${c}`]||null}function Mc(a,b,c){for(const d of b)if(b=Lc(a,d,c))return b;return null}function Nc(a){if(!a)return null;/^\d+-\d+-\d+T\d+:\d+:\d+(\.\d+)?$/.test(a)&&(a+="Z");a=Date.parse(a);return isNaN(a)?null:a/1E3}var Fc=new Map,Gc=new Map;function Oc(a,b){a=new Pc(a,b,"");a.lineBreak=!0;return a}function Qc(a,b){if(a.payload!=b.payload||!(Math.abs(a.startTime-b.startTime)<.001&&Math.abs(a.endTime-b.endTime)<.001))return!1;for(const c in a)if(c!="startTime"&&c!="endTime"&&c!="payload")if(c=="nestedCues"){if(!Aa(a.nestedCues,b.nestedCues,Qc))return!1}else if(c=="region"||c=="cellResolution")for(const d in a[c]){if(a[c][d]!=b[c][d])return!1}else if(Array.isArray(a[c])){if(!Aa(a[c],b[c]))return!1}else if(a[c]!=b[c])return!1;return!0} function Rc(a,b=new Map){var c=a.payload;if(c.includes("<")){b.size===0&&Sc(b);var d=c;c=[];var e=-1;for(var f=0;f<d.length;f++)d[f]==="<"?e=f+1:d[f]===">"&&e>0&&(e=d.substr(e,f-e),e.match(Tc)&&c.push(e),e=-1);for(var g of c)d=d.replace("<"+g+">",'<div time="'+g+'">'),d+="</div>";c=d;a:{d=c;f=[];e=-1;g="";c=!1;for(let m=0;m<d.length;m++)if(d[m]==="/"){var h=d.indexOf(">",m);if(h===-1){c=d;break a}h=d.substring(m+1,h);if(!h||h!="v"){g+=d[m];continue}c=!0;let n=null;f.length&&(n=f[f.length-1]);if(n){if(n=== h)g+="/"+h+">";else{if(!n.startsWith("v")){g+=d[m];continue}g+="/"+n+">"}m+=h.length+1}else g+=d[m]}else d[m]==="<"?(e=m+1,d[e]!="v"&&(e=-1)):d[m]===">"&&e>0&&(f.push(d.substr(e,m-e)),e=-1),g+=d[m];for(var k of f)d=k.replace(" ",".voice-"),g=g.replace(`<${k}>`,`<${d}>`),g=g.replace(`</${k}>`,`</${d}>`),c||(g+=`</${d}>`);c=g}c=Uc(c);a.payload="";k="<span>"+c.replace(/\n/g,"<br />")+"</span>";try{var l=Dc(k,"span")}catch(m){}if(l)if(l=l.children,l.length!=1||l[0].tagName)for(const m of l)Vc(m,a,b); else a.payload=Ab(c);else a.payload=Ab(c)}else a.payload=Ab(c)}function Sc(a){for(const [c,d]of Object.entries(Wc)){var b=new Pc(0,0,"");b.color=d;a.set("."+c,b)}for(const [c,d]of Object.entries(Xc))b=new Pc(0,0,""),b.backgroundColor=d,a.set("."+c,b)}function Uc(a){const b={"< ":""," >":" &gt;"},c=/(< +>|<\s|\s>)/g,d=RegExp(c.source);return a&&d.test(a)?a.replace(c,e=>b[e]||""):a||""} function Vc(a,b,c){var d=b.clone();d.nestedCues=[];d.payload="";d.rubyTag="";d.line=null;d.region=new sc;d.position=null;d.size=0;d.textAlign=Yc;if(a.tagName){var e=a.tagName.split(/(?=[ .])+/g);for(var f of e){var g=f;g.startsWith(".voice-")&&(e=g.split("-").pop(),g=`v[voice="${e}"]`,c.has(g)||(g=`v[voice=${e}]`));c.has(g)&&(e=d,g=c.get(g))&&(e.backgroundColor=Zc(g.backgroundColor,e.backgroundColor),e.color=Zc(g.color,e.color),e.fontFamily=Zc(g.fontFamily,e.fontFamily),e.fontSize=Zc(g.fontSize,e.fontSize), e.textShadow=Zc(g.textShadow,e.textShadow),e.fontWeight=g.fontWeight,e.fontStyle=g.fontStyle,e.opacity=g.opacity,e.rubyTag=g.rubyTag,e.textCombineUpright=g.textCombineUpright,e.wrapLine=g.wrapLine);switch(f){case "br":d=Oc(d.startTime,d.endTime);b.nestedCues.push(d);return;case "b":d.fontWeight=$c;break;case "i":d.fontStyle=ad;break;case "u":d.textDecoration.push(bd);break;case "font":if(e=a.attributes.color)d.color=e;break;case "div":e=a.attributes.time;if(!e)break;if(e=e?tc(new yc(e)):null)d.startTime= e;break;case "ruby":case "rp":case "rt":d.rubyTag=f}}}f=a.children;if(Hc(a)||f.length==1&&Hc(f[0])){a=Jc(a).split("\n");c=!0;for(const h of a)c||(a=Oc(d.startTime,d.endTime),b.nestedCues.push(a)),h.length>0&&(a=d.clone(),a.payload=Ab(h),b.nestedCues.push(a)),c=!1}else{b.nestedCues.push(d);for(const h of f)Vc(h,d,c)}}function Zc(a,b){return a&&a.length>0?a:b} var Pc=class{constructor(a,b,c){this.startTime=a;this.endTime=b;this.payload=c;this.region=new sc;this.position=null;this.positionAlign=cd;this.size=0;this.textAlign=Yc;this.direction=dd;this.writingMode=ed;this.lineInterpretation=fd;this.line=null;this.lineHeight="";this.lineAlign=gd;this.displayAlign=hd;this.fontSize=this.border=this.backgroundImage=this.backgroundColor=this.color="";this.fontWeight=id;this.fontStyle=jd;this.linePadding=this.letterSpacing=this.fontFamily="";this.opacity=1;this.textCombineUpright= "";this.textDecoration=[];this.textStrokeWidth=this.textStrokeColor=this.textShadow="";this.wrapLine=!0;this.id="";this.nestedCues=[];this.lineBreak=this.isContainer=!1;this.rubyTag=null;this.cellResolution={columns:32,rows:15}}clone(){const a=new Pc(0,0,""),b=c=>{if(c===null||typeof c!=="object")return c;if(Array.isArray(c))return c.map(b);if(c instanceof Pc)return c.clone();if(c instanceof sc)return c.clone();const d={};for(const e in c)d[e]=b(c[e]);return d};for(const c in this)a[c]=b(this[c]); return a}};w("shaka.text.Cue",Pc);Pc.parseCuePayload=Rc;Pc.equal=Qc;Pc.prototype.clone=Pc.prototype.clone;var cd="auto";Pc.positionAlign={LEFT:"line-left",RIGHT:"line-right",CENTER:"center",AUTO:cd};var Yc="center",kd={LEFT:"left",RIGHT:"right",CENTER:Yc,START:"start",END:"end"};Pc.textAlign=kd;var hd="after",ld={BEFORE:"before",CENTER:"center",AFTER:hd};Pc.displayAlign=ld;var dd="ltr";Pc.direction={HORIZONTAL_LEFT_TO_RIGHT:dd,HORIZONTAL_RIGHT_TO_LEFT:"rtl"};var ed="horizontal-tb"; Pc.writingMode={HORIZONTAL_TOP_TO_BOTTOM:ed,VERTICAL_LEFT_TO_RIGHT:"vertical-lr",VERTICAL_RIGHT_TO_LEFT:"vertical-rl"};var fd=0;Pc.lineInterpretation={LINE_NUMBER:fd,PERCENTAGE:1};var gd="start",md={CENTER:"center",START:gd,END:"end"};Pc.lineAlign=md;var Wc={white:"white",lime:"lime",cyan:"cyan",red:"red",yellow:"yellow",magenta:"magenta",blue:"blue",black:"black"};Pc.defaultTextColor=Wc; var Xc={bg_white:"white",bg_lime:"lime",bg_cyan:"cyan",bg_red:"red",bg_yellow:"yellow",bg_magenta:"magenta",bg_blue:"blue",bg_black:"black"};Pc.defaultTextBackgroundColor=Xc;var id=400,$c=700;Pc.fontWeight={NORMAL:id,BOLD:$c};var jd="normal",ad="italic",nd={NORMAL:jd,ITALIC:ad,OBLIQUE:"oblique"};Pc.fontStyle=nd;var bd="underline";Pc.textDecoration={UNDERLINE:bd,LINE_THROUGH:"line-through",OVERLINE:"overline"};var Tc=/(?:(\d{1,}):)?(\d{2}):(\d{2})\.(\d{2,3})/g;function od(a,b,c){pd.set(a.toLowerCase().split(";")[0]+"-"+c,{priority:c,Gd:b})}function qd(a,b){const c=a.toLowerCase().split(";")[0];var d=[rd,sd,td,vd];for(const e of d)if(d=pd.get(c+"-"+e)){const f=d.Gd(),g=f.isSupported(a,b);f.destroy();if(g)return d.Gd}return null}var wd=class{destroy(){}};w("shaka.transmuxer.TransmuxerEngine",wd);wd.findTransmuxer=qd;wd.unregisterTransmuxer=function(a,b){pd.delete(a.toLowerCase().split(";")[0]+"-"+b)};wd.registerTransmuxer=od;wd.prototype.destroy=wd.prototype.destroy; var pd=new Map,vd=1,td=2,sd=3,rd=4;wd.PluginPriority={FALLBACK:vd,PREFERRED_SECONDARY:td,PREFERRED:sd,APPLICATION:rd};function xd(a,b){let c=a;b&&!yd.includes(a)&&(c+='; codecs="'+b+'"');return c}function zd(a,b){b&&(a+='; codecs="'+b+'"');return a}function Ad(a,b,c){const d=xd(a,b);b=zd(a,b);qd(b)?(a=qd(b))?(a=a(),c=a.convertCodecs(c,b),a.destroy()):c=b:c=a!="video/mp2t"&&c=="audio"?d.replace("video","audio"):d;return c}function Bd(a){return a.split(";")[0].split("/")[1]} function Cd(a){var b=Dd(a);a=b[0].toLowerCase();b=b[1].toLowerCase();switch(!0){case a==="mp4a"&&b==="69":case a==="mp4a"&&b==="6b":case a==="mp4a"&&b==="40.34":return"mp3";case a==="mp4a"&&b==="66":case a==="mp4a"&&b==="67":case a==="mp4a"&&b==="68":case a==="mp4a"&&b==="40.2":case a==="mp4a"&&b==="40.02":case a==="mp4a"&&b==="40.5":case a==="mp4a"&&b==="40.05":case a==="mp4a"&&b==="40.29":case a==="mp4a"&&b==="40.42":return"aac";case a==="mp4a"&&b==="a5":case a==="ac3":case a==="ac-3":return"ac-3"; case a==="mp4a"&&b==="a6":case a==="eac3":case a==="ec-3":return"ec-3";case a==="ac-4":return"ac-4";case a==="mp4a"&&b==="b2":return"dtsx";case a==="mp4a"&&b==="a9":return"dtsc";case a==="vp09":case a==="vp9":return"vp9";case a==="avc1":case a==="avc3":return"avc";case a==="hvc1":case a==="hev1":return"hevc";case a==="vvc1":case a==="vvi1":return"vvc";case a==="dvh1":case a==="dvhe":return b&&b.startsWith("05")?"dovi-p5":"dovi-hevc";case a==="dvav":case a==="dva1":return"dovi-avc";case a==="dav1":return"dovi-av1"; case a==="dvc1":case a==="dvi1":return"dovi-vvc";case a==="lvc1":return"lcevc"}return a}function Dd(a){a=a.split(".");const b=a[0];a.shift();return[b,a.join(".")]}function Ed(a){const b=[];for(const c of a.split(","))a=Dd(c),b.push(a[0]);return b.sort().join(",")}function Fd(a){return a.split(";")[0]}function Gd(a){a=a.split(/ *; */);a.shift();return(a=a.find(b=>b.startsWith("codecs=")))?a.split("=")[1].replace(/^"|"$/g,""):""} function Hd(a){return a==="application/x-mpegurl"||a==="application/vnd.apple.mpegurl"||a==="audio/x-mpegurl"}var Id=class{};w("shaka.util.MimeUtils",Id);Id.getFullTypeWithAllCodecs=zd;Id.getFullType=xd;(new Map).set("codecs","codecs").set("frameRate","framerate").set("bandwidth","bitrate").set("width","width").set("height","height").set("channelsCount","channels");var yd=["audio/aac","audio/ac3","audio/ec3","audio/mpeg"];function Jd(a,b){Kd.set(a,b)}function Ld(a){return Kd.get(a)}function Md(a){return Kd.has(a)?!0:a=="application/cea-608"||a=="application/cea-708"?!!lc:!1} async function Nd(a,b,c,d,e,f=-1){if(a.B||a.o.has(f)){if(await Promise.resolve(),a.l&&a.j)if(c==null||d==null)a.l.parseInit(F(b));else{var g=a.B?0:a.o.get(f);f=a.G||a.B?c:a.o.get(f);f={periodStart:g,segmentStart:c,segmentEnd:d,vttOffset:f,isMpegTs:a.I};b=a.l.parseMedia(F(b),f,e,[]);for(var h of b)a.C(h,e||null,f);e=b.filter(k=>k.startTime>=a.u&&k.startTime<a.A);a.j.append(e);a.g==null&&(a.g=Math.max(c,a.u));a.h=Math.min(d,a.A)}}else h=a.i.get(f)||[],h.push({buffer:b,startTime:c,endTime:d,uri:e,lg:f}), a.i.set(f,h)}function Od(a,b,c){for(const d of a.m.keys()){let e=a.m.get(d);e=e.filter(f=>f.startTime<b||f.endTime>=c);a.m.set(d,e)}}function Pd(a){let b=Infinity,c=-Infinity;for(const d of a.m.values())for(const e of d)b=Math.min(b,e.startTime),c=Math.max(c,e.endTime);b!==Infinity&&c!==-Infinity&&(a.g=a.g==null?Math.max(b,a.u):Math.min(a.g,Math.max(b,a.u)),a.h=Math.max(a.h,Math.min(c,a.A)))} function Qd(a,b,c=-1){(!a.o.has(c)||a.D!=="HLS"||a.D==="HLS"&&c===-1&&a.o.get(c)===0)&&a.o.set(c,b);b=a.i.get(c)||[];for(let d=0;d<b.length;d++){const {buffer:e,startTime:f,endTime:g,uri:h,lg:k}=b[d];Nd(a,e,f,g,h,k)}a.i.set(c,[])}function Rd(a,b){a.I=b}function Sd(a,b,c){a.u=b;a.A=c}function Td(a,b,c){a.F=b;if(b=a.m.get(b))b=b.filter(d=>d.endTime<=c),b.length&&a.j.append(b)}function Ud(a,b,c){b.startTime+=c;b.endTime+=c;for(const d of b.nestedCues)Ud(a,d,c)} function Vd(a,b,c){const d=new Map;for(const e of b){b=e.stream;const f=e.cue;d.getOrInsert(b,[]);Ud(a,f,c);f.startTime>=a.u&&f.startTime<a.A&&(d.get(b).push(f),b==a.F&&a.j.append([f]))}for(const e of d.keys()){c=a.m.getOrInsertComputed(e,()=>[]);for(const f of d.get(e))c.push(f)}Pd(a)} var Wd=class{constructor(a,b="UNKNOWN"){this.l=null;this.j=a;this.D=b;this.B=this.I=this.G=!1;this.o=new Map;this.i=new Map;this.u=0;this.A=Infinity;this.h=this.g=null;this.F="";this.C=()=>{};this.m=new Map}destroy(){this.j=this.l=null;this.o.clear();this.i.clear();this.m.clear();return Promise.resolve()}async remove(a,b,c=!1){await Promise.resolve();if(!(a>=b)){if(c&&(Od(this,a,b),this.F===""))return;c=d=>d.startTime<b&&d.endTime>a;for(const d of this.i.keys()){const e=this.i.get(d),f=[];for(let g= 0;g<e.length;g++){const h=e[g];c(h)||f.push(h)}this.i.set(d,f)}this.j&&this.j.remove(a,b)&&this.g!=null&&(b<=this.g||a>=this.h||(a<=this.g&&b>=this.h?this.g=this.h=null:a<=this.g&&b<this.h?this.g=b:a>this.g&&b>=this.h&&(this.h=a)),Pd(this))}}};w("shaka.text.TextEngine",Wd);Wd.prototype.destroy=Wd.prototype.destroy;Wd.findParser=Ld;Wd.unregisterParser=function(a){Kd.delete(a)};Wd.registerParser=Jd;var Kd=new Map;function Xd(a,b,c){let d=!0,e=null;a.h=()=>{clearTimeout(e);d=!1};e=setTimeout(()=>{d&&b()},c*1E3)}function Yd(a,b){Xd(a,()=>{Yd(a,b);a.g()},b)}var J=class{constructor(a){this.g=a;this.h=null}Ja(){this.stop();this.g();return this}ha(a){this.stop();Xd(this,()=>{this.g()},a);return this}Aa(a){this.stop();Yd(this,a);return this}stop(){this.h?.();this.h=null}};w("shaka.util.Timer",J);J.prototype.stop=J.prototype.stop;J.prototype.tickEvery=J.prototype.Aa;J.prototype.tickAfter=J.prototype.ha; J.prototype.tickNow=J.prototype.Ja;function Zd(a){return a!=null}function $d(a,b){return Promise.race([b,new Promise((c,d)=>{(new J(d)).ha(a)})])}function ae(a){return new Promise(b=>{(new J(b)).ha(a)})};function be(a,b){a=ce(a);b=ce(b);return a.split("-")[0]==b.split("-")[0]}function de(a,b){a=ce(a);b=ce(b);a=a.split("-");b=b.split("-");return a[0]==b[0]&&a.length==1&&b.length==2}function ee(a,b){a=ce(a);b=ce(b);a=a.split("-");b=b.split("-");return a.length==2&&b.length==2&&a[0]==b[0]}function ce(a){const [b="",c=""]=a.split("-x-"),[d="",e=""]=b.split("-");a=c?`${"x-"}${c}`:"";let f=d.toLowerCase();f=fe.get(f)||f;const g=e.toUpperCase();return`${g?`${f}-${g}`:f}${a?`-${a}`:""}`} function ge(a,b){a=ce(a);b=ce(b);return b==a?4:de(b,a)?3:ee(b,a)?2:de(a,b)?1:0}function he(a){const b=a.indexOf("-");a=b>=0?a.substring(0,b):a;a=a.toLowerCase();return a=fe.get(a)||a}function ie(a){return a.language?ce(a.language):a.audio&&a.audio.language?ce(a.audio.language):a.video&&a.video.language?ce(a.video.language):"und"} function je(a,b){a=ce(a);const c=new Set;for(const d of b)c.add(ce(d));for(const d of c)if(d==a)return d;for(const d of c)if(de(d,a))return d;for(const d of c)if(ee(d,a))return d;for(const d of c)if(de(a,d))return d;return null}var ke=class{};w("shaka.util.LanguageUtils",ke);ke.findClosestLocale=je;ke.getLocaleForVariant=ie;ke.getLocaleForText=function(a){return ce(a.language||"und")};ke.getBase=he;ke.relatedness=ge;ke.areSiblings=function(a,b){const c=he(a),d=he(b);return a!=c&&b!=d&&c==d}; ke.normalize=ce;ke.isSiblingOf=ee;ke.isParentOf=de;ke.areLanguageCompatible=be;ke.areLocaleCompatible=function(a,b){a=ce(a);b=ce(b);return a==b}; var fe=new Map([["aar","aa"],["abk","ab"],["afr","af"],["aka","ak"],["alb","sq"],["amh","am"],["ara","ar"],["arg","an"],["arm","hy"],["asm","as"],["ava","av"],["ave","ae"],["aym","ay"],["aze","az"],["bak","ba"],["bam","bm"],["baq","eu"],["bel","be"],["ben","bn"],["bih","bh"],["bis","bi"],["bod","bo"],["bos","bs"],["bre","br"],["bul","bg"],["bur","my"],["cat","ca"],["ces","cs"],["cha","ch"],["che","ce"],["chi","zh"],["chu","cu"],["chv","cv"],["cor","kw"],["cos","co"],["cre","cr"],["cym","cy"],["cze", "cs"],["dan","da"],["deu","de"],["div","dv"],["dut","nl"],["dzo","dz"],["ell","el"],["eng","en"],["epo","eo"],["est","et"],["eus","eu"],["ewe","ee"],["fao","fo"],["fas","fa"],["fij","fj"],["fin","fi"],["fra","fr"],["fre","fr"],["fry","fy"],["ful","ff"],["geo","ka"],["ger","de"],["gla","gd"],["gle","ga"],["glg","gl"],["glv","gv"],["gre","el"],["grn","gn"],["guj","gu"],["hat","ht"],["hau","ha"],["heb","he"],["her","hz"],["hin","hi"],["hmo","ho"],["hrv","hr"],["hun","hu"],["hye","hy"],["ibo","ig"],["ice", "is"],["ido","io"],["iii","ii"],["iku","iu"],["ile","ie"],["ina","ia"],["ind","id"],["ipk","ik"],["isl","is"],["ita","it"],["jav","jv"],["jpn","ja"],["kal","kl"],["kan","kn"],["kas","ks"],["kat","ka"],["kau","kr"],["kaz","kk"],["khm","km"],["kik","ki"],["kin","rw"],["kir","ky"],["kom","kv"],["kon","kg"],["kor","ko"],["kua","kj"],["kur","ku"],["lao","lo"],["lat","la"],["lav","lv"],["lim","li"],["lin","ln"],["lit","lt"],["ltz","lb"],["lub","lu"],["lug","lg"],["mac","mk"],["mah","mh"],["mal","ml"],["mao", "mi"],["mar","mr"],["may","ms"],["mkd","mk"],["mlg","mg"],["mlt","mt"],["mon","mn"],["mri","mi"],["msa","ms"],["mya","my"],["nau","na"],["nav","nv"],["nbl","nr"],["nde","nd"],["ndo","ng"],["nep","ne"],["nld","nl"],["nno","nn"],["nob","nb"],["nor","no"],["nya","ny"],["oci","oc"],["oji","oj"],["ori","or"],["orm","om"],["oss","os"],["pan","pa"],["per","fa"],["pli","pi"],["pol","pl"],["por","pt"],["pus","ps"],["que","qu"],["roh","rm"],["ron","ro"],["rum","ro"],["run","rn"],["rus","ru"],["sag","sg"],["san", "sa"],["sin","si"],["slk","sk"],["slo","sk"],["slv","sl"],["sme","se"],["smo","sm"],["sna","sn"],["snd","sd"],["som","so"],["sot","st"],["spa","es"],["sqi","sq"],["srd","sc"],["srp","sr"],["ssw","ss"],["sun","su"],["swa","sw"],["swe","sv"],["tah","ty"],["tam","ta"],["tat","tt"],["tel","te"],["tgk","tg"],["tgl","tl"],["tha","th"],["tib","bo"],["tir","ti"],["ton","to"],["tsn","tn"],["tso","ts"],["tuk","tk"],["tur","tr"],["twi","tw"],["uig","ug"],["ukr","uk"],["urd","ur"],["uzb","uz"],["ven","ve"],["vie", "vi"],["vol","vo"],["wel","cy"],["wln","wa"],["wol","wo"],["xho","xh"],["yid","yi"],["yor","yo"],["zha","za"],["zho","zh"],["zul","zu"]]);function le(a,b,c,d,e){if(e.length){var f=a.textStreams;for(const m of e)if(e=f.filter(n=>n.codecs.startsWith(m)||n.mimeType.startsWith(m)?!0:!1),e.length){f=e;break}a.textStreams=f}f=a.variants;if(b.length||c.length)f=me(f,b,c);if(d.length){b=new Ba;for(var g of f)b.push(String(g.video.width||0),g);const m=[];b.forEach((n,p)=>{n=0;let q=[];for(const t of p)p=d.filter(u=>t.decodingInfos[0][u]).length,p>n?(n=p,q=[t]):p==n&&q.push(t);m.push(...q)});f=m}g=new Set;for(var h of f)h.video&&g.add(h.video); if(g.size){var k={vp8:1,avc:1,"dovi-avc":.95,vp9:.9,vp09:.9,hevc:.85,"dovi-hevc":.8,"dovi-p5":.75,av01:.7,"dovi-av1":.65,vvc:.6};b=Array.from(g).sort((m,n)=>m.bandwidth&&n.bandwidth&&m.bandwidth!=n.bandwidth?m.bandwidth-n.bandwidth:m.width!=n.width?m.width-n.width:m.codecs&&n.codecs?(m=Cd(m.codecs),n=Cd(n.codecs),(k[m]||1)-(k[n]||1)):0);var l=[];h=new Map;g=m=>{const n=[String(m.width||""),String(m.height||""),String(Math.round(m.frameRate||0)),m.hdr||"",m.fastSwitching];m.dependencyStream&&n.push(m.dependencyStream.baseOriginalId|| "");m.roles&&n.push(m.roles.sort().join("_"));return n.join(";")};for(const m of b){b=g(m);c=h.get(b)||[];if(c.length){e=Cd(c[c.length-1].codecs);const n=Cd(m.codecs);e==n&&(c.push(m),l.push(m.id))}else c.push(m),l.push(m.id);h.set(b,c)}a.variants=f.filter(m=>(m=m.video)&&!l.includes(m.id)?!1:!0)}else a.variants=f} function me(a,b,c){for(const d of b)if(b=a.filter(e=>e.video&&e.video.codecs.startsWith(d)),b.length){a=b;break}for(const d of c)if(c=a.filter(e=>e.audio&&e.audio.codecs.startsWith(d)),c.length){a=c;break}return a} function ne(a,b,c){if(a&&a.video&&a.video.width&&a.video.height){var d=a.video.width;let e=a.video.height;e>d&&([d,e]=[e,d]);(c=!(d>=b.minWidth&&d<=Math.min(b.maxWidth,c.width))||!(e>=b.minHeight&&e<=Math.min(b.maxHeight,c.height)))||(d*=e,c=!(d>=b.minPixels&&d<=b.maxPixels));if(c)return!1}if(d=a&&a.video&&a.video.frameRate)d=a.video.frameRate,d=!(d>=b.minFrameRate&&d<=b.maxFrameRate);!d&&(d=a&&a.audio&&a.audio.channelsCount)&&(d=a.audio.channelsCount,d=!(d>=b.minChannelsCount&&d<=b.maxChannelsCount)); d||(a=a.bandwidth,d=!(a>=b.minBandwidth&&a<=b.maxBandwidth));return d?!1:!0}async function oe(a,b,c=[],d={}){await pe(a,b,b.offlineSessionIds.length>0,c,d);qe(b);await re(b)}async function pe(a,b,c,d,e){D().qa()&&se(b.variants);await