UNPKG

shaka-player

Version:
556 lines 243 kB
/*

 Copyright The Closure Library Authors.
 SPDX-License-Identifier: Apache-2.0
*/
var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_ES6=!1;$jscomp.ASSUME_ES2020=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.ISOLATE_POLYFILLS=!1;$jscomp.FORCE_POLYFILL_PROMISE=!1;$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION=!1;$jscomp.INSTRUMENT_ASYNC_CONTEXT=!0;$jscomp.objectCreate=$jscomp.ASSUME_ES5||typeof Object.create=="function"?Object.create:function(a){var b=function(){};b.prototype=a;return new b};
$jscomp.defineProperty=$jscomp.ASSUME_ES5||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};$jscomp.getGlobal=function(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");};
$jscomp.global=$jscomp.ASSUME_ES2020?globalThis:$jscomp.getGlobal(this);$jscomp.IS_SYMBOL_NATIVE=typeof Symbol==="function"&&typeof Symbol("x")==="symbol";$jscomp.TRUST_ES6_POLYFILLS=!$jscomp.ISOLATE_POLYFILLS||$jscomp.IS_SYMBOL_NATIVE;$jscomp.polyfills={};$jscomp.propertyToPolyfillSymbol={};$jscomp.POLYFILL_PREFIX="$jscp$";var $jscomp$lookupPolyfilledValue=function(a,b,c){if(!c||a!=null){c=$jscomp.propertyToPolyfillSymbol[b];if(c==null)return a[b];c=a[c];return c!==void 0?c:a[b]}};
$jscomp.TYPED_ARRAY_CLASSES=function(){var a="Int8 Uint8 Uint8Clamped Int16 Uint16 Int32 Uint32 Float32 Float64".split(" ");$jscomp.global.BigInt64Array&&(a.push("BigInt64"),a.push("BigUint64"));return a}();$jscomp.polyfillTypedArrayMethod=function(a,b,c,d){if(b)for(var e=0;e<$jscomp.TYPED_ARRAY_CLASSES.length;e++){var f=$jscomp.TYPED_ARRAY_CLASSES[e]+"Array.prototype."+a;$jscomp.ISOLATE_POLYFILLS?$jscomp.polyfillIsolated(f,b,c,d):$jscomp.polyfillUnisolated(f,b,c,d)}};
$jscomp.polyfill=function(a,b,c,d){b&&($jscomp.ISOLATE_POLYFILLS?$jscomp.polyfillIsolated(a,b,c,d):$jscomp.polyfillUnisolated(a,b,c,d))};$jscomp.polyfillUnisolated=function(a,b,c,d){c=$jscomp.global;a=a.split(".");for(d=0;d<a.length-1;d++){var e=a[d];if(!(e in c))return;c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&b!=null&&$jscomp.defineProperty(c,a,{configurable:!0,writable:!0,value:b})};
$jscomp.polyfillIsolated=function(a,b,c,d){var e=a.split(".");a=e.length===1;d=e[0];d=!a&&d in $jscomp.polyfills?$jscomp.polyfills:$jscomp.global;for(var f=0;f<e.length-1;f++){var g=e[f];if(!(g in d))return;d=d[g]}e=e[e.length-1];c=$jscomp.IS_SYMBOL_NATIVE&&c==="es6"?d[e]:null;b=b(c);b!=null&&(a?$jscomp.defineProperty($jscomp.polyfills,e,{configurable:!0,writable:!0,value:b}):b!==c&&($jscomp.propertyToPolyfillSymbol[e]===void 0&&(c=Math.random()*1E9>>>0,$jscomp.propertyToPolyfillSymbol[e]=$jscomp.IS_SYMBOL_NATIVE?
$jscomp.global.Symbol(e):$jscomp.POLYFILL_PREFIX+c+"$"+e),$jscomp.defineProperty(d,$jscomp.propertyToPolyfillSymbol[e],{configurable:!0,writable:!0,value:b})))};
$jscomp.getConstructImplementation=function(){function a(){function c(){}new c;Reflect.construct(c,[],function(){});return new c instanceof c}if($jscomp.TRUST_ES6_POLYFILLS&&typeof Reflect!="undefined"&&Reflect.construct){if(a())return Reflect.construct;var b=Reflect.construct;return function(c,d,e){c=b(c,d);e&&Reflect.setPrototypeOf(c,e.prototype);return c}}return function(c,d,e){e===void 0&&(e=c);e=$jscomp.objectCreate(e.prototype||Object.prototype);return Function.prototype.apply.call(c,e,d)||
e}};$jscomp.construct={valueOf:$jscomp.getConstructImplementation}.valueOf();$jscomp.underscoreProtoCanBeSet=function(){var a={a:!0},b={};try{return b.__proto__=a,b.a}catch(c){}return!1};$jscomp.setPrototypeOf=$jscomp.ASSUME_ES6||$jscomp.TRUST_ES6_POLYFILLS&&typeof Object.setPrototypeOf=="function"?Object.setPrototypeOf:$jscomp.underscoreProtoCanBeSet()?function(a,b){a.__proto__=b;if(a.__proto__!==b)throw new TypeError(a+" is not extensible");return a}:null;
$jscomp.inherits=function(a,b){a.prototype=$jscomp.objectCreate(b.prototype);a.prototype.constructor=a;if($jscomp.ASSUME_ES6||$jscomp.setPrototypeOf){var c=$jscomp.setPrototypeOf;c(a,b)}else for(c in b)if(c!="prototype")if(Object.defineProperties){var d=Object.getOwnPropertyDescriptor(b,c);d&&Object.defineProperty(a,c,d)}else a[c]=b[c];a.superClass_=b.prototype};$jscomp.arrayIteratorImpl=function(a){var b=0;return function(){return b<a.length?{done:!1,value:a[b++]}:{done:!0}}};
$jscomp.arrayIterator=function(a){return{next:$jscomp.arrayIteratorImpl(a)}};$jscomp.makeIterator=function(a){var b=typeof Symbol!="undefined"&&Symbol.iterator&&a[Symbol.iterator];if(b)return b.call(a);if(typeof a.length=="number")return $jscomp.arrayIterator(a);throw Error(String(a)+" is not an iterable or ArrayLike");};$jscomp.arrayFromIterator=function(a){for(var b,c=[];!(b=a.next()).done;)c.push(b.value);return c};$jscomp.arrayFromIterable=function(a){return a instanceof Array?a:$jscomp.arrayFromIterator($jscomp.makeIterator(a))};
$jscomp.createTemplateTagFirstArg=function(a){return $jscomp.createTemplateTagFirstArgWithRaw(a,a)};$jscomp.createTemplateTagFirstArgWithRaw=function(a,b){a.raw=b;Object.freeze&&(Object.freeze(a),Object.freeze(b));return a};$jscomp.generator={};$jscomp.generator.ensureIteratorResultIsObject_=function(a){if(!(a instanceof Object))throw new TypeError("Iterator result "+a+" is not an object");};
$jscomp.generator.Context=function(){this.isRunning_=!1;this.yieldAllIterator_=null;this.yieldResult=void 0;this.nextAddress=1;this.finallyAddress_=this.catchAddress_=0;this.finallyContexts_=this.abruptCompletion_=null};$jscomp.generator.Context.prototype.start_=function(){if(this.isRunning_)throw new TypeError("Generator is already running");this.isRunning_=!0};$jscomp.generator.Context.prototype.stop_=function(){this.isRunning_=!1};
$jscomp.generator.Context.prototype.jumpToErrorHandler_=function(){this.nextAddress=this.catchAddress_||this.finallyAddress_};$jscomp.generator.Context.prototype.next_=function(a){this.yieldResult=a};$jscomp.generator.Context.prototype.throw_=function(a){this.abruptCompletion_={exception:a,isException:!0};this.jumpToErrorHandler_()};$jscomp.generator.Context.prototype.getNextAddressJsc=function(){return this.nextAddress};$jscomp.generator.Context.prototype.getNextAddressJsc=function(){return this.nextAddress};
$jscomp.generator.Context.prototype.getYieldResultJsc=function(){return this.yieldResult};$jscomp.generator.Context.prototype.getYieldResultJsc=function(){return this.yieldResult};$jscomp.generator.Context.prototype.return=function(a){this.abruptCompletion_={return:a};this.nextAddress=this.finallyAddress_};$jscomp.generator.Context.prototype["return"]=$jscomp.generator.Context.prototype.return;
$jscomp.generator.Context.prototype.jumpThroughFinallyBlocks=function(a){this.abruptCompletion_={jumpTo:a};this.nextAddress=this.finallyAddress_};$jscomp.generator.Context.prototype.jumpThroughFinallyBlocks=$jscomp.generator.Context.prototype.jumpThroughFinallyBlocks;$jscomp.generator.Context.prototype.yield=function(a,b){this.nextAddress=b;return{value:a}};$jscomp.generator.Context.prototype.yield=$jscomp.generator.Context.prototype.yield;
$jscomp.generator.Context.prototype.yieldAll=function(a,b){a=$jscomp.makeIterator(a);var c=a.next();$jscomp.generator.ensureIteratorResultIsObject_(c);if(c.done)this.yieldResult=c.value,this.nextAddress=b;else return this.yieldAllIterator_=a,this.yield(c.value,b)};$jscomp.generator.Context.prototype.yieldAll=$jscomp.generator.Context.prototype.yieldAll;$jscomp.generator.Context.prototype.jumpTo=function(a){this.nextAddress=a};$jscomp.generator.Context.prototype.jumpTo=$jscomp.generator.Context.prototype.jumpTo;
$jscomp.generator.Context.prototype.jumpToEnd=function(){this.nextAddress=0};$jscomp.generator.Context.prototype.jumpToEnd=$jscomp.generator.Context.prototype.jumpToEnd;$jscomp.generator.Context.prototype.setCatchFinallyBlocks=function(a,b){this.catchAddress_=a;b!=void 0&&(this.finallyAddress_=b)};$jscomp.generator.Context.prototype.setCatchFinallyBlocks=$jscomp.generator.Context.prototype.setCatchFinallyBlocks;
$jscomp.generator.Context.prototype.setFinallyBlock=function(a){this.catchAddress_=0;this.finallyAddress_=a||0};$jscomp.generator.Context.prototype.setFinallyBlock=$jscomp.generator.Context.prototype.setFinallyBlock;$jscomp.generator.Context.prototype.leaveTryBlock=function(a,b){this.nextAddress=a;this.catchAddress_=b||0};$jscomp.generator.Context.prototype.leaveTryBlock=$jscomp.generator.Context.prototype.leaveTryBlock;
$jscomp.generator.Context.prototype.enterCatchBlock=function(a){this.catchAddress_=a||0;a=this.abruptCompletion_.exception;this.abruptCompletion_=null;return a};$jscomp.generator.Context.prototype.enterCatchBlock=$jscomp.generator.Context.prototype.enterCatchBlock;$jscomp.generator.Context.prototype.enterFinallyBlock=function(a,b,c){c?this.finallyContexts_[c]=this.abruptCompletion_:this.finallyContexts_=[this.abruptCompletion_];this.catchAddress_=a||0;this.finallyAddress_=b||0};
$jscomp.generator.Context.prototype.enterFinallyBlock=$jscomp.generator.Context.prototype.enterFinallyBlock;$jscomp.generator.Context.prototype.leaveFinallyBlock=function(a,b){b=this.finallyContexts_.splice(b||0)[0];if(b=this.abruptCompletion_=this.abruptCompletion_||b){if(b.isException)return this.jumpToErrorHandler_();b.jumpTo!=void 0&&this.finallyAddress_<b.jumpTo?(this.nextAddress=b.jumpTo,this.abruptCompletion_=null):this.nextAddress=this.finallyAddress_}else this.nextAddress=a};
$jscomp.generator.Context.prototype.leaveFinallyBlock=$jscomp.generator.Context.prototype.leaveFinallyBlock;$jscomp.generator.Context.prototype.forIn=function(a){return new $jscomp.generator.Context.PropertyIterator(a)};$jscomp.generator.Context.prototype.forIn=$jscomp.generator.Context.prototype.forIn;$jscomp.generator.Context.PropertyIterator=function(a){this.object_=a;this.properties_=[];for(var b in a)this.properties_.push(b);this.properties_.reverse()};
$jscomp.generator.Context.PropertyIterator.prototype.getNext=function(){for(;this.properties_.length>0;){var a=this.properties_.pop();if(a in this.object_)return a}return null};$jscomp.generator.Context.PropertyIterator.prototype.getNext=$jscomp.generator.Context.PropertyIterator.prototype.getNext;$jscomp.generator.Engine_=function(a){this.context_=new $jscomp.generator.Context;this.program_=a};
$jscomp.generator.Engine_.prototype.next_=function(a){this.context_.start_();if(this.context_.yieldAllIterator_)return this.yieldAllStep_(this.context_.yieldAllIterator_.next,a,this.context_.next_);this.context_.next_(a);return this.nextStep_()};
$jscomp.generator.Engine_.prototype.return_=function(a){this.context_.start_();var b=this.context_.yieldAllIterator_;if(b)return this.yieldAllStep_("return"in b?b["return"]:function(c){return{value:c,done:!0}},a,this.context_.return);this.context_.return(a);return this.nextStep_()};
$jscomp.generator.Engine_.prototype.throw_=function(a){this.context_.start_();if(this.context_.yieldAllIterator_)return this.yieldAllStep_(this.context_.yieldAllIterator_["throw"],a,this.context_.next_);this.context_.throw_(a);return this.nextStep_()};
$jscomp.generator.Engine_.prototype.yieldAllStep_=function(a,b,c){try{var d=a.call(this.context_.yieldAllIterator_,b);$jscomp.generator.ensureIteratorResultIsObject_(d);if(!d.done)return this.context_.stop_(),d;var e=d.value}catch(f){return this.context_.yieldAllIterator_=null,this.context_.throw_(f),this.nextStep_()}this.context_.yieldAllIterator_=null;c.call(this.context_,e);return this.nextStep_()};
$jscomp.generator.Engine_.prototype.nextStep_=function(){for(;this.context_.nextAddress;)try{var a=this.program_(this.context_);if(a)return this.context_.stop_(),{value:a.value,done:!1}}catch(b){this.context_.yieldResult=void 0,this.context_.throw_(b)}this.context_.stop_();if(this.context_.abruptCompletion_){a=this.context_.abruptCompletion_;this.context_.abruptCompletion_=null;if(a.isException)throw a.exception;return{value:a.return,done:!0}}return{value:void 0,done:!0}};
$jscomp.generator.Generator_=function(a){this.next=function(b){return a.next_(b)};this.throw=function(b){return a.throw_(b)};this.return=function(b){return a.return_(b)};this[Symbol.iterator]=function(){return this}};$jscomp.generator.createGenerator=function(a,b){b=new $jscomp.generator.Generator_(new $jscomp.generator.Engine_(b));$jscomp.setPrototypeOf&&a.prototype&&$jscomp.setPrototypeOf(b,a.prototype);return b};
$jscomp.asyncExecutePromiseGenerator=function(a){function b(d){return a.next(d)}function c(d){return a.throw(d)}return new Promise(function(d,e){function f(g){g.done?d(g.value):Promise.resolve(g.value).then(b,c).then(f,e)}f(a.next())})};$jscomp.asyncExecutePromiseGeneratorFunction=function(a){return $jscomp.asyncExecutePromiseGenerator(a())};$jscomp.asyncExecutePromiseGeneratorProgram=function(a){return $jscomp.asyncExecutePromiseGenerator(new $jscomp.generator.Generator_(new $jscomp.generator.Engine_(a)))};
$jscomp.getRestArguments=function(){for(var a=Number(this),b=[],c=a;c<arguments.length;c++)b[c-a]=arguments[c];return b};$jscomp.polyfill("Reflect",function(a){return a?a:{}},"es6","es3");$jscomp.polyfill("Reflect.construct",function(a){return $jscomp.construct},"es6","es3");$jscomp.polyfill("Reflect.setPrototypeOf",function(a){if(a)return a;if($jscomp.setPrototypeOf){var b=$jscomp.setPrototypeOf;return function(c,d){try{return b(c,d),!0}catch(e){return!1}}}return null},"es6","es5");
$jscomp.initSymbol=function(){};$jscomp.polyfill("Symbol",function(a){if(a)return a;var b=function(f,g){this.$jscomp$symbol$id_=f;$jscomp.defineProperty(this,"description",{configurable:!0,writable:!0,value:g})};b.prototype.toString=function(){return this.$jscomp$symbol$id_};var c="jscomp_symbol_"+(Math.random()*1E9>>>0)+"_",d=0,e=function(f){if(this instanceof e)throw new TypeError("Symbol is not a constructor");return new b(c+(f||"")+"_"+d++,f)};return e},"es6","es3");
$jscomp.polyfill("Symbol.iterator",function(a){if(a)return a;a=Symbol("Symbol.iterator");$jscomp.defineProperty(Array.prototype,a,{configurable:!0,writable:!0,value:function(){return $jscomp.iteratorPrototype($jscomp.arrayIteratorImpl(this))}});return a},"es6","es3");$jscomp.iteratorPrototype=function(a){a={next:a};a[Symbol.iterator]=function(){return this};return a};
$jscomp.polyfill("Promise",function(a){function b(){this.batch_=null}function c(g){return g instanceof e?g:new e(function(h,k){h(g)})}if(a&&(!($jscomp.FORCE_POLYFILL_PROMISE||$jscomp.FORCE_POLYFILL_PROMISE_WHEN_NO_UNHANDLED_REJECTION&&typeof $jscomp.global.PromiseRejectionEvent==="undefined")||!$jscomp.global.Promise||$jscomp.global.Promise.toString().indexOf("[native code]")===-1))return a;b.prototype.asyncExecute=function(g){if(this.batch_==null){this.batch_=[];var h=this;this.asyncExecuteFunction(function(){h.executeBatch_()})}this.batch_.push(g)};
var d=$jscomp.global.setTimeout;b.prototype.asyncExecuteFunction=function(g){d(g,0)};b.prototype.executeBatch_=function(){for(;this.batch_&&this.batch_.length;){var g=this.batch_;this.batch_=[];for(var h=0;h<g.length;++h){var k=g[h];g[h]=null;try{k()}catch(l){this.asyncThrow_(l)}}}this.batch_=null};b.prototype.asyncThrow_=function(g){this.asyncExecuteFunction(function(){throw g;})};var e=function(g){this.state_=0;this.result_=void 0;this.onSettledCallbacks_=[];this.isRejectionHandled_=!1;var h=this.createResolveAndReject_();
try{g(h.resolve,h.reject)}catch(k){h.reject(k)}};e.prototype.createResolveAndReject_=function(){function g(l){return function(m){k||(k=!0,l.call(h,m))}}var h=this,k=!1;return{resolve:g(this.resolveTo_),reject:g(this.reject_)}};e.prototype.resolveTo_=function(g){if(g===this)this.reject_(new TypeError("A Promise cannot resolve to itself"));else if(g instanceof e)this.settleSameAsPromise_(g);else{a:switch(typeof g){case "object":var h=g!=null;break a;case "function":h=!0;break a;default:h=!1}h?this.resolveToNonPromiseObj_(g):
this.fulfill_(g)}};e.prototype.resolveToNonPromiseObj_=function(g){var h=void 0;try{h=g.then}catch(k){this.reject_(k);return}typeof h=="function"?this.settleSameAsThenable_(h,g):this.fulfill_(g)};e.prototype.reject_=function(g){this.settle_(2,g)};e.prototype.fulfill_=function(g){this.settle_(1,g)};e.prototype.settle_=function(g,h){if(this.state_!=0)throw Error("Cannot settle("+g+", "+h+"): Promise already settled in state"+this.state_);this.state_=g;this.result_=h;this.state_===2&&this.scheduleUnhandledRejectionCheck_();
this.executeOnSettledCallbacks_()};e.prototype.scheduleUnhandledRejectionCheck_=function(){var g=this;d(function(){if(g.notifyUnhandledRejection_()){var h=$jscomp.global.console;typeof h!=="undefined"&&h.error(g.result_)}},1)};e.prototype.notifyUnhandledRejection_=function(){if(this.isRejectionHandled_)return!1;var g=$jscomp.global.CustomEvent,h=$jscomp.global.Event,k=$jscomp.global.dispatchEvent;if(typeof k==="undefined")return!0;typeof g==="function"?g=new g("unhandledrejection",{cancelable:!0}):
typeof h==="function"?g=new h("unhandledrejection",{cancelable:!0}):(g=$jscomp.global.document.createEvent("CustomEvent"),g.initCustomEvent("unhandledrejection",!1,!0,g));g.promise=this;g.reason=this.result_;return k(g)};e.prototype.executeOnSettledCallbacks_=function(){if(this.onSettledCallbacks_!=null){for(var g=0;g<this.onSettledCallbacks_.length;++g)f.asyncExecute(this.onSettledCallbacks_[g]);this.onSettledCallbacks_=null}};var f=new b;e.prototype.settleSameAsPromise_=function(g){var h=this.createResolveAndReject_();
g.callWhenSettled_(h.resolve,h.reject)};e.prototype.settleSameAsThenable_=function(g,h){var k=this.createResolveAndReject_();try{g.call(h,k.resolve,k.reject)}catch(l){k.reject(l)}};e.prototype.then=function(g,h){function k(p,q){return typeof p=="function"?function(t){try{l(p(t))}catch(r){m(r)}}:q}var l,m,n=new e(function(p,q){l=p;m=q});this.callWhenSettled_(k(g,l),k(h,m));return n};e.prototype.catch=function(g){return this.then(void 0,g)};e.prototype.callWhenSettled_=function(g,h){function k(){switch(l.state_){case 1:g(l.result_);
break;case 2:h(l.result_);break;default:throw Error("Unexpected state: "+l.state_);}}var l=this;this.onSettledCallbacks_==null?f.asyncExecute(k):this.onSettledCallbacks_.push(k);this.isRejectionHandled_=!0};e.resolve=c;e.reject=function(g){return new e(function(h,k){k(g)})};e.race=function(g){return new e(function(h,k){for(var l=$jscomp.makeIterator(g),m=l.next();!m.done;m=l.next())c(m.value).callWhenSettled_(h,k)})};e.all=function(g){var h=$jscomp.makeIterator(g),k=h.next();return k.done?c([]):new e(function(l,
m){function n(t){return function(r){p[t]=r;q--;q==0&&l(p)}}var p=[],q=0;do p.push(void 0),q++,c(k.value).callWhenSettled_(n(p.length-1),m),k=h.next();while(!k.done)})};return e},"es6","es3");$jscomp.checkEs6ConformanceViaProxy=function(){try{var a={},b=Object.create(new $jscomp.global.Proxy(a,{get:function(c,d,e){return c==a&&d=="q"&&e==b}}));return b.q===!0}catch(c){return!1}};$jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS=!1;$jscomp.ES6_CONFORMANCE=$jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS&&$jscomp.checkEs6ConformanceViaProxy();
$jscomp.owns=function(a,b){return Object.prototype.hasOwnProperty.call(a,b)};
$jscomp.polyfill("WeakMap",function(a){function b(){if(!a||!Object.seal)return!1;try{var l=Object.seal({}),m=Object.seal({}),n=new a([[l,2],[m,3]]);if(n.get(l)!=2||n.get(m)!=3)return!1;n.delete(l);n.set(m,4);return!n.has(l)&&n.get(m)==4}catch(p){return!1}}function c(){}function d(l){var m=typeof l;return m==="object"&&l!==null||m==="function"}function e(l){if(!$jscomp.owns(l,g)){var m=new c;$jscomp.defineProperty(l,g,{value:m})}}function f(l){if(!$jscomp.ISOLATE_POLYFILLS){var m=Object[l];m&&(Object[l]=
function(n){if(n instanceof c)return n;Object.isExtensible(n)&&e(n);return m(n)})}}if($jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS){if(a&&$jscomp.ES6_CONFORMANCE)return a}else if(b())return a;var g="$jscomp_hidden_"+Math.random();f("freeze");f("preventExtensions");f("seal");var h=0,k=function(l){this.id_=(h+=Math.random()+1).toString();if(l){l=$jscomp.makeIterator(l);for(var m;!(m=l.next()).done;)m=m.value,this.set(m[0],m[1])}};k.prototype.set=function(l,m){if(!d(l))throw Error("Invalid WeakMap key");
e(l);if(!$jscomp.owns(l,g))throw Error("WeakMap key fail: "+l);l[g][this.id_]=m;return this};k.prototype.get=function(l){return d(l)&&$jscomp.owns(l,g)?l[g][this.id_]:void 0};k.prototype.has=function(l){return d(l)&&$jscomp.owns(l,g)&&$jscomp.owns(l[g],this.id_)};k.prototype.delete=function(l){return d(l)&&$jscomp.owns(l,g)&&$jscomp.owns(l[g],this.id_)?delete l[g][this.id_]:!1};return k},"es6","es3");$jscomp.MapEntry=function(){};
$jscomp.polyfill("Map",function(a){function b(){if($jscomp.ASSUME_NO_NATIVE_MAP||!a||typeof a!="function"||!a.prototype.entries||typeof Object.seal!="function")return!1;try{var k=Object.seal({x:4}),l=new a($jscomp.makeIterator([[k,"s"]]));if(l.get(k)!="s"||l.size!=1||l.get({x:4})||l.set({x:4},"t")!=l||l.size!=2)return!1;var m=l.entries(),n=m.next();if(n.done||n.value[0]!=k||n.value[1]!="s")return!1;n=m.next();return n.done||n.value[0].x!=4||n.value[1]!="t"||!m.next().done?!1:!0}catch(p){return!1}}
if($jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS){if(a&&$jscomp.ES6_CONFORMANCE)return a}else if(b())return a;var c=new WeakMap,d=function(k){this[0]={};this[1]=g();this.size=0;if(k){k=$jscomp.makeIterator(k);for(var l;!(l=k.next()).done;)l=l.value,this.set(l[0],l[1])}};d.prototype.set=function(k,l){k=k===0?0:k;var m=e(this,k);m.list||(m.list=this[0][m.id]=[]);m.entry?m.entry.value=l:(m.entry={next:this[1],previous:this[1].previous,head:this[1],key:k,value:l},m.list.push(m.entry),this[1].previous.next=
m.entry,this[1].previous=m.entry,this.size++);return this};d.prototype.delete=function(k){k=e(this,k);return k.entry&&k.list?(k.list.splice(k.index,1),k.list.length||delete this[0][k.id],k.entry.previous.next=k.entry.next,k.entry.next.previous=k.entry.previous,k.entry.head=null,this.size--,!0):!1};d.prototype.clear=function(){this[0]={};this[1]=this[1].previous=g();this.size=0};d.prototype.has=function(k){return!!e(this,k).entry};d.prototype.get=function(k){return(k=e(this,k).entry)&&k.value};d.prototype.entries=
function(){return f(this,function(k){return[k.key,k.value]})};d.prototype.keys=function(){return f(this,function(k){return k.key})};d.prototype.values=function(){return f(this,function(k){return k.value})};d.prototype.forEach=function(k,l){for(var m=this.entries(),n;!(n=m.next()).done;)n=n.value,k.call(l,n[1],n[0],this)};d.prototype[Symbol.iterator]=d.prototype.entries;var e=function(k,l){var m=l&&typeof l;m=="object"||m=="function"?c.has(l)?m=c.get(l):(m=""+ ++h,c.set(l,m)):m="p_"+l;var n=k[0][m];
if(n&&$jscomp.owns(k[0],m))for(k=0;k<n.length;k++){var p=n[k];if(l!==l&&p.key!==p.key||l===p.key)return{id:m,list:n,index:k,entry:p}}return{id:m,list:n,index:-1,entry:void 0}},f=function(k,l){var m=k[1];return $jscomp.iteratorPrototype(function(){if(m){for(;m.head!=k[1];)m=m.previous;for(;m.next!=m.head;)return m=m.next,{done:!1,value:l(m)};m=null}return{done:!0,value:void 0}})},g=function(){var k={};return k.previous=k.next=k.head=k},h=0;return d},"es6","es3");
$jscomp.polyfill("Set",function(a){function b(){if($jscomp.ASSUME_NO_NATIVE_SET||!a||typeof a!="function"||!a.prototype.entries||typeof Object.seal!="function")return!1;try{var d=Object.seal({x:4}),e=new a($jscomp.makeIterator([d]));if(!e.has(d)||e.size!=1||e.add(d)!=e||e.size!=1||e.add({x:4})!=e||e.size!=2)return!1;var f=e.entries(),g=f.next();if(g.done||g.value[0]!=d||g.value[1]!=d)return!1;g=f.next();return g.done||g.value[0]==d||g.value[0].x!=4||g.value[1]!=g.value[0]?!1:f.next().done}catch(h){return!1}}
if($jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS){if(a&&$jscomp.ES6_CONFORMANCE)return a}else if(b())return a;var c=function(d){this.map_=new Map;if(d){d=$jscomp.makeIterator(d);for(var e;!(e=d.next()).done;)this.add(e.value)}this.size=this.map_.size};c.prototype.add=function(d){d=d===0?0:d;this.map_.set(d,d);this.size=this.map_.size;return this};c.prototype.delete=function(d){d=this.map_.delete(d);this.size=this.map_.size;return d};c.prototype.clear=function(){this.map_.clear();this.size=0};c.prototype.has=
function(d){return this.map_.has(d)};c.prototype.entries=function(){return this.map_.entries()};c.prototype.values=function(){return this.map_.values()};c.prototype.keys=c.prototype.values;c.prototype[Symbol.iterator]=c.prototype.values;c.prototype.forEach=function(d,e){var f=this;this.map_.forEach(function(g){return d.call(e,g,g,f)})};return c},"es6","es3");$jscomp.polyfill("Object.is",function(a){return a?a:function(b,c){return b===c?b!==0||1/b===1/c:b!==b&&c!==c}},"es6","es3");
$jscomp.polyfill("Array.prototype.includes",function(a){return a?a:function(b,c){var d=this;d instanceof String&&(d=String(d));var e=d.length;c=c||0;for(c<0&&(c=Math.max(c+e,0));c<e;c++){var f=d[c];if(f===b||Object.is(f,b))return!0}return!1}},"es7","es3");
$jscomp.checkStringArgs=function(a,b,c){if(a==null)throw new TypeError("The 'this' value for String.prototype."+c+" must not be null or undefined");if(b instanceof RegExp)throw new TypeError("First argument to String.prototype."+c+" must not be a regular expression");return a+""};$jscomp.polyfill("String.prototype.includes",function(a){return a?a:function(b,c){return $jscomp.checkStringArgs(this,b,"includes").indexOf(b,c||0)!==-1}},"es6","es3");
$jscomp.polyfill("String.fromCodePoint",function(a){return a?a:function(b){for(var c="",d=0;d<arguments.length;d++){var e=Number(arguments[d]);if(e<0||e>1114111||e!==Math.floor(e))throw new RangeError("invalid_code_point "+e);e<=65535?c+=String.fromCharCode(e):(e-=65536,c+=String.fromCharCode(e>>>10&1023|55296),c+=String.fromCharCode(e&1023|56320))}return c}},"es6","es3");
$jscomp.polyfill("Array.from",function(a){return a?a:function(b,c,d){c=c!=null?c:function(h){return h};var e=[],f=typeof Symbol!="undefined"&&Symbol.iterator&&b[Symbol.iterator];if(typeof f=="function"){b=f.call(b);for(var g=0;!(f=b.next()).done;)e.push(c.call(d,f.value,g++))}else for(f=b.length,g=0;g<f;g++)e.push(c.call(d,b[g],g));return e}},"es6","es3");
$jscomp.iteratorFromArray=function(a,b){if($jscomp.ASSUME_ES6)return a[Symbol.iterator]();a instanceof String&&(a+="");var c=0,d=!1,e={next:function(){if(!d&&c<a.length){var f=c++;return{value:b(f,a[f]),done:!1}}d=!0;return{done:!0,value:void 0}}};e[Symbol.iterator]=function(){return e};return e};$jscomp.polyfill("Array.prototype.values",function(a){return a?a:function(){return $jscomp.iteratorFromArray(this,function(b,c){return c})}},"es8","es3");
$jscomp.polyfill("String.prototype.startsWith",function(a){return a?a:function(b,c){var d=$jscomp.checkStringArgs(this,b,"startsWith");b+="";var e=d.length,f=b.length;c=Math.max(0,Math.min(c|0,d.length));for(var g=0;g<f&&c<e;)if(d[c++]!=b[g++])return!1;return g>=f}},"es6","es3");$jscomp.findInternal=function(a,b,c){a instanceof String&&(a=String(a));for(var d=a.length,e=0;e<d;e++){var f=a[e];if(b.call(c,f,e,a))return{i:e,v:f}}return{i:-1,v:void 0}};
$jscomp.polyfill("Array.prototype.find",function(a){return a?a:function(b,c){return $jscomp.findInternal(this,b,c).v}},"es6","es3");$jscomp.polyfill("Math.clz32",function(a){return a?a:function(b){b=Number(b)>>>0;if(b===0)return 32;var c=0;(b&4294901760)===0&&(b<<=16,c+=16);(b&4278190080)===0&&(b<<=8,c+=8);(b&4026531840)===0&&(b<<=4,c+=4);(b&3221225472)===0&&(b<<=2,c+=2);(b&2147483648)===0&&c++;return c}},"es6","es3");
$jscomp.polyfill("Array.prototype.entries",function(a){return a?a:function(){return $jscomp.iteratorFromArray(this,function(b,c){return[b,c]})}},"es6","es3");var COMPILED=!0,goog=goog||{};goog.global=this||self;
goog.exportPath_=function(a,b,c,d){a=a.split(".");d=d||goog.global;a[0]in d||typeof d.execScript=="undefined"||d.execScript("var "+a[0]);for(var e;a.length&&(e=a.shift());)if(a.length||b===void 0)d=d[e]&&d[e]!==Object.prototype[e]?d[e]:d[e]={};else if(!c&&goog.isObject(b)&&goog.isObject(d[e]))for(var f in b)b.hasOwnProperty(f)&&(d[e][f]=b[f]);else d[e]=b};
goog.define=function(a,b){if(!COMPILED){var c=goog.global.CLOSURE_UNCOMPILED_DEFINES,d=goog.global.CLOSURE_DEFINES;c&&c.nodeType===void 0&&Object.prototype.hasOwnProperty.call(c,a)?b=c[a]:d&&d.nodeType===void 0&&Object.prototype.hasOwnProperty.call(d,a)&&(b=d[a])}return b};goog.FEATURESET_YEAR=2012;goog.DEBUG=!0;goog.LOCALE="en";goog.TRUSTED_SITE=!0;goog.DISALLOW_TEST_ONLY_CODE=COMPILED&&!goog.DEBUG;goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING=!1;
goog.provide=function(a){if(goog.isInModuleLoader_())throw Error("goog.provide cannot be used within a module.");if(!COMPILED&&goog.isProvided_(a))throw Error('Namespace "'+a+'" already declared.');goog.constructNamespace_(a)};goog.constructNamespace_=function(a,b,c){if(!COMPILED){delete goog.implicitNamespaces_[a];for(var d=a;(d=d.substring(0,d.lastIndexOf(".")))&&!goog.getObjectByName(d);)goog.implicitNamespaces_[d]=!0}goog.exportPath_(a,b,c)};goog.NONCE_PATTERN_=/^[\w+/_-]+[=]{0,2}$/;
goog.getScriptNonce_=function(a){a=(a||goog.global).document;return(a=a.querySelector&&a.querySelector("script[nonce]"))&&(a=a.nonce||a.getAttribute("nonce"))&&goog.NONCE_PATTERN_.test(a)?a:""};goog.VALID_MODULE_RE_=/^[a-zA-Z_$][a-zA-Z0-9._$]*$/;
goog.module=function(a){if(typeof a!=="string"||!a||a.search(goog.VALID_MODULE_RE_)==-1)throw Error("Invalid module identifier");if(!goog.isInGoogModuleLoader_())throw Error("Module "+a+" has been loaded incorrectly. Note, modules cannot be loaded as normal scripts. They require some kind of pre-processing step. You're likely trying to load a module via a script tag or as a part of a concatenated bundle without rewriting the module. For more info see: https://github.com/google/closure-library/wiki/goog.module:-an-ES6-module-like-alternative-to-goog.provide.");if(goog.moduleLoaderState_.moduleName)throw Error("goog.module may only be called once per module.");
goog.moduleLoaderState_.moduleName=a;if(!COMPILED){if(goog.isProvided_(a))throw Error('Namespace "'+a+'" already declared.');delete goog.implicitNamespaces_[a]}};goog.module.get=function(a){return goog.module.getInternal_(a)};goog.module.getInternal_=function(a){if(!COMPILED){if(a in goog.loadedModules_)return goog.loadedModules_[a].exports;if(!goog.implicitNamespaces_[a])return a=goog.getObjectByName(a),a!=null?a:null}return null};goog.ModuleType={ES6:"es6",GOOG:"goog"};goog.moduleLoaderState_=null;
goog.isInModuleLoader_=function(){return goog.isInGoogModuleLoader_()||goog.isInEs6ModuleLoader_()};goog.isInGoogModuleLoader_=function(){return!!goog.moduleLoaderState_&&goog.moduleLoaderState_.type==goog.ModuleType.GOOG};goog.isInEs6ModuleLoader_=function(){if(goog.moduleLoaderState_&&goog.moduleLoaderState_.type==goog.ModuleType.ES6)return!0;var a=goog.global.$jscomp;return a?typeof a.getCurrentModulePath!="function"?!1:!!a.getCurrentModulePath():!1};
goog.module.declareLegacyNamespace=function(){if(!COMPILED&&!goog.isInGoogModuleLoader_())throw Error("goog.module.declareLegacyNamespace must be called from within a goog.module");if(!COMPILED&&!goog.moduleLoaderState_.moduleName)throw Error("goog.module must be called prior to goog.module.declareLegacyNamespace.");goog.moduleLoaderState_.declareLegacyNamespace=!0};
goog.declareModuleId=function(a){if(!COMPILED){if(!goog.isInEs6ModuleLoader_())throw Error("goog.declareModuleId may only be called from within an ES6 module");if(goog.moduleLoaderState_&&goog.moduleLoaderState_.moduleName)throw Error("goog.declareModuleId may only be called once per module.");if(a in goog.loadedModules_)throw Error('Module with namespace "'+a+'" already exists.');}if(goog.moduleLoaderState_)goog.moduleLoaderState_.moduleName=a;else{var b=goog.global.$jscomp;if(!b||typeof b.getCurrentModulePath!=
"function")throw Error('Module with namespace "'+a+'" has been loaded incorrectly.');b=b.require(b.getCurrentModulePath());goog.loadedModules_[a]={exports:b,type:goog.ModuleType.ES6,moduleId:a}}};goog.setTestOnly=function(a){if(goog.DISALLOW_TEST_ONLY_CODE)throw a=a||"",Error("Importing test-only code into non-debug environment"+(a?": "+a:"."));};goog.forwardDeclare=function(a){};
COMPILED||(goog.isProvided_=function(a){return a in goog.loadedModules_||!goog.implicitNamespaces_[a]&&goog.getObjectByName(a)!=null},goog.implicitNamespaces_={"goog.module":!0});goog.getObjectByName=function(a,b){a=a.split(".");b=b||goog.global;for(var c=0;c<a.length;c++)if(b=b[a[c]],b==null)return null;return b};goog.addDependency=function(a,b,c,d){!COMPILED&&goog.DEPENDENCIES_ENABLED&&goog.debugLoader_.addDependency(a,b,c,d)};goog.ENABLE_DEBUG_LOADER=!1;
goog.logToConsole_=function(a){goog.global.console&&goog.global.console.error(a)};goog.require=function(a){if(!COMPILED){goog.ENABLE_DEBUG_LOADER&&goog.debugLoader_.requested(a);if(goog.isProvided_(a)){if(goog.isInModuleLoader_())return goog.module.getInternal_(a)}else if(goog.ENABLE_DEBUG_LOADER){var b=goog.moduleLoaderState_;goog.moduleLoaderState_=null;try{goog.debugLoader_.load_(a)}finally{goog.moduleLoaderState_=b}}return null}};goog.requireType=function(a){return{}};goog.basePath="";
goog.abstractMethod=function(){throw Error("unimplemented abstract method");};goog.addSingletonGetter=function(a){a.instance_=void 0;a.getInstance=function(){if(a.instance_)return a.instance_;goog.DEBUG&&(goog.instantiatedSingletons_[goog.instantiatedSingletons_.length]=a);return a.instance_=new a}};goog.instantiatedSingletons_=[];goog.LOAD_MODULE_USING_EVAL=!0;goog.SEAL_MODULE_EXPORTS=goog.DEBUG;goog.loadedModules_={};goog.DEPENDENCIES_ENABLED=!COMPILED&&goog.ENABLE_DEBUG_LOADER;goog.TRANSPILE="detect";
goog.ASSUME_ES_MODULES_TRANSPILED=!1;goog.TRUSTED_TYPES_POLICY_NAME="goog";goog.hasBadLetScoping=null;
goog.loadModule=function(a){var b=goog.moduleLoaderState_;try{goog.moduleLoaderState_={moduleName:"",declareLegacyNamespace:!1,type:goog.ModuleType.GOOG};var c={},d=c;if(typeof a==="function")d=a.call(void 0,d);else if(typeof a==="string")d=goog.loadModuleFromSource_.call(void 0,d,a);else throw Error("Invalid module definition");var e=goog.moduleLoaderState_.moduleName;if(typeof e==="string"&&e)goog.moduleLoaderState_.declareLegacyNamespace?goog.constructNamespace_(e,d,c!==d):goog.SEAL_MODULE_EXPORTS&&
Object.seal&&typeof d=="object"&&d!=null&&Object.seal(d),goog.loadedModules_[e]={exports:d,type:goog.ModuleType.GOOG,moduleId:goog.moduleLoaderState_.moduleName};else throw Error('Invalid module name "'+e+'"');}finally{goog.moduleLoaderState_=b}};goog.loadModuleFromSource_=function(a){eval(goog.CLOSURE_EVAL_PREFILTER_.createScript(arguments[1]));return a};
goog.normalizePath_=function(a){a=a.split("/");for(var b=0;b<a.length;)a[b]=="."?a.splice(b,1):b&&a[b]==".."&&a[b-1]&&a[b-1]!=".."?a.splice(--b,2):b++;return a.join("/")};goog.loadFileSync_=function(a){if(goog.global.CLOSURE_LOAD_FILE_SYNC)return goog.global.CLOSURE_LOAD_FILE_SYNC(a);try{var b=new goog.global.XMLHttpRequest;b.open("get",a,!1);b.send();return b.status==0||b.status==200?b.responseText:null}catch(c){return null}};
goog.typeOf=function(a){var b=typeof a;return b!="object"?b:a?Array.isArray(a)?"array":b:"null"};goog.isArrayLike=function(a){var b=goog.typeOf(a);return b=="array"||b=="object"&&typeof a.length=="number"};goog.isDateLike=function(a){return goog.isObject(a)&&typeof a.getFullYear=="function"};goog.isObject=function(a){var b=typeof a;return b=="object"&&a!=null||b=="function"};
goog.getUid=function(a){return Object.prototype.hasOwnProperty.call(a,goog.UID_PROPERTY_)&&a[goog.UID_PROPERTY_]||(a[goog.UID_PROPERTY_]=++goog.uidCounter_)};goog.hasUid=function(a){return!!a[goog.UID_PROPERTY_]};goog.removeUid=function(a){a!==null&&"removeAttribute"in a&&a.removeAttribute(goog.UID_PROPERTY_);try{delete a[goog.UID_PROPERTY_]}catch(b){}};goog.UID_PROPERTY_="closure_uid_"+(Math.random()*1E9>>>0);goog.uidCounter_=0;
goog.cloneObject=function(a){var b=goog.typeOf(a);if(b=="object"||b=="array"){if(typeof a.clone==="function")return a.clone();if(typeof Map!=="undefined"&&a instanceof Map)return new Map(a);if(typeof Set!=="undefined"&&a instanceof Set)return new Set(a);b=b=="array"?[]:{};for(var c in a)b[c]=goog.cloneObject(a[c]);return b}return a};goog.bindNative_=function(a,b,c){return a.call.apply(a.bind,arguments)};
goog.bindJs_=function(a,b,c){if(!a)throw Error();if(arguments.length>2){var d=Array.prototype.slice.call(arguments,2);return function(){var e=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(e,d);return a.apply(b,e)}}return function(){return a.apply(b,arguments)}};goog.bind=function(a,b,c){Function.prototype.bind&&Function.prototype.bind.toString().indexOf("native code")!=-1?goog.bind=goog.bindNative_:goog.bind=goog.bindJs_;return goog.bind.apply(null,arguments)};
goog.partial=function(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var d=c.slice();d.push.apply(d,arguments);return a.apply(this,d)}};goog.now=function(){return Date.now()};goog.globalEval=function(a){(0,eval)(a)};
goog.getCssName=function(a,b){if(String(a).charAt(0)==".")throw Error('className passed in goog.getCssName must not start with ".". You passed: '+a);var c=function(e){return goog.cssNameMapping_[e]||e},d=function(e){e=e.split("-");for(var f=[],g=0;g<e.length;g++)f.push(c(e[g]));return f.join("-")};d=goog.cssNameMapping_?goog.cssNameMappingStyle_=="BY_WHOLE"?c:d:function(e){return e};a=b?a+"-"+d(b):d(a);return goog.global.CLOSURE_CSS_NAME_MAP_FN?goog.global.CLOSURE_CSS_NAME_MAP_FN(a):a};
goog.setCssNameMapping=function(a,b){goog.cssNameMapping_=a;goog.cssNameMappingStyle_=b};!COMPILED&&goog.global.CLOSURE_CSS_NAME_MAPPING&&(goog.cssNameMapping_=goog.global.CLOSURE_CSS_NAME_MAPPING);goog.GetMsgOptions=function(){};
goog.getMsg=function(a,b,c){c&&c.html&&(a=a.replace(/</g,"&lt;"));c&&c.unescapeHtmlEntities&&(a=a.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&apos;/g,"'").replace(/&quot;/g,'"').replace(/&amp;/g,"&"));b&&(a=a.replace(/\{\$([^}]+)}/g,function(d,e){return b!=null&&e in b?b[e]:d}));return a};goog.getMsgWithFallback=function(a,b){return a};goog.exportSymbol=function(a,b,c){goog.exportPath_(a,b,!0,c)};goog.exportProperty=function(a,b,c){a[b]=c};
goog.inherits=function(a,b){function c(){}c.prototype=b.prototype;a.superClass_=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.base=function(d,e,f){for(var g=Array(arguments.length-2),h=2;h<arguments.length;h++)g[h-2]=arguments[h];return b.prototype[e].apply(d,g)}};goog.scope=function(a){if(goog.isInModuleLoader_())throw Error("goog.scope is not supported within a module.");a.call(goog.global)};COMPILED||(goog.global.COMPILED=COMPILED);
goog.defineClass=function(a,b){var c=b.constructor,d=b.statics;c&&c!=Object.prototype.constructor||(c=function(){throw Error("cannot instantiate an interface (no constructor defined).");});c=goog.defineClass.createSealingConstructor_(c,a);a&&goog.inherits(c,a);delete b.constructor;delete b.statics;goog.defineClass.applyProperties_(c.prototype,b);d!=null&&(d instanceof Function?d(c):goog.defineClass.applyProperties_(c,d));return c};goog.defineClass.SEAL_CLASS_INSTANCES=goog.DEBUG;
goog.defineClass.createSealingConstructor_=function(a,b){return goog.defineClass.SEAL_CLASS_INSTANCES?function(){var c=a.apply(this,arguments)||this;c[goog.UID_PROPERTY_]=c[goog.UID_PROPERTY_];return c}:a};goog.defineClass.OBJECT_PROTOTYPE_FIELDS_="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");
goog.defineClass.applyProperties_=function(a,b){for(var c in b)Object.prototype.hasOwnProperty.call(b,c)&&(a[c]=b[c]);for(var d=0;d<goog.defineClass.OBJECT_PROTOTYPE_FIELDS_.length;d++)c=goog.defineClass.OBJECT_PROTOTYPE_FIELDS_[d],Object.prototype.hasOwnProperty.call(b,c)&&(a[c]=b[c])};goog.identity_=function(a){return a};
goog.createTrustedTypesPolicy=function(a){var b=null,c=goog.global.trustedTypes;if(!c||!c.createPolicy)return b;try{b=c.createPolicy(a,{createHTML:goog.identity_,createScript:goog.identity_,createScriptURL:goog.identity_})}catch(d){goog.logToConsole_(d.message)}return b};
!COMPILED&&goog.DEPENDENCIES_ENABLED&&(goog.isEdge_=function(){return!!(goog.global.navigator&&goog.global.navigator.userAgent?goog.global.navigator.userAgent:"").match(/Edge\/(\d+)(\.\d)*/i)},goog.inHtmlDocument_=function(){var a=goog.global.document;return a!=null&&"write"in a},goog.isDocumentLoading_=function(){var a=goog.global.document;return a.attachEvent?a.readyState!="complete":a.readyState=="loading"},goog.findBasePath_=function(){if(goog.global.CLOSURE_BASE_PATH!=void 0&&typeof goog.global.CLOSURE_BASE_PATH===
"string")goog.basePath=goog.global.CLOSURE_BASE_PATH;else if(goog.inHtmlDocument_()){var a=goog.global.document,b=a.currentScript;a=b?[b]:a.getElementsByTagName("SCRIPT");for(b=a.length-1;b>=0;--b){var c=a[b].src,d=c.lastIndexOf("?");d=d==-1?c.length:d;if(c.slice(d-7,d)=="base.js"){goog.basePath=c.slice(0,d-7);break}}}},goog.findBasePath_(),goog.protectScriptTag_=function(a){return a.replace(/<\/(SCRIPT)/ig,"\\x3c/$1")},goog.DebugLoader_=function(){this.dependencies_={};this.idToPath_={};this.written_=
{};this.loadingDeps_=[];this.depsToLoad_=[];this.paused_=!1;this.factory_=new goog.DependencyFactory;this.deferredCallbacks_={};this.deferredQueue_=[]},goog.DebugLoader_.prototype.bootstrap=function(a,b){function c(){d&&(goog.global.setTimeout(d,0),d=null)}var d=b;if(a.length){b=[];for(var e=0;e<a.length;e++){var f=this.getPathFromDeps_(a[e]);if(!f)throw Error("Unregonized namespace: "+a[e]);b.push(this.dependencies_[f])}f=goog.require;var g=0;for(e=0;e<a.length;e++)f(a[e]),b[e].onLoad(function(){++g==
a.length&&c()})}else c()},goog.DebugLoader_.prototype.loadClosureDeps=function(){this.depsToLoad_.push(this.factory_.createDependency(goog.normalizePath_(goog.basePath+"deps.js"),"deps.js",[],[],{}));this.loadDeps_()},goog.DebugLoader_.prototype.requested=function(a,b){(a=this.getPathFromDeps_(a))&&(b||this.areDepsLoaded_(this.dependencies_[a].requires))&&(b=this.deferredCallbacks_[a])&&(delete this.deferredCallbacks_[a],b())},goog.DebugLoader_.prototype.setDependencyFactory=function(a){this.factory_=
a},goog.DebugLoader_.prototype.load_=function(a){if(this.getPathFromDeps_(a)){var b=this,c=[],d=function(e){var f=b.getPathFromDeps_(e);if(!f)throw Error("Bad dependency path or symbol: "+e);if(!b.written_[f]){b.written_[f]=!0;e=b.dependencies_[f];for(f=0;f<e.requires.length;f++)goog.isProvided_(e.requires[f])||d(e.requires[f]);c.push(e)}};d(a);a=!!this.depsToLoad_.length;this.depsToLoad_=this.depsToLoad_.concat(c);this.paused_||a||this.loadDeps_()}else goog.logToConsole_("goog.require could not find: "+
a)},goog.DebugLoader_.prototype.loadDeps_=function(){for(var a=this,b=this.paused_;this.depsToLoad_.length&&!b;)(function(){var c=!1,d=a.depsToLoad_.shift(),e=!1;a.loading_(d);var f={pause:function(){if(c)throw Error("Cannot call pause after the call to load.");b=!0},resume:function(){c?a.resume_():b=!1},loaded:function(){if(e)throw Error("Double call to loaded.");e=!0;a.loaded_(d)},pending:function(){for(var g=[],h=0;h<a.loadingDeps_.length;h++)g.push(a.loadingDeps_[h]);return g},setModuleState:function(g){goog.moduleLoaderState_=
{type:g,moduleName:"",declareLegacyNamespace:!1}},registerEs6ModuleExports:function(g,h,k){k&&(goog.loadedModules_[k]={exports:h,type:goog.ModuleType.ES6,moduleId:k||""})},registerGoogModuleExports:function(g,h){goog.loadedModules_[g]={exports:h,type:goog.ModuleType.GOOG,moduleId:g}},clearModuleState:function(){goog.moduleLoaderState_=null},defer:function(g){if(c)throw Error("Cannot register with defer after the call to load.");a.defer_(d,g)},areDepsLoaded:function(){return a.areDepsLoaded_(d.requires)}};
try{d.load(f)}finally{c=!0}})();b&&this.pause_()},goog.DebugLoader_.prototype.pause_=function(){this.paused_=!0},goog.DebugLoader_.prototype.resume_=function(){this.paused_&&(this.paused_=!1,this.loadDeps_())},goog.DebugLoader_.prototype.loading_=function(a){this.loadingDeps_.push(a)},goog.DebugLoader_.prototype.loaded_=function(a){for(var b=0;b<this.loadingDeps_.length;b++)if(this.loadingDeps_[b]==a){this.loadingDeps_.splice(b,1);break}for(b=0;b<this.deferredQueue_.length;b++)if(this.deferredQueue_[b]==
a.path){this.deferredQueue_.splice(b,1);break}if(this.loadingDeps_.length==this.deferredQueue_.length&&!this.depsToLoad_.length)for(;this.deferredQueue_.length;)this.requested(this.deferredQueue_.shift(),!0);a.loaded()},goog.DebugLoader_.prototype.areDepsLoaded_=function(a){for(var b=0;b<a.length;b++){var c=this.getPathFromDeps_(a[b]);if(!c||!(c in this.deferredCallbacks_||goog.isProvided_(a[b])))return!1}return!0},goog.DebugLoader_.prototype.getPathFromDeps_=function(a){return a in this.idToPath_?
this.idToPath_[a]:a in this.dependencies_?a:null},goog.DebugLoader_.prototype.defer_=function(a,b){this.deferredCallbacks_[a.path]=b;this.deferredQueue_.push(a.path)},goog.LoadController=function(){},goog.LoadController.prototype.pause=function(){},goog.LoadController.prototype.resume=function(){},goog.LoadController.prototype.loaded=function(){},goog.LoadController.prototype.pending=function(){},goog.LoadController.prototype.registerEs6ModuleExports=function(a,b,c){},goog.LoadController.prototype.setModuleState=
function(a){},goog.LoadController.prototype.clearModuleState=function(){},goog.LoadController.prototype.defer=function(a){},goog.LoadController.prototype.areDepsLoaded=function(){},goog.Dependency=function(a,b,c,d,e){this.path=a;this.relativePath=b;this.provides=c;this.requires=d;this.loadFlags=e;this.loaded_=!1;this.loadCallbacks_=[]},goog.Dependency.prototype.getPathName=function(){var a=this.path,b=a.indexOf("://");b>=0&&(a=a.substring(b+3),b=a.indexOf("/"),b>=0&&(a=a.substring(b+1)));return a},
goog.Dependency.prototype.onLoad=function(a){this.loaded_?a():this.loadCallbacks_.push(a)},goog.Dependency.prototype.loaded=function(){this.loaded_=!0;var a=this.loadCallbacks_;this.loadCallbacks_=[];for(var b=0;b<a.length;b++)a[b]()},goog.Dependency.defer_=!1,goog.Dependency.callbackMap_={},goog.Dependency.registerCallback_=function(a){var b=Math.random().toString(32);goog.Dependency.callbackMap_[b]=a;return b},goog.Dependency.unregisterCallback_=function(a){delete goog.Dependency.callbackMap_[a]},
goog.Dependency.callback_=function(a,b){if(a in goog.Dependency.callbackMap_){for(var c=goog.Dependency.callbackMap_[a],d=[],e=1;e<arguments.length;e++)d.push(arguments[e]);c.apply(void 0,d)}else throw Error("Callback key "+a+" does not exist (was base.js loaded more than once?).");},goog.Dependency.prototype.load=function(a){if(goog.global.CLOSURE_IMPORT_SCRIPT)goog.global.CLOSURE_IMPORT_SCRIPT(this.path)?a.loaded():a.pause();else if(goog.inHtmlDocument_()){var b=goog.global.document;if(b.readyState==
"complete"&&!goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING){if(/\bdeps.js$/.test(this.path)){a.loaded();return}throw Error('Cannot write "'+this.path+'" after document load');}var c=goog.getScriptNonce_();if(!goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING&&goog.isDocumentLoading_()){var d=function(h){h.readyState&&h.readyState!="complete"?h.onload=d:(goog.Dependency.unregisterCallback_(e),a.loaded())};var e=goog.Dependency.registerCallback_(d);c=c?' nonce="'+c+'"':"";var f='<script src="'+this.path+'"'+
c+(goog.Dependency.defer_?" defer":"")+' id="script-'+e+'">\x3c/script>';f+="<script"+c+">";f=goog.Dependency.defer_?f+("document.getElementById('script-"+e+"').onload = function() {\n  goog.Dependency.callback_('"+e+"', this);\n};\n"):f+("goog.Dependency.callback_('"+e+"', document.getElementById('script-"+e+"'));");f+="\x3c/script>";b.write(goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createHTML(f):f)}else{var g=b.createElement("script");g.defer=goog.Dependency.defer_;g.async=!1;c&&(g.nonce=
c);g.onload=function(){g.onload=null;a.loaded()};g.src=goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createScriptURL(this.path):this.path;b.head.appendChild(g)}}else goog.logToConsole_("Cannot use default debug loader outside of HTML documents."),this.relativePath=="deps.js"?(goog.logToConsole_("Consider setting CLOSURE_IMPORT_SCRIPT before loading base.js, or setting CLOSURE_NO_DEPS to true."),a.loaded()):a.pause()},goog.Es6ModuleDependency=function(a,b,c,d,e){goog.Dependency.call(this,a,
b,c,d,e)},goog.inherits(goog.Es6ModuleDependency,goog.Dependency),goog.Es6ModuleDependency.prototype.load=function(a){function b(l,m){var n="",p=goog.getScriptNonce_();p&&(n=' nonce="'+p+'"');l=m?'<script type="module" crossorigin'+n+">"+m+"\x3c/script>":'<script type="module" crossorigin src="'+l+'"'+n+">\x3c/script>";d.write(goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createHTML(l):l)}function c(l,m){var n=d.createElement("script");n.defer=!0;n.async=!1;n.type="module";n.setAttribute("crossorigin",
!0);var p=goog.getScriptNonce_();p&&(n.nonce=p);m?n.text=goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createScript(m):m:n.src=goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createScriptURL(l):l;d.head.appendChild(n)}if(goog.global.CLOSURE_IMPORT_SCRIPT)goog.global.CLOSURE_IMPORT_SCRIPT(this.path)?a.loaded():a.pause();else if(goog.inHtmlDocument_()){var d=goog.global.document,e=this;if(goog.isDocumentLoading_()){var f=b;goog.Dependency.defer_=!0}else f=c;var g=goog.Dependency.registerCallback_(function(){goog.Dependency.unregisterCallback_(g);
a.setModuleState(goog.ModuleType.ES6)});f(void 0,'goog.Dependency.callback_("'+g+'")');f(this.path,void 0);var h=goog.Dependency.registerCallback_(function(l){goog.Dependency.unregisterCallback_(h);a.registerEs6ModuleExports(e.path,l,goog.moduleLoaderState_.moduleName)});f(void 0,'import * as m from "'+this.path+'"; goog.Dependency.callback_("'+h+'", m)');var k=goog.Dependency.registerCallback_(function(){goog.Dependency.unregisterCallback_(k);a.clearModuleState();a.loaded()});f(void 0,'goog.Dependency.callback_("'+
k+'")')}else goog.logToConsole_("Cannot use default debug loader outside of HTML documents."),a.pause()},goog.TransformedDependency=function(a,b,c,d,e){goog.Dependency.call(this,a,b,c,d,e);this.contents_=null;this.lazyFetch_=!goog.inHtmlDocument_()||!("noModule"in goog.global.document.createElement("script"))},goog.inherits(goog.TransformedDependency,goog.Dependency),goog.TransformedDependency.prototype.load=function(a){function b(){e.contents_=goog.loadFileSync_(e.path);e.contents_&&(e.contents_=
e.transform(e.contents_),e.contents_&&(e.contents_+="\n//# sourceURL="+e.path))}function c(){e.lazyFetch_&&b();if(e.contents_){f&&a.setModuleState(goog.ModuleType.ES6);try{var l=e.contents_;e.contents_=null;goog.globalEval(goog.CLOSURE_EVAL_PREFILTER_.createScript(l));if(f)var m=goog.moduleLoaderState_.moduleName}finally{f&&a.clearModuleState()}f&&goog.global.$jscomp.require.ensure([e.getPathName()],function(){a.registerEs6ModuleExports(e.path,goog.global.$jscomp.require(e.getPathName()),m)});a.loaded()}}
function d(){var l=goog.global.document,m=goog.Dependency.registerCallback_(function(){goog.Dependency.unregisterCallback_(m);c()}),n=goog.getScriptNonce_();n="<script"+(n?' nonce="'+n+'"':"")+">"+goog.protectScriptTag_('goog.Dependency.callback_("'+m+'");')+"\x3c/script>";l.write(goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createHTML(n):n)}var e=this;if(goog.global.CLOSURE_IMPORT_SCRIPT)b(),this.contents_&&goog.global.CLOSURE_IMPORT_SCRIPT("",this.contents_)?(this.contents_=null,a.loaded()):
a.pause();else{var f=this.loadFlags.module==goog.ModuleType.ES6;this.lazyFetch_||b();var g=a.pending().length>1;if(goog.Dependency.defer_&&(g||goog.isDocumentLoading_()))a.defer(function(){c()});else{var h=goog.global.document;g=goog.inHtmlDocument_()&&("ActiveXObject"in goog.global||goog.isEdge_());if(f&&goog.inHtmlDocument_()&&goog.isDocumentLoading_()&&!g){goog.Dependency.defer_=!0;a.pause();var k=h.onreadystatechange;h.onreadystatechange=function(){h.readyState=="interactive"&&(h.onreadystatechange=
k,c(),a.resume());typeof k==="function"&&k.apply(void 0,arguments)}}else goog.inHtmlDocument_()&&goog.isDocumentLoading_()?d():c()}}},goog.TransformedDependency.prototype.transform=function(a){},goog.PreTranspiledEs6ModuleDependency=function(a,b,c,d,e){goog.TransformedDependency.call(this,a,b,c,d,e)},goog.inherits(goog.PreTranspiledEs6ModuleDependency,goog.TransformedDependency),goog.PreTranspiledEs6ModuleDependency.prototype.transform=function(a){return a},goog.GoogModuleDependency=function(a,b,
c,d,e){goog.TransformedDependency.call(this,a,b,c,d,e)},goog.inherits(goog.GoogModuleDependency,goog.TransformedDependency),goog.GoogModuleDependency.prototype.transform=function(a){return goog.LOAD_MODULE_USING_EVAL&&goog.global.JSON!==void 0?"goog.loadModule("+goog.global.JSON.stringify(a+"\n//# sourceURL="+this.path+"\n")+");":'goog.loadModule(function(exports) {"use strict";'+a+"\n;return exports});\n//# sourceURL="+this.path+"\n"},goog.DebugLoader_.prototype.addDependency=function(a,b,c,d){b=
b||[];a=a.replace(/\\/g,"/");var e=goog.normalizePath_(goog.basePath+a);d&&typeof d!=="boolean"||(d=d?{module:goog.ModuleType.GOOG}:{});c=this.factory_.createDependency(e,a,b,c,d);this.dependencies_[e]=c;for(c=0;c<b.length;c++)this.idToPath_[b[c]]=e;this.idToPath_[a]=e},goog.DependencyFactory=function(){},goog.DependencyFactory.prototype.createDependency=function(a,b,c,d,e){return e.module==goog.ModuleType.GOOG?new goog.GoogModuleDependency(a,b,c,d,e):e.module==goog.ModuleType.ES6?goog.ASSUME_ES_MODULES_TRANSPILED?
new goog.PreTranspiledEs6ModuleDependency(a,b,c,d,e):new goog.Es6ModuleDependency(a,b,c,d,e):new goog.Dependency(a,b,c,d,e)},goog.debugLoader_=new goog.DebugLoader_,goog.loadClosureDeps=function(){goog.debugLoader_.loadClosureDeps()},goog.setDependencyFactory=function(a){goog.debugLoader_.setDependencyFactory(a)},goog.TRUSTED_TYPES_POLICY_=goog.TRUSTED_TYPES_POLICY_NAME?goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME+"#base"):null,goog.global.CLOSURE_NO_DEPS||goog.debugLoader_.loadClosureDeps(),
goog.bootstrap=function(a,b){goog.debugLoader_.bootstrap(a,b)});if(!COMPILED){var isChrome87=!1;try{isChrome87=eval(goog.global.trustedTypes.emptyScript)!==goog.global.trustedTypes.emptyScript}catch(a){}goog.CLOSURE_EVAL_PREFILTER_=goog.global.trustedTypes&&isChrome87&&goog.createTrustedTypesPolicy("goog#base#devonly#eval")||{createScript:goog.identity_}};/*
 @license
 Shaka Player
 Copyright 2016 Google LLC
 SPDX-License-Identifier: Apache-2.0
*/
goog.asserts=function(){};goog.asserts.assert=function(a,b){};goog.asserts.ENABLE_ASSERTS=!0;goog.asserts.ENABLE_ASSERTS&&console.assert&&console.assert.bind&&(goog.asserts.assert=console.assert.bind(console));var shaka={log:function(){}};shaka.log.alwaysError=function(){};shaka.log.alwaysWarn=function(){};shaka.log.warnOnce=function(a){var b=$jscomp.getRestArguments.apply(1,arguments);shaka.log.oneTimeWarningIssued_.has(a)||(shaka.log.oneTimeWarningIssued_.add(a),shaka.log.alwaysWarn.apply(shaka.log,(0,$jscomp.arrayFromIterable)(b)))};shaka.log.error=function(){};shaka.log.warning=function(){};shaka.log.info=function(){};shaka.log.debug=function(){};shaka.log.v1=function(){};shaka.log.v2=function(){};
shaka.log.Level={NONE:0,ERROR:1,WARNING:2,INFO:3,DEBUG:4,V1:5,V2:6};shaka.log.MAX_LOG_LEVEL=4;shaka.log.oneTimeWarningIssued_=new Set;
self.console&&(shaka.log.logMap_=(new Map).set(shaka.log.Level.ERROR,function(){var a=$jscomp.getRestArguments.apply(0,arguments);return console.error.apply(console,(0,$jscomp.arrayFromIterable)(a))}).set(shaka.log.Level.WARNING,function(){var a=$jscomp.getRestArguments.apply(0,arguments);return console.warn.apply(console,(0,$jscomp.arrayFromIterable)(a))}).set(shaka.log.Level.INFO,function(){var a=$jscomp.getRestArguments.apply(0,arguments);return console.info.apply(console,(0,$jscomp.arrayFromIterable)(a))}).set(shaka.log.Level.DEBUG,
function(){var a=$jscomp.getRestArguments.apply(0,arguments);return console.log.apply(console,(0,$jscomp.arrayFromIterable)(a))}).set(shaka.log.Level.V1,function(){var a=$jscomp.getRestArguments.apply(0,arguments);return console.debug.apply(console,(0,$jscomp.arrayFromIterable)(a))}).set(shaka.log.Level.V2,function(){var a=$jscomp.getRestArguments.apply(0,arguments);return console.debug.apply(console,(0,$jscomp.arrayFromIterable)(a))}),shaka.log.alwaysWarn=function(){var a=$jscomp.getRestArguments.apply(0,
arguments);return console.warn.apply(console,(0,$jscomp.arrayFromIterable)(a))},shaka.log.alwaysError=function(){var a=$jscomp.getRestArguments.apply(0,arguments);return console.error.apply(console,(0,$jscomp.arrayFromIterable)(a))},goog.DEBUG?(goog.exportSymbol("shaka.log",shaka.log),shaka.log.setLevel=function(a){var b=function(c){return c<=a?(goog.asserts.assert(shaka.log.logMap_.has(c),"Unexpected log level"),shaka.log.logMap_.get(c)):function(){}};shaka.log.currentLevel=a;shaka.log.error=b(shaka.log.Level.ERROR);
shaka.log.warning=b(shaka.log.Level.WARNING);shaka.log.info=b(shaka.log.Level.INFO);shaka.log.debug=b(shaka.log.Level.DEBUG);shaka.log.v1=b(shaka.log.Level.V1);shaka.log.v2=b(shaka.log.Level.V2)},shaka.log.setLevel(shaka.log.MAX_LOG_LEVEL)):(shaka.log.MAX_LOG_LEVEL>=shaka.log.Level.ERROR&&(shaka.log.error=shaka.log.logMap_.get(shaka.log.Level.ERROR)),shaka.log.MAX_LOG_LEVEL>=shaka.log.Level.WARNING&&(shaka.log.warning=shaka.log.logMap_.get(shaka.log.Level.WARNING)),shaka.log.MAX_LOG_LEVEL>=shaka.log.Level.INFO&&
(shaka.log.info=shaka.log.logMap_.get(shaka.log.Level.INFO)),shaka.log.MAX_LOG_LEVEL>=shaka.log.Level.DEBUG&&(shaka.log.debug=shaka.log.logMap_.get(shaka.log.Level.DEBUG)),shaka.log.MAX_LOG_LEVEL>=shaka.log.Level.V1&&(shaka.log.v1=shaka.log.logMap_.get(shaka.log.Level.V1)),shaka.log.MAX_LOG_LEVEL>=shaka.log.Level.V2&&(shaka.log.v2=shaka.log.logMap_.get(shaka.log.Level.V2))));shaka.util={};shaka.util.IDestroyable=function(){};shaka.util.IDestroyable.prototype.destroy=function(){};shaka.transmuxer={};shaka.transmuxer.TransmuxerEngine=function(){};shaka.transmuxer.TransmuxerEngine.prototype.destroy=function(){};shaka.transmuxer.TransmuxerEngine.registerTransmuxer=function(a,b,c){var d=shaka.transmuxer.TransmuxerEngine;a=d.normalizeMimeType_(a);d.transmuxerMap_.set(a+"-"+c,{priority:c,plugin:b})};shaka.transmuxer.TransmuxerEngine.unregisterTransmuxer=function(a,b){var c=shaka.transmuxer.TransmuxerEngine;a=c.normalizeMimeType_(a);c.transmuxerMap_.delete(a+"-"+b)};
shaka.transmuxer.TransmuxerEngine.findTransmuxer=function(a,b){for(var c=shaka.transmuxer.TransmuxerEngine,d=(0,$jscomp.makeIterator)(c.PLUGIN_PRIORITY_ORDER),e=d.next();!e.done;e=d.next())if(e=c.findTransmuxerPlugin(a,e.value)){var f=e(),g=f.isSupported(a,b);f.destroy();if(g)return e}return null};
shaka.transmuxer.TransmuxerEngine.findTransmuxerPlugin=function(a,b){b=b===void 0?null:b;var c=shaka.transmuxer.TransmuxerEngine;a=c.normalizeMimeType_(a);b=(0,$jscomp.makeIterator)(b!==null?[b]:c.PLUGIN_PRIORITY_ORDER);for(var d=b.next();!d.done;d=b.next())if(d=c.transmuxerMap_.get(a+"-"+d.value))return d.plugin;return null};shaka.transmuxer.TransmuxerEngine.normalizeMimeType_=function(a){return a.toLowerCase().split(";")[0]};
shaka.transmuxer.TransmuxerEngine.isSupported=function(a,b){return shaka.transmuxer.TransmuxerEngine.findTransmuxer(a)?!0:!1};shaka.transmuxer.TransmuxerEngine.convertCodecs=function(a,b){var c=shaka.transmuxer.TransmuxerEngine.findTransmuxer(b);if(!c)return b;c=c();a=c.convertCodecs(a,b);c.destroy();return a};goog.exportSymbol("shaka.transmuxer.TransmuxerEngine",shaka.transmuxer.TransmuxerEngine);goog.exportProperty(shaka.transmuxer.TransmuxerEngine,"findTransmuxer",shaka.transmuxer.TransmuxerEngine.findTransmuxer);
goog.exportProperty(shaka.transmuxer.TransmuxerEngine,"unregisterTransmuxer",shaka.transmuxer.TransmuxerEngine.unregisterTransmuxer);goog.exportProperty(shaka.transmuxer.TransmuxerEngine,"registerTransmuxer",shaka.transmuxer.TransmuxerEngine.registerTransmuxer);goog.exportProperty(shaka.transmuxer.TransmuxerEngine.prototype,"destroy",shaka.transmuxer.TransmuxerEngine.prototype.destroy);shaka.transmuxer.TransmuxerEngine.transmuxerMap_=new Map;
shaka.transmuxer.TransmuxerEngine.PluginPriority={FALLBACK:1,PREFERRED_SECONDARY:2,PREFERRED:3,APPLICATION:4};goog.exportProperty(shaka.transmuxer.TransmuxerEngine,"PluginPriority",shaka.transmuxer.TransmuxerEngine.PluginPriority);shaka.transmuxer.TransmuxerEngine.PLUGIN_PRIORITY_ORDER=[shaka.transmuxer.TransmuxerEngine.PluginPriority.APPLICATION,shaka.transmuxer.TransmuxerEngine.PluginPriority.PREFERRED,shaka.transmuxer.TransmuxerEngine.PluginPriority.PREFERRED_SECONDARY,shaka.transmuxer.TransmuxerEngine.PluginPriority.FALLBACK];shaka.util.BufferUtils=function(){};shaka.util.BufferUtils.equal=function(a,b){var c=shaka.util.BufferUtils;if(!a&&!b)return!0;if(!a||!b||a.byteLength!=b.byteLength)return!1;if(c.unsafeGetArrayBuffer_(a)==c.unsafeGetArrayBuffer_(b)&&(a.byteOffset||0)==(b.byteOffset||0))return!0;c=shaka.util.BufferUtils.toUint8(a);b=shaka.util.BufferUtils.toUint8(b);for(var d=0;d<a.byteLength;d++)if(c[d]!=b[d])return!1;return!0};
shaka.util.BufferUtils.unsafeGetArrayBuffer_=function(a){return ArrayBuffer.isView(a)?a.buffer:a};shaka.util.BufferUtils.toArrayBuffer=function(a){return ArrayBuffer.isView(a)?a.byteOffset==0&&a.byteLength==a.buffer.byteLength?a.buffer:(new Uint8Array(a)).buffer:a};shaka.util.BufferUtils.toUint8=function(a,b,c){c=c===void 0?Infinity:c;return shaka.util.BufferUtils.view_(a,b===void 0?0:b,c,Uint8Array)};
shaka.util.BufferUtils.toUint16=function(a,b,c){c=c===void 0?Infinity:c;return shaka.util.BufferUtils.view_(a,b===void 0?0:b,c,Uint16Array)};shaka.util.BufferUtils.toDataView=function(a,b,c){c=c===void 0?Infinity:c;return shaka.util.BufferUtils.view_(a,b===void 0?0:b,c,DataView)};
shaka.util.BufferUtils.view_=function(a,b,c,d){var e=shaka.util.BufferUtils.unsafeGetArrayBuffer_(a),f=1;"BYTES_PER_ELEMENT"in d&&(f=d.BYTES_PER_ELEMENT);var 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)};goog.exportSymbol("shaka.util.BufferUtils",shaka.util.BufferUtils);goog.exportProperty(shaka.util.BufferUtils,"toDataView",shaka.util.BufferUtils.toDataView);
goog.exportProperty(shaka.util.BufferUtils,"toUint16",shaka.util.BufferUtils.toUint16);goog.exportProperty(shaka.util.BufferUtils,"toUint8",shaka.util.BufferUtils.toUint8);goog.exportProperty(shaka.util.BufferUtils,"toArrayBuffer",shaka.util.BufferUtils.toArrayBuffer);goog.exportProperty(shaka.util.BufferUtils,"equal",shaka.util.BufferUtils.equal);shaka.util.Error=function(a,b,c){var d=$jscomp.getRestArguments.apply(3,arguments);this.severity=a;this.category=b;this.code=c;this.data=d;this.handled=!1;d="Shaka Error "+this.code;if(goog.DEBUG){var e=d="UNKNOWN",f;for(f in shaka.util.Error.Category)shaka.util.Error.Category[f]==this.category&&(d=f);for(var g in shaka.util.Error.Code)shaka.util.Error.Code[g]==this.code&&(e=g);d="Shaka Error "+d+"."+e+" ("+this.data.toString()+")"}this.message=d;if(shaka.util.Error.createStack)try{throw Error(this.message||
"Shaka Error");}catch(h){this.stack=h.stack}};shaka.util.Error.prototype.toString=function(){return"shaka.util.Error "+JSON.stringify(this,null,"  ")};shaka.util.Error.getMediaElementErrorDetails=function(a){var b=a.code,c=a.msExtendedCode;c&&(c<0&&(c+=4294967296),c=c.toString(16));return{code:b,extended:c,message:a.message}};goog.exportSymbol("shaka.util.Error",shaka.util.Error);shaka.util.Error.createStack=!0;shaka.util.Error.Severity={RECOVERABLE:1,CRITICAL:2};
goog.exportProperty(shaka.util.Error,"Severity",shaka.util.Error.Severity);shaka.util.Error.Category={NETWORK:1,TEXT:2,MEDIA:3,MANIFEST:4,STREAMING:5,DRM:6,PLAYER:7,CAST:8,STORAGE:9,ADS:10};goog.exportProperty(shaka.util.Error,"Category",shaka.util.Error.Category);
shaka.util.Error.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,HLS_INVALID_KEY_IV_FOR_GCM:4059,HLS_INVALID_GCM_SEGMENT:4060,DASH_INVALID_JSON:4061,MSF_NO_CATALOG:4062,DASH_UNSUPPORTED_ESSENTIAL_PROPERTY:4063,MSF_CATALOG_TIMEOUT:4064,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};goog.exportProperty(shaka.util.Error,"Code",shaka.util.Error.Code);shaka.transmuxer.TransmuxerWorker=function(){this.transmuxers_=new Map};shaka.transmuxer.TransmuxerWorker.prototype.start=function(){var a=this;self.addEventListener("message",function(b){a.onMessage_(b)})};shaka.transmuxer.TransmuxerWorker.prototype.onMessage_=function(a){a=a.data;switch(a.cmd){case "init":this.onInit_(a);break;case "transmux":this.onTransmux_(a);break;case "destroy":this.onDestroy_(a)}};
shaka.transmuxer.TransmuxerWorker.prototype.onInit_=function(a){var b=a.id;a=a.mimeType;var c=shaka.transmuxer.TransmuxerEngine.findTransmuxerPlugin(a);c?this.transmuxers_.set(b,c()):shaka.log.warning("TransmuxerWorker: no plugin found for",a)};
shaka.transmuxer.TransmuxerWorker.prototype.onTransmux_=function(a){var b=this,c,d,e,f,g,h,k,l,m,n,p,q,t,r,v,u,z,A,x,E,y,H,M,I;return(0,$jscomp.asyncExecutePromiseGeneratorProgram)(function(w){if(w.getNextAddressJsc()==1){c=a.id;d=a.reqId;e=b.transmuxers_.get(c);if(!e)return self.postMessage({cmd:"error",id:c,reqId:d,error:{severity:shaka.util.Error.Severity.CRITICAL,category:shaka.util.Error.Category.MEDIA,code:shaka.util.Error.Code.TRANSMUXING_FAILED,data:["No transmuxer initialized for id "+c]}}),
w.return();f=a.streamProps;g=a.refProps;h={id:f.id,codecs:f.codecs,channelsCount:f.channelsCount,audioSamplingRate:f.audioSamplingRate,height:f.height,width:f.width,language:f.language};k=g?{discontinuitySequence:g.discontinuitySequence,startTime:g.startTime,endTime:g.endTime,getUris:function(){return g.uris}}:null;l=shaka.util.BufferUtils.toUint8(a.data);m=a.duration;n=a.contentType;w.setCatchFinallyBlocks(2);return w.yield(e.transmux(l,h,k,m,n),4)}if(w.getNextAddressJsc()!=2){p=w.getYieldResultJsc();
q={};t=["audioSamplingRate","channelsCount","height","width"];r=(0,$jscomp.makeIterator)(t);for(v=r.next();!v.done;v=r.next())u=v.value,h[u]!==f[u]&&(q[u]=h[u]);z=shaka.util.BufferUtils;ArrayBuffer.isView(p)?(A=z.toArrayBuffer(p),self.postMessage({cmd:"transmuxed",id:c,reqId:d,output:{type:"raw",data:A},streamMutations:q},[A])):(x=p,E=z.toArrayBuffer(x.data),y=x.init?z.toArrayBuffer(x.init):null,H=[E],M={cmd:"transmuxed",id:c,reqId:d,output:{type:"segments",data:E,init:y},streamMutations:q},y&&H.push(y),
self.postMessage(M,H));return w.leaveTryBlock(0)}I=w.enterCatchBlock();self.postMessage({cmd:"error",id:c,reqId:d,error:shaka.transmuxer.TransmuxerWorker.errorToObject_(I)});w.jumpToEnd()})};
shaka.transmuxer.TransmuxerWorker.errorToObject_=function(a){return a instanceof shaka.util.Error?{severity:a.severity,category:a.category,code:a.code,data:a.data}:{severity:shaka.util.Error.Severity.CRITICAL,category:shaka.util.Error.Category.MEDIA,code:shaka.util.Error.Code.TRANSMUXING_FAILED,data:[a instanceof Error?a.message:"Unknown error"]}};
shaka.transmuxer.TransmuxerWorker.prototype.onDestroy_=function(a){a=a.id;var b=this.transmuxers_.get(a);b&&(b.destroy(),this.transmuxers_.delete(a));self.postMessage({cmd:"destroyed",id:a})};goog.exportSymbol("shaka.transmuxer.TransmuxerWorker",shaka.transmuxer.TransmuxerWorker);goog.exportProperty(shaka.transmuxer.TransmuxerWorker.prototype,"start",shaka.transmuxer.TransmuxerWorker.prototype.start);
shaka.transmuxer.TransmuxerWorker.boot=function(){typeof DedicatedWorkerGlobalScope!=="undefined"&&self instanceof DedicatedWorkerGlobalScope&&(new shaka.transmuxer.TransmuxerWorker).start()};shaka.transmuxer.TransmuxerWorker.boot();shaka.media={};shaka.media.Capabilities=function(){};shaka.media.Capabilities.isTypeSupported=function(a){return shaka.media.Capabilities.MediaSourceTypeSupportMap.getOrInsertComputed(a,function(){var b,c;return(c=(b=self.ManagedMediaSource||self.MediaSource)==null?void 0:b.isTypeSupported(a))!=null?c:!1})};
shaka.media.Capabilities.isInfiniteLiveStreamDurationSupported=function(){var a=self.ManagedMediaSource||self.MediaSource;return a&&a.prototype?!!a.prototype.setLiveSeekableRange&&!!a.prototype.clearLiveSeekableRange:!1};shaka.media.Capabilities.MediaSourceTypeSupportMap=new Map;shaka.metadata={};shaka.metadata.Metadata=function(){};shaka.metadata.Metadata.getMetadataFrames=function(a,b){var c=shaka.metadata.Metadata.parsersByMime_.get(b)||[];b=[];c=(0,$jscomp.makeIterator)(c);for(var d=c.next();!d.done;d=c.next())d=d.value,b.push.apply(b,(0,$jscomp.arrayFromIterable)(d().parse(a)));a=new Set;c=[];b=(0,$jscomp.makeIterator)(b);for(d=b.next();!d.done;d=b.next())d=d.value,a.has(d.key)||(a.add(d.key),c.push(d));return c};
shaka.metadata.Metadata.supports=function(a){a=shaka.metadata.Metadata.parsersByMime_.get(a);return a!=null&&a.length>0};shaka.metadata.Metadata.registerParserByMime=function(a,b){var c=shaka.metadata.Metadata.parsersByMime_;c.has(a)||c.set(a,[]);c.get(a).push(b)};shaka.metadata.Metadata.unregisterParserByMime=function(a){shaka.metadata.Metadata.parsersByMime_.delete(a)};goog.exportSymbol("shaka.metadata.Metadata",shaka.metadata.Metadata);
goog.exportProperty(shaka.metadata.Metadata,"unregisterParserByMime",shaka.metadata.Metadata.unregisterParserByMime);goog.exportProperty(shaka.metadata.Metadata,"registerParserByMime",shaka.metadata.Metadata.registerParserByMime);goog.exportProperty(shaka.metadata.Metadata,"supports",shaka.metadata.Metadata.supports);goog.exportProperty(shaka.metadata.Metadata,"getMetadataFrames",shaka.metadata.Metadata.getMetadataFrames);shaka.metadata.Metadata.parsersByMime_=new Map;shaka.util.Lazy=function(a){this.gen_=a;this.value_=void 0};shaka.util.Lazy.prototype.value=function(){this.value_===void 0&&(this.value_=this.gen_(),goog.asserts.assert(this.value_!==void 0,"Unable to create lazy value"));return this.value_};shaka.util.Lazy.prototype.reset=function(){this.value_=void 0};shaka.device={};shaka.device.DeviceFactory=function(){};shaka.device.DeviceFactory.registerDeviceFactory=function(a){goog.asserts.assert(!shaka.device.DeviceFactory.factory_,"Device Factory should NOT be defined");shaka.device.DeviceFactory.factory_=a};shaka.device.DeviceFactory.registerDefaultDeviceFactory=function(a){goog.asserts.assert(!shaka.device.DeviceFactory.defaultFactory_,"Default device Factory should NOT be defined");shaka.device.DeviceFactory.defaultFactory_=a};
shaka.device.DeviceFactory.getDevice=function(){goog.asserts.assert(shaka.device.DeviceFactory.factory_||shaka.device.DeviceFactory.defaultFactory_,"Device Factory should be defined");return shaka.device.DeviceFactory.device_.value()};shaka.device.DeviceFactory.factory_=null;shaka.device.DeviceFactory.defaultFactory_=null;
shaka.device.DeviceFactory.device_=new shaka.util.Lazy(function(){var a=void 0;shaka.device.DeviceFactory.factory_&&(a=shaka.device.DeviceFactory.factory_());!a&&shaka.device.DeviceFactory.defaultFactory_&&(a=shaka.device.DeviceFactory.defaultFactory_());a&&shaka.log.info(a.toString());return a});shaka.device.IDevice=function(){};shaka.device.IDevice.prototype.supportsMediaSource=function(){};shaka.device.IDevice.prototype.supportsMediaType=function(a){};shaka.device.IDevice.prototype.supportsMediaCapabilities=function(){};shaka.device.IDevice.prototype.getVersion=function(){};shaka.device.IDevice.prototype.getDeviceName=function(){};shaka.device.IDevice.prototype.getDeviceType=function(){};shaka.device.IDevice.prototype.getBrowserEngine=function(){};
shaka.device.IDevice.prototype.requiresEncryptionInfoInAllInitSegments=function(a,b){};shaka.device.IDevice.prototype.requiresClearAndEncryptedInitSegments=function(a){};shaka.device.IDevice.prototype.insertEncryptionDataBeforeClear=function(a){};shaka.device.IDevice.prototype.requiresTfhdFix=function(a){};shaka.device.IDevice.prototype.requiresEC3InitSegments=function(){};shaka.device.IDevice.prototype.requiresDvvcWorkaround=function(a){};shaka.device.IDevice.prototype.supportsSequenceMode=function(){};
shaka.device.IDevice.prototype.supportsSmoothCodecSwitching=function(a){};shaka.device.IDevice.prototype.seekDelay=function(){};shaka.device.IDevice.prototype.detectMaxHardwareResolution=function(){};shaka.device.IDevice.prototype.supportsServerCertificate=function(){};shaka.device.IDevice.prototype.adjustConfig=function(a){};shaka.device.IDevice.prototype.shouldOverrideDolbyVisionCodecs=function(){};shaka.device.IDevice.prototype.shouldAvoidUseTextDecoderEncoder=function(){};
shaka.device.IDevice.prototype.supportsOfflineStorage=function(){};shaka.device.IDevice.prototype.rejectCodecs=function(){};shaka.device.IDevice.prototype.getHdrLevel=function(a){};shaka.device.IDevice.prototype.supportsAirPlay=function(){};shaka.device.IDevice.prototype.misreportAC3UsingDrm=function(){};shaka.device.IDevice.prototype.returnLittleEndianUsingPlayReady=function(){};shaka.device.IDevice.prototype.supportsEncryptionSchemePolyfill=function(){};
shaka.device.IDevice.prototype.misreportsSupportForPersistentLicenses=function(){};shaka.device.IDevice.prototype.supportStandardVP9Checking=function(){};shaka.device.IDevice.prototype.createMediaKeysWhenCheckingSupport=function(){};shaka.device.IDevice.prototype.disableHEVCSupport=function(){};shaka.device.IDevice.prototype.supportsCbcsWithoutEncryptionSchemeSupport=function(){};shaka.device.IDevice.prototype.supportsContainerChangeType=function(){};
shaka.device.IDevice.prototype.needWaitForEncryptedEvent=function(a){};shaka.device.IDevice.prototype.getRemote=function(a){};shaka.device.IDevice.prototype.supportsWorkerTransmux=function(){};shaka.device.IDevice.prototype.hasWorkingClearKeySupport=function(){};shaka.device.IDevice.DeviceType={DESKTOP:"DESKTOP",MOBILE:"MOBILE",TV:"TV",VR:"VR",APPLE_VR:"APPLE_VR",CONSOLE:"CONSOLE",CAST:"CAST"};shaka.device.IDevice.BrowserEngine={CHROMIUM:"CHROMIUM",EDGE:"EDGE",GECKO:"GECKO",WEBKIT:"WEBKIT",UNKNOWN:"UNKNOWN"};shaka.util.StringUtils=function(){};
shaka.util.StringUtils.fromUTF8=function(a){if(!a)return"";a=shaka.util.BufferUtils.toUint8(a);a[0]==239&&a[1]==187&&a[2]==191&&(a=a.subarray(3));if(self.TextDecoder&&!shaka.device.DeviceFactory.getDevice().shouldAvoidUseTextDecoderEncoder())return a=(new TextDecoder).decode(a),a.includes("\ufffd")&&shaka.log.alwaysError('Decoded string contains an "unknown character" codepoint.  That probably means the UTF8 encoding was incorrect!'),a;for(var b="",c=0;c<a.length;++c){var d=65533;(a[c]&128)==0?d=
a[c]:a.length>=c+2&&(a[c]&224)==192&&(a[c+1]&192)==128?(d=(a[c]&31)<<6|a[c+1]&63,c+=1):a.length>=c+3&&(a[c]&240)==224&&(a[c+1]&192)==128&&(a[c+2]&192)==128?(d=(a[c]&15)<<12|(a[c+1]&63)<<6|a[c+2]&63,c+=2):a.length>=c+4&&(a[c]&241)==240&&(a[c+1]&192)==128&&(a[c+2]&192)==128&&(a[c+3]&192)==128&&(d=(a[c]&7)<<18|(a[c+1]&63)<<12|(a[c+2]&63)<<6|a[c+3]&63,c+=3);if(d<=65535)b+=String.fromCharCode(d);else{d-=65536;var e=d&1023;b+=String.fromCharCode(55296+(d>>10));b+=String.fromCharCode(56320+e)}}return b};
shaka.util.StringUtils.fromUTF16=function(a,b,c){if(!a)return"";if(!c&&a.byteLength%2!=0)throw shaka.log.error("Data has an incorrect length, must be even."),new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.TEXT,shaka.util.Error.Code.BAD_ENCODING);c=Math.floor(a.byteLength/2);var d=new Uint16Array(c);a=shaka.util.BufferUtils.toDataView(a);for(var e=0;e<c;e++)d[e]=a.getUint16(e*2,b);return shaka.util.StringUtils.fromCharCode(d)};
shaka.util.StringUtils.fromBytesAutoDetect=function(a){var b=shaka.util.StringUtils;if(!a)return"";var c=shaka.util.BufferUtils.toUint8(a);if(c[0]==239&&c[1]==187&&c[2]==191)return b.fromUTF8(c);if(c[0]==254&&c[1]==255)return b.fromUTF16(c.subarray(2),!1);if(c[0]==255&&c[1]==254)return b.fromUTF16(c.subarray(2),!0);var d=function(e){return c.byteLength<=e||c[e]>=9&&c[e]<=126};shaka.log.debug("Unable to find byte-order-mark, making an educated guess.");if(c[0]==0&&c[2]==0)return b.fromUTF16(a,!1);
if(c[1]==0&&c[3]==0)return b.fromUTF16(a,!0);if(d(0)&&d(1)&&d(2)&&d(3))return b.fromUTF8(a);throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.TEXT,shaka.util.Error.Code.UNABLE_TO_DETECT_ENCODING);};
shaka.util.StringUtils.toUTF8=function(a){if(self.TextEncoder&&!shaka.device.DeviceFactory.getDevice().shouldAvoidUseTextDecoderEncoder()){var b=new TextEncoder;return shaka.util.BufferUtils.toArrayBuffer(b.encode(a))}a=encodeURIComponent(a);a=unescape(a);b=new Uint8Array(a.length);for(var c=0;c<a.length;c++)b[c]=a[c].charCodeAt(0);return shaka.util.BufferUtils.toArrayBuffer(b)};
shaka.util.StringUtils.toUTF16=function(a,b){for(var c=new ArrayBuffer(a.length*2),d=new DataView(c),e=0;e<a.length;++e){var f=a.charCodeAt(e);d.setUint16(e*2,f,b)}return c};shaka.util.StringUtils.fromCharCode=function(a){return shaka.util.StringUtils.fromCharCodeImpl_.value()(a)};shaka.util.StringUtils.resetFromCharCode=function(){shaka.util.StringUtils.fromCharCodeImpl_.reset()};
shaka.util.StringUtils.htmlUnescape=function(a){var 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,function(e){return 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||""};goog.exportSymbol("shaka.util.StringUtils",shaka.util.StringUtils);
goog.exportProperty(shaka.util.StringUtils,"resetFromCharCode",shaka.util.StringUtils.resetFromCharCode);goog.exportProperty(shaka.util.StringUtils,"toUTF16",shaka.util.StringUtils.toUTF16);goog.exportProperty(shaka.util.StringUtils,"toUTF8",shaka.util.StringUtils.toUTF8);goog.exportProperty(shaka.util.StringUtils,"fromBytesAutoDetect",shaka.util.StringUtils.fromBytesAutoDetect);goog.exportProperty(shaka.util.StringUtils,"fromUTF16",shaka.util.StringUtils.fromUTF16);
goog.exportProperty(shaka.util.StringUtils,"fromUTF8",shaka.util.StringUtils.fromUTF8);
shaka.util.StringUtils.fromCharCodeImpl_=new shaka.util.Lazy(function(){for(var a=function(c){try{var d=new Uint8Array(c),e=String.fromCharCode.apply(null,d);goog.asserts.assert(e,"Should get value");return e.length>0}catch(f){return!1}},b={size$jscomp$22:65536};b.size$jscomp$22>0;b={size$jscomp$22:b.size$jscomp$22},b.size$jscomp$22/=2)if(a(b.size$jscomp$22))return function(c){return function(d){for(var e="",f=0;f<d.length;f+=c.size$jscomp$22){var g=d.subarray(f,f+c.size$jscomp$22);e+=String.fromCharCode.apply(null,
g)}return e}}(b);goog.asserts.assert(!1,"Unable to create a fromCharCode method");return null});shaka.util.Uint8ArrayUtils=function(){};shaka.util.Uint8ArrayUtils.toStandardBase64=function(a){a=shaka.util.BufferUtils.toUint8(a);return Uint8Array.prototype.toBase64?a.toBase64({alphabet:"base64",omitPadding:!1}):(a=shaka.util.StringUtils.fromCharCode(a),btoa(a))};
shaka.util.Uint8ArrayUtils.toBase64=function(a,b){b=b==void 0?!0:b;return Uint8Array.prototype.toBase64?shaka.util.BufferUtils.toUint8(a).toBase64({alphabet:"base64url",omitPadding:!b}):(a=shaka.util.Uint8ArrayUtils.toStandardBase64(a).replace(/\+/g,"-").replace(/\//g,"_"),b?a:a.replace(/[=]*$/,""))};
shaka.util.Uint8ArrayUtils.fromBase64=function(a){if(!("fromBase64"in Uint8Array)){a=self.atob(a.replace(/-/g,"+").replace(/_/g,"/"));for(var b=new Uint8Array(a.length),c=0;c<a.length;++c)b[c]=a.charCodeAt(c);return b}a=a.replace(/\s+/g,"");b=/[-_]/.test(a);return Uint8Array.fromBase64(a,{alphabet:b?"base64url":"base64"})};shaka.util.Uint8ArrayUtils.fromHex=function(a){if(!("fromHex"in Uint8Array)){for(var b=a.length/2,c=new Uint8Array(b),d=0;d<b;d++)c[d]=parseInt(a.substr(d*2,2),16);return c}return Uint8Array.fromHex(a)};
shaka.util.Uint8ArrayUtils.toHex=function(a){var b=shaka.util.BufferUtils.toUint8(a);if(!Uint8Array.prototype.toHex){a="";b=(0,$jscomp.makeIterator)(b);for(var c=b.next();!c.done;c=b.next())c=c.value,c=c.toString(16),c.length==1&&(c="0"+c),a+=c;return a}return b.toHex()};shaka.util.Uint8ArrayUtils.concat=function(){var a=$jscomp.getRestArguments.apply(0,arguments);return shaka.util.Uint8ArrayUtils.concatRange(a,0,a.length)};
shaka.util.Uint8ArrayUtils.concatRange=function(a,b,c){b=b===void 0?0:b;c=c===void 0?a.length:c;for(var d=shaka.util.BufferUtils,e=0,f=b;f<c;++f)e+=a[f].byteLength;e=new Uint8Array(e);for(f=0;b<c;++b){var g=a[b];ArrayBuffer.isView(g)&&g.BYTES_PER_ELEMENT===1?e.set(g,f):e.set(d.toUint8(g),f);f+=g.byteLength}return e};
shaka.util.Uint8ArrayUtils.removeEmulationPreventionBytes=function(a){for(var b=new Uint8Array(a.length),c=0,d=0,e=0;e<a.length;e++){var f=a[e];c>=2&&f==3?c=0:(b[d++]=f,f==0?c++:c=0)}return b.subarray(0,d)};goog.exportSymbol("shaka.util.Uint8ArrayUtils",shaka.util.Uint8ArrayUtils);goog.exportProperty(shaka.util.Uint8ArrayUtils,"concat",shaka.util.Uint8ArrayUtils.concat);goog.exportProperty(shaka.util.Uint8ArrayUtils,"toHex",shaka.util.Uint8ArrayUtils.toHex);
goog.exportProperty(shaka.util.Uint8ArrayUtils,"fromHex",shaka.util.Uint8ArrayUtils.fromHex);goog.exportProperty(shaka.util.Uint8ArrayUtils,"fromBase64",shaka.util.Uint8ArrayUtils.fromBase64);goog.exportProperty(shaka.util.Uint8ArrayUtils,"toBase64",shaka.util.Uint8ArrayUtils.toBase64);goog.exportProperty(shaka.util.Uint8ArrayUtils,"toStandardBase64",shaka.util.Uint8ArrayUtils.toStandardBase64);shaka.drm={};shaka.drm.DrmUtils=function(){};shaka.drm.DrmUtils.isBrowserSupported=function(){return!!window.MediaKeys&&!!window.navigator&&!!window.navigator.requestMediaKeySystemAccess&&!!window.MediaKeySystemAccess&&!!window.MediaKeySystemAccess.prototype.getConfiguration};
shaka.drm.DrmUtils.areDrmCompatible=function(a,b){if(a===b||!a.length||!b.length)return!0;a=(0,$jscomp.makeIterator)(a);for(var c=a.next();!c.done;c=a.next()){c=c.value;if(shaka.drm.DrmUtils.isClearKeyWihRawKey(c))return!0;for(var d=(0,$jscomp.makeIterator)(b),e=d.next();!e.done;e=d.next())if(e=e.value,c.keySystem===e.keySystem||shaka.drm.DrmUtils.isClearKeyWihRawKey(e))return!0}return!1};
shaka.drm.DrmUtils.getCommonDrmInfos=function(a,b){if(!a.length)return b;if(!b.length)return a;var c=[];a=(0,$jscomp.makeIterator)(a);for(var d=a.next();!d.done;d=a.next()){d=d.value;for(var e=(0,$jscomp.makeIterator)(b),f=e.next();!f.done;f=e.next())if(f=f.value,d.keySystem==f.keySystem){e=new Map;var g=(d.initData||[]).concat(f.initData||[]);g=(0,$jscomp.makeIterator)(g);for(var h=g.next();!h.done;h=g.next())h=h.value,e.set(h.keyId,h);e=Array.from(e.values());g=d.keyIds&&f.keyIds?new Set([].concat((0,$jscomp.arrayFromIterable)(d.keyIds),
(0,$jscomp.arrayFromIterable)(f.keyIds))):d.keyIds||f.keyIds;c.push({keySystem:d.keySystem,licenseServerUri:d.licenseServerUri||f.licenseServerUri,distinctiveIdentifierRequired:d.distinctiveIdentifierRequired||f.distinctiveIdentifierRequired,persistentStateRequired:d.persistentStateRequired||f.persistentStateRequired,videoRobustness:d.videoRobustness||f.videoRobustness,audioRobustness:d.audioRobustness||f.audioRobustness,serverCertificate:d.serverCertificate||f.serverCertificate,serverCertificateUri:d.serverCertificateUri||
f.serverCertificateUri,initData:e,keyIds:g});break}else shaka.drm.DrmUtils.isClearKeyWihRawKey(d)?c.push(d):shaka.drm.DrmUtils.isClearKeyWihRawKey(f)&&c.push(f)}return c};shaka.drm.DrmUtils.keySystem=function(a){return a?a.keySystem:""};shaka.drm.DrmUtils.isClearKeySystem=function(a){return a==="org.w3.clearkey"};shaka.drm.DrmUtils.isWidevineKeySystem=function(a){return a?!!a.match(/^com\.widevine\.alpha/):!1};
shaka.drm.DrmUtils.isPlayReadyKeySystem=function(a){return a?!!a.match(/^com\.(microsoft|chromecast)\.playready/):!1};shaka.drm.DrmUtils.isFairPlayKeySystem=function(a){return a?!!a.match(/^com\.apple\.fps/):!1};shaka.drm.DrmUtils.isWisePlayKeySystem=function(a){return a==="com.huawei.wiseplay"};shaka.drm.DrmUtils.isClearKeyWihRawKey=function(a){return(a=a.licenseServerUri)?a.startsWith("data:application/json;base64,"):!1};
shaka.drm.DrmUtils.generateKeySystemCacheKey_=function(a,b,c,d){d=new Set(d);d=[].concat((0,$jscomp.arrayFromIterable)(d)).sort().join("#");return a+"#"+b+"#"+c+"#"+d};shaka.drm.DrmUtils.hasMediaKeySystemAccess=function(a,b,c,d){var e=shaka.drm.DrmUtils;a=e.generateKeySystemCacheKey_(a,b,c,d);return e.memoizedMediaKeySystemAccessRequests_.has(a)};
shaka.drm.DrmUtils.getMediaKeySystemAccess=function(a,b,c,d){var e=shaka.drm.DrmUtils;a=e.generateKeySystemCacheKey_(a,b,c,d);return e.memoizedMediaKeySystemAccessRequests_.get(a)||null};shaka.drm.DrmUtils.setMediaKeySystemAccess=function(a,b,c,d,e){var f=shaka.drm.DrmUtils;a=f.generateKeySystemCacheKey_(a,b,c,d);f.memoizedMediaKeySystemAccessRequests_.set(a,e)};shaka.drm.DrmUtils.clearMediaKeySystemAccessMap=function(){shaka.drm.DrmUtils.memoizedMediaKeySystemAccessRequests_.clear()};
shaka.drm.DrmUtils.isMediaKeysPolyfilled=function(a){return a===window.shakaMediaKeysPolyfill};
shaka.drm.DrmUtils.getUuidMap=function(a,b){a=a===void 0?!1:a;b=b===void 0?!1:b;var 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;var d={},e;for(e in c){var f=c[e],g=e;b?g="urn:uuid:"+e:a&&(g=e.replace(/-/g,""));d[g]=f}return d};shaka.drm.DrmUtils.normalizeClearKeyValue=function(a){return a.length===shaka.drm.DrmUtils.CLEAR_KEY_BASE64URL_LENGTH_?a:shaka.util.Uint8ArrayUtils.toBase64(shaka.util.Uint8ArrayUtils.fromHex(a),!1)};shaka.drm.DrmUtils.DUMMY_KEY_ID=new shaka.util.Lazy(function(){return shaka.util.BufferUtils.toArrayBuffer(new Uint8Array([0]))});
shaka.drm.DrmUtils.memoizedMediaKeySystemAccessRequests_=new Map;shaka.drm.DrmUtils.CLEAR_KEY_BASE64URL_LENGTH_=22;shaka.util.LanguageUtils=function(){};shaka.util.LanguageUtils.areLocaleCompatible=function(a,b){var c=shaka.util.LanguageUtils;a=c.normalize(a);b=c.normalize(b);return a==b};shaka.util.LanguageUtils.areLanguageCompatible=function(a,b){var c=shaka.util.LanguageUtils;a=c.normalize(a);b=c.normalize(b);a=c.disassembleLocale_(a);b=c.disassembleLocale_(b);return a[0]==b[0]};
shaka.util.LanguageUtils.isParentOf=function(a,b){var c=shaka.util.LanguageUtils;a=c.normalize(a);b=c.normalize(b);a=c.disassembleLocale_(a);b=c.disassembleLocale_(b);return a[0]==b[0]&&a.length==1&&b.length==2};shaka.util.LanguageUtils.isSiblingOf=function(a,b){var c=shaka.util.LanguageUtils;a=c.normalize(a);b=c.normalize(b);a=c.disassembleLocale_(a);b=c.disassembleLocale_(b);return a.length==2&&b.length==2&&a[0]==b[0]};
shaka.util.LanguageUtils.normalize=function(a){var b=shaka.util.LanguageUtils;a=(0,$jscomp.makeIterator)(a.split("-x-"));var c=a.next().value;c=c===void 0?"":c;a=a.next().value;a=a===void 0?"":a;var d=(0,$jscomp.makeIterator)(c.split("-"));c=d.next().value;c=c===void 0?"":c;d=d.next().value;d=d===void 0?"":d;a=a?"x-"+a:"";c=c.toLowerCase();c=b.isoMap_.get(c)||c;b=d.toUpperCase();return""+(b?c+"-"+b:c)+(a?"-"+a:"")};
shaka.util.LanguageUtils.areSiblings=function(a,b){var c=shaka.util.LanguageUtils,d=c.getBase(a);c=c.getBase(b);return a!=d&&b!=c&&d==c};shaka.util.LanguageUtils.relatedness=function(a,b){var c=shaka.util.LanguageUtils;a=c.normalize(a);b=c.normalize(b);return b==a?4:c.isParentOf(b,a)?3:c.isSiblingOf(b,a)?2:c.isParentOf(a,b)?1:0};shaka.util.LanguageUtils.getBase=function(a){var b=shaka.util.LanguageUtils,c=a.indexOf("-");a=c>=0?a.substring(0,c):a;a=a.toLowerCase();return a=b.isoMap_.get(a)||a};
shaka.util.LanguageUtils.getLocaleForText=function(a){return shaka.util.LanguageUtils.normalize(a.language||"und")};shaka.util.LanguageUtils.getLocaleForVariant=function(a){var b=shaka.util.LanguageUtils;return a.language?b.normalize(a.language):a.audio&&a.audio.language?b.normalize(a.audio.language):a.video&&a.video.language?b.normalize(a.video.language):"und"};
shaka.util.LanguageUtils.findClosestLocale=function(a,b){var c=shaka.util.LanguageUtils;a=c.normalize(a);var d=new Set;b=(0,$jscomp.makeIterator)(b);for(var e=b.next();!e.done;e=b.next())d.add(c.normalize(e.value));b=(0,$jscomp.makeIterator)(d);for(e=b.next();!e.done;e=b.next())if(e=e.value,e==a)return e;b=(0,$jscomp.makeIterator)(d);for(e=b.next();!e.done;e=b.next())if(e=e.value,c.isParentOf(e,a))return e;b=(0,$jscomp.makeIterator)(d);for(e=b.next();!e.done;e=b.next())if(e=e.value,c.isSiblingOf(e,
a))return e;d=(0,$jscomp.makeIterator)(d);for(b=d.next();!b.done;b=d.next())if(b=b.value,c.isParentOf(a,b))return b;return null};shaka.util.LanguageUtils.disassembleLocale_=function(a){var b=a.split("-");goog.asserts.assert(b.length<=2,["Locales should not have more than 2 components. ",a," has too many components."].join());return b};goog.exportSymbol("shaka.util.LanguageUtils",shaka.util.LanguageUtils);goog.exportProperty(shaka.util.LanguageUtils,"findClosestLocale",shaka.util.LanguageUtils.findClosestLocale);
goog.exportProperty(shaka.util.LanguageUtils,"getLocaleForVariant",shaka.util.LanguageUtils.getLocaleForVariant);goog.exportProperty(shaka.util.LanguageUtils,"getLocaleForText",shaka.util.LanguageUtils.getLocaleForText);goog.exportProperty(shaka.util.LanguageUtils,"getBase",shaka.util.LanguageUtils.getBase);goog.exportProperty(shaka.util.LanguageUtils,"relatedness",shaka.util.LanguageUtils.relatedness);goog.exportProperty(shaka.util.LanguageUtils,"areSiblings",shaka.util.LanguageUtils.areSiblings);
goog.exportProperty(shaka.util.LanguageUtils,"normalize",shaka.util.LanguageUtils.normalize);goog.exportProperty(shaka.util.LanguageUtils,"isSiblingOf",shaka.util.LanguageUtils.isSiblingOf);goog.exportProperty(shaka.util.LanguageUtils,"isParentOf",shaka.util.LanguageUtils.isParentOf);goog.exportProperty(shaka.util.LanguageUtils,"areLanguageCompatible",shaka.util.LanguageUtils.areLanguageCompatible);goog.exportProperty(shaka.util.LanguageUtils,"areLocaleCompatible",shaka.util.LanguageUtils.areLocaleCompatible);
shaka.util.LanguageUtils.isoMap_=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"]]);shaka.util.ManifestParserUtils=function(){};
shaka.util.ManifestParserUtils.createDrmInfo=function(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&&shaka.drm.DrmUtils.isFairPlayKeySystem(a)&&b.initData.push({initDataType:"sinf",initData:new Uint8Array(0),keyId:null});return b};
shaka.util.ManifestParserUtils.createDrmInfoFromClearKeys=function(a,b){b=b===void 0?"cenc":b;var c=shaka.util.StringUtils,d=[],e=[],f=[],g=new Map;a.forEach(function(k,l){var m=shaka.drm.DrmUtils.normalizeClearKeyValue(l);k=shaka.drm.DrmUtils.normalizeClearKeyValue(k);var n={kty:"oct",kid:m,k:k};d.push(n);e.push(n.kid);f.push(l);g.set(m,k)});a=JSON.stringify({keys:d});var h=JSON.stringify({kids:e});c=[{initData:shaka.util.BufferUtils.toUint8(c.toUTF8(h)),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:c,keyIds:new Set(f),clearKeys:g}};
shaka.util.ManifestParserUtils.guessCodecs=function(a,b){if(b.length==1)return b[0];a=shaka.util.ManifestParserUtils.guessCodecsSafe(a,b);if(a!=null)return a;throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MANIFEST,shaka.util.Error.Code.HLS_COULD_NOT_GUESS_CODECS,b);};
shaka.util.ManifestParserUtils.guessCodecsSafe=function(a,b){var c=shaka.util.ManifestParserUtils.CODEC_REGEXPS_BY_CONTENT_TYPE_.get(a);c=(0,$jscomp.makeIterator)(c);for(var d=c.next();!d.done;d=c.next()){d=d.value;for(var e=(0,$jscomp.makeIterator)(b),f=e.next();!f.done;f=e.next())if(f=f.value,d.test(f.trim()))return f.trim()}return a==shaka.util.ManifestParserUtils.ContentType.TEXT?"":null};
shaka.util.ManifestParserUtils.parseCEA608Captions=function(a,b){if(a){var c=shaka.util.LanguageUtils,d=1;a=a.split(";");for(var e=(0,$jscomp.makeIterator)(a),f=e.next();!f.done;f=e.next()){var g=f.value;g.includes("=")?(g=g.split("="),f=g[0].startsWith("CC")?g[0]:"CC"+g[0],g=g[1]||"und"):(f="CC"+d,d+=a.length==2?2:1);b.set(f,c.normalize(g))}}else b.set("CC1","und")};
shaka.util.ManifestParserUtils.parseCEA708Captions=function(a,b){if(a){var c=shaka.util.LanguageUtils,d=1;a=(0,$jscomp.makeIterator)(a.split(";"));for(var e=a.next();!e.done;e=a.next()){var f=e.value;f.includes("=")?(f=f.split("="),e="svc"+f[0],f=f[1].split(",")[0].split(":").pop()):(e="svc"+d,d++);b.set(e,c.normalize(f))}}else b.set("svc1","und")};
shaka.util.ManifestParserUtils.guessAllCodecsSafe=function(a,b){var c=[];a=shaka.util.ManifestParserUtils.CODEC_REGEXPS_BY_CONTENT_TYPE_.get(a);a=(0,$jscomp.makeIterator)(a);for(var d=a.next();!d.done;d=a.next()){d=d.value;for(var e=(0,$jscomp.makeIterator)(b),f=e.next();!f.done;f=e.next())f=f.value,d.test(f.trim())&&c.push(f.trim())}return c};shaka.util.ManifestParserUtils.ContentType={VIDEO:"video",AUDIO:"audio",TEXT:"text",IMAGE:"image",APPLICATION:"application",CHAPTER:"chapter"};
shaka.util.ManifestParserUtils.TextStreamKind={SUBTITLE:"subtitle",CLOSED_CAPTION:"caption"};shaka.util.ManifestParserUtils.GAP_OVERLAP_TOLERANCE_SECONDS=1/15;shaka.util.ManifestParserUtils.VIDEO_CODEC_REGEXPS=[/^avc/,/^hev/,/^hvc/,/^vvc/,/^vvi/,/^vp0?[89]/,/^av01/,/^mp2v/,/^dvh/,/^dva/,/^dav/];shaka.util.ManifestParserUtils.AUDIO_CODEC_REGEXPS=[/^vorbis$/,/^Opus$/,/^opus$/,/^fLaC$/,/^flac$/,/^mp4a/,/^[ae]c-3$/,/^ac-4/,/^dts[cehx]?$/,/^iamf/,/^mhm[12]/,/^ac3$/,/^eac3$/,/^apac$/];
shaka.util.ManifestParserUtils.TEXT_CODEC_REGEXPS=[/^vtt$/,/^wvtt/,/^stpp/];shaka.util.ManifestParserUtils.CODEC_REGEXPS_BY_CONTENT_TYPE_=(new Map).set("audio",shaka.util.ManifestParserUtils.AUDIO_CODEC_REGEXPS).set("video",shaka.util.ManifestParserUtils.VIDEO_CODEC_REGEXPS).set("text",shaka.util.ManifestParserUtils.TEXT_CODEC_REGEXPS);shaka.util.MimeUtils=function(){};shaka.util.MimeUtils.getFullType=function(a,b){var c=a;b&&!shaka.util.MimeUtils.RAW_FORMATS.includes(a)&&(c+='; codecs="'+b+'"');return c};shaka.util.MimeUtils.getFullTypeWithAllCodecs=function(a,b){b&&(a+='; codecs="'+b+'"');return a};
shaka.util.MimeUtils.getFullOrConvertedType=function(a,b,c){var d=shaka.util.MimeUtils,e=d.getFullType(a,b);b=d.getFullTypeWithAllCodecs(a,b);d=shaka.util.ManifestParserUtils.ContentType;var f=shaka.transmuxer.TransmuxerEngine;return f.isSupported(b,c)?f.convertCodecs(c,b):a!="video/mp2t"&&c==d.AUDIO?e.replace("video","audio"):e};
shaka.util.MimeUtils.getExtendedType=function(a,b,c){var d=[b];shaka.util.MimeUtils.EXTENDED_MIME_PARAMETERS_.forEach(function(e,f){var g=a[f];f=="codecs"?shaka.util.MimeUtils.RAW_FORMATS.includes(a.mimeType)||d.push('codecs="'+c+'"'):g&&d.push(e+'="'+g+'"')});a.hdr=="PQ"&&d.push('eotf="smpte2084"');return d.join(";")};shaka.util.MimeUtils.getContainerType=function(a){return a.split(";")[0].split("/")[1]};shaka.util.MimeUtils.splitCodecs=function(a){return a.split(",")};
shaka.util.MimeUtils.getNormalizedCodec=function(a){var b=shaka.util.MimeUtils.getCodecParts_(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};shaka.util.MimeUtils.getCodecBase=function(a){var b=[];a=(0,$jscomp.makeIterator)(a.split(","));for(var c=a.next();!c.done;c=a.next())c=shaka.util.MimeUtils.getCodecParts_(c.value),b.push(c[0]);return b.sort().join(",")};shaka.util.MimeUtils.getBasicType=function(a){return a.split(";")[0]};
shaka.util.MimeUtils.getCodecs=function(a){a=a.split(/ *; */);a.shift();return(a=a.find(function(b){return b.startsWith("codecs=")}))?a.split("=")[1].replace(/^"|"$/g,""):""};shaka.util.MimeUtils.isHlsType=function(a){return a==="application/x-mpegurl"||a==="application/vnd.apple.mpegurl"||a==="audio/x-mpegurl"};shaka.util.MimeUtils.isDashType=function(a){return a==="application/dash+xml"||a==="video/vnd.mpeg.dash.mpd"};
shaka.util.MimeUtils.getCorrectAudioCodecs=function(a,b){var c=shaka.device.DeviceFactory.getDevice(),d=shaka.device.IDevice.BrowserEngine.WEBKIT,e=a.toLowerCase();return e=="flac"?c.getBrowserEngine()!=d?"flac":"fLaC":e==="opus"?c.getBrowserEngine()!=d?"opus":shaka.util.MimeUtils.getContainerType(b)=="mp4"?"Opus":"opus":e=="ac-3"&&c.requiresEC3InitSegments()?"ec-3":a};
shaka.util.MimeUtils.getCorrectCodecs=function(a,b){var c=shaka.util.ManifestParserUtils.ContentType,d=shaka.util.MimeUtils;a=a.split(",").map(function(f){return f.trim()});var e=shaka.util.ManifestParserUtils.guessCodecsSafe(c.AUDIO,a);return a.map(function(f){return f==e?d.getCorrectAudioCodecs(f,b):d.getCorrectVideoCodecs(f)}).join(",")};
shaka.util.MimeUtils.getCorrectVideoCodecs=function(a){if(a.includes("avc1")){var b=a.split(".");if(b.length==3)return a=b.shift()+".",a+=parseInt(b.shift(),10).toString(16),a+=("000"+parseInt(b.shift(),10).toString(16)).slice(-4)}else if(a=="vp9")return"vp09.00.41.08";return a};shaka.util.MimeUtils.getCodecParts_=function(a){var b=a.split(".");a=b[0];b.shift();b=b.join(".");return[a,b]};goog.exportSymbol("shaka.util.MimeUtils",shaka.util.MimeUtils);
goog.exportProperty(shaka.util.MimeUtils,"getFullTypeWithAllCodecs",shaka.util.MimeUtils.getFullTypeWithAllCodecs);goog.exportProperty(shaka.util.MimeUtils,"getFullType",shaka.util.MimeUtils.getFullType);shaka.util.MimeUtils.EXTENDED_MIME_PARAMETERS_=(new Map).set("codecs","codecs").set("frameRate","framerate").set("bandwidth","bitrate").set("width","width").set("height","height").set("channelsCount","channels");shaka.util.MimeUtils.CEA608_CLOSED_CAPTION_MIMETYPE="application/cea-608";
shaka.util.MimeUtils.CEA708_CLOSED_CAPTION_MIMETYPE="application/cea-708";shaka.util.MimeUtils.RAW_FORMATS=["audio/aac","audio/ac3","audio/ec3","audio/mpeg"];shaka.metadata.Id3Utils=function(){};shaka.metadata.Id3Utils.isHeader_=function(a,b){return b+10<=a.length&&a[b]===73&&a[b+1]===68&&a[b+2]===51&&a[b+3]<255&&a[b+4]<255&&a[b+6]<128&&a[b+7]<128&&a[b+8]<128&&a[b+9]<128?!0:!1};shaka.metadata.Id3Utils.isFooter_=function(a,b){return b+10<=a.length&&a[b]===51&&a[b+1]===68&&a[b+2]===73&&a[b+3]<255&&a[b+4]<255&&a[b+6]<128&&a[b+7]<128&&a[b+8]<128&&a[b+9]<128?!0:!1};
shaka.metadata.Id3Utils.readSize_=function(a,b){var c=(a[b]&127)<<21;c|=(a[b+1]&127)<<14;c|=(a[b+2]&127)<<7;return c|=a[b+3]&127};shaka.metadata.Id3Utils.readSizeBE_=function(a,b){var c=a[b]<<24;c|=a[b+1]<<16;c|=a[b+2]<<8;c|=a[b+3];return c>>>0};
shaka.metadata.Id3Utils.decodeString_=function(a,b){var c=shaka.util.StringUtils;switch(b){case shaka.metadata.Id3Utils.LATIN1_encoding:return Array.from(a).map(function(d){return String.fromCharCode(d)}).join("");case shaka.metadata.Id3Utils.UTF16BOM_encoding:return c.fromBytesAutoDetect(a);case shaka.metadata.Id3Utils.UTF16BE_encoding:return c.fromUTF16(a,!1);case shaka.metadata.Id3Utils.UTF8_encoding:return c.fromUTF8(a);default:return""}};
shaka.metadata.Id3Utils.nullTermSize_=function(a){return a===shaka.metadata.Id3Utils.UTF16BOM_encoding||a===shaka.metadata.Id3Utils.UTF16BE_encoding?2:1};shaka.metadata.Id3Utils.findNull_=function(a,b,c){c=c===void 0?0:c;if(b===shaka.metadata.Id3Utils.UTF16BOM_encoding||b===shaka.metadata.Id3Utils.UTF16BE_encoding){for(b=c;b+1<a.length;b+=2)if(a[b]===0&&a[b+1]===0)return b;return-1}return a.indexOf(0,c)};
shaka.metadata.Id3Utils.getFrameData_=function(a,b){var c=String.fromCharCode(a[0],a[1],a[2],a[3]);b=b>=4?shaka.metadata.Id3Utils.readSize_(a,4):shaka.metadata.Id3Utils.readSizeBE_(a,4);return{type:c,size:b,data:a.subarray(10,10+b)}};
shaka.metadata.Id3Utils.decodeFrame_=function(a){var b=shaka.metadata.Id3Utils,c=shaka.util.BufferUtils,d=shaka.util.StringUtils,e={key:a.type,description:"",data:"",mimeType:null,pictureType:null};if(a.type==="APIC"){if(a.size<2)return null;var f=a.data[0],g=a.data.subarray(1).indexOf(0);if(g===-1)return null;var h=d.fromUTF8(c.toUint8(a.data,1,g)),k=a.data[2+g];g=3+g;var l=b.findNull_(a.data,f,g);if(l===-1)return null;g=b.decodeString_(a.data.subarray(g,l),f);b=b.nullTermSize_(f);b=l+b;a=h==="--\x3e"?
d.fromUTF8(a.data.subarray(b)):c.toArrayBuffer(a.data.subarray(b));e.mimeType=h;e.pictureType=k;e.description=g;e.data=a;return e}if(a.type==="COMM"){if(a.size<5)return null;c=a.data[0];d=d.fromUTF8(a.data.subarray(1,4)).replace(/\0/g,"");k=b.findNull_(a.data,c,4);if(k===-1)return null;h=b.decodeString_(a.data.subarray(4,k),c);g=b.nullTermSize_(c);a=b.decodeString_(a.data.subarray(k+g),c).replace(/\0*$/,"");e.description=h||d;e.data=a;return e}if(a.type==="TXXX"){if(a.size<2)return null;c=a.data[0];
h=b.findNull_(a.data,c,1);if(h===-1)return null;d=b.decodeString_(a.data.subarray(1,h),c);k=b.nullTermSize_(c);a=b.decodeString_(a.data.subarray(h+k),c).replace(/^\ufeff/,"").replace(/\0*$/,"");e.description=d;e.data=a;return e}if(a.type==="WXXX"){if(a.size<2)return null;k=a.data[0];h=b.findNull_(a.data,k,1);if(h===-1)return null;c=b.decodeString_(a.data.subarray(1,h),k);b=b.nullTermSize_(k);a=d.fromUTF8(a.data.subarray(h+b)).replace(/\0*$/,"");e.description=c;e.data=a;return e}if(a.type==="PRIV"){if(a.size<
2)return null;b=a.data.indexOf(0);if(b===-1)return null;b=d.fromUTF8(c.toUint8(a.data,0,b));e.description=b;b=="com.apple.streaming.transportStreamTimestamp"?(b=a.data.subarray(b.length+1),a=b[3]&1,b=(b[4]<<23)+(b[5]<<15)+(b[6]<<7)+b[7],b/=45,a&&(b+=4.772185884E7),e.data=b):(a=c.toArrayBuffer(a.data.subarray(b.length+1)),e.data=a);return e}if(a.type==="UFID"){b=a.data.indexOf(0);if(b===-1)return null;d=d.fromUTF8(c.toUint8(a.data,0,b));e.description=d;e.data=c.toArrayBuffer(a.data.subarray(b+1));
return e}if(a.type[0]==="T"){if(a.size<2)return null;d=a.data[0];a=b.decodeString_(a.data.subarray(1),d).replace(/\0+$/,"").split("\x00").map(function(m){return m.replace(/^\ufeff/,"")}).filter(function(m){return m.length>0}).join(" / ");e.data=a;return e}return a.type[0]==="W"?(a=d.fromUTF8(a.data).replace(/\0*$/,""),e.data=a,e):a.data?(shaka.log.warning("Unrecognized ID3 frame type:",a.type),e.data=c.toArrayBuffer(a.data),e):null};
shaka.metadata.Id3Utils.getID3Frames=function(a){for(var b=shaka.metadata.Id3Utils,c=0,d=[];b.isHeader_(a,c);){var e=a[c+3],f=b.readSize_(a,c+6);a[c+5]>>6&1&&(c+=10);c+=10;for(f=c+f;c+10<f&&a[c]!==0;){var g=b.getFrameData_(a.subarray(c),e),h=b.decodeFrame_(g);h&&d.push(h);c+=g.size+10}b.isFooter_(a,c)&&(c+=10)}return d};
shaka.metadata.Id3Utils.getID3Data=function(a,b){b=b===void 0?0:b;for(var c=shaka.metadata.Id3Utils,d=b,e=0;c.isHeader_(a,b);){a[b+5]>>6&1&&(e+=10);e+=10;var f=c.readSize_(a,b+6);e+=f;c.isFooter_(a,b+10)&&(e+=10);b+=e}return e>0?a.subarray(d,d+e):new Uint8Array([])};shaka.metadata.Id3Utils.prototype.parse=function(a){return shaka.metadata.Id3Utils.getID3Frames(a)};goog.exportSymbol("shaka.metadata.Id3Utils",shaka.metadata.Id3Utils);goog.exportProperty(shaka.metadata.Id3Utils.prototype,"parse",shaka.metadata.Id3Utils.prototype.parse);
goog.exportProperty(shaka.metadata.Id3Utils,"getID3Data",shaka.metadata.Id3Utils.getID3Data);goog.exportProperty(shaka.metadata.Id3Utils,"getID3Frames",shaka.metadata.Id3Utils.getID3Frames);shaka.metadata.Id3Utils.LATIN1_encoding=0;shaka.metadata.Id3Utils.UTF16BOM_encoding=1;shaka.metadata.Id3Utils.UTF16BE_encoding=2;shaka.metadata.Id3Utils.UTF8_encoding=3;
for(var $jscomp$iter$26=(0,$jscomp.makeIterator)(shaka.util.MimeUtils.RAW_FORMATS),$jscomp$key$m197145341$14$mimeType$jscomp$34=$jscomp$iter$26.next();!$jscomp$key$m197145341$14$mimeType$jscomp$34.done;$jscomp$key$m197145341$14$mimeType$jscomp$34=$jscomp$iter$26.next()){var mimeType$jscomp$34=$jscomp$key$m197145341$14$mimeType$jscomp$34.value;shaka.metadata.Metadata.registerParserByMime(mimeType$jscomp$34,function(){return new shaka.metadata.Id3Utils})};shaka.transmuxer.ADTS=function(){};shaka.transmuxer.ADTS.parseHeader=function(a,b){var c=shaka.transmuxer.ADTS,d=c.getHeaderLength(a,b);return b+d<=a.length&&(a=c.getFullFrameLength(a,b)-d,a>0)?{headerLength:d,frameLength:a}:null};
shaka.transmuxer.ADTS.parseInfo=function(a,b){var c=[96E3,88200,64E3,48E3,44100,32E3,24E3,22050,16E3,12E3,11025,8E3,7350],d=(a[b+2]&60)>>>2;if(d>c.length-1)return null;var e=((a[b+2]&192)>>>6)+1,f=(a[b+2]&1)<<2;f|=(a[b+3]&192)>>>6;return{sampleRate:c[d],channelCount:f,codec:"mp4a.40."+e}};shaka.transmuxer.ADTS.isHeaderPattern=function(a,b){return a[b]===255&&(a[b+1]&246)===240};shaka.transmuxer.ADTS.getHeaderLength=function(a,b){return a[b+1]&1?7:9};
shaka.transmuxer.ADTS.getFullFrameLength=function(a,b){return(a[b+3]&3)<<11|a[b+4]<<3|(a[b+5]&224)>>>5};shaka.transmuxer.ADTS.isHeader=function(a,b){var c=shaka.transmuxer.ADTS;return b+1<a.length&&c.isHeaderPattern(a,b)};shaka.transmuxer.ADTS.probe=function(a,b){var c=shaka.transmuxer.ADTS;if(c.isHeader(a,b)){var d=c.getHeaderLength(a,b);if(b+d>=a.length)return!1;var e=c.getFullFrameLength(a,b);if(e<=d)return!1;b+=e;return b===a.length||c.isHeader(a,b)}return!1};
shaka.transmuxer.ADTS.getFrameDuration=function(a){return shaka.transmuxer.ADTS.AAC_SAMPLES_PER_FRAME*9E4/a};
shaka.transmuxer.ADTS.getSilentFrame=function(a,b){switch(a){case "mp4a.40.2":if(b===1)return new Uint8Array([0,200,0,128,35,128]);if(b===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(b===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(b===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(b===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(b===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(b===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(b===2||b===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])}return null};
shaka.transmuxer.ADTS.AAC_SAMPLES_PER_FRAME=1024;shaka.transmuxer.BaseTransmuxer=function(a){this.originalMimeType_=a;this.frameIndex=0;this.initSegments=new Map;this.lastInitSegment_=null};shaka.transmuxer.BaseTransmuxer.prototype.destroy=function(){this.initSegments.clear()};shaka.transmuxer.BaseTransmuxer.prototype.getOriginalMimeType=function(){return this.originalMimeType_};
shaka.transmuxer.BaseTransmuxer.prototype.getId3Timestamp=function(a,b){a=shaka.metadata.Id3Utils.getID3Frames(a);return a.length&&(a=a.find(function(c){return c.description==="com.apple.streaming.transportStreamTimestamp"}))?a.data:b};
shaka.transmuxer.BaseTransmuxer.prototype.packageSegment=function(a,b,c){b=this.initSegments.getOrInsertComputed(b.id+"_"+c.discontinuitySequence,function(){return a.initSegment()});c=this.lastInitSegment_!==b;var d=a.segmentData();this.lastInitSegment_=b;this.frameIndex++;return{data:d,init:c?b:null}};goog.exportSymbol("shaka.transmuxer.BaseTransmuxer",shaka.transmuxer.BaseTransmuxer);goog.exportProperty(shaka.transmuxer.BaseTransmuxer.prototype,"getOriginalMimeType",shaka.transmuxer.BaseTransmuxer.prototype.getOriginalMimeType);
goog.exportProperty(shaka.transmuxer.BaseTransmuxer.prototype,"destroy",shaka.transmuxer.BaseTransmuxer.prototype.destroy);shaka.transmuxer.TransmuxerUtils=function(){};shaka.transmuxer.TransmuxerUtils.AUDIO_SAMPLE_FLAGS=Object.freeze({isLeading:0,isDependedOn:0,hasRedundancy:0,degradPrio:0,dependsOn:2,isNonSync:0});shaka.transmuxer.TransmuxerUtils.VIDEO_KEYFRAME_FLAGS=Object.freeze({isLeading:0,isDependedOn:0,hasRedundancy:0,degradPrio:0,dependsOn:2,isNonSync:0});shaka.transmuxer.TransmuxerUtils.VIDEO_NON_KEYFRAME_FLAGS=Object.freeze({isLeading:0,isDependedOn:0,hasRedundancy:0,degradPrio:0,dependsOn:1,isNonSync:1});shaka.util.Mp4Generator=function(a){this.streamInfos_=a=a===void 0?[]:a};shaka.util.Mp4Generator.prototype.initSegment=function(){var a=shaka.util.Mp4Generator,b=this.moov_();a=a.FTYP_.value();var c=new Uint8Array(a.byteLength+b.byteLength);c.set(a);c.set(b,a.byteLength);return c};
shaka.util.Mp4Generator.prototype.moov_=function(){if(this.streamInfos_.length===0)throw Error("StreamInfos must have elements");for(var a=shaka.util.Mp4Generator,b=[],c=(0,$jscomp.makeIterator)(this.streamInfos_),d=c.next();!d.done;d=c.next())b.push(this.trak_(d.value));c=this.streamInfos_[0];return a.box.apply(a,["moov",this.mvhd_(c)].concat((0,$jscomp.arrayFromIterable)(b),[this.mvex_(),this.psshs(c.stream)]))};
shaka.util.Mp4Generator.prototype.mvhd_=function(a){var b=shaka.util.Mp4Generator,c=a.duration*a.timescale,d=Math.floor(c/(b.UINT32_MAX_+1));c=Math.floor(c%(b.UINT32_MAX_+1));var e=b.MVHD_TEMPLATE_.value();this.writeUint32_(e,a.timescale,20);this.writeUint32_(e,d,24);this.writeUint32_(e,c,28);return b.box("mvhd",e)};shaka.util.Mp4Generator.prototype.trak_=function(a){return shaka.util.Mp4Generator.box("trak",this.tkhd_(a),this.mdia_(a))};
shaka.util.Mp4Generator.prototype.tkhd_=function(a){var b=shaka.util.Mp4Generator,c=a.id+1,d=a.stream.width||0,e=a.stream.height||0;a.type==shaka.util.ManifestParserUtils.ContentType.AUDIO&&(e=d=0);var f=a.duration*a.timescale;a=Math.floor(f/(b.UINT32_MAX_+1));f=Math.floor(f%(b.UINT32_MAX_+1));var g=b.TKHD_TEMPLATE_.value();this.writeUint32_(g,c,20);this.writeUint32_(g,a,28);this.writeUint32_(g,f,32);this.writeUint16_(g,d,88);this.writeUint16_(g,e,92);return b.box("tkhd",g)};
shaka.util.Mp4Generator.prototype.mdia_=function(a){return shaka.util.Mp4Generator.box("mdia",this.mdhd_(a),this.hdlr_(a),this.minf_(a))};
shaka.util.Mp4Generator.prototype.mdhd_=function(a){var b=shaka.util.Mp4Generator,c=a.duration*a.timescale,d=Math.floor(c/(b.UINT32_MAX_+1));c=Math.floor(c%(b.UINT32_MAX_+1));var e=a.stream.language;e=e.charCodeAt(0)-96<<10|e.charCodeAt(1)-96<<5|e.charCodeAt(2)-96;var f=b.MDHD_TEMPLATE_.value();this.writeUint32_(f,a.timescale,20);this.writeUint32_(f,d,24);this.writeUint32_(f,c,28);this.writeUint16_(f,e,32);return b.box("mdhd",f)};
shaka.util.Mp4Generator.prototype.hdlr_=function(a){var b=shaka.util.Mp4Generator,c=shaka.util.ManifestParserUtils.ContentType,d=new Uint8Array([]);switch(a.type){case c.VIDEO:d=b.HDLR_TYPES_.video.value();break;case c.AUDIO:d=b.HDLR_TYPES_.audio.value()}return b.box("hdlr",d)};
shaka.util.Mp4Generator.prototype.minf_=function(a){var b=shaka.util.Mp4Generator,c=shaka.util.ManifestParserUtils.ContentType;switch(a.type){case c.VIDEO:return b.box("minf",b.box("vmhd",b.VMHD_.value()),b.DINF_.value(),this.stbl_(a));case c.AUDIO:return b.box("minf",b.box("smhd",b.SMHD_.value()),b.DINF_.value(),this.stbl_(a))}return new Uint8Array([])};
shaka.util.Mp4Generator.prototype.stbl_=function(a){var b=shaka.util.Mp4Generator;return b.box("stbl",this.stsd_(a),b.STTS_BOX_.value(),b.STSC_BOX_.value(),b.STSZ_BOX_.value(),b.STCO_BOX_.value())};
shaka.util.Mp4Generator.prototype.stsd_=function(a){var b=shaka.util.Mp4Generator,c=shaka.util.ManifestParserUtils.ContentType,d="aac";a.codecs.includes("mp3")?d="mp3":a.codecs.includes("ac-3")?d=shaka.device.DeviceFactory.getDevice().requiresEC3InitSegments()?"ec-3":"ac-3":a.codecs.includes("ec-3")?d="ec-3":a.codecs.includes("opus")&&(d="opus");var e=new Uint8Array([]);switch(a.type){case c.VIDEO:a.codecs.includes("avc1")?e=this.avc1_(a):a.codecs.includes("hvc1")&&(e=this.hvc1_(a));break;case c.AUDIO:e=
d=="mp3"?this.mp3_(a):d=="ac-3"?this.ac3_(a):d=="ec-3"?this.ec3_(a):d=="opus"?this.opus_(a):this.mp4a_(a)}return b.box("stsd",b.STSD_.value(),e)};
shaka.util.Mp4Generator.prototype.videoSampleEntry_=function(a,b,c){var d=shaka.util.Mp4Generator,e=a.stream.width||0,f=a.stream.height||0,g=new Uint8Array([]);a.mediaConfig.byteLength>0&&(g=d.box(c,a.mediaConfig));c=d.VIDEO_SAMPLE_ENTRY_TEMPLATE_.value();this.writeUint16_(c,e,24);this.writeUint16_(c,f,26);e=this.pasp_(a);f=new Uint8Array([]);d.isStreamEncrypted_(a.stream)&&(f=this.sinf(a.stream,a.codecs),b="encv");return d.box(b,c,g,e,f)};
shaka.util.Mp4Generator.prototype.avc1_=function(a){return this.videoSampleEntry_(a,"avc1","avcC")};shaka.util.Mp4Generator.prototype.hvc1_=function(a){return this.videoSampleEntry_(a,"hvc1","hvcC")};shaka.util.Mp4Generator.prototype.pasp_=function(a){if(!a.hSpacing&&!a.vSpacing)return new Uint8Array([]);var b=shaka.util.Mp4Generator,c=a.hSpacing||0;a=a.vSpacing||0;var d=b.allocBox_("pasp",8);this.writeUint32_(d,c,b.BOX_HEADER_SIZE_);this.writeUint32_(d,a,b.BOX_HEADER_SIZE_+4);return d};
shaka.util.Mp4Generator.prototype.audioStsd_=function(a){var b=a.stream.channelsCount||2;a=a.stream.audioSamplingRate||44100;var c=shaka.util.Mp4Generator.AUDIO_STSD_TEMPLATE_.value();c[17]=b;this.writeUint16_(c,a,24);return c};shaka.util.Mp4Generator.prototype.mp3_=function(a){return shaka.util.Mp4Generator.box(".mp3",this.audioStsd_(a))};
shaka.util.Mp4Generator.prototype.ac3_=function(a){var b=shaka.util.Mp4Generator,c=b.box("dac3",a.mediaConfig),d="ac-3",e=new Uint8Array([]);b.isStreamEncrypted_(a.stream)&&(e=this.sinf(a.stream,a.codecs),d="enca");return b.box(d,this.audioStsd_(a),c,e)};
shaka.util.Mp4Generator.prototype.ec3_=function(a){var b=shaka.util.Mp4Generator,c=b.box("dec3",a.mediaConfig),d="ec-3",e=new Uint8Array([]);b.isStreamEncrypted_(a.stream)&&(e=this.sinf(a.stream,a.codecs),d="enca");return b.box(d,this.audioStsd_(a),c,e)};
shaka.util.Mp4Generator.prototype.opus_=function(a){var b=shaka.util.Mp4Generator,c=b.box("dOps",a.mediaConfig),d="Opus",e=new Uint8Array([]);b.isStreamEncrypted_(a.stream)&&(e=this.sinf(a.stream,a.codecs),d="enca");return b.box(d,this.audioStsd_(a),c,e)};
shaka.util.Mp4Generator.prototype.mp4a_=function(a){var b=shaka.util.Mp4Generator;var c=a.mediaConfig.byteLength>0?b.box("esds",a.mediaConfig):b.box("esds",this.esds_(a));var d="mp4a",e=new Uint8Array([]);b.isStreamEncrypted_(a.stream)&&(e=this.sinf(a.stream,a.codecs),d="enca");return b.box(d,this.audioStsd_(a),c,e)};
shaka.util.Mp4Generator.prototype.esds_=function(a){var b=a.id+1,c=a.stream.channelsCount||2,d=a.stream.audioSamplingRate||44100,e=shaka.util.ManifestParserUtils.guessCodecs(shaka.util.ManifestParserUtils.ContentType.AUDIO,a.codecs.split(",")),f={96E3:0,88200:1,64E3:2,48E3:3,44100:4,32E3:5,24E3:6,22050:7,16E3:8,12E3:9,11025:10,8E3:11,7350:12};a=f[d];if(e==="mp4a.40.5"||e==="mp4a.40.29")a=f[d*2];d=parseInt(e.split(".").pop(),10);e=shaka.util.Mp4Generator.ESDS_TEMPLATE_.value();this.writeUint16_(e,
b,6);e[26]=d<<3|a>>>1;e[27]=a<<7|c<<3;return e};shaka.util.Mp4Generator.prototype.mvex_=function(){for(var a=shaka.util.Mp4Generator,b=[],c=(0,$jscomp.makeIterator)(this.streamInfos_),d=c.next();!d.done;d=c.next())b.push(this.trex_(d.value));return a.box.apply(a,["mvex"].concat((0,$jscomp.arrayFromIterable)(b)))};shaka.util.Mp4Generator.prototype.trex_=function(a){var b=shaka.util.Mp4Generator;a=a.id+1;var c=b.TREX_TEMPLATE_.value();this.writeUint32_(c,a,4);return b.box("trex",c)};
shaka.util.Mp4Generator.prototype.psshs=function(a){var b=[];if(!shaka.util.Mp4Generator.isStreamEncrypted_(a))return new Uint8Array([]);a=(0,$jscomp.makeIterator)(a.drmInfos);for(var c=a.next();!c.done;c=a.next())if(c=c.value,c.initData){c=(0,$jscomp.makeIterator)(c.initData);for(var d=c.next();!d.done;d=c.next())b.push(d.value.initData)}return shaka.util.Uint8ArrayUtils.concat.apply(shaka.util.Uint8ArrayUtils,(0,$jscomp.arrayFromIterable)(b))};
shaka.util.Mp4Generator.prototype.sinf=function(a,b){return shaka.util.Mp4Generator.box("sinf",this.frma_(b),this.schm_(a),this.schi_(a))};shaka.util.Mp4Generator.prototype.frma_=function(a){a=a.split(".")[0];var b=shaka.util.Mp4Generator,c=b.BOX_HEADER_SIZE_;b=b.allocBox_("frma",4);this.writeUint32_(b,this.stringToCharCode_(a),c);return b};
shaka.util.Mp4Generator.prototype.schm_=function(a){var b="cenc";(a=a.drmInfos[0])&&a.encryptionScheme&&(b=a.encryptionScheme);a=shaka.util.Mp4Generator;var c=a.SCHM_TEMPLATE_.value();this.writeUint32_(c,this.stringToCharCode_(b),4);return a.box("schm",c)};shaka.util.Mp4Generator.prototype.schi_=function(a){return shaka.util.Mp4Generator.box("schi",this.tenc_(a))};
shaka.util.Mp4Generator.prototype.tenc_=function(a){var b=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);a=(0,$jscomp.makeIterator)(a.drmInfos);for(var c=a.next();!c.done;c=a.next())if((c=c.value)&&c.keyIds&&c.keyIds.size){c=(0,$jscomp.makeIterator)(c.keyIds);for(var d=c.next();!d.done;d=c.next())b=this.hexStringToBuffer_(d.value)}a=shaka.util.Mp4Generator;goog.asserts.assert(b,"Default KID should be non-null");return a.box("tenc",a.TENC_HEADER_.value(),b)};
shaka.util.Mp4Generator.prototype.segmentData=function(){for(var a=shaka.util.Mp4Generator,b=a.BOX_HEADER_SIZE_,c=[],d=0,e=(0,$jscomp.makeIterator)(this.streamInfos_),f=e.next();!f.done;f=e.next()){var g=f.value;f=this.moof_(g);g=g.data?g.data.samples:[];for(var h=0,k=(0,$jscomp.makeIterator)(g),l=k.next();!l.done;l=k.next())h+=l.value.data.byteLength;h=b+h;c.push({moof:f,samples:g,mdatSize:h});d+=f.byteLength+h}d=shaka.util.BufferUtils.toUint8(new ArrayBuffer(d));e=0;c=(0,$jscomp.makeIterator)(c);
for(f=c.next();!f.done;f=c.next())for(h=f.value,f=h.moof,g=h.samples,h=h.mdatSize,d.set(f,e),e+=f.byteLength,this.writeUint32_(d,h,e),d.set(a.MDAT_TYPE_.value(),e+4),e+=b,f=(0,$jscomp.makeIterator)(g),g=f.next();!g.done;g=f.next())g=g.value,d.set(g.data,e),e+=g.data.byteLength;return d};shaka.util.Mp4Generator.prototype.moof_=function(a){return shaka.util.Mp4Generator.box("moof",this.mfhd_(a),this.traf_(a))};
shaka.util.Mp4Generator.prototype.mfhd_=function(a){var b=shaka.util.Mp4Generator;a=a.data?a.data.sequenceNumber:0;var c=b.allocBox_("mfhd",8);this.writeUint32_(c,a,b.BOX_HEADER_SIZE_+4);return c};shaka.util.Mp4Generator.prototype.traf_=function(a){var b=shaka.util.Mp4Generator,c=this.sdtp_(a),d=c.length+32+20+8+16+8+8;return b.box("traf",this.tfhd_(a),this.tfdt_(a),this.trun_(a,d),c)};
shaka.util.Mp4Generator.prototype.sdtp_=function(a){var b=shaka.util.Mp4Generator;a=a.data?a.data.samples:[];var c=b.allocBox_("sdtp",4+a.length);b=b.BOX_HEADER_SIZE_+4;for(var d=0;d<a.length;d++){var e=a[d].flags;c[d+b]=e.dependsOn<<4|e.isDependedOn<<2|e.hasRedundancy}return c};shaka.util.Mp4Generator.prototype.tfhd_=function(a){var b=shaka.util.Mp4Generator;a=a.id+1;var c=b.TFHD_TEMPLATE_.value();this.writeUint32_(c,a,4);return b.box("tfhd",c)};
shaka.util.Mp4Generator.prototype.tfdt_=function(a){var b=shaka.util.Mp4Generator,c=b.BOX_HEADER_SIZE_,d=a.data?a.data.baseMediaDecodeTime:0;a=Math.floor(d/(b.UINT32_MAX_+1));d=Math.floor(d%(b.UINT32_MAX_+1));b=b.allocBox_("tfdt",12);b[c]=1;this.writeUint32_(b,a,c+4);this.writeUint32_(b,d,c+8);return b};
shaka.util.Mp4Generator.prototype.trun_=function(a,b){var c=shaka.util.ManifestParserUtils.ContentType,d=shaka.util.Mp4Generator,e=a.data?a.data.samples:[],f=e.length,g=12+16*f,h=d.allocBox_("trun",g);b+=d.BOX_HEADER_SIZE_+g;h[d.BOX_HEADER_SIZE_]=a.type===c.VIDEO?1:0;h[d.BOX_HEADER_SIZE_+1]=0;h[d.BOX_HEADER_SIZE_+2]=15;h[d.BOX_HEADER_SIZE_+3]=1;this.writeUint32_(h,f,d.BOX_HEADER_SIZE_+4);this.writeUint32_(h,b,d.BOX_HEADER_SIZE_+8);for(a=0;a<f;a++)b=e[a],c=b.flags,g=d.BOX_HEADER_SIZE_+12+16*a,this.writeUint32_(h,
b.duration,g),this.writeUint32_(h,b.size,g+4),h[g+8]=c.isLeading<<2|c.dependsOn,h[g+9]=c.isDependedOn<<6|c.hasRedundancy<<4|c.isNonSync,h[g+10]=c.degradPrio&61440,h[g+11]=c.degradPrio&15,this.writeUint32_(h,b.cts,g+12);return h};shaka.util.Mp4Generator.prototype.writeUint32_=function(a,b,c){a[c]=b>>>24&255;a[c+1]=b>>>16&255;a[c+2]=b>>>8&255;a[c+3]=b&255};shaka.util.Mp4Generator.prototype.writeUint16_=function(a,b,c){a[c]=b>>>8&255;a[c+1]=b&255};
shaka.util.Mp4Generator.prototype.hexStringToBuffer_=function(a){for(var b=new Uint8Array(a.length/2),c=0;c<a.length/2;c+=1)b[c]=parseInt(String(a[c*2]+a[c*2+1]),16);return b};shaka.util.Mp4Generator.prototype.stringToCharCode_=function(a){for(var b=0,c=0;c<a.length;c+=1)b|=a.charCodeAt(c)<<(a.length-c-1)*8;return b};
shaka.util.Mp4Generator.box=function(a){for(var b=$jscomp.getRestArguments.apply(1,arguments),c=0,d=(0,$jscomp.makeIterator)(b),e=d.next();!e.done;e=d.next())c+=e.value.byteLength;c=shaka.util.Mp4Generator.allocBox_(a,c);d=shaka.util.Mp4Generator.BOX_HEADER_SIZE_;for(e=0;e<b.length;e++)c.set(b[e],d),d+=b[e].byteLength;return c};
shaka.util.Mp4Generator.allocBox_=function(a,b){var c=shaka.util.Mp4Generator.BOX_TYPES_.get(a);c||(c=[a.charCodeAt(0),a.charCodeAt(1),a.charCodeAt(2),a.charCodeAt(3)],shaka.util.Mp4Generator.BOX_TYPES_.set(a,c));a=shaka.util.Mp4Generator.BOX_HEADER_SIZE_+b;b=new Uint8Array(a);b[0]=a>>24&255;b[1]=a>>16&255;b[2]=a>>8&255;b[3]=a&255;b.set(c,4);return b};shaka.util.Mp4Generator.isStreamEncrypted_=function(a){return a.encrypted&&a.drmInfos.length>0};shaka.util.Mp4Generator.UINT32_MAX_=4294967295;
shaka.util.Mp4Generator.BOX_TYPES_=new Map;shaka.util.Mp4Generator.BOX_HEADER_SIZE_=8;shaka.util.Mp4Generator.MDAT_TYPE_=new shaka.util.Lazy(function(){return new Uint8Array([109,100,97,116])});
shaka.util.Mp4Generator.MVHD_TEMPLATE_=new shaka.util.Lazy(function(){return new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,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])});
shaka.util.Mp4Generator.TKHD_TEMPLATE_=new shaka.util.Lazy(function(){return new Uint8Array([1,0,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,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,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])});shaka.util.Mp4Generator.MDHD_TEMPLATE_=new shaka.util.Lazy(function(){return new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])});
shaka.util.Mp4Generator.TREX_TEMPLATE_=new shaka.util.Lazy(function(){return new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0])});shaka.util.Mp4Generator.TFHD_TEMPLATE_=new shaka.util.Lazy(function(){return new Uint8Array([0,0,0,58,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0])});shaka.util.Mp4Generator.ESDS_TEMPLATE_=new shaka.util.Lazy(function(){return new Uint8Array([0,0,0,0,3,25,0,0,0,4,17,64,21,0,0,0,0,0,0,0,0,0,0,0,5,2,0,0,6,1,2])});
shaka.util.Mp4Generator.AUDIO_STSD_TEMPLATE_=new shaka.util.Lazy(function(){return new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0])});shaka.util.Mp4Generator.VIDEO_SAMPLE_ENTRY_TEMPLATE_=new shaka.util.Lazy(function(){return 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,0,0,0,0,0,72,0,0,0,72,0,0,0,0,0,0,0,1,19,118,105,100,101,111,106,115,45,99,111,110,116,114,105,98,45,104,108,115,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,17])});
shaka.util.Mp4Generator.TENC_HEADER_=new shaka.util.Lazy(function(){return new Uint8Array([0,0,0,0,0,0,1,8])});shaka.util.Mp4Generator.SCHM_TEMPLATE_=new shaka.util.Lazy(function(){return new Uint8Array([0,0,0,0,0,0,0,0,0,1,0,0])});
shaka.util.Mp4Generator.HDLR_TYPES_={video:new shaka.util.Lazy(function(){return 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])}),audio:new shaka.util.Lazy(function(){return 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])})};shaka.util.Mp4Generator.VMHD_=new shaka.util.Lazy(function(){return new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])});
shaka.util.Mp4Generator.SMHD_=new shaka.util.Lazy(function(){return new Uint8Array([0,0,0,0,0,0,0,0])});shaka.util.Mp4Generator.STSD_=new shaka.util.Lazy(function(){return new Uint8Array([0,0,0,0,0,0,0,1])});shaka.util.Mp4Generator.FTYP_=new shaka.util.Lazy(function(){var a=new Uint8Array([105,115,111,109]),b=new Uint8Array([97,118,99,49]),c=new Uint8Array([0,0,0,1]);return shaka.util.Mp4Generator.box("ftyp",a,c,a,b)});
shaka.util.Mp4Generator.DINF_=new shaka.util.Lazy(function(){var a=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]);a=shaka.util.Mp4Generator.box("dref",a);return shaka.util.Mp4Generator.box("dinf",a)});shaka.util.Mp4Generator.STTS_BOX_=new shaka.util.Lazy(function(){return shaka.util.Mp4Generator.allocBox_("stts",8)});shaka.util.Mp4Generator.STSC_BOX_=new shaka.util.Lazy(function(){return shaka.util.Mp4Generator.allocBox_("stsc",8)});
shaka.util.Mp4Generator.STSZ_BOX_=new shaka.util.Lazy(function(){return shaka.util.Mp4Generator.allocBox_("stsz",12)});shaka.util.Mp4Generator.STCO_BOX_=new shaka.util.Lazy(function(){return shaka.util.Mp4Generator.allocBox_("stco",8)});shaka.transmuxer.AacTransmuxer=function(){shaka.transmuxer.BaseTransmuxer.apply(this,arguments)};$jscomp.inherits(shaka.transmuxer.AacTransmuxer,shaka.transmuxer.BaseTransmuxer);shaka.transmuxer.AacTransmuxer.prototype.isSupported=function(a,b){b=shaka.media.Capabilities;return this.isAacContainer_(a)?b.isTypeSupported(this.convertCodecs(shaka.util.ManifestParserUtils.ContentType.AUDIO,a)):!1};
shaka.transmuxer.AacTransmuxer.prototype.isAacContainer_=function(a){return a.toLowerCase().split(";")[0]=="audio/aac"};shaka.transmuxer.AacTransmuxer.prototype.convertCodecs=function(a,b){return this.isAacContainer_(b)?'audio/mp4; codecs="'+(shaka.util.MimeUtils.getCodecs(b)||"mp4a.40.2")+'"':b};
shaka.transmuxer.AacTransmuxer.prototype.transmux=function(a,b,c,d){var e=shaka.transmuxer.ADTS,f=shaka.util.BufferUtils.toUint8(a);a=shaka.metadata.Id3Utils.getID3Data(f);for(var g=a.length;g<f.length&&!e.probe(f,g);g++);var h=this.getId3Timestamp(a,c.endTime*1E3);a=e.parseInfo(f,g);if(!a)return Promise.reject(new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,c?c.getUris()[0]:null));b.audioSamplingRate=a.sampleRate;b.channelsCount=
a.channelCount;for(var k=[];g<f.length;){var l=e.parseHeader(f,g);if(!l)return Promise.reject(new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,c?c.getUris()[0]:null));var m=l.headerLength+l.frameLength;if(g+m<=f.length){var n=f.subarray(g+l.headerLength,g+m);k.push({data:n,size:l.frameLength,duration:e.AAC_SAMPLES_PER_FRAME,cts:0,flags:shaka.transmuxer.TransmuxerUtils.AUDIO_SAMPLE_FLAGS})}g+=m}e=a.sampleRate;f=Math.floor(h*
e/1E3);d={id:b.id,type:shaka.util.ManifestParserUtils.ContentType.AUDIO,codecs:a.codec,timescale:e,duration:d,mediaConfig:new Uint8Array([]),data:{sequenceNumber:this.frameIndex,baseMediaDecodeTime:f,samples:k},stream:b};d=new shaka.util.Mp4Generator([d]);return Promise.resolve(this.packageSegment(d,b,c))};goog.exportSymbol("shaka.transmuxer.AacTransmuxer",shaka.transmuxer.AacTransmuxer);goog.exportProperty(shaka.transmuxer.AacTransmuxer.prototype,"transmux",shaka.transmuxer.AacTransmuxer.prototype.transmux);
goog.exportProperty(shaka.transmuxer.AacTransmuxer.prototype,"convertCodecs",shaka.transmuxer.AacTransmuxer.prototype.convertCodecs);goog.exportProperty(shaka.transmuxer.AacTransmuxer.prototype,"isSupported",shaka.transmuxer.AacTransmuxer.prototype.isSupported);shaka.transmuxer.TransmuxerEngine.registerTransmuxer("audio/aac",function(){return new shaka.transmuxer.AacTransmuxer("audio/aac")},shaka.transmuxer.TransmuxerEngine.PluginPriority.FALLBACK);shaka.transmuxer.Ac3=function(){};
shaka.transmuxer.Ac3.parseFrame=function(a,b,c){if(b+8>a.length||a[b]!==11||a[b+1]!==119)return!1;var d=a[b+4]>>6;if(d>=3)return!1;var e=a[b+4]&63,f=[64,69,96,64,70,96,80,87,120,80,88,120,96,104,144,96,105,144,112,121,168,112,122,168,128,139,192,128,140,192,160,174,240,160,175,240,192,208,288,192,209,288,224,243,336,224,244,336,256,278,384,256,279,384,320,348,480,320,349,480,384,417,576,384,418,576,448,487,672,448,488,672,512,557,768,512,558,768,640,696,960,640,697,960,768,835,1152,768,836,1152,896,
975,1344,896,976,1344,1024,1114,1536,1024,1115,1536,1152,1253,1728,1152,1254,1728,1280,1393,1920,1280,1394,1920][e*3+d]*2;if(b+f>a.length)return!1;var g=a[b+6]>>5,h=0;g===2?h+=2:(g&1&&g!==1&&(h+=2),g&4&&(h+=2));h=(a[b+6]<<8|a[b+7])>>12-h&1;var k=a[b+5]&7;a=new Uint8Array([d<<6|a[b+5]>>3<<1|k>>2,(k&3)<<6|g<<3|h<<2|e>>4,e<<4&224]);c.sampleRate=[48E3,44100,32E3][d];c.channelCount=[2,1,2,3,3,4,4,5][g]+h;c.audioConfig=a;c.frameLength=f;return!0};
shaka.transmuxer.Ac3.probe=function(a,b){if(a[b]===11&&a[b+1]===119){var c=0,d=5;b+=d;for(var e,f;d>0;){f=a[b];var g=Math.min(d,8),h=8-g;e=4278190080>>>24+h<<h;e=(f&e)>>h;c=c?c<<g|e:e;b+=1;d-=g}if(c<16)return!0}return!1};shaka.transmuxer.Ac3.AC3_SAMPLES_PER_FRAME=1536;shaka.transmuxer.Ac3Transmuxer=function(){shaka.transmuxer.BaseTransmuxer.apply(this,arguments)};$jscomp.inherits(shaka.transmuxer.Ac3Transmuxer,shaka.transmuxer.BaseTransmuxer);shaka.transmuxer.Ac3Transmuxer.prototype.isSupported=function(a,b){b=shaka.media.Capabilities;return this.isAc3Container_(a)?b.isTypeSupported(this.convertCodecs(shaka.util.ManifestParserUtils.ContentType.AUDIO,a)):!1};
shaka.transmuxer.Ac3Transmuxer.prototype.isAc3Container_=function(a){return a.toLowerCase().split(";")[0]=="audio/ac3"};shaka.transmuxer.Ac3Transmuxer.prototype.convertCodecs=function(a,b){return this.isAc3Container_(b)?shaka.device.DeviceFactory.getDevice().requiresEC3InitSegments()?'audio/mp4; codecs="ec-3"':'audio/mp4; codecs="ac-3"':b};
shaka.transmuxer.Ac3Transmuxer.prototype.transmux=function(a,b,c,d){var e=shaka.transmuxer.Ac3;a=shaka.util.BufferUtils.toUint8(a);for(var f=shaka.metadata.Id3Utils.getID3Data(a),g=f.length;g<a.length&&!e.probe(a,g);g++);f=this.getId3Timestamp(f,c.endTime*1E3);for(var h=0,k=new Uint8Array([]),l=[],m={sampleRate:0,channelCount:0,audioConfig:new Uint8Array(0),frameLength:0};g<a.length;){if(!e.parseFrame(a,g,m))return Promise.reject(new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,
shaka.util.Error.Code.TRANSMUXING_FAILED,c?c.getUris()[0]:null));b.audioSamplingRate=m.sampleRate;b.channelsCount=m.channelCount;h=m.sampleRate;k=m.audioConfig;var n=a.subarray(g,g+m.frameLength);l.push({data:n,size:m.frameLength,duration:e.AC3_SAMPLES_PER_FRAME,cts:0,flags:shaka.transmuxer.TransmuxerUtils.AUDIO_SAMPLE_FLAGS});g+=m.frameLength}d=new shaka.util.Mp4Generator([{id:b.id,type:shaka.util.ManifestParserUtils.ContentType.AUDIO,codecs:"ac-3",timescale:h,duration:d,mediaConfig:k,data:{sequenceNumber:this.frameIndex,
baseMediaDecodeTime:Math.floor(f*h/1E3),samples:l},stream:b}]);return Promise.resolve(this.packageSegment(d,b,c))};goog.exportSymbol("shaka.transmuxer.Ac3Transmuxer",shaka.transmuxer.Ac3Transmuxer);goog.exportProperty(shaka.transmuxer.Ac3Transmuxer.prototype,"transmux",shaka.transmuxer.Ac3Transmuxer.prototype.transmux);goog.exportProperty(shaka.transmuxer.Ac3Transmuxer.prototype,"convertCodecs",shaka.transmuxer.Ac3Transmuxer.prototype.convertCodecs);
goog.exportProperty(shaka.transmuxer.Ac3Transmuxer.prototype,"isSupported",shaka.transmuxer.Ac3Transmuxer.prototype.isSupported);shaka.transmuxer.TransmuxerEngine.registerTransmuxer("audio/ac3",function(){return new shaka.transmuxer.Ac3Transmuxer("audio/ac3")},shaka.transmuxer.TransmuxerEngine.PluginPriority.FALLBACK);/*

 Copyright Brightcove, Inc.

 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
*/
shaka.util.ExpGolomb=function(a,b){this.data_=a;if(b===void 0?0:b)this.data_=shaka.util.Uint8ArrayUtils.removeEmulationPreventionBytes(a);this.workingBytesAvailable_=this.data_.byteLength;this.workingBitsAvailable_=this.workingWord_=0};
shaka.util.ExpGolomb.prototype.loadWord_=function(){var a=this.data_.byteLength-this.workingBytesAvailable_,b=Math.min(4,this.workingBytesAvailable_);if(b!==0){for(var c=0,d=0;d<b;d++)c=c<<8|this.data_[a+d];this.workingWord_=c<<(4-b)*8;this.workingBitsAvailable_=b*8;this.workingBytesAvailable_-=b}};
shaka.util.ExpGolomb.prototype.skipBits=function(a){if(this.workingBitsAvailable_<=a){a-=this.workingBitsAvailable_;var b=Math.floor(a/8);a-=b*8;this.workingBitsAvailable_-=b;this.loadWord_()}this.workingWord_<<=a;this.workingBitsAvailable_-=a};
shaka.util.ExpGolomb.prototype.readBits=function(a){var b=Math.min(this.workingBitsAvailable_,a),c=this.workingWord_>>>32-b;this.workingBitsAvailable_-=b;this.workingBitsAvailable_>0?this.workingWord_<<=b:this.workingBytesAvailable_>0&&this.loadWord_();b=a-b;return b>0?c<<b|this.readBits(b):c};
shaka.util.ExpGolomb.prototype.skipLeadingZeros_=function(){for(var a=0;this.workingBitsAvailable_===0;){if(this.workingBytesAvailable_===0)return a;this.loadWord_()}for(;;){var b=Math.clz32(this.workingWord_);b>this.workingBitsAvailable_&&(b=this.workingBitsAvailable_);a+=b;this.workingWord_<<=b;this.workingBitsAvailable_-=b;if(this.workingBitsAvailable_>0||this.workingBytesAvailable_===0)break;this.loadWord_()}return a};shaka.util.ExpGolomb.prototype.skipExpGolomb=function(){this.skipBits(1+this.skipLeadingZeros_())};
shaka.util.ExpGolomb.prototype.readUnsignedExpGolomb=function(){var a=this.skipLeadingZeros_();return this.readBits(a+1)-1};shaka.util.ExpGolomb.prototype.readExpGolomb=function(){var a=this.readUnsignedExpGolomb();return 1&a?1+a>>>1:-1*(a>>>1)};shaka.util.ExpGolomb.prototype.readBoolean=function(){return this.readBits(1)===1};shaka.util.ExpGolomb.prototype.readUnsignedByte=function(){return this.readBits(8)};
shaka.util.ExpGolomb.prototype.skipScalingList=function(a){for(var b=8,c=8,d=0;d<a;d++)c!==0&&(c=this.readExpGolomb(),c=(b+c+256)%256),b=c===0?b:c};shaka.util.ExpGolomb.prototype.readSliceType=function(){this.readUnsignedByte();this.readUnsignedExpGolomb();return this.readUnsignedExpGolomb()};goog.exportSymbol("shaka.util.ExpGolomb",shaka.util.ExpGolomb);shaka.transmuxer.Ec3=function(){};
shaka.transmuxer.Ec3.parseFrame=function(a,b,c){if(b+8>a.length||!shaka.transmuxer.Ec3.probe(a,b))return!1;var d=new shaka.util.ExpGolomb(a.subarray(b+2));d.skipBits(2);d.skipBits(3);var e=d.readBits(11)+1<<1,f=d.readBits(2);if(f==3){f=d.readBits(2);f=[24E3,22060,16E3][f];var g=3}else f=[48E3,44100,32E3][f],g=d.readBits(2);var h=d.readBits(3),k=d.readBits(1);d=d.readBits(5);if(b+e>a.byteLength)return!1;a=Math.floor(e*f/([1,2,3,6][g]*16));a=new Uint8Array([(a&8160)>>5,(a&31)<<3,f<<6|d<<1|0,0|h<<1|
k<<0,0]);c.sampleRate=f;c.channelCount=[2,1,2,3,3,4,4,5][h]+k;c.audioConfig=a;c.frameLength=e;return!0};shaka.transmuxer.Ec3.probe=function(a,b){return(a[b]<<8|a[b+1]<<0)===2935?!0:!1};shaka.transmuxer.Ec3.EC3_SAMPLES_PER_FRAME=1536;shaka.transmuxer.Ec3Transmuxer=function(){shaka.transmuxer.BaseTransmuxer.apply(this,arguments)};$jscomp.inherits(shaka.transmuxer.Ec3Transmuxer,shaka.transmuxer.BaseTransmuxer);shaka.transmuxer.Ec3Transmuxer.prototype.isSupported=function(a,b){b=shaka.media.Capabilities;return this.isEc3Container_(a)?b.isTypeSupported(this.convertCodecs(shaka.util.ManifestParserUtils.ContentType.AUDIO,a)):!1};
shaka.transmuxer.Ec3Transmuxer.prototype.isEc3Container_=function(a){return a.toLowerCase().split(";")[0]=="audio/ec3"};shaka.transmuxer.Ec3Transmuxer.prototype.convertCodecs=function(a,b){return this.isEc3Container_(b)?'audio/mp4; codecs="ec-3"':b};
shaka.transmuxer.Ec3Transmuxer.prototype.transmux=function(a,b,c,d){var e=shaka.transmuxer.Ec3;a=shaka.util.BufferUtils.toUint8(a);for(var f=shaka.metadata.Id3Utils.getID3Data(a),g=f.length;g<a.length&&!e.probe(a,g);g++);f=this.getId3Timestamp(f,c.endTime*1E3);for(var h=0,k=new Uint8Array([]),l=[],m={sampleRate:0,channelCount:0,audioConfig:new Uint8Array(0),frameLength:0};g<a.length;){if(!e.parseFrame(a,g,m))return Promise.reject(new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,
shaka.util.Error.Code.TRANSMUXING_FAILED,c?c.getUris()[0]:null));b.audioSamplingRate=m.sampleRate;b.channelsCount=m.channelCount;h=m.sampleRate;k=m.audioConfig;var n=a.subarray(g,g+m.frameLength);l.push({data:n,size:m.frameLength,duration:e.EC3_SAMPLES_PER_FRAME,cts:0,flags:shaka.transmuxer.TransmuxerUtils.AUDIO_SAMPLE_FLAGS});g+=m.frameLength}d=new shaka.util.Mp4Generator([{id:b.id,type:shaka.util.ManifestParserUtils.ContentType.AUDIO,codecs:"ec-3",timescale:h,duration:d,mediaConfig:k,data:{sequenceNumber:this.frameIndex,
baseMediaDecodeTime:Math.floor(f*h/1E3),samples:l},stream:b}]);return Promise.resolve(this.packageSegment(d,b,c))};goog.exportSymbol("shaka.transmuxer.Ec3Transmuxer",shaka.transmuxer.Ec3Transmuxer);goog.exportProperty(shaka.transmuxer.Ec3Transmuxer.prototype,"transmux",shaka.transmuxer.Ec3Transmuxer.prototype.transmux);goog.exportProperty(shaka.transmuxer.Ec3Transmuxer.prototype,"convertCodecs",shaka.transmuxer.Ec3Transmuxer.prototype.convertCodecs);
goog.exportProperty(shaka.transmuxer.Ec3Transmuxer.prototype,"isSupported",shaka.transmuxer.Ec3Transmuxer.prototype.isSupported);shaka.transmuxer.TransmuxerEngine.registerTransmuxer("audio/ec3",function(){return new shaka.transmuxer.Ec3Transmuxer("audio/ec3")},shaka.transmuxer.TransmuxerEngine.PluginPriority.FALLBACK);shaka.transmuxer.H264=function(){};
shaka.transmuxer.H264.parseInfo=function(a){var b=shaka.transmuxer.H264;if(!a.length)return null;var c=a.find(function(v){return v.type==b.NALU_TYPE_SPS_});a=a.find(function(v){return v.type==b.NALU_TYPE_PPS_});if(!c||!a)return null;var d=new shaka.util.ExpGolomb(c.data),e=d.readUnsignedByte();d.readUnsignedByte();d.readUnsignedByte();d.skipExpGolomb();if(b.PROFILES_WITH_OPTIONAL_SPS_DATA_.includes(e)&&(e=d.readUnsignedExpGolomb(),e===3&&d.skipBits(1),d.skipExpGolomb(),d.skipExpGolomb(),d.skipBits(1),
d.readBoolean())){e=e!==3?8:12;for(var f=0;f<e;f++)d.readBoolean()&&(f<6?d.skipScalingList(16):d.skipScalingList(64))}d.skipExpGolomb();e=d.readUnsignedExpGolomb();if(e===0)d.readUnsignedExpGolomb();else if(e===1)for(d.skipBits(1),d.skipExpGolomb(),d.skipExpGolomb(),e=d.readUnsignedExpGolomb(),f=0;f<e;f++)d.skipExpGolomb();d.skipExpGolomb();d.skipBits(1);var g=d.readUnsignedExpGolomb(),h=d.readUnsignedExpGolomb(),k=d.readBits(1);k===0&&d.skipBits(1);d.skipBits(1);var l=0,m=0,n=0,p=0;d.readBoolean()&&
(l=d.readUnsignedExpGolomb(),m=d.readUnsignedExpGolomb(),n=d.readUnsignedExpGolomb(),p=d.readUnsignedExpGolomb());f=e=1;if(d.readBoolean()&&d.readBoolean()){var q=d.readUnsignedByte(),t=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2],r=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1];q>0&&q<=16?(e=t[q-1],f=r[q-1]):q===255&&(e=d.readBits(16),f=d.readBits(16))}d=(2-k)*(h+1)*16-n*2-p*2;g=(g+1)*16-l*2-m*2;c=c.fullData;l=c.byteLength;a=a.fullData;m=a.byteLength;h=0;k=new Uint8Array(11+l+m);k[h++]=1;k[h++]=
c[1];k[h++]=c[2];k[h++]=c[3];k[h++]=255;k[h++]=225;k[h++]=l>>>8&255;k[h++]=l&255;k.set(c,h);h+=l;k[h++]=1;k[h++]=m>>>8&255;k[h++]=m&255;k.set(a,h);return{height:d,width:g,videoConfig:k,hSpacing:e,vSpacing:f}};
shaka.transmuxer.H264.getVideoSamples=function(a){for(var b=shaka.transmuxer.H264,c=[],d=null,e=!1,f=function(){if(d&&d.nalus.length&&d.frame){for(var v=d.nalus.length*4,u=(0,$jscomp.makeIterator)(d.nalus),z=u.next();!z.done;z=u.next())v+=z.value.fullData.byteLength;v=new Uint8Array(v);u=0;z=(0,$jscomp.makeIterator)(d.nalus);for(var A=z.next();!A.done;A=z.next()){A=A.value;var x=A.fullData.byteLength;v[u]=x>>24&255;v[u+1]=x>>16&255;v[u+2]=x>>8&255;v[u+3]=x&255;v.set(A.fullData,u+4);u+=4+x}d.data=
v;c.push(d)}},g=new Uint8Array(0),h=function(v){d={data:g,frame:!1,isKeyframe:!1,pts:v.pts,dts:v.dts,nalus:[]}},k=0;k<a.length;k++){var l=a[k],m=l.nalus,n=!1;d&&m.length&&!e&&(f(),h(l));m=(0,$jscomp.makeIterator)(l.nalus);for(var p=m.next();!p.done;p=m.next()){p=p.value;var q=!1;switch(p.type){case b.NALU_TYPE_NDR_:var t=!1;q=!0;var r=p.data;n&&r.length>4&&(r=(new shaka.util.ExpGolomb(r)).readSliceType(),r===2||r===4||r===7||r===9)&&(t=!0);t&&d&&d.frame&&!d.isKeyframe&&(f(),d=null);d||h(l);d.frame=
!0;d.isKeyframe=t;break;case b.NALU_TYPE_IDR_:q=!0;d&&d.frame&&!d.isKeyframe&&(f(),d=null);d||h(l);d.frame=!0;d.isKeyframe=!0;break;case b.NALU_TYPE_SEI_:q=!0;break;case b.NALU_TYPE_SPS_:n=q=!0;break;case b.NALU_TYPE_PPS_:q=!0;break;case b.NALU_TYPE_AUD_:e=q=!0;d&&d.frame&&(f(),d=null);d||h(l);break;case b.NALU_TYPE_FILLER_DATA_:q=!0;break;default:q=!1}d&&q&&d.nalus.push(p)}}f();return c};shaka.transmuxer.H264.isKeyframe=function(a){return a.some(function(b){return b.type===shaka.transmuxer.H264.NALU_TYPE_IDR_})};
shaka.transmuxer.H264.NALU_TYPE_NDR_=1;shaka.transmuxer.H264.NALU_TYPE_IDR_=5;shaka.transmuxer.H264.NALU_TYPE_SEI_=6;shaka.transmuxer.H264.NALU_TYPE_SPS_=7;shaka.transmuxer.H264.NALU_TYPE_PPS_=8;shaka.transmuxer.H264.NALU_TYPE_AUD_=9;shaka.transmuxer.H264.NALU_TYPE_FILLER_DATA_=12;shaka.transmuxer.H264.PROFILES_WITH_OPTIONAL_SPS_DATA_=[100,110,122,244,44,83,86,118,128,138,139,134];shaka.transmuxer.H265=function(){};
shaka.transmuxer.H265.parseInfo=function(a){var b=shaka.transmuxer.H265;if(!a.length)return null;var c=a.find(function(h){return h.type==b.NALU_TYPE_VPS_}),d=a.find(function(h){return h.type==b.NALU_TYPE_SPS_}),e=a.find(function(h){return h.type==b.NALU_TYPE_PPS_});if(!c||!d||!e)return null;var f=b.parseVPS_(c.fullData);a=b.parseSPS_(d.fullData);var g=b.parsePPS_(e.fullData);c=b.getVideoConfiguration_(c.fullData,d.fullData,e.fullData,{numTemporalLayers:f.numTemporalLayers,temporalIdNested:f.temporalIdNested,
generalProfileSpace:a.generalProfileSpace,generalTierFlag:a.generalTierFlag,generalLevelIdc:a.generalLevelIdc,generalProfileIdc:a.generalProfileIdc,generalProfileCompatibilityFlags1:a.generalProfileCompatibilityFlags1,generalProfileCompatibilityFlags2:a.generalProfileCompatibilityFlags2,generalProfileCompatibilityFlags3:a.generalProfileCompatibilityFlags3,generalProfileCompatibilityFlags4:a.generalProfileCompatibilityFlags4,generalConstraintIndicatorFlags1:a.generalConstraintIndicatorFlags1,generalConstraintIndicatorFlags2:a.generalConstraintIndicatorFlags2,
generalConstraintIndicatorFlags3:a.generalConstraintIndicatorFlags3,generalConstraintIndicatorFlags4:a.generalConstraintIndicatorFlags4,generalConstraintIndicatorFlags5:a.generalConstraintIndicatorFlags5,generalConstraintIndicatorFlags6:a.generalConstraintIndicatorFlags6,minSpatialSegmentationIdc:a.minSpatialSegmentationIdc,chromaFormatIdc:a.chromaFormatIdc,bitDepthLumaMinus8:a.bitDepthLumaMinus8,bitDepthChromaMinus8:a.bitDepthChromaMinus8,parallelismType:g.parallelismType,frameRateFps:a.frameRateFps,
frameRateFixed:a.frameRateFixed});return{height:a.height,width:a.width,videoConfig:c,hSpacing:a.sarWidth,vSpacing:a.sarHeight}};shaka.transmuxer.H265.parseVPS_=function(a){var b=new shaka.util.ExpGolomb(a,!0);b.readUnsignedByte();b.readUnsignedByte();b.readBits(4);b.readBits(2);b.readBits(6);a=b.readBits(3);b=b.readBoolean();return{numTemporalLayers:a+1,temporalIdNested:b}};
shaka.transmuxer.H265.parseSPS_=function(a){a=new shaka.util.ExpGolomb(a,!0);a.readUnsignedByte();a.readUnsignedByte();var b=0,c=0,d=0,e=0;a.readBits(4);var f=a.readBits(3);a.readBoolean();for(var g=a.readBits(2),h=a.readBits(1),k=a.readBits(5),l=a.readUnsignedByte(),m=a.readUnsignedByte(),n=a.readUnsignedByte(),p=a.readUnsignedByte(),q=a.readUnsignedByte(),t=a.readUnsignedByte(),r=a.readUnsignedByte(),v=a.readUnsignedByte(),u=a.readUnsignedByte(),z=a.readUnsignedByte(),A=a.readUnsignedByte(),x=[],
E=[],y=0;y<f;y++)x.push(a.readBoolean()),E.push(a.readBoolean());if(f>0)for(y=f;y<8;y++)a.readBits(2);for(y=0;y<f;y++)x[y]&&a.readBits(88),E[y]&&a.readUnsignedByte();a.readUnsignedExpGolomb();x=a.readUnsignedExpGolomb();x==3&&a.readBits(1);E=a.readUnsignedExpGolomb();y=a.readUnsignedExpGolomb();a.readBoolean()&&(b+=a.readUnsignedExpGolomb(),c+=a.readUnsignedExpGolomb(),d+=a.readUnsignedExpGolomb(),e+=a.readUnsignedExpGolomb());var H=a.readUnsignedExpGolomb(),M=a.readUnsignedExpGolomb(),I=a.readUnsignedExpGolomb();
if(a.readBoolean())for(var w=0;w<=f;w++)a.readUnsignedExpGolomb(),a.readUnsignedExpGolomb(),a.readUnsignedExpGolomb();else a.readUnsignedExpGolomb(),a.readUnsignedExpGolomb(),a.readUnsignedExpGolomb();a.readUnsignedExpGolomb();a.readUnsignedExpGolomb();a.readUnsignedExpGolomb();a.readUnsignedExpGolomb();a.readUnsignedExpGolomb();a.readUnsignedExpGolomb();if(a.readBoolean()&&a.readBoolean())for(w=0;w<4;w++)for(var D=0;D<(w===3?2:6);D++)if(a.readBoolean()){var F=Math.min(64,1<<4+(w<<1));w>1&&a.readExpGolomb();
for(var C=0;C<F;C++)a.readExpGolomb()}else a.readUnsignedExpGolomb();a.readBoolean();a.readBoolean();a.readBoolean()&&(a.readUnsignedByte(),a.readUnsignedExpGolomb(),a.readUnsignedExpGolomb(),a.readBoolean());w=a.readUnsignedExpGolomb();for(F=D=0;F<w;F++)if(C=!1,F!==0&&(C=a.readBoolean()),C){F===w&&a.readUnsignedExpGolomb();a.readBoolean();a.readUnsignedExpGolomb();for(var G=C=0;G<=D;G++){var B=a.readBoolean(),K=!1;B||(K=a.readBoolean());(B||K)&&C++}D=C}else{G=a.readUnsignedExpGolomb();C=a.readUnsignedExpGolomb();
D=G+C;for(B=0;B<G;B++)a.readUnsignedExpGolomb(),a.readBoolean();for(G=0;G<C;G++)a.readUnsignedExpGolomb(),a.readBoolean()}if(a.readBoolean())for(w=a.readUnsignedExpGolomb(),D=0;D<w;D++){for(F=0;F<I+4;F++)a.readBits(1);a.readBits(1)}w=I=1;D=!0;F=1;G=C=0;a.readBoolean();a.readBoolean();if(a.readBoolean()){if(a.readBoolean()){B=a.readUnsignedByte();K=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2];var L=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1];B>0&&B<=16?(I=K[B-1],w=L[B-1]):B===255&&(I=a.readBits(16),
w=a.readBits(16))}a.readBoolean()&&a.readBoolean();a.readBoolean()&&(a.readBits(3),a.readBoolean(),a.readBoolean()&&(a.readUnsignedByte(),a.readUnsignedByte(),a.readUnsignedByte()));a.readBoolean()&&(a.readUnsignedExpGolomb(),a.readUnsignedExpGolomb());a.readBoolean();a.readBoolean();a.readBoolean();if(B=a.readBoolean())a.skipExpGolomb(),a.skipExpGolomb(),a.skipExpGolomb(),a.skipExpGolomb();if(a.readBoolean()&&(F=a.readBits(32),C=a.readBits(32),a.readBoolean()&&a.readUnsignedExpGolomb(),a.readBoolean())){L=
!1;B=a.readBoolean();K=a.readBoolean();if(B||K){if(L=a.readBoolean())a.readUnsignedByte(),a.readBits(5),a.readBoolean(),a.readBits(5);a.readBits(4);a.readBits(4);L&&a.readBits(4);a.readBits(5);a.readBits(5);a.readBits(5)}for(var O=0;O<=f;O++){D=a.readBoolean();var J=!0,N=1;D||(J=a.readBoolean());var P=!1;J?a.readUnsignedExpGolomb():P=a.readBoolean();P||(N=a.readUnsignedExpGolomb()+1);if(B){for(J=0;J<N;J++)a.readUnsignedExpGolomb(),a.readUnsignedExpGolomb(),L&&(a.readUnsignedExpGolomb(),a.readUnsignedExpGolomb());
a.readBoolean()}if(K){for(J=0;J<N;J++)a.readUnsignedExpGolomb(),a.readUnsignedExpGolomb(),L&&(a.readUnsignedExpGolomb(),a.readUnsignedExpGolomb());a.readBoolean()}}}a.readBoolean()&&(a.readBoolean(),a.readBoolean(),a.readBoolean(),G=a.readUnsignedExpGolomb(),a.readUnsignedExpGolomb(),a.readUnsignedExpGolomb(),a.readUnsignedExpGolomb(),a.readUnsignedExpGolomb())}return{generalLevelIdc:A,generalProfileSpace:g,generalTierFlag:h,generalProfileIdc:k,generalProfileCompatibilityFlags1:l,generalProfileCompatibilityFlags2:m,
generalProfileCompatibilityFlags3:n,generalProfileCompatibilityFlags4:p,generalConstraintIndicatorFlags1:q,generalConstraintIndicatorFlags2:t,generalConstraintIndicatorFlags3:r,generalConstraintIndicatorFlags4:v,generalConstraintIndicatorFlags5:u,generalConstraintIndicatorFlags6:z,minSpatialSegmentationIdc:G,chromaFormatIdc:x,bitDepthLumaMinus8:H,bitDepthChromaMinus8:M,width:E-(b+c)*(x===1||x===2?2:1),height:y-(d+e)*(x===1?2:1),sarWidth:I,sarHeight:w,frameRateFps:C/F,frameRateFixed:D}};
shaka.transmuxer.H265.parsePPS_=function(a){var b=new shaka.util.ExpGolomb(a,!0);b.readUnsignedByte();b.readUnsignedByte();b.readUnsignedExpGolomb();b.readUnsignedExpGolomb();b.readBoolean();b.readBoolean();b.readBits(3);b.readBoolean();b.readBoolean();b.readUnsignedExpGolomb();b.readUnsignedExpGolomb();b.readExpGolomb();b.readBoolean();b.readBoolean();b.readBoolean()&&b.readUnsignedExpGolomb();b.readExpGolomb();b.readExpGolomb();b.readBoolean();b.readBoolean();b.readBoolean();b.readBoolean();a=b.readBoolean();
b=b.readBoolean();var c=1;b&&a?c=0:b?c=3:a&&(c=2);return{parallelismType:c}};
shaka.transmuxer.H265.getVideoConfiguration_=function(a,b,c,d){var e=new Uint8Array(23+(5+a.byteLength)+(5+b.byteLength)+(5+c.byteLength));e[0]=1;e[1]=(d.generalProfileSpace&3)<<6|(d.generalTierFlag?1:0)<<5|d.generalProfileIdc&31;e[2]=d.generalProfileCompatibilityFlags1;e[3]=d.generalProfileCompatibilityFlags2;e[4]=d.generalProfileCompatibilityFlags3;e[5]=d.generalProfileCompatibilityFlags4;e[6]=d.generalConstraintIndicatorFlags1;e[7]=d.generalConstraintIndicatorFlags2;e[8]=d.generalConstraintIndicatorFlags3;
e[9]=d.generalConstraintIndicatorFlags4;e[10]=d.generalConstraintIndicatorFlags5;e[11]=d.generalConstraintIndicatorFlags6;e[12]=d.generalLevelIdc;e[13]=240|(d.minSpatialSegmentationIdc&3840)>>8;e[14]=d.minSpatialSegmentationIdc&255;e[15]=252|d.parallelismType&3;e[16]=252|d.chromaFormatIdc&3;e[17]=248|d.bitDepthLumaMinus8&7;e[18]=248|d.bitDepthChromaMinus8&7;e[19]=0;e[20]=parseInt(d.frameRateFps,10);e[21]=((d.frameRateFixed?1:0)&3)<<6|(d.numTemporalLayers&7)<<3|(d.temporalIdNested?1:0)<<2|3;e[22]=
3;a=[a,b,c];b=23;c=a.length-1;for(d=0;d<a.length;d+=1)e.set(new Uint8Array([32+d|(d===c?128:0),0,1,a[d].byteLength>>8,a[d].byteLength&255]),b),b+=5,e.set(a[d],b),b+=a[d].byteLength;return e};
shaka.transmuxer.H265.parseFrame=function(a,b){var c=shaka.transmuxer.H265,d=!1,e=[],f=0,g=!1;a=(0,$jscomp.makeIterator)(a);for(var h=a.next();!h.done;h=a.next()){h=h.value;switch(h.type){case c.NALU_TYPE_TRAIL_N_:case c.NALU_TYPE_TRAIL_R_:var k=g=!0;break;case c.NALU_TYPE_IDR_W_RADL_:case c.NALU_TYPE_IDR_N_LP_:case c.NALU_TYPE_CRA_NUT_:d=k=g=!0;break;case c.NALU_TYPE_VPS_:case c.NALU_TYPE_SPS_:case c.NALU_TYPE_PPS_:k=!0;break;case c.NALU_TYPE_AUD_:g=k=!0;break;case c.NALU_TYPE_SEI_PREFIX_:case c.NALU_TYPE_SEI_SUFFIX_:k=
!0;break;default:k=!1}g&&k&&(e.push(h.fullData),f+=h.fullData.byteLength)}if(!e.length)return!1;f+=4*e.length;c=new Uint8Array(f);f=0;e=(0,$jscomp.makeIterator)(e);for(g=e.next();!g.done;g=e.next())g=g.value,a=g.byteLength,c[f]=a>>24&255,c[f+1]=a>>16&255,c[f+2]=a>>8&255,c[f+3]=a&255,c.set(g,f+4),f+=a+4;b.data=c;b.isKeyframe=d;return!0};shaka.transmuxer.H265.NALU_TYPE_TRAIL_N_=1;shaka.transmuxer.H265.NALU_TYPE_TRAIL_R_=0;shaka.transmuxer.H265.NALU_TYPE_IDR_W_RADL_=19;
shaka.transmuxer.H265.NALU_TYPE_IDR_N_LP_=20;shaka.transmuxer.H265.NALU_TYPE_CRA_NUT_=21;shaka.transmuxer.H265.NALU_TYPE_VPS_=32;shaka.transmuxer.H265.NALU_TYPE_SPS_=33;shaka.transmuxer.H265.NALU_TYPE_PPS_=34;shaka.transmuxer.H265.NALU_TYPE_AUD_=35;shaka.transmuxer.H265.NALU_TYPE_SEI_PREFIX_=39;shaka.transmuxer.H265.NALU_TYPE_SEI_SUFFIX_=40;shaka.transmuxer.Opus=function(){};
shaka.transmuxer.Opus.getAudioConfig=function(a){var b=[];switch(a.channelConfigCode){case 1:case 2:b=[0];break;case 0:b=[255,1,1,0,1];break;case 128:b=[255,2,0,0,1];break;case 3:b=[1,2,1,0,2,1];break;case 4:b=[1,2,2,0,1,2,3];break;case 5:b=[1,3,2,0,4,1,2,3];break;case 6:b=[1,4,2,0,4,1,2,3,5];break;case 7:b=[1,4,2,0,4,1,2,3,5,6];break;case 8:b=[1,5,3,0,6,1,2,3,4,5,7];break;case 130:b=[1,1,2,0,1];break;case 131:b=[1,1,3,0,1,2];break;case 132:b=[1,1,4,0,1,2,3];break;case 133:b=[1,1,5,0,1,2,3,4];break;
case 134:b=[1,1,6,0,1,2,3,4,5];break;case 135:b=[1,1,7,0,1,2,3,4,5,6];break;case 136:b=[1,1,8,0,1,2,3,4,5,6,7]}return new Uint8Array([0,a.channelCount,0,0,a.sampleRate>>>24&255,a.sampleRate>>>17&255,a.sampleRate>>>8&255,a.sampleRate>>>0&255,0,0].concat((0,$jscomp.arrayFromIterable)(b)))};
shaka.transmuxer.Opus.getPacketSampleCount=function(a){if(a.length<1)return shaka.transmuxer.Opus.OPUS_AUDIO_SAMPLE_PER_FRAME;var b=a[0],c=b&3;b=shaka.transmuxer.Opus.SAMPLES_PER_FRAME_BY_CONFIG_[b>>3&31];if(c===0)a=1;else if(c===1||c===2)a=2;else{if(a.length<2)return b;a=a[1]&63;if(a===0)return b}return b*a};shaka.transmuxer.Opus.SAMPLES_PER_FRAME_BY_CONFIG_=[480,960,1920,2880,480,960,1920,2880,480,960,1920,2880,480,960,480,960,120,240,480,960,120,240,480,960,120,240,480,960,120,240,480,960];
shaka.transmuxer.Opus.OPUS_AUDIO_SAMPLE_PER_FRAME=960;shaka.transmuxer.LocTransmuxer=function(a){shaka.transmuxer.BaseTransmuxer.call(this,a);this.hvcInfo_=this.avcInfo_=null};$jscomp.inherits(shaka.transmuxer.LocTransmuxer,shaka.transmuxer.BaseTransmuxer);shaka.transmuxer.LocTransmuxer.prototype.destroy=function(){shaka.transmuxer.BaseTransmuxer.prototype.destroy.call(this);this.hvcInfo_=this.avcInfo_=null};
shaka.transmuxer.LocTransmuxer.prototype.isSupported=function(a,b){var c=shaka.media.Capabilities;if(!this.isLocContainer_(a))return!1;var d=shaka.util.ManifestParserUtils.ContentType,e=shaka.util.MimeUtils,f=a;b&&(f=this.convertCodecs(b,a));f=e.getCodecs(f);f=e.splitCodecs(f);var g=shaka.util.ManifestParserUtils.guessCodecsSafe(d.AUDIO,f),h=shaka.util.ManifestParserUtils.guessCodecsSafe(d.VIDEO,f);f=shaka.transmuxer.LocTransmuxer;if(g&&(g=e.getNormalizedCodec(g),!f.SUPPORTED_AUDIO_CODECS_.includes(g))||
h&&(e=e.getNormalizedCodec(h),!f.SUPPORTED_VIDEO_CODECS_.includes(e)))return!1;if(b)return c.isTypeSupported(this.convertCodecs(b,a));b=this.convertCodecs(d.AUDIO,a);a=this.convertCodecs(d.VIDEO,a);return c.isTypeSupported(b)||c.isTypeSupported(a)};shaka.transmuxer.LocTransmuxer.prototype.isLocContainer_=function(a){return a.toLowerCase().split(";")[0]=="moq/loc"};
shaka.transmuxer.LocTransmuxer.prototype.convertCodecs=function(a,b){if(this.isLocContainer_(b)){var c=shaka.util.ManifestParserUtils.ContentType,d=shaka.util.MimeUtils;b=d.getCodecs(b).split(",").map(function(e){return d.getCorrectAudioCodecs(e,"audio/mp4")}).map(d.getCorrectVideoCodecs).join(",");return a==c.AUDIO?'audio/mp4; codecs="'+b+'"':'video/mp4; codecs="'+b+'"'}return b};
shaka.transmuxer.LocTransmuxer.prototype.transmux=function(a,b,c,d,e){var f=shaka.util.ManifestParserUtils.ContentType,g=shaka.util.MimeUtils;a=shaka.util.BufferUtils.toUint8(a);var h=[];try{var k=g.getNormalizedCodec(b.codecs);if(e==f.VIDEO){switch(k){case "avc":var l=this.getAvcStreamInfo_(a,b,c,d);break;case "hevc":l=this.getHvcStreamInfo_(a,b,d,c)}l&&h.push(l)}if(e==f.AUDIO){switch(k){case "aac":l=this.getAacStreamInfo_(a,b,d,c);break;case "opus":l=this.getOpusStreamInfo_(a,b,d,c)}l&&h.push(l)}}catch(m){return Promise.reject(m)}if(!h.length)return Promise.resolve({data:new Uint8Array([]),
init:null});d=new shaka.util.Mp4Generator(h);return Promise.resolve(this.packageSegment(d,b,c))};
shaka.transmuxer.LocTransmuxer.prototype.extractNalus_=function(a,b){for(var c=[],d=(b=b==="hvc")?2:1,e=0;e+4<=a.byteLength;){var f=(a[e]<<24|a[e+1]<<16|a[e+2]<<8|a[e+3])>>>0;e+=4;if(f===1){f=a.byteLength;for(var g=e;g+2<a.byteLength;g++)if(a[g]===0&&a[g+1]===0){if(a[g+2]===1){f=g;break}if(g+3<a.byteLength&&a[g+2]===0&&a[g+3]===1){f=g;break}}}else if(f=e+f,f>a.byteLength)break;if(f<=e)break;e=a.subarray(e,f);g=b?(e[0]&126)>>1:e[0]&31;var h=e.length>d?e.subarray(d):new Uint8Array([]);c.push({type:g,
data:h,fullData:e});e=f}return c};
shaka.transmuxer.LocTransmuxer.prototype.getAvcStreamInfo_=function(a,b,c,d){var e=shaka.transmuxer.H264,f=shaka.transmuxer.LocTransmuxer.VIDEO_TIMESCALE_,g=this.extractNalus_(a,"avc"),h=e.parseInfo(g);h&&(this.avcInfo_=h,b.height=h.height,b.width=h.width);if(!this.avcInfo_)return null;e=e.isKeyframe(g);return{id:b.id,type:shaka.util.ManifestParserUtils.ContentType.VIDEO,codecs:"avc1",timescale:f,duration:d,mediaConfig:this.avcInfo_.videoConfig,hSpacing:this.avcInfo_.hSpacing,vSpacing:this.avcInfo_.vSpacing,
data:{sequenceNumber:this.frameIndex,baseMediaDecodeTime:Math.floor(c.startTime*f),samples:[{data:a,size:a.byteLength,duration:Math.floor((c.endTime-c.startTime)*f),cts:0,flags:e?shaka.transmuxer.TransmuxerUtils.VIDEO_KEYFRAME_FLAGS:shaka.transmuxer.TransmuxerUtils.VIDEO_NON_KEYFRAME_FLAGS}]},stream:b}};
shaka.transmuxer.LocTransmuxer.prototype.getHvcStreamInfo_=function(a,b,c,d){var e=shaka.transmuxer.H265,f=shaka.transmuxer.LocTransmuxer.VIDEO_TIMESCALE_;a=this.extractNalus_(a,"hvc");var g=e.parseInfo(a);g&&(this.hvcInfo_=g,b.height=g.height,b.width=g.width);if(!this.hvcInfo_)return null;g=Math.floor(d.startTime*f);d=Math.floor((d.endTime-d.startTime)*f);var h={data:new Uint8Array(0),isKeyframe:!1};return e.parseFrame(a,h)?{id:b.id,type:shaka.util.ManifestParserUtils.ContentType.VIDEO,codecs:"hvc1",
timescale:f,duration:c,mediaConfig:this.hvcInfo_.videoConfig,hSpacing:this.hvcInfo_.hSpacing,vSpacing:this.hvcInfo_.vSpacing,data:{sequenceNumber:this.frameIndex,baseMediaDecodeTime:g,samples:[{data:h.data,size:h.data.byteLength,duration:d,cts:0,flags:h.isKeyframe?shaka.transmuxer.TransmuxerUtils.VIDEO_KEYFRAME_FLAGS:shaka.transmuxer.TransmuxerUtils.VIDEO_NON_KEYFRAME_FLAGS}]},stream:b}:null};
shaka.transmuxer.LocTransmuxer.prototype.getAacStreamInfo_=function(a,b,c,d){goog.asserts.assert(b.audioSamplingRate,"Must have audioSamplingRate");var e=b.audioSamplingRate;d=Math.floor(d.startTime*e);a=[{data:a,size:a.length,duration:1024,cts:0,flags:shaka.transmuxer.TransmuxerUtils.AUDIO_SAMPLE_FLAGS}];return{id:b.id,type:shaka.util.ManifestParserUtils.ContentType.AUDIO,codecs:b.codecs,timescale:e,duration:c,mediaConfig:new Uint8Array([]),data:{sequenceNumber:this.frameIndex,baseMediaDecodeTime:d,
samples:a},stream:b}};
shaka.transmuxer.LocTransmuxer.prototype.getOpusStreamInfo_=function(a,b,c,d){goog.asserts.assert(b.audioSamplingRate,"Must have audioSamplingRate");var e=b.audioSamplingRate;d=Math.floor(d.startTime*e);a=[{data:a,size:a.length,duration:shaka.transmuxer.Opus.getPacketSampleCount(a),cts:0,flags:shaka.transmuxer.TransmuxerUtils.AUDIO_SAMPLE_FLAGS}];var f=new Uint8Array([0,b.channelsCount,0,0,b.audioSamplingRate>>>24&255,b.audioSamplingRate>>>17&255,b.audioSamplingRate>>>8&255,b.audioSamplingRate>>>
0&255,0,0,0]);return{id:b.id,type:shaka.util.ManifestParserUtils.ContentType.AUDIO,codecs:b.codecs,timescale:e,duration:c,mediaConfig:f,data:{sequenceNumber:this.frameIndex,baseMediaDecodeTime:d,samples:a},stream:b}};goog.exportSymbol("shaka.transmuxer.LocTransmuxer",shaka.transmuxer.LocTransmuxer);goog.exportProperty(shaka.transmuxer.LocTransmuxer.prototype,"transmux",shaka.transmuxer.LocTransmuxer.prototype.transmux);goog.exportProperty(shaka.transmuxer.LocTransmuxer.prototype,"convertCodecs",shaka.transmuxer.LocTransmuxer.prototype.convertCodecs);
goog.exportProperty(shaka.transmuxer.LocTransmuxer.prototype,"isSupported",shaka.transmuxer.LocTransmuxer.prototype.isSupported);goog.exportProperty(shaka.transmuxer.LocTransmuxer.prototype,"destroy",shaka.transmuxer.LocTransmuxer.prototype.destroy);shaka.transmuxer.LocTransmuxer.VIDEO_TIMESCALE_=9E4;shaka.transmuxer.LocTransmuxer.SUPPORTED_AUDIO_CODECS_=["aac","opus"];shaka.transmuxer.LocTransmuxer.SUPPORTED_VIDEO_CODECS_=["avc","hevc"];
shaka.transmuxer.TransmuxerEngine.registerTransmuxer("moq/loc",function(){return new shaka.transmuxer.LocTransmuxer("moq/loc")},shaka.transmuxer.TransmuxerEngine.PluginPriority.FALLBACK);shaka.transmuxer.MpegAudio=function(){};
shaka.transmuxer.MpegAudio.parseHeader=function(a,b){var c=shaka.transmuxer.MpegAudio,d=a[b+1]>>3&3,e=a[b+1]>>1&3,f=a[b+2]>>4&15,g=a[b+2]>>2&3;if(d!==1&&f!==0&&f!==15&&g!==3){var h=a[b+3]>>6;f=c.BITRATES_MAP_[(d===3?3-e:e===3?3:4)*14+f-1]*1E3;g=c.SAMPLING_RATE_MAP_[(d===3?0:d===2?1:2)*3+g];var k=h===3?1:2;d=c.SAMPLES_COEFFICIENTS_[d][e];var l=c.BYTES_IN_SLOT_[e];c=d*8*l;d=Math.floor(d*f/g+(a[b+2]>>1&1))*l;(l=(l=(navigator.userAgent||"").match(/Chrome\/(\d+)/i))?parseInt(l[1],10):0)&&l<=87&&e===2&&
f>=224E3&&h===0&&(a[b+3]|=128);return{sampleRate:g,channelCount:k,frameLength:d,samplesPerFrame:c}}return null};shaka.transmuxer.MpegAudio.isHeaderPattern=function(a,b){return a[b]===255&&(a[b+1]&224)===224&&(a[b+1]&6)!==0};shaka.transmuxer.MpegAudio.isHeader=function(a,b){return b+1<a.length&&shaka.transmuxer.MpegAudio.isHeaderPattern(a,b)};
shaka.transmuxer.MpegAudio.probe=function(a,b){var c=shaka.transmuxer.MpegAudio;if(b+1<a.length&&c.isHeaderPattern(a,b)){var d=c.parseHeader(a,b),e=4;d&&d.frameLength&&(e=d.frameLength);b+=e;return b===a.length||c.isHeader(a,b)}return!1};
shaka.transmuxer.MpegAudio.BITRATES_MAP_=[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];shaka.transmuxer.MpegAudio.SAMPLING_RATE_MAP_=[44100,48E3,32E3,22050,24E3,16E3,11025,12E3,8E3];shaka.transmuxer.MpegAudio.SAMPLES_COEFFICIENTS_=[[0,72,144,12],[0,0,0,0],[0,72,144,12],[0,144,144,12]];
shaka.transmuxer.MpegAudio.BYTES_IN_SLOT_=[0,1,1,4];shaka.transmuxer.MpegAudio.MPEG_AUDIO_SAMPLE_PER_FRAME=1152;shaka.transmuxer.Mp3Transmuxer=function(){shaka.transmuxer.BaseTransmuxer.apply(this,arguments)};$jscomp.inherits(shaka.transmuxer.Mp3Transmuxer,shaka.transmuxer.BaseTransmuxer);shaka.transmuxer.Mp3Transmuxer.prototype.isSupported=function(a,b){b=shaka.media.Capabilities;return this.isMpegContainer_(a)?b.isTypeSupported(this.convertCodecs(shaka.util.ManifestParserUtils.ContentType.AUDIO,a)):!1};
shaka.transmuxer.Mp3Transmuxer.prototype.isMpegContainer_=function(a){return a.toLowerCase().split(";")[0]=="audio/mpeg"};shaka.transmuxer.Mp3Transmuxer.prototype.convertCodecs=function(a,b){return this.isMpegContainer_(b)?'audio/mp4; codecs="mp3"':b};
shaka.transmuxer.Mp3Transmuxer.prototype.transmux=function(a,b,c,d){for(var e=shaka.transmuxer.MpegAudio,f=shaka.util.BufferUtils.toUint8(a),g=shaka.metadata.Id3Utils.getID3Data(f).length;g<f.length&&!e.probe(f,g);g++);var h;for(a=[];g<f.length;){var k=e.parseHeader(f,g);if(!k)return Promise.reject(new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,c?c.getUris()[0]:null));h||(h=k);g+k.frameLength<=f.length&&a.push({data:f.subarray(g,
g+k.frameLength),size:k.frameLength,duration:e.MPEG_AUDIO_SAMPLE_PER_FRAME,cts:0,flags:shaka.transmuxer.TransmuxerUtils.AUDIO_SAMPLE_FLAGS});g+=k.frameLength}if(!h)return Promise.reject(new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,c?c.getUris()[0]:null));e=h.samplesPerFrame*9E4/h.sampleRate*this.frameIndex;d={id:b.id,type:shaka.util.ManifestParserUtils.ContentType.AUDIO,codecs:"mp3",timescale:h.sampleRate,duration:d,
mediaConfig:new Uint8Array([]),data:{sequenceNumber:this.frameIndex,baseMediaDecodeTime:e,samples:a},stream:b};d=new shaka.util.Mp4Generator([d]);return Promise.resolve(this.packageSegment(d,b,c))};goog.exportSymbol("shaka.transmuxer.Mp3Transmuxer",shaka.transmuxer.Mp3Transmuxer);goog.exportProperty(shaka.transmuxer.Mp3Transmuxer.prototype,"transmux",shaka.transmuxer.Mp3Transmuxer.prototype.transmux);goog.exportProperty(shaka.transmuxer.Mp3Transmuxer.prototype,"convertCodecs",shaka.transmuxer.Mp3Transmuxer.prototype.convertCodecs);
goog.exportProperty(shaka.transmuxer.Mp3Transmuxer.prototype,"isSupported",shaka.transmuxer.Mp3Transmuxer.prototype.isSupported);shaka.transmuxer.TransmuxerEngine.registerTransmuxer("audio/mpeg",function(){return new shaka.transmuxer.Mp3Transmuxer("audio/mpeg")},shaka.transmuxer.TransmuxerEngine.PluginPriority.FALLBACK);shaka.util.TsParser=function(){this.pmtId_=null;this.pmtParsed_=!1;this.videoCodec_=this.videoPid_=null;this.videoData_=[];this.videoDataPesIndices_=[];this.videoPes_=[];this.audioCodec_=this.audioPid_=null;this.audioData_=[];this.audioDataPesIndices_=[];this.audioPes_=[];this.id3Pid_=null;this.id3Data_=[];this.id3DataPesIndices_=[];this.discontinuitySequence_=this.opusMetadata_=this.referencePts_=null};
shaka.util.TsParser.prototype.clearData=function(){this.videoData_=[];this.videoDataPesIndices_=[];this.videoPes_=[];this.audioData_=[];this.audioDataPesIndices_=[];this.audioPes_=[];this.id3Data_=[];this.id3DataPesIndices_=[]};shaka.util.TsParser.prototype.setDiscontinuitySequence=function(a){this.discontinuitySequence_!=null&&this.discontinuitySequence_!=a&&(this.referencePts_=null);this.discontinuitySequence_=a};
shaka.util.TsParser.prototype.parse=function(a){var b=shaka.util.TsParser.PacketLength_;if(a.length<3*b)return this;for(var c=Math.max(0,shaka.util.TsParser.syncOffset(a)),d=a.length-(a.length+c)%b,e=!1,f=c;f<d;f+=b)if(a[f]==71){var g=!!(a[f+1]&64),h=((a[f+1]&31)<<8)+a[f+2];if((a[f+3]&48)>>4>1){var k=f+5+a[f+4];if(k==f+b)continue}else k=f+4;switch(h){case 0:g&&(k+=a[k]+1);this.pmtId_=this.getPmtId_(a,k);break;case 17:case 8191:break;case this.pmtId_:g&&(k+=a[k]+1);g=this.parsePMT_(a,k);g.video!=-1&&
(this.videoPid_=g.video,this.videoCodec_=g.videoCodec);g.audio!=-1&&(this.audioPid_=g.audio,this.audioCodec_=g.audioCodec);g.id3!=-1&&(this.id3Pid_=g.id3);e&&!this.pmtParsed_&&(shaka.log.debug("reparse from beginning"),e=!1,f=c-b);this.pmtParsed_=!0;break;case this.videoPid_:h=a.subarray(k,f+b);g?(this.videoDataPesIndices_.push(this.videoData_.length),this.videoData_.push(h)):this.videoDataPesIndices_.length&&this.videoData_.push(h);break;case this.audioPid_:h=a.subarray(k,f+b);g?(this.audioDataPesIndices_.push(this.audioData_.length),
this.audioData_.push(h)):this.audioDataPesIndices_.length&&this.audioData_.push(h);break;case this.id3Pid_:h=a.subarray(k,f+b);g?(this.id3DataPesIndices_.push(this.id3Data_.length),this.id3Data_.push(h)):this.id3DataPesIndices_.length&&this.id3Data_.push(h);break;default:e=!0}}else shaka.log.warning("Found TS packet that do not start with 0x47");return this};shaka.util.TsParser.prototype.getPmtId_=function(a,b){return(a[b+10]&31)<<8|a[b+11]};
shaka.util.TsParser.prototype.parsePMT_=function(a,b){var c={audio:-1,video:-1,id3:-1,audioCodec:"",videoCodec:""},d=b+3+((a[b+1]&15)<<8|a[b+2])-4;for(b+=12+((a[b+10]&15)<<8|a[b+11]);b<d;){var e=(a[b+1]&31)<<8|a[b+2],f=(a[b+3]&15)<<8|a[b+4];switch(a[b]){case 6:if(f>0)for(var g=b+5,h=f;h>2;){var k=a[g+1]+2;switch(a[g]){case 5:var l=g+2;l=a[l]<<24|a[l+1]<<16|a[l+2]<<8|a[l+3];c.audio==-1&&l===1332770163?(c.audio=e,c.audioCodec="opus"):c.video==-1&&l===1096167473&&(c.video=e,c.videoCodec="av1");break;
case 106:c.audio==-1&&(c.audio=e,c.audioCodec="ac3");break;case 122:c.audio==-1&&(c.audio=e,c.audioCodec="ec3");break;case 124:c.audio==-1&&(c.audio=e,c.audioCodec="aac");break;case 127:c.audioCodec=="opus"&&(l=null,a[g+2]===128&&(l=a[g+3]),l!=null&&(this.opusMetadata_={channelCount:(l&15)===0?2:l&15,channelConfigCode:l,sampleRate:48E3}))}g+=k;h-=k}break;case 15:c.audio==-1&&(c.audio=e,c.audioCodec="aac");break;case 17:c.audio==-1&&(c.audio=e,c.audioCodec="aac-loas");break;case 21:c.id3==-1&&(c.id3=
e);break;case 27:c.video==-1&&(c.video=e,c.videoCodec="avc");break;case 3:case 4:c.audio==-1&&(c.audio=e,c.audioCodec="mp3");break;case 36:c.video==-1&&(c.video=e,c.videoCodec="hvc");break;case 129:c.audio==-1&&(c.audio=e,c.audioCodec="ac3");break;case 132:case 135:c.audio==-1&&(c.audio=e,c.audioCodec="ec3")}b+=f+5}return c};shaka.util.TsParser.prototype.concatPesPackets_=function(a,b,c){b=this.getPesPacketRange_(a,b,c);return this.concatPesPacketRange_(a,b)};
shaka.util.TsParser.prototype.concatPesPacketRange_=function(a,b){return shaka.util.Uint8ArrayUtils.concatRange(a,b.first,b.end)};shaka.util.TsParser.prototype.getPesPacketRange_=function(a,b,c){return{first:b[c],end:c+1<b.length?b[c+1]:a.length}};
shaka.util.TsParser.prototype.parsePESHeader_=function(a,b){if(a.byteLength<shaka.util.TsParser.MIN_PES_HEADER_LENGTH_||(a[0]<<16|a[1]<<8|a[2])!==1)return null;var c=a[4]<<8|a[5];if(c&&c>b-6)return null;var d=null,e=null,f=a[7];if(a.byteLength<this.getRequiredPesHeaderLength_(a))return null;if(f&192){d=(a[9]&14)*536870912+(a[10]&255)*4194304+(a[11]&254)*16384+(a[12]&255)*128+(a[13]&254)/2;var g=null;f&64&&(g=(a[14]&14)*536870912+(a[15]&255)*4194304+(a[16]&254)*16384+(a[17]&255)*128+(a[18]&254)/2,
d=this.handleRollover_(d,g));this.referencePts_==null&&(this.referencePts_=d);e=this.referencePts_=d=this.handleRollover_(d,this.referencePts_);g!=null&&(e=this.handleRollover_(g,d))}a=a[8]+9;return b<=a?null:{packetLength:c,payloadStartOffset:a,pts:d,dts:e}};shaka.util.TsParser.prototype.parsePES_=function(a){var b=this.parsePESHeader_(a,a.byteLength);return b?{data:a.subarray(b.payloadStartOffset),packetLength:b.packetLength,pts:b.pts,dts:b.dts,nalus:[]}:null};
shaka.util.TsParser.prototype.parseNalus=function(a,b){var c=shaka.util.TsParser.Timescale,d=a.pts?a.pts/c:null;a=a.data;var e=a.byteLength,f=1;this.videoCodec_=="hvc"&&(f=2);var g=b.state||0,h=g,k=0;c=[];var l=-1,m=0,n=this.videoCodec_==="hvc";g==-1&&(l=0,m=n?a[0]>>1&63:a[0]&31,g=0,k=1);for(;k<e;){var p=a[k++];if(g)if(g===1)g=p?0:2;else if(p)if(p==1){p=k-g-1;if(l>=0)g={data:a.subarray(l+f,p),fullData:a.subarray(l,p),type:m,time:d,state:null},c.push(g);else if(g=c.length?c[c.length-1]:b.nalu)h&&k<=
4-h&&g.state&&(g.data=g.data.subarray(0,g.data.byteLength-h),g.fullData=g.fullData.subarray(0,g.fullData.byteLength-h)),p>0&&(p=a.subarray(0,p),g.data=shaka.util.Uint8ArrayUtils.concat(g.data,p),g.fullData=shaka.util.Uint8ArrayUtils.concat(g.fullData,p),g.state=0);k<e?(m=n?a[k]>>1&63:a[k]&31,l=k,g=0):g=-1}else g=0;else g=3;else g=p?0:1}l>=0&&g>=0&&(d={data:a.subarray(l+f,e),fullData:a.subarray(l,e),type:m,time:d,state:g},c.push(d));!c.length&&b.nalu&&(d=c.length?c[c.length-1]:b.nalu)&&(d.data=shaka.util.Uint8ArrayUtils.concat(d.data,
a),d.fullData=shaka.util.Uint8ArrayUtils.concat(d.fullData,a));b.state=g;return c};shaka.util.TsParser.prototype.getMetadata=function(){for(var a=shaka.util.TsParser.Timescale,b=[],c=0;c<this.id3DataPesIndices_.length;c++){var d=this.concatPesPackets_(this.id3Data_,this.id3DataPesIndices_,c);(d=this.parsePES_(d))&&b.push({cueTime:d.pts?d.pts/a:null,data:d.data,frames:shaka.metadata.Id3Utils.getID3Frames(d.data),dts:d.dts,pts:d.pts})}return b};
shaka.util.TsParser.prototype.getAudioData=function(){if(this.audioDataPesIndices_.length&&!this.audioPes_.length)for(var a=0;a<this.audioDataPesIndices_.length;a++){var b=this.concatPesPackets_(this.audioData_,this.audioDataPesIndices_,a),c=this.parsePES_(b),d=this.audioPes_.length?this.audioPes_[this.audioPes_.length-1]:null;c&&c.pts!=null&&c.dts!=null&&(!d||d.pts!=c.pts&&d.dts!=c.dts)?this.audioPes_.push(c):this.audioPes_.length&&(b=c?c.data:b)&&(d=this.audioPes_[this.audioPes_.length-1],d.data=
shaka.util.Uint8ArrayUtils.concat(d.data,b))}return this.audioPes_};
shaka.util.TsParser.prototype.getVideoData=function(a){a=a===void 0?!0:a;if(this.videoDataPesIndices_.length&&!this.videoPes_.length){for(var b=0;b<this.videoDataPesIndices_.length;b++){var c=this.concatPesPackets_(this.videoData_,this.videoDataPesIndices_,b),d=this.parsePES_(c),e=this.videoPes_.length?this.videoPes_[this.videoPes_.length-1]:null;d&&d.pts!=null&&d.dts!=null&&(!e||e.pts!=d.pts&&e.dts!=d.dts)?this.videoPes_.push(d):this.videoPes_.length&&(c=d?d.data:c)&&(e=this.videoPes_[this.videoPes_.length-
1],e.data=shaka.util.Uint8ArrayUtils.concat(e.data,c))}if(a){b={nalu:null,state:null};e=[];c=(0,$jscomp.makeIterator)(this.videoPes_);for(d=c.next();!d.done;d=c.next())d=d.value,d.nalus=this.parseNalus(d,b),d.nalus.length&&(e.push(d),b.nalu=d.nalus[d.nalus.length-1]);this.videoPes_=e}}return a?this.videoPes_:(a=this.videoPes_,this.videoPes_=[],a)};
shaka.util.TsParser.prototype.getStartTimeFromPesHeaders=function(a){if(a=="audio"){a=this.audioData_;var b=this.audioDataPesIndices_}else if(a=="video")a=this.videoData_,b=this.videoDataPesIndices_;else return null;for(var c=0;c<b.length;c++){var d=this.getPesPacketRange_(a,b,c),e=a[d.first];if(e){for(var f=0,g=d.first;g<d.end;g++)f+=a[g].byteLength;d=e.byteLength>=shaka.util.TsParser.MIN_PES_HEADER_LENGTH_&&e.byteLength>=this.getRequiredPesHeaderLength_(e)?e:this.concatPesPacketRange_(a,d);if(f=
this.parsePESHeader_(d,f))if(f=this.getStartTimeFromPes_(f),f!=null)return f}}return null};shaka.util.TsParser.prototype.getRequiredPesHeaderLength_=function(a){a=a[7];return a&64?shaka.util.TsParser.PES_HEADER_WITH_DTS_LENGTH_:a&192?shaka.util.TsParser.PES_HEADER_WITH_PTS_LENGTH_:shaka.util.TsParser.MIN_PES_HEADER_LENGTH_};shaka.util.TsParser.prototype.getStartTimeFromPes_=function(a){return a.pts==null||a.dts==null?null:Math.min(a.dts,a.pts)/shaka.util.TsParser.Timescale};
shaka.util.TsParser.prototype.getStartTime=function(a){if(a=="audio")a=this.getAudioData();else if(a=="video")a=this.getVideoData(!1);else return null;return a.length?this.getStartTimeFromPes_(a[0]):null};shaka.util.TsParser.prototype.getCodecs=function(){return{audio:this.audioCodec_,video:this.videoCodec_}};
shaka.util.TsParser.prototype.getVideoNalus=function(){for(var a=[],b=(0,$jscomp.makeIterator)(this.getVideoData()),c=b.next();!c.done;c=b.next())a.push.apply(a,(0,$jscomp.arrayFromIterable)(c.value.nalus));return a};shaka.util.TsParser.prototype.getVideoInfo=function(){return this.videoCodec_=="hvc"?this.getHvcInfo_():this.getAvcInfo_()};
shaka.util.TsParser.prototype.getFrameRate_=function(){var a=shaka.util.TsParser.Timescale,b=this.getVideoData();if(b.length>1){var c=b[0].pts;goog.asserts.assert(typeof c=="number","Should be an number!");b=b[1].pts;goog.asserts.assert(typeof b=="number","Should be an number!");if(!isNaN(b-c))return Math.abs(1/(b-c)*a)}return null};
shaka.util.TsParser.prototype.getAvcInfo_=function(){var a=shaka.util.TsParser,b={height:null,width:null,codec:null,frameRate:null},c=this.getVideoNalus();if(!c.length)return b;c=c.find(function(q){return q.type==a.H264_NALU_TYPE_SPS_});if(!c)return b;c=new shaka.util.ExpGolomb(c.data);var d=c.readUnsignedByte(),e=c.readUnsignedByte(),f=c.readUnsignedByte();c.skipExpGolomb();if(a.PROFILES_WITH_OPTIONAL_SPS_DATA_.includes(d)){var g=c.readUnsignedExpGolomb();g===3&&c.skipBits(1);c.skipExpGolomb();c.skipExpGolomb();
c.skipBits(1);if(c.readBoolean()){g=g!==3?8:12;for(var h=0;h<g;h++)c.readBoolean()&&(h<6?c.skipScalingList(16):c.skipScalingList(64))}}c.skipExpGolomb();g=c.readUnsignedExpGolomb();if(g===0)c.readUnsignedExpGolomb();else if(g===1)for(c.skipBits(1),c.skipExpGolomb(),c.skipExpGolomb(),g=c.readUnsignedExpGolomb(),h=0;h<g;h++)c.skipExpGolomb();c.skipExpGolomb();c.skipBits(1);g=c.readUnsignedExpGolomb();h=c.readUnsignedExpGolomb();var k=c.readBits(1);k===0&&c.skipBits(1);c.skipBits(1);var l=0,m=0,n=0,
p=0;c.readBoolean()&&(l=c.readUnsignedExpGolomb(),m=c.readUnsignedExpGolomb(),n=c.readUnsignedExpGolomb(),p=c.readUnsignedExpGolomb());b.height=String((2-k)*(h+1)*16-n*2-p*2);b.width=String((g+1)*16-l*2-m*2);b.codec="avc1."+this.byteToHex_(d)+this.byteToHex_(e)+this.byteToHex_(f);b.frameRate=this.getFrameRate_();return b};
shaka.util.TsParser.prototype.getHvcInfo_=function(){var a=shaka.util.TsParser,b={height:null,width:null,codec:null,frameRate:null},c=this.getVideoNalus();if(!c.length)return b;c=c.find(function(E){return E.type==a.H265_NALU_TYPE_SPS_});if(!c)return b;var d=new shaka.util.ExpGolomb(c.fullData,!0);d.readUnsignedByte();d.readUnsignedByte();d.readBits(4);var e=d.readBits(3);d.readBoolean();var f=d.readBits(2),g=d.readBits(1),h=d.readBits(5),k=d.readBits(32);c=d.readUnsignedByte();for(var l=d.readUnsignedByte(),
m=d.readUnsignedByte(),n=d.readUnsignedByte(),p=d.readUnsignedByte(),q=d.readUnsignedByte(),t=d.readUnsignedByte(),r=[],v=[],u=0;u<e;u++)r.push(d.readBoolean()),v.push(d.readBoolean());if(e>0)for(u=e;u<8;u++)d.readBits(2);for(u=0;u<e;u++)r[u]&&d.readBits(88),v[u]&&d.readUnsignedByte();d.readUnsignedExpGolomb();e=d.readUnsignedExpGolomb();e==3&&d.readBits(1);r=d.readUnsignedExpGolomb();v=d.readUnsignedExpGolomb();var z=u=0,A=0,x=0;d.readBoolean()&&(u+=d.readUnsignedExpGolomb(),z+=d.readUnsignedExpGolomb(),
A+=d.readUnsignedExpGolomb(),x+=d.readUnsignedExpGolomb());b.width=String(r-(u+z)*(e===1||e===2?2:1));b.height=String(v-(A+x)*(e===1?2:1));d=["","A","B","C"][f];k=function(E){for(var y=0,H=0;H<32;H++)y|=(E>>H&1)<<31-H;return y>>>0}(k);g=g==1?"H":"L";h="hvc1"+("."+d+h)+("."+k.toString(16).toUpperCase());h+="."+g+t;q&&(h+="."+q.toString(16).toUpperCase());p&&(h+="."+p.toString(16).toUpperCase());n&&(h+="."+n.toString(16).toUpperCase());m&&(h+="."+m.toString(16).toUpperCase());l&&(h+="."+l.toString(16).toUpperCase());
c&&(h+="."+c.toString(16).toUpperCase());b.codec=h;b.frameRate=this.getFrameRate_();return b};shaka.util.TsParser.prototype.getOpusMetadata=function(){return this.opusMetadata_};shaka.util.TsParser.prototype.byteToHex_=function(a){return("0"+a.toString(16).toUpperCase()).slice(-2)};shaka.util.TsParser.prototype.handleRollover_=function(a,b){var c=1;for(a>b&&(c=-1);Math.abs(b-a)>4294967296;)a+=c*8589934592;return a};
shaka.util.TsParser.probe=function(a){a=shaka.util.TsParser.syncOffset(a);if(a<0)return!1;a>0&&shaka.log.warning("MPEG2-TS detected but first sync word found @ offset "+a+", junk ahead ?");return!0};shaka.util.TsParser.syncOffset=function(a){for(var b=shaka.util.TsParser.PacketLength_,c=Math.min(1E3,a.length-3*b),d=0;d<c;){if(a[d]==71&&a[d+b]==71&&a[d+2*b]==71)return d;var e=a.indexOf(71,d+1);d=e>=0&&e<c?e:d+1}return-1};goog.exportSymbol("shaka.util.TsParser",shaka.util.TsParser);
goog.exportProperty(shaka.util.TsParser,"syncOffset",shaka.util.TsParser.syncOffset);goog.exportProperty(shaka.util.TsParser,"probe",shaka.util.TsParser.probe);goog.exportProperty(shaka.util.TsParser.prototype,"getVideoInfo",shaka.util.TsParser.prototype.getVideoInfo);goog.exportProperty(shaka.util.TsParser.prototype,"getVideoNalus",shaka.util.TsParser.prototype.getVideoNalus);goog.exportProperty(shaka.util.TsParser.prototype,"getCodecs",shaka.util.TsParser.prototype.getCodecs);
goog.exportProperty(shaka.util.TsParser.prototype,"getStartTime",shaka.util.TsParser.prototype.getStartTime);goog.exportProperty(shaka.util.TsParser.prototype,"getVideoData",shaka.util.TsParser.prototype.getVideoData);goog.exportProperty(shaka.util.TsParser.prototype,"getAudioData",shaka.util.TsParser.prototype.getAudioData);goog.exportProperty(shaka.util.TsParser.prototype,"getMetadata",shaka.util.TsParser.prototype.getMetadata);goog.exportProperty(shaka.util.TsParser.prototype,"parseNalus",shaka.util.TsParser.prototype.parseNalus);
goog.exportProperty(shaka.util.TsParser.prototype,"parse",shaka.util.TsParser.prototype.parse);goog.exportProperty(shaka.util.TsParser.prototype,"setDiscontinuitySequence",shaka.util.TsParser.prototype.setDiscontinuitySequence);goog.exportProperty(shaka.util.TsParser.prototype,"clearData",shaka.util.TsParser.prototype.clearData);shaka.util.TsParser.Timescale=9E4;goog.exportProperty(shaka.util.TsParser,"Timescale",shaka.util.TsParser.Timescale);shaka.util.TsParser.PacketLength_=188;
shaka.util.TsParser.MIN_PES_HEADER_LENGTH_=9;shaka.util.TsParser.PES_HEADER_WITH_PTS_LENGTH_=14;shaka.util.TsParser.PES_HEADER_WITH_DTS_LENGTH_=19;shaka.util.TsParser.H264_NALU_TYPE_SPS_=7;shaka.util.TsParser.H265_NALU_TYPE_SPS_=33;shaka.util.TsParser.PROFILES_WITH_OPTIONAL_SPS_DATA_=[100,110,122,244,44,83,86,118,128,138,139,134];shaka.transmuxer.MpegTsTransmuxer=function(a){this.originalMimeType_=a;this.tsParser_=null};shaka.transmuxer.MpegTsTransmuxer.prototype.destroy=function(){};
shaka.transmuxer.MpegTsTransmuxer.prototype.isSupported=function(a,b){b=shaka.media.Capabilities;if(!this.isTsContainer_(a))return!1;var c=shaka.util.ManifestParserUtils.ContentType,d=shaka.util.MimeUtils,e=d.getCodecs(a),f=d.splitCodecs(e);e=shaka.util.ManifestParserUtils.guessCodecsSafe(c.AUDIO,f);f=shaka.util.ManifestParserUtils.guessCodecsSafe(c.VIDEO,f);return!e||f||d.getNormalizedCodec(e)!="mp3"?!1:b.isTypeSupported(this.convertCodecs(c.AUDIO,a))};
shaka.transmuxer.MpegTsTransmuxer.prototype.isTsContainer_=function(a){return a.toLowerCase().split(";")[0]=="video/mp2t"};shaka.transmuxer.MpegTsTransmuxer.prototype.convertCodecs=function(a,b){return this.isTsContainer_(b)?"audio/mpeg":b};shaka.transmuxer.MpegTsTransmuxer.prototype.getOriginalMimeType=function(){return this.originalMimeType_};
shaka.transmuxer.MpegTsTransmuxer.prototype.transmux=function(a,b,c,d,e){b=shaka.transmuxer.MpegAudio;var f=shaka.util.ManifestParserUtils.ContentType;d=shaka.util.Uint8ArrayUtils;this.tsParser_?this.tsParser_.clearData():this.tsParser_=new shaka.util.TsParser;this.tsParser_.setDiscontinuitySequence(c.discontinuitySequence);a=shaka.util.BufferUtils.toUint8(a);a=this.tsParser_.parse(a);if(a.getCodecs().audio!="mp3"||e!=f.AUDIO)return Promise.reject(new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,
shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,c?c.getUris()[0]:null));c=new Uint8Array([]);e=(0,$jscomp.makeIterator)(a.getAudioData());for(a=e.next();!a.done;a=e.next())if(a=a.value.data)for(f=0;f<a.length;){var g=b.parseHeader(a,f);g?(f+g.frameLength<=a.length&&(c=d.concat(c,a.subarray(f,f+g.frameLength))),f+=g.frameLength):f++}return Promise.resolve(c)};goog.exportSymbol("shaka.transmuxer.MpegTsTransmuxer",shaka.transmuxer.MpegTsTransmuxer);
goog.exportProperty(shaka.transmuxer.MpegTsTransmuxer.prototype,"transmux",shaka.transmuxer.MpegTsTransmuxer.prototype.transmux);goog.exportProperty(shaka.transmuxer.MpegTsTransmuxer.prototype,"getOriginalMimeType",shaka.transmuxer.MpegTsTransmuxer.prototype.getOriginalMimeType);goog.exportProperty(shaka.transmuxer.MpegTsTransmuxer.prototype,"convertCodecs",shaka.transmuxer.MpegTsTransmuxer.prototype.convertCodecs);goog.exportProperty(shaka.transmuxer.MpegTsTransmuxer.prototype,"isSupported",shaka.transmuxer.MpegTsTransmuxer.prototype.isSupported);
goog.exportProperty(shaka.transmuxer.MpegTsTransmuxer.prototype,"destroy",shaka.transmuxer.MpegTsTransmuxer.prototype.destroy);shaka.transmuxer.TransmuxerEngine.registerTransmuxer("video/mp2t",function(){return new shaka.transmuxer.MpegTsTransmuxer("video/mp2t")},shaka.transmuxer.TransmuxerEngine.PluginPriority.PREFERRED_SECONDARY);shaka.transmuxer.TsTransmuxer=function(a){shaka.transmuxer.BaseTransmuxer.call(this,a);this.aacTransmuxer_=this.tsParser_=null};$jscomp.inherits(shaka.transmuxer.TsTransmuxer,shaka.transmuxer.BaseTransmuxer);shaka.transmuxer.TsTransmuxer.prototype.destroy=function(){shaka.transmuxer.BaseTransmuxer.prototype.destroy.call(this);this.aacTransmuxer_&&this.aacTransmuxer_.destroy()};
shaka.transmuxer.TsTransmuxer.prototype.isSupported=function(a,b){var c=shaka.media.Capabilities;if(!this.isTsContainer_(a))return!1;var d=shaka.util.ManifestParserUtils.ContentType,e=shaka.util.MimeUtils,f=a;b&&(f=this.convertCodecs(b,a));f=e.getCodecs(f);f=e.splitCodecs(f);var g=shaka.util.ManifestParserUtils.guessCodecsSafe(d.AUDIO,f),h=shaka.util.ManifestParserUtils.guessCodecsSafe(d.VIDEO,f);f=shaka.transmuxer.TsTransmuxer;if(g&&(g=e.getNormalizedCodec(g),!f.SUPPORTED_AUDIO_CODECS_.includes(g))||
h&&(e=e.getNormalizedCodec(h),!f.SUPPORTED_VIDEO_CODECS_.includes(e)))return!1;if(b)return c.isTypeSupported(this.convertCodecs(b,a));b=this.convertCodecs(d.AUDIO,a);a=this.convertCodecs(d.VIDEO,a);return c.isTypeSupported(b)||c.isTypeSupported(a)};shaka.transmuxer.TsTransmuxer.prototype.isTsContainer_=function(a){return a.toLowerCase().split(";")[0]=="video/mp2t"};
shaka.transmuxer.TsTransmuxer.prototype.convertCodecs=function(a,b){if(this.isTsContainer_(b)){var c=shaka.util.ManifestParserUtils.ContentType,d=shaka.util.MimeUtils;b=d.getCodecs(b).replace("mp4a.40.34","mp3").split(",").map(function(e){return d.getCorrectAudioCodecs(e,"audio/mp4")}).map(d.getCorrectVideoCodecs).join(",");return a==c.AUDIO?'audio/mp4; codecs="'+b+'"':'video/mp4; codecs="'+b+'"'}return b};
shaka.transmuxer.TsTransmuxer.prototype.transmux=function(a,b,c,d,e){var f=shaka.util.ManifestParserUtils.ContentType,g=shaka.util.BufferUtils.toUint8(a);if(e==f.AUDIO&&!shaka.util.TsParser.probe(g)){f=shaka.metadata.Id3Utils.getID3Data(g);for(var h=f.length;h<g.length;h++)if(shaka.transmuxer.MpegAudio.probe(g,h))return Promise.reject(new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,c?c.getUris()[0]:null));for(h=f.length;h<
g.length;h++)if(shaka.transmuxer.ADTS.probe(g,h))return this.aacTransmuxer_||(this.aacTransmuxer_=new shaka.transmuxer.AacTransmuxer("audio/aac")),this.aacTransmuxer_.transmux(a,b,c,d,e);return Promise.reject(new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,c?c.getUris()[0]:null))}this.tsParser_?this.tsParser_.clearData():this.tsParser_=new shaka.util.TsParser;this.tsParser_.setDiscontinuitySequence(c.discontinuitySequence);
a=this.tsParser_.parse(g);g=[];h=a.getCodecs();try{var k=null;if(e==f.VIDEO){switch(h.video){case "avc":k=this.getAvcStreamInfo_(a,b,d,c);break;case "hvc":k=this.getHvcStreamInfo_(a,b,d,c)}k&&(g.push(k),k=null)}if(e==f.AUDIO){switch(h.audio){case "aac":k=this.getAacStreamInfo_(a,b,d,c);break;case "ac3":k=this.getAc3StreamInfo_(a,b,d,c);break;case "ec3":k=this.getEc3StreamInfo_(a,b,d,c);break;case "mp3":k=this.getMp3StreamInfo_(a,b,d,c);break;case "opus":k=this.getOpusStreamInfo_(a,b,d,c)}k&&g.push(k)}}catch(l){return l&&
l.code==shaka.util.Error.Code.TRANSMUXING_NO_VIDEO_DATA?Promise.resolve(new Uint8Array([])):Promise.reject(l)}if(!g.length)return Promise.reject(new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,c?c.getUris()[0]:null));d=new shaka.util.Mp4Generator(g);return Promise.resolve(this.packageSegment(d,b,c))};
shaka.transmuxer.TsTransmuxer.prototype.getAacStreamInfo_=function(a,b,c,d){var e=shaka.transmuxer.ADTS,f=shaka.util.TsParser.Timescale,g=shaka.util.Uint8ArrayUtils,h=[],k=null,l=null,m=null;a=(0,$jscomp.makeIterator)(a.getAudioData());for(var n=a.next();!n.done;n=a.next()){var p=n.value;if(n=p.data){var q=0;if(l==-1&&m)n=g.concat(m,p.data),l=null;else if(l!=null&&m){q=Math.max(0,l);var t=g.concat(m,n.subarray(0,q));h.push({data:t,size:t.byteLength,duration:e.AAC_SAMPLES_PER_FRAME,cts:0,flags:shaka.transmuxer.TransmuxerUtils.AUDIO_SAMPLE_FLAGS});
l=m=null}t=e.parseInfo(n,q);if(!t)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,d?d.getUris()[0]:null);b.audioSamplingRate=t.sampleRate;b.channelsCount=t.channelCount;k==null&&p.pts!==null&&(k=p.pts);for(;q<n.length;){p=e.parseHeader(n,q);if(!p){m=n.subarray(q,n.length);l=-1;break}var r=p.headerLength+p.frameLength;l=Math.max(0,q+r-n.length);if(l!=0)m=n.subarray(q+p.headerLength,q+r);else if(q+r<=n.length){var v=
n.subarray(q+p.headerLength,q+r);h.push({data:v,size:p.frameLength,duration:e.AAC_SAMPLES_PER_FRAME,cts:0,flags:shaka.transmuxer.TransmuxerUtils.AUDIO_SAMPLE_FLAGS})}q+=r}}}if(!t||k==null){k=d.startTime*f;t=shaka.util.MimeUtils.splitCodecs(b.codecs);g=shaka.util.ManifestParserUtils.guessCodecsSafe(shaka.util.ManifestParserUtils.ContentType.AUDIO,t);if(!g||!b.channelsCount||!b.audioSamplingRate)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,
d?d.getUris()[0]:null);t={sampleRate:b.audioSamplingRate,channelCount:b.channelsCount,codec:g};g=e.getSilentFrame(g,b.channelsCount);if(!g)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,d?d.getUris()[0]:null);d=k+(d.endTime-d.startTime)*f;for(l=k;l<d;)h.push({data:g,size:g.byteLength,duration:e.AAC_SAMPLES_PER_FRAME,cts:0,flags:shaka.transmuxer.TransmuxerUtils.AUDIO_SAMPLE_FLAGS}),l+=e.AAC_SAMPLES_PER_FRAME/t.sampleRate*
f}e=t.sampleRate;f=k/f*e;return{id:b.id,type:shaka.util.ManifestParserUtils.ContentType.AUDIO,codecs:t.codec,timescale:e,duration:c,mediaConfig:new Uint8Array([]),data:{sequenceNumber:this.frameIndex,baseMediaDecodeTime:f,samples:h},stream:b}};
shaka.transmuxer.TsTransmuxer.prototype.getAc3StreamInfo_=function(a,b,c,d){var e=shaka.transmuxer.Ac3,f=shaka.util.TsParser.Timescale,g=[],h=0,k=new Uint8Array([]),l=null,m={sampleRate:0,channelCount:0,audioConfig:new Uint8Array(0),frameLength:0};a=(0,$jscomp.makeIterator)(a.getAudioData());for(var n=a.next();!n.done;n=a.next()){var p=n.value;n=p.data;l==null&&p.pts!==null&&(l=p.pts);for(p=0;p<n.length;)if(e.parseFrame(n,p,m)){b.audioSamplingRate=m.sampleRate;b.channelsCount=m.channelCount;h=m.sampleRate;
k=m.audioConfig;var q=n.subarray(p,p+m.frameLength);g.push({data:q,size:m.frameLength,duration:e.AC3_SAMPLES_PER_FRAME,cts:0,flags:shaka.transmuxer.TransmuxerUtils.AUDIO_SAMPLE_FLAGS});p+=m.frameLength}else p++}if(h==0||k.byteLength==0||l==null)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,d?d.getUris()[0]:null);return{id:b.id,type:shaka.util.ManifestParserUtils.ContentType.AUDIO,codecs:"ac-3",timescale:h,duration:c,
mediaConfig:k,data:{sequenceNumber:this.frameIndex,baseMediaDecodeTime:l/f*h,samples:g},stream:b}};
shaka.transmuxer.TsTransmuxer.prototype.getEc3StreamInfo_=function(a,b,c,d){var e=shaka.transmuxer.Ec3,f=shaka.util.TsParser.Timescale,g=[],h=0,k=new Uint8Array([]),l=null,m={sampleRate:0,channelCount:0,audioConfig:new Uint8Array(0),frameLength:0};a=(0,$jscomp.makeIterator)(a.getAudioData());for(var n=a.next();!n.done;n=a.next()){var p=n.value;n=p.data;l==null&&p.pts!==null&&(l=p.pts);for(p=0;p<n.length;)if(e.parseFrame(n,p,m)){b.audioSamplingRate=m.sampleRate;b.channelsCount=m.channelCount;h=m.sampleRate;
k=m.audioConfig;var q=n.subarray(p,p+m.frameLength);g.push({data:q,size:m.frameLength,duration:e.EC3_SAMPLES_PER_FRAME,cts:0,flags:shaka.transmuxer.TransmuxerUtils.AUDIO_SAMPLE_FLAGS});p+=m.frameLength}else p++}if(h==0||k.byteLength==0||l==null)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,d?d.getUris()[0]:null);return{id:b.id,type:shaka.util.ManifestParserUtils.ContentType.AUDIO,codecs:"ec-3",timescale:h,duration:c,
mediaConfig:k,data:{sequenceNumber:this.frameIndex,baseMediaDecodeTime:l/f*h,samples:g},stream:b}};
shaka.transmuxer.TsTransmuxer.prototype.getMp3StreamInfo_=function(a,b,c,d){var e=shaka.transmuxer.MpegAudio,f=shaka.util.TsParser.Timescale,g=[],h,k=null;a=(0,$jscomp.makeIterator)(a.getAudioData());for(var l=a.next();!l.done;l=a.next()){var m=l.value;if(l=m.data)for(k==null&&m.pts!==null&&(k=m.pts),m=0;m<l.length;){var n=e.parseHeader(l,m);n?(h||(h=n),m+n.frameLength<=l.length&&g.push({data:l.subarray(m,m+n.frameLength),size:n.frameLength,duration:e.MPEG_AUDIO_SAMPLE_PER_FRAME,cts:0,flags:shaka.transmuxer.TransmuxerUtils.AUDIO_SAMPLE_FLAGS}),
m+=n.frameLength):m++}}if(!h||k==null)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,d?d.getUris()[0]:null);d=h.sampleRate;f=k/f*d;return{id:b.id,type:shaka.util.ManifestParserUtils.ContentType.AUDIO,codecs:"mp3",timescale:d,duration:c,mediaConfig:new Uint8Array([]),data:{sequenceNumber:this.frameIndex,baseMediaDecodeTime:f,samples:g},stream:b}};
shaka.transmuxer.TsTransmuxer.prototype.getOpusStreamInfo_=function(a,b,c,d){var e=shaka.transmuxer.Opus,f=shaka.util.TsParser.Timescale,g=[],h=null,k=a.getOpusMetadata();if(!k)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,d?d.getUris()[0]:null);var l=e.getAudioConfig(k),m=k.sampleRate;a=(0,$jscomp.makeIterator)(a.getAudioData());for(var n=a.next();!n.done;n=a.next()){var p=n.value;n=p.data;h==null&&p.pts!==null&&
(h=p.pts);for(var q=0;q<n.length;){p=(n[q+1]&16)!==0;var t=(n[q+1]&8)!==0;q+=2;for(var r=0;n[q]===255;)r+=255,q+=1;r+=n[q];q+=1;q+=p?2:0;q+=t?2:0;p=n.slice(q,q+r);g.push({data:p,size:p.byteLength,duration:e.getPacketSampleCount(p),cts:0,flags:shaka.transmuxer.TransmuxerUtils.AUDIO_SAMPLE_FLAGS});q+=r}}if(l.byteLength==0||h==null)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,d?d.getUris()[0]:null);b.audioSamplingRate=
k.sampleRate;b.channelsCount=k.channelCount;return{id:b.id,type:shaka.util.ManifestParserUtils.ContentType.AUDIO,codecs:"opus",timescale:m,duration:c,mediaConfig:l,data:{sequenceNumber:this.frameIndex,baseMediaDecodeTime:h/f*m,samples:g},stream:b}};
shaka.transmuxer.TsTransmuxer.prototype.getAvcStreamInfo_=function(a,b,c,d){var e=shaka.transmuxer.H264,f=shaka.util.TsParser.Timescale,g=[],h=null;a=a.getVideoData();var k=e.getVideoSamples(a);if(!k.length)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_NO_VIDEO_DATA,d?d.getUris()[0]:null);for(var l=0;l<k.length;l++){var m=k[l];h==null&&(h=m.dts);g.push({data:m.data,size:m.data.byteLength,duration:l+1<k.length?(k[l+1].dts||
0)-(m.dts||0):k.length>1?(m.dts||0)-(k[l-1].dts||0):(d.endTime-d.startTime)*f,cts:Math.round((m.pts||0)-(m.dts||0)),flags:m.isKeyframe?shaka.transmuxer.TransmuxerUtils.VIDEO_KEYFRAME_FLAGS:shaka.transmuxer.TransmuxerUtils.VIDEO_NON_KEYFRAME_FLAGS})}k=[];a=(0,$jscomp.makeIterator)(a);for(l=a.next();!l.done;l=a.next())k.push.apply(k,(0,$jscomp.arrayFromIterable)(l.value.nalus));e=e.parseInfo(k);if(!e||h==null)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,
shaka.util.Error.Code.TRANSMUXING_FAILED,d?d.getUris()[0]:null);b.height=b.height||e.height;b.width=b.width||e.width;return{id:b.id,type:shaka.util.ManifestParserUtils.ContentType.VIDEO,codecs:"avc1",timescale:f,duration:c,mediaConfig:e.videoConfig,hSpacing:e.hSpacing,vSpacing:e.vSpacing,data:{sequenceNumber:this.frameIndex,baseMediaDecodeTime:h,samples:g},stream:b}};
shaka.transmuxer.TsTransmuxer.prototype.getHvcStreamInfo_=function(a,b,c,d){var e=shaka.transmuxer.H265,f=shaka.util.TsParser.Timescale,g=[],h=null,k=[];a=a.getVideoData();var l={data:new Uint8Array(0),isKeyframe:!1};if(!a.length)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_NO_VIDEO_DATA,d?d.getUris()[0]:null);for(var m=0;m<a.length;m++){var n=a[m],p=n.nalus;k.push.apply(k,(0,$jscomp.arrayFromIterable)(p));e.parseFrame(p,
l)&&(h==null&&n.dts!=null&&(h=n.dts),g.push({data:l.data,size:l.data.byteLength,duration:m+1<a.length?(a[m+1].dts||0)-(n.dts||0):a.length>1?(n.dts||0)-(a[m-1].dts||0):(d.endTime-d.startTime)*f,cts:Math.round((n.pts||0)-(n.dts||0)),flags:l.isKeyframe?shaka.transmuxer.TransmuxerUtils.VIDEO_KEYFRAME_FLAGS:shaka.transmuxer.TransmuxerUtils.VIDEO_NON_KEYFRAME_FLAGS}))}e=e.parseInfo(k);if(!e||h==null)throw new shaka.util.Error(shaka.util.Error.Severity.CRITICAL,shaka.util.Error.Category.MEDIA,shaka.util.Error.Code.TRANSMUXING_FAILED,
d?d.getUris()[0]:null);b.height=b.height||e.height;b.width=b.width||e.width;return{id:b.id,type:shaka.util.ManifestParserUtils.ContentType.VIDEO,codecs:"hvc1",timescale:f,duration:c,mediaConfig:e.videoConfig,hSpacing:e.hSpacing,vSpacing:e.vSpacing,data:{sequenceNumber:this.frameIndex,baseMediaDecodeTime:h,samples:g},stream:b}};goog.exportSymbol("shaka.transmuxer.TsTransmuxer",shaka.transmuxer.TsTransmuxer);goog.exportProperty(shaka.transmuxer.TsTransmuxer.prototype,"transmux",shaka.transmuxer.TsTransmuxer.prototype.transmux);
goog.exportProperty(shaka.transmuxer.TsTransmuxer.prototype,"convertCodecs",shaka.transmuxer.TsTransmuxer.prototype.convertCodecs);goog.exportProperty(shaka.transmuxer.TsTransmuxer.prototype,"isSupported",shaka.transmuxer.TsTransmuxer.prototype.isSupported);goog.exportProperty(shaka.transmuxer.TsTransmuxer.prototype,"destroy",shaka.transmuxer.TsTransmuxer.prototype.destroy);shaka.transmuxer.TsTransmuxer.SUPPORTED_AUDIO_CODECS_=["aac","ac-3","ec-3","mp3","opus"];
shaka.transmuxer.TsTransmuxer.SUPPORTED_VIDEO_CODECS_=["avc","hevc"];shaka.transmuxer.TransmuxerEngine.registerTransmuxer("video/mp2t",function(){return new shaka.transmuxer.TsTransmuxer("video/mp2t")},shaka.transmuxer.TransmuxerEngine.PluginPriority.PREFERRED);shaka.util.Timer=function(a){this.onTick_=a;this.cancelPending_=null};shaka.util.Timer.prototype.tickNow=function(){this.stop();this.onTick_();return this};shaka.util.Timer.prototype.tickAfter=function(a){var b=this;this.stop();this.schedule_(function(){b.onTick_()},a);return this};shaka.util.Timer.prototype.tickEvery=function(a){this.stop();goog.DEBUG&&shaka.util.Timer.activeTimers.set(this,Error("Timer created").stack);this.scheduleRepeating_(a);return this};
shaka.util.Timer.prototype.stop=function(){var a;(a=this.cancelPending_)==null||a.call(this);this.cancelPending_=null;goog.DEBUG&&shaka.util.Timer.activeTimers.delete(this)};shaka.util.Timer.prototype.schedule_=function(a,b){var c=!0,d=null;this.cancelPending_=function(){clearTimeout(d);c=!1};d=setTimeout(function(){c&&a()},b*1E3)};shaka.util.Timer.prototype.scheduleRepeating_=function(a){var b=this;this.schedule_(function(){b.scheduleRepeating_(a);b.onTick_()},a)};
goog.exportSymbol("shaka.util.Timer",shaka.util.Timer);goog.exportProperty(shaka.util.Timer.prototype,"stop",shaka.util.Timer.prototype.stop);goog.exportProperty(shaka.util.Timer.prototype,"tickEvery",shaka.util.Timer.prototype.tickEvery);goog.exportProperty(shaka.util.Timer.prototype,"tickAfter",shaka.util.Timer.prototype.tickAfter);goog.exportProperty(shaka.util.Timer.prototype,"tickNow",shaka.util.Timer.prototype.tickNow);goog.DEBUG&&(shaka.util.Timer.activeTimers=new Map);shaka.util.Dom=function(){};shaka.util.Dom.createHTMLElement=function(a){return document.createElement(a)};shaka.util.Dom.createSVGElement=function(a){return document.createElementNS("http://www.w3.org/2000/svg",a)};shaka.util.Dom.createButton=function(){var a=document.createElement("button");a.setAttribute("type","button");return a};shaka.util.Dom.createSourceElement=function(a,b){b=b===void 0?"":b;var c=document.createElement("source");c.src=a;c.type=b;return c};
shaka.util.Dom.clearSourceFromVideo=function(a){for(var b=!1,c=a.getElementsByTagName("source"),d=c.length-1;d>=0;--d)a.removeChild(c[d]),b=!0;a.src&&(a.removeAttribute("src"),b=!0);return b};shaka.util.Dom.asHTMLElement=function(a){return a};shaka.util.Dom.asHTMLCanvasElement=function(a){return a};shaka.util.Dom.asHTMLMediaElement=function(a){return a};shaka.util.Dom.asHTMLIFrameElement=function(a){return a};
shaka.util.Dom.getElementByClassName=function(a,b){b=b.getElementsByClassName(a);goog.asserts.assert(b.length==1,"Should only be one element with class name "+a);return shaka.util.Dom.asHTMLElement(b[0])};shaka.util.Dom.getElementByClassNameIfItExists=function(a,b){b=b.getElementsByClassName(a);if(!b.length)return null;goog.asserts.assert(b.length==1,"Should only be one element with class name "+a);return shaka.util.Dom.asHTMLElement(b[0])};shaka.util.Dom.removeAllChildren=function(a){for(;a.firstChild;)a.removeChild(a.firstChild)};
shaka.util.Dom.anyMediaElement=function(){if(shaka.util.Dom.cachedMediaElement_)return shaka.util.Dom.cachedMediaElement_;shaka.util.Dom.cacheExpirationTimer_||(shaka.util.Dom.cacheExpirationTimer_=new shaka.util.Timer(function(){shaka.util.Dom.cachedMediaElement_=null}));shaka.util.Dom.cachedMediaElement_=document.getElementsByTagName("video")[0]||document.getElementsByTagName("audio")[0];shaka.util.Dom.cachedMediaElement_||(shaka.util.Dom.cachedMediaElement_=document.createElement("video"));shaka.util.Dom.cacheExpirationTimer_.tickAfter(1);
return shaka.util.Dom.cachedMediaElement_};
shaka.util.Dom.addFont=function(a,b){var c,d,e,f,g;return(0,$jscomp.asyncExecutePromiseGeneratorProgram)(function(h){if(h.getNextAddressJsc()==1)return"fonts"in document&&"FontFace"in window?h.yield(document.fonts.ready,2):h.return();if(!("entries"in document.fonts))return h.return();c=function(k){k=k.entries();for(var l=[],m=k.next();m.done===!1;)l.push(m.value),m=k.next();return l};d=(0,$jscomp.makeIterator)(c(document.fonts));for(e=d.next();!e.done;e=d.next())if(f=e.value,f.family===a&&f.display===
"swap")return h.return();g=new FontFace(a,"url("+b+")",{display:"swap"});document.fonts.add(g);h.jumpToEnd()})};goog.exportSymbol("shaka.util.Dom",shaka.util.Dom);goog.exportProperty(shaka.util.Dom,"removeAllChildren",shaka.util.Dom.removeAllChildren);goog.exportProperty(shaka.util.Dom,"clearSourceFromVideo",shaka.util.Dom.clearSourceFromVideo);shaka.util.Dom.cacheExpirationTimer_=null;shaka.util.Dom.cachedMediaElement_=null;shaka.device.AbstractDevice=function(){this.abstractDeviceType_=new shaka.util.Lazy(function(){for(var a=navigator.userAgent.toLowerCase(),b=(0,$jscomp.makeIterator)([{type:shaka.device.IDevice.DeviceType.VR,regex:/oculus|quest/},{type:shaka.device.IDevice.DeviceType.TV,regex:/smart[ _]?tv|android ?tv/},{type:shaka.device.IDevice.DeviceType.MOBILE,regex:/iphone|ipad|ipod|android/}]),c=b.next();!c.done;c=b.next())if(c=c.value,c.regex.test(a))return c.type;a=navigator.userAgentData;var d;b=(a==null?
void 0:(d=a.platform)==null?void 0:d.toLowerCase())||"";if(a){if(a.mobile)return shaka.device.IDevice.DeviceType.MOBILE;if(b.includes("android"))return shaka.device.IDevice.DeviceType.TV}return shaka.device.IDevice.DeviceType.DESKTOP});this.browserEngine_=new shaka.util.Lazy(function(){var a=navigator.userAgent;return navigator.vendor.includes("Apple")&&(a.includes("Version/")||a.includes("OS/"))?shaka.device.IDevice.BrowserEngine.WEBKIT:a.includes("Edge/")?shaka.device.IDevice.BrowserEngine.EDGE:
a.includes("Chrome/")?shaka.device.IDevice.BrowserEngine.CHROMIUM:a.includes("Firefox/")?shaka.device.IDevice.BrowserEngine.GECKO:shaka.device.IDevice.BrowserEngine.UNKNOWN})};shaka.device.AbstractDevice.prototype.supportsMediaSource=function(){var a=window.ManagedMediaSource||window.MediaSource;return a&&a.isTypeSupported?!0:!1};shaka.device.AbstractDevice.prototype.supportsMediaType=function(a){return shaka.util.Dom.anyMediaElement().canPlayType(a)!=""};
shaka.device.AbstractDevice.prototype.supportsMediaCapabilities=function(){return!!navigator.mediaCapabilities};shaka.device.AbstractDevice.prototype.getDeviceType=function(){return this.abstractDeviceType_.value()};shaka.device.AbstractDevice.prototype.getBrowserEngine=function(){return this.browserEngine_.value()};shaka.device.AbstractDevice.prototype.requiresEncryptionInfoInAllInitSegments=function(a,b){return!1};shaka.device.AbstractDevice.prototype.requiresClearAndEncryptedInitSegments=function(a){return!1};
shaka.device.AbstractDevice.prototype.insertEncryptionDataBeforeClear=function(a){return!1};shaka.device.AbstractDevice.prototype.requiresTfhdFix=function(a){return!1};shaka.device.AbstractDevice.prototype.requiresEC3InitSegments=function(){return!1};shaka.device.AbstractDevice.prototype.getChromeVersion_=function(){var a=null,b=navigator.userAgent.match(/Chrome\/(\d+)/);b&&(a=parseInt(b[1],10));return a};
shaka.device.AbstractDevice.prototype.requiresDvvcWorkaround=function(a){if(this.getBrowserEngine()!=shaka.device.IDevice.BrowserEngine.CHROMIUM)return!1;var b=this.getChromeVersion_();return a.type==="video"&&b!=null&&b<94&&a.supplementalCodecs!=a.codecs&&/dvh1|dvhe/.test(a.supplementalCodecs)};shaka.device.AbstractDevice.prototype.supportsSequenceMode=function(){return!0};
shaka.device.AbstractDevice.prototype.supportsSmoothCodecSwitching=function(a){a=window.ManagedSourceBuffer||window.SourceBuffer;return!!a&&!!a.prototype&&!!a.prototype.changeType};shaka.device.AbstractDevice.prototype.supportsServerCertificate=function(){return!0};shaka.device.AbstractDevice.prototype.seekDelay=function(){return 0};shaka.device.AbstractDevice.prototype.detectMaxHardwareResolution=function(){return Promise.resolve({width:Infinity,height:Infinity})};
shaka.device.AbstractDevice.prototype.shouldOverrideDolbyVisionCodecs=function(){return!1};shaka.device.AbstractDevice.prototype.shouldAvoidUseTextDecoderEncoder=function(){return!1};
shaka.device.AbstractDevice.prototype.adjustConfig=function(a){var b=this.getDeviceType();if(b===shaka.device.IDevice.DeviceType.TV||b===shaka.device.IDevice.DeviceType.CONSOLE||b===shaka.device.IDevice.DeviceType.CAST)a.ads.customPlayheadTracker=!0,a.ads.skipPlayDetection=!0,a.ads.supportsMultipleMediaElements=!1;b===shaka.device.IDevice.DeviceType.TV&&(a.textDisplayer.suspendRenderingWhenHidden=!1);return a};shaka.device.AbstractDevice.prototype.supportsOfflineStorage=function(){return!!window.indexedDB};
shaka.device.AbstractDevice.prototype.rejectCodecs=function(){return[]};shaka.device.AbstractDevice.prototype.getHdrLevel=function(a){return window.matchMedia!==void 0&&(window.matchMedia("(color-gamut: p3)").matches||window.matchMedia("(dynamic-range: high)").matches)?a?"HLG":"PQ":"SDR"};shaka.device.AbstractDevice.prototype.supportsAirPlay=function(){return!1};shaka.device.AbstractDevice.prototype.misreportAC3UsingDrm=function(){return!1};
shaka.device.AbstractDevice.prototype.returnLittleEndianUsingPlayReady=function(){return!1};shaka.device.AbstractDevice.prototype.supportsEncryptionSchemePolyfill=function(){return!0};shaka.device.AbstractDevice.prototype.misreportsSupportForPersistentLicenses=function(){return!1};shaka.device.AbstractDevice.prototype.supportStandardVP9Checking=function(){return!0};shaka.device.AbstractDevice.prototype.createMediaKeysWhenCheckingSupport=function(){return!0};
shaka.device.AbstractDevice.prototype.disableHEVCSupport=function(){return!1};shaka.device.AbstractDevice.prototype.supportsCbcsWithoutEncryptionSchemeSupport=function(){return!1};shaka.device.AbstractDevice.prototype.needWaitForEncryptedEvent=function(a){return a==="com.apple.fps"};shaka.device.AbstractDevice.prototype.supportsContainerChangeType=function(){return!0};
shaka.device.AbstractDevice.prototype.getRemote=function(a){var b=this.getDeviceType();return[shaka.device.IDevice.DeviceType.DESKTOP,shaka.device.IDevice.DeviceType.MOBILE,shaka.device.IDevice.DeviceType.VR,shaka.device.IDevice.DeviceType.APPLE_VR].includes(b)?a.remote:null};shaka.device.AbstractDevice.prototype.supportsWorkerTransmux=function(){return typeof Worker!=="undefined"};shaka.device.AbstractDevice.prototype.hasWorkingClearKeySupport=function(){return!0};
shaka.device.AbstractDevice.prototype.toString=function(){return"Device: "+this.getDeviceName()+" v"+this.getVersion()+"; Type: "+this.getDeviceType()};shaka.device.AppleBrowser=function(){shaka.device.AbstractDevice.call(this);this.version_=new shaka.util.Lazy(function(){var a=navigator.userAgent.match(/Version\/(\d+)(?:\.(\d+))?/);a||(a=navigator.userAgent.match(/OS (\d+)(?:_(\d+))?/));return a?[parseInt(a[1],10),parseInt(a[2]||"0",10)]:[0,0]});this.deviceType_=new shaka.util.Lazy(function(){return/(?:iPhone|iPad|iPod)/.test(navigator.userAgent)||navigator.maxTouchPoints>1?"xr"in navigator?shaka.device.IDevice.DeviceType.APPLE_VR:shaka.device.IDevice.DeviceType.MOBILE:
"xr"in navigator?shaka.device.IDevice.DeviceType.APPLE_VR:shaka.device.IDevice.DeviceType.DESKTOP})};$jscomp.inherits(shaka.device.AppleBrowser,shaka.device.AbstractDevice);shaka.device.AppleBrowser.prototype.getVersion=function(){return this.version_.value()[0]};shaka.device.AppleBrowser.prototype.getDeviceName=function(){return"Apple Browser"};shaka.device.AppleBrowser.prototype.getDeviceType=function(){return this.deviceType_.value()};shaka.device.AppleBrowser.prototype.getBrowserEngine=function(){return shaka.device.IDevice.BrowserEngine.WEBKIT};
shaka.device.AppleBrowser.prototype.supportsMediaCapabilities=function(){return!1};shaka.device.AppleBrowser.prototype.requiresEncryptionInfoInAllInitSegments=function(a,b){return!this.supportsMixedClearEncryptedContent_()&&b==="audio"};shaka.device.AppleBrowser.prototype.insertEncryptionDataBeforeClear=function(){return!this.supportsMixedClearEncryptedContent_()};shaka.device.AppleBrowser.prototype.requiresTfhdFix=function(a){return!this.supportsMixedClearEncryptedContent_()&&a==="audio"};
shaka.device.AppleBrowser.prototype.adjustConfig=function(a){shaka.device.AbstractDevice.prototype.adjustConfig.call(this,a);a.abr.minTimeToSwitch=.5;return a};shaka.device.AppleBrowser.prototype.supportsAirPlay=function(){return!0};shaka.device.AppleBrowser.prototype.supportsContainerChangeType=function(){return!1};shaka.device.AppleBrowser.prototype.hasWorkingClearKeySupport=function(){return!1};
shaka.device.AppleBrowser.prototype.supportsMixedClearEncryptedContent_=function(){var a=this.version_.value();return a[0]>=27?!0:a[0]===26&&a[1]>=4};
shaka.device.AppleBrowser.isAppleBrowser_=function(){return(navigator.vendor||"").includes("Apple")?/(?:iPhone|iPad|iPod)/.test(navigator.userAgent)||navigator.maxTouchPoints>1||navigator.userAgentData&&navigator.userAgentData.platform&&navigator.userAgentData.platform.toLowerCase()=="macos"||navigator.platform&&navigator.platform.toLowerCase().includes("mac")?!0:!1:!1};shaka.device.AppleBrowser.isAppleBrowser_()&&shaka.device.DeviceFactory.registerDeviceFactory(function(){return new shaka.device.AppleBrowser});shaka.device.Chromecast=function(){if(!shaka.device.Chromecast.isChromecast_())throw Error("Not a Chromecast device!");shaka.device.AbstractDevice.call(this);this.version_=new shaka.util.Lazy(function(){var a=navigator.userAgent.match(/Chrome\/(\d+)/);return a?parseInt(a[1],10):null});this.osType_=new shaka.util.Lazy(function(){var a=navigator.userAgentData&&navigator.userAgentData.platform||navigator.userAgent;a=a.toLowerCase();return a.includes("android")?shaka.device.Chromecast.OsType_.ANDROID:
a.includes("fuchsia")?shaka.device.Chromecast.OsType_.FUCHSIA:shaka.device.Chromecast.OsType_.LINUX})};$jscomp.inherits(shaka.device.Chromecast,shaka.device.AbstractDevice);shaka.device.Chromecast.prototype.getVersion=function(){return this.version_.value()};shaka.device.Chromecast.prototype.getDeviceName=function(){return"Chromecast with "+this.osType_.value()};shaka.device.Chromecast.prototype.getDeviceType=function(){return shaka.device.IDevice.DeviceType.CAST};
shaka.device.Chromecast.prototype.getBrowserEngine=function(){return shaka.device.IDevice.BrowserEngine.CHROMIUM};shaka.device.Chromecast.prototype.supportsMediaCapabilities=function(){return shaka.device.AbstractDevice.prototype.supportsMediaCapabilities.call(this)&&this.osType_.value()!==shaka.device.Chromecast.OsType_.LINUX};
shaka.device.Chromecast.prototype.supportsSmoothCodecSwitching=function(a){return shaka.device.AbstractDevice.prototype.supportsSmoothCodecSwitching.call(this,a)&&this.osType_.value()!==shaka.device.Chromecast.OsType_.LINUX};shaka.device.Chromecast.prototype.seekDelay=function(){switch(this.osType_.value()){case shaka.device.Chromecast.OsType_.ANDROID:return 0;case shaka.device.Chromecast.OsType_.FUCHSIA:return 3;default:return 1}};
shaka.device.Chromecast.prototype.detectMaxHardwareResolution=function(){var a,b,c,d,e;return(0,$jscomp.asyncExecutePromiseGeneratorProgram)(function(f){switch(f.getNextAddressJsc()){case 1:a=window.cast&&cast.__platform__&&cast.__platform__.canDisplayType;b={width:1280,height:720};f.setCatchFinallyBlocks(2);if(!(c=a)){f.jumpTo(4);break}return f.yield(cast.__platform__.canDisplayType('video/mp4; codecs="avc1.640028"; width=3840; height=2160'),5);case 5:c=f.getYieldResultJsc();case 4:if(c){b.width=
3840;b.height=2160;f.jumpTo(6);break}if(!(d=a)){f.jumpTo(7);break}return f.yield(cast.__platform__.canDisplayType('video/mp4; codecs="avc1.640028"; width=1920; height=1080'),8);case 8:d=f.getYieldResultJsc();case 7:d&&(b.width=1920,b.height=1080);case 6:f.leaveTryBlock(3);break;case 2:e=f.enterCatchBlock(),shaka.log.alwaysError("Failed to check canDisplayType:",e);case 3:return f.return(b)}})};
shaka.device.Chromecast.prototype.adjustConfig=function(a){shaka.device.AbstractDevice.prototype.adjustConfig.call(this,a);a.streaming.stallSkip=0;return a};shaka.device.Chromecast.prototype.supportsOfflineStorage=function(){return!1};shaka.device.Chromecast.prototype.supportsCbcsWithoutEncryptionSchemeSupport=function(){return!0};shaka.device.Chromecast.isChromecast_=function(){return navigator.userAgent.includes("CrKey")&&!navigator.userAgent.includes("VIZIO SmartCast")};
shaka.device.Chromecast.OsType_={ANDROID:"Android",FUCHSIA:"Fuchsia",LINUX:"Linux"};shaka.device.Chromecast.isChromecast_()&&shaka.device.DeviceFactory.registerDeviceFactory(function(){return new shaka.device.Chromecast});shaka.debug={};shaka.debug.RunningInLab=!1;shaka.device.DefaultBrowser=function(){shaka.device.AbstractDevice.call(this);this.version_=new shaka.util.Lazy(function(){var a=navigator.userAgent.match(/Edge?\/(\d+)/);return a?parseInt(a[1],10):(a=navigator.userAgent.match(/(Chrome|Firefox)\/(\d+)/))?parseInt(a[2],10):null});this.deviceName_=new shaka.util.Lazy(function(){return navigator.userAgent.match(/Edge?\//)?"Edge":navigator.userAgent.includes("Chrome")?"Chrome":navigator.userAgent.includes("Firefox")?"Firefox":"Unknown"});this.isWindows_=
new shaka.util.Lazy(function(){return navigator.userAgentData&&navigator.userAgentData.platform?navigator.userAgentData.platform.toLowerCase()=="windows":navigator.platform?navigator.platform.toLowerCase().includes("win32"):!1});this.isSonyTV_=new shaka.util.Lazy(function(){return navigator.userAgent.includes("sony.hbbtv.tv")});this.isAndroid_=new shaka.util.Lazy(function(){return navigator.userAgentData&&navigator.userAgentData.platform?navigator.userAgentData.platform.toLowerCase()=="android":navigator.userAgent.includes("Android")?
!0:!1})};$jscomp.inherits(shaka.device.DefaultBrowser,shaka.device.AbstractDevice);shaka.device.DefaultBrowser.prototype.getVersion=function(){return this.version_.value()};shaka.device.DefaultBrowser.prototype.getDeviceName=function(){return this.deviceName_.value()};shaka.device.DefaultBrowser.prototype.requiresEncryptionInfoInAllInitSegments=function(a){return shaka.drm.DrmUtils.isPlayReadyKeySystem(a)?this.isWindows_.value():!1};
shaka.device.DefaultBrowser.prototype.requiresClearAndEncryptedInitSegments=function(a){return shaka.drm.DrmUtils.isPlayReadyKeySystem(a)||this.deviceName_.value()==="Edge"?this.isWindows_.value():!1};shaka.device.DefaultBrowser.prototype.insertEncryptionDataBeforeClear=function(a){return shaka.drm.DrmUtils.isPlayReadyKeySystem(a)||this.deviceName_.value()==="Edge"?this.isWindows_.value():!1};
shaka.device.DefaultBrowser.prototype.supportsSmoothCodecSwitching=function(a){return this.isWindows_.value()&&shaka.drm.DrmUtils.isPlayReadyKeySystem(a)?!1:shaka.device.AbstractDevice.prototype.supportsSmoothCodecSwitching.call(this,a)};
shaka.device.DefaultBrowser.prototype.adjustConfig=function(a){shaka.device.AbstractDevice.prototype.adjustConfig.call(this,a);if(this.isWindows_.value())switch(this.deviceName_.value()){case "Firefox":a.drm.keySystemsMapping={"com.microsoft.playready":"com.microsoft.playready.recommendation"};break;case "Chrome":a.drm.keySystemsMapping={"com.microsoft.playready":"com.microsoft.playready.recommendation.3000","com.microsoft.playready.recommendation":"com.microsoft.playready.recommendation.3000"}}this.isAndroid_.value()&&
(a.drm.defaultAudioRobustnessForWidevine="SW_SECURE_CRYPTO",a.drm.defaultVideoRobustnessForWidevine="SW_SECURE_CRYPTO");return a};shaka.device.DefaultBrowser.prototype.returnLittleEndianUsingPlayReady=function(){return this.deviceName_.value()==="Edge"||this.isSonyTV_.value()};
shaka.device.DefaultBrowser.prototype.createMediaKeysWhenCheckingSupport=function(){return goog.DEBUG&&shaka.debug.RunningInLab&&this.isWindows_.value()&&this.getBrowserEngine()===shaka.device.IDevice.BrowserEngine.GECKO?!1:!0};shaka.device.DefaultBrowser.prototype.disableHEVCSupport=function(){return this.isWindows_.value()&&this.getBrowserEngine()===shaka.device.IDevice.BrowserEngine.GECKO};
shaka.device.DefaultBrowser.prototype.supportsCbcsWithoutEncryptionSchemeSupport=function(){if(this.getBrowserEngine()===shaka.device.IDevice.BrowserEngine.GECKO){var a=this.getVersion();return a!==null?a>=100:shaka.device.AbstractDevice.prototype.supportsCbcsWithoutEncryptionSchemeSupport.call(this)}return shaka.device.AbstractDevice.prototype.supportsCbcsWithoutEncryptionSchemeSupport.call(this)};
shaka.device.DefaultBrowser.prototype.needWaitForEncryptedEvent=function(a){return this.getBrowserEngine()===shaka.device.IDevice.BrowserEngine.GECKO?shaka.drm.DrmUtils.isPlayReadyKeySystem(a):shaka.device.AbstractDevice.prototype.needWaitForEncryptedEvent.call(this,a)};shaka.device.DeviceFactory.registerDefaultDeviceFactory(function(){return new shaka.device.DefaultBrowser});shaka.device.Hisense=function(){shaka.device.AbstractDevice.apply(this,arguments)};$jscomp.inherits(shaka.device.Hisense,shaka.device.AbstractDevice);shaka.device.Hisense.prototype.getVersion=function(){return null};shaka.device.Hisense.prototype.getDeviceName=function(){return"Hisense"};shaka.device.Hisense.prototype.getDeviceType=function(){return shaka.device.IDevice.DeviceType.TV};shaka.device.Hisense.prototype.supportsMediaCapabilities=function(){return!1};
shaka.device.Hisense.prototype.supportsSmoothCodecSwitching=function(){return!1};shaka.device.Hisense.prototype.detectMaxHardwareResolution=function(){var a={width:1920,height:1080},b=null;if(window.Hisense_Get4KSupportState)try{b=window.Hisense_Get4KSupportState()}catch(c){shaka.log.debug("Hisense: Failed to get 4K support state",c)}b==null&&(b=navigator.userAgent.includes("UHD"));b&&(a.width=3840,a.height=2160);return Promise.resolve(a)};
shaka.device.Hisense.prototype.adjustConfig=function(a){shaka.device.AbstractDevice.prototype.adjustConfig.call(this,a);a.streaming.stallSkip=0;return a};shaka.device.Hisense.prototype.supportsWorkerTransmux=function(){return!1};shaka.device.Hisense.isHisense_=function(){return navigator.userAgent.includes("Hisense")||navigator.userAgent.includes("VIDAA")};shaka.device.Hisense.isHisense_()&&shaka.device.DeviceFactory.registerDeviceFactory(function(){return new shaka.device.Hisense});shaka.device.PlayStation=function(){shaka.device.AbstractDevice.call(this);this.version_=new shaka.util.Lazy(function(){var a=navigator.userAgent.match(/PlayStation (\d+)/);return a?parseInt(a[1],10):null})};$jscomp.inherits(shaka.device.PlayStation,shaka.device.AbstractDevice);shaka.device.PlayStation.prototype.getDeviceName=function(){return"PlayStation"};shaka.device.PlayStation.prototype.getDeviceType=function(){return shaka.device.IDevice.DeviceType.CONSOLE};
shaka.device.PlayStation.prototype.getBrowserEngine=function(){return shaka.device.IDevice.BrowserEngine.WEBKIT};shaka.device.PlayStation.prototype.getVersion=function(){return this.version_.value()};shaka.device.PlayStation.prototype.supportsMediaCapabilities=function(){return!1};shaka.device.PlayStation.prototype.supportsSequenceMode=function(){return!1};shaka.device.PlayStation.prototype.supportsSmoothCodecSwitching=function(a){return!1};
shaka.device.PlayStation.prototype.shouldAvoidUseTextDecoderEncoder=function(){return this.getVersion()===4};
shaka.device.PlayStation.prototype.detectMaxHardwareResolution=function(){var a,b,c,d,e;return(0,$jscomp.asyncExecutePromiseGeneratorProgram)(function(f){switch(f.getNextAddressJsc()){case 1:return a={width:1920,height:1080},b=!1,f.setCatchFinallyBlocks(2),f.yield(window.msdk.device.getDisplayInfo(),4);case 4:c=f.getYieldResultJsc();b=c.resolution==="4K";f.leaveTryBlock(3);break;case 2:return f.enterCatchBlock(),f.setCatchFinallyBlocks(5),f.yield(window.msdk.device.getDisplayInfoImmediate(),7);case 7:d=
f.getYieldResultJsc();b=d.resolution==="4K";f.leaveTryBlock(3);break;case 5:e=f.enterCatchBlock(),shaka.log.alwaysWarn("PlayStation: Failed to get the display info:",e);case 3:return b&&(a.width=3840,a.height=2160),f.return(a)}})};shaka.device.PlayStation.prototype.adjustConfig=function(a){shaka.device.AbstractDevice.prototype.adjustConfig.call(this,a);this.getVersion()===4&&a.drm.preferredKeySystems.push("com.microsoft.playready");a.streaming.clearDecodingCache=!0;return a};
shaka.device.PlayStation.prototype.returnLittleEndianUsingPlayReady=function(){return this.getVersion()===4};shaka.device.PlayStation.prototype.supportsEncryptionSchemePolyfill=function(){return this.getVersion()!==4};shaka.device.PlayStation.isPlayStation_=function(){return navigator.userAgent.includes("PlayStation")};shaka.device.PlayStation.isPlayStation_()&&shaka.device.DeviceFactory.registerDeviceFactory(function(){return new shaka.device.PlayStation});shaka.device.TitanOS=function(){shaka.device.AbstractDevice.apply(this,arguments)};$jscomp.inherits(shaka.device.TitanOS,shaka.device.AbstractDevice);shaka.device.TitanOS.prototype.getVersion=function(){return null};shaka.device.TitanOS.prototype.getDeviceName=function(){return"TitanOS"};shaka.device.TitanOS.prototype.getDeviceType=function(){return shaka.device.IDevice.DeviceType.TV};
shaka.device.TitanOS.prototype.detectMaxHardwareResolution=function(){var a={width:1920,height:1080};try{SmartTvA_API.hasCapability("UHD")?(a.width=3840,a.height=2160):SmartTvA_API.hasCapability("FHD")?(a.width=1920,a.height=1080):(a.width=1280,a.height=720)}catch(b){shaka.log.alwaysWarn("Titan OS: Error detecting screen size, default screen size 1920x1080.",b)}return Promise.resolve(a)};
shaka.device.TitanOS.prototype.getHdrLevel=function(a){try{if(SmartTvA_API.hasCapability("HDR","HDR10")||SmartTvA_API.hasCapability("HDR","DV"))return a?"HLG":"PQ"}catch(b){return shaka.log.alwaysWarn("Titan OS: Error checking HDR support",b),shaka.device.AbstractDevice.prototype.getHdrLevel.call(this,a)}return"SDR"};shaka.device.TitanOS.isTitanOS_=function(){return navigator.userAgent.includes("TitanOS")};shaka.device.TitanOS.isTitanOS_()&&shaka.device.DeviceFactory.registerDeviceFactory(function(){return new shaka.device.TitanOS});shaka.device.TiVoOS=function(){shaka.device.AbstractDevice.apply(this,arguments)};$jscomp.inherits(shaka.device.TiVoOS,shaka.device.AbstractDevice);shaka.device.TiVoOS.prototype.getVersion=function(){return null};shaka.device.TiVoOS.prototype.getDeviceName=function(){return"TiVoOS"};shaka.device.TiVoOS.prototype.getDeviceType=function(){return shaka.device.IDevice.DeviceType.TV};shaka.device.TiVoOS.prototype.getBrowserEngine=function(){return shaka.device.IDevice.BrowserEngine.CHROMIUM};
shaka.device.TiVoOS.prototype.supportsSmoothCodecSwitching=function(a){return!1};shaka.device.TiVoOS.isTiVoOS_=function(){return navigator.userAgent.includes("TiVoOS")};shaka.device.TiVoOS.isTiVoOS_()&&shaka.device.DeviceFactory.registerDeviceFactory(function(){return new shaka.device.TiVoOS});shaka.config={};shaka.config.CrossBoundaryStrategy={KEEP:"keep",RESET:"reset",RESET_TO_ENCRYPTED:"reset_to_encrypted",RESET_ON_ENCRYPTION_CHANGE:"RESET_ON_ENCRYPTION_CHANGE"};goog.exportSymbol("shaka.config.CrossBoundaryStrategy",shaka.config.CrossBoundaryStrategy);shaka.device.Tizen=function(){shaka.device.AbstractDevice.call(this);var a=navigator.userAgent.match(/Tizen (\d+).(\d+)/);this.osMajorVersion_=a?parseInt(a[1],10):null;this.osMinorVersion_=a?parseInt(a[2],10):null};$jscomp.inherits(shaka.device.Tizen,shaka.device.AbstractDevice);shaka.device.Tizen.prototype.getVersion=function(){return this.osMajorVersion_};shaka.device.Tizen.prototype.getDeviceName=function(){return"Tizen"};shaka.device.Tizen.prototype.getBrowserEngine=function(){return shaka.device.IDevice.BrowserEngine.CHROMIUM};
shaka.device.Tizen.prototype.getDeviceType=function(){return shaka.device.IDevice.DeviceType.TV};shaka.device.Tizen.prototype.requiresEncryptionInfoInAllInitSegments=function(a){return!0};shaka.device.Tizen.prototype.requiresEC3InitSegments=function(){return this.getVersion()===3};shaka.device.Tizen.prototype.supportsMediaCapabilities=function(){return!1};shaka.device.Tizen.prototype.supportsSequenceMode=function(){var a=this.getVersion();return a!==null?a>=4:shaka.device.AbstractDevice.prototype.supportsSequenceMode.call(this)};
shaka.device.Tizen.prototype.supportsSmoothCodecSwitching=function(a){return!1};shaka.device.Tizen.prototype.supportsServerCertificate=function(){return this.osMajorVersion_&&this.osMinorVersion_?this.osMajorVersion_===5?this.osMinorVersion_>=5:this.osMajorVersion_>5:shaka.device.AbstractDevice.prototype.supportsServerCertificate.call(this)};
shaka.device.Tizen.prototype.detectMaxHardwareResolution=function(){var a=window.devicePixelRatio;a={width:window.screen.width*a>1920?3840:1920,height:window.screen.height*a>1080?2160:1080};try{if(webapis.systeminfo&&webapis.systeminfo.getMaxVideoResolution){var b=webapis.systeminfo.getMaxVideoResolution();a.width=b.width;a.height=b.height}else webapis.productinfo.is8KPanelSupported&&webapis.productinfo.is8KPanelSupported()?(a.width=7680,a.height=4320):webapis.productinfo.isUdPanelSupported&&webapis.productinfo.isUdPanelSupported()&&
(a.width=3840,a.height=2160)}catch(c){shaka.log.alwaysWarn("Tizen: Error detecting screen size, default screen size 1920x1080.")}return Promise.resolve(a)};
shaka.device.Tizen.prototype.adjustConfig=function(a){shaka.device.AbstractDevice.prototype.adjustConfig.call(this,a);a.drm.ignoreDuplicateInitData=this.getVersion()!==2;this.getVersion()===3&&(a.streaming.crossBoundaryStrategy=shaka.config.CrossBoundaryStrategy.RESET_TO_ENCRYPTED);a.streaming.shouldFixTimestampOffset=!0;a.streaming.stallSkip=0;a.streaming.gapPadding=2;return a};
shaka.device.Tizen.prototype.rejectCodecs=function(){var a=[];this.osMajorVersion_!==null&&this.osMajorVersion_<5&&a.push("opus");return a};shaka.device.Tizen.prototype.getHdrLevel=function(a){try{if(webapis.avinfo.isHdrTvSupport())return a?"HLG":"PQ"}catch(b){return shaka.device.AbstractDevice.prototype.getHdrLevel.call(this,a)}return"SDR"};shaka.device.Tizen.prototype.misreportAC3UsingDrm=function(){return!0};
shaka.device.Tizen.prototype.misreportsSupportForPersistentLicenses=function(){return this.getVersion()===3};shaka.device.Tizen.prototype.supportsWorkerTransmux=function(){var a=this.getVersion();return a!==null&&a<3?!1:shaka.device.AbstractDevice.prototype.supportsWorkerTransmux.call(this)};shaka.device.Tizen.isTizen_=function(){return navigator.userAgent.includes("Tizen")};shaka.device.Tizen.isTizen_()&&shaka.device.DeviceFactory.registerDeviceFactory(function(){return new shaka.device.Tizen});shaka.device.Vizio=function(){shaka.device.AbstractDevice.apply(this,arguments)};$jscomp.inherits(shaka.device.Vizio,shaka.device.AbstractDevice);shaka.device.Vizio.prototype.getVersion=function(){return null};shaka.device.Vizio.prototype.getDeviceName=function(){return"Vizio"};shaka.device.Vizio.prototype.getDeviceType=function(){return shaka.device.IDevice.DeviceType.TV};shaka.device.Vizio.prototype.supportsMediaCapabilities=function(){return!1};shaka.device.Vizio.isVizio_=function(){return navigator.userAgent.includes("VIZIO SmartCast")};
shaka.device.Vizio.isVizio_()&&shaka.device.DeviceFactory.registerDeviceFactory(function(){return new shaka.device.Vizio});shaka.device.WebKitSTB=function(){shaka.device.AbstractDevice.call(this);this.isSkyQ_=new shaka.util.Lazy(function(){return navigator.userAgent.includes("DT_STB_BCM")||navigator.userAgent.includes("Sky_STB")});this.isOrange_=new shaka.util.Lazy(function(){return navigator.userAgent.includes("SOPOpenBrowser")});this.version_=new shaka.util.Lazy(function(){if(navigator.userAgent.includes("DT_STB_BCM"))return 11;var a=navigator.userAgent.match(/Version\/(\d+)/);return a?parseInt(a[1],10):(a=navigator.userAgent.match(/OS (\d+)(?:_\d+)?/))?
parseInt(a[1],10):null})};$jscomp.inherits(shaka.device.WebKitSTB,shaka.device.AbstractDevice);shaka.device.WebKitSTB.prototype.getVersion=function(){return this.version_.value()};shaka.device.WebKitSTB.prototype.getDeviceName=function(){return"WebKit STB"};shaka.device.WebKitSTB.prototype.getDeviceType=function(){return shaka.device.IDevice.DeviceType.TV};shaka.device.WebKitSTB.prototype.getBrowserEngine=function(){return shaka.device.IDevice.BrowserEngine.WEBKIT};
shaka.device.WebKitSTB.prototype.supportsMediaCapabilities=function(){return!1};shaka.device.WebKitSTB.prototype.supportsSequenceMode=function(){var a=this.version_.value();return a!==null?a>=15:!0};shaka.device.WebKitSTB.prototype.requiresEncryptionInfoInAllInitSegments=function(a){return this.isOrange_.value()};shaka.device.WebKitSTB.prototype.detectMaxHardwareResolution=function(){return Promise.resolve({width:window.screen.width*window.devicePixelRatio,height:window.screen.height*window.devicePixelRatio})};
shaka.device.WebKitSTB.prototype.supportsEncryptionSchemePolyfill=function(){return!this.isSkyQ_.value()};shaka.device.WebKitSTB.prototype.supportsContainerChangeType=function(){return!1};
shaka.device.WebKitSTB.isWebkitSTB_=function(){return navigator.userAgent.includes("PlayStation")?!1:navigator.userAgent.includes("SOPOpenBrowser")||navigator.userAgent.includes("DT_STB_BCM")||navigator.userAgent.includes("Sky_STB")?!0:!(navigator.vendor||"").includes("Apple")||/(?:iPhone|iPad|iPod)/.test(navigator.userAgent)||navigator.maxTouchPoints>1||navigator.userAgentData&&navigator.userAgentData.platform&&navigator.userAgentData.platform.toLowerCase()=="macos"||navigator.platform&&navigator.platform.toLowerCase().includes("mac")?
!1:!0};shaka.device.WebKitSTB.isWebkitSTB_()&&shaka.device.DeviceFactory.registerDeviceFactory(function(){return new shaka.device.WebKitSTB});shaka.device.WebOS=function(){shaka.device.AbstractDevice.call(this);var a=this;this.osVersion_=this.guessWebOSVersion_();this.supportHdr_=null;try{var b=new PalmServiceBridge;b.onservicecallback=function(c){shaka.log.info("WebOS: config support",c);c=JSON.parse(c);var d,e,f,g;a.supportHdr_=(g=(f=(d=c.configs)==null?void 0:d["tv.model.supportHDR"])!=null?f:(e=c.configs)==null?void 0:e["tv.config.supportDolbyHDRContents"])!=null?g:!1};b.call("luna://com.webos.service.config/getConfigs",JSON.stringify({configNames:["tv.model.supportHDR",
"tv.config.supportDolbyHDRContents"]}))}catch(c){shaka.log.alwaysWarn("WebOS: getConfigs call failed",c)}};$jscomp.inherits(shaka.device.WebOS,shaka.device.AbstractDevice);shaka.device.WebOS.prototype.getVersion=function(){return this.osVersion_};shaka.device.WebOS.prototype.getDeviceName=function(){return"WebOS"};shaka.device.WebOS.prototype.getDeviceType=function(){return shaka.device.IDevice.DeviceType.TV};shaka.device.WebOS.prototype.getBrowserEngine=function(){return shaka.device.IDevice.BrowserEngine.CHROMIUM};
shaka.device.WebOS.prototype.supportsMediaCapabilities=function(){return!1};shaka.device.WebOS.prototype.supportsSequenceMode=function(){var a=this.getVersion();return a!==null?a>3:shaka.device.AbstractDevice.prototype.supportsSequenceMode.call(this)};shaka.device.WebOS.prototype.supportsSmoothCodecSwitching=function(a){return!1};shaka.device.WebOS.prototype.supportsServerCertificate=function(){var a=this.getVersion();return a!==null?a>3:shaka.device.AbstractDevice.prototype.supportsServerCertificate.call(this)};
shaka.device.WebOS.prototype.detectMaxHardwareResolution=function(){var a={width:1920,height:1080};try{var b=JSON.parse(window.PalmSystem.deviceInfo);a.width=Math.max(1920,b.screenWidth);a.height=Math.max(1080,b.screenHeight)}catch(c){shaka.log.alwaysWarn("WebOS: Error detecting screen size, default screen size 1920x1080.")}return Promise.resolve(a)};
shaka.device.WebOS.prototype.adjustConfig=function(a){shaka.device.AbstractDevice.prototype.adjustConfig.call(this,a);this.getVersion()===3&&(a.streaming.crossBoundaryStrategy=shaka.config.CrossBoundaryStrategy.RESET);a.streaming.shouldFixTimestampOffset=!0;a.streaming.stallSkip=0;return a};
shaka.device.WebOS.prototype.getHdrLevel=function(a){return this.supportHdr_==null?(shaka.log.alwaysWarn("WebOS: getConfigs call haven't finished"),shaka.device.AbstractDevice.prototype.getHdrLevel.call(this,a)):this.supportHdr_?a?"HLG":"PQ":"SDR"};
shaka.device.WebOS.prototype.guessWebOSVersion_=function(){var a=null,b=navigator.userAgent.match(/Chrome\/(\d+)/);b&&(a=parseInt(b[1],10));switch(a){case 38:return 3;case 53:return 4;case 68:return 5;case 79:return 6;case 87:return 22;case 94:return 23;case 108:return 24;case 120:return 25;case 132:return 26;default:return null}};shaka.device.WebOS.prototype.supportStandardVP9Checking=function(){return!1};
shaka.device.WebOS.prototype.supportsCbcsWithoutEncryptionSchemeSupport=function(){var a=this.getVersion();return a!==null?a>=6:shaka.device.AbstractDevice.prototype.supportsCbcsWithoutEncryptionSchemeSupport.call(this)};shaka.device.WebOS.prototype.supportsWorkerTransmux=function(){var a=this.getVersion();return a!==null&&a<4?!1:shaka.device.AbstractDevice.prototype.supportsWorkerTransmux.call(this)};shaka.device.WebOS.isWebOS_=function(){return navigator.userAgent.includes("Web0S")};
if(shaka.device.WebOS.isWebOS_()){var webOSDevice=new shaka.device.WebOS;shaka.device.DeviceFactory.registerDeviceFactory(function(){return webOSDevice})};shaka.device.Xbox=function(){shaka.device.AbstractDevice.call(this);this.isLegacyEdge_=navigator.userAgent.includes("Edge/");var a=navigator.userAgent.match(/Edge?\/(\d+)/);this.version_=a?parseInt(a[1],10):null};$jscomp.inherits(shaka.device.Xbox,shaka.device.AbstractDevice);shaka.device.Xbox.prototype.getVersion=function(){return this.version_};shaka.device.Xbox.prototype.getDeviceName=function(){return"Xbox"};shaka.device.Xbox.prototype.getDeviceType=function(){return shaka.device.IDevice.DeviceType.CONSOLE};
shaka.device.Xbox.prototype.getBrowserEngine=function(){return this.isLegacyEdge_?shaka.device.IDevice.BrowserEngine.EDGE:shaka.device.IDevice.BrowserEngine.CHROMIUM};shaka.device.Xbox.prototype.requiresEncryptionInfoInAllInitSegments=function(a){return!0};shaka.device.Xbox.prototype.requiresClearAndEncryptedInitSegments=function(){return!0};shaka.device.Xbox.prototype.insertEncryptionDataBeforeClear=function(){return!0};shaka.device.Xbox.prototype.shouldOverrideDolbyVisionCodecs=function(){return this.isLegacyEdge_};
shaka.device.Xbox.prototype.detectMaxHardwareResolution=function(){var a={width:1920,height:1080},b=shaka.device.Xbox.getWinRT_();if(b)try{var c=new b.Media.Protection.ProtectionCapabilities,d=b.Media.Protection.ProtectionCapabilityResult;b=null;do b=c.isTypeSupported('video/mp4;codecs="hvc1,mp4a";features="decode-res-x=3840,decode-res-y=2160,decode-bitrate=20000,decode-fps=30,decode-bpc=10,display-res-x=3840,display-res-y=2160,display-bpc=8"',"com.microsoft.playready.recommendation");while(b===d.maybe);
b===d.probably&&(a.width=3840,a.height=2160)}catch(e){shaka.log.alwaysWarn("Xbox: Error detecting screen size, default screen size 1920x1080.")}return Promise.resolve(a)};shaka.device.Xbox.prototype.adjustConfig=function(a){shaka.device.AbstractDevice.prototype.adjustConfig.call(this,a);a.drm.parseInbandPsshEnabled=this.isLegacyEdge_;a.drm.preferredKeySystems.push("com.microsoft.playready");this.isLegacyEdge_&&(a.streaming.gapPadding=.01);return a};
shaka.device.Xbox.prototype.returnLittleEndianUsingPlayReady=function(){return!0};shaka.device.Xbox.prototype.supportsOfflineStorage=function(){return!1};shaka.device.Xbox.getWinRT_=function(){var a=null;try{a=typeof Windows!=="undefined"?Windows:chrome.webview.hostObjects.sync.Windows}catch(b){}return a};shaka.device.Xbox.isXbox_=function(){return navigator.userAgent.includes("Xbox One")||shaka.device.Xbox.getWinRT_()!==null};shaka.device.Xbox.isXbox_()&&shaka.device.DeviceFactory.registerDeviceFactory(function(){return new shaka.device.Xbox});shaka.device.AllDevices={};